
LACP(Link Aggregation)로 대역폭을 4배 확장하는 방법
"LACP(Link Aggregation Control Protocol)"는 여러 물리 링크를 하나의 논리 링크로 묶어 대역폭을 늘리고 이중화까지 제공하는 표준 프로토콜이다. 1Gbps 링크 4개를 묶으면 최대 4Gbps처럼 활용할 수 있고, 링크 하나가 끊어져도 나머지 링크로 계속 통신이 가능하다.
📌목차
- 트래픽 병목이 생기는 이유
- LACP란 무엇인가
- LACP vs 정적 EtherChannel
- LACP 로드밸런싱 방식
- Cisco 스위치 LACP 설정법
- Linux 서버 LACP(Bonding) 설정
- LACP 트러블슈팅
- 실무 적용 시 주의사항
🚧 트래픽 병목이 생기는 이유
코어 스위치와 서버 간 링크가 1Gbps인데 서버로 오가는 트래픽이 1Gbps를 넘으면 큐가 쌓이고 지연이 생긴다. 이게 "트래픽 병목"이다. 특히 백업, 대용량 파일 전송, 가상화 환경의 VM 마이그레이션, NAS 접근 등 대역폭을 많이 쓰는 작업에서 심하게 나타난다.
해결책은 두 가지다. 더 빠른 링크(1Gbps → 10Gbps)로 업그레이드하거나, 여러 링크를 묶는 "LACP"를 사용하는 것. 10Gbps NIC와 스위치 포트 업그레이드는 비용이 크다. 반면 기존 1Gbps 포트 4개를 묶는 건 추가 하드웨어 없이 설정만으로 가능한 경우가 많다.
🔗 LACP란 무엇인가
"LACP"는 IEEE 802.3ad(현재는 802.1AX) 표준으로 정의된 동적 Link Aggregation 프로토콜이다. 양쪽 장비(스위치-스위치, 스위치-서버)가 LACP PDU를 주고받으며 어그리게이션 그룹을 협상하고 유지한다. 링크가 추가되거나 빠져도 자동으로 감지하고 재협상한다.
만들어진 논리 인터페이스를 Port-Channel(Cisco), Bond(Linux), Trunk(일부 벤더)라고 부른다. 이 논리 인터페이스는 VLAN 설정, IP 할당, STP 등 다른 설정에서 마치 단일 포트처럼 다뤄진다. "트래픽 병목" 해소와 이중화를 동시에 얻을 수 있는 매우 효율적인 기술이다.
⚖️ LACP vs 정적 EtherChannel
정적 EtherChannel(Mode ON)은 협상 없이 강제로 묶는 방식이다. 빠르게 설정할 수 있지만, 한쪽 장비에서 링크 묶음이 실패해도 다른 쪽은 모른다. 잘못 설정하면 루프가 생길 수 있다.
"LACP"(Mode Active 또는 Passive)는 양방향 협상을 통해 동작한다. 링크 추가/제거를 자동으로 처리하고, 설정 불일치 시 어그리게이션을 하지 않아 더 안전하다. 실무에서는 "LACP" 방식을 쓰는 게 권장된다. Active-Active(양쪽 모두 Active) 또는 Active-Passive 조합으로 설정한다.
🔀 LACP 로드밸런싱 방식
"LACP"로 묶은 링크에 트래픽을 어떻게 분산할지는 해싱 알고리즘으로 결정된다. 주요 방식:
src-mac: 출발지 MAC으로 해시. 같은 MAC에서 온 트래픽은 같은 링크로 간다. dst-mac: 목적지 MAC으로 해시. src-dst-mac: 출발지+목적지 MAC 조합으로 해시. 가장 고루 분산된다. src-dst-ip: IP 주소 기반 해시. IP가 다양하면 균등 분산에 유리하다. src-dst-port: 포트까지 포함한 해시. 세션별로 균등 분산 가능.
중요: "LACP"는 하나의 세션(같은 IP-Port 쌍)을 여러 링크로 분산하지 않는다. 한 세션은 항상 같은 링크를 타게 되어있어 세션 순서 보장이 된다. 대신 여러 세션이 여러 링크에 분산된다. 그래서 단일 대용량 파일 전송은 링크 하나를 꽉 채울 뿐 나머지 링크는 안 쓴다. 여러 동시 세션이 있을 때 분산 효과가 크다.
🔧 Cisco 스위치 LACP 설정법
Cisco IOS 기준 설정 예시 (GigabitEthernet0/1, 0/2를 Port-Channel 1로 묶기):
interface GigabitEthernet0/1 channel-group 1 mode active interface GigabitEthernet0/2 channel-group 1 mode active interface Port-Channel1 switchport mode trunk switchport trunk allowed vlan all
상대방 스위치나 서버도 마찬가지로 설정. 한쪽이 Active면 다른 쪽은 Active 또는 Passive로 설정. 확인: show etherchannel summary, show lacp neighbor
로드밸런싱 방식 변경: port-channel load-balance src-dst-ip
🐧 Linux 서버 LACP(Bonding) 설정
Linux에서는 Bonding 드라이버로 "LACP"와 동등한 기능을 구현한다. mode 4가 802.3ad LACP다.
/etc/network/interfaces 예시: auto bond0 iface bond0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1 bond-slaves eth0 eth1 bond-mode 4 bond-miimon 100 bond-lacp-rate 1
NetworkManager 환경에서는 nmcli로 설정 가능. systemd-networkd 환경도 별도 설정 파일로 구성한다. 설정 후 cat /proc/net/bonding/bond0 으로 상태 확인 가능.
🔍 LACP 트러블슈팅
Port-Channel이 up이 안 될 때: 양쪽 LACP mode가 호환되는지 확인(둘 다 Passive면 협상 안 됨). 물리 링크 상태 확인. 속도/듀플렉스가 동일한지 확인.
트래픽이 특정 링크에만 쏠릴 때: 로드밸런싱 알고리즘 변경. src-dst-ip나 src-dst-port 방식으로 변경하면 분산이 개선되는 경우가 많다.
"트래픽 병목"이 여전한 경우: 세션 수가 적으면 LACP 분산 효과가 제한적. 이 경우 더 빠른 링크 업그레이드가 근본 해결책이다.
⚠️ 실무 적용 시 주의사항
LACP로 묶인 포트들은 모두 동일한 속도, 동일한 듀플렉스, 동일한 VLAN 설정이어야 한다. 다른 스위치의 포트들을 하나의 Port-Channel로 묶으려면 VSS, StackWise, MLAG 같은 기술이 필요하다. 일반 "LACP"는 같은 스위치의 포트만 묶을 수 있다. Cross-stack LACP 지원 여부는 스위치 모델별로 확인이 필요하다.
출처 및 참고자료
- IEEE 802.1AX - Link Aggregation Standard
- Cisco - EtherChannel Configuration Guide: https://www.cisco.com/c/en/us/support/docs/lan-switching/etherchannel/
- Linux Kernel Documentation - Bonding Driver: https://www.kernel.org/doc/Documentation/networking/bonding.rst
- Juniper - Link Aggregation Group Configuration
'IT적응기' 카테고리의 다른 글
| VPC(Virtual Private Cloud) 완전 정복 – 클라우드 안에 내 전용 네트워크 만드는 법 3단계 (0) | 2026.04.16 |
|---|---|
| 보안의 기초 ACL(Access Control List)로 특정 IP 차단하는 실전 설정법 완전 정리 (0) | 2026.04.16 |
| 패킷 캡처 실습: 와이어샤크(Wireshark)로 L2/L3 헤더 뜯어보는 완전 입문 가이드 (0) | 2026.04.15 |
| ARP 테이블 분석 실전: IP와 MAC 주소 매칭 오류를 해결하는 6가지 방법 (0) | 2026.04.14 |
| 네트워크 장애 1순위 원인: 케이블 불량과 포트 설정 오류를 찾아내는 7단계 점검법 (0) | 2026.04.14 |