Network channel bonding in Windows

26 public posts in this discussion.

Post 1

http://www.ipmetrics.com/ipms/ProductsServices.htm

This is a really great little program I've been running for a day or so- it enables channel bonding in Windows, emulated through software, so it runs on any switch and any network cards- even if the switch doesn't support bonding.

What is network bonding? Network bonding is combining two ethernet cards to provide increased services... this program gives both redundancy and increased throughafare- two 100mbps cards combine to create ~200mbps network bandwith. And if one of your cards dies, or the cable is pulled out, then the remaining one (or more then one) continues to function as normal (at 100mbps tho', naturally)...

As an additional yummy, the data is striped over the two cards, like RAID arrays on a hard drive, so your latency will (generally) drop as well... extra good for high bandwith games and crowded LANs (like our large Evo or DGA LANs...) the administrators of DGA and Evo may look into running this (or Linux bonding) on the servers (if they're not already) as IMHO it will greatly ease the network load.

I'm very impressed with this program and it's a keeper, so I thought I would go and share it with the rest of you. It's even possible to have more then two cards bonded- there's no (theoretical) limit; however, your bandwith will begin to be limited first by your hard drive speed (if copying files) and then by your PCI bus limit- so don't go out and buy two more network cards just yet...

And remember, of course, that while you may be running at about ~200mbps, the other side must also be running at equivilant speeds to gain the speed boost for a single transfer... otherwise, the boost only comes into play when transferring two or more files from different sources.

Post 2

awesome... so if i have two gigabit network cards.... :D

Post 3

how will it ease network load? all its going to do is make for more connections on the network, which means more work for the switches, sure it'll increase transfer speeds, but will eventually slow everyone else down. and when they slow down, you will be forced to too.. unless you start copying many different files from different users..

Post 4

B R I D G I N G

not bonding
B R I D G I N G

Post 5

i thought bridging was joining two network sources together? eg, bridging a wireless network to a wired network? win xp pro offers a network bridging option.. i tried it with 2 network cards at the last dga i attended, and didn't make any difference, maybe my not knowing what i was doing caused me to do it wrong

Post 6

Not correct.

Bridging is joining two networks together: IE a wireless and Ethernet LAN. This will make all users of both networks able to see the other. Each card has it's own IP address. Bonding is linking two cards up to run at dual speed. Both cards have the same IP address.

About the dual gigabit cards... although that would theoretically give you a 2000 mbps connection, your hard drive speed firstly and then your PCI bus would prove to be the limiting factors... so achieving true ~2000mbps is not possible under the current x86 architecture.

PCI-X however... is another story... Bwahahahaha...

BTW- I am extremely impressed with this program and it's preformance. Top notch, high speed with low CPU overhead... mmm, speed.

Post 7

Yes bonding will increase connection speeds between two computers providing both computers have 2 X network cards & two crossover cables.

And yes you can use bonding on a hub or switches you just need two of them. For example if you have 8 people laning at your place & you need greater connection speeds than 100mbps for some of those big games.
All 8 people will need to have 2 X network cards install into there PC, then get 2 X Eight port hubs or switches & 16 X 100mbps cables. Theoretically all 8 people should have connection speeds at 200mbps.
Only one draw back from this.... (You end up with one big rats nest of cables. :D )

Try 4 X bonding & get 400mbps.... sweat.

Post 8

Not entirely correct, but your point is valid.

Bonding two network cards on a single switch still gains a preformance boost; but it is not as much as on two seperate switches. If you place two network cards on one switch, then the switch will partition itself up into it's designated limit, and waiting will only occur if:

* A packet is coming in to the sender from another node (unless full duplex is available).
* The destination node is already sending or receiving (if full duplex is
available, then only if the destination node is already receiving).
* The switch's aggregate bandwidth has already been reached, and it can
partition the network fabric no further.

While this is all fine, it is still recommended that a bonded connection is kept to individual switches; I have chosen not to do that, and I still enjoy a preformance boost but not as much as I could achieve with another switch, but still a substancial boost. Hence, the "~200mbps" I've been talking about in my upper posts.

It should be mentioned that the switch itself has to support this "Virtual LAN" partitioning; most new switches should. The "00 five port Dick Smith's brand switch I got from Dick Smith's supports it... so most should. Check your documentation if unsure.

Post 9

It's not really feasible for DGA to even consider this, double the cables, double the network hassles, double the switches required, there's just no point.

The LAN's are running ok as they are at the moment, I think they should concentrate on spending money on things LIKE gigabyte switches, that would be a much better performance boost then trying to dick round with 2 network cards.

Nice try, you lose.

Post 10

yes
gigabyte woudl be good tog et going but dga will have to raise alot of money as the switches are very costly
the cards arnt too badly priced
even if u dont get ya full 1000mbits u are still gettign over 100 so why the hell not switch to gigabyte insted of this double cabling system ?

Post 11

Quote from Knight Of Nih:
yes
gigabyte woudl be good tog et going but dga will have to raise alot of money as the switches are very costly

DGA will have Gigabit networking before Freedom LANs. Despite my best efforts to make us the first all-gigabit LAN in Darwin.

Firstly, unlike we evil dollar-pinching Liberals, DGA spends all its surpluses on DGA. I'm not sure how much they raise. Your guess is as good as mine, unless you happen to be Crazy or Clackers.

Also, Lani, Attrition and Aravi all give me the smackdown whenever I raise it.

I mean can't a man goddamn dream a little? :)

Post 12

Quote from El Presidente:
I mean can't a man goddamn dream a little? :)

dream all you want ... until you can give me a valid reason we need one it'll never get past the Exec :P

Post 13

Quote from Insomnia:
[quote:41a700734c="El Presidente"]I mean can't a man goddamn dream a little? :)

dream all you want ... until you can give me a valid reason we need one it'll never get past the Exec :P[/quote:41a700734c]

Buhcoz I wannit! :P

Grrrr democratic leadership grumble

Post 14

As I pointed out just before that, Reaper, a second switch is not required... better, but not required. Another decent LAN card costs... $30 tops... with the cable being $5... surely this is better then going over to Gigabit, which (while substancially faster) is not the industry standard at the moment (most people still run 100mbps) and will require new cards ($60), new cables ("0), and new switches (~$300)...

I mean, hey, if DGA can afford it definately go for it... but I'm just suggesting this could be a temporary stopgap until prices for Gigabit networking appliances fall into the mid-price range at least.

Post 15

I completely understand what your saying, however the problem we are having, is there is not enough network ports at the moment, if people started plugging in two network cables for their own use, then we'd have to half the DGA attendance, and I don't think anyone wants that, it's just not feasible.

Another young contendor crushed before the might of ZeReaper!

*VICTORY POSE*

Post 16

Whence the point of that being used at a DGA would be? Increase leeching, fuckover games and the network?

Post 17

Quote from Jay:
Whence the point of that being used at a DGA would be? Increase leeching, fuckover games and the network?

Well if you spring for gigabit you're likely to land a managed switch as well.

With a managed switch you could "throttle" leeching traffic: give a guaranteed 50% of traffic capacity to games only. Or some other mix.

This could be done at a master switch, although problems of leeching overload would remain per layer-1 switch.

Post 18

Channel Bonding sounds a lot like Fast Ether Channel - FEC

Logically combining 2 or more physical cards/ports into one logical channel

Great for servers but IMHO not much point for PC's

El Pres I think you are talking about Quality Of Service - QOS

This needs to be set up end to end on network devices - not just a central switch

One thought to separate traffic - ie games vs leeching - would be to set up VLAN's - Virtual Local Area Network

One for games and one for leeching and in fact you could go further and have a VLAN per game - ie CS VLAN, NS VLAN etc

Using VLANS wil also restrict broadcast traffic to that VLAN and not throughout ya whole network.

Now the caveats - you need to use switches ( not Hubs ) that support VLAN's - you will need to configure VLAN trunks between switches to transport data between switches

To move between VLANs will require either physical unplug replug your patch lead at the switch end or for someone to reconfigure the port to be in a different VLAN

Both not very practical.

What you really need is a set of good quality switches - CISCO

Have fibre or copper Gigabit interswitch links for your backbone then make sure everyone connects at 100Mbs Full Duplex - ie their PC NIC is set correctly.

This will give you a nice flat network providing 100Mb Full Duplex switched to each PC or Server - ie not sharing bandwidth but dedicated

Now you can do the math on how much data you can shift in this configuration - I doubt you could impact on the network performance based on about 150 PC's all connected to the network.

Over 150 PC's ( rough guide only - many variables to consider ) you then need to start looking at VLANs to control broadcast traffic etc - then you get into layer 3 routing etc between VLAN's ....

Just some ramblings from a bored network engineer ....

Post 19

Quote from El Presidente:
[quote:8d7d1f35a8="Jay"]Whence the point of that being used at a DGA would be? Increase leeching, fuckover games and the network?

Well if you spring for gigabit you're likely to land a managed switch as well.

With a managed switch you could "throttle" leeching traffic: give a guaranteed 50% of traffic capacity to games only. Or some other mix.

This could be done at a master switch, although problems of leeching overload would remain per layer-1 switch.[/quote:8d7d1f35a8]
dga used to have a managed backone switch it was a cisco or how ever u spell it
but that seemed to be causing the network prblems
so they went back to the normal swithc and the last few dga;s i have attended the network has been flawless
hope the are liek that for the rest of my life and hopefully we can gradually get soem gigabit technology in

Post 20

TopGun, thanks for the writeup.

I understood that basically you could throttle packets on a port-by-port basis at the switch level. I suppose that this would be a QoS system ("Packets on port 1337 go through first, ports 555 and 666 second, everything else last").

I'm still not sure why you'd need QoS to be an end-to-end thing, other than for the better performance you'd get if the client itself behaved nicely.

As for VLANs, I'm not sure if it isn't overkill. How would it manifest at the client end?

Post 21

Jay, it's just an easy way of doubling our network bandwith. So people leach- who cares? They're going to anyway, and at least this way they have less impact on the games. Even if they are using two network cards as well, the transfers will be done faster, meaning more time for gaming and less time waiting for copies to finish...

Post 22

Quote from El Presidente:
TopGun, thanks for the writeup.

I understood that basically you could throttle packets on a port-by-port basis at the switch level. I suppose that this would be a QoS system ("Packets on port 1337 go through first, ports 555 and 666 second, everything else last").

I'm still not sure why you'd need QoS to be an end-to-end thing, other than for the better performance you'd get if the client itself behaved nicely.

OK here we go .....

True end-to-end QoS requires that every element in the network path -switch, router, firewall, host, client, and so on - deliver its part of QoS, and that all of these entities be coordinated with QoS signalling.

In hindsight this is probably not the best way to go - needs all switches to support QoS and is a bit tricky to set up.

Another method is to use a form of queueing - depends on the device but I use CISCO as an example here - you can set up various queues and use various types of scheduling methods to service the queues.

OK with me so far ? ... I will ty to explain ...

Simple example .... you have 4 queues - high , medium, low and default

The traffic ( port / protocol ) that you want to have access to most bandwidth goes into the high queue and then the next and so on - with the default being the catch all.

You use access lists to filter the traffic into the queues - the queues are then serviced ( ie the packets sitting in the queues are sent ) in a number of different ways - basic is round robin - each queue gets a predefined time slice to be serviced - so high might get 60%, medium 20% , low 15% and default 5%.

Other ways are based on packet size, TOS info in packet headers etc

It gets quite complicated and takes a while to tune.

Quote:

As for VLANs, I'm not sure if it isn't overkill. How would it manifest at the client end?

Basically a VLAN = an IP Subnet - it is a way to segment your network into smaller pieces there by reducing the size of the broadcast domains.

They are transparent to end devices - ie PC's or servers - apart from the IP address that the end device has.

Example:

VLAN 10 = IP Subnet 172.16.10.0 with a 255.255.255.0 mask.
VLAN 20 = IP Subnet 172.16.20.0 with a 255.255.255.0 mask.

VLAN 10 may have all your servers attached to it - ie the switch port they connect to is configured to be in VLAN 10

And the same for the PC's - all in VLAN 20

Now you need a Router or Layer Capable switch to route the traffic between the VLAN's - without this the VLANs are logically separate and traffic cannot pas between them.

So going a step further you may have VLAN 30 for leeching - and use VLAN 10 for games - with all ya servers on VLAN 20

This keeps all the traffic separate and stops leeching slowing down the games.

Some caveats here - you will need a router ( layer 3 capable device ) - some switches incorporate this as well as layer 2 switching to make it work.

The switches you use must be capable of supporting VLANs and 802.1q trunking to be able to spread the VLANs across your network.

I have probably confused the s**t out of you but it is a techy type subject.

It would be easiest to use a fully switched network ( no hubs ) have all ports run at 100Mb Full Duplex plus limit the size to about 100 to 150 end devices.

Post 23

Well thats odd
Why does winxp allow me to "Bridge" two LAN connections then?

Post 24

Bridge may be a misnomer

I know on NT with 2 or more NIC's you can enable IP Forarding so the box acts like a router

This may be similar ????

A Bridge is a device/technique for joining ( or passing traffic between ) the same IP subnet deployed on two physically different infrastructures.

Operates at layer 2 .....

Post 25

My Memory's foggy, that's the TCp/IP model not the ISO/OSI model isn't it?

Post 26

Kinda the same at the bottom 4 layers

Layer OSI TCP/IP

1 physical physical
2 data link data link
3 network network IP
4 transport transport TCP/UDP
5 session apps.
6 presentation apps.
7 application apps.

All
People
Seem
To
Need
Data
Processing