32
Виртуализированны й highload (NFV) Александр Шалимов

Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

  • Upload
    ontico

  • View
    462

  • Download
    9

Embed Size (px)

DESCRIPTION

Доклад Александра Шалимова на HighLoad++ 2014.

Citation preview

Page 1: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Виртуализированный highload (NFV)

Александр Шалимов

Page 2: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Проблемы телеком операторов

• Количества трафика растет, требуется больше сетевого оборудования, НО доход не растет.– Инфраструктура состоит из проприетарного

дорого оборудования.– Статическое распределение ресурсов.– Вывод новых сервисов занимается до 18

месяцев.

Page 3: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Виртуальные сетевые сервисы

ETSI WhitePaper v.1.0

October 2012

Page 4: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

ПреимуществаПеренос сетевых функций на виртуальные машины:• Упрощение развертывания и обновления

как софта, так и железа• Уменьшение стоимости за счет

использования стандартных серверов• Объединение сервисов в группы

Page 5: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

ПримерыBRAS• Терминация пользовательских сессий• Интересует выгода на одного пользователя ~ 1Mbps• Стоимость существующего решений примерно 10к за

10Gbps => Одно подключение = $1• С NFV: один сервер может обрабатывать 50Gbps.

Стоимость $5k => Одно подключение = $0.1.

• CG-NAT– Трансляция адресов– Высокая стоимость существующих решений.– Экономия: $16 -> $4 -> $2 на подключение

Page 6: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Edge

Core

DSLAM

OLT

DSLAM

AccessBRAS Firewall

Carrier Grade NAT

DPI

CDNMonitor

WAN Accelerator

CPE Standard High VolumeServers/Storage/SwitchesBRAS

DPIDPI

CG-NAT

CG-NATBRAS

CPE-FuncCPE-FuncCPE-FuncCPE-Func BRAS

BRAS

DPI

CG-NAT

BRAS

CPE-FuncCPE-FuncCPE-FuncCPE-Func

BRAS

DPI

CG-NAT

BRAS

CPE-FuncCPE-FuncCPE-FuncCPE-Func

CDN

CDN

CDN

CDN

MonitorMonitor

WAN-AcclWAN-Accl

CDN

CDN

CDN

CDN

MonitorMonitor

WAN-AcclWAN-Accl

Network Function-VMs

Пример размещения в сети телком оператора

Page 7: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Edge

Core

Access

NF-VM NF-VM

NF-VM NF-VM

NF-VM NF-VM

NF-VM NF-VM

NF-VM NF-VM

NF-VM NF-VM

NF-VM NF-VM

NF-VM NF-VM

NF-VM NF-VM

VM MgmtSDN Controller

Load Balancer

Firewall CG-NAT

VM + Network OrchestrationBRAS BRAS WAN-Accel DPI

7

Пример размещения в сети телком оператора

Page 8: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Пример

Page 9: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

vCPE – Virtual Customer Premise Equipment• У клиента – маленькая коробочка• Часть сервисов у клиента, часть в облаке

© RAD

Page 10: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Организация платформы для виртуализации

VM:Firewall

VM:VPN

VM:IntrusionDetectionSystemSDN

Стандартныйпроцессор

Ускорительобработки

Сетеваякарта

ЯдроКоммутатора

Linux

VM VM VM VM

Firewall, VPN, IDS, …

Hardware

Software Switch

OS/Linux

Page 11: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Узкие места• Linux Networking Stack

– 300Kpps

• Open vSwitch

• VM

Page 12: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Узкие места (OVS)

• Задержка

– 11us

• Пропускная способность

– 1Mpps

Page 13: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Узкие места (KVM)

• Задержка

– 300us

• Пропускная способность

– 20Kpps (kernel OVS)

– 200Kpps (userspace OVS)

Page 14: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Требования к сервису

• Возможность привязки VM к ядрам процессора

• Масштабирования сервиса на VM по имеющимся ядрам процессора

• Возможность запуска сервиса без VM

Page 15: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Intel DPDK

• Intel DPDK – это набор библиотек и драйверов для быстрой обработки пакетов на платформах Intel.

• Использование больших виртуальных страниц (huge pages 2mb/1gb).

• Размещение объектов равномерно по всем каналам оперативной памяти.

• Адресное пространство карточки доступно из userspace.

• Неблокирующие очереди для передачи пакетов.

• Нет прерываний в драйверах DPDK – активный цикл.

• Активное использование SSE инструкций для обработки пакетов.

• Выделение целых ядер процессоров под задачи.

DPDK = Data Plane Development Kithttp://intel.com/go/dpdk/

Page 16: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

• Open vSwitch - это виртуальный программный коммутатор, который обеспечивает соединение между виртуальными машинами и физическими интерфейсами.

• Поддерживает обычную Ethernet коммутацию с VLAN, SPAN, RSPAN, GRE, sFlow, Netflow.

• Частичная поддержка OpenFlow 1.2.

Page 17: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Архитектура Open vSwitch

Intel© DPDK

Page 18: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Intel DPDK vSwitch

• https://github.com/01org/dpdk-ovs

Page 19: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Работа с виртуальными машинами

Способы работы:• VIRTIO

– Прозрачно для приложений на виртуальных машинах

– Медленно

• IVSHMEM– Самая высокая скорость– Требует “затачивания” сервиса под

Intel vSwitch

• VHOST– Средняя скорость– Прозрачно для приложений,

написанных на DPDK

KVM

VirtIO DPDK

VirtIO Eth

App

DPDK

Page 20: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Основные компоненты

Page 21: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Результаты: Phy-to-Phy (Kpps)

Page 22: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Результаты: Phy-to-Phy (Mbps)

22

Page 23: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Результаты: Phy-to-VM (Kpps)

23

Page 24: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Результаты: Phy-to-VM (Mbps)

24

Page 25: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Sandstorm: высокоскоростной вебсервер

Page 26: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Пропускная способность

Page 27: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Задержка

Page 28: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)
Page 29: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Примеры для highload• Везде, где требуется низкая

задержка– RTB биржа– inmemory базы данных

(e.g.,gridgain)

• Другие “пакетный сервисы”– Балансировка HTTP (1M cps)– …

Page 30: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Тестирование у ОператораОжидания: “ничего не выйдет!”• Есть известные вендоры: Cisco, Juniper, Huawei, Alcatel, F5,

…• С ними невозможно бороться

Результат: “а еще и так вы можете?”• Производительность сопоставимая• Цена меньше• Возможность быстрого внесения изменений• Гибкость в соотношении ресурсы / требуемая

производительность

Page 31: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Заключение• Эволюция сетевых сервисов

– Проприетарное железо– Программные решения на обычных серверах– Виртуальные решения на обычных серверах

• Единица управления – виртуальная машина

• Гибкость, масшабируемость, производительность

• Ускорим highload!

Page 32: Виртуализированный highload (NFV), Александр Шалимов (ЦПИКС)

Вопросы?

http://arccn.ru/ [email protected]@alex_shali

@arccnnews