From cmarcond06 at gmail.com Fri Jul 28 10:36:33 2006 From: cmarcond06 at gmail.com (Cesar Marcondes) Date: Fri, 28 Jul 2006 10:36:33 -0700 Subject: [ethbridge-discuss] hxbt wan emulator Message-ID: <88d780b40607281036t2d57a0b3qc41d980d8a41e9fb@mail.gmail.com> Dear all, I've been working with the hxbt (hitbox) wan emulator (from opensolaris) for a while, and I've been thinking on merge efforts of the hxbt wan emulator (a stream module) and ethbridge. On other words, extends the bridge to support wan emulation. Do you guys think it's a good idea? I was thinking on support some type of "IP/port" filters on the ethbridge to manage/demultiplex multiple "streams" based on filters, each one attached to different network emulation characteristics. Btw, is there a CVS/Subversion server for the ethbridge? Please let me know, Cesar Marcondes Graduate Intern Sun Microsystems From colinr at caveo.ca Fri Jul 28 10:50:18 2006 From: colinr at caveo.ca (Colin Ryan) Date: Fri, 28 Jul 2006 13:50:18 -0400 Subject: [ethbridge-discuss] EthBridge and OpenVPN Tun/Tap Message-ID: <44CA4E5A.9090600@caveo.ca> Anyone given some thought as to how this project might bring bridging support for the OpenVPN project. That project uses the TUN/TAP drivers, the latter of which doesn't exist for Solaris, hence not allowing the goodness of bridging mode. From dme at sun.com Fri Jul 28 23:04:04 2006 From: dme at sun.com (David Edmondson) Date: Sat, 29 Jul 2006 07:04:04 +0100 Subject: [ethbridge-discuss] hxbt wan emulator In-Reply-To: <88d780b40607281036t2d57a0b3qc41d980d8a41e9fb@mail.gmail.com> References: <88d780b40607281036t2d57a0b3qc41d980d8a41e9fb@mail.gmail.com> Message-ID: <78291A48-890F-44D7-BC62-8A231B5A359E@sun.com> On 28 Jul 2006, at 6:36pm, Cesar Marcondes wrote: > I've been working with the hxbt (hitbox) wan emulator (from > opensolaris) for a while, and I've been thinking on merge efforts of > the hxbt wan emulator (a stream module) and ethbridge. On other words, > extends the bridge to support wan emulation. > > Do you guys think it's a good idea? I was thinking on support some > type of "IP/port" filters on the ethbridge to manage/demultiplex > multiple "streams" based on filters, each one attached to different > network emulation characteristics. Cesar, it sounds interesting. Could you produce a quick diagram to show how you would expect the end result to look? For example, what would be the links between different NICs and the bridge? At which points would you apply filtering and traffic grooming? > Btw, is there a CVS/Subversion server for the ethbridge? Not yet. We have some updated bridge code that we should make available, but have not got around to it yet. Perhaps via SVN would be a good approach. (The updated code is included in the recent Solaris on Xen[1] code drop if you are really desperate.) dme. [1] http://www.opensolaris.org/os/community/xen/ From dme at sun.com Fri Jul 28 23:07:00 2006 From: dme at sun.com (David Edmondson) Date: Sat, 29 Jul 2006 07:07:00 +0100 Subject: [ethbridge-discuss] EthBridge and OpenVPN Tun/Tap In-Reply-To: <44CA4E5A.9090600@caveo.ca> References: <44CA4E5A.9090600@caveo.ca> Message-ID: <9C9335BC-2CCE-4F74-8252-DA0DC9683305@sun.com> On 28 Jul 2006, at 6:50pm, Colin Ryan wrote: > Anyone given some thought as to how this project might bring > bridging support for the OpenVPN project. That project uses the TUN/ > TAP drivers, the latter of which doesn't exist for Solaris, hence > not allowing the goodness of bridging mode. Colin, the page at http://vtun.sourceforge.net/tun/ suggests that a tun driver exists for Solaris, though I've never tried it. The OpenVPN page also mentions Solaris. Did I miss something? dme. From cmarcond06 at gmail.com Mon Jul 31 09:26:08 2006 From: cmarcond06 at gmail.com (Cesar Marcondes) Date: Mon, 31 Jul 2006 09:26:08 -0700 Subject: [ethbridge-discuss] hxbt wan emulator In-Reply-To: <78291A48-890F-44D7-BC62-8A231B5A359E@sun.com> References: <88d780b40607281036t2d57a0b3qc41d980d8a41e9fb@mail.gmail.com> <78291A48-890F-44D7-BC62-8A231B5A359E@sun.com> Message-ID: <88d780b40607310926g4e91c936o2a853ccb8cc53b8e@mail.gmail.com> Dear David, Thanks for the reply. Comments are inline. David Edmondson wrote: > > On 28 Jul 2006, at 6:36pm, Cesar Marcondes wrote: >> I've been working with the hxbt (hitbox) wan emulator (from >> opensolaris) for a while, and I've been thinking on merge efforts of >> the hxbt wan emulator (a stream module) and ethbridge. On other words, >> extends the bridge to support wan emulation. >> >> Do you guys think it's a good idea? I was thinking on support some >> type of "IP/port" filters on the ethbridge to manage/demultiplex >> multiple "streams" based on filters, each one attached to different >> network emulation characteristics. > > Cesar, it sounds interesting. Could you produce a quick diagram to show how you would expect the end result to look? For example, what would be the links between different NICs and the bridge? At which points would you apply filtering and traffic grooming? Sure. VLAN 0 --> hme0 --> [br mux/demux stream ] [bridge mux/demux stream] --> hme0 --> VLAN 0 VLAN 1 --> hme1 --> [forward filter TCP/UDP]-->[hxbt stream]->[putback on interf ] --> hme1 --> VLAN 1 I believe it's possible to deal with the VLANs directly, but I don't need this, as long as I can get MAC addresses from the same interface. The filter and traffic grooming would be applied on the forward routine such that I would filter on this datapath (some typecasting and verification/identification of TCP/UDP fields would be necessary), then calling up the stream module (hxbt module) associated with the TCP/UDP filter, apply bandwidth and delay on this specific flow. Finally, calling back the bridge to put back the packet on the proper interface. I'm still studying the bridge code and stream programming, so I will try some tests first, and I can refine this description as I gather more info. According to the STREAMs approach, I could just push the hitbox (WAN emulator) stream module (modified to support per flow WAN emulation) in the main bridge stream. So far, this is the idea. The big picture is to enable something like this: Machine 1 (MAC X/VLAN 0) --->\ Machine 2 (MAC Y/VLAN 0) ---> [ethbridge + wan emulation] ---> Machine 4 (MAC W/VLAN 1) Machine 3 (MAC Z/VLAN 0) --->/ Machine 1/port 6000 - emulate delay 10 ms - Machine 4/port 6000 Machine 2/port 7000 - emulate delay 50 ms - Machine 4/port 7000 Machine 3/port 8000 - emulate delay 100 ms - Machine 4/port 8000 >> Btw, is there a CVS/Subversion server for the ethbridge? > Not yet. We have some updated bridge code that we should make available, but have not got around to it yet. Perhaps via SVN would be a good approach. (The updated code is included in the recent Solaris on Xen[1] code drop if you are really desperate.) I'm not that desperate :) . I just wanted to start coding on top of the most current base. I'll take a look at this pointer. Thank you very much, > dme. > > [1] http://www.opensolaris.org/os/community/xen Cesar Marcondes From Cesar.Marcondes at Sun.COM Mon Jul 31 09:19:13 2006 From: Cesar.Marcondes at Sun.COM (Cesar Marcondes) Date: Mon, 31 Jul 2006 09:19:13 -0700 Subject: [ethbridge-discuss] hxbt wan emulator In-Reply-To: <78291A48-890F-44D7-BC62-8A231B5A359E@sun.com> References: <88d780b40607281036t2d57a0b3qc41d980d8a41e9fb@mail.gmail.com> <78291A48-890F-44D7-BC62-8A231B5A359E@sun.com> Message-ID: <44CE2D81.5070803@sun.com> David Edmondson wrote: > > On 28 Jul 2006, at 6:36pm, Cesar Marcondes wrote: >> I've been working with the hxbt (hitbox) wan emulator (from >> opensolaris) for a while, and I've been thinking on merge efforts of >> the hxbt wan emulator (a stream module) and ethbridge. On other words, >> extends the bridge to support wan emulation. >> >> Do you guys think it's a good idea? I was thinking on support some >> type of "IP/port" filters on the ethbridge to manage/demultiplex >> multiple "streams" based on filters, each one attached to different >> network emulation characteristics. > > Cesar, it sounds interesting. Could you produce a quick diagram to > show how you would expect the end result to look? For example, what > would be the links between different NICs and the bridge? At which > points would you apply filtering and traffic grooming? Sure. VLAN 0 --> hme0 --> [bridge mux/demux stream ] [bridge mux/demux stream] --> hme0 --> VLAN 0 VLAN 1 --> hme1 --> [forward filter by TCP/UDP] --> [hxbt stream] -> [ put back on proper interf ] --> hme1 --> VLAN 1 I believe it's possible to deal with the VLANs directly, but I don't need this, as long as I can get MAC addresses from the same interface. The filter and traffic grooming would be applied on the forward routine such that I would filter on this datapath (some typecasting and verification/identification of TCP/UDP fields would be necessary), then calling up the stream module (hxbt module) associated with the TCP/UDP filter, apply bandwidth and delay on this specific flow. Finally, calling back the bridge to put back the packet on the proper interface. I'm still studying the bridge code and stream programming, so I will try some tests first, and I can refine this description as I gather more info. According to the STREAMs approach, I could just push the hitbox (WAN emulator) stream module (modified to support per flow WAN emulation) in the main bridge stream. So far, this is the idea. The big picture is to enable something like this: Machine 1 (MAC X/VLAN 0) --->\ Machine 2 (MAC Y/VLAN 0) ---> [ethbridge + wan emulation] ---> Machine 4 (MAC W/VLAN 1) Machine 3 (MAC Z/VLAN 0) --->/ Machine 1/port 6000 - emulate delay 10 ms - Machine 4/port 6000 Machine 2/port 7000 - emulate delay 50 ms - Machine 4/port 7000 Machine 3/port 8000 - emulate delay 100 ms - Machine 4/port 8000 >> Btw, is there a CVS/Subversion server for the ethbridge? > Not yet. We have some updated bridge code that we should make > available, but have not got around to it yet. Perhaps via SVN would > be a good approach. (The updated code is included in the recent > Solaris on Xen[1] code drop if you are really desperate.) I'm not that desperate :) . I just wanted to start coding on top of the most current base. I'll take a look at this pointer. Thank you very much, > dme. > > [1] http://www.opensolaris.org/os/community/xen Cesar Marcondes