FabricPath에 대한 5번째 정리입니다.

오늘 정리까지로 보면, 대략적인 부분은 정리가 끝난 듯 싶습니다.

다음 포스팅은 FEX 혹은 그 전에 vPC 구성과 관련한 구성 가능한 디자인과 불가능한 디자인에 대해서 하게 될 듯 싶습니다.

그리고, 네트워크 전문가 따라잡기 카페에 게시글을 올렸던 내용이지만..

현재 정리 중인 Nexus에 대한 내용으로 공부할 수 있는 자리를 2~3회 분량으로... 해보려고 하는데.. 어떻게 될지 잘 모르겠네요.. ^^;

제 머리속에도 한 번 더 정리하는 기회가 될 수 있을 듯 싶고.. 오프라인에서도 함께 나눌 수 있는 자리를 마련해보려고 합니다..

물론 참여하실 분들이 있으셔야 하고.. 저도 정리가 되어야 하겠죠..

그럼 다음 포스팅에서 뵙겠습니다.


 

 

FabricPath – vPC+

• FabricPath networkedge switcheshostFabricPath가 활성화되지 않은 legacy Ethernet switchPort channel을 통해서

  연결할  있는 데, 이를 vPC+라고 한다. , 기존 Ethernet 환경의 Nexus Device가 사용하는 것이 vPC이고, FabricPathEnable

  Nexus  Device 사용하는 것을 vPC+라고 한다.

vPC+가 동작하는 switch는 가상화 된 switch에서 발생한 Packet은 가상화 된 switch(Emulated Switch 라고 함)의 정보,

   switch-id를  Source로 하여서 FabricPath network로 보내진다.

vPC peer switch들은 가상의 FabricPath switch-id공유하며, 이는 vPC Domain에서 관리자가 설정해주어야 한다.

  만약 이 설정이 되어 있지 않을 경우에는 Peer-Link는 정상적으로 살지 않고 vPC+SwitchIDNotCfgd 상태가 되면서 동작하지 않는다.  

   [ FabricpathvPC+에서의 switch-idvPC peer 간의 동일하며, Peer mac 정보는 그대로 유지한다. ]

• vPC+ switch-ID를 설정 시에는 vPC Domain Configuration 모드에서 fabricpath switch-id 명령으로 설정할 수 있다.

FabricPath의 다른 Switch들은 이 Emulated switch의 동작을 별도로 인식하지 않고, FabricPath 내에서 동일하게 접근이 가능한

    Switch로만 인지한다. (switch-id 값으로만 인지)

 vPC+FabricPath가 활성화된 VDCF module이나 Nexus 5500 Series가 필요 하다.

vPC+Peer-linkswitchport modeFabricPath 로 설정해야 한다.

vPC+의 모든 VLAN들은 반드시 FabricPath VLAN이어야 한다.

• vPC+Peer-linkDown될 경우에는 vPC와 유사하게 동작한다.

    * Primary switch는 아무런 동작을 하지 않으며, Secondary switch는 모든 vPC Linkdown된다.

    * 또한, vPC+ 에서는 Secondary switchTraffic이 유입되지 않도록 개입하게 되는 데, 이는 Secondary Switchemulated

      switch에 대한  정보를 FabricPath쪽으로 광고하지 않도록 하기 위해 IS-IS에서 제공되는 기능이다.

      이 기능은 Emulated Switch로 향하는 TrafficSecondary쪽으로 가지 않도록 하기 위한 필수적인 기능이다.

vPC+가 동작중인 FabricPath Edge Switch들은 Mac-address 광고 시, 각자의 switch-id가 아닌 emulated switch-id로 광고된다.,

 이는 vPC+와 연결된  Orphan port의 단말기도 마찬가지이며, 이로 인해 Orphan port 단말의 경우에는 Peer-link를 통해서 통신을

 할 수도 있게 된다. (기존 vPC의 경우에는 Orphan port의 단말의 경우에는 vPC Peer DeviceLocal Mac을 사용)

 

 

◈ vPC+ 구성 설정

    - vPC+ 에 대한 간략한 구성을 통해서 설정방법을 다음과 같이 알아보겠습니다.

    - 본 예제서는 N7K2의 대부분의 설정은 생략하지만, N7K1과 거의 동일하기 때문에 이해하는 데 큰 문제는 없습니다.

 

.

 

1. fabricpath로 동작할 vlan에 대해서 mode을 fabricpath로 변경하고, fabric-switch를 지정해준다.

    그리고 일반적인 vpc를 구성한다. 

 

2. 현재 Keep-alive만 구성하였기 떄문에 peer keep-alive만 alive 상태가 됨을 확인할 수 있다.   

 

