SlideShare a Scribd company logo
[OpenStack]
OpenStack Networking with Neutron
김지은
yeswldms@gmail.com
What is Network NameSpace?
•
•
네트워크 관련된 시스템 자원의 isolation을 제공
각각의 Network Device, IP address, IP routing tables, /proc/net directory, port numbers …
What is VLAN Tagging?
•
•
2계층 스위치 간 프레임 전달시 프레임이 어느 VLAN 소속인지 알려주는 VID 정보의 전달 방식
프레임 내에 관련정보를 tagging
• 오픈스택 상에서 같은 Compute Node위에 있는 다른 인스턴스들간의 트래픽에 적용
What is GRE?
• GRE port in OVS
OVS lays finishing of GRE packet encapsulation on networking stack.
• 오픈스택 상에서 다른 Compute Node위에 있는 다른 인스턴스들간의 트래픽에 적용
Network Guide
• Network Connectivity Physical Hosts
Management Network
OpenStack Components 간 내부 통신
Data Network
VM Data 간 통신, IP 할당 필요
API Network
OpenStack API, Netwoking API 간 통신 제공
External Network
VM의 외부연결
Lab Test
Controller
node
eth0
Network
node
eth0
Compute
node x
eth0
eth1 eth2 eth1
Management Network + API Network : 10.0.0.0/24(NAT)
Data Network : 10.0.1.0/24External Network : 192.168.1.0/24
GW : 192.168.1.254
Network Topology (demo)
ext-net
external network
192.168.1.0/24
demo-net tena
nt1, internal net
work
192.168.100.0/24
demo-net2 ten
ant2, Internal n
etwork
192.168.101.0/24
External Network
192.168.1.0/24
Tenant 1 Tenant 2
Lab Test – Too Much Detail
• VLAN & GRE
Compute Node
Network Node
test1 test2 test3 test4
qbr x qbr x
eth 0 eth 0
vnet0 vnet1
br-int
br-tun
qvb x qvb x qvb x qvb x
qvo x qvo x qvo x qvo x
br-int
br-
tun
eth 1 eth 1
br-tun
br-int
br-ex
vlan
tag: 1
Data Network
10.0.1.0/24
eth 0
Configured by L2 Agent
vlan
tag: 2
br-int
br-
tun
Configured by L2 Agent
OVS Represents the
actual bridge interface
in the Network Stack
Packet Conversion
(VLAN translation)
br-ex
phy-br-ex
int-br-ex
patch
-tun
patch
-int
patch
-tun
patch
-int
gre x gre x
dnsmasq
tap x
vla
qg x
qr x
ntag: 1
qg y
qr y
vla
tag: 2
dnsmasq
tap y
n
Configured by L3 Agent
NAT with iptables
Configured by DHCP Agent
Assigned to each subnet
Configured by DHCP Agent
Assigned to each subnet
qrouter x qrouter y
qdhcp x qdhcp y
tunneling
Configured by Nova Compute
WAN
Configured by neutron ovs plugin agent
GRE Capsulation
Packet Conversion
(GRE mode Tunnel Interface)
Configured by neutron ovs plugin agent
Just vice versa.
- qbr Quantum BRidge
- qvb Quantum Virtual Bridge side
- qvo Quantum Virtual OVS side
eth 0 eth 0
Neutron OVS SG Chain
vnet2 vnet3
qbr x qbr x
Lab Test – Too Much Detail
• VLAN & GRE – Compute Node
Compute Node
test1 test2 test3 test4
qbr x qbr x
eth 0 eth 0
vnet0 vnet1
br-int
br-tun
qvb x qvb x qvb x qvb x
qvo x qvo x qvo x qvo x
br-int
br-
tun
eth 1
vlan
tag: 1
Data Network
10.0.1.0/24
vlan
tag: 2
Packet Conversion
(VLAN translation)
patch
-tun
patch
-int
gre x
tunneling
Configured by Nova Compute
Configured by neutron ovs plugin agent
Packet Conversion
(GRE mode Tunnel Interface)
instance
TAB device
Linux bridge
veth pair
GRE Patch Port
Physical NIC
GRE port
Virtual ETHernet pair, 가상 네트워크로 분리, Linux
Bridge와 연결, Hypervisor가 br-int bridge와 연결
물리 NIC
Vnet0은 Hypervisor내부에 있는 instance의 vNIC
와 연결
간단한 L2 스위칭 기능, 여러 물리/가상 NIC 연결
OVS
Generic Routing Encapsulation, GRE tunneling
port
Open vSwitch, 가상 스위칭 기능 동작
eth 0 eth 0
Neutron OVS SG Chain
vnet2 vnet3
qbr x qbr x
Configured by L2 Agent
Gre 터널링 포트, VLAN과는 따로 포트가 존재해야
함(TBC)
Lab Test – Too Much Detail
• VLAN & GRE – Compute Node
Compute Node
test1 test2 test3 test4
qbr x qbr x
eth 0 eth 0
vnet0 vnet1
br-int
br-tun
qvb x qvb x qvb x qvb x
qvo x qvo x qvo x qvo x
br-int
br-
tun
eth 1
vlan
tag: 1
Data Network
10.0.1.0/24
vlan
tag: 2
Packet Conversion
(VLAN translation)
patch
-tun
patch
-int
gre x
tunneling
Configured by Nova Compute
Configured by neutron ovs plugin agent
Packet Conversion
(GRE mode Tunnel Interface)
eth 0 eth 0
Neutron OVS SG Chain
vnet2 vnet3
qbr x qbr x
Configured by L2 Agent
Neutron OVS SG chain
: managed Neutron Security Groups
인스턴스와의 inbound/outbound 트래픽을 컨트롤
Security Groups - iptables, Linux Bridge
: OpenStack은 SG를 사용하기 위해 iptables rules를 사용
: 현재 OVS는 iptables rule이 적용되지 않음
: TAB Device와 Linux Bridge를 거치게하여, iptables
를 사용하도록 하는 방법으로 보안을 강화
Linux Bridge
: 방화벽 브릿지
: firewall rules와 호환
br-int(OVS)
: 통합브릿지
: 방화벽 브릿지에 등록(qvo XXX)
: VLAN 환경에서의 트래픽의 tagging/untagging 수행
br-tun(OVS)
: 터널브릿지
: br-int(통합브릿지)로부터의 VLAN 태깅된 트래픽을
GRE 터널로 번역
: rules – vlan id와 tunneling id의 트래픽 맵핑 수행
Lab Test – Too Much Detail
• VLAN & GRE – Network Node
Network Node
eth 1
br-tun
br-int
br-ex
Data Network
10.0.1.0/24
eth 0
br-int
br-
tun
Configured by L2 Agent
br-ex
phy-br-ex
int-br-ex
patch
-tun
patch
-int
gre x
dnsmasq
tap x
vla
qg x
qr x
ntag: 1
qg y
qr y
vla
tag: 2
dnsmasq
tap y
n
Configured by L3 Agent
NAT with iptables
Configured by DHCP Agent
Assigned to each subnet
Configured by DHCP Agent
Assigned to each subnet
qrouter x qrouter y
qdhcp x qdhcp y
tunneling
WAN
Configured by neutron ovs plugin agent
Just vice versa.
dnsmasq
Internal Port
veth pair
GRE Patch Port
Physical NIC
GRE port
Virtual ETHernet pair,
가상 네트워크로 분리,
Linux Bridge와 연결,
Hypervisor가 br-int bridge와 연결
물리 NIC
OVS bridge’s internal ports
OVS
??? 정확한 기능이 뭐고,
br-int 및 br-tun과 다른점은?
Generic Routing Encapsulation,
GRE tunneling port
Open vSwitch, 가상 스위칭 기능 동작
Port에 붙어서 DHCP 서비스 제공
Network Namespace,
qrouter ~
: connection to the outside(NAT)
qdhcp ~
: dhcp service
namespace
Lab Test – Too Much Detail
Network Node
eth 1
br-tun
br-int
br-ex
Data Network
10.0.1.0/24
eth 0
br-int
br-
tun
Configured by L2 Agent
br-ex
phy-br-ex
int-br-ex
patch
-tun
patch
-int
gre x
dnsmasq
tap x
vla
qg x
qr x
ntag: 1
qg y
qr y
vla
tag: 2
dnsmasq
tap y
n
Configured by L3 Agent
NAT with iptables
Configured by DHCP Agent
Assigned to each subnet
Configured by DHCP Agent
Assigned to each subnet
qrouter x qrouter y
qdhcp x qdhcp y
tunneling
WAN
Configured by neutron ovs plugin agent
Just vice versa.
qDHCP namespace
: DHCP 서버는 네트워크 namespace안에서 dnsmasq로 동작
: Network namespace는 호스트와는 별개의 네트워크 스택
(interfaces, routing tables, iptables rules)을 가질 수 있는 리눅스
커널의 기능
: dnsmasq
qRouter namespace
: Neutron router는 라우팅과 서브넷사이에서 수행되는 라우팅테
이블, iptables에 설정된 network namespace
: 라우터 기능을 수행
: Netfilter nat table - namespace내부의 라우터에 존재
인스턴스들의 floaing ip를 책임진다
External traffic
: 외부로의 트래픽은 네임스페이스의 qg인터페이스를 경유하는
br-ex를 경유
: int-br-ex port(br-int)와 phy-br-ex port(br-ex)를 통해 qg를 거
치지 않고 바로 나갈 수 있음
Lab Test – Too Much Detail
• VLAN & GRE – Network Node
NAT to host address
: 만약 br-ex에게 public cloud를 할당하기 위해 게이트웨이 어드레스를 설정한다면(NAT를 사용하고싶으면)
그러면 네트워크 노드의 아이피를 통해 “external”트래픽을 사용할 수 있는 포워딩과 NAT룰을 생성할 수 있다.
Direct network connction
: 바로 floating ip대역에 다이렉트로 외부 네트웍을 사용할거라면
# ip addr add 172.24.4.225/28 dev br-ex
# ovs-vsctl add-port br-ex eth2
Lab Test – Too Much Detail
Controller Node
> used demo tenant
> External Network : ext-net
> Private Network : demo-net, demo-net2
> Instance : test1, test2, test3, test4
Lab Test – Too Much Detail
Compute Node - Bridges & Ports
Lab Test – Too Much Detail
Network Node - Bridges & Ports
Lab Test – Too Much Detail
Network Node – Network Namespace(qRouter, qDHCP)
Compute Node – br-tun(터널브릿지의 table)
Lab Test – Too Much Detail
Network Node – qDHCP namespace interface
Lab Test – Too Much Detail
Network Node – qRouter namespace interface
Lab Test – Too Much Detail
• VLAN & GRE – Network Node
Network Node - qRouter namespace iptables
이상입니다.

