SRv6
Jak działa
Węzeł brzegowy (ingress / SR source) umieszcza w pakiecie nagłówek SRH zawierający listę adresów IPv6 (SID). Pole "Segments Left" wskazuje aktualny segment do wykonania – jego adres jest aktywnym IPv6 destination. Każdy węzeł zdolny do SRv6 (SR-aware), dochodząc do SID adresowanego do siebie, dekrementuje Segments Left, podstawia kolejny SID jako nowe destination i wykonuje funkcję zakodowaną w SID (END, END.X, END.DT4/DT6 dla VPN, END.B6 dla binding itd.). Węzły niewspierające SRv6 forwardują pakiet po zwykłym IPv6 longest-prefix match, ponieważ SID jest po prostu adresem IPv6.
Rozwiązany problem
Tradycyjne MPLS-TE wymaga skomplikowanego control plane (LDP, RSVP-TE) i utrzymywania stanu per-flow w rdzeniu sieci. SRv6 eliminuje to przenosząc całą informację o ścieżce do nagłówka pakietu i wykorzystując IPv6 jako data plane.
Implementacja
Każdy SID to 128 bitów; długie listy segmentów powiększają overhead i mogą fragmentować pakiety lub przekraczać MTU.
Nie wszystkie linecards obsługują pełne SRv6 Network Programming w hardware – starsze ASICs mogą procesować SRH wyłącznie w slow path.
Source routing historycznie było wektorem ataków (RFC 5095 deprecates IPv6 RH0); SRv6 wymaga starannej polityki na brzegu sieci, by odrzucać niezaufane SRH z zewnątrz.
Ewolucja
Cisco (Clarence Filsfils i in.) publikuje początkowe drafty wprowadzające koncepcję Segment Routing w grupie roboczej SPRING.
IETF standaryzuje ogólną architekturę Segment Routing (SR-MPLS i SRv6) w RFC 8402.
Standaryzacja SRH – data plane SRv6 staje się oficjalnym standardem IETF.
Zdefiniowane funkcje SID (END, END.X, END.DT4, END.DT6 itd.) – formalna specyfikacja "Network Programming" na bazie SRv6.
Hyperscalerzy (Microsoft Azure, Alibaba HPN) raportują wdrożenia SRv6 do trasowania ruchu RoCE w klastrach treningowych AI.
Szczegóły techniczne
Wymagania sprzętowe
SRv6 to protokół warstwy 3 IPv6; działa na każdym routerze/switchu wspierającym IPv6 forwarding, choć pełne Network Programming wymaga SR-aware hardware.