3. vPC+ 동작을 위해서, vPC 도메인에 fabricpath switch-id를 지정한다.

    이 때에 vPC Peer간에는 반드시 동일한 fabricpath switch-id를 지정해 주어야 한다.

    fabricpath switch-id를 설정한 이후에 vPC정보를 보면, 기존의 vPC정보에서 vPC+에 대한 정보도 확인할 수 있다.

 

4. vPC간의 peer-link를 구성한다. 이 때에 peer-link의 mode  또한 fabricpath로 변경해주어야 한다.

 

5. vPC+를 위한 peer-link 설정 이후에 vPC 정보를 보면, vPC fabricpath statue가 fabricpath를 통해서 맺어진게 확인된다.

 

6. vPC+에서 설정한 switch-ID 정보도 한 번 살펴보면, 아래와 같이 70이라는 가상의 switch-id가 각각의 peer의 System-ID값으로

    동일하게 설정된 것을 볼 수 있다. 그리고 이 switch-id는 가상으로 설정된 것이기 때문에  Emulated가 Yes로 보인다.

 

 

 

7. 이번엔 vPC를 통해서 연결된 하단의 interface 설정을 한다. vPC+와 연결되는 장비는 fabricpath mode는 아니다.

    하단의 장비는 일반 Port-channel 설정을 그대로 하면 된다.

 

8. 모든 설정 이후에 vPC의 정보를 아래와 같이 모두 정상적으로 올라온 것을 볼 수 있다.

 

 

※ 만약 Peer간의 가상의 switch-id를 서로 동일하게 설정하지 않으면, 아래와 같이 vPC 구성이 되지 않음을 확인 할 수 있다.

 

 

 

 

Posted by 네떡지기

해야할 일들이 많지만. ^^;

그래도 잠깐 또 틈을 내보아... 미루어두었던 포스팅 내용을 정리해서 올려봅니다.

보시다가, 이상한 부분이나 수정해야할 부분등이 있으면 덧글 부탁드립니다! ^^


 

 

이번 포스팅은 FabricPath에 대한 기본 Config 및 구성에 대해서 알아보려고 합니다.

앞선, FabricPath 1-3이 조금 이해하기 어려울 수 있었더라도,

이번 포스팅을 통해서 어렵지 않게 받아들이고 구성할 수 있다는 것을 알 수 있을 것 같습니다.

 

기본적인 FabricPath에 대한 설정은 다음과 같습니다.

 

 

 

그럼 아래와 같은 구성에서 FabricPath를 간단하게 구성해보도록 하겠습니다.

 

 

 

우선 제일 먼저 FabricPath를 사용하기 위한 Feature-set을 Install 한 이후에 Feature-set을 활성화합니다.

단, 이 때에 install은 Default VDC에서 해야하며 기타 VDC에서는 Feature-set을 활성화만 하면 됩니다.

지금부터 진행할 예제는 Default VDC에서 진행하는 것으로 하기 때문에 하나의 VDC에서 install과 활성화를 동시에 합니다

 

N7K1(config)# install feature-set fabricpath

N7K1(config)# feature-set fabricpath

 

이후에 FabricPath 를 사용할 Vlan을 설정하고 fabricpath mode로 변경합니다.

그리고나서 FabricPath를 구성할 Interface의 mode 또한 FabricPath mode로 변경합니다.

 

N7K1(config)# vlan 10

N7K1(config-vlan)#  mode fabricpath

N7K1(config)# int e7/1-2

N7K1(config-if)# switchport mode fabricpath

 

나머지 장비에서도 위와 같이 설정을 넣습니다.

벌써 아주 간단한 FabricPath가 구성이 된다. 그럼 실제 FabricPath 장비 간 Adjacency를 아래와 같이 확인할 수 있습니다.

 

 

 

 

그러면 연동된 장비의 정보를 확인하기 위해서 아래와 같이 정보를 확인해 보는데,

아래 그림과 FabricPath의 Switch-ID가 임의로 설정되어 있는 것을 볼 수 있습니다.

 

 

이 경우에는 Switch-ID가 어떤 장비 확인이 어렵기 때문 다음과 같이 관리지가 직접 Switch-ID를 지정합니다.

 

 

 N7K1(config)#  fabricpath switch-id 71

 

 

위와 같은 방법으로, 모두 설정하고 나면 다음과 같이 Switch-ID가 지정된 값으로 변경된 모습을 볼 수 있습니다.

자동으로 지정된 것이 아니라, 직접 지정하였기 때문에 뒤에 Static 부분은 모두 Yes로 변경된 것을 볼 수 있습니다.

Emulated는 vPC+와 관련된 내용으로 다음 포스팅에서 다루도록 할 예정입니다.

  

 

 

 

 

