Options

eigrp load balancing

lukaszratajczaklukaszratajczak Registered Users Posts: 3 ■□□□□□□□□□
Link to topology link

sh run 
..
interface Loopback11
 ip address 10.1.1.1 255.255.255.0
!
interface Loopback12
 no ip address
!
interface FastEthernet0/0
 ip address 100.1.2.1 255.255.255.0
 ip load-sharing per-packet
 duplex auto
 speed auto
!
interface FastEthernet0/1
 ip address 100.1.4.1 255.255.255.0
 ip load-sharing per-packet
 duplex auto
 speed auto
!
interface FastEthernet1/0
 bandwidth 10000
 ip address 100.1.3.1 255.255.255.0
 ip load-sharing per-packet
 delay 100
 duplex auto
 speed auto
!
router eigrp 1
 network 0.0.0.0
 no auto-summary
..


R1#sh ip route 10.1.5.1
Routing entry for 10.1.5.0/24
  Known via "eigrp 1", distance 90, metric 435200, type internal
  Redistributing via eigrp 1
  Last update from 100.1.4.4 on FastEthernet0/1, 00:16:12 ago
  Routing Descriptor Blocks:
    100.1.4.4, from 100.1.4.4, 00:16:12 ago, via FastEthernet0/1
      Route metric is 435200, traffic share count is 1
      Total delay is 7000 microseconds, minimum bandwidth is 10000 Kbit
      Reliability 255/255, minimum MTU 1500 bytes
      Loading 1/255, Hops 2
    100.1.3.3, from 100.1.3.3, 00:16:12 ago, via FastEthernet1/0
      Route metric is 435200, traffic share count is 1
      Total delay is 7000 microseconds, minimum bandwidth is 10000 Kbit
      Reliability 255/255, minimum MTU 1500 bytes
      Loading 1/255, Hops 2
  * 100.1.2.2, from 100.1.2.2, 00:16:12 ago, via FastEthernet0/0
      Route metric is 435200, traffic share count is 1
      Total delay is 7000 microseconds, minimum bandwidth is 10000 Kbit
      Reliability 255/255, minimum MTU 1500 bytes
      Loading 1/255, Hops 2


R1#sh ip route ei
     100.0.0.0/24 is subnetted, 6 subnets
D       100.3.5.0 [90/307200] via 100.1.3.3, 00:16:29, FastEthernet1/0
D       100.2.4.0 [90/307200] via 100.1.2.2, 00:16:29, FastEthernet0/0
D       100.4.5.0 [90/307200] via 100.1.4.4, 00:16:29, FastEthernet0/1
     10.0.0.0/24 is subnetted, 2 subnets
D       10.1.5.0 [90/435200] via 100.1.4.4, 00:16:29, FastEthernet0/1
                 [90/435200] via 100.1.3.3, 00:16:29, FastEthernet1/0
                 [90/435200] via 100.1.2.2, 00:16:29, FastEthernet0/0


R1#ping 10.1.5.1 re 10

