VXLAN 2번째 정리입니다.

뭔가 아직 정리가 되지 않은 듯하여 포스팅을 미루려 하였으나..

미루기만하면... 계속 미루기만 할 것 같아서... 우선 先 포스팅... 後 업데이트로 갑니다.

 


 

 

VXLAN이 필요한 배경


1.  Limitations imposed by Spanning Tree & VLAN Ranges

     - 현재의 Layer 2 Network는 중복된 경로에 대해서 Loop를 예방하기 위해 STP를 사용한다.

     - STP를 사용하게 되면, Blocking Point가 생기면서 모든 경로에 대해서 다 사용할 수가 없게 된다.

       따라서, STP 모델은 Multipathing에서의 Resiliency로써는 적합하지 않다.
     - 최근에는 TRILL이나 SPB로써 STP의 이러한 제약사항을 해소하도록 제안되고 있다.

       이러한 기술은 동일한 Layer 3 Network에서의 Rack간의 서버들의 통신에서는 STP의 제약사항을 해결하지만,

       Inter-VM 통신을 위한 Layer 2 Model로는 적합하지 않다.
     - VLAN은 Broadcast Domain을 나누는 역할을 하는 데, 12bit로 VLAN을 구분하게 되며 이는 총 4094개의 VLAN을 생성하여

       사용할 수 있다. 하지만, 가상화가 채택되면서 보다 많은 VLAN 사용이 필요로 하게 된다.


 

2. Multitenant Environments
     - Cloud  Computing은 Multi-tenant 환경을 위해 탄력적인 Resource의 Provisioning을 포함한다. 
     - 대표적인 Cloud Computing의 예는 Public Cloud 인데, Cloud Service 사업자는 이러한 탄력적인 서비스를 제공하여

       동일한 물리적인 인프라에서 다수의 고객/Tenants을 수용하게 된다. 
     - Tenant의 독립적인 Network Traffic 분리는 Layer 2 혹은 Layer 3 Network를 통해 가능하다.
     - Layer 2 Network VLAN을 통해서 Traffic을 분리할 수 있는 , 이를 통해 Tenant간에 구분이 가능하다.
     - Cloud Provider은 다수의 Tenant를 구분해야 하기 때문에, 기존 VLAN에서의 최대 값인 4094개는 서비스를 제공하는 데,

       부족할 수 있다. 더욱이 하나의 Tenant(Customer)에서 다수의 VLAN이 필요한 경우도 발생하게 된다. 

3. Inadequate Table Sizes at ToR Switch
    - 오늘날 가상화 환경에서는 기존의 Server와 연결된 Link에 대해서 하나의 Mac-Address 학습했던 것과는 달리 각 개별 VM 단위로

      Mac-Address를 학습하게 된다.

   - 이는 VM과 다른 물리적인 서버로 통신하기 위해 필요로 하다. 일반적인 ToR Switch는 24개 혹은 48개의 서버에 연결될 수 있고,

     이러한 랙들로 DataCenter가 구성되게 된다.

   - 그래서 각각의 ToR Switch는 VM들이 다수의 서버들과 통신하기 위해 Mac-Address Table을 유지해야 한다.

     이러한 환경은 기존의 비가상화 환경보다 더 많은 수의 Table용량이 필요로 하게 된다.

 

 

 

VXLAN
  - VXLAN은 Layer 2와 Multi-tenant 환경에 VM동작하는 Layer 3 DataCenter Network 인프라에서 위의 요구사항들을 해결한다.     -  - VXLAN은 기존 Network 인프라에서 Layer 2 Network를 확장하도록 제공해준다. 
  - 즉, VXLAN은 Layer 3를 통한 Layer 2의 Overlay 방식이다. 각 Overlay를 VXLAN segment라고 하며,

  - 동일한 VXLAN segment내의 Device간에만 통신이 가능하게 된다.

  - 각 VXLAN segment는 24bit의 Segment ID라는 식별자를 통해서 식별되며, 이를 VXLAN Network Identifier(VNI)라고 한다.

  - 이 VNI는 동일한 Domain 내에서 최대 1600만개의 VXLAN Segment를 가질 수 있다.
  - VNI는 개별 VM이 만든 내부 MAC frame의 범위를 식별한다. 

  - 따라서, VNI로 구분된 Segment간에는 서로 MAC Address가 중복이 되어도 문제가 없다. 
  - VNI 정보는 개별 VM이 만든 내부 MAC frame을 캡슐화한 Outer header에 있다.

  - 이러한 캡슐화 때문에, VXLAN을 Tunnel 방식이라고 할 수 있다.

  - 이 Tunnel은 Stateless이며, 각 Frame는 일련의 규칙에 의해서 캡슐화된다.
  - Tunnel의 End-Point(종단/VXLAn Tunnel End Point-VTEP)은 VM을 호스팅하는 Server의 Hypervisor내에서 위치한다.

    (Hypervisor이외에 물리적인 별도의 스위치에서 VTEP역할을 할 수도 있다.) 

  - 따라서 VNI와 VXLAN은 tunnel/outer header 캡슐화 정보이기 때문에 VTEP에서만 알고 있으며, VM에서는 이 정보를

    알 수 없다.                                                                              

 

 

 

