본문 바로가기

동적 라우팅 프로토콜

AS 내부의 IGP와 eBGP·iBGP가 경로 정보를 나누어 전달하고, BGP가 정책과 경로 속성으로 후보를 선택하는 방식을 이해합니다.

정적 라우팅은 관리자가 직접 경로를 설정하는 방식이었습니다.

하지만 네트워크 규모가 커질수록 모든 경로와 변경을 수동 설정만으로 빠르게 반영하기는 어렵습니다.

라우터들이 스스로 경로 정보를 교환하고, 네트워크 변화에 자동으로 적응하는 것이 동적 라우팅 프로토콜의 역할입니다.

두 AS 내부에서는 IGP가 다음 홉 도달성을 제공하고, 경계의 BGP speaker는 eBGP로 prefix와 경로 속성을 교환하는 관계

AS BOUNDARY

IGP의 내부 도달성 위에서 eBGP가 AS 경로 정보를 교환한다

IGP는 AS 안의 전달 경로를 만들고, BGP는 그 기반 위에서 AS 경계를 넘어 도달성 정보를 교환합니다.

AS 내부 IGP와 AS 사이 eBGP의 연결 왼쪽 AS A와 오른쪽 AS B에 각각 내부 라우터와 경계 BGP speaker가 있다. 각 AS 안에서는 IGP 링크가 내부 도달성을 제공하고, 두 경계 speaker 사이의 eBGP session은 prefix와 path attribute를 양방향으로 교환한다. AS A 한 운영 정책 AS B 한 운영 정책 eBGP · UPDATE 내부 라우터 IGP 경계 라우터 경계 BGP 경계 라우터 경계 BGP 내부 라우터 IGP 내부 경로 · NEXT_HOP 도달성 내부 경로 · NEXT_HOP 도달성 IGP · AS 내부 eBGP · 서로 다른 AS iBGP는 같은 AS의 BGP speaker 사이에서 외부 경로를 전달할 수 있습니다.
같은 AS 경계와 연결을 모바일에서 세로로 읽기위 AS A와 아래 AS B에 내부 라우터와 경계 BGP speaker가 각각 있다. 영역 안의 IGP 연결은 내부 NEXT_HOP 도달성을 제공한다. 두 경계 speaker 사이 eBGP 연결은 prefix와경로속성의정보교환이다. 연결선은 데이터패킷의일방향이동을표시하지않는다.AS AAS B내부 라우터IGP경계 라우터경계 BGP경계 라우터경계 BGP내부 라우터IGPIGPeBGP · UPDATEIGP

iBGP는 같은 AS의 BGP speaker 사이에서 외부 경로 정보를 전달할 수 있습니다. 위 연결은 IGP 내부 도달성과 eBGP 정보 교환을 비교한 것이며 iBGP 연결을 별도 선으로 그린 것은 아닙니다.

BGP는 IGP를 대체하지 않습니다. 선택한 BGP NEXT_HOP은 로컬 라우팅 테이블에서 해석할 수 있어야 합니다.

라우팅 프로토콜은 AS(Autonomous System, 자율 시스템)를 기준으로 크게 두 종류로 나뉩니다.

AS는 하나의 운영 정책 아래 관리되는 라우터 집합이며, 인터넷에서는 보통 ISP, 클라우드 사업자, 큰 기업망이 AS 번호를 가지고 다른 AS와 경로 정보를 교환합니다.

구분IGPBGP
적용 범위AS 내부AS 간 eBGP, AS 내부 iBGP
교환 정보내부 도달성 정보와 프로토콜별 metricIP prefix 도달성과 path attribute
판단 핵심metric에 따른 내부 경로로컬 정책에 따른 선호도와 동률 해소
예시RIP, OSPF, IS-ISBGP-4
관심사수렴, 루프 방지, 장애 우회import/export 정책, 안정성, 확장성

IGP(Interior Gateway Protocol)는 AS 내부에서 사용되는 라우팅 프로토콜입니다.

RIP, OSPF, IS-IS가 여기에 속합니다.

하나의 조직이 자체 네트워크 안에서 프로토콜에 정의된 metric으로 내부 경로와 BGP의 다음 홉까지 가는 경로를 찾는 데 사용합니다.

