"패킷이 목적지까지 찾아가는 최적의 경로는 누가, 어떻게 결정할까요?"
"정보처리기사나 전산직 시험에서 항상 출제되는 RIP(거리 벡터)와 OSPF(링크 상태)의 핵심 차이점은 무엇일까요?"
네트워크 계층의 핵심 역할 중 하나는 패킷을 송신지에서 목적지까지 가장 빠르고 효율적인 경로로 전달하는 라우팅(Routing)입니다. 라우터는 내부의 라우팅 테이블(Routing Table)을 참조하여 패킷의 다음 목적지(Next Hop)를 결정합니다.
이번 글에서는 라우팅 테이블을 관리하는 정적 라우팅과 동적 라우팅의 차이점, 그리고 동적 라우팅의 두 축인 거리 벡터(Distance Vector)와 링크 상태(Link State) 알고리즘을 한눈에 알아보기 쉽게 정리해 드립니다!
1. 정적 라우팅 vs 동적 라우팅
라우팅 경로를 정하는 방식은 관리자가 직접 설정하느냐, 라우터끼리 서로 정보를 주고받으며 자동으로 계산하느냐에 따라 크게 둘로 나뉩니다.
| 구분 | 정적 라우팅 (Static Routing) | 동적 라우팅 (Dynamic Routing) |
| 경로 결정 주체 | 네트워크 관리자가 직접 수동 입력 | 라우터 간 프로토콜에 의해 자동 계산 |
| 네트워크 변화 대응 | 장애 발생 시 관리자가 직접 수정 필요 | 경로 문제 발생 시 자동으로 우회 경로 계산 |
| 오버헤드 | 라우터 CPU, 메모리, 대역폭 소모 없음 | 라우팅 정보 교환으로 인한 자원 소모 발생 |
| 보안성 | 경로가 고정되어 있어 보안에 유리 | 라우팅 패킷 노출 위험이 상대적으로 존재 |
| 적합한 규모 | 소규모 네트워크, 변동이 적은 환경 | 대규모 네트워크, 복잡하고 변동이 많은 환경 |
2. 동적 라우팅의 두 축: 거리 벡터 vs 링크 상태
동적 라우팅 프로토콜은 라우팅 정보를 계산하고 업데이트하는 방식에 따라 거리 벡터(Distance Vector) 방식과 링크 상태(Link State) 방식으로 구분됩니다.
① 거리 벡터 알고리즘 (Distance Vector)
거리 벡터 방식은 '목적지까지의 거리(Distance = 홉 수)'와 '방향(Vector = 다음 라우터)' 정보만을 이웃 라우터와 주기적으로 공유하는 방식입니다.
- 대표 알고리즘: 벨만-포드(Bellman-Ford) 알고리즘
- 대표 프로토콜: RIP (Routing Information Protocol)
- 작동 특징:
- 이웃 라우터(Directly Connected Neighbor)하고만 라우팅 테이블 전체를 주기적으로 교환합니다.
- 최적 경로 기준: 목적지까지 거쳐가는 라우터의 개수인 홉 수(Hop Count)가 가장 적은 경로를 선택합니다.
- 단점:
- 네트워크 변화에 대한 수렴 속도(Convergence Time)가 느립니다.
- 회선 속도(대역폭)를 고려하지 않고 오직 홉 수만 고려하므로, 속도가 느린 경로를 선택할 위험이 있습니다.
- 무한 루프 문제(Count to Infinity Problem)가 발생할 수 있습니다. (해결책: Split Horizon, Poison Reverse 등)
② 링크 상태 알고리즘 (Link State)
링크 상태 방식은 각 라우터가 자신과 직접 연결된 '링크의 상태 정보(대역폭, 지연 시간 등)'를 네트워크 전체 라우터에 알리는 방식입니다.
각 라우터는 자신과 직접 연결된 링크의 상태 정보를 담은 LSA 패킷을 네트워크 내의 모든 라우터에 브로드캐스팅(플러딩)합니다.
모든 라우터는 수신한 LSA를 바탕으로 네트워크 전체의 지도를 나타내는 **동일한 토폴로지 데이터베이스(LSDB)**를 구축합니다.
각 라우터는 토폴로지 DB를 바탕으로 다익스트라 알고리즘을 실행하여 자신을 최상위 노드로 하는 **최단 경로 트리(Shortest Path Tree)**를 생성합니다.
계산된 최단 경로를 바탕으로 최종 라우팅 테이블을 업데이트합니다.
- 대표 알고리즘: 다익스트라(Dijkstra) 알고리즘
- 대표 프로토콜: OSPF (Open Shortest Path First)
- 작동 특징:
- 최적 경로 기준: 대역폭(Bandwidth) 기반의 코스트(Cost) 값을 기준으로 최적 경로를 계산합니다.
- 네트워크 상태 변화가 있을 때만 해당 변동 정보를 즉시 전송하므로 수렴 속도가 매우 빠릅니다.
- 단점: 라우터의 CPU 및 메모리 연산 부담이 큽니다.
💡 한눈에 비교하는 RIP vs OSPF (시험 핵심 필수 요약표)
| 구분 | RIP (Distance Vector) | OSPF (Link State) |
| 알고리즘 | 벨만-포드 (Bellman-Ford) | 다익스트라 (Dijkstra) |
| 최적 경로 기준 (Metric) | 홉 수 (Hop Count) | 코스트 (Cost = 기준 대역폭 / 대역폭) |
| 최대 홉 수 제한 | 15 홉 (16 홉은 도달 불가능) | 제한 없음 |
| 정보 교환 범위 | 이웃 라우터에게만 전달 | 네트워크 전체 라우터에게 전달 |
| 업데이트 주기 | 주기적 업데이트 (30초마다) | 이벤트 중심 업데이트 (상태 변화 시) |
| 수렴 속도 | 느림 | 매우 빠름 |
| 네트워크 규모 | 소규모 네트워크 적합 | 대규모 네트워크 적합 |
📌 핵심 기출 포인트 체크
- RIP의 최대 홉 수: RIP는 무한 루프 방지를 위해 최대 홉 수를 15로 제한합니다. 따라서 16 홉 이상은 도달 불가(Unreachable) 상태를 의미합니다.
- Count to Infinity 해결 기술: 거리 벡터 알고리즘에서 루프를 방지하기 위한 Split Horizon(특정 인터페이스로 들어온 정보는 다시 그 인터페이스로 보내지 않음) 개념이 단골 출제됩니다.
- AS(Autonomous System) 기준 구별:
- IGP (내부 라우팅 프로토콜): RIP, OSPF, EIGRP
- EGP (외부 라우팅 프로토콜): BGP (자율 시스템 간 라우팅에 사용하는 경로 벡터 프로토콜)