네트워크

BGP (Border Gateway Protocol) 에 대해 알아보겠습니다.

forward error correction Circle 2025. 10. 24. 08:11
반응형

Ⅰ. BGP (Border Gateway Protocol) 이란?

 인터넷의 핵심 라우팅 프로토콜로, 서로 다른 자율 시스템(AS) 간에 네트워크 정보를 교환하고 데이터 패킷이 이동할 최적의 경로를 결정합니다. BGP는 TCP 포트 179를 사용하며, 경로 벡터 알고리즘을 기반으로 정책 기반 라우팅을 수행하여 네트워크 트래픽의 흐름을 제어하고 효율적인 데이터 전송을 가능하게 합니다. 

Ⅱ. BGP (Border Gateway Protocol) 역할

 ⅰ. 경로 결정: 인터넷을 구성하는 수많은 네트워크(AS) 간에 라우팅 정보를 교환하고, 데이터 패킷이 목적지까지 도달하는 가장 효율적인 경로를 선택합니다. 
 ⅱ. 정책 기반 라우팅: 단순한 최단 거리뿐만 아니라 사업적 고려사항(비용 등)을 반영한 정책 기반의 경로 선택을 지원하여, 라우팅 제어의 유연성을 제공합니다. 
 ⅲ. 라우팅 정보 교환: AS(Autonomous System)라는 각 네트워크 단위의 경계에 있는 라우터들이 BGP를 통해 서로의 IP 주소 대역 정보를 교환하며, 이를 통해 다른 AS의 IP로 통신이 가능해집니다. 

Ⅲ. BGP (Border Gateway Protocol) 작동 원리

 ⅰ. 1단계: 페어링(Neighbor) 설정 
 1) TCP 연결: BGP 라우터는 통신을 시작하기 위해 TCP 포트 179를 이용해 이웃 라우터와 연결을 설정합니다.
 2) 세션 구성: 이 연결을 통해 BGP 세션을 구성하며, 이는 BGP 메시지 교환의 기반이 됩니다.
 3) 피어링: BGP 세션을 맺은 라우터를 서로 '피어' 또는 '이웃'이라고 부릅니다. 
 ⅱ. 2단계: 경로 교환(UPDATE 메시지)
 1) UPDATE 메시지: BGP 세션이 구성되면, 라우터들은 UPDATE 메시지를 주고받으며 경로 정보를 교환합니다.
 2) 포함 속성: UPDATE 메시지에는 다음 정보가 포함됩니다:
 3) 목적지(prefix): 도달 가능한 네트워크의 주소 정보입니다.
 4) AS 경로(AS_PATH): 목적지까지 거쳐야 하는 자율 시스템(AS)의 목록입니다. 이를 통해 루프(loop)를 방지하고 경로의 길이를 판단할 수 있습니다.
 5) 로컬 우선순위(LOCAL_PREF): 동일 AS 내의 라우터들이 외부 AS로 나가는 트래픽에 대해 선호하는 경로를 결정하는 데 사용됩니다. 
 ⅲ. 3단계: 경로 선택(Path Selection) 
1) 경로 비교: 여러 라우터로부터 동일한 목적지에 대한 여러 경로 정보가 수신되면, BGP는 정책에 따라 최적의 경로를 선택합니다.
2) 우선순위 순서: 다음의 우선순위 기준에 따라 경로를 비교합니다:
3) 가장 높은 LOCAL_PREF: 동일한 AS 내에서 나가는 트래픽에 대한 선호도를 결정합니다.
4) 가장 짧은 AS_PATH: 목적지까지 거치는 AS의 수가 가장 적은 경로를 선호합니다.
5) 가장 낮은 ORIGIN 타입: 경로가 어떻게 생성되었는지를 나타내는 속성으로, IGP를 통해 학습된 경로를 더 선호합니다.
6) 가장 낮은 MED(Multi-Exit Discriminator): 인접한 AS가 트래픽을 보낼 때 어떤 진출 지점을 선호하는지 결정하는 데 사용됩니다.
7) eBGP over iBGP 우선: 외부 BGP(eBGP)로 학습한 경로를 내부 BGP(iBGP)로 학습한 경로보다 우선시합니다.
8) 가장 낮은 IGP 거리: 최적의 경로에 도달하기까지 내부 게이트웨이 프로토콜(IGP)을 통한 비용이 가장 낮은 경로를 선호합니다.
9) 가장 낮은 Router ID: 위의 모든 기준이 동일할 경우, 라우터 ID가 가장 낮은 라우터에서 온 경로를 선택합니다. 
 ⅳ. 4단계: 경로 광고(ADVERTISE)