eBGP(external BGP)는 서로 다른 AS의 peer를 연결하고, iBGP(internal BGP)는 같은 AS의 BGP speaker 사이에서 외부 경로를 전달합니다.

BGP가 IGP를 대신하는 것은 아닙니다. 선택한 BGP 경로의 NEXT_HOP은 로컬 라우팅 테이블에서 해석할 수 있어야 하므로 두 체계가 함께 동작합니다.

인터넷에서 AS 사이의 라우팅 정보를 교환하는 표준 exterior gateway protocol은 BGP입니다. 역사적인 프로토콜 이름인 EGP와 혼동하지 않도록 여기서는 AS 간 BGP라고 부르겠습니다.

같은 IGP에 속하더라도 프로토콜마다 경로를 비교하는 값과 학습하는 정보는 다릅니다. RIP는 이웃에게 목적지와 거리 정보를 받고, 기본 홉 수 방식에서는 더 적은 홉을 선호합니다. 유효한 메트릭의 최대는 15이며 16은 도달 불가를 뜻합니다. OSPF는 같은 영역의 링크 상태 정보를 모아 자신을 출발점으로 최단 경로를 계산합니다. 아래 비교는 같은 영역·같은 경로 종류의 내부 경로에 한정합니다.

예시

라우터 A·B·C의 각 방향 OSPF 비용을 대칭으로 가정하고 A–B=2, B–C=3, A–C=8로 정했습니다. A에서 C까지 직접 가는 비용은 8이고 B를 거치는 비용은 2 + 3 = 5이므로 다음 홉 B를 고릅니다. 반면 같은 연결에서 각 링크를 홉 하나로 세는 RIP 비교라면 A–C의 1홉이 A–B–C의 2홉보다 적습니다. 서로 다른 프로토콜의 메트릭 5와 1을 직접 비교하는 계산은 아닙니다.

스스로 바꾸기: 위 OSPF 조건에서 B–C의 비용만 9가 되었다면 A가 선택할 다음 홉과 비용은 무엇인가요? 이어 B–C 링크가 끊어진 뒤 관련 정보가 수렴한 상태에서는 어떤 경로가 남는지 설명하세요.

경로 전체의 비용과 수렴 조건 확인

B를 거치면 2 + 9 = 11이고 직접 경로는 8이므로 다음 홉 C를 선택합니다. B–C가 끊어진 뒤에도 A–C가 정상이라는 조건에서는 직접 경로 비용 8이 남습니다. 링크 장애 감지와 정보 전파·경로 재계산에는 시간이 들므로 장애 순간부터 모든 라우터가 즉시 같은 경로를 고른다고 결론 내리지 않습니다.

RIP v2 명세의 메트릭·수렴 설명과 OSPF v2 명세의 영역 내 최단 경로 계산을 각각의 판단 근거로 읽습니다. OSPF 비용은 이 예시에 준 값이며 특정 벤더의 기본 대역폭 공식까지 가정하지 않습니다.

BGP: 인터넷의 경로 결정

BGP(Border Gateway Protocol) speaker는 어떤 IP prefix에 도달할 수 있는지와 그 경로의 속성을 peer에게 전달합니다.

BGP session은 TCP 179번 포트를 사용하며, UPDATE 메시지로 prefix와 path attribute를 교환합니다.

BGP는 OSPF처럼 단순히 최단 경로를 찾는 것이 목적이 아닙니다.

AS 간의 라우팅은 기술적 최적화뿐 아니라 정책(Policy)에 의해 결정됩니다.

특정 ISP를 경유하지 않겠다, 고객 경로를 우선하겠다, 특정 prefix는 광고하지 않겠다 같은 운영·계약상의 결정이 BGP 설정에 반영됩니다.

BGP 경로 선택에는 로컬 정책과 LOCAL_PREF, AS_PATH, ORIGIN, MED, NEXT_HOP까지의 IGP cost 같은 값이 관여합니다. 해석할 수 없는 NEXT_HOP은 후보에서 제외하며, AS loop가 있는 경로도 일반적으로 제외합니다.

기본 BGP 명세의 decision process는 개념 모델이며, 로컬 정책의 계산 방식은 해당 AS가 정합니다. 구현은 같은 외부 동작을 내는 다른 알고리즘이나 추가 로컬 기준을 사용할 수 있으므로, 정확한 세부 순서는 장비 문서와 현재 설정으로 확인해야 합니다.

