계층적 라우팅: Autonomous Systems (AS)
- Autonomous System
- 네트워크 모음, 동일한 라우팅 정책, 단일 소유권
- 고유 32비트 정수 AS 번호(ASN)로 식별
- ASN, Internet Assigned Numbers Authority(IANA) 관리
- 동일 AS 내 라우터, 동일한 intra-AS 라우팅 프로토콜 실행 (OSPF, RIP 등)
- Gateway Router
- AS의 "edge"에 위치, 다른 AS의 라우터와 링크
- inter-AS 라우팅 프로토콜 실행 (BGP 등)
- ASBR(Autonomous System Border Router)
- Transit AS
- Stub AS
- 단일 ISP와만 연결, 해당 AS로 도착 및 출발하는 트래픽만 존재
인터넷의 확장 가능한 라우팅 접근 방식
- Intra-AS Routing (IGP)
- Interior Gateway Protocol (IGP)
- 동일 AS 내 호스트, 라우터 간 라우팅
- 모든 라우터, 동일한 intra-domain 프로토콜 실행
- RIP, OSPF, IS-IS, IGRP 등
- Inter-AS Routing (EGP)
- Exterior Gateway Protocol (EGP)
- AS간 라우팅
- 연결된 ASes
라우터, Intra-AS(IGP) 및 Inter-AS(EGP) 라우팅 알고리즘에 의해 설정된 포워딩 테이블
- 각 라우터, intra-AS(IGP)와 inter-AS(EGP) 둘 다 필요
Intra-AS Routing: RIP(Routing Information Protocol)
- L5 프로토콜: "routed"라 불리는 응용 수준 프로세스에 의해 관리되는 RIP 라우팅 테이블
- UDP 패킷에서 주기적으로 반복되는 광고
- Distance-Vector (DV) 알고리즘 (B-F 알고리즘)
- Metric = 홉 카운터(최대 15 홉), 각 링크 비용
- 15 홉 이상의 경로는 도달 불가능
- DV(광고)는 이웃과 30초마다 교환
- 광고에 최대 25개 목적지 서브넷 포함
- 느린 수렴 문제: Count-to-Infinity -> 해결: Split horizons, Split horizons with poison reverse
OSPF(Open Shortest Path First)
- Link State (LS) 알고리즘
- Metric = 서비스 유형에 기반 (BW, 최소 지연, 처리량, 신뢰성 등)
- 모든 라우터, 동일한 AS에 대한 글로벌 토폴로지 맵 보유
- 계산은 Dijkstra 알고리즘 사용
- 두 레벨 계층
- AS는 지역, 하나의 백본 영역으로 나뉨
- LSA는 지역 내에만 홍수
- ABR(Area Border Router): 다른 ABR에게 요약, 광고
- 백본 라우터: 백본에 한정된 OSPF 라우팅 실행 (DV 사용)
- ASBR(AS Boundary Router): 다른 AS에 연결 (OSPF + BGP)
- 백본 영역: DV 사용, count-to-infinity 발생 가능
BGP(Border Gateway Protocol)
-
Inter-AS 라우팅 프로토콜
-
여러 ISP를 거쳐 가는 경로 계산
-
EGP와 BGP
존재, 현재 모든 인터넷 라우터 BGP 사용
-
정책 기반 라우팅
-
목적지 서브넷에 도달하기 위한 경로의 전체 AS 경로 목록 광고
-
라우팅 루프 방지
-
Classless Inter Domain Routing (CIDR)
-
증분 업데이트: TCP 연결 수립 및 모든 후보 BGP 경로 교환 후, 이전 업데이트의 변경 사항만 광고
BGP: Peering
- Peering: 무료로 라우팅 정보 및 트래픽 교환
- BGP Peers (이웃): BGP 메시지 교환하는 두 라우터
- External BGP Peering (eBGP): 다른 AS 간
- eBGP 피어는 다른 ASN 보유
- eBGP는 라우팅 정책 구현
- 물리적으로 직접 연결되어야 함
- Internal BGP Peering (iBGP): 동일 AS 내
- iBGP 피어는 동일 ASN 보유
- 완전 메쉬 연결 필요 (반드시 직접 연결되지 않아도 됨) - iBGP 피어, IGP 사용하여 도달 가능해야 함
- 게이트웨이 라우터, eBGP 및 iBGP 프로토콜 실행
BGP: session
- 두 BGP 라우터(피어)가 TCP 연결을 통해 BGP 메시지 교환
- eBGP: 이웃 AS로부터 서브넷 도달 가능성 정보 학습
- iBGP: AS 외부에서 학습된 접두어를 AS 내 모든 라우터에 전파
- iBGP는 다른 iBGP로부터 학습된 접두어 전달 안 함
- 도달 가능성 정보 및 정책 기반 좋은 경로 결정
BGP 메시지 유형
- OPEN: 원격 BGP 피어와 TCP 연결 개설, BGP 피어 인증
- UPDATE: 새 경로 광고 (또는 기존 철회)
- KEEPALIVE: UPDATE 부재시 연결 유지, OPEN 요청 ACK
- NOTIFICATION: 이전 메시지의 오류 보고, 연결 종료
- Marker: BGP 메시지 시작 구별, TCP byte-stream 전송 방식 때문에 필요
BGP 경로
- 광고 접두사에 BGP 경로 속성 포함
- BGP 경로 = (목적지 접두사 + 해당 목적지로 가는 경로 속성)
- BGP 경로 속성
- AS-PATH: 목적지 서브넷에 도달하기 위한 ASN 목록
- NEXT-HOP: 다음 홉 AS의 eBGP 피어 IP 주소
BGP: 정책 기반 라우팅
- import 정책: 게이트웨이 수신 경로 광고, import 정책 사용하여 경로 수락/거부
- 외부 AS에서 얻은 라우터 정보 내부 AS 전달 결정
- export 정책: 인접 AS에 경로 광고 여부 결정
- 내부 AS 라우터 정보 이웃 AS에 알릴지 결정
- ASBR은 다른 ASBR이 알려준 모든 inter-AS 경로 정보를 iBGP 세션으로 전달한다? (X) → 정책에 기반한 선택된 경로 정보만 전달
BGP 라우트 선택: Hot Potato Routing
- 외부 AS에 연결된 목적지로 가는 경로 중 AS 내부 비용이 가장 적은 라우트