다음은 FabricPath의 Tree 1,2에 대한 Root를 어느 FabricPath에서 가지고 있는지를 살펴봅니다.

 

 

 현재는 위과 같이, Tree 1은 51스위치(N5K1), Tree 2는 52스위치(N5K2)에서 각 Tree의 Root로 선정되어 있습니다.

해당 토폴로지를 확인하면 모든 Priority 값이 64(default)임을 알 수 있습니다.

 

 이를 다음과 같이 Priority 값을 변경하여 Tree1의 Root를 71스위치(N7K1), Tree2의 Root를 72스위치(N7K2)로

변경해보도록 하겠습니다.

 

 N7K1(config)# fabric-path domain default

 N7K1(config-fabricpath-isis)#  root-priority 90              [N7K2는 80으로 설정]

 

 

변경 이후의 다시 Tree 1,2 Root 및 Priority 값을 확인해 보면 다음과 같습니다.

 

 

Tree 1/2의 Root가 지정된 Priority값에 따라 각각 변경된 것을 확인할 수 있습니다.

 

그리고 FabricPath 내에서의 내부 Routing 경로도 다음과 같이 확인이 가능합니다.

 

 

 

마지막으로, 전체적은 구성에 대한 설정은 다음과 같이 살펴볼 수 있습니다.

 

 

 

 

Posted by 네떡지기

 

Last Updated  2014.03.06


 

1월에 포스팅을 하고, 3월이 되서야 드디어 다시 포스팅을 시작하게 되었습니다.

그 사이에는 참으로 다양한 사연들이 있어서 포스팅이 늦어졌다는 핑계를 대 봅니다...

2월 9일에 CCIE DC를 보기 위해 1월 중순부터는 거의 모든 것을 내 팽개치고..(설 연휴 반납.. ㅠㅠ) 거기에만 매달리고...

벨기에까지 무사히 잘 다녀와서. 다행히. 좋은 결과를.. (떨어지면 포스팅을 당분간 더 안했을 듯... )

하지만 다녀오자마자 그닥 좋지 않은 일들이 계속 생기고... 건강도 급격히.. 나빠지기도 했습니다. 이제 회복단계에 들어섰구요..

아직까지는 머리 속이 이래저래 복잡하지만!! 그래도 이제 다시 포스팅은 시작해보려고 합니다.

오늘 오늘은 간만에 가벼웁게 짧게 끊어가봅니다.. ^^ (길이가 짧다는 것일 뿐입니다... )

다음 포스팅은 조만간 다시 금세 올리도록 하겠습니다!

내용 중에 이상하거나 수정해야할 부분이 있으면 덧글 부탁드립니다

 


 

 

 

FabricPath Tree

• Known Unicast TrafficEqual-cost 경로로 Load-balancing 된다.       

Unknown Unicast / Broadcast / Multicast traffic 과 같은 Multidestination Frame  Load Balancing을 위해서

  Multidestination Tree를 사용한다.

• Multidestination TreeFabricPath IS-IS를 통해서 자동으로 2개의 Loop-FreeTree가 생성된다.

      ※ NX-OS 6.2(2) 이후부터는 하나의 Topology마다 2개의 Tree를 구성할 수 있다.

         그 이전에는 오직 하나의 Topology만 가능.

• Multidestination Tree2개의 서로 다른 TreeRoot를 선출하는 데,  FabricPath Domain 내의 우선순위가 가장 높은 2개의

  FabricPath Switch가 각각 Tree 1(1순위) / Tree2(2순위)Root가 된다.

• Root를 선출하기 위한 요소는 다음과 같다.

     - Highest root priority  [ 8bit ] :  0-255 까지 설정이 가능하며, Default64이다.

     - Highest system-id [ 48bit ] : VDC MAC Address

  - Highest switch-id [ 12bit ]

• RootIS-IS에 의해서 자동으로 선출되기는 하지만, ‘root-priority’ 명령을 사용하여 직접 Aggregation 혹은 Spine Switch로 지정하는 것을

  권고한다. 

• root-priority 값은 Fabric-Path Domain에서 설정하며, 높은 값이 우선순위가 높다.

TreeMultidestination Frame을 전송하기 위해서 사용되는 Forwarding TAG ( FTag )를 갖는다.

 

 

 

FabricPath Tree

• FabricPath Tree 1Unknown unicast / broadcast / multicast Traffic을 전송하고, Tree 2multicast 분산 Traffic을 처리한다.

     - 이는 F1 Module 기준이며, 이후에는 어떤 Tree로 전송을 할지에 대해서 hash 함수에 의해 결정한다.

        (HashDefault로 설정은 Source/Destination IP, Layer 4 Port 이다.)