1) 최적 경로만 전파: 경로 선택 과정을 거쳐 선정된 '최적 경로'만 이웃 AS에 다시 광고합니다.
2) 경로 정보 전파: 이 과정을 통해 인터넷 전체에 최적의 경로 정보가 전파되어 효율적인 데이터 전송이 가능해집니다. 

Ⅳ. BGP (Border Gateway Protocol) 종류 

 ⅰ. EBGP(External BGP): 서로 다른 AS(자율 시스템) 간에 라우팅 정보를 교환할 때 사용되는 BGP입니다.
 ⅱ. IBGP(Internal BGP): 동일한 AS(자율 시스템) 내에서 라우팅 정보를 교환하기 위해 사용되는 BGP입니다.

Ⅴ. BGP (Border Gateway Protocol)  특징

 ⅰ. 정책 기반 제어: AS마다 원하는 경로를 직접 구성·제어할 수 있어 비즈니스 요구에 부합하는 라우팅 정책 구현 가능
 ⅱ. 확장성: 수십만 개의 경로(prefix)를 처리할 수 있도록 설계
 ⅲ. 안정성: TCP 기반 신뢰성 전송, Keepalive 및 Hold Timer로 세션 모니터링
 ⅳ. 유연성: iBGP(같은 AS 내 라우터 간), eBGP(다른 AS 간) 지원

Ⅵ. BGP (Border Gateway Protocol) 장단점

BGP (Border Gateway Protocol) 
장점 1) 복잡한 망 구조에서도 안정적 경로 설정
2) 비즈니스·보안·트래픽 엔지니어링(TE)을 위한 정책 제어 기능
3) 글로벌 인터넷 규모 확장성
단점 1) 수렴 시간 지연: 경로 변화 시 전체 망이 안정화되기까지 수 초에서 수십 초 소요
2) 구성 복잡성: 다양한 속성과 정책으로 인한 설정 오류 위험
3) 보안 취약성: 경로 하이재킹(Border Hijacking)·세션 탈취·경로 위조 위험
4) 리소스 요구량: 대규모 경로 테이블 유지에 CPU·메모리 부담

Ⅶ. BGP (Border Gateway Protocol) 처리 방식

 ⅰ. 경로 정보 교환 (AS 간 통신)
   1) AS(Autonomous System): 인터넷을 구성하는 독립적인 네트워크들의 집합으로, BGP는 이러한 각 AS 간에 라우팅 정보를 교환합니다. 
   2) 경로 벡터 알고리즘: BGP는 경로 정보를 전달할 때, 단순히 거리만을 알려주는 것이 아니라, 어떤 AS들을 거쳐야 하는지에 대한 전체 경로 정보를 함께 제공합니다. 
   3) 네이버(Neighbor) 관계 설정: 서로 다른 AS의 라우터는 BGP를 통해 네이버(Peer) 관계를 설정하고, TCP 포트 179번을 이용해 라우팅 정보를 교환합니다. 
 ⅱ. 최적 경로 선택 (경로 속성 비교)
   1) 경로 속성: BGP는 단순히 거리가 짧은 경로보다 더 다양한 정보인 **경로 속성(Path Attributes)**을 사용하여 경로를 선택합니다. 
   2) 의사 결정 과정: 여러 경로 속성(예: AS 경로 길이, Local Preference 등)들을 우선순위에 따라 순차적으로 비교하여 가장 적합한 경로를 결정합니다. 
   3) 경로 정책: 관리자는 특정 네트워크 정책이나 규칙 집합을 적용하여 경로 선택에 영향을 미칠 수 있습니다. 
 ⅲ. 데이터 전송 및 트래픽 제어
   1) 동적 라우팅: BGP는 네트워크 상황 변화에 따라 최적의 경로를 동적으로 찾아내므로, 안정적인 데이터 전송과 트래픽 흐름을 보장합니다. 
   2) 효율적인 경로 결정: BGP를 통해 데이터 패킷의 디지털 도착지를 파악하고, 가장 효율적인 네트워크 경로를 선택하여 데이터를 목적지까지 전달합니다

반응형