Автор Тема: Цисководы е? port-channel load-balance src-dst-ip WS-C2960  (Прочитано 7043 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Flyer_SPb

  • Модераторы
  • Старожил
  • *****
  • Сообщений: 990
  • Рейтинг: 26
  • Пол: Мужской
  • Ветеран войны с Kilrathi
    • Просмотр профиля
  • Откуда: 2:5030
Оно реально работает?

Пробую на
cisco WS-C2960-48TT-L
Cisco IOS Software, C2960 Software (C2960-LANBASE-M), Version 12.2(35)SE5, RELEASE SOFTWARE (fc1)

sh run | include (channel|t0/[345678]$)
port-channel load-balance src-dst-ip
interface Port-channel1
interface Port-channel2
interface Port-channel3
interface FastEthernet0/3
 channel-group 1 mode passive
interface FastEthernet0/4
 channel-group 1 mode passive
interface FastEthernet0/5
 channel-group 2 mode passive
interface FastEthernet0/6
 channel-group 2 mode passive
interface FastEthernet0/7
 channel-group 3 mode passive
interface FastEthernet0/8
 channel-group 3 mode passive
sh lacp neighbor
Flags:  S - Device is requesting Slow LACPDUs
        F - Device is requesting Fast LACPDUs
        A - Device is in Active mode       P - Device is in Passive mode

Channel group 1 neighbors

Partner's information:

                  LACP port                        Oper    Port     Port
Port      Flags   Priority  Dev ID          Age    Key     Number   State
Fa0/3     SA      255       000a.5e18.7fcb  23s    0x9     0x1      0x3D
Fa0/4     SA      255       000a.5e18.7fcb  21s    0x9     0x2      0x3D

Channel group 2 neighbors

Partner's information:

                  LACP port                        Oper    Port     Port
Port      Flags   Priority  Dev ID          Age    Key     Number   State
Fa0/5     SA      255       0011.6b96.816a  21s    0x9     0x1      0x3D
Fa0/6     SA      255       0011.6b96.816a  28s    0x9     0x2      0x3D

Channel group 3 neighbors

Partner's information:

                  LACP port                        Oper    Port     Port
Port      Flags   Priority  Dev ID          Age    Key     Number   State
Fa0/7     SA      255       0011.6b96.6f29  12s    0x9     0x1      0x3D
Fa0/8     SA      255       0011.6b96.6f29  16s    0x9     0x2      0x3D
sh lacp internal
Flags:  S - Device is requesting Slow LACPDUs
        F - Device is requesting Fast LACPDUs
        A - Device is in Active mode       P - Device is in Passive mode

Channel group 1
                            LACP port     Admin     Oper    Port        Port
Port      Flags   State     Priority      Key       Key     Number      State
Fa0/3     SP      bndl      32768         0x1       0x1     0x3         0x3C
Fa0/4     SP      bndl      32768         0x1       0x1     0x4         0x3C

Channel group 2
                            LACP port     Admin     Oper    Port        Port
Port      Flags   State     Priority      Key       Key     Number      State
Fa0/5     SP      bndl      32768         0x2       0x2     0x5         0x3C
Fa0/6     SP      bndl      32768         0x2       0x2     0x6         0x3C

Channel group 3
                            LACP port     Admin     Oper    Port        Port
Port      Flags   State     Priority      Key       Key     Number      State
Fa0/7     SP      bndl      32768         0x3       0x3     0x7         0x3C
Fa0/8     SP      bndl      32768         0x3       0x3     0x8         0x3C

С одной стороны
Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer3+4 (1)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

802.3ad info
LACP rate: slow
Aggregator selection policy (ad_select): stable
Active Aggregator Info:
        Aggregator ID: 2
        Number of ports: 2
        Actor Key: 9
        Partner Key: 2
        Partner Mac Address: 00:1e:bd:f5:5a:00

Slave Interface: eth1
MII Status: up
Link Failure Count: 3
Permanent HW addr: 00:11:6b:96:81:6a
Aggregator ID: 2

Slave Interface: eth2
MII Status: up
Link Failure Count: 2
Permanent HW addr: 00:14:d1:11:86:c9
Aggregator ID: 2

bond0     Link encap:Ethernet  HWaddr 00:11:6b:96:81:6a
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::211:6bff:fe96:816a/64 Scope:Link
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:12796681 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9445521 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:3623797862 (3.3 GiB)  TX bytes:2088161932 (1.9 GiB)

bond0:1   Link encap:Ethernet  HWaddr 00:11:6b:96:81:6a
          inet addr:192.168.1.4  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
(адреса специально "нечётный" и "чётный")

tcp        0      0 0.0.0.0:5001            0.0.0.0:*               LISTEN      2897/iperf
tcp        0      0 0.0.0.0:5003            0.0.0.0:*               LISTEN      2900/iperf
(Порты специально оба нечётные, чтобы не мешало, ибо линукс работает layer3+4)


С другой стороны
Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)

Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer3+4 (1)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