VXLAN Deployment Scenarios

 

 VXLAN은 일반적으로 여러 랙의 흩어져있는 가상화 Host들이 있는 Data Center에 Deploy되어 있다.

 각각의 랙은 서로 다른 Layer 3 Network에 있거나 혹은 하나의  Layer 2 Network에 있을 수 있다.

 VXLAN Segments/overlay network은 이러한 Layer 3 혹은 Layer 2 Network의 상단에 놓여있게 된다.

 

 다음의 VXLAN의 Deployment 시나리오를 위한 가상의 구성이다.

 2대의 가상화 서버가 Layer 3 인프라를 통해서 연결되어 있다. 이 서버는 동일 랙 일 수도 있으며, 혹은 서로 다른 랙이거나

 다른 데이터센터에 각각 구축되어 있을 수 있으나 동일한 관리 Domain내에 있다.

 가상화 서버 내의 4개의 VM은 4개의 VXLAN Overlay Network로 구성되며 22, 34, 74, 98의 VNI 값을 가지고 있다.

 

 

 

하나의 Deployment 시나리오는 Tunnel 종단 지점의 서버에서 VXLAN을 이해할 수 있는, 즉 VTEP 기능을 수행 할 수 있는 경우이다.

 

 또 다른 시나리오는 VXLAN Overlay network에 있는 Node가 기존 VLAN기반의 Legacy Network와 통신하고자 하는 경우이다.

이러한 Node는 Physical Node이거나 혹은 VM일 수 있다. 이 둘 간의 통신을 하기 위해서 Network에 VXLAN과 Non-VXLAN 사이의 Traffic을 전송하는 VXLAN Gateway가 필요하다.

 

다음은 VXLAN과 Non-VXLAN간의 통신을 하는 경우에 대한 것이다.

 

 VXLAN 연결 Interface에 들어온 Frame을 Gateway에서는 VXLAN header을 제거하고, Inner Ethernet Frame의 Destination Mac Address로 Physical Port로 전송을 하게 된다. 

명시적으로 Non-VXLAN interface로 전달하기 위한 설정이 되어있지 않으면, Inner VLAN ID와 함께 디캡슐화된 Frame은 폐기된다.

 

 반대로, Non-VXLAN Interface로부터 들어온 Frame은 내부의 VLAN ID를 기반으로 특정 VXLAN Overlay network로 Mapping된다.

이 경우에 명시적으로  캡슐화된 VXLAN Frame으로 전달하는 설정을 하지 않으며, VLAN ID는 VXLAN으로 캡술화 되기 전에 제거된다.

 

 VXLAN Tunnel 종단 기능을 하는 Gateway들은 ToR/Access Switch 혹은 Core 심지어 WAN edge Device가 될 수 있다.

WAN Edge Device가 이러한 Gateway 역할을 하는 경우에 Hybrid Cloud 환경에서 VXLAN Tunnel 종단인 Provider Edge Route를 포함할 수 있다.  이러한 모든 경우에 Gateway 기눙은 Software나 Hardware 모두 구현될 수 있다.

 

 

 

Inner VLAN Tag 처리

 VTEP와 VXLAN Gateway는 Inner VLAN Tag 처리를 위하여 다음과 같이 해야 한다.

 - 설정이 되어 있지 않으면, 디캡슐화된 VXLAN Frame은 Inner VLAN Tag과 함께 Dircard 된다.

 - 설정이 되어 있지 않으면, 캡슐화 시에 Tunnel Packet에 VTEP는 Inner VLAN tag를 포함하지 않는다.

 - VLAN-tagged Packet이 VXLAN Tunnel을 해야 하는 경우에 별도의 설정이 되어 있지 않으면,

   VTEP는 VLAN Tag를 제거하고 캡슐화한다.

 

 

 

 

 

 

 

Posted by 네떡지기

예전에 OTV의 Control Plane 이후의 이번에는 Data Plane에 대한 내용입니다.

정리하다보니, 예전에 정리된 내용과 비슷한 것 같네요.

Unicast와 정말 간략한 Broadcast 정리만 먼저 올리고, Multicast에 대한 부분은 다음으로 미룹니다.

예전에도 그랬지만, 차례대로라기 보다는 제가 정리하게 된 순서대로 올리게 됩니다. ^^;

혹시 수정해야 하는 부분이나 잘못된 점이 있다면 알려주시면 감사하겠습니다.

 


 

 

OTV Data Plane – Unicast Traffic

• Unicast Trafrfic 전송 순서

   1. Aggregation LayerOTV Edge Device로부터 Layer 2 Frame전송받으면, 전통적인 L2 Lookup을 수행한다.

     이 때, 원격 OTV SiteMAC 주소에 대한 Mac-address TableLocal Ethernet 혹은 원격지의 IP가 아닌 Overlay Interface이다..

 

NX-OS# sh mac address-table
Legend:
        * - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC
        age - seconds since last seen,+ - primary entry using vPC Peer-Link
   VLAN     MAC Address      Type      age     Secure NTFY Ports/SWID.SSID.LID
