962. BGP AS-Path - 경로 벡터 패스 속성 속성값 루핑 예방 정책 결정 자율 시스템 순차 기록 통제망 백본 인터넷 라우팅

핵심 인사이트: OSPF(961번)는 하나의 회사망(KT) 안에서 길을 찾는 내비게이션이다. 근데 내 패킷이 한국 KT에서 태평양 해저 케이블을 건너 미국 AT&T를 거쳐 구글(Google)까지 가려면, 전 세계 통신사들끼리 국경을 넘는 길 안내를 해야 한다. 이때 나서는 전 지구적 라우팅 프로토콜이 BGP다. BGP는 "몇 km 돌아가느냐" 따윈 관심 없다. "내 패킷이 KT(AS 1번) ➜ AT&T(AS 2번) ➜ 구글(AS 3번) 이라는 거대한 국가(AS)를 순서대로 밟고 왔어!"라고 패킷 겉면에 여권 출입국 도장을 차곡차곡 찍어놓는다. 이 통신사 도장 찍힌 족보 책, 그것이 BGP의 영혼인 AS-Path다.

Ⅰ. BGP (Border Gateway Protocol)와 거대 국가 AS 🌟

  • AS (Autonomous System, 자율 시스템): KT, SKT, 구글, 아마존처럼 자신들만의 거대한 라우터 군단과 독자적인 라우팅 정책(OSPF 등)을 굴리는 '하나의 거대한 인터넷 국가(기업)'입니다. 각 AS는 전 세계에서 유일한 고유 식별 번호(ASN)를 가집니다. (예: 구글은 AS 15169)
  • BGP: 이 거대한 AS 국가와 국가 사이의 국경을 넘어 트래픽을 쏴주는 전 세계 인터넷의 대동맥(EGP) 라우팅 프로토콜입니다.

Ⅱ. BGP AS-Path의 개념과 역할 (여권 도장 찍기) 🌟

BGP의 경로 찾기(Path Vector) 원리의 절대적인 핵심 꼬리표(속성, Attribute)입니다.

  • 개념: 특정 IP 목적지(예: 네이버)로 가는 경로 정보가 전 세계 BGP 라우터들을 거쳐서 전파될 때, 자신이 거쳐 지나온 모든 국가(AS 번호)들의 목록을 순서대로 차곡차곡 꼬리표에 누적해서 적어둔 발자취 기록 장부입니다.
  • 예시: BGP 장부에 목적지 8.8.8.8로 가는 길이 AS-Path: [15169, 701, 4766] 이라고 적혀있다면? "아, 내 패킷이 목적지에 가려면 한국 통신사(4766)를 거치고, 미국 통신사(701)를 거쳐서, 최종 구글(15169)로 들어가는구나!"라는 거시적인 대륙 횡단 지도가 완성됩니다.

Ⅲ. AS-Path가 해내는 2대 기적의 임무 🌟

1. 전 지구적 무한 루핑(Looping)의 원천 차단 🌟 핵심 🌟

OSPF나 RIP는 루프가 돌면 죽습니다. BGP는 AS-Path 도장 하나로 루프를 완벽히 튕겨냅니다.

  • 원리: 100번 통신사(AS 100)의 라우터가 옆 나라에서 날아온 BGP 경로 정보를 받았습니다.
  • 라우터가 꼬리표(AS-Path)를 까봅니다. [200, 300, 100]
  • 결단: "어? 발자취 도장 목록에 우리 집 번호(100번)가 벌써 찍혀 있네? 이 길은 전 세계를 한 바퀴 뺑 돌아서 우리 집으로 다시 돌아온 미친 부메랑(Loop) 길이다!" 라며 BGP 라우터는 이 경로 정보를 1초 만에 찢어발겨 휴지통에 던져버립니다(Drop). BGP 세계에서는 AS-Path 덕분에 루프(뺑뺑이)가 100% 물리적으로 발생할 수 없습니다.

2. 베스트 패스 (최적 경로) 선출의 1순위 타자

  • BGP 라우터가 목적지(유튜브)로 가는 2개의 길을 추천받았습니다.
    • 길 A: [200, 15169] (AS 2개를 거침)
    • 길 B: [300, 400, 500, 15169] (AS 4개를 거침)
  • 판단: BGP는 대역폭 이런 거 안 봅니다. 무조건 **"거쳐야 할 국가(AS)의 개수가 제일 적은 길(Shortest AS-Path)"**인 '길 A'를 1등 최단 경로로 엑셀 장부에 꽂아 넣습니다. 통신사를 적게 거칠수록 돈(Transit 요금)을 적게 내기 때문입니다.

Ⅳ. BGP 경로 조작 (AS-Path Prepending)

네트워크 관리자들이 이 룰을 악용해 고의로 트래픽을 조작합니다.

  • 우리 회사에 100G짜리 메인 회선과 10G짜리 백업 회선이 있습니다. 전 세계 트래픽이 100G로만 오게 만들고 싶습니다.
  • 10G 백업 회선으로 BGP 경로를 세상에 뿌릴 때, 관리자가 억지로 내 AS 번호를 수십 번 덧칠해서 [내번호, 내번호, 내번호...] 꼬리표를 강제로 길게 뻥튀기 조작해 버립니다(Prepending).
  • 외국 라우터들은 "아 저 10G 길은 거쳐야 할 나라가 너무 많네!" 속아 넘어가 그 길을 버리고 100G 메인 회선으로만 패킷을 몰아주게 되는 위대한 트래픽 엔지니어링 마법입니다.

📢 섹션 요약 비유: OSPF(사내망 라우팅)가 골목길과 신호등 갯수를 외워 빵집을 찾는 '초정밀 카카오 내비게이션'이라면, **BGP(인터넷 대동맥)**는 한국에서 멕시코로 화물을 수출하는 '국가 간 관세청 여권 도장 시스템'입니다. 화물을 실은 배가 중국 ➜ 인도를 거쳐 멕시코로 갈 때, 국경을 넘을 때마다 배 겉면에 **'중국 통과', '인도 통과'라는 출입국 도장(AS-Path)**이 차곡차곡 찍힙니다. 만약 배가 바다에서 길을 잃고 뺑뺑 돌다가 우연히 다시 '한국' 앞바다로 왔습니다. 한국 세관(BGP 라우터)은 배 겉면의 여권 도장을 딱 까보고 "어? 너 한국 출발 도장이 찍혀있는데 왜 다시 한국으로 들어와? 이거 길 잃고 뺑뺑 도는 유령선(Looping)이네! 썩 꺼져!"라며 입항을 칼같이 거부해 버립니다. 덕분에 전 지구적 무역망(인터넷 트래픽)은 절대 제자리걸음(루프)을 하지 않고 한 방향으로만 흐르는 거대한 룰이 완성됩니다.