5. Виртуализация: изменение парадигмы -
микросервисная архитектура
5
Unikernels, also know as “virtual library operating system”
OS
Bin
Bin
App App
Multi-Application Bare
Metal
Рост числа конечных потребителей трафика
Сервера как конечные
потребители
Микро-сервисы
(процессы) как конечные
потребители
25. 25
Что такое “Merchant” и “Custom” NPU?
Определение:
Термин “Merchant” означает, что чип разработанный сторонней
компанией (свободная продажа на рынке).
Термин “Custom” означает собственную разработку чипа
вендором
Популярное мнение:
“Merchant” чипы быстрее, дешевле, проще
Реальность:
Применение «Merchant vs. Custom» сильно зависит от сегмента
рынка
Успех зависит исключительно от используемого программного
обеспечения, а не производителя силикона
В настоящий момент, более 80% рынка «merchant silicon»
контролируется одной компанией
Дьявол, как обычно, кроется в деталях (реализация внутренней
ахритектуры)
36. Cisco Connect 2017 36
Что же выбрать: ASR9K vs NCS5500?(в 2017 году)
Архитектуры Custom vs Merchant
NCS-5500
ASR9K
0
1
2
3
4
5
6
7
8
9
10
FIB Size
Power
Cost
PPS
Buffering
QoS
Flexiblity
Statistics
Upgrade Packet Loss
Convergence
ASR9K NCS-5500
*
* Планы по реализации ISSU для NCS-5500 отсутствуют
38. Ethernet Roadmap
38
Появление новых стандартов и
скоростей:
25Gb/s, 50Gb/s, 200Gb/s, 400Gb/s
2.5Gb/s и 5Gb/s для wireless
6 новых Ethernet стандртов за 5 лет,
столько же, сколько за 40
предыдущих лет!!
49. • Использовать более быстрые процессоры и увеличить GHz?
• Узкие места архитектуры Von Neumann → Ограниченный
интерфейс взаимодействия между CPU и памятью RAM по
сравнению со скоростями CPU и количеством оперативной
памяти
• Делегировать часть функционала по обработке пакетов
(Offloading) выделенным аппаратным ресурсам (например
сетевые NIC адаптеры)
• Оптимальное использование кэша ЦП для устранения узких
мест доступа к памяти, необходимых для перемещения
пакетных битов между сетевыми рабочими нагрузками. Не
ждите основной памяти.
• Оптимизированное программное обеспечение для
обработки пакетов, чтобы использовать преимущества
нескольких ядер (многопоточность)
• Параллельная обработка, которая распределяет обработку
пакетов по нескольким процессорным ядрам
Варианты решений
http://blogs.cisco.com/sp/a-bigger-helping-of-internet-please
50. Виртуальный маршрутизатор Cisco CSR 1000V
50
Програмный аналог ASR1K
• Хорошо известная IOS XE система
• Независимое от состава серверного оборудования и
виртуального vSwitch коммутатора
Эластичная производительность
• Лицензируемо от 10 Mbps до 10 Gbps
• Поддержка от 1 до 8 виртуальных CPU
• Все типы сервисов (vBNG, FW, NAT, IPSEC, и т.п.)
Несколько лицензионных моделей
• Подписка (1 и 3 года), постоянная, по использованию (AWS
облако)
Программируемость
• NetConf/Yang, RESTConf и SSH/Telnet для автоматизированного
управления и развертывания
Control PlaneForwarding Plane
vNICvCPU vMemory vDisk
Сервер
CPU Memory Disk NIC
Hypervisor (VMware / Citrix / KVM / Microsoft)
Chassis Mgr.
Forwarding Mgr.
IOS
Chassis Mgr.
Forwarding Mgr.
FFP Client /
Driver
FFP code
Linux Container
vMSvPE vBNG / vLNS SP WiFi viWAG vRR
51. • Отдельный LXC контейнер,
содержащий средства администрирования
IOS XRv
• Управление инфраструктурой VM
• Установка SMU
• Управление жизненным циклом CP и
DP LXC
o Install
o Start/Stop/Restart
o Upgrade/Downgrade
o Проверка доступности (Heartbeat)
Hypervisor
LXC
VF DP
LXC
XR
CP
Data Plane
Controller
LINUX
VM
TenGigE0/0/0
GigE0/0/1
GigE0/0/2
MgmtEth0/0/1
vswitch
Плоскость коммутации данных
Virtual Forwarder (VF)
XR комбинированная RP +
LC функциональность
DPA
Номенклатура
• Data Plane Controller – DPC
• Data Plane Agent – DPA
• Virtual Forwarder - UVF
Cisco XRv 9000 – виртуальный маршрутизатор
Сервер
LXC
Admin
52. 52
Network IO
Packet Processing: VPP
Management Agent
NC/Y REST ...• Сердцем FD.io проекта является Cisco Virtual Packet
Processing технология, с 2002 года применяемая в
коммерческих продуктах
• Fd.io код выполняются в Linux user-space и использует
DPDK библиотеку
• Независим от аппаратной архитектуры сервера, будь то
x86, ARM или Power, а также от версии Linux ядра и где
выполняется – в контейнере или отдельной виртуальной
машине.
Open Source реализация коммутации
данных и базовых сервисов