ASICs x86 маршрутизації / комутації загального призначення


14

SysAdmins часто намагаються переконати мене в тому, що ОС x86 загального призначення може працювати так само добре, як і маршрутизатори з низькими МГц процесорами і виділеним кремнієм (тобто ASIC) при швидкості руху в 1 Гбіт / с. Таке мислення переходить у сферу SDN, наприклад, віртуальні комутатори в VMWare.

Я думаю, що я інтуїтивно розумію різницю між перевагами ASIC та x86 в обробці трафіку, особливо щодо мікровибухів. Чи правильно вважати, що ASIC для інтерфейсів маршрутизатора або комутатора випереджає використання процесора x86 для всієї обробки пакетів, яка сильно постраждає від перерв процесора? Я знаю, що ОС (Windows, Linux або спеціалізована) значно сприяє продуктивності обладнання для маршрутизації або переключення. І я знаю, що швидкість шини x86 нав'язує теоретичні максимуми для перемикання пропускної здатності, особливо коли швидкість перевищує 1 Гбіт / с.

  1. Як, наприклад, швидкість комутації Catalyst 6500 Sup2T ASIC порівнюється з реалістичними швидкостями комутації x86, знайденими на загальних ОС або SDN?

  2. Як, наприклад, швидкість комутації Cisco 7200VXR-NPE-G2 порівняно з такою ж ...

  3. Як типові затримки маршрутизатора чи комутатора порівнюються із загальними ОС, що виконують ту саму функцію?

ПРИМІТКА. Я не хочу чути достоїнства розміщення віртуальних комутаторів або їх ролі у віртуальній та фізичній мережі. Я також не хочу обговорювати достоїнства SDN щодо часу розгортання програми.

Відповіді:


19

Чи правильно вважати, що ASIC для інтерфейсів маршрутизатора або комутатора випереджає використання процесора x86 для всієї обробки пакетів, яка сильно постраждає від перерв процесора?

Важко конкретно сказати, чи є переривання обмеженням, оскільки ми не називаємо конкретні моделі процесора, операційної системи або маршрутизатора в цій частині вашого питання. Загалом, це безпечне узагальнення, що процесори загального призначення не можуть торкнутися продуктивності комутації пакетів добре розробленого ASIC. Коли я кажу про продуктивність, я кажу про показники RFC 2544 , такі як швидкість переадресації пакетів за секунду (NDR), пропускну здатність та затримку.

Це не означає, що маршрутизатору на базі процесора не місце; тільки те, що наш життєвий досвід говорить нам, що процесор не може перемикати пакети так швидко, як ASIC або FPGA. Мій висновок про те, що ASIC / FPGA швидше, ніж багатоядерний процесор, схоже, підкріплюється цим запитанням на Electronics.SE .

Продуктивність PCI-шини

Я знаю, що швидкість шини x86 нав'язує теоретичні максимуми для перемикання пропускної здатності, особливо коли швидкість перевищує 1 Гбіт / с.

Я не впевнений, на які обмеження на шини ви посилаєтесь тут, але інформація, яку ви мали, може бути дещо застарілою. Шина PCI Express, яка використовується в більшості систем, значно перевищує 10 Гбіт / с.

PCIe 2.0 використовує схему кодування 8b / 10b, яка штрафує її приблизно на 20% за накладні кодування смуги PCI; до цього штрафу кодування PCIe 2.0 постачає 4 Гбіт / с необмеженої пропускної здатності на смугу руху. Однак навіть при 20% 8b / 10b штрафу PCIe 2.0 x8 (8 PCIe смуг) видавлюється понад 25 Гбіт / с; Таким чином, ви можете легко запустити один адаптер 10GE з двосторонньою лінійною швидкістю на картці PCIe 2.0 x8.

PCIe 3.0 (використовується в чіпсетах Intel Ivy Bridge) використовує кодування 128b / 130b, що значно покращує ефективність шини PCI і вдвічі збільшує пропускну здатність на одну смугу. Таким чином, карта PCIe 3.0 x8 може доставити 63 Гбіт / с (8.0 * 8 * 128/132). Це ні при чому чхати; Ви можете сміливо упакувати два лінійних швидкості 10GE на одному стояку з тими показниками продуктивності.

Виступ Cisco проти В’ятти

Caveat: Я використовую маркетингові матеріали, що постачаються постачальниками, для всіх порівнянь ...

  1. Як, наприклад, швидкість комутації Catalyst 6500 Sup2T ASIC порівнюється з реалістичними швидкостями комутації x86, знайденими на загальних ОС або SDN?

Це трохи складніше, оскільки ми збираємося порівняти повністю розподілену систему комутації (Sup2T) з системою централізованого комутації (Вятта), тому будьте уважні, інтерпретуючи результати.

  • Sup2T може пересилати зі швидкістю до 60 Мбіт / с без падіння з увімкненими функціями . Довідка: Біла книга архітектури Catalyst 6500 Sup2T . Зауважте, що це просто гола система Sup2T без розподілених форвардних карт (DFC). Примітка 1
  • Я знайшов результати випробувань RFC 2544 для переадресації в'ятти 5600 зі швидкістю не падіння до 20,58 Мп / с і 70 Мп / с, якщо ви можете прийняти кілька крапель. Пропускна здатність NDR становила 72 Гбіт / с. Довідково: Тест на продуктивність в'ятти 5600 vRouter (SDN Central) . Для перегляду повного звіту необхідна центральна реєстрація SDN.
  1. Як, наприклад, швидкість комутації Cisco 7200VXR-NPE-G2 порівняно з такою ж ...