---------+-----------------+--------+---------+------+----+------------------
G     -    0024.f714.c242    static       -       F    F  sup-eth1(R)
* 100      000d.ecb2.5088    dynamic   450        F    F  Eth2/3
O 100      000d.ecb2.5089    dynamic   0          F    F  Overlay1
O 100      0050.568d.1520    dynamic   0          F    F  Overlay1 

 

  2. OTV Edge DeviceOriginal Layer 2 Frame을 캡슐화한다.

     외부 Header Source IPJoin InterfaceIP로 설정하고, Destination IPRemote Edge DeviceJoin Interface로 설정한다.

 

 3. OTV로 캡슐화된 Frame(일반 Unicast IP Packet)Transport infrastructur를 거쳐서 remote OTV Edge Device로 전송된다.

 

  4. Remote OTV Edge Device디캡슐화 하여, Original Layer 2 Packet을 추출한다.

 

  5. Edge DeviceOriginal Layer 2 Packet의 정보로 L2 Lookup을 수행하여 물리적인 Interfrace를 통해 최종 목적지로 전달한다.

 

Ehternet FrameOTV로 캡슐화 된 후에 전송이 될 때에는 42Bytes의 전체 MTU를 증가시키게 된다.

  하지만, OTV Edge Device‘Don’t Fragment’(DF) bit set하게 되고, PMTUD 옵션을 지원하지 않는다. Fragmentation

  Reassembly도  Nexus 7000에서는 불가하기 떄문에 OTV Edge Device 사이의 모든 물리적 Interfrace에서 MTU 크기를 증가시키는

  것이 좋다.     

                                                                                                    ※ ASR 1000에서는 Packet Fragmention이 가능하다.

 

 

 

다음은 Local Site /  Remote Site 에서의 Unicast 전송에 대한 참고 그림이다.

 

○ Local Site

 

○ Remote Site

 

 

 

OTV Data Plane – Broadcast Traffic

• Multicast 환경 : OTV control protocol에서 이미 사용 하는 것과 동일한ASM multicast group 이용하여 Remote OTV Edge에

                         Broadcast를 전송한다.

 

• Unicast 환경 : OTV Device에서 Head-end 복제를 수행하고 이를 OTV unicast-only list에 있는 remote OTV edge device들로

                      전송한다.

 

Posted by 네떡지기

Last Update(2013.12.20)


 몇 달여만에 다시 정리를 하게되었습니다.

 이런 저런 일들과 마땅히 정리할 수 있는 여건이 되지 않아서.. 정말 오랜만에 정리를 해서 올립니다.

 몇 달만에 본 내용이라 다시 처음부터 보면서 하느라.. 제대로 맞는지 어떤지 모르겠습니다.

 

 이번 내용은 실제 OTV를 구축하기 위한 기본 설정에 관련한 내용입니다.

 부족한 내용이지만, 도움이 되시길 바라며 혹시 잘못되어 수정이 필요한 내용이 있으면 덧글 부탁드립니다.

  

 


 

OTV Mode

 

       • OTV에서 L2 Adjacency는 이전에 살펴본 것 처럼 2가지 Mode로 원격지 사이트와의 overlay network를 통해서 구성한다.

     1. Multicast Group을 통하여 OTV Hello message로 OTV Site 간의 자동 확인             [ Multicast Mode ]            

     2. OTV adjacency Server를 구성하고, 다른 OTV Client들의 모든 List를 관리 및 배포.   [ Unicast Mode ] 

 

      •  OTV를  Multicast 방식으로 구성하게 되면, 다수의 OTV 사이트 구성 시에 보다 유연하고 적은 Overhead를 가지게 된다.

    하지만, 2~3개의 소수의 Site를 OTV를 구성하는 경우에는 Unicast로 구성하여도 기능상의 이슈 없이 동작이 가능하다.

    그리고 Multicast를 구성하고자 할 때에는 중간의 Transport Network에서 Multicast를 지원해야 하나, ISP에서 이를 지원

   하지 않는 경우에 Unicast를 사용할 수 밖에 없게 된다.

   ※ Nexus 7000 / ASR 1000은 Multicast/Unicast 모두 지원.

      단, Unicast는 Nexus 7000 NX-OS 5.2(1) 이상 / CSR 1000 IOS-XE 3.9 이상 에서 지원된다.

 

 


OTV Configuration

 

     • OTV에서 Multicast Mode와 Unicast Mode로 구성하는 간단한 설정 확인

 

 

 OTV 설정 구성

 

 

 

Multicast Mode Simple Configuration

 

 

 ▷ 기본 환경 구성

 