More Related Content

PDF
Room 2 - 6 - Đinh Tuấn Phong - Migrate opensource database to Kubernetes easi...
PDF
Neutron packet logging framework
PDF
DevConf 2014 Kernel Networking Walkthrough
PDF
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
PDF
[OpenInfra Days Korea 2018] (Track 2) Neutron LBaaS 어디까지 왔니? - Octavia 소개
PDF
Bastion jump hosts with Teleport
PDF
Kubernetes Networking
Room 2 - 6 - Đinh Tuấn Phong - Migrate opensource database to Kubernetes easi...
Neutron packet logging framework
DevConf 2014 Kernel Networking Walkthrough
[오픈소스컨설팅] Open Stack Ceph, Neutron, HA, Multi-Region
[OpenInfra Days Korea 2018] (Track 2) Neutron LBaaS 어디까지 왔니? - Octavia 소개
Bastion jump hosts with Teleport
Kubernetes Networking

What's hot (20)

PDF
Gitlab, GitOps & ArgoCD
PPTX
Docker Networking Overview
PDF
Virtualized network with openvswitch
ODP
Monitoring IO performance with iostat and pt-diskstats
PDF
Red Hat OpenStack 17 저자직강+스터디그룹_1주차
PPTX
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...
PDF
Kubernetes Architecture - beyond a black box - Part 1
ODP
Introduction to Nginx
PPTX
OVN - Basics and deep dive
PPTX
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
PPTX
Understanding eBPF in a Hurry!
PDF
Introduction to eBPF
PDF
Docker internals
PPTX
Meetup 23 - 02 - OVN - The future of networking in OpenStack
PDF
Presentation citrix internals ica connectivity
PDF
Using NGINX as an Effective and Highly Available Content Cache
PPTX
Enable DPDK and SR-IOV for containerized virtual network functions with zun
PPTX
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
PPT
Learning AOSP - Android Linux Device Driver
PPTX
Deep Dive into Keystone Tokens and Lessons Learned
Gitlab, GitOps & ArgoCD
Docker Networking Overview
Virtualized network with openvswitch
Monitoring IO performance with iostat and pt-diskstats
Red Hat OpenStack 17 저자직강+스터디그룹_1주차
Bare Metal Cluster with Kubernetes, Istio and Metallb | Nguyen Phuong An, Ngu...
Kubernetes Architecture - beyond a black box - Part 1
Introduction to Nginx
OVN - Basics and deep dive
Room 1 - 7 - Lê Quốc Đạt - Upgrading network of Openstack to SDN with Tungste...
Understanding eBPF in a Hurry!
Introduction to eBPF
Docker internals
Meetup 23 - 02 - OVN - The future of networking in OpenStack
Presentation citrix internals ica connectivity
Using NGINX as an Effective and Highly Available Content Cache
Enable DPDK and SR-IOV for containerized virtual network functions with zun
[OpenStack 하반기 스터디] Interoperability with ML2: LinuxBridge, OVS and SDN
Learning AOSP - Android Linux Device Driver
Deep Dive into Keystone Tokens and Lessons Learned
Ad

