Мутант-переросток, часть II

| Comments () | No TrackBacks
Я, конечно, маханул вчера, когда сказал, что ASIC, делающий MPLS forwarding, так же прост, как ASIC, делающий ethernet forwarding.

MPLS'ный LSR (label switching router) умеет делать три операции:
* label push - добавить одну или несколько меток к пакету, который уже имеет какие-то метки или нет;
* label swap - заменить верхнюю метку стека на другую
* label pop - убрать метку или несколько сверху стека.
Ну и после этого уменьшить TTL и перекинуть пакет в нужный интерфейс.

Ethernet'ный switch, особенно в рамках архитектуры PBT, туп необычайно. Он умеет только сделать lookup в своих таблицах и выплюнуть фрейм в нужный провод, ничего во фрейме не меняя. Lookup там 60-битный: VID (Vlan Id) - 12 бит, DA (Destination Address) - 48 бит.

На границах PBT домена должна происходить инкапсуляция и декапсуляция клиентского фрейма (или Q-in-Q фрейма - без разницы) в MAC-in-MAC фрейм, что добавляет требований к интеллекту граничных свитчей.

К слову, поскольку промежуточные свитчи в PBT-домене не добавляют и не убавляют заголовков, и декапсуляцию MAC-in-MAC выполняет именно конечный свитч, то этот свитч обязан посмотреть на фрейм дважды: когда он пришел в виде MAC-in-MAC виде, а потом еще раз на декапсулированный клиентский фрейм, чтобы понять в какой из клиентских портов его передавать. Это означает, что там должен быть реализован либо честный двойной lookup, либо двойной lookup через рециркуляцию. Что либо усложняет логику, либо бьет по производительности.

Но сказанное не меняет моего тезиса. MPLS форвардинг несколько сложнее, но основная сложность не в нем, а в control/maganement plane. И даже на forwarding plane принятие решения о выходящем интерфейсе - не самое трудное, тот же queueing, например, - штука тонкая и сложная, а реализовывать его придется все равно.

Часть III будет после обеда.

This entry was originally posted in my livejournal

No TrackBacks

TrackBack URL: http://net-geek.org/cgi-bin/mt/mt-tb.cgi/20

About this Entry

This page contains a single entry by Daniel Ginsburg published on January 8, 2007 1:43 PM.

Мутант-переросток атакует или ethernet on steroids was the previous entry in this blog.

Мутант-переросток, часть III is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Archives