[ ISP ]

 ISP(config)# int gi 1/1

 ISP(config-if)# ip address 10.12.1.2 255.255.255.0

 ISP(config-if)# ip pim sparse-mode                            

 ISP(config-if)# ip igmp version 3

 ISP(config-if)# no shut

 ISP(config)# int gi 2/1

 ISP(config-if)# ip address 10.12.2.2 255.255.255.0

 ISP(config-if)# ip pim sparse-mode

 ISP(config-if)# ip igmp version 3

 ISP(config-if)# no shut

 ISP(config)# router ospf 1

 ISP(config-router)# network 10.12.1.0 0.0.0.255 area 0

 ISP(config-router)# network 10.12.2.0 0.0.0.255 area 0 

 

 [ NX_1 ]

 NX_1(config)# router ospf 1

 NX_1(config-if)# int ether 1/1

 NX_1(config-if)# ip address 10.12.1.1 255.255.255.0

 NX_1(config-if)# ip router ospf 1 area 0

 NX_1(config-if)# ip igmp version 3

 NX_1(config-if)# no shut

 

[ NX_2 ]

 NX_2(config)# router ospf 1

 NX_2(config-if)# int ether 1/1

 NX_2(config-if)# ip address 10.12.2.1 255.255.255.0

 NX_2(config-if)# ip router ospf 1 area 0

 NX_2(config-if)# ip igmp version 3

 NX_2(config-if)# no shut

 

  - 여기까지 구성을 완료하게 되면, NX-1 Site와 NX-2 Site 간의 통신을 위한 기본 네트워크 구성을 마치게 된다.

    NX-1에서 NX-2까지 통신도 정상적으로 된다.

 

 

  ▷ OTV 설정

 

[ NX_1 ]

 NX_1(config)# feature otv

 

 NX_1(config)# vlan 111

 NX_1(config)# otv site-vlan 111

 NX_1(config)# otv site-identifier 1.1.1

 

 NX_1(config)# interface Ethernet2/1

 NX_1(config-if)# switchport

 NX_1(config-if)# switchport mode access

 NX_1(config-if)# switchport access vlan 111

 NX_1(config-if)# no shutdown

 

 NX_1(config)# vlan 100

 NX_1(config)# interface Ethernet 2/3

 NX_1(config-if)# switchport

 NX_1(config-if)# switchport mode access

 NX_1(config-if)# switchport access vlan 100

 NX_1(config-if)# no shutdown

 

 NX_1(config)# interface overlay 1

 NX_1(config-if-overlay)# otv control-group 239.1.1.1

 NX_1(config-if-overlay)# otv data-group 232.1.1.0/28

 NX_1(config-if-overlay)# otv join-interface ethernet 1/1

   OTV needs join interfaces to be configured for IGMP version 3

 NX_1(config-if-overlay)# otv extend-vlan 100

 NX_1(config-if-overlay)# no shut

 

 

[ NX_2 ]

 NX_2(config)# feature otv

 

 NX_2(config)# vlan 112

 NX_2(config)# otv site-vlan 112

 NX_2(config)# otv site-identifier 1.1.2

 

 NX_2(config)# interface Ethernet2/1

 NX_2(config-if)# switchport

 NX_2(config-if)# switchport mode access

 NX_2(config-if)# switchport access vlan 112

 NX_2(config-if)# no shutdown

 

 NX_2(config)# vlan 100

 NX_2(config)# interface Ethernet 2/3

 NX_2(config-if)# switchport

 NX_2(config-if)# switchport mode access

 NX_2(config-if)# switchport access vlan 100

 NX_2(config-if)# no shutdown

 

 NX_2(config)# interface overlay 1

 NX_2(config-if-overlay)# otv control-group 239.1.1.1

 NX_2(config-if-overlay)# otv data-group 232.1.1.0/28

 NX_2(config-if-overlay)# otv join-interface ethernet 1/1

      OTV needs join interfaces to be configured for IGMP version 3

 NX_2(config-if-overlay)# otv extend-vlan 100

 NX_2(config-if-overlay)# no shut

 

  - OTV 양쪽 Site의 설정을 위와 같이 마치고 나면, OTV의 기본 구성이 완료된다.

    구성이 완료된 상태에서는 다음과 같은 결과값을 확인할 수 있다.

  ※ 단, 여기에서는 Site VLAN과 Extened VLAN으로 연결된 Interface의 반대편 장비는 연결되어 정상적으로 Up된 상태로 가정.

 

 

 

NX_1# show otv adjacency

 Overlay Adjacency database

 Overlay-Interface Overlay1  :

 Hostname                         System-ID         Dest Addr       Up Time   State

 NX_2                               0022.5579.f742    10.12.2.1        00:00:09   UP  

  - OTV Adjacency 정보를 볼 수 있다.

 

 

NX_1# sh otv vlan 100 detail

 OTV Extended VLANs and Edge Device State Information (* - AED)

 Legend: F - Forwarding B - Blocked

 VLAN   Auth. Edge Device                     Vlan State       Overlay

 ----   -----------------------------------   ----------            -------

  100*  NX_1                                        active              Overlay1

        MRD packets originated: 125 

 

 

 

