동적 라우팅
거리 벡터(Distance Vector Algorithm)
거리 벡터 알고리즘은 인접 라우터와 정보를 공유해 목적지까지의 거리와 방향을 결정하는 라우팅 프로토콜 알고리즘입니다. 네트워크에서 거리값에 대한 정보만을 가져 라우터와 라우터 사이에 최적의 경로로만 정보를 교환합니다. 따라서 각 라우터가 업데이트 될 때마다 주기적으로 전체 라우팅 테이블을 보내라고 요청하지만 수신된 경로 비용 정보는 오로지 자신의 이웃 라우터에게만 보내집니다. 이 라우팅 알고리즘은 네트워크의 거리값만 저장해 장비의 메모리 소모가 적다는 장점이 있지만, 일정 시간마다 주기적으로 라우팅 정보를 발송하여 네트워크 트래픽이 더 발생하고, 무한 루프에 빠질수도 있다는 단점도 있습니다. 이런 거리 벡터 알고리즘의 대표적인 라우팅 프로토콜은 RIP입니다.
RIP는 Routing Information Protocol의 약자로 최소 Hop count를 파악하여 라우팅하는 프로토콜로 최단거리 즉, Hop count가 적은 경로를 택하여 라우팅하며 라우팅 테이블에 인접 라우터 정보를 저장하여 경로를 결정합니다. 이 프로토콜의 최대 Hop 수는 15개이며 상대적으로 소규모 네트워크에 적절합니다.
링크 상태 (Link State Algorithm)
링크 상태 알고리즘은 링크 상태 정보를 모든 라우터에게 전달해 최단 경로 트리를 구성하는 라우팅 프로토콜 알고리즘입니다. 이 알고리즘은 네트워크에 대한 전반적인 정보(프로토콜 등등)를 가지고 라우터와 라우터 간의 가능성 있는 모든 경로 정보를 교환하며 거리와 대역폭에 따라 경로를 계산하고 어떤 링크의 변화가 있는 경우만 정보를 전달하는 방식을 취합니다. 라우팅 테이블을 구성하기 위해 딕스트라 알고리즘을 사용하며 Link State가 스스로 라우팅 테이블을 구축하여 인접 테이블에 저장합니다. 이런 링크 상태 알고리즘의 대표적인 라우팅 프로토콜은 OSPF입니다.
OSPF는 Open Shortest Path First의 약자로, 최저 cost 즉 최단 시간 경로를 최적 라우팅 경로로 설정합니다. 이 프로토콜은 SPF(최단거리우선 알고리즘)을 통해 라우팅 테이블을 생성하고 Area 개념을 사용하여 전체 네트워크를 작은 영역으로 나눠 효율적으로 관리합니다. 또한 OSPF는 상대적으로 대규모 네트워크에 적절합니다.