거리 벡터 라우팅 프로토콜
1. 개요
1. 개요
거리 벡터 라우팅 프로토콜은 데이터 네트워크에서 데이터 패킷의 최적 경로를 결정하는 라우팅 프로토콜의 한 종류이다. 이 방식은 목적지 네트워크까지의 거리를 홉 수나 레이턴시와 같은 메트릭으로 측정하여, 가장 짧은 거리를 가진 경로를 선택한다. 각 라우터는 인접한 이웃 라우터와 자신의 라우팅 테이블 정보를 주기적으로 교환하며, 이를 바탕으로 경로를 계산한다. '거리 벡터'라는 용어는 네트워크 내 모든 목적지까지의 거리 정보를 담은 배열을 의미한다.
이 프로토콜의 핵심 작동 원리는 벨만-포드 알고리즘에 기반한다. 각 라우터는 전체 네트워크 토폴로지에 대한 완전한 정보를 가지고 있지 않다. 대신, 이웃 라우터로부터 받은 경로 정보에 자신과의 링크 비용을 더해 새로운 거리 값을 계산하고, 이 업데이트된 정보를 다시 다른 이웃들에게 알리는 과정을 반복한다. 이 과정은 네트워크 내 모든 라우터의 라우팅 테이블이 안정된 상태, 즉 수렴에 도달할 때까지 계속된다.
가장 오래되고 대표적인 거리 벡터 라우팅 프로토콜은 라우팅 정보 프로토콜(RIP)이다. 최초로 표준화된 버전인 RIPv1은 1988년에 정의되었다. 이후 개선된 버전으로 RIPv2와 IPv6를 지원하는 RIPng가 개발되었다. 시스코 시스템즈에서 개발한 IGRP와 그 후속인 EIGRP도 거리 벡터 방식을 사용하는 주요 프로토콜에 속한다.
이 방식은 구현이 비교적 단순하고 라우터의 연산 부담이 적다는 장점이 있다. 그러나 네트워크 변화에 대한 정보가 모든 라우터에 전파되기까지 시간이 소요되며, 이 과정에서 잘못된 경로 정보가 순환하는 라우팅 루프와 같은 문제가 발생할 수 있다. 이러한 단점을 보완하기 위해 수평 분할이나 포이즌 리버스 같은 기법이 사용된다.
2. 원리와 작동 방식
2. 원리와 작동 방식
2.1. Bellman-Ford 알고리즘
2.1. Bellman-Ford 알고리즘
거리 벡터 라우팅 프로토콜의 핵심 연산 원리는 벨만-포드 알고리즘이다. 이 알고리즘은 다이나믹 프로그래밍 기법을 활용하여, 네트워크 내 각 라우터가 자신의 이웃 노드로부터 받은 거리 정보를 바탕으로 최단 경로를 점진적으로 계산한다.
각 라우터는 자신이 직접 연결된 이웃까지의 거리(비용)만을 알고 있는 상태에서 시작한다. 주기적으로 또는 변화가 있을 때, 각 라우터는 자신의 전체 라우팅 테이블 또는 변경된 부분을 모든 이웃 라우터에게 알린다. 이웃 라우터는 이 정보를 받아, 자신을 경유하여 목적지까지 가는 새로운 경로의 거리를 계산한다. 예를 들어, 라우터 A가 라우터 C까지의 거리가 5라고 알렸을 때, 이를 수신한 라우터 B는 자신에서 A까지의 거리가 2라면, B를 경유하여 C까지 가는 총 거리는 7(2+5)이 된다. 이 새 거리가 기존에 알고 있던 값보다 작으면 라우팅 테이블을 갱신한다.
이러한 지역적 계산과 정보 교환의 과정이 네트워크 전체에 걸쳐 반복되면서, 결국 모든 라우터의 라우팅 테이블이 안정된 상태, 즉 수렴에 도달하게 된다. 벨만-포드 알고리즘은 비교적 간단하여 구현 부담이 적지만, 정보가 네트워크를 천천히 전파되기 때문에 수렴 속도가 느리다는 단점이 있으며, 이 과정에서 일시적인 라우팅 루프가 발생할 수 있다.
2.2. 라우팅 테이블 교환
2.2. 라우팅 테이블 교환
거리 벡터 라우팅 프로토콜의 핵심 작동 원리는 각 라우터가 정기적으로 자신의 라우팅 테이블을 직접 연결된 이웃 라우터들과 교환하는 것이다. 이 교환 과정은 Bellman-Ford 알고리즘에 기반하여 이루어진다. 각 라우터는 자신이 알고 있는 모든 목적지 네트워크까지의 거리(예: 홉 수)와 그 경로상의 다음 라우터(넥스트 홉) 정보를 담은 테이블을 구성하고, 이를 주기적으로(예: RIP의 경우 30초마다) 모든 이웃에게 알린다.
이웃 라우터로부터 수신한 라우팅 정보를 처리할 때, 라우터는 자신의 기존 테이블과 비교하여 더 나은 경로(더 짧은 거리)가 발견되면 테이블을 갱신한다. 예를 들어, 라우터 A가 라우터 B로부터 "목적지 X까지의 거리가 3홉"이라는 정보를 받았고, A에서 B까지의 거리가 1홉이라면, A는 "목적지 X까지의 거리는 B를 통해 4홉"으로 계산하여 자신의 테이블에 추가 또는 갱신한다. 이렇게 갱신된 정보는 다음 교환 주기에 A의 다른 이웃들에게 다시 전파된다.
이러한 라우팅 테이블의 교환과 갱신 과정은 네트워크의 모든 라우터가 각 목적지에 대한 최적 경로 정보를 점차적으로 학습하게 만든다. 정보는 이웃에서 이웃으로 단계적으로 전파되기 때문에, 네트워크 변화에 대한 정보가 전체 네트워크에 퍼지는 데 일정 시간이 소요된다. 이 과정이 완료되어 모든 라우터의 테이블이 더 이상 변하지 않는 안정된 상태에 도달하는 것을 수렴(Convergence)이라고 한다.
라우팅 테이블 교환은 일반적으로 브로드캐스트 또는 멀티캐스트 주소를 통해 이루어진다. 초기 RIPv1은 브로드캐스트 방식을 사용했으나, 이후 등장한 RIPv2는 효율성을 높이기 위해 멀티캐스트 방식을 도입했다. 이러한 주기적인 정보 교환은 네트워크 상태 변화를 탐지하고, 경로 장애를 회피하는 데 필수적이다.
2.3. 수렴(Convergence)
2.3. 수렴(Convergence)
수렴은 거리 벡터 라우팅 프로토콜에서 네트워크의 모든 라우터가 일관된 라우팅 테이블을 갖게 되는 상태를 말한다. 네트워크 토폴로지에 변화가 발생하면, 예를 들어 링크 다운이나 새로운 라우터 추가 시, 이 변화에 대한 정보는 Bellman-Ford 알고리즘에 따라 이웃 라우터들에게 단계적으로 전파된다. 각 라우터는 수신한 정보를 바탕으로 자신의 라우팅 테이블을 갱신하고, 다시 이웃에게 알리는 과정을 반복한다. 최종적으로 네트워크 내 모든 경로에 대한 거리 정보가 안정화되고, 모든 라우터가 최적의 경로에 대해 동의하게 되는 시점이 수렴이다.
수렴 속도는 네트워크 규모와 토폴로지에 크게 의존한다. RIP와 같은 전통적인 거리 벡터 프로토콜은 주기적인 전체 업데이트(예: 30초마다)와 느린 변화 전파로 인해 수렴에 비교적 오랜 시간이 걸릴 수 있다. 이는 라우팅 루프나 일시적인 패킷 손실을 초래할 수 있는 단점으로 작용한다. 특히 무한대로의 카운트 문제는 수렴을 현저히 지연시키는 주요 원인이다.
수렴 성능을 개선하기 위해 여러 기법이 개발되었다. 수평 분할은 라우터가 특정 경로 정보를 배운 인터페이스로는 그 정보를 다시 광고하지 않도록 하여 잘못된 정보의 순환을 차단한다. 포이즌 리버스는 더 적극적으로, 특정 목적지로의 경로가 실패했을 때 그 거리를 무한대(예: RIP에서는 16)로 설정하여 광고함으로써 이웃 라우터가 해당 경로를 즉시 사용하지 못하게 만든다. EIGRP와 같은 향상된 프로토콜은 이러한 기법들을 도입하고 변화가 있을 때만 즉시 업데이트를 전송하는 방식을 채택하여 수렴 시간을 크게 단축시켰다.
3. 주요 프로토콜
3. 주요 프로토콜
3.1. RIP (Routing Information Protocol)
3.1. RIP (Routing Information Protocol)
라우팅 정보 프로토콜(RIP)은 가장 오래되고 널리 알려진 거리 벡터 라우팅 프로토콜이다. 1988년에 표준화된 RIP 버전 1(RIPv1)은 최초로 표준화된 거리 벡터 프로토콜로 기록된다. RIP는 내부 게이트웨이 프로토콜(IGP)로 분류되며, 주로 중소규모의 자율 시스템(AS) 내부에서 사용되도록 설계되었다.
RIP의 핵심 작동 원리는 Bellman-Ford 알고리즘에 기반한다. 각 라우터는 자신의 라우팅 테이블 정보, 즉 목적지 네트워크까지의 홉(hop) 수를 주기적으로(기본 30초마다) 인접한 이웃 라우터들에게 브로드캐스트한다. 수신한 라우터는 이 정보에 자신과 이웃 사이의 링크 비용(기본값 1)을 더해 자신의 라우팅 테이블을 갱신한다. 이 과정을 통해 네트워크 전체의 경로 정보가 점진적으로 전파된다.
RIP는 네트워크의 규모를 제한하기 위해 최대 홉 수를 15로 설정한다. 목적지까지의 홉 수가 16이 되면 해당 네트워크는 도달할 수 없는 것으로 간주한다. 이는 라우팅 루프로 인한 무한대로의 카운트 문제를 완화하기 위한 조치이지만, 대규모 네트워크에서는 사용에 제약이 된다. 또한 초기 RIPv1은 서브넷 마스크 정보를 광고하지 않아 클래스풀(classful) 주소 체계에만 제한적으로 적용될 수 있었다.
이러한 한계를 보완하기 위해 이후 RIPv2가 개발되었다. RIPv2는 클래스리스 주소 체계를 지원하고, 멀티캐스트를 사용하며, 간단한 인증 기능을 추가했다. 또한 IPv6 네트워크를 지원하는 RIPng(RIP Next Generation) 프로토콜도 정의되어 있다.
3.2. RIPv2
3.2. RIPv2
RIPv2는 라우팅 정보 프로토콜의 두 번째 버전으로, 1994년에 표준화되었다. 이는 초기 버전인 RIPv1의 여러 한계를 해결하기 위해 개발되었다. RIPv1이 클래스풀 네트워크만 지원하고 브로드캐스트를 통해 라우팅 정보를 교환하며 서브넷 마스크 정보를 전달하지 못하는 등 문제점을 가지고 있었던 반면, RIPv2는 클래스리스 라우팅을 지원하여 VLSM과 CIDR을 사용하는 현대 네트워크 환경에 적합하도록 개선되었다.
주요 개선 사항으로는 라우팅 업데이트를 멀티캐스트 주소(224.0.0.9)를 사용하여 전송함으로써 불필요한 네트워크 트래픽을 줄인 점이 있다. 또한, 각 라우팅 항목에 서브넷 마스크 정보를 포함시켜 정확한 네트워크 주소와 경계를 알릴 수 있게 되었다. 추가적으로, 인증 메커니즘을 도입하여 신뢰할 수 없는 라우터로부터의 잘못된 라우팅 정보 수신을 방지할 수 있게 되었다.
그러나 RIPv2는 여전히 Bellman-Ford 알고리즘을 기반으로 하는 거리 벡터 라우팅 프로토콜의 근본적인 특성을 유지하고 있다. 따라서 최대 홉 수를 15로 제한하며, 비교적 느린 수렴 속도와 무한대로의 카운트 문제에 대한 잠재적 위험을 내포하고 있다. 이러한 특성으로 인해 RIPv2는 중소규모의 네트워크에서 주로 사용되며, 대규모 엔터프라이즈 네트워크나 복잡한 토폴로지에는 OSPF나 EIGRP 같은 더 진보된 프로토콜이 선호된다.
3.3. RIPng
3.3. RIPng
RIPng는 IPv6 네트워크 환경에서 사용하기 위해 개발된 라우팅 정보 프로토콜의 차세대 버전이다. 기존의 RIPv2가 IPv4 주소 체계를 기반으로 설계된 반면, RIPng는 확장된 주소 공간과 새로운 네트워크 요구사항을 수용하도록 업데이트되었다. 이 프로토콜은 거리 벡터 라우팅 프로토콜의 기본 원칙을 따르며, Bellman-Ford 알고리즘을 사용하여 최적의 경로를 계산한다.
RIPng의 핵심 작동 방식은 RIPv2와 유사하다. 각 라우터는 주기적으로 자신의 라우팅 테이블 정보를 이웃 라우터에게 멀티캐스트 방식으로 광고한다. 경로 선택의 기준은 여전히 홉 카운트이며, 최대 홉 수는 15로 제한되어 있어 대규모 네트워크에는 적합하지 않을 수 있다. 주요 차이점은 패킷 구조와 주소 체계에 있으며, IPv6의 128비트 주소를 전송할 수 있도록 프로토콜이 재설계되었다.
비교 항목 | RIPv2 | RIPng |
|---|---|---|
지원 주소 체계 | IPv4 | IPv6 |
광고 주소 | 224.0.0.9 | FF02::9 |
인증 방식 | 지원 | 미지원 (다른 메커니즘에 의존) |
RIPng는 복잡한 설정이 필요 없고 구현이 비교적 간단하다는 장점이 있어, 소규모에서 중규모의 IPv6 네트워크, 특히 이기종 네트워크 환경에서 내부 게이트웨이 프로토콜로 사용된다. 그러나 느린 수렴 속도와 무한대로의 카운트 문제와 같은 고전적인 거리 벡터 라우팅의 단점을 그대로 지니고 있다.
3.4. IGRP/EIGRP
3.4. IGRP/EIGRP
IGRP는 시스코 시스템즈가 개발한 독점적인 거리 벡터 라우팅 프로토콜이다. RIP가 최대 15홉으로 제한되는 반면, IGRP는 최대 255홉까지 지원하여 더 큰 규모의 네트워크에 적용할 수 있다. 또한 RIP가 단순히 홉 수만을 메트릭으로 사용하는 것과 달리, IGRP는 대역폭, 지연 시간, 신뢰도, 부하 및 MTU를 복합적으로 고려한 복합 메트릭을 사용하여 더욱 정교한 경로 선택이 가능하다.
EIGRP는 IGRP를 향상시킨 하이브리드 라우팅 프로토콜로, 거리 벡터 방식의 단순성과 링크 상태 방식의 빠른 수렴 속도를 결합한 특징을 가진다. EIGRP는 DUAL 알고리즘을 핵심으로 사용하여, 경로 계산 시 토폴로지 테이블을 유지하고 최적 경로와 대체 경로를 사전에 계산함으로써 전통적인 거리 벡터 프로토콜의 단점인 무한대로의 카운트 문제와 느린 수렴을 해결한다. 또한 RTP를 사용하여 신뢰할 수 있는 업데이트 전송을 보장한다.
IGRP와 EIGRP는 모두 자율 시스템 내부에서 사용되는 내부 게이트웨이 프로토콜이며, 시스코 장비 환경에서 널리 채택되었다. 그러나 IGRP는 현재 구식 프로토콜로 간주되며, 현대 네트워크에서는 그 후속 버전인 EIGRP가 주로 사용된다. EIGRP는 초기에는 시스코의 독점 프로토콜이었으나, 이후 기본적인 기능이 공개되어 다른 벤더의 장비에서도 부분적으로 구현될 수 있게 되었다.
4. 무한대로의 카운트 문제
4. 무한대로의 카운트 문제
4.1. 원인
4.1. 원인
무한대로의 카운트 문제의 근본적인 원인은 거리 벡터 라우팅 프로토콜이 사용하는 Bellman-Ford 알고리즘의 구조적 한계에 있다. 이 알고리즘은 각 라우터가 전체 네트워크 토폴로지를 알지 못한 채, 자신의 이웃 라우터로부터 받은 정보만을 기반으로 라우팅 테이블을 단계적으로 갱신하는 분산적 방식으로 작동한다. 이 과정에서 특정 링크가 다운되거나 네트워크 구성이 변경되었을 때, 그 정보가 모든 라우터에 정확하고 신속하게 전파되지 않으면 잘못된 경로 정보가 순환하며 지속적으로 확대 재생산될 수 있다.
구체적으로, 문제는 라우팅 루프 상황에서 발생한다. 예를 들어 A, B, C 라우터가 직렬로 연결되어 있을 때, A가 네트워크에서 사라지면 B는 A에 대한 직접 경로가 무효화되었음을 즉시 인지한다. 그러나 C는 아직 이 사실을 모른 채, 자신이 알고 있는 A까지의 경로(예: C-B-A, 거리 2)를 B에게 알린다. B는 이 정보를 받아들이고, 자신을 통해 A로 가는 새로운 경로(B-C-...-A)를 거리 3으로 계산하여 테이블에 기록한다. 이후 B는 이 잘못된 갱신 정보를 다시 C에게 보내고, C는 이를 받아 자신의 경로 거리를 4로 늘리는 과정이 반복된다. 이로 인해 목적지 A에 도달할 수 없음에도 불구하고, 두 라우터의 경로 비용(홉 카운트)이 서로를 통해 점점 증가하며 무한대로 발산하는 현상이 일어난다.
이러한 문제는 프로토콜의 기본 작동 원리, 즉 각 라우터가 국소적 정보에만 의존하여 전역적 결정을 내리려는 데서 비롯된다. 네트워크 변화에 대한 정보의 비동기적 전파와 함께, 라우터가 정보의 출처를 정확히 추적하지 못해 자신이 생성한 정보를 다시 받아들이는 경우에 루프가 형성되고 악화된다. 특히 RIP와 같은 초기 프로토콜은 이러한 문제에 취약했으며, 이는 대규모 또는 복잡한 네트워크에서의 사용을 제한하는 주요 요인이 되었다.
4.2. 해결 방법
4.2. 해결 방법
무한대로의 카운트 문제를 해결하기 위한 주요 방법으로는 수평 분할과 포이즌 리버스가 있다. 이들은 라우팅 루프가 발생했을 때 정보가 네트워크를 무한히 순환하며 홉 수가 계속 증가하는 현상을 방지하기 위해 설계되었다.
수평 분할 방식은 라우터가 특정 경로 정보를 학습한 인터페이스로는 그 정보를 다시 전송하지 않는 규칙이다. 예를 들어, 라우터 C가 라우터 B를 통해 네트워크 A에 대한 경로를 학습했다면, C는 그 정보를 B에게 다시 알리지 않는다. 이는 잘못된 정보가 순환하는 경로를 차단하는 기본적인 방법이다. 그러나 이 방식은 경로 정보가 제때 갱신되지 않아 실제로 경로가 사라졌을 때 이를 인지하는 데 지연을 초래할 수 있다는 단점이 있다.
포이즌 리버스는 수평 분할의 단점을 보완하는 방법이다. 라우터는 여전히 모든 이웃에게 라우팅 정보를 전파하지만, 특정 경로가 다운되었을 경우 해당 경로에 대한 메트릭 값을 무한대(예: RIP에서는 16)로 설정하여 광고한다. 이를 받은 이웃 라우터는 그 경로를 사용할 수 없게 되어 루프 형성을 방지한다. 이 방법은 네트워크 변화에 대한 정보 전달을 더 명확하게 하지만, 다운된 경로에 대한 정보가 네트워크 전체에 전파되어야 하므로 추가적인 오버헤드가 발생할 수 있다.
보다 근본적인 해결책으로는 라우팅 루프 자체의 형성을 방지하는 알고리즘을 채택한 새로운 프로토콜들이 개발되었다. 대표적으로 Cisco의 EIGRP는 DUAL 알고리즘을 사용하여 수렴 속도를 높이고 루프를 사전에 차단한다. 또한 Babel과 같은 현대적인 거리 벡터 라우팅 프로토콜도 유사한 메커니즘을 통해 안정성을 향상시켰다. 이러한 프로토콜들은 전통적인 Bellman-Ford 알고리즘의 단점을 극복했지만, 구현 복잡성이 증가하는 트레이드오프가 존재한다.
5. 장단점
5. 장단점
5.1. 장점
5.1. 장점
거리 벡터 라우팅 프로토콜의 가장 큰 장점은 구현과 관리가 비교적 단순하다는 점이다. 각 라우터는 전체 네트워크 토폴로지를 알 필요 없이, 자신의 라우팅 테이블 정보를 이웃 라우터와 주기적으로 교환하기만 하면 된다. 이는 링크 상태 라우팅 프로토콜이 요구하는 복잡한 토폴로지 데이터베이스의 구성과 유지 관리가 필요 없음을 의미한다. 따라서 라우터의 메모리와 CPU 사용량이 상대적으로 적어, 하드웨어 자원이 제한된 소규모 네트워크 환경에 적합하다.
또 다른 장점은 프로토콜의 동작 원리가 직관적이고 이해하기 쉽다는 것이다. Bellman-Ford 알고리즘에 기반한 경로 계산 방식은 각 목적지까지의 거리(홉 수나 비용)와 그 다음 경유지(넥스트 홉) 정보만을 유지하며, 이 정보를 이웃과 공유함으로써 점진적으로 최적 경로를 학습해 나간다. 이러한 단순성은 네트워크 설계 및 기본적인 트러블슈팅을 용이하게 한다.
대표적인 프로토콜인 RIP는 역사가 오래되어 다양한 벤더의 장비에서 광범위하게 지원되며, 설정이 간편하다. 이로 인해 복잡한 라우팅 정책이 필요하지 않은 중소규모의 LAN이나 교육용 환경에서 쉽게 도입되고 운용될 수 있다.
5.2. 단점
5.2. 단점
거리 벡터 라우팅 프로토콜의 가장 큰 단점은 네트워크 변화에 대한 수렴 속도가 느리다는 점이다. 이는 알고리즘의 작동 방식에서 기인한다. 각 라우터는 전체 네트워크 토폴로지를 알지 못하고, 이웃 라우터로부터 주기적으로 받은 정보만을 기반으로 라우팅 테이블을 갱신한다. 따라서 링크 장애나 새로운 경로 추가와 같은 변화가 발생하면, 이 정보가 네트워크 전체로 전파되어 모든 라우터의 테이블이 안정화되기까지 상당한 시간이 걸린다. 이 지연은 라우팅 루프나 일시적인 패킷 손실을 초래할 수 있다.
또 다른 주요 단점은 무한대로의 카운트 문제가 발생할 수 있다는 것이다. Bellman-Ford 알고리즘의 특성상, 특정 경로가 단절되었을 때 이를 인식하는 과정에서 라우팅 정보가 잘못된 경로를 통해 순환하며 거리 값이 무한히 증가하는 현상이 일어날 수 있다. 이 문제를 완화하기 위해 수평 분할이나 포이즌 리버스 같은 기법이 사용되지만, 근본적인 해결책은 되지 못하며 프로토콜의 복잡성을 증가시킨다.
단점 | 설명 |
|---|---|
느린 수렴 속도 | 네트워크 변화 시 정보가 모든 라우터에 전파되어 안정화되기까지 시간이 오래 걸림. |
무한대로의 카운트 | 경로 단절 시 잘못된 정보 순환으로 거리 값이 비정상적으로 증가할 수 있음. |
제한된 경로 메트릭 | |
확장성 부족 | 최대 홉 수 제한(예: RIP의 15홉)으로 대규모 네트워크에는 부적합할 수 있음. |
마지막으로, RIP와 같은 전통적인 거리 벡터 프로토콜은 경로 선택의 기준이 단순하다는 한계를 가진다. 대부분의 경우 패킷이 통과하는 라우터의 수인 홉 수만을 메트릭으로 사용한다. 이는 대역폭, 지연 시간, 신뢰성 등 네트워크의 실제 상태를 반영하지 못해 비효율적인 경로 선택으로 이어질 수 있다. 또한, RIP의 경우 최대 홉 수를 15로 제한하기 때문에 규모가 큰 네트워크에서는 사용이 제한될 수 있다.
6. 링크 상태 라우팅과의 비교
6. 링크 상태 라우팅과의 비교
거리 벡터 라우팅과 링크 상태 라우팅은 인터넷에서 경로를 결정하는 두 가지 근본적으로 다른 접근 방식이다. 거리 벡터 방식은 Bellman-Ford 알고리즘을 기반으로 하여, 각 라우터가 이웃 라우터와 교환한 정보만을 바탕으로 점진적으로 라우팅 테이블을 구축한다. 반면, 링크 상태 방식은 Dijkstra 알고리즘을 사용하며, 각 라우터가 네트워크 내 모든 링크의 상태 정보를 수집하여 전체 네트워크 토폴로지 맵을 구성한 후, 이를 바탕으로 최단 경로를 독립적으로 계산한다.
두 방식의 주요 차이점은 정보 교환의 범위와 방식, 그리고 수렴 속도에 있다. 거리 벡터 프로토콜은 라우터가 자신의 라우팅 테이블 정보를 정기적으로 인접 이웃과만 교환한다. 이로 인해 네트워크 변화에 대한 정보가 네트워크 전체로 전파되는 데 시간이 오래 걸리며, 이 과정에서 무한대로의 카운트와 같은 문제가 발생할 수 있다. 반면, 링크 상태 프로토콜은 라우터가 자신에 직접 연결된 링크의 상태 변화가 있을 때만, 이를 네트워크 내 모든 라우터에게 광고한다. 이는 변화에 대한 더 빠른 대응과 수렴을 가능하게 하지만, 더 많은 대역폭과 CPU 자원을 소모한다.
비교 항목 | 거리 벡터 라우팅 | 링크 상태 라우팅 |
|---|---|---|
사용 알고리즘 | Bellman-Ford 알고리즘 | Dijkstra 알고리즘 (SPF) |
정보 교환 대상 | 인접 이웃 라우터만 | 네트워크 내 모든 라우터 |
교환 정보의 성격 | 자신의 라우팅 테이블 (목적지와 비용) | 자신에 연결된 링크의 상태 |
수렴 속도 | 상대적으로 느림 | 상대적으로 빠름 |
자원 소모 (CPU/메모리) | 적음 | 많음 (전체 토폴로지 유지) |
대표 프로토콜 |
결론적으로, 거리 벡터 방식은 구현이 간단하고 자원 요구 사항이 낮아 소규모 네트워크에 적합한 반면, 링크 상태 방식은 확장성이 뛰어나고 빠른 수렴을 제공하므로 대규모 기업망이나 인터넷 서비스 제공자 네트워크에서 널리 사용된다. EIGRP는 이러한 분류를 혼합한 고급 거리 벡터 프로토콜로 간주되기도 한다.