[정상 상태]

 NX_1# show otv overlay 1

 OTV Overlay Information

 Site Identifier 0001.0001.0001

 Overlay interface Overlay1

  VPN name            : Overlay1

  VPN state           : UP

   Extended vlans      : 100 (Total:1)

  Control group       : 239.1.1.1

  Data group range(s) : 232.1.1.0/28

  Join interface(s)   : Eth1/1 (10.12.1.1)

  Site vlan           : 111 (up)

  AED-Capable         :  YES

  Capability          : Multicast-Reachable 

  - Overlay Interface의 전체적인 정보로, Extended VLAN / Multicast Group / Join interface / Site vlan등의 전반적인

    구성 정보를 볼 수 있다.

 

 

 NX_1# sh mac address-table

 Legend:

         * - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC

         age - seconds since last seen,+ - primary entry using vPC Peer-Link

    VLAN     MAC Address      Type      age     Secure NTFY Ports/SWID.SSID.LID

 ---------+-----------------+--------+---------+------+----+------------------

 G     -    0024.f714.c242    static       -       F    F  sup-eth1(R)

 * 100      000d.ecb2.5088    dynamic   450        F    F  Eth2/3

 O 100      000d.ecb2.5089    dynamic   0          F    F  Overlay1

 O 100      0050.568d.1520    dynamic   0          F    F  Overlay1

 * 100      0050.568d.1a06    dynamic   180        F    F  Eth2/3

 * 100      0050.568d.4aa6    dynamic   90         F    F  Eth2/3

 * 100      0050.568d.6583    dynamic   30         F    F  Eth2/3 

  - OTV가 정상적으로 구성된 상태에서 Overlay Interface를 통한 MAC Address Table이 만들어지게 된다.

 

 

[Extended VLAN 미활성화 시에]

 NX_1# show otv overlay 1

 OTV Overlay Information

 Site Identifier 0001.0001.0001

 Overlay interface Overlay1

  VPN name            : Overlay1

  VPN state           : UP

  Extended vlans      : 100 (Total:1)

  Control group       : 239.1.1.1

  Data group range(s) : 232.1.1.0/28

  Join interface(s)   : Eth1/1 (10.12.1.1)

  Site vlan           : 111 (up)

  AED-Capable         : No (No extended vlan is operationally up)

  Capability          : Multicast-Reachable 

- Extended VLAN중에 활성화 된 Interface가 없으면, AED 상태가 'No'로 표기되며 () 안에 사유가 표기된다.

 

 

[Site  VLAN 활성화 시에]

 

 NX_1# show otv overlay 1

 OTV Overlay Information

 Site Identifier 0001.0001.0001

 Overlay interface Overlay1

  VPN name            : Overlay1

  VPN state           : UP

  Extended vlans      : 100 (Total:1)

  Control group       : 239.1.1.1

  Data group range(s) : 232.1.1.0/28

  Join interface(s)   : Eth1/1 (10.12.1.1)

  Site vlan           : 111 (down)

  AED-Capable          No (Site-VLAN is Down)

  Capability          : Multicast-Reachable

-  Site VLAN중에 활성화 된 Interface가 없으면, AED 상태가 'No'로 표기되며 () 안에 사유가 표기된다.

 

 

[Site VLAN / Extend VLAN 비 활성화 시에]

 NX_1# sh mac address-table

 Legend:

         * - primary entry, G - Gateway MAC, (R) - Routed MAC, O - Overlay MAC

         age - seconds since last seen,+ - primary entry using vPC Peer-Link

    VLAN     MAC Address      Type      age     Secure NTFY Ports/SWID.SSID.LID

 ---------+-----------------+--------+---------+------+----+------------------

 G     -    0024.f714.c242    static       -       F    F  sup-eth1(R)

 * 100      000d.ecb2.5088    dynamic   450        F    F  Eth2/3

 * 100      0050.568d.1a06    dynamic   180        F    F  Eth2/3

 * 100      0050.568d.4aa6    dynamic   90         F    F  Eth2/3

 * 100      0050.568d.6583    dynamic   30         F    F  Eth2/3

 

 NX_1# show otv adjacency

 Overlay Adjacency database

 Overlay-Interface Overlay1  :

 Hostname                         System-ID         Dest Addr       Up Time   State

 NX_2                               0022.5579.f742    10.12.2.1        00:21:25   UP  

 

-  Extended VLAN이나 Site VLAN 중의 활성화 된 Interface가 없으면 Overlay Interface MAC Addess Table이 사라진다.

-  하지만, OTV Adjacency는 그대로 Up 상태를 유지하게 된다.

 

 

Unicast Mode Simple Configuration

 

[ NX_1 ]

 NX_1(config)# interface overlay 1

 NX_1(config-if-overlay)# otv adjacency-server unicast-only

 NX_1(config-if-overlay)# otv join-interface ethernet 1/1

      OTV needs join interfaces to be configured for IGMP version 3

 NX_1(config-if-overlay)# otv extend-vlan 100

 NX_1(config-if-overlay)# no shut

 

