Chelsio T580 pod pfSense: jak wstawić port QSFP+ w tryb 4x10G pod kabel breakout
Mam pfSense na małej maszynie z Chelsio T580 i chcę, żeby jeden z portów QSFP+ karmił czterech hostów 10G zamiast pojedynczego linku 40G. Kabel breakout wciąż jest w drodze, więc wolałbym mieć kartę w odpowiednim trybie, zanim dotrze.
- maszyna pfSense, Chelsio T580, jeden port QSFP+ dziś siedzący na DAC 40G, druga klatka pusta
- sterownik cxgbe, cxgbetool dostępny z powłoki
- breakout DAC QSFP+ na 4xSFP+, OCTTAPCABLE3M (AOC OCTCABLE5M-SR jako plan zapasowy)
- hosty 10G po drugiej stronie, zwykłe klatki SFP+
Teraz karta zawsze pokazuje tylko dwa interfejsy 40G:
cxgbe0: flags=8863<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 9000
media: Ethernet 40Gbase-CR4 <full-duplex>
cxgbe1: flags=8802<BROADCAST,SIMPLEX,MULTICAST> mtu 1500
media: Ethernet autoselect
status: no carrier
Co już zrobiłem:
- przeszedłem po podpoleceniach cxgbetool, szukając czegoś przypominającego ustawienie trybu portu, nic nie znalazłem
- szukałem tunable loadera dla cxgbe, które rozdzieliłoby port, też nic
- doczytałem się wystarczająco, żeby być raczej pewnym, że sam kabel tego nie zrobi, adapter musi najpierw być w trybie 4x10G
Więc czy podział 40G / 4x10G to coś, co sterownik FreeBSD w ogóle potrafi przełączyć, czy to żyje w konfiguracji adaptera? A jeśli to konfiguracja, jaki jest obsługiwany sposób, żeby to zmienić z maszyny opartej na FreeBSD?
Comments 5
Krótka wersja: sterownik tego nie potrafi. Układ portów pochodzi z konfiguracji wgranej do adaptera, i dokładnie dlatego ani cxgbe, ani cxgbetool nie wystawia przełącznika trybu. Zmieniasz to własnym narzędziem konfiguracyjnym Chelsio i karta wraca w nowej personie.
Ściągnij narzędzie na maszynę (wystarczy gdzieś zamontowany pendrive) i uruchom je:
Pyta, o który adapter chodzi, a potem jaki tryb chcesz. Ten breakout jest wypisany jako Spider (4x10G), to jest ta pozycja, która zamienia port QSFP+ w cztery lanki 10G.
Na czystej instalacji pierwsze uruchomienie zwykle od razu się wywraca:
Nic egzotycznego, po prostu brakująca biblioteka. Zainstaluj flashrom, a przyjdzie razem z nim jako zależność:
To przynosi ze sobą libpci 3.5.6_1, po czym skrypt startuje i zmiana trybu zgłasza sukces.
Jedno zastrzeżenie, skoro robisz to przed przyjazdem kabla: na tym etapie dostajesz tylko informację od narzędzia, że tryb został zastosowany. Czy cztery lanki faktycznie wstaną, udowodni dopiero kabel breakout w klatce, więc nie rozbieraj strony 40G konfiguracji, dopóki tego nie przetestujesz.
Zanim dalej będziesz szukać gałek w sterowniku: jaką konfigurację karta faktycznie uruchamia, i czy dasz radę ściągnąć python2.7 na tę maszynę? To, co to zmienia, to narzędzie Chelsio, nie część toolingu FreeBSD, i na standardowej instalacji potrzebuje kilku elementów, których nie ma od razu.
Jeszcze jedno, skoro cxgbe0 jest teraz połączony na 40G: czy jedzie na tym porcie coś, czego nie możesz sobie pozwolić stracić? Tryb pochodzi z konfiguracji wgranej do adaptera, więc karta wraca w innej personie i oba porty znikają na czas tej operacji. Zrób to z konsoli, a nie przez link 40G.
Potwierdzam, i dokładnie w tej kolejności. Pierwsze uruchomienie padło z
potem pkg install flashrom ściągnęło libpci 3.5.6_1 i skrypt wstał bez problemu. Wypisał adapter, wybrałem Spider (4x10G), i zgłosił zmianę trybu jako udaną.
Kabel wciąż nie dotarł, więc na razie nie mogę nic powiedzieć o samych czterech portach. Odezwę się, jak tylko OCTTAPCABLE3M faktycznie znajdzie się w klatce.
Ten sam pomysł na krzemie switcha, z dużo większą ceremonią. Na ICX 7750 port 40G nie rozdzieli się, dopóki urządzenie nie wyjdzie z trybu cut-through:
Potem zdejmujesz całą konfigurację z portu 40G i włączasz na nim breakout:
Po drugim reloadzie cztery subporty pojawiają się jako 1/2/1:1 do 1/2/1:4 i zachowują się jak zwykłe niezależne interfejsy 10G. Dwa reloady, żeby wpiąć jeden kabel, ale przynajmniej to udokumentowane zachowanie, a nie ukryta konfiguracja adaptera, o której trzeba wiedzieć, że istnieje.
Warto dodać, że tryb to tylko połowa bitwy, drugi koniec też musi zaakceptować sam kabel. Na MX204 i MX10003 zwykły DAC 40G łączył się bez problemu pod starszym Junosem; kiedy DAC-i 100G dostały oficjalne wsparcie, te 40G po cichu wypadły z listy, i dziś w ogóle nie są obsługiwane na tych urządzeniach. To, co jest obsługiwane, to optyka breakout 4x10G, QSFPP-4X10GE-LR albo SFPP-4X10GE-SR, a części firm trzecich zwykle trzeba przekodować pod pasujące SKU, zanim port w ogóle na nie spojrzy.
Twój Chelsio jest dużo mniej wybredny niż karta liniowa routera, ale jeśli cztery nogi lądują na sprzęcie vendora, sprawdź, co ten sprzęt robi z kablem breakout, zanim znowu obwinisz tryb adaptera.