따라서 BGP best path를 하나의 점수 합계로 외우기보다, 정책 평가 → 사용 가능성 → 최고 선호도와 동률 해소 → 반영과 광고 순서로 나누어 읽는 편이 정확합니다.

BGP 경로 후보를 단계적으로 좁히는 관점

두 후보에 수신 정책을 적용합니다. 로컬 선택과 peer별 광고 정책을 적용합니다. 각 단계의 값과 전환 이유를 비교합니다.

BGP가 정책 평가, 사용 가능성 확인, 최고 선호도와 동률 해소, 결과 반영과 광고의 네 단계로 경로 후보를 좁히는 개념 절차

BGP BEST-PATH · CONCEPTUAL ORDER

BGP는 허용되고 사용 가능한 후보에서 선호도와 동률을 평가한다

고정 점수를 모두 더하는 표가 아니라, 사용할 수 없는 후보를 제외하고 선호도가 같은 후보를 순서대로 줄이는 과정으로 읽습니다.

BGP 후보를 좁히고 선택 결과를 광고하는 단계후보 경로 집합에 정책을 적용하고 사용 불가 후보를 제외한다. 남은 후보에서 높은 선호도와 동률 해소로 경로를 선택하여 반영하고 peer별정책으로광고한다. 화살표는 후보판단단계이며 사용자의데이터패킷이 BGP세션을지나는경로가아니다.
정책 평가허용 여부 · 선호도
연결 관계정책 평가 · 허용 여부 · 선호도 → 사용 가능성 · NEXT_HOP · AS loop
사용 가능성NEXT_HOP · AS loop
연결 관계사용 가능성 · NEXT_HOP · AS loop → 최고 선호도 · 동률이면 추가 기준
최고 선호도동률이면 추가 기준
연결 관계최고 선호도 · 동률이면 추가 기준 → 반영 · 광고 · Loc-RIB · peer 정책
반영 · 광고Loc-RIB · peer 정책
  1. 수신 경로에 로컬 정책을 적용합니다

    Adj-RIBs-In의 각 경로에 import 정책을 적용해 부적격 여부와 선호도를 계산합니다. 외부에서 학습한 경로를 iBGP로 다시 광고할 때는 계산한 선호도를 LOCAL_PREF로 전달합니다.

  2. 경로를 실제로 사용할 수 있는지 확인합니다

    NEXT_HOP을 로컬 라우팅 테이블로 해석할 수 없는 경로를 제외하고, AS_PATH의 AS loop도 확인합니다.

  3. 최고 선호도를 고르고 동률을 해소합니다

    가장 높은 선호도의 후보가 여러 개면 기본 명세는 AS_PATH 길이, ORIGIN, 비교 가능한 MED, eBGP 여부, NEXT_HOP까지의 IGP cost 같은 기준으로 후보를 줄입니다.

  4. 선택 결과를 반영하고 광고합니다

    선택한 경로를 Loc-RIB에 반영하고, peer별 export 정책을 적용해 광고할 경로를 Adj-RIBs-Out에 구성합니다.

장비에서 확인할 때

이 순서는 표준의 공통 개념 경계입니다. 구현별 추가 기준과 정확한 명령 순서는 해당 장비의 공식 문서와 현재 정책 설정을 함께 확인합니다.

핵심은 가장 짧은 경로가 언제나 이기는 것이 아니라, 먼저 허용되고 선호된 후보들 사이에서 동률을 해소한다는 점입니다.

이 예의 조건

  • 본문과 전체 도표의 예를 따라 정책 평가부터 반영과 광고까지 진행합니다.
관계도의 보충 설명
전체 도표의 표기·관계·조건
구분전체 도표의 내용
제목BGP 경로 후보를 단계적으로 좁히는 관점
관계 설명후보 경로 집합에 정책을 적용하고 사용 불가 후보를 제외합니다. 남은 후보에서 높은 선호도와 동률 해소로 경로를 선택하여 반영하고 peer별 정책으로 광고합니다. 화살표는 후보 판단 단계이며 사용자의 데이터 패킷이 BGP 세션을 지나는 경로가 아닙니다.
예의 값과 변화
관찰·상황값·보충 정보변화·이유
정책 평가