В'ята видуває NPE-G2 з води, продуктивні; NPE-G2 може робити до 2 Мпс на основі таблиці даних Cisco NPE-G2 . Це насправді не справедливе порівняння, хоча враховуючи вік NPE-G2, порівняно з новою системою Intel 10-Core, укомплектованою картами 10GE.

Як типові затримки маршрутизатора чи комутатора порівнюються із загальними ОС, що виконують ту саму функцію?

Це фантастичне питання. Цей документ вказує на те, що у В’ятти є більш високі затримки, але я хотів би бачити подібне тестування на процесорах серії Intel E5.

Підсумок

Підсумок порівняльного порівняння Sup2T і Brocade Вятта 5600:

  • Sup2T: NDR IPv4 60Mpps з функціями (такими як ACL)
  • Вятта та Intel E5: до 20Mpps IPv4 NDR без особливостей або 70Mpps, якщо ви можете прийняти невелику кількість крапель.

На мою думку, Sup2T все ще виграє, особливо, коли ви дивитесь, що ви отримуєте з Sup2T (розподілена шкала до 720Mpps, MPLS, незліченна кількість MIB, комутація Layer2 та Layer3 тощо).

Якщо все, що вам цікаво, - це продуктивність перемикання в режимі «сире», ви можете отримати чіткі номери продуктивності від процесора x86. Однак у реальних мережах не часто йдеться лише про те, хто має найкращі перетягування; більшості людей потрібно турбуватися про функції (див.: Коли я повинен зосередитись на кожному значенні для оцінки комутатора? ). Важливим фактором, який слід врахувати, є кількість доступних функцій та їх інтеграція з рештою вашої мережі.

Також варто ознайомитися з операційною доцільністю використання систем на базі x86 у вашій компанії. Сам я не використовував Brocade + В’ятту, але вони могли зробити гідну роботу, будуючи хороші команди і показуючи допоміжні гачки. Якщо вони дійсно підтримують достатню кількість функцій, і їх система добре розширюється в реальних мережах , тоді зайняйтеся цим, якщо це вам подобається.

Однак якщо хтось дешевий і просто будує linux box + bird/ quagga+ ACLs + qos, я б не хотів бути тим, хто підтримує це рішення. Я завжди стверджував, що спільнота з відкритим кодом робить велику роботу з інноваціями, але підтримка їх систем зменшується в порівнянні з постачальниками основних мереж (Arista / Cisco / Force10 / Juniper). Потрібно лише подивитися iptablesі tcзрозуміти, наскільки ви зможете скласти CLI. Я іноді на місцях питання від людей , які дивляться на виході ip link showабо ifconfigй отримати wierded, тому що лічильники пакетів не правий; Зазвичай великі постачальники мережі роблять набагато кращу роботу, протестуючи свої лічильники, порівняно з тим, що я бачу в драйверах Linux Linux NIC.


Кінцеві примітки :

Примітка 1 Ніхто, хто не піклується про продуктивність, ніколи не придбає Sup2T і не зможе заповнити корпус DFC. Sup2T може перемикатися зі швидкістю 60 Мп / с, але завантажене шасі з масштабами DFC до 720Mpps.

Примітка 2 Тест Вятта працював на двопроцесорному, 10-ядерному Intel E5-2670v2 при 2,5 ГГц на ядро; якщо ми вважаємо одне ядро ​​двома віртуальними ядрами (тобто гіпер-нитками), це загалом 40 ядер для комутації пакетів. В'ятта була налаштована на Intel x520-DA2 NIC, і використовувала Brocade Vyatta версії 3.2.


1
Чи знаєте ви, які розміри рам були на цих малюнках? У підсумковому резюме для В’ятти сказано, що вони досягли 70 Мбіт / с із 64B кадрами; чи той самий розмір кадру, який використовується в тестах Sup2T?
Райан Фолі

0

Серія 7200 застаріла на користь серії ASR, оскільки вони не можуть обробляти лінійну багатогігабітну комутацію. Каталізатори та комутатори Nexus мають перевагу пересилання перед процесором загального призначення, якщо комутація пакетів залишається в кремнію. Якщо трафік повинен бути переключений на процес (тобто його слід оцінювати на процесорі замість ASIC / FPGA), ваша пропускна здатність збільшується і затримка збільшується. З цієї причини, якщо вам потрібно комутація високої пропускної здатності, ви відокремлюєте площину пересилання від площини маршрутизації та оптимізуєте, щоб зберегти якнайбільше вашої комутації в кремнію.

У деяких випадках ви побачите перемикання кремнію спеціального призначення, одруженого на процесорі загального призначення (наприклад, комутатори білого поля, призначені для використання Big Switch або іншого SDN для верхніх стійок, розподілу або накладення), і в цих випадках, Ви можете побачити найкращі з усіх світів (висока пропускна здатність, низька затримка комутації; обробка високої потужності для визначення маршруту та політики; інтеграція з рамками управління, такими як Лялька чи Шеф-кухар).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.