UDLD란 Unidirectional Link Detection의 약자이다. 간단히 요약하면 단방향 링크를 검출하는 시스코 전용, Layer 2 프로토콜이다. 단방향 링크가 검출되면, UDLD는 영향받은 port를 shutdown하고 alerts을 해당 유저에게 보낸다. UDLD는 Layer 1과 함께 물리적 link의 상태를 감지한다. Layer 1에서는 auto negotiation이 physical signaling과 falut detection을 핸들링한다. UDLD는 단순 물리적인 연결성만을 검출하는 auto negotiation과는 다르게 한 단계 더 나아가 neighbor의 identity를 확인하거나 잘못 설정된 port를 shutdown하는 기능까지 제공한다. 즉, auto negotiation과 UDLD를 함께 사용하게 되면 물리적, 논리적 연결성 오류 (physical signaling, logical unidirectional connections)을 막을수 있다.
광 케이블을 예를 들어서 설명하면 광 케이블의 각각의 strand는 송신과 수신을 각각 담당한다. 물론 상대방은 수신과 송신으로 순서로 트래픽은 흐르게 된다. 만약 두 가닥 중 하나의 strand가 문제가 생겼을 경우 어떻게 될까? 이 경우가 unidirectional traffic의 흐르는 경우이다. 단방향 링크는 Spanning Tree Topology의 loop 또는 traffic blakcholing을 야기한다. UDLD가 enable 된 경우에서는 주기적이으로 UDLD패킷을 보내서 정해놓은 시간내에 ack 메시지가 도착하지 않으면 해당 링크를 단방향 링크로 간주하고 shutdown 시킨다 (물론, 양단의 장비모두 UDLD가 설정되어있는 경우).
* 참고로 fibre-optic interface는 udld 설정을 global level에서 설정하고 copper interface는 특정 포트에 접속 후 설정한다.
이 문제는 STP loop guard와 UDLD로 해결이 가능한데 이 포스트에서는 UDLD에 대해서 간략하게 요약해보고자 한다.
- UDLD는 Layer-2 프로토콜이다.
: 물리적 신호나 fault detection을 담당하는 것은 아니다. 대신, neighbor를 identify하고 miconnected된 포트를 shutdown 시키는 역할을 한다. - 두 가지 모드가 존재한다. (Normal, Aggressive)
: 두 가지 모드의 차이는 unidirectional error가 감지되었을 때 해당 포트를 disable 시키는지의 여부이다. Normal 모드에서는 disable 시키지 않고 Aggressive 일때는 해당 포트를 disable 시킨다. 따라서, Aggressive 모드는 '한 쪽 링크의 포트가 문제가 있을 경우', '한쪽 포트는 up이고 반대쪽 포트는 down인 경우' 이 두 가지 시나리오 (Traffic blackholing)에서 Normal 모드에 비한 장점이 있다. - UDLD의 역할
1) Probe 패킷을 주기적으로 보낸다. 이 패킷에는 system ID와 port ID가 포함되어 있고 neighbor device의 정보를 만든다.
2) Cache table에 앞서 생성한 neighbor 정보를 저장하고 업데이트 한다.
3) 영향받은 (unidirectional) 포트를 shutdown하고 관리자에게 알린다.
4) Aggressive mode에서 UDLD 패킷을 받지 못하면 neighbor와 연결설정을 re-establish하게 되는데 여기서 1초 간격으로 8번 패킷을 보냈을 때, ack를 받지 못하면 해당 포트를 shutdown 한다.
Reference List
1. CCNP and CCIE enterprise core official cert guide book
2. i1.wp.com/ipwithease.com/wp-content/uploads/2015/06/UDLD.jpg?fit=800%2C468&ssl=1
'<개인공부> - IT > [Network&Security]' 카테고리의 다른 글
OSPF 정리 #1 (0) | 2021.03.12 |
---|---|
C9300 Stackwise system 요약 (0) | 2021.02.11 |
Etherchannel - Intro (PAgP, LACP) (0) | 2020.07.24 |
NAT - Inside local, inside global, outside local, outside global (0) | 2020.07.18 |
Dynamic Trunking Protocol (DTP) (0) | 2020.04.17 |