SlideShare uma empresa Scribd logo
1 de 35
Baixar para ler offline
OpenNSL으로 브로드콤 기반 네트워크 스위치 제어하기
OpenStack Day Korea 2016
NIC 기술원
SDI Tech. Lab
Manager 서준호
2016. 2. 18
1
Contents
본 발표는 지난 한달 간 Facebook이 제공한 Wedge를 가지고 이리 저리
가지고 논 경험을 담고 있음
1. OCP 소개
2. Facebook Wedge H/W 소개
3. Networking Operating System – Open Network Linux (ONL)
4. Broadcom Trident2 & OpenNSL 소개
5. OpenNSL 튜토리얼 (L2 스위칭, L3 라우팅)
2
OCP 소개
OCP (Open Compute Project)
§ Facebook 주도의 데이터센터 인프라 설계 기술 공유를 위한 오픈
하드웨어 프로젝트
§Facebook 은 Oregon 주 Prineville 데이터센터 인프라 스펙을 공개
§IT 기술을 접목시켜 경제적이고 효율적 관리를 통해 $20억 절감
§ 프로젝트
§Server/Storage/Networking/Open Rack/Data Center/Management
§ SKT 는 올해 2월 가입
§OCP Summit 2016 (3월) 에서 발표 예정
3
OCP Networking 소개
Project Chairs: Omar Baldonado | Carlos Cardenas
네트워크 하드웨어 + 네트워킹 소프트웨어
§ Disaggregation + Open
§ 현재는 ToR 스위치와 Spine 스위치 스펙 정의에 집중하고 있음
§ 또한 각 칩 벤더간의 서로 다른 Hardware Abstract Layer (HAL)
영역을 하나의 공통된 인터페이스 Service Abstract Interface (SAI)
로 스펙화 진행 중
4
Facebook이 개발한 1RU(Rack Unit) 크기의 ToR Switch
Facebook Wedge 소개 (1/3)
Modular Design
§ Micro-server module
§Intel Avoton C2550 (Atom)
§ Main switch module
§16 QSFP
§4x Fan module
§ BCM56850 (Trident2)
§ Open BMC module
Spine Switch
5
Facebook Wedge 소개 (2/3)
High Level Block Diagram
기존 서버 아키텍처와 다를게 없음!
6
High Speed Interface Connectivity
§ 16x QSFP (each x4 SerDes 10GbE)
§ 16x (not used), but for 6-Pack
Facebook Wedge 소개 (3/3)
Main Switching ASIC - BCM56850 (Trident2)
2U
Yosemite
Wedge
16 x
Yosemite
7
Power on & Boot up Wedge
ONIE: Boot Loader contributed by Cumulus
Networks
§ GRUB2 (x86) or U-Boot (powerpc or other
architectures)
§ Reinstall/Uninstall/Rescue/Boot NOSes on
OCP bare metal switches over IPv6 and HTTP
8
Installing Networking Operating System
Switch Light
Current ONIE compatible NOS List
We choose Open Network Linux (ONL)
§ OCP 커뮤니티에서 베어 메탈 스위치를 위한 레퍼런스 네트워크 운영체제
§ Big Switch가 OCP 커뮤니티 네트워킹 그룹에 오픈소스 기여
§ 데비안 리눅스 기반 + 네트워크 ASIC 칩 드라이버 + ɑ (vendor specific)
§ 현재 Big Switch Networks, 페이스북, NTT 사용 중
§ 현재 베어 메탈 스위치 제조 벤더들이 지원 à 앞으로도 계속 ONL이
지원되는 OCP 표준 스위치 증가할 예정 (OCP summit `15)
9
Installing Networking Operating System
10
네트워크 스위치가 되기 위해서는…
지금까지 한 일
네트워크 스위치가 되기
위해서 할 일
Wedge
11
Facebook - the next-generation Facebook data center network
Wedge (ToR 스위치) 6-pack (Spine스위치)
Clos networks
FBOSS
Facebook ONL Use Case
12
Use Cases: NTT
NTT’s EVPN
NTT ONL Use Case
13
OpenNSL 소개
Broadcom Switching ASIC (i.e., Trident+, Trident2) Chip 제어를 위한
오픈소스 기반 Hardware Abstraction Layer (HAL)
Licence Policy
§ OEM/ODM Development Package
§ Community Development Package
Features
§ L2/L3/VLAN management
§ Port and switch management
§ Link monitoring
§ Packet transmit and receive
§ Trunking
§ …
Supported Platforms
§ Acction Wedge, AS5712
§ Broadcom reference platform (SVK)
14
OpenNSL 소개
Broadcom Switching ASIC (i.e., Trident+, Trident2) Chip 제어를 위한
오픈소스 기반 Hardware Abstraction Layer (HAL)
OpenNSL Use Cases
§ FBOSS (Facebook 주도)
§ Open Network Linux (Big Switch 주도)
§ BroadView
§ Open L3 Routing (NTT 주도)
§ OpenSwitch (HP주도)
15
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
Input Arbiter
(PacketHeader Parser)
PacketProcessing
Pipeline
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
Output Queues
High Level Block Diagramof BroadcomASIC
OpenNSL 소개
PCI-E
Kernel SpaceUser Space
OpenNSL
Broadcom SDK
Kernel BDE
Kernel KNET
DMA
eth0
eth1
eth2 SRAM
TCAM
DRAM
16
Example – L2 Switching
Basic Three Operations of L2 Switch
§ Address learning
§Src MAC matching
§Automatically learning
§ L2 Forwarding
§ Address ageing
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
Input Arbiter
(PacketHeader Parser)
Address Resolution Logic
(ARL)
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
Output Queues
ARL Table
Memory
MAC | VLAN | PORT | TIME
opennsl_l2_addr_add(mac, vlan, port, flags);
flags: OPENNSL_L2_DISCARD_SRC
OPENNSL_L2_DISCARD_DST
OPENNSL_L2_L3LOOKUP
OPENNSL_L2_MOVE_PORT
OPENNSL_L2_COPY_TO_CPU
CALLBACK
…
opennsl_l2_addr_add()
opennsl_l2_addr_delete()
opennsl_l2_addr_get()
opennsl_l2_addr_register()
opennsl_l2_addr_t_init()
17
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
Input Arbiter
(PacketHeader Parser)
ARL
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
Output Queues
Basic Three Operations of L2 Switch
§ Address learning
§ L2 Forwarding
§Dst MAC matching
§Default - Flooding
§ Address ageing
Example – L2 Switching
Forwarding Logic
Forwarding Table
Memory
MAC | MAC_MASK
opennsl_l2_station_add(mac, mask, flags);
flags: OPENNSL_L2_STATION_ARP_RARP
OPENNSL_L2_STATION_IPV4
opennsl_l2_station_add()
opennsl_l2_station_delete()
opennsl_l2_station_get()
opennsl_l2_station_t_init()
18
Example – L3 Routing
L3 Routing
§ Routing between different sub-networks
§ Longest Prefix Matching (LPM)
192.168.1.0/24
192.168.2.0/24
192.168.3.0/24
Subnet 1 Subnet 2 Subnet 3
192.168.1.1
192.168.2.1
192.168.3.1
19
Example – L3 Routing
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
Input Arbiter
(PacketHeader Parser)
L2 Logic
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
Output Queues
L3 Logic
L3 Routing
1. Set L3 egress mode
2. Create IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_switch_control_set(opennslSwitchL3EgressMode);
20
Example – L3 Routing
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
Input Arbiter
(PacketHeader Parser)
L2 Logic
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
Output Queues
L3 Logic
L3 Routing
1. Set L3 egress mode
2. Create Ingress/Egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l3_intf_create(vlan, mac, in_port);
opennsl_l3_intf_create(vlan, mac, out_port);
21
Example – L3 Routing
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
Input Arbiter
(PacketHeader Parser)
L2 Logic
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
Output Queues
L3 Logic
L3 Routing
1. Set L3 egress mode
2. Create Ingress/Egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l2_addr_addr(vlan, in_port, mac);
opennsl_l2_addr_addr(vlan, out_port, mac);
flags |= OPENNSL_L2_L3LOOKUP
ARL Table
Memory
MAC | VLAN | PORT | TIME
22
Example – L3 Routing
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
Input Arbiter
(PacketHeader Parser)
L2 Logic
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
Output Queues
L3 Logic
L3 Routing
1. Set L3 egress mode
2. Create Ingress/Egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l3_egress_create(vlan, out_port, out_intf, nexthop_mac);
L3 Forwarding Table
out_inf | nexthop_mac
23
Example – L3 Routing
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
Input Arbiter
(PacketHeader Parser)
L2 Logic
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
Output Queues
L3 Logic
L3 Routing
1. Set L3 egress mode
2. Create Ingress/Egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l3_host_add(host_ip)
L3 Forwarding Table
host_ip | out_inf | nexthop_mac
24
Example – L3 Routing
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
MAC
RxQ
CPU
RxQ
Input Arbiter
(PacketHeader Parser)
L2 Logic
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
MAC
TxQ
CPU
TxQ
Output Queues
L3 Logic
L3 Routing
1. Set L3 egress mode
2. Create Ingress/Egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l3_route_add(default_ip, out_inf)
L3 Forwarding Table
host_ip | out_inf | nexthop_mac
default_ip | out_inf | nexthop_mac
25
Thanks
감사합니다.
26
Example – L2 Switching
Basic Three Operations of L2 Switch
§ Address learning – Src MAC matching
§ L2 Forwarding
§ Address ageing
Host A Host B
00:00:0A 00:00:0B
1
MAC ADD VLAN PORT
00:00:0A 1 1
00:00:0B 1 1
00:00:0C 1 2
00:00:0D 1 2
Address Learning Table
Host C
00:00:0C 00:00:0D
Host D
L2 Switch
opennsl_l2_addr_t addr;
opennsl_l2_addr_t_init(&addr, mac, vlan);
addr.flags |= SOME_ACTION;
opennsl_l2_addr_add(&addr);
1
2
VLAN
OPENNSL_L2_DISCARD_SRC
OPENNSL_L2_DISCARD_DST
OPENNSL_L2_COPY_TO_CPU
…
27
Example – L2 Switching
Basic Three Operations of L2 Switch
§ Address learning
§ L2 Forwarding (Bridging) – Dst MAC matching
§ Address ageing
Host A Host B
00:00:0A 00:00:0B
1
MAC ADD PORT VLAN
00:00:0A 1 1
00:00:0B 1 1
00:00:0C 2 2
00:00:0D 2 2
Address Learning Table
Host C
00:00:0C 00:00:0D
Host D
L2 Switch1
2
VLAN1
VLAN2
opennsl_l2_station_t sta;
opennsl_l2_station_t_init(&sta);
sta.dst_mac = 00:00:0D
sta.dst_mac_mask = FF:FF:FF
opennsl_l2_station_add(&sta);
MAC ADD
00:00:00D
Station Table
28
Example – L3 Routing
Routing between different networks
Host A Host B
00:00:0A 00:00:0B
1
Host C
00:00:0C 00:00:0D
Host D
L3 Router1
2
Net1
Net2
IP ADDR Intf
00:00:0A 1
00:00:0B 1
00:00:0C 2
00:00:0D 2
29
Example – L3 Routing
Routing between different networks
1. Set L3 egress mode
2. Create IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_switch_control_set(opennslSwitchL3EgressMode);
L3
Routing Logic
30
Example – L3 Routing
Routing between different networks
1. Set L3 egress mode
2. Create ingress & egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l3_intf_create(vlan, mac, in_port);
opennsl_l3_intf_create(vlan, mac, out_port);
L3
Routing Logic
In_intf out_intfin_port out_port
31
Example – L3 Routing
Routing between different networks
1. Set L3 egress mode
2. Create ingress & egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l2_addr_addr(vlan, in_port, mac);
opennsl_l2_addr_addr(vlan, out_port, mac);
flags |= OPENNSL_L2_L3LOOKUP
L3
Routing Logic
In_intf out_intfin_port out_port
32
Example – L3 Routing
Routing between different networks
1. Set L3 egress mode
2. Create ingress & egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l3_egress_create(vlan, out_port, out_intf, nexthop_mac);
L3
Routing Logic
In_intf out_intfin_port out_portEgress Object
33
Example – L3 Routing
Routing between different networks
1. Set L3 egress mode
2. Create ingress & egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l3_host_add()
L3
Routing Logic
In_intf out_intfin_port out_portEgress Object
IP ADDR Intf
HOST_A out_intf
Routing Table
34
Example – L3 Routing
Routing between different networks
1. Set L3 egress mode
2. Create ingress & egress IP interfaces
3. Make the address learn on a VLAN and port
4. Create egress object
5. Add host point
6. Add default route
opennsl_l3_route_add()
L3
Routing Logic
In_intf out_intfin_port out_portEgress Object
IP ADDR Intf
HOST_A out_intf
DEFAULT out_intf
Routing Table

Mais conteúdo relacionado

Mais procurados

Building day 2 upload Building the Internet of Things with Thingsquare and ...
Building day 2   upload Building the Internet of Things with Thingsquare and ...Building day 2   upload Building the Internet of Things with Thingsquare and ...
Building day 2 upload Building the Internet of Things with Thingsquare and ...Adam Dunkels
 
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...Cloud Native Day Tel Aviv
 
DPDK Summit 2015 - Aspera - Charles Shiflett
DPDK Summit 2015 - Aspera - Charles ShiflettDPDK Summit 2015 - Aspera - Charles Shiflett
DPDK Summit 2015 - Aspera - Charles ShiflettJim St. Leger
 
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2Adam Dunkels
 
DPDK Summit 2015 - Sprint - Arun Rajagopal
DPDK Summit 2015 - Sprint - Arun RajagopalDPDK Summit 2015 - Sprint - Arun Rajagopal
DPDK Summit 2015 - Sprint - Arun RajagopalJim St. Leger
 
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...gogo6
 
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...Adam Dunkels
 
IPv6 at Mythic Beasts - Networkshop44
IPv6 at Mythic Beasts - Networkshop44IPv6 at Mythic Beasts - Networkshop44
IPv6 at Mythic Beasts - Networkshop44Jisc
 
OpenFlow tutorial
OpenFlow tutorialOpenFlow tutorial
OpenFlow tutorialopenflow
 
Pyretic - A new programmer friendly language for SDN
Pyretic - A new programmer friendly language for SDNPyretic - A new programmer friendly language for SDN
Pyretic - A new programmer friendly language for SDNnvirters
 
6 Lo Wpan Tutorial 20080206
6 Lo Wpan Tutorial 200802066 Lo Wpan Tutorial 20080206
6 Lo Wpan Tutorial 20080206pauldeng
 
6lowpan
6lowpan 6lowpan
6lowpan Wi6Labs
 
DEVNET-1175 OpenDaylight Service Function Chaining
DEVNET-1175	OpenDaylight Service Function ChainingDEVNET-1175	OpenDaylight Service Function Chaining
DEVNET-1175 OpenDaylight Service Function ChainingCisco DevNet
 
Linux networking is Awesome!
Linux networking is Awesome!Linux networking is Awesome!
Linux networking is Awesome!Cumulus Networks
 
Virtualizing the Network to enable a Software Defined Infrastructure (SDI)
Virtualizing the Network to enable a Software Defined Infrastructure (SDI)Virtualizing the Network to enable a Software Defined Infrastructure (SDI)
Virtualizing the Network to enable a Software Defined Infrastructure (SDI)Odinot Stanislas
 
Tech Tutorial by Vikram Dham: Let's build MPLS router using SDN
Tech Tutorial by Vikram Dham: Let's build MPLS router using SDNTech Tutorial by Vikram Dham: Let's build MPLS router using SDN
Tech Tutorial by Vikram Dham: Let's build MPLS router using SDNnvirters
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)Kirill Tsym
 

Mais procurados (20)

Building day 2 upload Building the Internet of Things with Thingsquare and ...
Building day 2   upload Building the Internet of Things with Thingsquare and ...Building day 2   upload Building the Internet of Things with Thingsquare and ...
Building day 2 upload Building the Internet of Things with Thingsquare and ...
 
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
Barak Perlman, ConteXtream - SFC (Service Function Chaining) Using Openstack ...
 
DPDK Summit 2015 - Aspera - Charles Shiflett
DPDK Summit 2015 - Aspera - Charles ShiflettDPDK Summit 2015 - Aspera - Charles Shiflett
DPDK Summit 2015 - Aspera - Charles Shiflett
 
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
Building the Internet of Things with Thingsquare and Contiki - day 2 part 2
 
DPDK Summit 2015 - Sprint - Arun Rajagopal
DPDK Summit 2015 - Sprint - Arun RajagopalDPDK Summit 2015 - Sprint - Arun Rajagopal
DPDK Summit 2015 - Sprint - Arun Rajagopal
 
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
IoT Field Area Network Solutions & Integration of IPv6 Standards by Patrick G...
 
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
 
IPv6 at Mythic Beasts - Networkshop44
IPv6 at Mythic Beasts - Networkshop44IPv6 at Mythic Beasts - Networkshop44
IPv6 at Mythic Beasts - Networkshop44
 
OpenFlow tutorial
OpenFlow tutorialOpenFlow tutorial
OpenFlow tutorial
 
Pyretic - A new programmer friendly language for SDN
Pyretic - A new programmer friendly language for SDNPyretic - A new programmer friendly language for SDN
Pyretic - A new programmer friendly language for SDN
 
6 Lo Wpan Tutorial 20080206
6 Lo Wpan Tutorial 200802066 Lo Wpan Tutorial 20080206
6 Lo Wpan Tutorial 20080206
 
Low-power IP: 6LoWPAN & Co.
Low-power IP: 6LoWPAN & Co.Low-power IP: 6LoWPAN & Co.
Low-power IP: 6LoWPAN & Co.
 
6lowpan
6lowpan 6lowpan
6lowpan
 
SEGMENT Routing
SEGMENT RoutingSEGMENT Routing
SEGMENT Routing
 
Haystack + DASH7 Security
Haystack + DASH7 SecurityHaystack + DASH7 Security
Haystack + DASH7 Security
 
DEVNET-1175 OpenDaylight Service Function Chaining
DEVNET-1175	OpenDaylight Service Function ChainingDEVNET-1175	OpenDaylight Service Function Chaining
DEVNET-1175 OpenDaylight Service Function Chaining
 
Linux networking is Awesome!
Linux networking is Awesome!Linux networking is Awesome!
Linux networking is Awesome!
 
Virtualizing the Network to enable a Software Defined Infrastructure (SDI)
Virtualizing the Network to enable a Software Defined Infrastructure (SDI)Virtualizing the Network to enable a Software Defined Infrastructure (SDI)
Virtualizing the Network to enable a Software Defined Infrastructure (SDI)
 
Tech Tutorial by Vikram Dham: Let's build MPLS router using SDN
Tech Tutorial by Vikram Dham: Let's build MPLS router using SDNTech Tutorial by Vikram Dham: Let's build MPLS router using SDN
Tech Tutorial by Vikram Dham: Let's build MPLS router using SDN
 
FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)FD.io Vector Packet Processing (VPP)
FD.io Vector Packet Processing (VPP)
 

Destaque

[2017년 5월 정기세미나] IBM에서 바라보는 OpenStack 이야기
[2017년 5월 정기세미나] IBM에서 바라보는 OpenStack 이야기[2017년 5월 정기세미나] IBM에서 바라보는 OpenStack 이야기
[2017년 5월 정기세미나] IBM에서 바라보는 OpenStack 이야기OpenStack Korea Community
 
[2017년 5월 정기세미나] Network with OpenStack - OpenStack Summit Boston Post
[2017년 5월 정기세미나] Network with OpenStack - OpenStack Summit Boston Post[2017년 5월 정기세미나] Network with OpenStack - OpenStack Summit Boston Post
[2017년 5월 정기세미나] Network with OpenStack - OpenStack Summit Boston PostOpenStack Korea Community
 
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track3 - 방송제작용 UHD 스트로지 구성 및 테스트
[OpenStack Days Korea 2016] Track3 - 방송제작용 UHD 스트로지 구성 및 테스트[OpenStack Days Korea 2016] Track3 - 방송제작용 UHD 스트로지 구성 및 테스트
[OpenStack Days Korea 2016] Track3 - 방송제작용 UHD 스트로지 구성 및 테스트OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track4 - OpenStack with Kubernetes
[OpenStack Days Korea 2016] Track4 - OpenStack with Kubernetes[OpenStack Days Korea 2016] Track4 - OpenStack with Kubernetes
[OpenStack Days Korea 2016] Track4 - OpenStack with KubernetesOpenStack Korea Community
 
[OpenStack Days Korea 2016] Track2 - 데이터센터에 부는 오픈 소스 하드웨어 바람
[OpenStack Days Korea 2016] Track2 - 데이터센터에 부는 오픈 소스 하드웨어 바람[OpenStack Days Korea 2016] Track2 - 데이터센터에 부는 오픈 소스 하드웨어 바람
[OpenStack Days Korea 2016] Track2 - 데이터센터에 부는 오픈 소스 하드웨어 바람OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track3 - OpenStack on 64-bit ARM with X-Gene
[OpenStack Days Korea 2016] Track3 - OpenStack on 64-bit ARM with X-Gene[OpenStack Days Korea 2016] Track3 - OpenStack on 64-bit ARM with X-Gene
[OpenStack Days Korea 2016] Track3 - OpenStack on 64-bit ARM with X-GeneOpenStack Korea Community
 
[OpenStack Days Korea 2016] Track3 - Powered by OpenStack, Power to do more w...
[OpenStack Days Korea 2016] Track3 - Powered by OpenStack, Power to do more w...[OpenStack Days Korea 2016] Track3 - Powered by OpenStack, Power to do more w...
[OpenStack Days Korea 2016] Track3 - Powered by OpenStack, Power to do more w...OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개
[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개
[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track4 - Deep Drive: k8s with Docker
[OpenStack Days Korea 2016] Track4 - Deep Drive: k8s with Docker[OpenStack Days Korea 2016] Track4 - Deep Drive: k8s with Docker
[OpenStack Days Korea 2016] Track4 - Deep Drive: k8s with DockerOpenStack Korea Community
 
[OpenStack Days Korea 2016] Track2 - OpenStack 기반 소프트웨어 정의 스토리지 기술
[OpenStack Days Korea 2016] Track2 - OpenStack 기반 소프트웨어 정의 스토리지 기술[OpenStack Days Korea 2016] Track2 - OpenStack 기반 소프트웨어 정의 스토리지 기술
[OpenStack Days Korea 2016] Track2 - OpenStack 기반 소프트웨어 정의 스토리지 기술OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택
[OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택[OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택
[OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track4 - 오픈스택을 공부합시다 - 커뮤니티 스터디 분과 소개
[OpenStack Days Korea 2016] Track4 - 오픈스택을 공부합시다 - 커뮤니티 스터디 분과 소개[OpenStack Days Korea 2016] Track4 - 오픈스택을 공부합시다 - 커뮤니티 스터디 분과 소개
[OpenStack Days Korea 2016] Track4 - 오픈스택을 공부합시다 - 커뮤니티 스터디 분과 소개OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track3 - VDI on OpenStack with LeoStream Connecti...
[OpenStack Days Korea 2016] Track3 - VDI on OpenStack with LeoStream Connecti...[OpenStack Days Korea 2016] Track3 - VDI on OpenStack with LeoStream Connecti...
[OpenStack Days Korea 2016] Track3 - VDI on OpenStack with LeoStream Connecti...OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track3 - 오픈스택 환경에서 공유 파일 시스템 구현하기: 마닐라(Manila) 프로젝트
[OpenStack Days Korea 2016] Track3 - 오픈스택 환경에서 공유 파일 시스템 구현하기: 마닐라(Manila) 프로젝트[OpenStack Days Korea 2016] Track3 - 오픈스택 환경에서 공유 파일 시스템 구현하기: 마닐라(Manila) 프로젝트
[OpenStack Days Korea 2016] Track3 - 오픈스택 환경에서 공유 파일 시스템 구현하기: 마닐라(Manila) 프로젝트OpenStack Korea Community
 
[OpenStack Days Korea 2016] Track4 - 해외 사례로 보는 OpenStack Billing System
[OpenStack Days Korea 2016] Track4 - 해외 사례로 보는 OpenStack Billing System[OpenStack Days Korea 2016] Track4 - 해외 사례로 보는 OpenStack Billing System
[OpenStack Days Korea 2016] Track4 - 해외 사례로 보는 OpenStack Billing SystemOpenStack Korea Community
 

Destaque (17)

[2017년 5월 정기세미나] IBM에서 바라보는 OpenStack 이야기
[2017년 5월 정기세미나] IBM에서 바라보는 OpenStack 이야기[2017년 5월 정기세미나] IBM에서 바라보는 OpenStack 이야기
[2017년 5월 정기세미나] IBM에서 바라보는 OpenStack 이야기
 
[2017년 5월 정기세미나] Network with OpenStack - OpenStack Summit Boston Post
[2017년 5월 정기세미나] Network with OpenStack - OpenStack Summit Boston Post[2017년 5월 정기세미나] Network with OpenStack - OpenStack Summit Boston Post
[2017년 5월 정기세미나] Network with OpenStack - OpenStack Summit Boston Post
 
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
[OpenStack Days 2016] Track4 - OpenNSL으로 브로드콜 기반 네트,워크 스위치 제어하기
 
[OpenStack Days Korea 2016] Track3 - 방송제작용 UHD 스트로지 구성 및 테스트
[OpenStack Days Korea 2016] Track3 - 방송제작용 UHD 스트로지 구성 및 테스트[OpenStack Days Korea 2016] Track3 - 방송제작용 UHD 스트로지 구성 및 테스트
[OpenStack Days Korea 2016] Track3 - 방송제작용 UHD 스트로지 구성 및 테스트
 
[OpenStack Days Korea 2016] Track4 - OpenStack with Kubernetes
[OpenStack Days Korea 2016] Track4 - OpenStack with Kubernetes[OpenStack Days Korea 2016] Track4 - OpenStack with Kubernetes
[OpenStack Days Korea 2016] Track4 - OpenStack with Kubernetes
 
[OpenStack Days Korea 2016] Track2 - 데이터센터에 부는 오픈 소스 하드웨어 바람
[OpenStack Days Korea 2016] Track2 - 데이터센터에 부는 오픈 소스 하드웨어 바람[OpenStack Days Korea 2016] Track2 - 데이터센터에 부는 오픈 소스 하드웨어 바람
[OpenStack Days Korea 2016] Track2 - 데이터센터에 부는 오픈 소스 하드웨어 바람
 
[OpenStack Days Korea 2016] Track3 - OpenStack on 64-bit ARM with X-Gene
[OpenStack Days Korea 2016] Track3 - OpenStack on 64-bit ARM with X-Gene[OpenStack Days Korea 2016] Track3 - OpenStack on 64-bit ARM with X-Gene
[OpenStack Days Korea 2016] Track3 - OpenStack on 64-bit ARM with X-Gene
 
[OpenStack Days Korea 2016] Track3 - Powered by OpenStack, Power to do more w...
[OpenStack Days Korea 2016] Track3 - Powered by OpenStack, Power to do more w...[OpenStack Days Korea 2016] Track3 - Powered by OpenStack, Power to do more w...
[OpenStack Days Korea 2016] Track3 - Powered by OpenStack, Power to do more w...
 
[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개
[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개
[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개
 
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
[OpenStack Days Korea 2016] Track2 - 가상화 네트워크와 클라우드간 협업
 
[OpenStack Days Korea 2016] Track4 - Deep Drive: k8s with Docker
[OpenStack Days Korea 2016] Track4 - Deep Drive: k8s with Docker[OpenStack Days Korea 2016] Track4 - Deep Drive: k8s with Docker
[OpenStack Days Korea 2016] Track4 - Deep Drive: k8s with Docker
 
[OpenStack Days Korea 2016] Track2 - OpenStack 기반 소프트웨어 정의 스토리지 기술
[OpenStack Days Korea 2016] Track2 - OpenStack 기반 소프트웨어 정의 스토리지 기술[OpenStack Days Korea 2016] Track2 - OpenStack 기반 소프트웨어 정의 스토리지 기술
[OpenStack Days Korea 2016] Track2 - OpenStack 기반 소프트웨어 정의 스토리지 기술
 
[OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택
[OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택[OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택
[OpenStack Days Korea 2016] Track3 - 머신러닝과 오픈스택
 
[OpenStack Days Korea 2016] Track4 - 오픈스택을 공부합시다 - 커뮤니티 스터디 분과 소개
[OpenStack Days Korea 2016] Track4 - 오픈스택을 공부합시다 - 커뮤니티 스터디 분과 소개[OpenStack Days Korea 2016] Track4 - 오픈스택을 공부합시다 - 커뮤니티 스터디 분과 소개
[OpenStack Days Korea 2016] Track4 - 오픈스택을 공부합시다 - 커뮤니티 스터디 분과 소개
 
[OpenStack Days Korea 2016] Track3 - VDI on OpenStack with LeoStream Connecti...
[OpenStack Days Korea 2016] Track3 - VDI on OpenStack with LeoStream Connecti...[OpenStack Days Korea 2016] Track3 - VDI on OpenStack with LeoStream Connecti...
[OpenStack Days Korea 2016] Track3 - VDI on OpenStack with LeoStream Connecti...
 
[OpenStack Days Korea 2016] Track3 - 오픈스택 환경에서 공유 파일 시스템 구현하기: 마닐라(Manila) 프로젝트
[OpenStack Days Korea 2016] Track3 - 오픈스택 환경에서 공유 파일 시스템 구현하기: 마닐라(Manila) 프로젝트[OpenStack Days Korea 2016] Track3 - 오픈스택 환경에서 공유 파일 시스템 구현하기: 마닐라(Manila) 프로젝트
[OpenStack Days Korea 2016] Track3 - 오픈스택 환경에서 공유 파일 시스템 구현하기: 마닐라(Manila) 프로젝트
 
[OpenStack Days Korea 2016] Track4 - 해외 사례로 보는 OpenStack Billing System
[OpenStack Days Korea 2016] Track4 - 해외 사례로 보는 OpenStack Billing System[OpenStack Days Korea 2016] Track4 - 해외 사례로 보는 OpenStack Billing System
[OpenStack Days Korea 2016] Track4 - 해외 사례로 보는 OpenStack Billing System
 

Semelhante a Open stackdaykorea2016 wedge

SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspeChris Westin
 
Hardware accelerated switching with Linux @ SWLUG Talks May 2014
Hardware accelerated switching with Linux @ SWLUG Talks May 2014Hardware accelerated switching with Linux @ SWLUG Talks May 2014
Hardware accelerated switching with Linux @ SWLUG Talks May 2014Nat Morris
 
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...Cloud Native Day Tel Aviv
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Andriy Berestovskyy
 
Stacks and Layers: Integrating P4, C, OVS and OpenStack
Stacks and Layers: Integrating P4, C, OVS and OpenStackStacks and Layers: Integrating P4, C, OVS and OpenStack
Stacks and Layers: Integrating P4, C, OVS and OpenStackOpen-NFP
 
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar
 
Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?OPNFV
 
Openlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sionOpenlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sionCcie Light
 
Hong kongopenstack2013 sdn_bluehost
Hong kongopenstack2013 sdn_bluehostHong kongopenstack2013 sdn_bluehost
Hong kongopenstack2013 sdn_bluehostJun Park
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxSamsung Open Source Group
 
Implementing an IPv6 Enabled Environment for a Public Cloud Tenant
Implementing an IPv6 Enabled Environment for a Public Cloud TenantImplementing an IPv6 Enabled Environment for a Public Cloud Tenant
Implementing an IPv6 Enabled Environment for a Public Cloud TenantShixiong Shang
 
Ovn vancouver
Ovn vancouverOvn vancouver
Ovn vancouverMason Mei
 
Sdn dell lab report v2
Sdn dell lab report v2Sdn dell lab report v2
Sdn dell lab report v2Oded Rotter
 
Evaluation of OpenFlow in RB750GL
Evaluation of OpenFlow in RB750GLEvaluation of OpenFlow in RB750GL
Evaluation of OpenFlow in RB750GLToshiki Tsuboi
 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceSamsung Open Source Group
 
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...PROIDEA
 
2015 FOSDEM - OVS Stateful Services
2015 FOSDEM - OVS Stateful Services2015 FOSDEM - OVS Stateful Services
2015 FOSDEM - OVS Stateful ServicesThomas Graf
 

Semelhante a Open stackdaykorea2016 wedge (20)

SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspe
 
Hardware accelerated switching with Linux @ SWLUG Talks May 2014
Hardware accelerated switching with Linux @ SWLUG Talks May 2014Hardware accelerated switching with Linux @ SWLUG Talks May 2014
Hardware accelerated switching with Linux @ SWLUG Talks May 2014
 
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
Scaling OpenStack Networking Beyond 4000 Nodes with Dragonflow - Eshed Gal-Or...
 
Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)Network Programming: Data Plane Development Kit (DPDK)
Network Programming: Data Plane Development Kit (DPDK)
 
Stacks and Layers: Integrating P4, C, OVS and OpenStack
Stacks and Layers: Integrating P4, C, OVS and OpenStackStacks and Layers: Integrating P4, C, OVS and OpenStack
Stacks and Layers: Integrating P4, C, OVS and OpenStack
 
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
 
Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?Summit 16: How to Compose a New OPNFV Solution Stack?
Summit 16: How to Compose a New OPNFV Solution Stack?
 
Openlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sionOpenlab.2014 02-13.major.vi sion
Openlab.2014 02-13.major.vi sion
 
OpenFlow Tutorial
OpenFlow TutorialOpenFlow Tutorial
OpenFlow Tutorial
 
Hong kongopenstack2013 sdn_bluehost
Hong kongopenstack2013 sdn_bluehostHong kongopenstack2013 sdn_bluehost
Hong kongopenstack2013 sdn_bluehost
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
 
Run Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT NetworkRun Your Own 6LoWPAN Based IoT Network
Run Your Own 6LoWPAN Based IoT Network
 
Implementing an IPv6 Enabled Environment for a Public Cloud Tenant
Implementing an IPv6 Enabled Environment for a Public Cloud TenantImplementing an IPv6 Enabled Environment for a Public Cloud Tenant
Implementing an IPv6 Enabled Environment for a Public Cloud Tenant
 
Ovn vancouver
Ovn vancouverOvn vancouver
Ovn vancouver
 
Sdn dell lab report v2
Sdn dell lab report v2Sdn dell lab report v2
Sdn dell lab report v2
 
Evaluation of OpenFlow in RB750GL
Evaluation of OpenFlow in RB750GLEvaluation of OpenFlow in RB750GL
Evaluation of OpenFlow in RB750GL
 
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux DeviceAdding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
Adding IEEE 802.15.4 and 6LoWPAN to an Embedded Linux Device
 
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...PLNOG16: Obsługa 100M pps na platformie PC, Przemysław Frasunek, Paweł Mała...
PLNOG16: Obsługa 100M pps na platformie PC , Przemysław Frasunek, Paweł Mała...
 
2015 FOSDEM - OVS Stateful Services
2015 FOSDEM - OVS Stateful Services2015 FOSDEM - OVS Stateful Services
2015 FOSDEM - OVS Stateful Services
 
SDN approach.pptx
SDN approach.pptxSDN approach.pptx
SDN approach.pptx
 

Último

Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdfankushspencer015
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxAsutosh Ranjan
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...roncy bisnoi
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduitsrknatarajan
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...ranjana rawat
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 

Último (20)

Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
Call Girls in Nagpur Suman Call 7001035870 Meet With Nagpur Escorts
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
Coefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptxCoefficient of Thermal Expansion and their Importance.pptx
Coefficient of Thermal Expansion and their Importance.pptx
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
The Most Attractive Pune Call Girls Budhwar Peth 8250192130 Will You Miss Thi...
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 

Open stackdaykorea2016 wedge

  • 1. OpenNSL으로 브로드콤 기반 네트워크 스위치 제어하기 OpenStack Day Korea 2016 NIC 기술원 SDI Tech. Lab Manager 서준호 2016. 2. 18
  • 2. 1 Contents 본 발표는 지난 한달 간 Facebook이 제공한 Wedge를 가지고 이리 저리 가지고 논 경험을 담고 있음 1. OCP 소개 2. Facebook Wedge H/W 소개 3. Networking Operating System – Open Network Linux (ONL) 4. Broadcom Trident2 & OpenNSL 소개 5. OpenNSL 튜토리얼 (L2 스위칭, L3 라우팅)
  • 3. 2 OCP 소개 OCP (Open Compute Project) § Facebook 주도의 데이터센터 인프라 설계 기술 공유를 위한 오픈 하드웨어 프로젝트 §Facebook 은 Oregon 주 Prineville 데이터센터 인프라 스펙을 공개 §IT 기술을 접목시켜 경제적이고 효율적 관리를 통해 $20억 절감 § 프로젝트 §Server/Storage/Networking/Open Rack/Data Center/Management § SKT 는 올해 2월 가입 §OCP Summit 2016 (3월) 에서 발표 예정
  • 4. 3 OCP Networking 소개 Project Chairs: Omar Baldonado | Carlos Cardenas 네트워크 하드웨어 + 네트워킹 소프트웨어 § Disaggregation + Open § 현재는 ToR 스위치와 Spine 스위치 스펙 정의에 집중하고 있음 § 또한 각 칩 벤더간의 서로 다른 Hardware Abstract Layer (HAL) 영역을 하나의 공통된 인터페이스 Service Abstract Interface (SAI) 로 스펙화 진행 중
  • 5. 4 Facebook이 개발한 1RU(Rack Unit) 크기의 ToR Switch Facebook Wedge 소개 (1/3) Modular Design § Micro-server module §Intel Avoton C2550 (Atom) § Main switch module §16 QSFP §4x Fan module § BCM56850 (Trident2) § Open BMC module Spine Switch
  • 6. 5 Facebook Wedge 소개 (2/3) High Level Block Diagram 기존 서버 아키텍처와 다를게 없음!
  • 7. 6 High Speed Interface Connectivity § 16x QSFP (each x4 SerDes 10GbE) § 16x (not used), but for 6-Pack Facebook Wedge 소개 (3/3) Main Switching ASIC - BCM56850 (Trident2) 2U Yosemite Wedge 16 x Yosemite
  • 8. 7 Power on & Boot up Wedge ONIE: Boot Loader contributed by Cumulus Networks § GRUB2 (x86) or U-Boot (powerpc or other architectures) § Reinstall/Uninstall/Rescue/Boot NOSes on OCP bare metal switches over IPv6 and HTTP
  • 9. 8 Installing Networking Operating System Switch Light Current ONIE compatible NOS List We choose Open Network Linux (ONL) § OCP 커뮤니티에서 베어 메탈 스위치를 위한 레퍼런스 네트워크 운영체제 § Big Switch가 OCP 커뮤니티 네트워킹 그룹에 오픈소스 기여 § 데비안 리눅스 기반 + 네트워크 ASIC 칩 드라이버 + ɑ (vendor specific) § 현재 Big Switch Networks, 페이스북, NTT 사용 중 § 현재 베어 메탈 스위치 제조 벤더들이 지원 à 앞으로도 계속 ONL이 지원되는 OCP 표준 스위치 증가할 예정 (OCP summit `15)
  • 11. 10 네트워크 스위치가 되기 위해서는… 지금까지 한 일 네트워크 스위치가 되기 위해서 할 일 Wedge
  • 12. 11 Facebook - the next-generation Facebook data center network Wedge (ToR 스위치) 6-pack (Spine스위치) Clos networks FBOSS Facebook ONL Use Case
  • 13. 12 Use Cases: NTT NTT’s EVPN NTT ONL Use Case
  • 14. 13 OpenNSL 소개 Broadcom Switching ASIC (i.e., Trident+, Trident2) Chip 제어를 위한 오픈소스 기반 Hardware Abstraction Layer (HAL) Licence Policy § OEM/ODM Development Package § Community Development Package Features § L2/L3/VLAN management § Port and switch management § Link monitoring § Packet transmit and receive § Trunking § … Supported Platforms § Acction Wedge, AS5712 § Broadcom reference platform (SVK)
  • 15. 14 OpenNSL 소개 Broadcom Switching ASIC (i.e., Trident+, Trident2) Chip 제어를 위한 오픈소스 기반 Hardware Abstraction Layer (HAL) OpenNSL Use Cases § FBOSS (Facebook 주도) § Open Network Linux (Big Switch 주도) § BroadView § Open L3 Routing (NTT 주도) § OpenSwitch (HP주도)
  • 16. 15 MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ Input Arbiter (PacketHeader Parser) PacketProcessing Pipeline MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ Output Queues High Level Block Diagramof BroadcomASIC OpenNSL 소개 PCI-E Kernel SpaceUser Space OpenNSL Broadcom SDK Kernel BDE Kernel KNET DMA eth0 eth1 eth2 SRAM TCAM DRAM
  • 17. 16 Example – L2 Switching Basic Three Operations of L2 Switch § Address learning §Src MAC matching §Automatically learning § L2 Forwarding § Address ageing MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ Input Arbiter (PacketHeader Parser) Address Resolution Logic (ARL) MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ Output Queues ARL Table Memory MAC | VLAN | PORT | TIME opennsl_l2_addr_add(mac, vlan, port, flags); flags: OPENNSL_L2_DISCARD_SRC OPENNSL_L2_DISCARD_DST OPENNSL_L2_L3LOOKUP OPENNSL_L2_MOVE_PORT OPENNSL_L2_COPY_TO_CPU CALLBACK … opennsl_l2_addr_add() opennsl_l2_addr_delete() opennsl_l2_addr_get() opennsl_l2_addr_register() opennsl_l2_addr_t_init()
  • 18. 17 MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ Input Arbiter (PacketHeader Parser) ARL MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ Output Queues Basic Three Operations of L2 Switch § Address learning § L2 Forwarding §Dst MAC matching §Default - Flooding § Address ageing Example – L2 Switching Forwarding Logic Forwarding Table Memory MAC | MAC_MASK opennsl_l2_station_add(mac, mask, flags); flags: OPENNSL_L2_STATION_ARP_RARP OPENNSL_L2_STATION_IPV4 opennsl_l2_station_add() opennsl_l2_station_delete() opennsl_l2_station_get() opennsl_l2_station_t_init()
  • 19. 18 Example – L3 Routing L3 Routing § Routing between different sub-networks § Longest Prefix Matching (LPM) 192.168.1.0/24 192.168.2.0/24 192.168.3.0/24 Subnet 1 Subnet 2 Subnet 3 192.168.1.1 192.168.2.1 192.168.3.1
  • 20. 19 Example – L3 Routing MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ Input Arbiter (PacketHeader Parser) L2 Logic MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ Output Queues L3 Logic L3 Routing 1. Set L3 egress mode 2. Create IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_switch_control_set(opennslSwitchL3EgressMode);
  • 21. 20 Example – L3 Routing MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ Input Arbiter (PacketHeader Parser) L2 Logic MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ Output Queues L3 Logic L3 Routing 1. Set L3 egress mode 2. Create Ingress/Egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l3_intf_create(vlan, mac, in_port); opennsl_l3_intf_create(vlan, mac, out_port);
  • 22. 21 Example – L3 Routing MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ Input Arbiter (PacketHeader Parser) L2 Logic MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ Output Queues L3 Logic L3 Routing 1. Set L3 egress mode 2. Create Ingress/Egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l2_addr_addr(vlan, in_port, mac); opennsl_l2_addr_addr(vlan, out_port, mac); flags |= OPENNSL_L2_L3LOOKUP ARL Table Memory MAC | VLAN | PORT | TIME
  • 23. 22 Example – L3 Routing MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ Input Arbiter (PacketHeader Parser) L2 Logic MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ Output Queues L3 Logic L3 Routing 1. Set L3 egress mode 2. Create Ingress/Egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l3_egress_create(vlan, out_port, out_intf, nexthop_mac); L3 Forwarding Table out_inf | nexthop_mac
  • 24. 23 Example – L3 Routing MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ Input Arbiter (PacketHeader Parser) L2 Logic MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ Output Queues L3 Logic L3 Routing 1. Set L3 egress mode 2. Create Ingress/Egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l3_host_add(host_ip) L3 Forwarding Table host_ip | out_inf | nexthop_mac
  • 25. 24 Example – L3 Routing MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ MAC RxQ CPU RxQ Input Arbiter (PacketHeader Parser) L2 Logic MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ MAC TxQ CPU TxQ Output Queues L3 Logic L3 Routing 1. Set L3 egress mode 2. Create Ingress/Egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l3_route_add(default_ip, out_inf) L3 Forwarding Table host_ip | out_inf | nexthop_mac default_ip | out_inf | nexthop_mac
  • 27. 26 Example – L2 Switching Basic Three Operations of L2 Switch § Address learning – Src MAC matching § L2 Forwarding § Address ageing Host A Host B 00:00:0A 00:00:0B 1 MAC ADD VLAN PORT 00:00:0A 1 1 00:00:0B 1 1 00:00:0C 1 2 00:00:0D 1 2 Address Learning Table Host C 00:00:0C 00:00:0D Host D L2 Switch opennsl_l2_addr_t addr; opennsl_l2_addr_t_init(&addr, mac, vlan); addr.flags |= SOME_ACTION; opennsl_l2_addr_add(&addr); 1 2 VLAN OPENNSL_L2_DISCARD_SRC OPENNSL_L2_DISCARD_DST OPENNSL_L2_COPY_TO_CPU …
  • 28. 27 Example – L2 Switching Basic Three Operations of L2 Switch § Address learning § L2 Forwarding (Bridging) – Dst MAC matching § Address ageing Host A Host B 00:00:0A 00:00:0B 1 MAC ADD PORT VLAN 00:00:0A 1 1 00:00:0B 1 1 00:00:0C 2 2 00:00:0D 2 2 Address Learning Table Host C 00:00:0C 00:00:0D Host D L2 Switch1 2 VLAN1 VLAN2 opennsl_l2_station_t sta; opennsl_l2_station_t_init(&sta); sta.dst_mac = 00:00:0D sta.dst_mac_mask = FF:FF:FF opennsl_l2_station_add(&sta); MAC ADD 00:00:00D Station Table
  • 29. 28 Example – L3 Routing Routing between different networks Host A Host B 00:00:0A 00:00:0B 1 Host C 00:00:0C 00:00:0D Host D L3 Router1 2 Net1 Net2 IP ADDR Intf 00:00:0A 1 00:00:0B 1 00:00:0C 2 00:00:0D 2
  • 30. 29 Example – L3 Routing Routing between different networks 1. Set L3 egress mode 2. Create IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_switch_control_set(opennslSwitchL3EgressMode); L3 Routing Logic
  • 31. 30 Example – L3 Routing Routing between different networks 1. Set L3 egress mode 2. Create ingress & egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l3_intf_create(vlan, mac, in_port); opennsl_l3_intf_create(vlan, mac, out_port); L3 Routing Logic In_intf out_intfin_port out_port
  • 32. 31 Example – L3 Routing Routing between different networks 1. Set L3 egress mode 2. Create ingress & egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l2_addr_addr(vlan, in_port, mac); opennsl_l2_addr_addr(vlan, out_port, mac); flags |= OPENNSL_L2_L3LOOKUP L3 Routing Logic In_intf out_intfin_port out_port
  • 33. 32 Example – L3 Routing Routing between different networks 1. Set L3 egress mode 2. Create ingress & egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l3_egress_create(vlan, out_port, out_intf, nexthop_mac); L3 Routing Logic In_intf out_intfin_port out_portEgress Object
  • 34. 33 Example – L3 Routing Routing between different networks 1. Set L3 egress mode 2. Create ingress & egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l3_host_add() L3 Routing Logic In_intf out_intfin_port out_portEgress Object IP ADDR Intf HOST_A out_intf Routing Table
  • 35. 34 Example – L3 Routing Routing between different networks 1. Set L3 egress mode 2. Create ingress & egress IP interfaces 3. Make the address learn on a VLAN and port 4. Create egress object 5. Add host point 6. Add default route opennsl_l3_route_add() L3 Routing Logic In_intf out_intfin_port out_portEgress Object IP ADDR Intf HOST_A out_intf DEFAULT out_intf Routing Table