[네트워크 상식 61] IP 프로토콜에 대해 알아보자(12)
관리자 | 2025-06-13 | 조회 10
[네트워크 상식 61] IP 프로토콜에 대해 알아보자(12)
(2-4) RIP (Routing Information Protocol)
거리 벡터 방식을 사용하는 내부 라우팅 프로토콜 중에서 가장 간단하게 구현된
것이다. 소규모 네트워크 환경에 적합하며, 현재 가장 많이 사용하는 라우팅
프로토콜 중 하나다.
RIP가 제대로 동작하려면 주변 라우터가 제공하는 거리 벡터 정보가 임의의
짧은 시간 내에 모두 도착해야 한다. 하지만 현실적으로 구현이 쉽지 않다.
특히 RIP 패킷은 UDP를 사용하는데, UDP에서는 비신뢰성 전송을 제공하므로
RIP 패킷이 전송 과정에서 사라질 수도 있다.
이러한 이유로 인해 RIP에서는 다음과 같은 제한을 두어 개별 거리 정보가
라우팅 테이블에 순차적으로 적용되도록 한다.
• 입력되는 거리 벡터 정보가 새로운 네트워크 목적지 주소면 라우팅 테이블에
적용한다.
• 목적지 경로까지 도착하는 지연이 더 적으면 기존 경로를 대체한다. 즉, 홉
수가 같아도 추가 지연 측정을 통해 지연 시간이 적으면 새 경로를 선택한다.
• 임의의 라우터로부터 거리 벡터 정보가 들어왔을 때, 라우팅 테이블에 해당
라우터를 다음 홉으로 하는 등록 정보가 있으면 새로운 벡터 정보를
반영하도록 등록 정보를 수정한다.
예를 들어, 상기 그림에서 라우터 R1의 라우팅 테이블에 [표 7-1]과 같은 정보가
기록되어 있다고 가정한다. 값 중에서 주목할 사항은 네트워크 Net.4를 목적지로
하는 패킷은 라우터 R4를 거쳐서 네트워크 Net.3과 라우터 R5의 경로를 선택
하도록 되어 있다는 점이다(이는 극단적으로 나쁜 상황을 가정한 것이다).
라우터 R1과 직접 연결된 주변 라우터 R2, R3, R4, R6으로부터 라우팅 정보가
주기적으로 입력된다. 임의의 시점에 다음의 거리 벡터 정보가 들어온다고
가정해보자. 각 값은 순서대로 Net.1, Net.2, Net.3, Net.4, Net.5까지의 거리다.
R2 = [1, 2, 2, 1, 2]
R3 = [2, 1, 2, 1, 2]
R4 = [2, 1, 1, 2, 2]
R6 = [2, 1, 2, 2, 1]
이 값을 해석하면, 네트워크 Net.4로 갈 때 라우터 R4나 R6을 거치면 거리가
2지만 라우터 R2나 R3을 거치면 1이다. 라우터 R2와 R3을 이용하는 것이
거리가 짧으므로 이 중 하나를 선택하는데, 라우터 R1에서 라우터 R2나 R3으로
가는 거리 1을 더하면 최종 거리는 2다. 결과적으로 [표 7-1]보다 패킷을 빠르게
전송할 수 있는 새로운 경로를 찾았으므로 이를 라우팅 테이블에 반영한다.
여기서는 라우터 R3을 선택했다고 가정하면 새로 수정한 라우터 R1의 라우팅
테이블은 [표 7-2]와 같다.
RIP는 라우터 사이에서 링크 벡터, 거리 벡터, 다음 홉 벡터 등의 정보를 교환
하려고 아래 그림과 같은 패킷 구조를 사용한다. 각 필드의 의미는 다음과 같다.
세 번째 줄(IP Address 1)부터는 개별 네트워크에 대한 거리 정보를 기술하는데,
패킷 하나는 최대 25개의 정보를 포함할 수 있다.
• Command(명령) : 값이 1이면 요구를, 2면 응답을 의미한다. RIP가 초기화되는
과정에서 RIP 요구가 브로드캐스팅되면 이 패킷을 받은 라우터는 즉각 응답하게
된다.
• Version(버전) : RIP의 버전 번호다.
• IP Address(IP 주소) : 네트워크를 지칭하는 용도로 사용한다. IP 주소부의
네트워크 부분만 사용하고, 호스트를 표시하는 부분은 값을 0으로 채운다.
• Metric(거리) : 해당 라우터에서 목적지 네트워크까지의 거리다.
참조문헌: 데이터 통신과 컴퓨터 네트워크