802.3ad info
LACP rate: slow
Aggregator selection policy (ad_select): stable
Active Aggregator Info:
        Aggregator ID: 1
        Number of ports: 2
        Actor Key: 9
        Partner Key: 3
        Partner Mac Address: 00:1e:bd:f5:5a:00

Slave Interface: eth1
MII Status: up
Link Failure Count: 2
Permanent HW addr: 00:11:6b:96:6f:29
Aggregator ID: 1

Slave Interface: eth2
MII Status: up
Link Failure Count: 3
Permanent HW addr: 00:e0:7d:a5:e2:70
Aggregator ID: 1

bond0     Link encap:Ethernet  HWaddr 00:11:6b:96:6f:29
          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::211:6bff:fe96:6f29/64 Scope:Link
          UP BROADCAST RUNNING MASTER MULTICAST  MTU:1500  Metric:1
          RX packets:4883362 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9668232 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:324374046 (309.3 MiB)  TX bytes:1727015334 (1.6 GiB)

Запускаю на втором
iperf -c 192.168.1.1 -t 60 >1.lst 2>&1 &
iperf -c 192.168.1.4 -t 60 -p 5003 >4.lst 2>&1 &

И, если оба iperf одинаково выбирают чётные (или нечётные) src порты (если не одинаково, то и не должно работать), вижу, что от второго компа до циски соединения идут по разным линкам, а от циски до первого компа - по одному.
То же самое ответные пакеты идут от первого компа до циски по разным линкам, а от циски до второго компа - по одному.

Соответственно, суммарно имею не более 100Mbit/sec.

Почему циска не разбрасывает соединения
192.168.1.3 -> 192.168.1.1
и
192.168.1.3 -> 192.168.1.4
по разным линкам?


Соединив компы кроссами напрямую, вижу, что соединения идут по разным линкам и одновременно показывают по 94.3 Mbits/sec.

They stole my gun, my beautiful Steltek gun!

Оффлайн VanDyke

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 1800
  • Рейтинг: 73
  • Пол: Мужской
  • Network Warrior
    • Просмотр профиля
  • Откуда: Destination network unreachable
Re: Цисководы е? port-channel load-balance src-dst-ip WS-C2960
« Ответ #1 : 01 Сентября 2011, 12:12:54 »
Если мне маразм не изменяет
(3 xor 1) and 2 = 2
(3 xor 4) and 2 = 2
Вот тебе и один линк.
Not as ultimate as 42, but pretty close...

Оффлайн Flyer_SPb

  • Модераторы
  • Старожил
  • *****
  • Сообщений: 990
  • Рейтинг: 26
  • Пол: Мужской
  • Ветеран войны с Kilrathi
    • Просмотр профиля
  • Откуда: 2:5030
Re: Цисководы е? port-channel load-balance src-dst-ip WS-C2960
« Ответ #2 : 01 Сентября 2011, 12:40:53 »
Если мне маразм не изменяет
(3 xor 1) and 2 = 2
(3 xor 4) and 2 = 2
Вот тебе и один линк.
А там именно "and 2", не "mod 2"?
They stole my gun, my beautiful Steltek gun!

Оффлайн VanDyke

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 1800
  • Рейтинг: 73
  • Пол: Мужской
  • Network Warrior
    • Просмотр профиля
  • Откуда: Destination network unreachable
Re: Цисководы е? port-channel load-balance src-dst-ip WS-C2960
« Ответ #3 : 01 Сентября 2011, 12:44:00 »
Flyer_SPb, а может и mod, точно не помню.
И исходников ядра под рукой нет
Not as ultimate as 42, but pretty close...

Оффлайн Flyer_SPb

  • Модераторы
  • Старожил
  • *****
  • Сообщений: 990
  • Рейтинг: 26
  • Пол: Мужской
  • Ветеран войны с Kilrathi
    • Просмотр профиля
  • Откуда: 2:5030