[ NX_2 ]

 NX_2(config)# interface overlay 1

 NX_2(config-if-overlay)# otv use-adjacency-server 10.12.1.1 unicast-only

 NX_2(config-if-overlay)# otv join-interface ethernet 1/1

      OTV needs join interfaces to be configured for IGMP version 3

 NX_2(config-if-overlay)# otv extend-vlan 100

 NX_2(config-if-overlay)# no shut

 

  - Multicast 구성과 Unicast 구성은 기본적인 설정은 모두 동일하며, Overay Interface에서 Multcast 통신을 위한 설정 대신에

    Unicast로 Adjacency Server를 구성하기 위한 설정이나, Adjacency Server를 지정하는 설정(Client)을 넣으면 된다.

  - 또한 Multicast를 위해 설정된 IGMP 관련 설정도 모두 제거해도 된다.

 

 

 [Adjacency-Server 상태]

 NX_1# show otv overlay 1

 OTV Overlay Information

 Site Identifier 0001.0001.0001

 Overlay interface Overlay1

  VPN name            : Overlay1

  VPN state           : UP

  Extended vlans      : 100 (Total:1)

 Join interface(s)   : Eth1/1 (10.12.1.1)

  Site vlan           : 111 (up)

  AED-Capable         :  YES

  Capability          : Unicast-Only

  Is Adjacency Server : YES

  Adjacency Server(s) :  [None] / [None]

  - Unicast에서 기본적인 상태 정보는 Multicast와 기능상 동일하기 때문에 동일하며, Overlay Interfac 부분만 확인해보면 된다.

  - Unicast 인 경우에 Capability가 Unicast-only로 표기된다.

  - Adjacency Server로 지정되었지는를 표기하며, Adjacency Server 정보를 등록하였지를 알 수 있다.

    Master의 경우에는 자신만 Adjacency Server이므로, Adajacncy Server정보가 [None] / [None]으로 표기된다.

 

 

[Client 상태]

 NX_2# show otv overlay 1

 OTV Overlay Information

 Site Identifier 0001.0001.0001

 Overlay interface Overlay1

  VPN name            : Overlay1

  VPN state           : UP

  Extended vlans      : 100 (Total:1)

 Join interface(s)   : Eth1/1 (10.12.2.1)

  Site vlan           : 112 (up)

  AED-Capable         :  YES

  Capability          : Unicast-Only

  Is Adjacency Server : No

  Adjacency Server(s) : 10.12.1.1 / [None] 

  - Adjacency Client는 자신이 Adjacency Server가 아니므로, 'No'라고 표기되며 Adjacency Server 정보에 IP가 나온다.

  - 참고로 이 예에에서는 2대만 있지만, 3대 이상에서 OTV Device가 있는 경우에는 "MASTER" "Secondary" "Client"로

    구성할 수 있다.

   : "Secondary" 역할의 OTV Device는 [Is Adjacency Server : YES]로 표기되며 또한 Master 장비의 IP정보도 가지고 있게 된다.

 -  "Client"는 Adjacency Server에 MASTER와 Secondary 장비에 대한 IP 정보만 갖게 된다.

 

☆ Unicast 방식에서 Adjacency Server 설정과 관련한 내용

   • Unicast로 OTV를 할 때에는 Primary Adjacency Server에  "otv adjacency-server" 명령만 이용하면 된다.

     마찬가지로 Secondary Adjacency Server 설정 또한 동일한 명령어로 하면 된다. 

 

  "use-adjacency-server" 명령을 사용하여, 

     Adjacency Server가 아닌 일반 OTV Edge Device들은 Primary 와 Secondary를 모두 지정한다. 

 

  • Adjacency Server 설정 시에, Primary나 Secondary에 대한 역할에 따른 설정 옵션은 없으며, 일반 OTV Edge Device에서

   입력한 Adjacency Server의 IP Address의 순서대로 Primary와 Secondary에 대한 Role이 정해지게 된다.

 

  • 모든 OTV Adjacency Address는 Primary Adjacency Server에서 전달을 하여 모든 OTV Edge Device에 전달되기 때문에

    모든 Client OTV Edge Device는 Primary Adjacency Server를 지정을 해야한다. 

 

  •신규 OTV 사이트가 추가될 경우에도 신규 사이트의 OTV Edge Device에서 Adjacency Server만 지정하게 되면,

  다른 OTV 사이트 에서는 별도의 설정이 추가로 필요없이 OTV Adjacency를 맺을 수 있게 된다.

 

 

 

Posted by 네떡지기

OTV Control Plane의 지난 번 포스팅의 Multicast 환경에 이어서, Unicast 환경에서의 OTV Control입니다.

언제쯤 포스팅을 하면서, 이번에는 지난 포스팅 이후에 빨리 올렸다고 쓸 수 있을지..

이래저래 정신 없는 일도 많고 그러네요... 그래도 조금 더 부지런해져야겠다는 다짐을 오늘도 해봅니다.


 

OTV Control Plane – Unicast-Only Transport Infrastructure (Adjacency-Server Mode)

• OTV에서 Unicast를 사용한 동작은 NX 5.2(1)부터 지원되기 시작하였다.

• Multicast 방식과 동일한 동작 방식으로 운영이 되지만, 다른 차이점은 각 OTV Device가 각 Control Plane 패킷을 복사하여

 동일한 논리적 Overlay의 각 Remote OTV Device로 보내게 된다는 점이다. 이러한 Head-End 복제 문제 때문에 다수의

 DataCenter Site를 구축하는 경우에 Multicast를 사용한 방법을 권장하기도 한다.

 동시에, Unicast-Only를 모델을 사용하는 경우의 단순한 운영에 대한 이점으로 소수의 DC 사이트를 연결할 경우에 유용하다.