Packet treeingress FabricPath SwitchPacket header를 확인해서 결정한다. 

• Tree 1 Root는 높은 SysID (priority + mac)Switch가 선정되며, Tree 2Root는 두 번째 높은 SysID를 가진 Switch가 선정된다.

FabricPathMulticast / Broadcast / Flooded TrafficMultidestination Tree를 따라 전송.

이를 위해 FabricPath FrameTag를 붙이는 데, 이를 Forwarding Tag 또는 FTag라고 함.

 

 

 

Fabric Path Conversational MAC Address Learning

 • NX-OS 5.1부터 F 시리즈 Module을 사용하는 경우에 Conversational MAC Address 학습을 할 수 있다.

    - 설정에 따라서 Conversational 또는 Traditional한 방법으로 학습

• F Series Module들은 16개의 Forwarding Engine을 가지고 있으며, Engine별로 별도의 Mac-Address Table을 가지고 학습을 한다.

• Traditional EthernetMac Address 학습은 Source address 기반으로 무조건 학습함으로써, Resource를 낭비하게 된다.

Conversational MAC 학습은 전체 도메인을 대상으로 하지 않고 각 Interface에서 관심 있는 Host에 대해서는 학습을 한다.

  Conversational MAC 학습은 3 way handshake로 구성되는 데,

  이러한 Conversational MAC 학습을 통해서 개별 Switch Mac Address Table의 한계를 넘어서 네트워크를 확장할 수 있게 된다.

Destination MAC 자신의 Local MAC Table에 존재하는 경우에만 Source MAC을 학습한다(Outer SA가 아님).

  , 상대방이 보내온 Frame에서 DestinationLocal MAC이라는 것은 자신이 Local이 목적지인 경우에만 MAC을 학습한다는 것이다.

모든 FabricPath VLANConversational MAC 학습을 한다.  CE VLAN은 기존의 Traditional MAC학습을 하지만, 설정을 통해서

  Conversational MAC 학습을 할 수 있게 할 수 있다.

• FabricPath Core switch어떠한 Mac-Address도 학습하지 않으며, 모든 Frame은 오직 FabricPath HeaderOuter DA 정보를 기반

   으로 (정확하게는 Destination SID) 전송을 한다.

FabricPath에서 기존의 Mac Address 학습은 FabricPath Port에서 수행하며, FabricPath Core Switch에서는 MAC Address 학습이 필요

   없다.

• NX-OS 6.1 이후로 F2 모듈의 FEX with VPC+가 지원되며, 이러한 Forwarding 지원을 위해서 Core Port 학습이 사용되며,

    F2 VDC에서는 Core Port Learning이 기본으로 활성화되어 있다.

• FabricPath Edge Switch는 두 가지 TypeMac-Address Table을 가지고 있다.

    - Local MAC Entry  : Switch와 직접 연결된 Device들의 정보

    - Remote MAC Entry  : 다른 FabricPath Swtich에 연결된 Device들의 정보

Directly-connected access 또는 Trunk Port에서 들어온 Ethernet Frame들은 기존 STP Switch처럼 모든 Source MAC을 기반으로

    학습한다.

• FabricPath EncapsulationUnicast Frame을 수신한 경우에는 FrameDestination MAC AddressLocal-MAC Entry에 있는

    경우에만 Frame의 목적지가 자신일 경우에만 해당 FrameSource MAC-Address를 학습하게 된다.

• Unknown Unicast Frame과 같은 Flooded되는 Frame에 대해서는 학습을 하지 않는다.

• Broadcast FrameEdge Switch에서 학습하지 않는다. 하지만, Broadcast Frame은 이미 기존에 Table에 있는 MAC Entry들에

    대해서 Update 하는데 사용된다.

• Multicast Frame(IP 혹은 non-IP Multicast) Core/Edge FabricPath Switch에서 모두, 주요한 LAN Protocols(ex. HSRP) 적절한

    동작을 위해 Multicast Frame으로부터 Source MAC을 학습한다.

위에서 논의된 Conversational LearningNexus 7000에서 각각의  Forwarding Engine ASIC에서 독립적으로 수행된다.

     - F1 I/O Module에서는 Front-Panel 10G Interface의 한 쌍 단위로 Forwarding Engine ASIC이 동작한다.   (Ex. e1/1-2 , e1/3-4, …)

     - F2/F2E I/O Module에서는 4개의 Front-Panel 10G Interface 단위로 Forwarding Engine ASIC이 동작한다. . (Ex. E1/1-4, e1/5-8.. )

     - F1 Module에는 16개의 독립된 Forwarding Engine이 있고, F2/F2E Module 에는 12개의 독립된 Forwarding Engine있다.

 

 

 

Posted by 네떡지기

티스토리 툴바