Menu Close
Settings Close

Language and Page Formatting Options

4.7. VLAN 프로바이더 네트워크 패킷 흐름은 어떻게 작동합니까?

이 섹션에서는 VLAN 프로바이더 네트워크 구성이 있는 인스턴스와의 트래픽 흐름 방법을 자세히 설명합니다.

VLAN 공급자 네트워크에서 나가는 트래픽 흐름

다음 다이어그램에서는 인스턴스를 벗어나고 VLAN 프로바이더 외부 네트워크에 직접 도착하는 트래픽의 패킷 흐름을 설명합니다. 이 예에서는 두 개의 VLAN 네트워크(171 및 172)에 연결된 두 개의 인스턴스를 사용합니다. br-ex 를 구성한 후 물리적 인터페이스를 추가하고 Compute 노드에 인스턴스를 생성합니다. 결과적으로 생성된 인터페이스 및 브리지 구성은 다음 다이어그램의 구성과 유사합니다.

VLAN 공급자 네트워크의 네트워크 트래픽 - 발신
  1. 인스턴스의 eth0 인터페이스를 나가는 패킷은 인스턴스에 연결된 linux bridge qbr-xx 에 도달합니다.
  2. qbr-xx 는 veth 쌍 qvbxx <ECDHE qvoxxx 를 사용하여 br-int 에 연결됩니다.
  3. qvbxx 는 linux bridge qbr-xx 에 연결되고 qvoxx 는 Open vSwitch 브리지 br-int 에 연결됩니다.

Linux 브리지의 qbr-xx 구성 예.

이 예에서는 2개의 인스턴스와 2개의 해당 linux 브리지를 제공합니다.

# brctl show
bridge name	bridge id		STP enabled	interfaces
qbr84878b78-63		8000.e6b3df9451e0	no		qvb84878b78-63
							tap84878b78-63

qbr86257b61-5d		8000.3a3c888eeae6	no		qvb86257b61-5d
							tap86257b61-5d

br-intqvoxx 구성 :

                options: {peer=phy-br-ex}
        Port "qvo86257b61-5d"
            tag: 3

            Interface "qvo86257b61-5d"
        Port "qvo84878b78-63"
            tag: 2
            Interface "qvo84878b78-63"

  • qvoxx 는 VLAN 프로바이더 네트워크와 연결된 내부 VLAN 태그로 태그됩니다. 이 예에서 내부 VLAN 태그 2는 VLAN 프로바이더 네트워크 provider-171 과 연결되며, VLAN 태그 3은 VLAN 프로바이더 네트워크 provider-172 와 연결됩니다. 패킷이 qvoxx 에 도달하면 이 VLAN 태그가 패킷 헤더에 추가됩니다.
  • 그런 다음 patch-peer int -br-ex <❏ phy-br-ex 를 사용하여 패킷이 br -ex OVS 브리지로 이동합니다. br-int의 patch- peer 예 :
    Bridge br-int
        fail_mode: secure
       Port int-br-ex
            Interface int-br-ex
                type: patch
                options: {peer=phy-br-ex}

br-ex 의 패치 피어 구성 예 :

    Bridge br-ex
        Port phy-br-ex
            Interface phy-br-ex
                type: patch
                options: {peer=int-br-ex}
        Port br-ex
            Interface br-ex
                type: internal
  • 이 패킷이 br -ex에서 phy-br -ex 에 도달하면 br-ex 내부의 OVS 흐름이 내부 VLAN 태그를 VLAN 프로바이더 네트워크와 연결된 실제 VLAN 태그로 교체합니다.

다음 명령의 출력은 phy-br-ex 의 포트 번호가 4 임을 보여줍니다.

# ovs-ofctl show br-ex
 4(phy-br-ex): addr:32:e7:a1:6b:90:3e
     config:     0
     state:      0
     speed: 0 Mbps now, 0 Mbps max

다음 명령은 VLAN 태그 2(dl_vlan=2)가있는 phy-br-ex(in_port=4)에 도착하는 패킷을 보여줍니다. Open vSwitch는 VLAN 태그를 171(actions=mod_vlan_vid:171,NORMAL)으로 교체하고 패킷을 실제 인터페이스로 전달합니다. 또한 명령은 VLAN 태그 3(dl_vlan=3)이있는 phy-br-ex(in_port=4)에 도착하는 모든 패킷도 표시합니다. Open vSwitch는 VLAN 태그를 172(actions=mod_vlan_vid:172,NORMAL)로 교체하고 패킷을 실제 인터페이스로 전달합니다. neutron-openvswitch-agent는 이러한 규칙을 추가합니다.