Viewers also liked (20)

PDF
KrDAG 오픈소스를 활용하여 웹블로그 만들기_김지은_201603
PDF
Anatomy of neutron from the eagle eyes of troubelshoorters
PPTX
DragonFlow sdn based distributed virtual router for openstack neutron
PDF
OpenStack Neutron Havana Overview - Oct 2013
PDF
오픈스택: 구석구석 파헤쳐보기
PPTX
PPTX
OpenStack Tokyo Talk Application Data Protection Service
PPTX
Dragon flow neutron lightning talk
PPTX
OpenStack Dragonflow shenzhen and Hangzhou meetups
PPTX
Dragonflow 01 2016 TLV meetup
PDF
Build the OpenStack Cloud with Neutron Networing, IceHouse
PPTX
Dragonflow Austin Summit Talk
PDF
집단지성프로그래밍 05. 최적화(optimization) 김지은_20150522
PPTX
OpenStack Neutron Dragonflow l3 SDNmeetup
PDF
Kernel vm#9 powerkvm-dist-20131208
PDF
Ryu with OpenFlow 1.3, Traffic Monitor
PPT
Pgcon2012 ori-20120224
PDF
OpenStack networking
PDF
resource on openstack
PDF
150326 openstack, glance 김지은
KrDAG 오픈소스를 활용하여 웹블로그 만들기_김지은_201603
Anatomy of neutron from the eagle eyes of troubelshoorters
DragonFlow sdn based distributed virtual router for openstack neutron
OpenStack Neutron Havana Overview - Oct 2013
오픈스택: 구석구석 파헤쳐보기
OpenStack Tokyo Talk Application Data Protection Service
Dragon flow neutron lightning talk
OpenStack Dragonflow shenzhen and Hangzhou meetups
Dragonflow 01 2016 TLV meetup
Build the OpenStack Cloud with Neutron Networing, IceHouse
Dragonflow Austin Summit Talk
집단지성프로그래밍 05. 최적화(optimization) 김지은_20150522
OpenStack Neutron Dragonflow l3 SDNmeetup
Kernel vm#9 powerkvm-dist-20131208
Ryu with OpenFlow 1.3, Traffic Monitor
Pgcon2012 ori-20120224
OpenStack networking
resource on openstack
150326 openstack, glance 김지은
Ad