Type escape sequence to abort.
Sending 10, 100-byte ICMP Echos to 10.1.5.1, timeout is 2 seconds:
!!!!!!!!!!
Success rate is 100 percent (10/10), round-trip min/avg/max = 24/37/48 ms
R1#
*Mar  1 13:00:10.844: IP: tableid=0, s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet1/0), routed via FIB
*Mar  1 13:00:10.844: IP: s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet1/0), len 100, sending
*Mar  1 13:00:10.872: IP: tableid=0, s=10.1.5.1 (FastEthernet0/0), d=100.1.2.1 (FastEthernet0/0), routed via RIB
*Mar  1 13:00:10.872: IP: s=10.1.5.1 (FastEthernet0/0), d=100.1.2.1 (FastEthernet0/0), len 100, rcvd 3
*Mar  1 13:00:10.876: IP: tableid=0, s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet0/0), routed via FIB
*Mar  1 13:00:10.880: IP: s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet0/0), len 100, sending
*Mar  1 13:00:10.912: IP: tableid=0, s=10.1.5.1 (FastEthernet0/0), d=100.1.2.1 (FastEthernet0/0), routed via RIB
*Mar  1 13:00:10.912: IP: s=10.1.5.1 (FastEthernet0/0), d=100.1.2.1 (FastEthernet0/0), len 100, rcvd 3
*Mar  1 13:00:10.916: IP: tableid=0, s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet0/1), routed via FIB
*Mar  1 13:00:10.920: IP: s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet0/1), len 100, sending
*Mar  1 13:00:10.952: IP: tableid=0, s=10.1.5.1 (FastEthernet0/0), d=100.1.2.1 (FastEthernet0/0), routed via RIB
*Mar  1 13:00:10.956: IP: s=10.1.5.1 (FastEthernet0/0), d=100.1.2.1 (FastEthernet0/0), len 100, rcvd 3
*Mar  1 13:00:10.956: IP: tableid=0, s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet1/0), routed via FIB
*Mar  1 13:00:10.960: IP: s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet1/0), len 100, sending
*Mar  1 13:00:10.976: IP: tableid=0, s=10.1.5.1 (FastEthernet0/0), d=100.1.2.1 (FastEthernet0/0), routed via RIB
*Mar  1 13:00:10.976: IP: s=10.1.5.1 (FastEthernet0/0), d=100.1.2.1 (FastEthernet0/0), len 100, rcvd 3
*Mar  1 13:00:10.980: IP: tableid=0, s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet0/0), routed via FIB
*Mar  1 13:00:10.980: IP: s=100.1.2.1 (local), d=10.1.5.1 (FastEthernet0/0), len 100, sending
...



Could someone tell me why always is s=100.1.2.1
Packets come out trough fa0/0 fa0/1 and fa1/0 but ip packets are comming back only trough fa0/0

Comments

  • Options
    tomtom1tomtom1 Member Posts: 375
    What happens if you do a couple of traceroutes? Always 100.1.2.1 too?
  • Options
    lukaszratajczaklukaszratajczak Registered Users Posts: 3 ■□□□□□□□□□
    Sometimes go by fa1/0 or fa0/1 or fa0/0. It depends where is the asterix :
    R1#sh ip route 10.1.5.1 Routing entry for 10.1.5.0/24
    ...   
    * 100.1.2.2, from 100.1.2.2, 00:16:12 ago, via FastEthernet0/0  
    ...
    
  • Options
    fredrikjjfredrikjj Member Posts: 879
    Packets come out trough fa0/0 fa0/1 and fa1/0 but ip packets are comming back only trough fa0/0

    Because load sharing is done on a per-destination basis on the remote router, and not per packet. I'm not sure why that happens though because the ICMP echo replies should be process switched and sources say that process switched packets are always load shared per packet. Pretty interesting actually and I'm labbing it as we speak. My working hypothesis is that icmp packets are process switch per destination or per flow in order to make it more likely that a these control packets follow the same path / don't arrive out of order. If you use ip packet load-sharing per-packet on both routers, packets will be sent/received on all next-hop interfaces installed in the routing table.
  • Options
    fredrikjjfredrikjj Member Posts: 879
    My new hypothesis is that CEF is doing something to locally generated traffic. The 'ip packet load-sharing per-packet' command is a CEF command, and using it makes CEF load balance per packet and this seems to apply to locally generated traffic as well. However, usually, it's said that CEF only applies to transit traffic. Disable CEF with 'no ip cef' and all of a sudden the pings are load balanced per packet.
    R5(config)# s=10.5.5.5[B] [SIZE=3](local)[/SIZE][/B], d=10.1.1.1 (FastEthernet0/0), routed via [SIZE=3][B]FIB[/B][/SIZE]
    

    That's locally generated traffic routed via the FIB (CEF) and not process switched.

    PS.
    Potentiallly, this could also be a Dynamips issue since I'm running this in GNS3, just as you are.
  • Options
    lukaszratajczaklukaszratajczak Registered Users Posts: 3 ■□□□□□□□□□
    it helped, maybe because CEF uses adjacency tables to prepend Layer 2 addressing information and the adjacency table maintains Layer 2 next-hop addresses for all FIB entries...
    Thanks
Sign In or Register to comment.