링크 애그리게이션

링크 애그리게이션(link Aggregation)은 컴퓨터 네트워크에서 하나의 연결이 지탱할 수 있는 것 이상으로 스루풋을 증가시키기 위해, 또 링크 중 하나가 실패할 것을 대비하여 다중화(redundancy)를 제공하기 위해 여러 네트워크 연결을 병렬로 연결하는 여러 가지 방식에 적용된다. 링크 애그리게이션 그룹(LAG)은 수많은 물리적 포트를 하나로 병합하여 하나의 고대역 데이터 경로를 만들어주며 그룹 내 멤버 포트들 간에 트래픽 부하 분산을 구현하고 연결의 신뢰성을 강화한다.

이 방식을 기술하는 다른 우산 용어들로는 포트 트렁킹(port trunking), 링크 번들링(link bundling), 이더넷/네트워크/NIC 본딩, NIC 티밍(NIC teaming), 네트워크 이중화, 네트워크 다중화가 있다.

개요 
링크 애그리게이션은 이더넷 연결에서 두 가지 문제를 해결한다: 대역폭 제한, 회복성 결여.

첫 번째 문제의 경우 대역폭의 요구는 선형적으로 늘어나지 않는다. 이더넷의 대역폭은 역사적으로 여러 세대에 걸쳐 10씩 증가해왔다: 10 Mbit/초, 100 Mbit/초, 1000 Mbit/초, 10,000 Mbit/초. 대역폭 한계에 마주치기 시작하면 유일한 옵션은 비용이 엄청날 수 있는 다음 세대로 이동하는 것 뿐이다. 다른 솔루션으로는 1990년대 초에 네트워크 제조업체들 중 다수가 도입한 것으로서 채널 본딩을 통해 2개의 물리 이더넷 링크를 하나의 논리 링크로 병합하는 것이다. 이 해결책들 중 대부분은 수동 구성 및 유사 장비가 애그리게이션의 양측에 필요했다.

두 번째 문제는 일반적인 포트-케이블-포트 연결에서 3개의 단일 장애점을 동반한다.

IEEE 링크 애그리게이션

표준화 작업 
1990년대 중반까지 대부분의 네트워크 스위치 제조업체들은 스위치 간 대역폭 증가를 위한 사유 확장으로서 애그리게이션 기능을 포함하였다. 그러나 각 제조업체는 자신들만의 방식을 개발하였으므로 호환성 문제가 있었다. IEEE 802.3 그룹은 스터디 그룹을 구성하여 1997년 11월 미팅에서 상호 운용 가능한 링크 계층 표준을 만들었다. 이 그룹은 다중화도 추가할 수 있는 자동화된 구성 기능을 포함하는 것에 조속히 동의하였다. 이것이 "링크 애그리게이션 컨트롤 프로토콜"(Link Aggregation Control Protocol, LACP)로 되었다.

 2000년: 802.3ad 최초판
 2008년: 802.1 레이어로 이동

리눅스 본딩 드라이버 
리눅스 본딩 드라이버(Linux bonding driver)는 여러 개의 네트워크 인터페이스 컨트롤러를 이른바 (NIC) 슬레이브로 불리는 둘 이상의 단일 논리 본딩 인터페이스로 병합하는 방식을 제공한다.

드라이버 모드 
리눅스 본딩 드라이버의 모드(네트워크 인터페이스 애그리게이션 모드)는 로드 시에 커널 본딩 모듈의 변수로 제공된다.
 라운드 로빈(balance-rr)
 액티브-백업
 XOR
 브로드캐스트
 IEEE 802.3ad 동적 링크 애그리게이션(802.3ad, LACP)
 적응형 전송 부하 분산(Adaptive transmit load balancing, balance-tlb)
 적응형 부하 분산(adaptive load balancing, balance-alb)

리눅스 팀 드라이버 
리눅스 팀 드라이버(Linux Team driver)는 본딩 드라이버의 대안을 제공한다. 주된 차이점은 팀 드라이버 커널 부분에는 오직 필수적인 코드만 포함되어 있으며 코드의 나머지 부분(링크 확인, LACP 구현, 의사 결정 등)은 teamd 데몬의 일부로서 사용자 공간에서 실행된다는 점이다.

같이 보기 
 IEEE 802.1aq
 MC-LAG
 신장 트리 프로토콜

각주

외부 링크 
 IEEE P802.3ad Link Aggregation Task Force
 Mikrotik link Aggregation / Bonding Guide
 Configuring a Shared Ethernet Adapter ( SEA ) - IBM
 Managing VLANs on mission-critical shared Ethernet adapters - IBM
 Network overview by Rami Rosen (section about bonding)

이더넷
링크 프로토콜