2. 2
ФАКТЫ
• Основана в 2004
• Первый продукт в 2008
• IPO в июне 2014
• Капитализация > 5 Млрд $
• Поставщик 5 из 6 глобальных «облачных»
операторов
• В России и СНГ с конца 2011 (несколько ЦОД
полностью построены на Arista)
5. ARISTA EXTENSIBLE OPERATING SYSTEM (EOS)
Используются стандартные
чипы
ОС использует стандартное
ядро Linux (Fedora)
Простая архитектура сети
Все процессы общаются через
центральную БД (SysDB)
Важно:
• API для доступа к SysDB
• Система самовосстановления
следит за выживаемостью ОС
Система
самовосстановления
6. LINUX, КАК ОН ЕСТЬ
6
s7281#
s7281#sh ver
Arista DCS-7280SE-64-F
Hardware version: 00.02
Serial number: JAS14140003
System MAC address: 001c.7374.327f
Software image version: 4.17.0F
Architecture: i386
Internal build version: 4.17.0F
Internal build ID: 4bb383cc-58fe-4d6e-a790-39eeeecc720f
Uptime: 2 weeks, 1 day, 21 hours and 55 minutes
Total memory: 3538144 kB
Free memory: 1555664 kB
s7281#
s7281#bash
Arista Networks EOS shell
[admin@s7281 ~]$ uname -a
Linux s7281 3.4.43.Ar-3214573.ijdmzmplsGre #1 SMP PREEMPT Tue May 24 19:09:53 PDT 2016 x86_64
x86_64 x86_64 GNU/Linux
[admin@s7281 ~]$
[admin@s7281 ~]$ ps -e
PID TTY TIME CMD
1 ? 00:01:29 systemd
2 ? 00:00:00 kthreadd
3 ? 00:00:00 ksoftirqd/0
6 ? 00:00:03 migration/0
8 ? 00:00:03 migration/1
10 ? 00:00:00 ksoftirqd/1
13 ? 00:00:03 migration/2
Привычный CLI
Выход в bash
Чистый Linux
7. ЧТО ЭТО ДАЕТ?
7
Использование tcpdump на коммутаторе
Можно создавать свои собственные команды:
switch#bash sudo tcpdump –I e1
tcpdump: WARNING: fabric: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on fabric, link-type EN10MB (Ethernet), capture size 65535 bytes
12:57:30.222171 00:1c:73:0f:80:a6 (oui Unknown) > 01:00:5e:00:00:05 (oui Unknown
), ethertype 802.1Q (0x8100), length 82: vlan 1, p 0, ethertype IPv4, 10.10.50.1
> OSPF-ALL.MCAST.NET: OSPFv2, Hello, length 44
12:57:40.222687 00:1c:73:0f:80:a6 (oui Unknown) > 01:00:5e:00:00:05 (oui Unknown
), ethertype 802.1Q (0x8100), length 82: vlan 1, p 0, ethertype IPv4, 10.10.50.1
> OSPF-ALL.MCAST.NET: OSPFv2, Hello, length 44
localhost# cat -n HelloCli.py
1 import BasicCli, CliParser
2 tokenHello = CliParser.KeywordRule( 'hello', helpdesc='Says hello' )
3 def doHello( mode ):
4 print "World.n"
5 BasicCli.UnprivMode.addCommand( ( tokenHello, doHello ) )
localhost>show ?
...
hello Show your hello
....
localhost>show hello ?
| Output modifiers
<cr>
localhost>show hello
Hello World.
Localhost>
Выход в среду Linux по команде ‘bash’:
Arista7124SX#bash
Arista Networks EOS shell
[admin@switch ~]$
Команды EOS написаны на Python.
Скрипт ‘Cli.py’:
[admin@switch site-packages]$ pwd
/usr/lib/python2.7/site-packages
[admin@switch site-packages]$ ls Cli*.py
Cli.py CliExtensions.py CliParser.py
CliAuth.py CliInputWrapper.py CliSave.py
The request:
{
"jsonrpc": "2.0”,
"method": "runCli”,
"params": {
"cmds": [
"configure",
"vlan Ethernet1,Ethernet4",
"switchport access vlan 3",
"show vlan 3”,
],
"format": "json”
},
"id": 1
}
Удаленный JSON call на коммутатор
9. ПРИНЦИПЫ EOS В МАСШТАБАХ СЕТИ
Open &
Programmable
Merchant Silicon
SysDB
CLI
SNMP
VXLAN
VM
Tracer
OSPFSTP
ASIC
Driver
SDN
APIs
LAG
BGP
Modular &
Resilient
Universal Cloud
Network
Customer Driven
Flexibility
Cloud Scale
Economics
EOS
vEOS
ПринципыEOS
Эволюция к NetDB
10. Платформа автоматизации всей сети
ARISTA CLOUD VISION
Агрегированная сетевая
‘Sysdb’
Абстракция физической
сети
Единая точка
интеграции
Масштабируемая
интеграция с
контроллерами
Система управления и
мониторинга
State-sync
12. ИНТЕГРАЦИЯ С OPENSTACK = ML2
12
Controller agnostic
Интеграция с Neutron
Интеграция через CloudVision
Neutron позволяет иметь только
один ML2 плагин
ML2 Plugin
• Позволяет иметь несколько L2
• Type Driver (vlan, vxlan, etc..)
• Mechanism Driver (ovs, arista, etc..)
Принимает вызовы от других
сервисов (Horizon, Nova)
17. НОВОСТЬ 1: 25G, 50G, 100G
17
• Flexible Port Configurations
• Scalable Throughput
• Scalable Packet Processing
• Low Latency
• Rich EOS Automation
7260QX-64
64 QSFP+ 40GbE ports *
7060CX-32
32 QSFP100 ports
450ns Latency
VXLAN Routing and Bridging
136K MAC Addresses
128K IPv4 and 84K IPv6 Routes
104K Host Routes
7260CX-64
64 QSFP100 ports
* 40GbE Only
1RU and 2RU systems for 40G and 100G scale-out Applications
18. НОВОСТЬ 2: МЫ ДЕЛАЕМ МАРШРУТИЗАТОРЫ!
18
Full internet table
MPLS
BGP, IS-IS, OSPF
Все хранится в железе! (технология FlexRoute)
Сходимость в 4,5 быстрее, чем у ближайшего
конкурента
20. ОСОЗНАНИЕ БОЛЬШИХ ВЕЛИЧИН
Средний размер твита 200B
Source –
Twitter.com
Джастин Бибер имеет 78 миллионов фолловеров
Source –
Twitter.com
www.flickr.com - user
iloveJB123
Это124,800,000,000 бит на каждый твит Бибера
Один 7500R может обработать 460 BTPS для всех
78M фолловеров
21. 7280R – КОММУТАТОРЫ 10/40/100G С ГЛУБОКИМИ
БУФЕРАМИ
• До 48 портов 100GbE (wire speed)
• До 10.24 Tbps и 5.76 Bpps
• FlexRoute™ - 1M маршрутов IPv4 и IPv6
• Глубокие динамические буферы
• Архитектура VOQ (без потерь)
• EOS NetDB
• Маршрутизация VXLAN
• EVPN, MPLS, Segment Routing
• Задержка менее 4 мкс
• Wire speed L2 и L3
• Аплинки 10/40G и 25/100G (HPC & CDN)
22. • Базируется на открытых стандартах
• Использует только открытые протоколы
• Никаких фабрик!
• Отсутствия vendor lock-in
• Облачая система управления CloudVision
• Коммутаторы работают по традиционным протоколам
(LACP, BGP, IS-IS, OSPF…)
• Централизованное управление состояниями там, где это нужно
(например, VXLAN)
• Интеграция с OpenStack через CloudVision
• Обработка трафика в железе (производительность!)
• Поддержка ML2
• Возможность маршрутизации трафика OpenStack в железе