모든 OTV NodeControl 패킷을 복제하여 전송하기 위한 Remote OTV Device Neighbor list를 알고 있어야 한다.

  이는 Adjacency Server라고 부르는 특정 역할을 하는 하나 이상의 OTV Edge Device 두어서 Neighbor List를 전달할 수 있게

   한다.

OTV Device는 특정 OTV logical overlay Join을 원하는 경우에 Adjacency ServerOTV Hello 메시지를 보내서 ‘register’

  하게 된다 다른 OTV Neighbor 주소는 Adjacency Server를 통해서 전달을 받게 된다. 따라서, 기존의 OTV Service새로운

  DataCenter Site연결 시 별도의 추가적인 설정이 필요 없이 Adjacency Server 주소에 대한 설정만 하면 된다.

• OTV Edge Device에서의 Hello 메시지 수신을 통해서 Adjacency Server 동일한 Overlay(unicast-replication-list) List를 만

   들게 된다 List는 정기적으로 Network에 있는 모든 OTV Neighbor이 인지될 수 있도록 Unicast 방식으로 전송된다.

 

 

OTV Control Plane - Adjacencies를 맺기 위한 동작 절차

1. 왼쪽 OTV Edge Device OTV Control Protocol은 다른 모든 OTV Edge Device에게  Control Plane Adjacencies 맺기 위해 

   Hello Packet을 보낸다. 

  2. OTV Hello 메시지는 모든 OTV Remote Device에게 Logical overlay를 통해 보내지게 된다.  Hello 메시지는 이전에

    Adjacency Server에서 받은 다른 OTV Edge Device List(Unicast-replication-list)에게 각각 전송하기 위해서 Head-end 복제가

    이뤄지게 된다 이러한 Frame들은 OTV 캡슐화하여 External IP Header를 추가한다. External headerSource IPLocal

    Edge DeviceJoin Interface로, Destination IPRemote OTV Edge DeviceJoin Interface로 설정하여 전송한다.

  3. Unicast FrameUnicast only Network Infrastructure를 통해서 라우팅 되어 목적지 사이트로 전송된다.

  4. 수신지의 OTV Edge Device는 수신 받은 Frame디캡슐화한다.

  5. Hello 메시지는 Control Protocol Process로 보내지게 된다.

 

다른 Edge Device들도 동일한 절차를 거쳐서 모든 Edge device들과의 Adjacency를 맺게 된다.

• OTV Control Protocol 특징은 기존 Multicast와 유사하다.

• OTV Edge Device들 간의 서로 확인이 되면, MAC Address Reachability 정보를 교환을 통해서 통신을 하게 된다.

 

 

.

 

 

OTV Control Plane – Unicast-Only Transport Infrastructure : MAC Address를 광고하는 동작 절차

 1. West DataCenter의 내부에서 VLAN 10, 20, 30에 대한 MAC-Address(A, B, C)Interface Interface를 통해서 학습하다

 2. 내부에서 학습한 MAC-Address A,B,C를 포함한, OTV Update 메시지를 Remote OTV Edge Device로 보내기 위해 OTV 캡슐

    화되어 Layer 3를 통해 전송된다. (Head-end 복제)

 3. OTV Update들은 Unicast를 통해 모든 Remote Edge Device에 보내지고, 디캡슐화되어, OTV Control Process으로 보내진다.

 4. MAC reachability 정보는 Edge Device들의 MAC Address Tables(CAMs)를 가져오게 되는 데, 기존 CAM Entry와 다른 점은

    물리적인 Interface 정보가 아니라,  해당 MAC-Address 정보를 보내온 Edge DeviceJoin Interface IP를 참조한다는 것이다.

 

 

 

 

OTV Control Plane – Unicast-Only Transport Infrastructure : Adjacency Server 이중화 구성

Adjacency ServerRedundancy를 위해 이중화 구성이 가능하다. 

이중화 된 Adjacency Server 간에는 OTV Edge Device(OTV Client)에 대한 정보를 독립적으로 관리하기 때문에, OTV Edge

  Device들은 각각의 Adjacency Server에 자신을 등록하며, 이를 위해서 OTV Edge Device에는 PrimarySecondary

  Adjacency Server를 설정한다.

OTV ClientPrimary Adjacency ServerTimed out 전까지는 Secondary Adjacency Server에서 보내온 OTV Client List를 처

  리하지 않는다.

Primary Adjacency Server  Time-out 될 경우에, Secondary Adjacency Server Replication List(OTV Client List)를 사용한

  다 그리고 10분 동안은 기존 Replication List를 유지하고 있다가, 10분 이내에 Primary Adjacency Server가 돌아올 경우에

  OTV는 기존 PrimaryReplication List로 돌아가게 된다. 만약 PrimaryReplication List가 삭제된 후에 Primary가 복구될 경

  우에는 모든 OTV Neighbor를 학습 한 후에, 새로운 Replication List를 주기적으로 전송하게 된다.

  OTVAdjacency ServerGraceful exit를 사용하여, Primary Adjacency Server가 설정이 되어 있지 않거나 재 부팅 할 때,

   PrimaryClient가 그것을 알고 적절하게 종료할 수 있도록 하여, Timed out를 기다리지 않고, Secondary Adjacency Server

   List로 대체할 수 있게 한다