두 후보에 수신 정책을 적용합니다.

  • 후보·정책 1: A LOCAL_PREF200/ASlength3
  • 후보·정책 2: B100/1
  • 둘 다 import 허용인 예; LOCAL_PREF와 AS 길이를 구별
사용 가능성

NEXT_HOP과 AS 루프 조건을 확인합니다.

  • 후보·정책 1: 둘 다 사용 가능
  • 후보·정책 2: loop 없음
  • 둘 다 사용 가능; A가 불가능하면 별도 사례에서 제외
선호도 선택

더 높은 LOCAL_PREF를 가진 A를 선택합니다.

  • 후보·정책 1: 200>100
  • 후보·정책 2: A 선택
  • 200 > 100; 짧은 AS 경로 B가 자동 승자는 아니며 동률에는 추가 기준 필요
반영과 광고

로컬 선택과 peer별 광고 정책을 적용합니다.

  • 후보·정책 1: Loc-RIB A
  • 후보·정책 2: export 별 Adj-RIBs-Out
  • Loc-RIB과 Adj-RIBs-Out에 반영; 사용자 패킷이 BGP TCP 179로 이동하는 뜻은 아님

BGP 경로 후보를 단계적으로 좁히는 관점

두 후보에 수신 정책을 적용합니다. 로컬 선택과 peer별 광고 정책을 적용합니다. 각 단계의 값과 전환 이유를 비교합니다.

BGP가 정책 평가, 사용 가능성 확인, 최고 선호도와 동률 해소, 결과 반영과 광고의 네 단계로 경로 후보를 좁히는 개념 절차

BGP BEST-PATH · CONCEPTUAL ORDER

BGP는 허용되고 사용 가능한 후보에서 선호도와 동률을 평가한다

고정 점수를 모두 더하는 표가 아니라, 사용할 수 없는 후보를 제외하고 선호도가 같은 후보를 순서대로 줄이는 과정으로 읽습니다.

BGP 후보를 좁히고 선택 결과를 광고하는 단계후보 경로 집합에 정책을 적용하고 사용 불가 후보를 제외한다. 남은 후보에서 높은 선호도와 동률 해소로 경로를 선택하여 반영하고 peer별정책으로광고한다. 화살표는 후보판단단계이며 사용자의데이터패킷이 BGP세션을지나는경로가아니다.
정책 평가허용 여부 · 선호도
연결 관계정책 평가 · 허용 여부 · 선호도 → 사용 가능성 · NEXT_HOP · AS loop
사용 가능성NEXT_HOP · AS loop
연결 관계사용 가능성 · NEXT_HOP · AS loop → 최고 선호도 · 동률이면 추가 기준
최고 선호도동률이면 추가 기준
연결 관계최고 선호도 · 동률이면 추가 기준 → 반영 · 광고 · Loc-RIB · peer 정책
반영 · 광고Loc-RIB · peer 정책
  1. 수신 경로에 로컬 정책을 적용합니다

    Adj-RIBs-In의 각 경로에 import 정책을 적용해 부적격 여부와 선호도를 계산합니다. 외부에서 학습한 경로를 iBGP로 다시 광고할 때는 계산한 선호도를 LOCAL_PREF로 전달합니다.

  2. 경로를 실제로 사용할 수 있는지 확인합니다

    NEXT_HOP을 로컬 라우팅 테이블로 해석할 수 없는 경로를 제외하고, AS_PATH의 AS loop도 확인합니다.

  3. 최고 선호도를 고르고 동률을 해소합니다

    가장 높은 선호도의 후보가 여러 개면 기본 명세는 AS_PATH 길이, ORIGIN, 비교 가능한 MED, eBGP 여부, NEXT_HOP까지의 IGP cost 같은 기준으로 후보를 줄입니다.

  4. 선택 결과를 반영하고 광고합니다

    선택한 경로를 Loc-RIB에 반영하고, peer별 export 정책을 적용해 광고할 경로를 Adj-RIBs-Out에 구성합니다.

장비에서 확인할 때

이 순서는 표준의 공통 개념 경계입니다. 구현별 추가 기준과 정확한 명령 순서는 해당 장비의 공식 문서와 현재 정책 설정을 함께 확인합니다.