# ovs-ofctl dump-flows br-ex
NXST_FLOW reply (xid=0x4):
NXST_FLOW reply (xid=0x4):
 cookie=0x0, duration=6527.527s, table=0, n_packets=29211, n_bytes=2725576, idle_age=0, priority=1 actions=NORMAL
 cookie=0x0, duration=2939.172s, table=0, n_packets=117, n_bytes=8296, idle_age=58, priority=4,in_port=4,dl_vlan=3 actions=mod_vlan_vid:172,NORMAL
 cookie=0x0, duration=6111.389s, table=0, n_packets=145, n_bytes=9368, idle_age=98, priority=4,in_port=4,dl_vlan=2 actions=mod_vlan_vid:171,NORMAL
 cookie=0x0, duration=6526.675s, table=0, n_packets=82, n_bytes=6700, idle_age=2462, priority=2,in_port=4 actions=drop
  • 그런 다음 이 패킷은 물리적 인터페이스 eth1 로 전달됩니다.

VLAN 공급자 네트워크에서 들어오는 트래픽 흐름

다음 예제 흐름은 프로바이더 네트워크 provider-171에 VLAN 태그 2를 사용하고 프로바이더 네트워크 provider-172의 VLAN 태그 3을 사용하여 계산 노드에서 테스트되었습니다. 흐름에서는 통합 브리지 br-int에서 18 포트를 사용합니다.

VLAN 프로바이더 네트워크에는 다른 구성이 필요할 수 있습니다. 또한 네트워크의 구성 요구 사항은 두 개의 서로 다른 컴퓨팅 노드마다 다를 수 있습니다.

다음 명령의 출력은 int-br-ex 를 포트 번호 18과 함께 표시합니다.

# ovs-ofctl show br-int
 18(int-br-ex): addr:fe:b7:cb:03:c5:c1
     config:     0
     state:      0
     speed: 0 Mbps now, 0 Mbps max

다음 명령의 출력은 br-int의 흐름 규칙을 보여줍니다.

# ovs-ofctl dump-flows br-int
NXST_FLOW reply (xid=0x4):
 cookie=0x0, duration=6770.572s, table=0, n_packets=1239, n_bytes=127795, idle_age=106, priority=1 actions=NORMAL

 cookie=0x0, duration=3181.679s, table=0, n_packets=2605, n_bytes=246456, idle_age=0,
 priority=3,in_port=18,dl_vlan=172 actions=mod_vlan_vid:3,NORMAL

 cookie=0x0, duration=6353.898s, table=0, n_packets=5077, n_bytes=482582, idle_age=0,
 priority=3,in_port=18,dl_vlan=171 actions=mod_vlan_vid:2,NORMAL

 cookie=0x0, duration=6769.391s, table=0, n_packets=22301, n_bytes=2013101, idle_age=0, priority=2,in_port=18 actions=drop

 cookie=0x0, duration=6770.463s, table=23, n_packets=0, n_bytes=0, idle_age=6770, priority=0 actions=drop

수신 흐름 예

이 예제에서는 다음 br-int OVS 흐름을 보여줍니다.

cookie=0x0, duration=3181.679s, table=0, n_packets=2605, n_bytes=246456, idle_age=0,
priority=3,in_port=18,dl_vlan=172 actions=mod_vlan_vid:3,NORMAL
  • 외부 네트워크에서 VLAN 태그 172가 있는 패킷은 물리적 노드의 eth1 을 통해 br-ex 브리지에 도달합니다.
  • 패킷은 patch-peer phy -br-ex <-> int-br-ex를 통해 br-int 로 이동합니다.
  • 패킷은 흐름의 기준(in_port=18,dl_vlan=172)과 일치합니다.
  • 흐름 작업(actions=mod_vlan_vid:3,NORMAL)은 VLAN 태그 172를 내부 VLAN 태그 3으로 교체하고 패킷을 일반 계층 2 프로세싱으로 인스턴스에 전달합니다.