Posted by 네떡지기

        이런 저런 이유들로 다시 또 오랜만에 남기게 되는 포스팅입니다.

    OTV를 정리해 봐야지하고 하면서 OTV에 대해 처음 정리한 게 언제였는지 보니.. 벌써 2달전이네요..

   그 사이에 다른 걸 포스팅은 안한건 아니지만 바쁘다는 이유로 나태지고 있는건 아닌지 반성해봅니다.

  원래 Multicast와 Unicast 부분을 모두 정리한 이후에 올리려다가, 현재까지 작성해놓은 Multicast 부분만 먼저 올려봅니다..


 OTV Control Plane

• OTV 동작의 기본 원칙은, Data Plane 학습을 사용하는 대신에, OTV Edge Device간의 MAC address reachability 정보를  광고하는

 Control Protocol을 사용하는 것이다.   물론 MAC reachability 정보를 교환하기 전에, 모든 OTV edge Device들은 반드시 각각

 “Adjacent”를 관계  맺어져야만 한다. 이것은 다음의 2가지 방법에 의해서 가능하게 된다.

 

  1. Multicast 가능

     - OTV Edge Device 간의 특정 Multicast group를 사용하여 Control Protocol message를 교환하여 “Adjacent”를 맺는다.

 

  2. Multicast 불가능

     - 한 대 이상의 OTV Edge Device“Adjacency Server” 설정을 하여, 모든 Edge Device들이 해당 Server로 등록을 하게 되면, Server에서는 해당 Overlay에 속하는 Device List를 전달하여 “Adjacent”를 맺게 된다.

     - NX-OS release 5.2(1)부터 사용 가능.

 

 

 

OTV Control Plane – Multicast Enabled Transport Infrastructure

• Multicast가 가능한 전송계층일 경우에 , 모든 OTV Edge Devicereceiversource의 역할을 동시에 하는 특정 ASM(Any Source

 Multicast)  groupJoin 하도록 설정할 수 있다.

만약 전송계층이 Service Provider 것이며, EnterpriseService Provider과 함께 이러한 ASM Group 사용에 대한 협의를 해야 한다.

  

 

 

 

OTV Control Plane – Multicast Enabled Transport Infrastructure

 동작 절차

  1. OTV Edge DeviceIGMP report로 특정 ASM GroupJoin하여 Control Protocol을 교환한다. (이 예에서는 group G)

    Edge DeviceJoin Interface를 사용하여, GroupHost로써 Join한다.

     The only requirement is to specify the ASM group to be used and associate it with a given Overlay interface.

  2.  OTV Control Protocol이 동작 중인,  왼쪽 OTV Edge Device는 다른 모든 OTV Edge Device로 보낼 Hello 패킷을 생성한다.

     이를 통해서 Control Plane Adjacency를 맺게 된다.

  3. OTV Hello message는 모든 OTV remote device들에 도달할 수 있는 논리적인 overlay를 통해 전송 되야 한다.

    이 때에 Original FrameOTV 캡슐화되고, 외부에 IP header가 추가된다.  추가된 외부의 headerSource IP Address

    Edge Devive  Join InterfaceIP address로 설정되고, DestinationASM Group Multicast address가 된다. 

    결과적으로 Multicast FrameJoin Interface로 보내어, Layer 3 Network Domain으로 전송된다.

  4.  Multicast frame들은 Transport를 통해 전송되며, Multicast group GJoinOTV edge device들에게 도달되도록 최적 복제가

     된다.

  5. Packet을 수신한 OTV Edge DeviceDecapsulate 한다.

  6. Hello MessageControl Protocol 프로세스로 전달된다.

 

다른 Edge Device들도 동일한 절차를 거쳐서 모든 Edge device들과의 Adjacency를 맺게 된다.

• Hello message를 통한 ASM group의 사용으로 Edge device들이 서로 Shared LAN segment에 있는 것처럼 상대 Edge Device를 인식한다.

• LAN segment는 기본적으로 OTV overly를 통해서 구현된다.

 

 

 

 

OTV Control Plane – Multicast Enabled Transport Infrastructure

• OTV Control Protocol의 중요 고려사항

   1. ProtocolOTV Edge Device들 간에 “overlay” Control Plane으로 동작한다.

     , Data CenterLayer 3에서 사용되는 Routing Protocol이나, 전송 인프라에 의존적이지 않고 동작을 하게 된다.

   2. OTV Control PlaneOTV Overlay Interface를 생성한 후에는 명시적으로 설정할 필요 없이 활성화가 된다.

      timer와 같이 Parameter들의 조정이 OTV Protocol에서 허용은 되지만, 일반적으로 하지는 않는다.

• MAC Address 광고 동작 순서

  1. West Datacenter에서 새로운 MAC A, B, C를 내부 Interface