Networking Forums

Networking Forums > Computer Networking > Linux Networking > Multipath with 2x ADSL, non-random path selection?

Reply
Thread Tools Display Modes

Multipath with 2x ADSL, non-random path selection?

 
 
jetmarc@hotmail.com
Guest
Posts: n/a

 
      09-06-2005, 06:20 PM
Hi.

I'm having trouble with a linux gateway router that makes available
two DSL modems to the LAN.

Each modem works in NAT mode, and has its own WAN IP.

To equalize the bandwidth over both DSL channels, I use the following
command. It sets up a multipath default gateway on the router:

ip route add default scope global \
nexthop via $DSL1_IP dev $DSL1_IF weight $DSL1_DN \
nexthop via $DSL2_IP dev $DSL2_IF weight $DSL2_DN

The linux kernel (Redhat 2.4.21-27.0.2.EL) assigns a random route
for every new destination IP. This route is memorized in the route
cache, so that future packets take the same route. This is permits
the usage of my two distinct WAN IPs and NAT.

However, I notice a lot connection losses on the LAN computers.
Especially affected are longterm connections with little traffic, eg
MSN Messenger sessions, or SSH terminals.

After analysing this problem, I noticed that it is related to the
multipath route selection algorithm. Once a (random) route is chosen
and stored in the cache, it does not live forever. After a certain
time, or after the cache overflows (there might exist promiscuos P2P
apps in the LAN), cache information is deleted. This might also be
related to the fact, that the router hands out ICMP_REDIRECTs, so that
lots of the packets are not seen by the router.

After the route is dropped off the cache, the multipath equalize
assigns a new route for subsequent packets of the existing connection.
If it chooses a different DSL channel, the new WAN IP doesn't match
the original one, and the destination host discards the packet. The
TCP connection is lost.

I would like to solve this problem, by replacing the random path
choosing algorithm with a deterministic one. Even if the routing
information is wiped from the cache, the multipath algorihm should
re-assign the SAME route again. This could be acomplished by
hashing the source/destination IP, and selecting the route based
on the hash value.

While I am able to program C, I have trouble understanding how and
where exactly to apply a patch to the kernel source code. Can someone
of you please point me to the source file, where the multipath route
decision is made?

Thanks in advance.
Marc

 
Reply With Quote
 
 
 
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Multipath is not working, kernel crashes darjus@gmail.com Linux Networking 0 02-13-2006 08:29 PM
ADSL Modem Synchronisation - why is it random? Euclid Broadband 1 07-05-2005 12:50 PM
Multipath - Common on Long Distance Links? - 802.11a vs. b c hore Wireless Internet 8 07-03-2004 07:25 PM
ADSL and Carrier Pre-Selection (CPS) Ray Broadband 6 10-17-2003 08:10 PM
linux multipath per session route alexp Linux Networking 0 08-22-2003 01:16 AM



1 2 3 4 5 6 7 8 9 10 11