Re: Цисководы е? port-channel load-balance src-dst-ip WS-C2960
« Ответ #4 : 01 Сентября 2011, 12:45:32 »
Попробовал
port-channel load-balance dst-ip
наблюдаю:
------------------------------------------------------------
Client connecting to 192.168.1.1, TCP port 5001
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[  3] local 192.168.1.3 port 55320 connected with 192.168.1.1 port 5001
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  66.9 MBytes  55.9 Mbits/sec
------------------------------------------------------------
Client connecting to 192.168.1.4, TCP port 5003
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[  3] local 192.168.1.3 port 35246 connected with 192.168.1.4 port 5003
[ ID] Interval       Transfer     Bandwidth
[  3]  0.0-10.0 sec  46.0 MBytes  38.4 Mbits/sec
До циски идёт по двум линкам.
They stole my gun, my beautiful Steltek gun!

Оффлайн Flyer_SPb

  • Модераторы
  • Старожил
  • *****
  • Сообщений: 990
  • Рейтинг: 26
  • Пол: Мужской
  • Ветеран войны с Kilrathi
    • Просмотр профиля
  • Откуда: 2:5030
Re: Цисководы е? port-channel load-balance src-dst-ip WS-C2960
« Ответ #5 : 01 Сентября 2011, 12:46:26 »
И исходников ядра под рукой нет
Цискиного?  :o
They stole my gun, my beautiful Steltek gun!

Оффлайн VanDyke

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 1800
  • Рейтинг: 73
  • Пол: Мужской
  • Network Warrior
    • Просмотр профиля
  • Откуда: Destination network unreachable
Re: Цисководы е? port-channel load-balance src-dst-ip WS-C2960
« Ответ #6 : 01 Сентября 2011, 12:49:14 »
Цискиного?
в линуксе bonding тоже умеет xor, и по идее должно работать идентично.
Not as ultimate as 42, but pretty close...

Оффлайн VanDyke

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 1800
  • Рейтинг: 73
  • Пол: Мужской
  • Network Warrior
    • Просмотр профиля
  • Откуда: Destination network unreachable
Re: Цисководы е? port-channel load-balance src-dst-ip WS-C2960
« Ответ #7 : 01 Сентября 2011, 12:50:53 »
кстати в 3750 есть такая команда замечательная
test etherchannel load-balance interface port-channel 1 ip 192.168.1.3 192.168.1.1
может и в 2960 тоже есть
Not as ultimate as 42, but pretty close...

Оффлайн Flyer_SPb

  • Модераторы
  • Старожил
  • *****
  • Сообщений: 990
  • Рейтинг: 26
  • Пол: Мужской
  • Ветеран войны с Kilrathi
    • Просмотр профиля
  • Откуда: 2:5030
Re: Цисководы е? port-channel load-balance src-dst-ip WS-C2960
« Ответ #8 : 01 Сентября 2011, 13:40:21 »
В линуксе для layer3+4
((source port XOR dest port) XOR ((source IP XOR dest IP) AND 0xffff)) modulo slave count
Я и в циске рассчитывал на что-то подобное.

test etherchannel load-balance interface port-channel 1 ip 192.168.1.3 192.168.1.1
Бинго!
bond#test etherchannel load-balance interface port-channel 2 ip 192.168.1.3 192.168.1.1
Would select Fa0/5 of Po2
bond#test etherchannel load-balance interface port-channel 2 ip 192.168.1.3 192.168.1.2
Would select Fa0/5 of Po2
bond#test etherchannel load-balance interface port-channel 2 ip 192.168.1.3 192.168.1.4
Would select Fa0/5 of Po2
bond#test etherchannel load-balance interface port-channel 2 ip 192.168.1.3 192.168.1.5
Would select Fa0/6 of Po2
bond#test etherchannel load-balance interface port-channel 2 ip 192.168.1.3 192.168.1.6
Would select Fa0/6 of Po2
bond#test etherchannel load-balance interface port-channel 2 ip 192.168.1.3 192.168.1.7
Would select Fa0/5 of Po2
bond#test etherchannel load-balance interface port-channel 2 ip 192.168.1.3 192.168.1.8
Would select Fa0/5 of Po2
They stole my gun, my beautiful Steltek gun!

Оффлайн VanDyke

  • Модератор
  • Ветеран
  • *****
  • Сообщений: 1800
  • Рейтинг: 73
  • Пол: Мужской
  • Network Warrior
    • Просмотр профиля
  • Откуда: Destination network unreachable
Re: Цисководы е? port-channel load-balance src-dst-ip WS-C2960
« Ответ #9 : 01 Сентября 2011, 14:44:57 »
странноватый разброс... :)
Not as ultimate as 42, but pretty close...