Cisco Etherchannel 구성과 이해(PAGP,LACP Mode, Load-Balancing)
■ Etherchannel 이란?
- 다수의 인터페이스 포트를 논리적으로 하나의 포트로 묶어서 사용하는 기술이다.
- 다수의 포트를 하나로 묶음으로서 대역폭 증설이 가능하며, 링크 장애 발생시 다른 링크로 트래픽을 리디렉션하여 내결함성을 보장한다.
Etherchannel 은 스위치와 다른 스위치 또는 호스트 간에 최대 8Gb/s(Gigabit Etherchannel) 또는 80Gb/s(10Gigabit EtherChannel)의 대역폭을 제공한다. 최대 8개의 이더넷 포트로 구성할수 있다.
■ Channel Groups and Port-Channel Interfaces (채널그룹과 포트채널 인터페이스)
EtherChannel은 채널 그룹과 포트-채널 인터페이스로 구성
- channel-group 명령 은 물리적 포트와 포트-채널 인터페이스를 함께 바인딩
EtherChannel에는 1에서 128 까지 번호가 매겨진 포트 채널 논리 인터페이스가 있습니다 . 이 포트 채널 인터페이스 번호는 채널 그룹 인터페이스 구성 명령 으로 지정된 번호에 해당합니다 .
L2 채널그룹 인터페이스 구성
- interface port-channel port-channel-number 전역 구성 명령을 사용하여 포트 채널 인터페이스를 수동으로 생성할 수 있지만 그런 다음 channel-group channel-group-number 명령을 사용하여 논리적 인터페이스를 물리적 포트에 바인딩
switch(config)#vlan 10
switch(config-vlan)#exit
switch(config)#int range e 0/0 - 1
switch(config-if-range)#switchport mode access
switch(config-if-range)#switchport access vlan 10
switch(config-if-range)#channel-group 1 mode desirable
Creating a port-channel interface Port-channel 1
L3 채널그룹 인터페이스 구성
- 레이어 3 포트를 사용하는 경우 interface port-channel 전역 구성 명령 다음에 no switchport 인터페이스 구성 명령 을 사용하여 논리적 인터페이스를 수동으로 생성해야 합니다 . 그런 다음 channel-group interface 구성 명령 을 사용하여 EtherChannel에 인터페이스를 수동으로 할당
switch(config)#int range e0/0 - 1
switch(config-if-range)#no switchport
switch(config-if-range)#channel-group 1 mode on
Creating a port-channel interface Port-channel 1
switch(config)#int port-channel 1
switch(config-if)#ip add 1.1.1.1 255.255.255.0
Port Aggregation Protocol
PAgP(Port Aggregation Protocol)는 Cisco 장치 에서만 실행할 수 있는 Cisco 독점 프로토콜
PAgP는 이더넷 포트 간에 PAgP 패킷을 교환하여 EtherChannel의 자동 생성
PAgP 모드
PAgP 모드는 포트가 PAgP 협상을 시작하는 PAgP 패킷을 보낼 수 있는지 또는 수신된 PAgP 패킷에만 응답할 수 있는지 여부를 지정합니다.
auto : 포트를 수동 협상 상태로 전환합니다. 이 상태에서 포트는 수신한 PAgP 패킷에 응답하지만 PAgP 패킷 협상을 시작하지 않습니다. 이 설정은 PAgP 패킷의 전송을 최소화합니다.
auto mode can form an EtherChannel with another port in the desirable mode.
desirable: PAgP 패킷을 전송하여 포트가 다른 포트와 협상을 시작하는 활성 협상 상태로 포트를 배치
desirable mode can form an EtherChannel with another port that is in the desirable or auto mode.
Link Aggregation Control Protocol
LACP는 IEEE 802.3ad에 정의되어 있으며 Cisco 장치 가 IEEE 802.3ad 프로토콜을 준수하는 장치 간의 이더넷 채널을 관리할 수 있도록 합니다. LACP는 이더넷 포트 간에 LACP 패킷을 교환하여 EtherChannel의 자동 생성을 용이하게 합니다.
LACP 모드
active : 포트를 LACP 패킷을 전송하여 다른 포트와의 협상을 시작하는 활성 협상 상태로 만듭니다.
A port in the active mode can form an EtherChannel with another port that is in the active or passive mode.
passive : 포트가 수신한 LACP 패킷에 응답하지만 LACP 패킷 협상을 시작하지 않는 수동 협상 상태로 포트를 놓습니다.이 설정은 LACP 패킷의 전송을 최소화합니다.
A port in the passive mode cannot form an EtherChannel with another port that is also in the passive mode because neither port starts LACP negotiation.
EtherChannel On Mode
EtherChannel on 모드를 사용하여 EtherChannel을 수동으로 구성할 수 있습니다. on 모드 는 포트가 협상 없이 EtherChannel에 강제로 참여하도록 합니다. 원격 장치가 PAgP 또는 LACP를 지원하지 않는 경우 on 모드가 유용할 수 있습니다 . on 모드에서 사용 가능한 EtherChannel 은 링크 양단의 장치 가 on 모드로 설정되어 있을 때만 존재 합니다.
동일한 채널 그룹에서 on 모드 로 구성된 포트 는 speed 및 duplex와 같은 호환 가능한 포트 특성을 가져야 합니다. 호환되지 않는 포트는 on 모드 로 구성되어 있어도 일시 중단 됩니다.
※on 모드 를 사용할 때는 주의해야 합니다. 이것은 수동 구성이며 EtherChannel의 양쪽 끝에 있는 포트는 동일한 구성을 가져야 합니다. 그룹이 잘못 구성되면 패킷 손실 또는 스패닝 트리 루프가 발생할 수 있습니다.
Load-Balancing and Forwarding Methods
MAC Address Forwarding
Source-MAC address forwarding : 패킷이 EtherChannel로 전달될 때 수신 패킷의 소스-MAC 주소를 기반으로 채널의 포트에 분산, 다른 호스트의 패킷은 채널에서 다른 포트를 사용하지만 동일한 호스트의 패킷은 채널에서 동일한 포트를 사용합니다.
destination-MAC address forwarding : 패킷이 EtherChannel로 전달될 때 수신 패킷의 목적지 호스트 MAC 주소를 기반으로 채널의 포트에 분산, 동일한 대상에 대한 패킷은 동일한 포트를 통해 전달되고 다른 대상에 대한 패킷은 채널의 다른 포트에서 전송됩니다.
source-and-destination MAC address forwarding : 패킷이 EtherChannel로 전달될 때 소스 및 대상 MAC 주소를 기반으로 채널의 포트에 분산, 소스-MAC 및 대상-MAC 주소 전달 방법이며 특정 장치 에 소스-MAC 또는 대상-MAC 주소 전달이 더 적합한지 여부가 명확하지 않은 경우 사용
IP Address Forwarding
source-IP address-based forwarding : 들어오는 패킷의 소스 IP 주소를 기반으로 패킷이 EtherChannel의 포트에 분산, 다른 IP 주소의 패킷은 채널의 다른 포트를 사용하고 동일한 IP 주소의 패킷은 채널의 동일한 포트를 사용
destination-IP address-based forwarding : 패킷이 수신 패킷의 목적지 IP 주소를 기반으로 EtherChannel의 포트에 분산, 동일한 IP 소스 주소에서 다른 IP 목적지 주소로 보낸 패킷을 채널의 다른 포트에서 보낼 수 있습니다. 다른 소스 IP 주소에서 동일한 대상 IP 주소로 전송된 패킷은 항상 채널의 동일한 포트에서 전송
source-and-destination IP address-based forwarding : 패킷은 수신 패킷의 소스 및 목적지 IP 주소를 기반으로 EtherChannel의 포트에 분산, Source-IP와 Destination-IP 주소 기반 포워딩의 조합인 이 포워딩 방법은 특정 장치 에서 Source-IP 또는 Destination-IP 주소 기반 포워딩이 더 적합한지 여부가 명확하지 않은 경우 사용
EtherChannel Configuration Guidelines
1. 스위치 또는 스위치 스택에서 최대 128개의 EtherChannel이 지원
2. 동일한 유형의 이더넷 포트를 최대 8개로 PAgP EtherChannel을 구성
3. 동일한 유형의 최대 16개의 이더넷 포트로 LACP EtherChannel을 구성(최대 8개의 포트가 활성 상태일 수 있고 최대 8개의 포트가 대기 모드에 있을 수 있습니다.)
4. 동일한 속도 및 이중 모드에서 작동하도록 EtherChannel의 모든 포트를 구성
5. EtherChannel의 모든 포트를 활성화
6. 그룹이 처음 생성되면 모든 포트는 그룹에 추가할 첫 번째 포트에 대해 설정된 매개변수를 따름.
(Allowed-VLAN list, Spanning-tree path cost for each VLAN, Spanning-tree port priority for each VLAN , Spanning-tree Port Fast setting)
7. 포트를 둘 이상의 EtherChannel 그룹의 구성원으로 구성 X
8. PAgP 및 LACP 모드 모두에서 EtherChannel을 구성X ,PAgP 및 LACP를 실행하는 EtherChannel 그룹은 스택의 동일한 스위치 또는 다른 스위치에 공존, 개별 EtherChannel 그룹은 PAgP 또는 LACP를 실행할 수 있지만 상호 운용할 수는 없음.
9. EtherChannel이 장치 인터페이스에 구성된 경우 dot1x system-auth-control 전역 구성 명령 을 사용하여 장치에서 IEEE 802.1x를 전역적으로 활성화하기 전에 인터페이스에서 EtherChannel 구성을 제거 .
Configuring Layer 2 EtherChannels (CLI)
Device# configure terminal
Device(config)# interface gigabitethernet2/0/1(pagp 최대 8개, lacp 최대 16개)
Device(config-if)# switchport mode access
Device(config-if)# switchport access vlan 22
Device(config-if)# channel-group 5 mode auto (channel-group 5 mode {auto [non-silent ] | desirable [non-silent ] | on } | { active | passive}
Configuring Layer 3 EtherChannels (CLI)
Device> enable
Device# configure terminal
Device(config)# interface gigabitethernet 1/0/2
Device(config-if)# no ip address
Device(config-if)# no switchport
Device(config-if)# channel-group 5 mode auto
Device(config-if)# end
Configuring EtherChannel Load-Balancing (CLI)
Device# configure terminal
Device(config)# port-channel load-balance src-mac
port-channel load-balance {dst-ip | dst-mac | dst-mixed-ip-port | dst-port | extended [ dst-ip | dst-mac | dst-port | ipv6-label | l3-proto | src-ip | src-mac | src-port ] | src-dst-ip | src-dst-mac src-dst-mixed-ip-port src-dst-port src-ip
| src-mac | src-mixed-ip-port | src-port }
Device(config)# end
Configuring the LACP Max Bundle Feature (CLI)
Device# configure terminal
Device(config)# interface port-channel 2
Device(config-if)# lacp max-bundle 3
(Specifies the maximum number of LACP ports in the port-channel bundle.
The range is 1 to 8.)
Device(config)# end
Configuring the LACP Port Channel Min-Links Feature (CLI)
Device> enable
Device# configure terminal
Device(config)# interface port-channel 2
Device(config-if)# port-channel min-links 3
Device(config)# end
Configuring the LACP Port Priority (CLI)
Device> enable
Device# configure terminal
Device(config)# interface gigabitethernet 1/0/2
Device(config-if)# lacp port-priority 32000
(범위는 1 ~ 65535입니다. 기본값은 32768입니다. 값이 낮을수록 포트가 LACP 전송에 사용될 가능성이 높아집니다.)
Device(config-if)# end
Monitoring EtherChannel, PAgP, and LACP Status
1. clear lacp { channel-group-number counters | counters }
- LACP 채널 그룹 정보 및 트래픽 카운터를 지웁니다.
2. clear pagp { channel-group-number counters | counters }
- PAgP 채널 그룹 정보 및 트래픽 카운터를 지웁니다.
3. show etherchannel [ channel-group-number { detail | load-balance | port | port-channel | protocol | summary }] [ detail | load-balance | port | port-channel | protocol | auto | summary ]
- EtherChannel 정보를 간략하고 상세하며 한 줄 요약 형식으로 표시합니다. 또한 로드 밸런싱 또는 프레임 분배 방식, 포트, 포트 채널, 프로토콜 및 Auto-LAG 정보를 표시합니다
4. show pagp [ channel-group-number ] { counters | internal | neighbor }
- 트래픽 정보, 내부 PAgP 설정, 이웃 정보 등의 PAgP 정보를 표시합니다.
5. show pagp [ channel-group-number ] dual-active
- 이중 활성 감지 상태를 표시합니다.
6. show lacp [ channel-group-number ] { counters | internal | neighbor | sys-id }
- 트래픽 정보, 내부 LACP 구성, 이웃 정보와 같은 LACP 정보를 표시합니다.
7. show etherchannel load-balance
- 포트 채널에 있는 포트 간의 로드 균형 또는 프레임 분배 방식을 표시합니다.