Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 09 May 2006 23:41:18 -0700
From:      Julian Elischer <julian@elischer.org>
To:        Ray Mihm <ray.mihm@gmail.com>
Cc:        freebsd-net@freebsd.org, Milan Obuch <net@dino.sk>
Subject:   Re: vrf support in FreeBSD
Message-ID:  <44618B0E.2050506@elischer.org>
In-Reply-To: <1aa142960605092249q21cededfq3cdcbd717f5f569f@mail.gmail.com>
References:  <5EB31780BD297F46812C8F495FA08F620438CAE3@electron.jnpr.net>	 <4460D595.8000408@elischer.org>	 <1aa142960605091325j151df1f6j909ee9ca3ae0ed75@mail.gmail.com>	 <200605092239.46594.net@dino.sk> <446103AD.5020006@elischer.org>	 <1aa142960605091500q6aca79d8l8eb2cdd0ff82ffe3@mail.gmail.com>	 <446122CE.7010805@elischer.org> <1aa142960605092249q21cededfq3cdcbd717f5f569f@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Ray Mihm wrote:

> Point taken about the globals but layer 3 (IP) and layer 4 (TCP, UDP,
> etc) aren't modules yet and that shouldn't be a problem right? I'm not
> trying to trivialize or solve the problem here. But my point is, these
> shouldn't be show-stoppers when you consider the benefit of having
> this feature in FreeBSD.


They WILL be modules. At least we'd LIKE them to become modules.
Hopefully eventually almost everything will be a module.

>
> Regards,
>
> Ray.
>
>
> On 5/9/06, Julian Elischer <julian@elischer.org> wrote:
>
>> Ray Mihm wrote:
>>
>> > Using ipfw tables is essentially a non-starter, IMHO. How would
>> > routing protocols use ipfw based tables, for example? Marko's work
>> > touches a lot of files, but I don't think it's heavy weight.
>> >
>> > I also think using Marko's idea and Jails would allow create the
>> > notion of a logical system and multiple such logical systems may be
>> > configured on a single FreeBSD system.
>> >
>> > Regards,
>> >
>> > Ray.
>>
>> Don't get me wrong.. I very much like vimage, and it is a great pitty
>> that it
>> (in the form it is in now)
>> is basically incompatible in concept with freeBSD 5+  (where most things
>> are modules)(*).
>>
>> I've even done some small work on prototyping how one MIGHT be able to
>> make it happen, but for what I want (just be able to have some 
>> packets use
>> an alternative routing table), having ipfw fwd them according to a table
>> does just fine.
>>
>> (*) The problem is that moving all globals to a structure only works if
>> you know what globals
>> are linked in.  If you load a module, you need to expand the structure.
>> This is problematic
>> to say the least. The same problem has been solved with
>> Thread-local-storage using hooks
>> in the compiler and linker but I don't think we can do that in the
>> kernel. (at least not easily).
>>
>>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?44618B0E.2050506>