Routing server traffic thru two external ips.
Hi, I am new and would like to know if this is possible with bird. I currently have a game server setup behind a linux router/firewall which is hooked up to two cable modems via two NICS( eth0 and eth1 ). The idea is that if I have 12( or more ) players, how do I tell the kernel( with me telling using route ) TX packets to 6 players on eth0 and the other 6 on eth1. Any thoughts? Sincerely, Chuck Larson Linux newbie of 8 months _____________________________________________________________ Domain powered by www.iReg.com E-mail powered by www.1FreeEmail.com
Hi!
I am new and would like to know if this is possible with bird.
I currently have a game server setup behind a linux router/firewall which is hooked up to two cable modems via two NICS( eth0 and eth1 ). The idea is that if I have 12( or more ) players, how do I tell the kernel( with me telling using route ) TX packets to 6 players on eth0 and the other 6 on eth1. Any thoughts?
It depends on what your bandwidth requirements are. (a) The problem is in outgoing traffic, incoming traffic is minimal If both modems are connected to the same provider, the best solution is to avoid any routing tricks and just use the load balancing features of Linux traffic control. (b) Both incoming and outgoing traffic needs multiplexing That's going to be a real problem -- either you need cooperation at the side of your ISP (either load balancing in the opposite direction or dynamic routing between them and your site) or solve it at connection level (i.e., either use round-robin DNS or some kind of redirects in your application protocol to re-establish connection via the less loaded line). Have a nice fortnight -- Martin `MJ' Mares <mj@ucw.cz> http://atrey.karlin.mff.cuni.cz/~mj/ Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth Linux vs. Windows is a no-WIN situation.
Date: Tue, 20 Feb 2001 10:16:03 +0100 From: Martin Mares <mj@ucw.cz> Hi!
I am new and would like to know if this is possible with bird.
I currently have a game server setup behind a linux router/firewall which is hooked up to two cable modems via two NICS( eth0 and eth1 ). The idea is that if I have 12( or more ) players, how do I tell the kernel( with me telling using route ) TX packets to 6 players on eth0 and the other 6 on eth1. Any thoughts?
It depends on what your bandwidth requirements are. (a) The problem is in outgoing traffic, incoming traffic is minimal If both modems are connected to the same provider, the best solution is to avoid any routing tricks and just use the load balancing features of Linux traffic control. It probably doesn't matter if the same provider is involved and in fact, different providers are preferred as that allows some limited multi-homing. Load balancing should be employed in any case. Simply declaring 2 default routes in Cisco IOS accomplishes that and I believe that something similar is available in the 2.4 networking. Fortunately most game programs have higher incoming than outgoing bandwidth requirements at the player end, which means the reverse on the server end. Thus load balancing should be sufficient, but the use of some of the 2.4 kernel networking features to throttle non-game traffic (or vice-versa) might be a good idea.
Hello!
It probably doesn't matter if the same provider is involved and in fact, different providers are preferred as that allows some limited multi-homing. Load balancing should be employed in any case. Simply declaring 2 default routes in Cisco IOS accomplishes that and I believe that something similar is available in the 2.4 networking.
Accomplishes that, but unless the two paths have very similar timing (which happens usually only if their load is minimal [which implies balancing is useless anyway] or if they are parallel links), route level load balancing leads to terribly bad results due to TCP being unable to cope with such a high variance of RTT's. Hence, per-connection balancing using DNS or redirects leads to much better results. Have a nice fortnight -- Martin `MJ' Mares <mj@ucw.cz> http://atrey.karlin.mff.cuni.cz/~mj/ Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth "People disagree with me. I just ignore them." -- Linus Torvalds
Date: Tue, 20 Feb 2001 14:03:07 +0100 From: Martin Mares <mj@atrey.karlin.mff.cuni.cz>
It probably doesn't matter if the same provider is involved and in fact, different providers are preferred as that allows some limited multi-homing. Load balancing should be employed in any case. Simply declaring 2 default routes in Cisco IOS accomplishes that and I believe that something similar is available in the 2.4 networking.
Accomplishes that, but unless the two paths have very similar timing (which happens usually only if their load is minimal [which implies balancing is useless anyway] or if they are parallel links), route level load balancing leads to terribly bad results due to TCP being unable to cope with such a high variance of RTT's. Hence, per-connection balancing using DNS or redirects leads to much better results. I suppose that's why IOS maintains a "short term memory" and tends to send all packets to a particular destination over the same interface for a few minutes. The Cisco docs mention this someplace. I remember being called upon to explain "why doesn't multi-homing work" when testers would run the same traceroute repeatedly and found that only a single path was shown. A small period of no tracerouting, then trying again usually showed the other route eventually. I always wondered why and hadn't thought of the problem you point out, thank you. Simple ping statistics should show if the problem you describe is present, as no upstream provider ever has minimal load these days. Running an FTP mirror would also pick it up. I wonder if your concern is handled in the 2.4 networking however, as I don't recall seeing any mention of that situation. DNS RR solves an incoming balance problem nicely, but does nothing for outgoing traffic. Game server traffic is primarily outgoing, the server tells the client about the game state while the client merely returns the single players actions. Server redirects seem to be an exclusive feature of high volume custom servers, I've never heard of a general user program that attempted to take advantage of a multiple network interface enviroment. Perhaps I don't understand what you mean...
participants (4)
-
Chuck Larson -
Martin Mares -
Martin Mares -
Network Administration