VTP(VLAN Trunk Protocol)란?
개요
- 하나의 스위치에 설정된 VLAN 번호를 다른 스위치에게 알려줄 때 사용하는 프로토콜
- CISCO 전용 프로토콜
- VLAN 정보를 자동으로 주고 받아 동기화함
VTP 특징
- VLAN 설정 정보는 받아오지만 스위치 Port 정보들은 받아오지 않음
- 스위치의 기본 설정으로는 Server로 되어있고, 도메인값은 설정되어있지 않음
- 확장 VLAN 사용시, Transparent 모드에서만 사용 가능
- VLAN 정보가 한 번도 수신되지 않은경우 *Revision number "0"
- Default VLAN Number는 "1"
*Revision: VLAN이 새로 만들어지거나 지워질 경우 "1"씩 추가된다.
장점
- VLAN 설정 작업이 편리해짐
- 한 대의 VTP 서버에서 새로운 VLAN 설정 시 해당 VLAN은 도메인의 모든 스위치를 통해 배포됨
- VLAN 정보의 크기가 작고 정보가 모든 스위치에 쉽게 저장되는 소규모 네트워크에 적합
- VLAN 구성이 변경될 때마다 VTP가 자동으로 해당 변경 사항을 모든 스위치에게 전파
단점
- VTP 버전에 따라 스위치간의 호환이 불가능
- 대규모 STP 도메인의 고유한 위험
- STP의 잠재적 불안정성 및 위험성의 균형 유지 필요
- 대규모 네트워크에선 네트워크 부하가 발생할 수 있음
- 의도치 않게 서버 모드에서 VLAN을 삭제, 수정 했을 경우 클라이언트 스위치에서도 해당 VLAN이 삭제됨
동작 모드
Server Mode
- VLAN을 생성 및 삭제할 때, VLAN 이름을 변경이 가능하며 자신의 VLAN 설정 정보를 다른 스위치에 전송함
- VLAN을 만들고 변경이 가능, 설정은 NVRAM에 저장
- 서버 모드에서 만들어진 내역은 Trunk를 통해 모든 VTP에 전파
[VTP 모드]
VLAN 생성 | VLAN 삭제 | VLAN 수정 | VLAN 전달 |
O | O | O | O |
Client Mode
- VTP 서버로부터 Update 받고 forward 함
- VLAN 생성/변경/제거 하지 않음 -> 설정 내역이 없으면 저장되지 않음
- 서버에서 VLAN을 만들어야, 클라이언트 스위치 포트에 VLAN을 할당
[VTP 모드]
VLAN 생성 | VLAN 삭제 | VLAN 수정 | VLAN 전달 |
X | X | X | O |
Transparent Mode
- 자신의 VTP 정보를 다른 스위치에게 전송하지 않음
- 다른 스위치에게서 받은 정보와 일치시키지 않음
- 설정한 VLAN은 자신에게만 영향을 미침
- VTP 서버로 부터 받은 메세지를 자신의 NVRAM에 저장하지 않음
[VTP 모드]
VLAN 생성 | VLAN 삭제 | VLAN 수정 | VLAN 전달 |
O | O | O | X |
동작 방식
1. 스위치에서 VLAN 추가/수정/삭제
- 이 경우 새로운 VLAN 정보를 다른 스위치에 전송
2. 스위치는 VTP 설정 번호를 기존값보다 1을 증가시켜서 전송
- 1을 증가시킬 때 같이 다른 스위치에서 변경된 VLAN 정보를 전송
3. VTP 정보를 수신받은 스위치는 자신이 원래 가지고있던 VTP 설정번호를 비교해서 교체
- 수신한 정보의 VTP 설정 번호가 더 높으면 자신의 VLAN 정보를 새로운 정보로 대체
- 수신한 정보의 VTP 설정 번호와 자신의 번호가 동일하면 수신한 정보 무시
- 수신한 정보의 설정 번호가 자신의 번호보다 낮으면 자신의 VTP 정보 전송
VTP Domain
- VTP는 VTP 도메인 이름이 같은 스위치간에만 정보 교환
- VTP가 동작하기 위한 최소 조건은 VTP 도메인 이름이 동일, 트렁크 포트로 연결되는 것
- 트렁크로 연결되어 있어도 도메인 이름이 설정되어 있지 않으면 VTP 동작하지 않음
- 하나의 스위치에서 VTP 도메인 이름 지정하면 트렁크로 연결된 스위치들은 자동으로 VTP 도메인 이름이 설정됨
- 도메인 이름이 다르면 상대가 전송한 VTP 정보 무시
- VTP 정보는 라우터를 넘어가지 못함
VTP 버전
- VTP 버전은 3가지가 존재
- Version 2는 1과 달리 트랜스패런트 모드에서 도메인 이름과 버전을 확인하지 않음
- 트랜스패런트 모드로 동작하는 스위치는 자신과 VTP 도메인 이름과 버전이 달라도 수신한 VTP 정보를 다른 스위치에게 전송함
- Version 3는 버전 2에 비해 많은것이 개선됨 개선점은 다음과 같음
- VLAN 정보를 받아 들일 인접 장비 지정에 대한 제어기능 향상
- 확장 VLAN 정보 전송
- 사설 VLAN 정보 전송
- 일단 VLAN 외 MST 정보도 전송
VTP 광고
- VTP 광고는 멀티캐스트 프레임 형태로 전송
- 3가지 type의 메세지
3가지 타입의 메세지
1. advertisement Request: 클라이언트가 정보요청
2. summary advertisement: 매 5분 간격으로 트렁킹 포트를 통해 전달(VTP Domain에 대한 Revision number를 보냄)
3. subset advertisement: VLAN 변경 시 전송, VLAN에 대한 세부적인 정보 보유, VTP 클라이언트로부터 메세지 회신
- Management domain
- Configuration Revision Number
- Update identify (Switch ID -> MAC Addess)
VLAN Pruning
- 필요 없는 브로드캐스트 트래픽이 트렁크 포트를 통하여 전송되는 것을 차단
- 기본적으로 시스코 스위치에서는 비활성화
- VTP 서버 모드에서만 설정 가능
Trunking
개요
- 복수개의 VLAN 프레임을 전송할 수 있는 링크
- 특정 포트를 트렁크 포트로 동작시키는 것
- 하나의 VLAN에만 소속된 엑세스 포트와 달리 트렁크는 복수개의 VLAN에 소속됨
Trunking Protocol
- 트렁크 포트를 통하여 프레임을 전송할 때, 프레임이 속하는 VLAN 번호를 표시
- 수신 포트를 제외한 동일한 VLAN에 소속된 모든 포트로 브로드캐스트 프레임을 플러딩 함
- 트렁크 포트쪽으로도 이 프레임을 전송
- 브로드캐스트 프레임을 수신한 스위치는 이 프레임이 속하는 VLAN 번호를 알아야 해당 VLAN에 소속된 모든 포트로 플러딩 시킬 수 있다.
- 트렁크 포트로 연결된 스위치들간에 프레임을 전송할 때에는 VLAN 번호를 알려주어야함
Trunking Protocol 동작방식
1. 엑세스 포트를 통하여 프레임을 수신하면 해당 프레임이 소속된 VLAN 번호를 알 수 있음
2. 스위치 1이 트렁크 포트를 통하여 해당 프레임을 전송하면서 VLAN 번호를 표시 트렁크 포트를 통해서 프레임을 수신한 스위치 2는 VLAN 표시를 확인, 이 프레임이 소속된 VLAN 번호를 알게됨
3. 스위치 2는 VLAN 1에 소속된 모든 포트로 프레임을 전송
*트렁킹 프로토콜은 트렁크로 연결된 스위치 사이에서만 동작
- VLAN의 표시 방법은 트렁킹 프로토콜에 따라 다르다. 트렁킹 프로토콜을 Trunking Encapsulation 이라고도 한다.
- 시스코 이더넷 스위치에서 사용되는 트렁킹 인캡슐레이션은 ISL과 802.1Q 두가지가 존재한다.
- 스위치 모델에 따라 두 가지 방식을 지원하는 것과 한가지만 지원하기도 한다.
- 글내에는 QoS 지원, 다른 스위치와의 호환성 및 확장 VLAN 지원등의 이유 때문에 ISL 보다는 *1EEE 802.1Q에 비중을 두고 있는 상황
*802.1Q 트렁킹: IEEE 802.1Q에서 정의된 표준 트렁킹 프로토콜. 4바이트 길이의 802.1Q 태그를 추가하여 VLAN 번호 및 기타 정보 표시
802.1Q 프레임 태그 내용
- ethertype: 현재의 프레임이 802.1Q 프레임이라는 것을 표시
- priority(우선순위): 프레임의 우선순위를 표시 이것을 802.1P 우선순위 필드 또는 CoS(class of service) 필드라고 함
- CFI(Canonical Format Identifier): 토큰링에서 사용되는 MAC 주소 형태를 논캐노니컬(non-canonical)이라고 한다. 따라서 이 비트가 1로 설정되면 토큰링 프레임이 인캡슐레이션된 것임을 표시함
- VLAN 번호(VLAN identifier): 프레임의 VLAN 번호를 표시
필드의 길이가 12비트이므로, 802.1Q 트렁킹 방식을 사용하면 4096개의 VLAN이 지원
ISL(Inter - Switch Link)
- Cisco사에서 개발한 트렁킹 인캡슐레이션 방식
- 802.1Q와 달리 확장 VLAN을 지원하지 못하여 시스코 스위치에서도 점차 802.1Q로 대체되고 있는 추세
- 이더넷 프레임은 변경하지 않고, 프레임 앞에 26바이트의 ISL 헤더를 추가
- 이더넷 FCS 다음에 별도로 4바이트 길이의 ISL FCS를 추가함
- FCS(Frame Check Sequence)는 수신한 프레임의 에러 발생여부를 확인하는데 사용
ISL 헤더 주요필드 | 설명 |
DA | Ox01-00-0C-00--00 또는 Ox03-00-0C-00-00의 값을 가지며, 이 프레임이 ISL 프레임이라는 것을 나타냄(40비트) |
Type | 인캡슐레이션된 프레임의 종류를 표시한다. 0000이면 이더넷, 0001은 토큰링, 0010은 FDD1, 0011은 ATM 나타냄(4비트) |
User | 이더넷 프레임의 우선순위를 표시한다.(4비트) |
SA | 출발지 스위치의 MAC 주소를 나타냄(48비트) |
LEN | 프레임의 길이를 표시(16비트) |
SNAP | SNAP을 표시하며, OxAA - AA - 03의 값을 가진다.(24비트) |
HSA | 출발지 스위치의 MAC 주소중 상위 3 바이트, 제조회사 코드(vendor code) 또는 OUI(Organizationally Unique Identifier)를 표시함(24비트) |
VLAN 번호 | VLAN 번호를 표시하는 필드로 15비트가 할당되어 있으나 실제로 제 4장 VLAN, 트렁킹 및 VTP 115는 10비트만 사용 따라서, ISL은 1024개의 VLAN만 지원(15비트) |
BPDU | BPDU, VTP 또는 CDP 프레임을 전송할 때 이 필드를 1로 표시. BPDU 비트가 1로 설정된 프레임을 수신하면, 스위치는 이 프레임의 최종 목적지가 자신임을 알고, 그 내용을 해독하고, 적절한 동작을 취함 |
스위치 포트 DTP 모드
- DTP(Dynamic Trunking Protocol)란 시스코 스위치에서 상대 스위치와 트렁크와 관련된 사항을 협상할 때 사용됨
- DTP에 의해 결정되는 것은 트렁크 포트 전환여부와 트렁크 포트로 동작시 인캡슐레이션 방식이다.
DTP 모드 | 동작 방식 | 모드 형태 |
엑세스 | 항상 엑세스 포트로 동작 | 정적(Static) 포트 |
트렁크 | 항상 트렁크 포트로 동작 | |
다이나믹 디자이어러블 | 상대가 엑세스 포트인 경우에만 엑세스 포트로 동작. 나머지 경우는 트렁크 포트로 동작 | 동적(Dynamic) 포트 |
다이나믹 오토 | 상대가 엑세스나 다이나믹 오토인 경우 엑세스 포트로 동작. 나머지 경우는 트렁크 포트로 동작 |
참고한 사이트
https://www.cisco.com/c/ko_kr/support/docs/lan-switching/vtp/10558-21.html
'Switch > 이론' 카테고리의 다른 글
[스위치] SPAN(Switch Port Analyzer)란? (0) | 2024.06.21 |
---|---|
[스위치] STP(Spanning Tree Protocol)란? (0) | 2024.06.17 |
[스위치] 스위치 포트 보안(Switch Port Security)이란? (0) | 2024.06.14 |
[스위치] Switch란? (0) | 2024.05.13 |