라우팅과 포워딩 차이: RIP·OSPF·BGP가 경로를 만드는 방식

반응형

라우팅(routing)은 목적지 네트워크까지 갈 경로를 학습하고 선택하는 과정이고, 포워딩(forwarding)은 그 결과를 이용해 도착한 패킷을 실제 다음 홉으로 보내는 동작이다. RIP·OSPF·BGP는 경로 정보를 만드는 방식이 다르지만, 패킷을 보낼 때는 목적지 주소에 가장 구체적으로 일치하는 경로를 먼저 찾는다.

예전에는 flooding, spanning tree, RIP, OSPF, BGP를 한 목록에 놓고 모두 “라우팅 방식”이라고 정리했다. 범위가 섞여 있었다. 이번에는 패킷 하나가 전달되는 과정과, 라우팅 프로토콜이 경로를 만드는 과정을 분리해 다시 정리했다.

라우팅과 포워딩은 어떻게 다른가

라우터가 하는 일을 두 단계로 나누면 이해가 쉽다.

  1. 라우팅: 정적 설정이나 라우팅 프로토콜로 여러 경로를 배우고 최선의 경로를 선택한다.
  2. 포워딩: 선택된 경로가 들어 있는 FIB(Forwarding Information Base)를 조회해 패킷을 출력 인터페이스와 다음 홉으로 보낸다.
RIP·OSPF·BGP·정적 경로
        ↓
   경로 선택 정책
        ↓
 라우팅 테이블 / FIB
        ↓
목적지 IP를 조회해 다음 홉으로 포워딩

라우터와 스위치의 역할부터 헷갈린다면 라우터와 스위치의 차이를 먼저 보면 좋다.

패킷은 어떤 경로를 선택하는가

예를 들어 라우팅 테이블에 다음 경로가 있다고 하자.

10.0.0.0/8      via 192.0.2.1
10.10.0.0/16    via 192.0.2.2
10.10.1.0/24    via 192.0.2.3
0.0.0.0/0       via 192.0.2.254

목적지가 10.10.1.25라면 네 경로 가운데 /24가 선택된다. 앞부분이 가장 길게 일치하는 최장 프리픽스 일치(longest prefix match) 경로이기 때문이다. /8이나 /16의 metric이 더 낮아도, 먼저 더 구체적인 /24가 후보가 된다. 어떤 구체 경로도 맞지 않을 때 /0인 기본 경로를 사용한다.

같은 프리픽스 길이의 후보가 여러 개일 때는 라우팅 소스의 우선순위, metric, 정책과 ECMP 지원 여부 같은 다음 기준이 작동한다. 구현과 프로토콜이 다른 metric을 단순 숫자 하나로 직접 비교한다고 생각하면 안 된다.

IGP와 EGP부터 나눈다

라우팅 프로토콜은 관리 경계를 기준으로 나누면 구조가 선명하다.

  • IGP(Interior Gateway Protocol): 한 자율 시스템(AS) 내부에서 경로를 교환한다. RIP, OSPF, IS-IS가 대표적이다.
  • EGP(Exterior Gateway Protocol): 서로 다른 AS 사이에서 경로를 교환한다. 현재 인터넷에서는 BGP가 핵심이다.

AS는 하나의 공통 라우팅 정책 아래 운영되는 네트워크 집합이다. 같은 회사 내부의 최단 경로를 찾는 문제와, 통신사·클라우드·콘텐츠 사업자 사이에서 정책에 맞는 경로를 고르는 문제는 목적부터 다르다.

RIP: 이웃에게 거리 정보를 받는다

RIP v2는 거리 벡터 방식의 IGP다. 라우터는 이웃과 경로와 metric을 교환하고, 일반적으로 홉 수가 작은 경로를 선택한다.

  • 1부터 15까지의 metric을 사용한다.
  • 16은 도달 불가능을 뜻한다.
  • 정상적으로 구성했을 때 최대 경로 길이가 15홉이라 큰 네트워크에는 맞지 않는다.
  • 루프가 생기면 잘못된 거리가 서서히 커지는 counting to infinity 문제가 있다.

