Realizacja usług dla MdO na Huawei MA5600T

O MdO sporo rozmawialiśmy na konferencji MiŚOT Meeting w Jachrance. Wielu ISP ma obawy związane z realizacją techniczną tego projektu. Postaram się opisać w prosty sposób o co w tym chodzi i jak to zrealizować na urządzeniach GPON Huawei.

Chyba każdy ISP słyszał już o projekcie MdO (MiŚOT dla OSE). Jeżeli nie, to szczegóły dostępne są tutaj. Pominę więc wyjaśnianie po co i dlaczego mamy to robić i skupię się na technice, która może niektórym z Was przysporzyć nieco problemów. Aby zrozumieć dlaczego, wyjaśnię Wam jak technicznie ma zostać zrealizowana usługa MdO.

Sytuacja wydaje się być prosta. Za projekt OSE odpowiada NASK, który ma na celu połączenie wszystkich placówek oświatowych w jedną sieć. NASK podobnie jak większość z Was, jest podłączony do punktu wymiany ruchu EPIX. W teorii więc wystarczyłoby zestawić VLAN, po którym będziecie świadczyć dla NASK transmisję do szkół na Waszych terenach. Niestety w praktyce wygląda to nieco inaczej. Obrazuje to poniższy schemat.

Bardziej szczegółowy opis dostępny jest tutaj.

Jak widać każda placówka oświatowa ma być w osobnym VLAN’ie, na dodatek nie w jednym, a na chwilę obecną w dwóch, a może nawet i w trzech. Liczba VLAN’ów jak wiadomo jest ograniczona, więc konieczne jest wykorzystanie QinQ. To jednak nie wszystko. Waszym (ISP) zadaniem jest jeszcze wykonanie translacji tych VLAN’ów ponieważ do CPE w placówkach oświatowych muszą trafić VLAN’y 10 oraz 11 (przy założeniu, że będą to dwa VLAN’y). I tutaj pojawia się problem, bo część ISP nie posiada sprzętu na którym może to zrealizować.

Niestety rzeczywistość jest brutalna i przy takich projektach jak MdO nie opędzimy już na sieciowych „zabawkach”. O ile z przeniesieniem QinQ powinno sobie poradzić większość przełączników, tak już rozpakowanie CVID’ów i operacje na tagach zapewnią tylko urządzenia klasy carrier grade – czyli urządzenia klasy operatorskiej.  Może nie każdy o tym wie, ale właśnie takimi urządzeniami jest seria Huawei MA5600T. Na dodatek świetnie wpisuje się w projekt MdO, ponieważ umożliwi nam wykonanie translacji najbliżej jak się da, czyli na ONT w placówce oświatowej. Konfiguracja jest zbliżona do tej którą opisywałem w poprzednim wpisie dotyczącym QinQ. Różni się jednak kilkoma detalami na które musicie zwrócić uwagę.

Zakładam, że z odebraniem SVLAN’a (QinQ) na porcie z EPIX nie będziecie mieli problemów. Pamiętajcie tylko o jumbo frame.

Konfigurację Huawei zaczynamy od utworzenia tego SVLAN’a i dodania go do naszego portu uplinkowego:

vlan 2 smart
vlan attrib 2 q-in-q
port vlan 2 0/17 0

Włączamy od razu jumbo frame na porcie uplinkowym:

interface giu 0/17
jumbo-frame 0 enable

Tworzymy vlan service-profile. Ważny jest parametr forwarding vlan-connect:

vlan service-profile profile-id 1 profile-name „MdO”
forwarding vlan-connect
bpdu tunnel enable
commit

I mapujemy go z SVLAN 2:

vlan bind service-profile 2 profile-id 1

Tworzymy ont-srvprofile w którym dokonamy translacji CVLAN’ów 100 i 200 odpowiednio na 10 i 11:

ont-srvprofile gpon profile-id 10 profile-name „MdO”
ont-port pots adaptive 32 eth adaptive 8
port vlan eth 1 translation 100 user-vlan 10
port vlan eth 1 translation 200 user-vlan 11
commit

W ont-lineprofile mapujemy CVLAN’y 100 i 200 do GEMa:

ont-lineprofile gpon profile-id 10 profile-name „MdO”
tcont 1 dba-profile-id 10
gem add 1 eth tcont 1
gem mapping 1 0 vlan 100
gem mapping 1 1 vlan 200
commit

Pozostało nam dodać ONT:

ont add 15 14 sn-auth „48575443A9EEBB34” omci ont-lineprofile-id 10 ont-srvprofile-id 10 desc „test-MdO”

Ustawić SVLAN 2 jako nietagowany na porcie w naszym ONT:

ont port native-vlan 15 14 eth 1 vlan 2 priority 0

I utworzyć odpowiednie service-porty:

service-port vlan 2 gpon 0/1/15 ont 14 gemport 1 multi-service user-vlan 100 tag-transform default
service-port vlan 2 gpon 0/1/15 ont 14 gemport 1 multi-service user-vlan 200 tag-transform default

I to wszystko 🙂 Mamy uruchomioną pierwszą placówkę zgodną z założeniem MdO. Kolejne robimy w analogiczny sposób, do SVLAN’a 2 zostaną nam dorzucone kolejne CVLAN’y, które będziemy za pomocą translacji zmieniać na CVLAN’y 10 i 11.

AKTUALIZACJA (2020-02-19)

Konfiguracja Piotra Piróga, która rozwiązuje problem limitu 8 vlanów w profilu. Translację przenosimy do service-portów:

ont-srvprofile gpon profile-id 11 profile-name MdO-Szkola
ont-port pots adaptive eth adaptive
port vlan eth 1 transparent
commit

ont-lineprofile gpon profile-id 11 profile-name MdO-Szkola
tcont 1 dba-profile-id 10
mapping-mode port
gem add 1 eth tcont 1
gem mapping 1 0 eth 1
commit

service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 10 tag-transform translate-and-add inner-vlan 804
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 11 tag-transform translate-and-add inner-vlan 805
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 12 tag-transform translate-and-add inner-vlan 806
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 13 tag-transform translate-and-add inner-vlan 807
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 14 tag-transform translate-and-add inner-vlan 808
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 51 tag-transform translate-and-add inner-vlan 809
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 52 tag-transform translate-and-add inner-vlan 810
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 53 tag-transform translate-and-add inner-vlan 811
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 54 tag-transform translate-and-add inner-vlan 812
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 101 tag-transform translate-and-add inner-vlan 813
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 102 tag-transform translate-and-add inner-vlan 814
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 103 tag-transform translate-and-add inner-vlan 815
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 104 tag-transform translate-and-add inner-vlan 816
service-port vlan 116 gpon 0/1/5 ont 13 gemport 1 multi-service user-vlan 77 tag-transform translate-and-add inner-vlan 4014