Re: Julian's netowrking challenge 2005

From: Milan Obuch (net_at_dino.sk)
Date: 06/28/05

  • Next message: Max Laier: "Re: Julian's netowrking challenge 2005"
    To: freebsd-net@freebsd.org
    Date: Tue, 28 Jun 2005 13:10:10 +0200
    
    

    On Tuesday 28 June 2005 12:37, Max Laier wrote:
    > On Tuesday 28 June 2005 12:27, Jeremie Le Hen wrote:
    > > > Wouldn't a more general approach be better. e.g. a way to "tag" a
    > > > packet before it is sent to divert and a matching tag-lookup that can
    > > > do further action. This would make it very easy to do all kinds of
    > > > stuff that needs to know the original address instead of the translated
    > > > one while avoiding code duplication.
    > >
    > > Having the possibility to tag a packet would be worth indeed. But I
    > > think that Milan wants to bring network stack virtualization in
    > > newer release of FreeBSD IIUC. This would be, IMO, a great improvement
    > > of FreeBSD networking, although I'm pretty sure this would make Netgraph
    > > people react a bit ;-).
    >
    > Stack virtualization is independent of this. All I am trying to say here,
    > is that I think it is better to have a general mechanism to do thing like
    > that, instead of a special solution for fwd (i.e. set-nexthop).
    >

    We agree on this. Tagging and virtualization are independent and solve
    different purposes. My reaction was to post mentioning request caused from
    various limitations/deficiences, namely lack of multiple routing tables
    support.

    > > > pf does something along these lines in case you are looking for
    > > > references.
    > >
    > > Would it be possible to share this tag among pf and ipfw ?
    >
    > Sure, it's a simple mbuf tag with a (at this point) 16bit cookie. The
    > downside of this approach is that you need to malloc the tag, but on the
    > other hand it's even more complicated for set-nexthop where you need to
    > allocate a route and maybe even hold it for some time and make sure you
    > properly GC it ... tags seem way simpler to me.

    Agreed. I am far from being networking code guru, so maybe this question
    sounds stupid, but could not this cookie be allocated when packet enters
    system? Maybe optionally...

    Milan
    _______________________________________________
    freebsd-net@freebsd.org mailing list
    http://lists.freebsd.org/mailman/listinfo/freebsd-net
    To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org"


  • Next message: Max Laier: "Re: Julian's netowrking challenge 2005"

    Relevant Pages

    • Re: [patch] ipfw packet tagging
      ... behaviour in in odd situations (e.g. what happens when we try to tag ... logging is done after all other packet matching conditions ... +When a packet matches a rule with the ... +.It Cm untag Ar number ...
      (freebsd-net)
    • Re: Question on VLAN
      ... the M_VLANTAG is a tag on an mbuf to show it's an 802.1q ... packet, and looks like it gets turned on in vlan_startin if_vlan.c ... If the interface does de/tagging at the hardware level the kernel gets ...
      (freebsd-net)
    • Re: Developing New Socket Option on 4.10
      ... > and intend to introduct a new socket option ... When sending out a packet, if this option is set, the ... > socket layer will produce a 20-byte tag, and finally this tag will be ... > like MPLS's shim layer, but this special packet with the tag will only be ...
      (freebsd-net)
    • Re: Developing New Socket Option on 4.10
      ... OOB information increases. ... When sending out a packet, if this option is set, the ... >> socket layer will produce a 20-byte tag, and finally this tag will be ... >> like MPLS's shim layer, but this special packet with the tag will only ...
      (freebsd-net)
    • Re: Julians netowrking challenge 2005
      ... > Having the possibility to tag a packet would be worth indeed. ... > newer release of FreeBSD IIUC. ... Stack virtualization is independent of this. ... instead of a special solution for fwd (i.e. set-nexthop). ...
      (freebsd-net)