On Wed, 4 Dec 2002, Don Bowman wrote:

> > From: Julian Elischer [mailto:[EMAIL PROTECTED]]
> > On Wed, 4 Dec 2002, Don Bowman wrote:
>  ...
> 
> > It gets the destination MAC address from the SRC AMC field of the
> > preceding incoming packets with that IP src, dst and port
> > combination.... i.e. the node would look within the IP header.
> > 
> > 
> > > Wouldn't it be more efficient for me to 
> > > just create the ether-header when the SYN comes in, store it
> > > in the PCB, and use that on each outgoing packet for that tcp
> > > connection, add a sockopt (or use SO_DONTROUTE for this on the
> > > listen socket)?
> > 
> > yes and no... you would be breaking the layering in 
> > the standard code and you'd get crucified for it.
> > 
> > start with the ng_bridge node and make it look within
> > the IP header and use that information in it's hash tables instead of 
> > MAC addresses. It'll need some hosekeeping code too.
> > (to flush old info, though you could reduce this by removing
> > entries when you see the FIN packets go past.)
> 
> Perhaps I can do this within ipfw? Its only ipfw that is bringing up
> this situation, making me respond to things that normally wouldn't
> be routed to me. Perhaps 'ipfw' is missing something when it does
> a 'fwd' to localhost, another step to make this all work?

'divert' sockets are to allow you to do things in ipfw..

> 
> FIN are pretty rare :) Too often things just shut off. I'm nervous
> about trying to cache the info outside the PCB since it has to
> stay in sync (its not like the arp cache, there's no way to get
> the info back if you drop it early).
> RST is even more problematic since I have to decide if its in-window.

doesn't really matter.. if you remove a cache entry, you'll just
recreate it on teh next incoming packet.


> 
> --don ([EMAIL PROTECTED] www.sandvine.com)
> 
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-net" in the body of the message
> 


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-net" in the body of the message

Reply via email to