라우팅 프로토콜이란 무엇인가?
인터넷에는 수많은 네트워크와 라우터가 서로 연결되어 있습니다.
컴퓨터에서 다른 네트워크에 있는 서버로 데이터를 전송할 때 데이터가 어떤 경로를 통해 이동해야 하는지 결정해야 합니다.
이때 라우터가 네트워크 경로를 찾고 서로 정보를 교환할 수 있도록 사용하는 규칙이 라우팅 프로토콜(Routing Protocol)입니다.
쉽게 말하면 라우팅 프로토콜은 라우터들이 서로 네트워크 정보를 주고받으면서 목적지까지 갈 수 있는 경로를 찾는 방법이라고 할 수 있습니다.
기본적인 구조는 다음과 같습니다.
네트워크 A
↓
라우터 A
↓
라우터 B
↓
라우터 C
↓
네트워크 B
라우터들은 자신이 알고 있는 네트워크 정보를 서로 교환하고 이를 바탕으로 목적지까지 어떤 경로를 사용할지 결정합니다.
라우팅 프로토콜이 필요한 이유
라우터가 하나뿐인 간단한 네트워크에서는 라우팅 프로토콜이 없어도 정적 경로를 직접 설정할 수 있습니다.
하지만 네트워크 규모가 커지면 이야기가 달라집니다.
수십 개, 수백 개의 라우터가 연결된 환경에서 관리자가 모든 경로를 직접 입력하고 관리하는 것은 매우 어렵습니다.
또한 네트워크 장애가 발생하면 기존 경로를 사용할 수 없기 때문에 새로운 경로를 찾아야 합니다.
라우팅 프로토콜을 사용하면 라우터들이 서로 네트워크 정보를 교환하면서 이러한 경로를 자동으로 학습하고 변경할 수 있습니다.
라우터 A ───── 라우터 B
│ │
│ │
라우터 C ───── 라우터 D
예를 들어 라우터 A에서 라우터 D로 가는 경로가 여러 개라면 라우팅 프로토콜이 각 경로의 정보를 확인하고 적절한 경로를 선택할 수 있습니다.
라우팅과 포워딩의 차이
라우팅 프로토콜을 이해하기 위해서는 라우팅(Routing)과 포워딩(Forwarding)의 차이를 알아야 합니다.
라우팅은 네트워크 정보를 바탕으로 어떤 경로를 사용할지 결정하는 과정입니다.
포워딩은 결정된 정보를 바탕으로 실제 패킷을 다음 장비로 전달하는 과정입니다.
라우팅
→ 경로 결정
포워딩
→ 패킷 전달
예를 들어 내비게이션이 목적지까지 갈 경로를 계산하는 것이 라우팅이라면 실제 자동차가 계산된 경로를 따라 이동하는 것이 포워딩에 가깝습니다.
라우팅 프로토콜은 어떻게 동작할까?
라우팅 프로토콜은 기본적으로 라우터끼리 네트워크 정보를 교환하는 방식으로 동작합니다.
예를 들어 다음과 같은 네트워크가 있다고 가정해 보겠습니다.
네트워크 A
│
라우터 A
│
라우터 B
│
네트워크 B
라우터 A는 자신이 연결된 네트워크 정보를 라우터 B와 공유할 수 있습니다.
라우터 B 역시 자신이 알고 있는 네트워크 정보를 라우터 A에 전달할 수 있습니다.
이러한 정보 교환을 통해 각 라우터는 네트워크의 구조와 목적지까지 갈 수 있는 경로를 학습합니다.
라우팅 프로토콜의 종류
라우팅 프로토콜은 여러 가지 기준으로 구분할 수 있습니다.
대표적으로 다음과 같은 프로토콜이 있습니다.
- RIP
- OSPF
- EIGRP
- IS-IS
- BGP
각 프로토콜은 경로를 계산하는 방법과 사용하는 네트워크 환경이 다릅니다.
특히 네트워크 내부에서 사용하는 프로토콜과 인터넷처럼 서로 다른 네트워크 조직을 연결할 때 사용하는 프로토콜을 구분해서 이해하면 좋습니다.
RIP란 무엇인가?
RIP(Routing Information Protocol)는 비교적 오래된 라우팅 프로토콜입니다.
RIP는 목적지까지 이동하는 데 필요한 홉(Hop)의 수를 주요 기준으로 경로를 선택합니다.
예를 들어 다음과 같은 경로가 있다고 가정해 보겠습니다.
경로 A
라우터 1 → 라우터 2 → 라우터 3
총 2홉
경로 B
라우터 1 → 라우터 4 → 라우터 5 → 라우터 3
총 3홉
RIP에서는 일반적으로 더 적은 홉을 가진 경로를 선호합니다.
다만 RIP는 최대 홉 수에 제한이 있고 대규모 네트워크에서 수렴 속도와 확장성에 한계가 있기 때문에 현대의 대규모 네트워크에서는 OSPF나 IS-IS 같은 프로토콜이 더 많이 사용됩니다.
OSPF란 무엇인가?
OSPF(Open Shortest Path First)는 대표적인 링크 상태 라우팅 프로토콜입니다.
기업이나 대규모 내부 네트워크에서 널리 사용되는 대표적인 IGP(Interior Gateway Protocol)입니다.
OSPF는 네트워크의 연결 상태에 대한 정보를 교환하고 이를 바탕으로 최적의 경로를 계산합니다.
라우터 A ─── 라우터 B
│ │
│ │
라우터 C ─── 라우터 D
라우터들은 서로 네트워크 정보를 공유하고 전체적인 네트워크 구조를 파악합니다.
그 후 SPF(Shortest Path First) 알고리즘을 이용해 최적의 경로를 계산합니다.
OSPF의 장점
OSPF는 대규모 네트워크를 효율적으로 관리할 수 있다는 장점이 있습니다.
대표적인 특징으로 다음과 같은 것들이 있습니다.
- 빠른 경로 수렴
- 대규모 네트워크에 적합
- 네트워크 영역을 나누는 Area 기능
- 링크 상태 정보를 이용한 경로 계산
- 비용(Cost)을 이용한 경로 선택
특히 Area를 이용해 큰 네트워크를 여러 영역으로 나누어 관리할 수 있다는 점이 특징입니다.
EIGRP란 무엇인가?
EIGRP(Enhanced Interior Gateway Routing Protocol)는 시스코에서 개발한 고급 거리 벡터 계열의 라우팅 프로토콜입니다.
대역폭과 지연시간 등의 정보를 이용하여 경로를 계산할 수 있으며, 네트워크 변화에 비교적 빠르게 대응할 수 있도록 설계되었습니다.
다만 특정 제조사 환경에 대한 의존성이 강한 편이기 때문에 네트워크 환경에 따라 OSPF나 다른 표준 프로토콜이 선택되기도 합니다.
IS-IS란 무엇인가?
IS-IS(Intermediate System to Intermediate System)는 OSPF와 마찬가지로 링크 상태 기반의 라우팅 프로토콜입니다.
대규모 네트워크에서 안정적으로 라우팅 정보를 관리할 수 있으며 특히 통신사나 대규모 네트워크 환경에서 활용됩니다.
IS-IS와 OSPF는 모두 링크 상태 정보를 이용해 네트워크 경로를 계산하지만 세부적인 동작 방식에는 차이가 있습니다.
BGP란 무엇인가?
인터넷에서 중요한 역할을 하는 라우팅 프로토콜이 BGP(Border Gateway Protocol)입니다.
BGP는 서로 다른 네트워크 조직이나 자율 시스템(AS) 사이에서 라우팅 정보를 교환하는 대표적인 EGP(Exterior Gateway Protocol)입니다.
인터넷은 하나의 거대한 네트워크가 아니라 수많은 네트워크 조직이 연결된 구조로 이루어져 있습니다.
AS 100
│
│ BGP
↓
AS 200
│
│ BGP
↓
AS 300
BGP는 이러한 서로 다른 AS 사이에서 어떤 네트워크에 어떤 경로로 접근할 수 있는지 정보를 교환합니다.
인터넷 서비스 제공업체나 대규모 기업 네트워크 등에서 매우 중요한 역할을 합니다.
IGP와 EGP의 차이
라우팅 프로토콜을 이해할 때 IGP와 EGP를 구분하면 좋습니다.
IGP(Interior Gateway Protocol)는 하나의 자율 시스템(AS) 내부에서 라우팅 정보를 교환하기 위한 프로토콜입니다.
대표적으로 다음과 같은 프로토콜이 있습니다.
IGP
→ RIP
→ OSPF
→ EIGRP
→ IS-IS
반면 EGP(Exterior Gateway Protocol)는 서로 다른 AS 사이에서 라우팅 정보를 교환하는 데 사용됩니다.
현대 인터넷에서 대표적인 EGP는 BGP입니다.
AS 100 ←→ AS 200
BGP
간단하게 정리하면 다음과 같습니다.
IGP
→ 조직 내부의 라우팅
BGP
→ 서로 다른 네트워크 조직 사이의 라우팅
자율 시스템(AS)이란?
BGP를 이해하려면 AS(Autonomous System)라는 개념도 알아야 합니다.
AS는 하나의 관리 주체가 운영하는 네트워크 집합이라고 생각하면 이해하기 쉽습니다.
인터넷 서비스 제공업체나 대규모 기업 등이 하나의 AS를 운영할 수 있습니다.
각 AS에는 고유한 ASN(Autonomous System Number)이 할당됩니다.
AS 100
네트워크 A
네트워크 B
네트워크 C
AS 200
네트워크 D
네트워크 E
BGP는 이러한 AS 사이에서 라우팅 정보를 교환합니다.
정적 라우팅과 동적 라우팅
라우팅 방법은 크게 정적 라우팅(Static Routing)과 동적 라우팅(Dynamic Routing)으로 구분할 수 있습니다.
정적 라우팅은 관리자가 직접 경로를 설정하는 방식입니다.
네트워크 A
↓
라우터
↓
네트워크 B
관리자가 직접 특정 네트워크로 가는 경로를 입력합니다.
반면 동적 라우팅은 라우팅 프로토콜을 이용하여 라우터끼리 정보를 교환하고 경로를 자동으로 학습합니다.
라우터 A ←→ 라우터 B
↕ ↕
라우팅 정보 교환
네트워크 규모가 커질수록 동적 라우팅의 필요성이 높아집니다.
라우팅 메트릭이란?
라우터가 여러 개의 경로 중 하나를 선택할 때 사용하는 기준을 메트릭(Metric)이라고 합니다.
라우팅 프로토콜마다 사용하는 메트릭이 다를 수 있습니다.
예를 들어 RIP는 홉 수를 주요 기준으로 사용합니다.
OSPF는 인터페이스의 비용을 기반으로 경로를 계산합니다.
경로 A → 비용 10
경로 B → 비용 20
이 경우 OSPF에서는 일반적으로 비용이 낮은 경로를 선호합니다.
따라서 라우팅 프로토콜에 따라 “좋은 경로”를 판단하는 기준이 달라질 수 있습니다.
라우팅 프로토콜과 장애 대응
라우팅 프로토콜의 중요한 장점 중 하나는 네트워크 장애에 대응할 수 있다는 것입니다.
예를 들어 다음과 같은 네트워크가 있다고 가정해 보겠습니다.
라우터 B
/ \
/ \
라우터 A 라우터 D
\ /
\ /
라우터 C
라우터 A에서 라우터 D로 가는 경로가 두 개 존재합니다.
만약 라우터 B와 연결된 경로에 장애가 발생하면 라우팅 프로토콜은 네트워크 변화를 감지하고 다른 경로를 사용할 수 있도록 라우팅 정보를 업데이트할 수 있습니다.
기존
A → B → D
장애 발생
변경
A → C → D
이처럼 동적 라우팅 프로토콜은 네트워크 변화에 따라 경로를 자동으로 조정할 수 있습니다.
라우팅 프로토콜의 수렴이란?
라우팅 프로토콜에서 자주 등장하는 용어가 수렴(Convergence)입니다.
수렴은 네트워크에 변화가 발생한 후 라우터들이 새로운 네트워크 상태와 경로 정보를 파악하고 안정적인 라우팅 상태를 형성하는 과정을 의미합니다.
예를 들어 특정 링크가 끊어졌다면 라우터들은 해당 경로가 더 이상 사용할 수 없다는 사실을 확인하고 새로운 경로를 계산해야 합니다.
링크 장애
↓
라우팅 정보 변경
↓
라우터 간 정보 교환
↓
새로운 경로 계산
↓
라우팅 테이블 업데이트
수렴이 빠를수록 네트워크 장애가 발생했을 때 서비스를 빠르게 정상화하는 데 도움이 됩니다.
라우팅 프로토콜은 인터넷에서 왜 중요할까?
인터넷은 수많은 네트워크가 서로 연결된 거대한 구조입니다.
만약 라우터가 목적지 네트워크까지 어떤 경로를 사용해야 하는지 알 수 없다면 데이터가 목적지까지 전달될 수 없습니다.
라우팅 프로토콜은 네트워크의 변화와 경로 정보를 서로 공유할 수 있도록 하여 인터넷과 대규모 네트워크가 정상적으로 동작하는 데 중요한 역할을 합니다.
특히 BGP는 서로 다른 AS 사이의 경로 정보를 교환하기 때문에 인터넷 전체의 연결성을 유지하는 핵심적인 프로토콜 중 하나입니다.
라우팅 프로토콜을 쉽게 이해하는 방법
라우팅 프로토콜은 도로 안내 시스템과 비슷하게 생각하면 이해하기 쉽습니다.
여러 도시가 도로로 연결되어 있고 각 교차로에 교통 정보를 공유하는 시스템이 있다고 가정해 보겠습니다.
도시 A
↓
교차로 B ─── 교차로 C
↓ ↓
도시 D
각 교차로가 현재 이용 가능한 도로와 거리 정보를 알고 있다면 목적지까지 적절한 경로를 선택할 수 있습니다.
네트워크에서도 라우터가 서로 경로 정보를 공유하고 이를 바탕으로 최적의 경로를 선택합니다.
이러한 정보를 교환하는 규칙이 라우팅 프로토콜입니다.
결론
라우팅 프로토콜은 라우터들이 네트워크 경로 정보를 서로 교환하고 목적지까지 데이터를 전달할 경로를 결정할 수 있도록 하는 통신 규칙입니다.
대표적인 라우팅 프로토콜에는 RIP, OSPF, EIGRP, IS-IS, BGP 등이 있습니다.
RIP는 홉 수를 주요 기준으로 사용하는 비교적 단순한 프로토콜이며, OSPF와 IS-IS는 링크 상태 정보를 이용하여 대규모 네트워크에서 경로를 계산합니다.
BGP는 서로 다른 자율 시스템(AS) 사이에서 라우팅 정보를 교환하며 인터넷의 핵심적인 라우팅 프로토콜로 사용됩니다.
또한 라우팅 프로토콜을 사용하면 네트워크 장애가 발생했을 때 새로운 경로를 찾아 라우팅 정보를 변경할 수 있어 네트워크의 안정적인 운영에도 도움이 됩니다.
결국 라우팅 프로토콜은 수많은 네트워크와 라우터가 연결된 환경에서 목적지까지 어떤 경로로 데이터를 보낼지 결정하고, 네트워크 변화에 맞춰 경로를 관리하는 핵심 기술이라고 할 수 있습니다.