핵심은 가장 짧은 경로가 언제나 이기는 것이 아니라, 먼저 허용되고 선호된 후보들 사이에서 동률을 해소한다는 점입니다.

이 예의 조건

  • 본문과 전체 도표의 예를 따라 정책 평가부터 반영과 광고까지 진행합니다.

관계도의 보충 설명

전체 도표의 표기·관계·조건
구분전체 도표의 내용
제목BGP 경로 후보를 단계적으로 좁히는 관점
관계 설명후보 경로 집합에 정책을 적용하고 사용 불가 후보를 제외합니다. 남은 후보에서 높은 선호도와 동률 해소로 경로를 선택하여 반영하고 peer별 정책으로 광고합니다. 화살표는 후보 판단 단계이며 사용자의 데이터 패킷이 BGP 세션을 지나는 경로가 아닙니다.
예의 값과 변화
관찰·상황값·보충 정보변화·이유
정책 평가

두 후보에 수신 정책을 적용합니다.

  • 후보·정책 1: A LOCAL_PREF200/ASlength3
  • 후보·정책 2: B100/1
  • 둘 다 import 허용인 예; LOCAL_PREF와 AS 길이를 구별
사용 가능성

NEXT_HOP과 AS 루프 조건을 확인합니다.

  • 후보·정책 1: 둘 다 사용 가능
  • 후보·정책 2: loop 없음
  • 둘 다 사용 가능; A가 불가능하면 별도 사례에서 제외
선호도 선택

더 높은 LOCAL_PREF를 가진 A를 선택합니다.

  • 후보·정책 1: 200>100
  • 후보·정책 2: A 선택
  • 200 > 100; 짧은 AS 경로 B가 자동 승자는 아니며 동률에는 추가 기준 필요
반영과 광고

로컬 선택과 peer별 광고 정책을 적용합니다.

  • 후보·정책 1: Loc-RIB A
  • 후보·정책 2: export 별 Adj-RIBs-Out
  • Loc-RIB과 Adj-RIBs-Out에 반영; 사용자 패킷이 BGP TCP 179로 이동하는 뜻은 아님

짧은 AS 경로가 나중에 비교되는 이유: 같은 목적지 프리픽스에 두 BGP 후보가 있습니다. 둘 다 import 정책을 통과했고 NEXT_HOP이 해석 가능하며 AS loop가 없습니다. 이 AS의 정책이 후보 A에 LOCAL_PREF 200, AS_PATH 길이 3을, 후보 B에 LOCAL_PREF 100, AS_PATH 길이 1을 부여했다고 합시다. 다른 추가 로컬 기준은 없는 이 비교에서 A의 선호도가 높으므로 A를 선택합니다. “AS를 적게 거치니 B가 무조건 이긴다”는 설명은 정책을 빠뜨린 것입니다.

독립 판단: A의 NEXT_HOP이 해석 불가능해지고 B는 그대로 사용 가능합니다. A의 LOCAL_PREF 200만으로 A를 유지할 수 있을까요? 두 후보가 모두 사용 가능하고 LOCAL_PREF까지 100으로 같아졌다면, 나머지 기준도 같다는 조건에서 어느 AS_PATH를 먼저 선호할까요?

사용 가능성과 동률 해소를 나누기

첫 조건에서는 A를 사용 가능한 후보에서 제외하므로 B가 남습니다. 높은 선호도는 해석할 수 없는 다음 홉을 전달 가능하게 만들지 않습니다. 두 번째 조건에서는 선호도 동률 후 AS_PATH 길이가 더 짧은 B를 선호합니다. 실제 장비의 추가 기준·설정은 별도로 확인하며, 이 예시는 두 BGP 후보의 선택이지 FIB의 /24와 /16을 비교하는 최장 접두어 문제는 아닙니다.

RFC 4271 §9.1은 이 정책·사용 가능성·동률 해소의 경계를 설명합니다. BGP UPDATE의 광고는 경로 정보 교환이고, 사용자의 데이터 패킷이 그 TCP 세션을 타고 목적지까지 전달된다는 뜻은 아닙니다.

다음 절에서는 이런 라우팅의 동작을 직접 확인할 수 있는 진단 도구들을 살펴보겠습니다.

이 페이지 목차

이 페이지 목차