Similar to 150416 OpenStack Networking with Neutron Jieun, Kim (20)

PDF
오픈스택 멀티노드 설치 후기
PDF
Dragon flow and tricircle
PDF
오픈소스로 구축하는 클라우드 이야기
PDF
[오픈소스컨설팅] Open stack kilo with DVR_CEPH_v1.1
PDF
[OpenStack Days Korea 2016] Track2 - How to speed up OpenStack network with P...
PDF
서버 인프라를지탱하는기술(1.3,1.4)
PDF
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
PDF
Cisco VxLAN, LTRDCT-1223 Implementing VXLAN in a Data Center.pdf
PDF
3rd SDN Interest Group Seminar-Session 3 (130123)
PDF
2nd SDN Interest Group Seminar-Session3 (121218)
PPT
ACL - cisco 2811 router
PDF
[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹
PDF
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 가상 네트워크 (CB-Larva)
PDF
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
PDF
[OpenStack Days Korea 2016] Innovating OpenStack Network with SDN solution
PDF
Private cloud network architecture (2018)
PPTX
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
PDF
[OpenInfra Days Korea 2018] (Track 3) - SDN/NFV enabled Openstack Platform : ...
PDF
Open vSwitch 패킷 처리 구조
PPTX
Implementing remote procedure calls rev2
오픈스택 멀티노드 설치 후기
Dragon flow and tricircle
오픈소스로 구축하는 클라우드 이야기
[오픈소스컨설팅] Open stack kilo with DVR_CEPH_v1.1
[OpenStack Days Korea 2016] Track2 - How to speed up OpenStack network with P...
서버 인프라를지탱하는기술(1.3,1.4)
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
Cisco VxLAN, LTRDCT-1223 Implementing VXLAN in a Data Center.pdf
3rd SDN Interest Group Seminar-Session 3 (130123)
2nd SDN Interest Group Seminar-Session3 (121218)
ACL - cisco 2811 router
[MeetUp][1st] 오리뎅이의_쿠버네티스_네트워킹
Cloud-Barista 제5차 오픈 컨퍼런스 : 멀티클라우드 가상 네트워크 (CB-Larva)
NDC14 모바일 게임서비스를 위한 사설 클라우드 구축/운영 분투기
[OpenStack Days Korea 2016] Innovating OpenStack Network with SDN solution
Private cloud network architecture (2018)
클라우드 환경을 위한 네트워크 가상화와 NSX(기초편)
[OpenInfra Days Korea 2018] (Track 3) - SDN/NFV enabled Openstack Platform : ...
Open vSwitch 패킷 처리 구조
Implementing remote procedure calls rev2

150416 OpenStack Networking with Neutron Jieun, Kim

  • 1. [OpenStack] OpenStack Networking with Neutron 김지은 yeswldms@gmail.com
  • 2. What is Network NameSpace? • • 네트워크 관련된 시스템 자원의 isolation을 제공 각각의 Network Device, IP address, IP routing tables, /proc/net directory, port numbers …
  • 3. What is VLAN Tagging? • • 2계층 스위치 간 프레임 전달시 프레임이 어느 VLAN 소속인지 알려주는 VID 정보의 전달 방식 프레임 내에 관련정보를 tagging • 오픈스택 상에서 같은 Compute Node위에 있는 다른 인스턴스들간의 트래픽에 적용
  • 4. What is GRE? • GRE port in OVS OVS lays finishing of GRE packet encapsulation on networking stack. • 오픈스택 상에서 다른 Compute Node위에 있는 다른 인스턴스들간의 트래픽에 적용
  • 5. Network Guide • Network Connectivity Physical Hosts Management Network OpenStack Components 간 내부 통신 Data Network VM Data 간 통신, IP 할당 필요 API Network OpenStack API, Netwoking API 간 통신 제공 External Network VM의 외부연결
  • 6. Lab Test Controller node eth0 Network node eth0 Compute node x eth0 eth1 eth2 eth1 Management Network + API Network : 10.0.0.0/24(NAT) Data Network : 10.0.1.0/24External Network : 192.168.1.0/24 GW : 192.168.1.254
  • 7. Network Topology (demo) ext-net external network 192.168.1.0/24 demo-net tena nt1, internal net work 192.168.100.0/24 demo-net2 ten ant2, Internal n etwork 192.168.101.0/24 External Network 192.168.1.0/24 Tenant 1 Tenant 2
  • 8. Lab Test – Too Much Detail • VLAN & GRE Compute Node Network Node test1 test2 test3 test4 qbr x qbr x eth 0 eth 0 vnet0 vnet1 br-int br-tun qvb x qvb x qvb x qvb x qvo x qvo x qvo x qvo x br-int br- tun eth 1 eth 1 br-tun br-int br-ex vlan tag: 1 Data Network 10.0.1.0/24 eth 0 Configured by L2 Agent vlan tag: 2 br-int br- tun Configured by L2 Agent OVS Represents the actual bridge interface in the Network Stack Packet Conversion (VLAN translation) br-ex phy-br-ex int-br-ex patch -tun patch -int patch -tun patch -int gre x gre x dnsmasq tap x vla qg x qr x ntag: 1 qg y qr y vla tag: 2 dnsmasq tap y n Configured by L3 Agent NAT with iptables Configured by DHCP Agent Assigned to each subnet Configured by DHCP Agent Assigned to each subnet qrouter x qrouter y qdhcp x qdhcp y tunneling Configured by Nova Compute WAN Configured by neutron ovs plugin agent GRE Capsulation Packet Conversion (GRE mode Tunnel Interface) Configured by neutron ovs plugin agent Just vice versa. - qbr Quantum BRidge - qvb Quantum Virtual Bridge side - qvo Quantum Virtual OVS side eth 0 eth 0 Neutron OVS SG Chain vnet2 vnet3 qbr x qbr x
  • 9. Lab Test – Too Much Detail • VLAN & GRE – Compute Node Compute Node test1 test2 test3 test4 qbr x qbr x eth 0 eth 0 vnet0 vnet1 br-int br-tun qvb x qvb x qvb x qvb x qvo x qvo x qvo x qvo x br-int br- tun eth 1 vlan tag: 1 Data Network 10.0.1.0/24 vlan tag: 2 Packet Conversion (VLAN translation) patch -tun patch -int gre x tunneling Configured by Nova Compute Configured by neutron ovs plugin agent Packet Conversion (GRE mode Tunnel Interface) instance TAB device Linux bridge veth pair GRE Patch Port Physical NIC GRE port Virtual ETHernet pair, 가상 네트워크로 분리, Linux Bridge와 연결, Hypervisor가 br-int bridge와 연결 물리 NIC Vnet0은 Hypervisor내부에 있는 instance의 vNIC 와 연결 간단한 L2 스위칭 기능, 여러 물리/가상 NIC 연결 OVS Generic Routing Encapsulation, GRE tunneling port Open vSwitch, 가상 스위칭 기능 동작 eth 0 eth 0 Neutron OVS SG Chain vnet2 vnet3 qbr x qbr x Configured by L2 Agent Gre 터널링 포트, VLAN과는 따로 포트가 존재해야 함(TBC)
  • 10. Lab Test – Too Much Detail • VLAN & GRE – Compute Node Compute Node test1 test2 test3 test4 qbr x qbr x eth 0 eth 0 vnet0 vnet1 br-int br-tun qvb x qvb x qvb x qvb x qvo x qvo x qvo x qvo x br-int br- tun eth 1 vlan tag: 1 Data Network 10.0.1.0/24 vlan tag: 2 Packet Conversion (VLAN translation) patch -tun patch -int gre x tunneling Configured by Nova Compute Configured by neutron ovs plugin agent Packet Conversion (GRE mode Tunnel Interface) eth 0 eth 0 Neutron OVS SG Chain vnet2 vnet3 qbr x qbr x Configured by L2 Agent Neutron OVS SG chain : managed Neutron Security Groups 인스턴스와의 inbound/outbound 트래픽을 컨트롤 Security Groups - iptables, Linux Bridge : OpenStack은 SG를 사용하기 위해 iptables rules를 사용 : 현재 OVS는 iptables rule이 적용되지 않음 : TAB Device와 Linux Bridge를 거치게하여, iptables 를 사용하도록 하는 방법으로 보안을 강화 Linux Bridge : 방화벽 브릿지 : firewall rules와 호환 br-int(OVS) : 통합브릿지 : 방화벽 브릿지에 등록(qvo XXX) : VLAN 환경에서의 트래픽의 tagging/untagging 수행 br-tun(OVS) : 터널브릿지 : br-int(통합브릿지)로부터의 VLAN 태깅된 트래픽을 GRE 터널로 번역 : rules – vlan id와 tunneling id의 트래픽 맵핑 수행
  • 11. Lab Test – Too Much Detail • VLAN & GRE – Network Node Network Node eth 1 br-tun br-int br-ex Data Network 10.0.1.0/24 eth 0 br-int br- tun Configured by L2 Agent br-ex phy-br-ex int-br-ex patch -tun patch -int gre x dnsmasq tap x vla qg x qr x ntag: 1 qg y qr y vla tag: 2 dnsmasq tap y n Configured by L3 Agent NAT with iptables Configured by DHCP Agent Assigned to each subnet Configured by DHCP Agent Assigned to each subnet qrouter x qrouter y qdhcp x qdhcp y tunneling WAN Configured by neutron ovs plugin agent Just vice versa. dnsmasq Internal Port veth pair GRE Patch Port Physical NIC GRE port Virtual ETHernet pair, 가상 네트워크로 분리, Linux Bridge와 연결, Hypervisor가 br-int bridge와 연결 물리 NIC OVS bridge’s internal ports OVS ??? 정확한 기능이 뭐고, br-int 및 br-tun과 다른점은? Generic Routing Encapsulation, GRE tunneling port Open vSwitch, 가상 스위칭 기능 동작 Port에 붙어서 DHCP 서비스 제공 Network Namespace, qrouter ~ : connection to the outside(NAT) qdhcp ~ : dhcp service namespace
  • 12. Lab Test – Too Much Detail Network Node eth 1 br-tun br-int br-ex Data Network 10.0.1.0/24 eth 0 br-int br- tun Configured by L2 Agent br-ex phy-br-ex int-br-ex patch -tun patch -int gre x dnsmasq tap x vla qg x qr x ntag: 1 qg y qr y vla tag: 2 dnsmasq tap y n Configured by L3 Agent NAT with iptables Configured by DHCP Agent Assigned to each subnet Configured by DHCP Agent Assigned to each subnet qrouter x qrouter y qdhcp x qdhcp y tunneling WAN Configured by neutron ovs plugin agent Just vice versa. qDHCP namespace : DHCP 서버는 네트워크 namespace안에서 dnsmasq로 동작 : Network namespace는 호스트와는 별개의 네트워크 스택 (interfaces, routing tables, iptables rules)을 가질 수 있는 리눅스 커널의 기능 : dnsmasq qRouter namespace : Neutron router는 라우팅과 서브넷사이에서 수행되는 라우팅테 이블, iptables에 설정된 network namespace : 라우터 기능을 수행 : Netfilter nat table - namespace내부의 라우터에 존재 인스턴스들의 floaing ip를 책임진다 External traffic : 외부로의 트래픽은 네임스페이스의 qg인터페이스를 경유하는 br-ex를 경유 : int-br-ex port(br-int)와 phy-br-ex port(br-ex)를 통해 qg를 거 치지 않고 바로 나갈 수 있음
  • 13. Lab Test – Too Much Detail • VLAN & GRE – Network Node NAT to host address : 만약 br-ex에게 public cloud를 할당하기 위해 게이트웨이 어드레스를 설정한다면(NAT를 사용하고싶으면) 그러면 네트워크 노드의 아이피를 통해 “external”트래픽을 사용할 수 있는 포워딩과 NAT룰을 생성할 수 있다. Direct network connction : 바로 floating ip대역에 다이렉트로 외부 네트웍을 사용할거라면 # ip addr add 172.24.4.225/28 dev br-ex # ovs-vsctl add-port br-ex eth2
  • 14. Lab Test – Too Much Detail Controller Node > used demo tenant > External Network : ext-net > Private Network : demo-net, demo-net2 > Instance : test1, test2, test3, test4
  • 15. Lab Test – Too Much Detail Compute Node - Bridges & Ports
  • 16. Lab Test – Too Much Detail Network Node - Bridges & Ports
  • 17. Lab Test – Too Much Detail Network Node – Network Namespace(qRouter, qDHCP) Compute Node – br-tun(터널브릿지의 table)
  • 18. Lab Test – Too Much Detail Network Node – qDHCP namespace interface
  • 19. Lab Test – Too Much Detail Network Node – qRouter namespace interface
  • 20. Lab Test – Too Much Detail • VLAN & GRE – Network Node Network Node - qRouter namespace iptables