Split horizon과 poison reverse는 루프와 느린 수렴을 줄이는 장치다. 다만 모든 토폴로지에서 문제를 완전히 없애는 만능 해법은 아니다.

OSPF: 링크 상태 지도를 각자 계산한다

OSPF는 링크 상태 방식의 IGP다. 라우터는 LSA(Link-State Advertisement)를 영역 안에 신뢰성 있게 전파하고, 영역의 라우터들이 동일한 링크 상태 데이터베이스를 갖도록 한다. 각 라우터는 자신을 루트로 Dijkstra SPF 계산을 수행해 최단 경로 트리를 만든다.

RIP처럼 “이 목적지까지 몇 홉”만 전달받는 것이 아니라, 링크 상태와 비용으로 네트워크 지도를 구성하는 셈이다. 영역(area)으로 범위를 나눌 수 있어 큰 내부 네트워크에 맞지만, 이웃 관계·LSA·영역 설계를 이해해야 운영할 수 있다.

BGP: AS 경로와 정책을 함께 본다

BGP-4는 AS 사이에서 IP 프리픽스의 도달 가능성을 교환한다. 경로에는 AS_PATH, NEXT_HOP, LOCAL_PREF, MED 같은 속성이 붙는다.

AS_PATH는 업데이트가 거쳐 온 AS 정보를 담아 루프 탐지에 쓰인다. 하지만 BGP를 단순히 “AS 홉 수가 가장 짧은 길을 고르는 프로토콜”로 보면 부족하다. 운영자는 local preference와 필터 같은 정책으로 어떤 경로를 수신·광고·선호할지 결정한다.

따라서 물리적으로 가장 짧은 길보다 비용, 계약, 트래픽 엔지니어링과 장애 대응 정책에 맞는 길이 선택될 수 있다. BGP 자체의 기본 경로 교환과 경로 출처 보안은 별개의 주제이며, 실제 인터넷에서는 RPKI 기반 origin validation 같은 보완 장치를 함께 고려한다.

RIP·OSPF·BGP 비교

프로토콜 범위 경로 정보 대표 선택 기준 적합한 곳
RIP AS 내부 목적지와 거리 홉 수 작고 단순한 네트워크
OSPF AS 내부 링크 상태 데이터베이스 링크 cost의 합 중대형 내부 네트워크
BGP AS 내부·외부 프리픽스와 경로 속성 정책과 path attribute AS 간 연결과 대규모 정책 라우팅

“어떤 프로토콜이 가장 좋나?”보다 관리 범위와 필요한 정책이 무엇인지 먼저 물어야 한다. OSPF와 BGP를 함께 쓰는 네트워크에서는 내부 도달성은 OSPF가, 외부 프리픽스와 정책은 BGP가 담당할 수 있다.

실제 장비에서 확인할 세 가지

  1. 경로가 학습됐는가: 목적지 프리픽스가 라우팅 테이블에 있는지 본다.
  2. 어떤 경로가 선택됐는가: 다음 홉, 출력 인터페이스, 프리픽스 길이와 선택 출처를 본다.
  3. 실제로 패킷이 가는가: ARP/ND, ACL, MTU, 인터페이스 상태처럼 포워딩 경로의 다른 조건도 확인한다.

Linux에서는 ip route get으로 커널이 특정 목적지에 적용할 경로를 바로 확인할 수 있다.

ip route get 10.10.1.25

라우팅 테이블에 경로가 있다는 사실만으로 통신 성공이 보장되지는 않는다. 다음 홉 해석, 방화벽, 터널, 정책 라우팅과 응답 경로까지 이어서 봐야 한다.

참고 자료

반응형
KEEP READING
카테고리 전체 보기 →

댓글