OSPF(Open Shortest Path First)
1. 등장 배경
OSPF는 RIP(Routing Information Protocol)의 한계를 극복하기 위해 1989년 IETF(Internet Engineering Task Force)에서 표준화된 IGP(Interior Gateway Protocol)입니다. 홉 수 제한(15홉), 느린 수렴 속도, 클래스풀(Classful) 라우팅만 지원하는 RIP의 문제점을 해결하기 위해 등장했습니다.
2. 목적
OSPF는 다음을 목적으로 설계되었습니다:
1. 네트워크 상태에 기반한 동적 라우팅 및 최적 경로 계산.
2. 대규모 네트워크에서도 효율적이고 안정적인 라우팅 제공.
3. 링크 상태 변화에 빠르게 적응하여 안정성 확보.
4. Area 기반 구조로 확장성과 관리 용이성 확보.
3. 역할
OSPF는 라우터 간 라우팅 정보를 교환하고 네트워크 변경 사항을 반영하여 최적 경로를 계산합니다.
- 내부 네트워크의 연결 유지.
- 링크 상태 기반 최적 경로 제공.
- Area를 통한 계층적 구조 관리로 라우팅 효율성 증대.
4. 개념
OSPF는 IGP 중 링크 상태(Link State) 라우팅 프로토콜에 속합니다.
1. 링크 상태 라우팅: 네트워크의 상태 정보를 라우터 간 교환하여 전체 토폴로지 정보를 기반으로 최단 경로를 계산.
2. Dijkstra 알고리즘: 최단 경로 계산 알고리즘으로, 라우팅 테이블을 작성.
3. LSA (Link State Advertisement): OSPF 라우터가 사용하는 정보 전파 메시지.
4. Area 구조: OSPF 네트워크를 계층적으로 나누어 성능과 관리 효율성을 강화.
5. 구성요소
- Router ID: 각 라우터를 식별하는 고유한 ID.
- LSDB (Link State Database): 네트워크 토폴로지 정보를 저장하는 데이터베이스.
- LSA (Link State Advertisement): 네트워크 상태 정보를 전달하는 메시지.
- Cost: 네트워크 링크의 가중치(대역폭에 따라 설정).
- Area: 네트워크를 계층적으로 나눈 논리적 단위.
OSPF의 Area 구조
-
Backbone Area (Area 0)
- OSPF의 중심 영역으로, 모든 Area는 반드시 Backbone Area와 연결되어야 합니다.
- 다른 Area 간 라우팅 정보를 교환하며, 네트워크의 중앙 허브 역할을 수행합니다.
- 복잡성을 줄이기 위해 간단한 LSA만 처리.
-
Regular Area
- 일반적인 OSPF 영역으로, LSA 1~5를 모두 처리하여 네트워크 정보를 상세히 반영합니다.
- 내부 라우팅뿐만 아니라 Backbone Area를 통해 다른 Area와 통신합니다.
-
Stub Area
- 외부 경로를 차단하고 기본(Default) 경로를 통해 외부 네트워크로 통신.
- LSA 5(외부 경로 정보)를 차단하여 네트워크 자원 소모를 줄입니다.
- 단순한 구조의 네트워크에서 성능과 안정성을 높이는 데 유리.
-
NSSA (Not-So-Stubby Area)
- Stub Area와 유사하지만, 외부 경로 정보(LSA 7)를 제한적으로 허용.
- 외부 경로 정보를 Backbone Area로 전달 시 LSA 5로 변환.
- Stub Area의 단점을 보완하여 유연성을 제공합니다.
OSPF의 LSA 유형
-
LSA Type 1 (Router LSA)
- 각 라우터가 자신과 직접 연결된 네트워크 정보를 포함하여 Area 내에 전달.
- 링크 상태 및 비용(Cost)을 나타냅니다.
-
LSA Type 2 (Network LSA)
- DR(Designated Router)이 생성하며, 멀티 액세스 네트워크(예: 이더넷)에서 네트워크 정보를 전달.
- 해당 네트워크에 연결된 모든 라우터를 표시합니다.
-
LSA Type 3 (Summary LSA)
- ABR(Area Border Router)가 생성하며, 한 Area의 라우팅 정보를 다른 Area에 요약하여 전달.
- Area 간 경로를 요약하고 네트워크 규모를 줄이는 데 도움.
-
LSA Type 4 (ASBR Summary LSA)
- ASBR(Autonomous System Boundary Router)에 대한 경로 정보를 다른 Area로 전달.
- 외부 네트워크로의 경로 정보를 광고하기 위해 사용.
-
LSA Type 5 (External LSA)
- ASBR에서 생성되며, 외부 Autonomous System(AS)의 경로 정보를 전달.
- 네트워크 외부 경로를 포함하여 OSPF 도메인 전체에 전파.
-
LSA Type 7 (NSSA LSA)
- NSSA에서 사용되며, 외부 경로 정보를 전달하기 위해 생성.
- ASBR이 생성하며, Backbone Area로 전달 시 LSA 5로 변환됩니다.
6. 시간순 작동 순서
- Router ID 설정: 라우터는 고유한 Router ID를 결정합니다.
- Neighbor 관계 형성: Hello 패킷을 교환하여 인접 라우터와 Neighbor 관계를 형성.
- LSA 교환 및 LSDB 구축: Neighbor가 형성되면 LSA를 주고받아 LSDB를 동기화합니다.
- SPF(Shortest Path First) 계산: Dijkstra 알고리즘을 사용하여 LSDB 기반 최단 경로를 계산.
- 라우팅 테이블 생성: 최단 경로 정보를 바탕으로 라우팅 테이블을 작성.
- 링크 상태 갱신: 네트워크 변화 시 LSA를 다시 전파하여 정보를 갱신합니다.
7. OSPF의 종류
- OSPFv2: IPv4 라우팅 지원.
- OSPFv3: IPv6 라우팅 지원 및 IPv4와의 호환성 제공.
8. 장단점
장점
- 빠른 수렴 속도: 링크 상태 변화에 신속하게 대응.
- 대규모 네트워크 지원: Area 구조를 통해 효율적 확장 가능.
- 최적 경로 제공: 링크 상태 정보를 기반으로 Dijkstra 알고리즘으로 최적 경로 계산.
- Classless 지원: VLSM(Variable Length Subnet Mask) 및 CIDR 지원.
단점
- 구현 복잡성: 설정 및 관리 과정이 RIP에 비해 복잡.
- 자원 소모: LSDB 유지 및 SPF 계산으로 인해 CPU와 메모리 사용량 증가.
- LSA 과부하 가능성: 대규모 네트워크에서 과도한 LSA로 인해 성능 저하 위험.
9. 전망 및 개선점
전망
OSPF는 계층적 구조, IPv6 지원(OSPFv3) 및 빠른 수렴 속도 덕분에 대규모 네트워크에서 여전히 널리 사용됩니다. 특히, SDN(Software Defined Networking) 환경과의 통합 운영에서 중요한 역할을 할 것으로 기대됩니다.
개선점
1. 운영 자동화: 설정 간소화 및 자동화 도구와의 연계 강화.
2. 자원 효율성 개선: SPF 계산 및 LSDB 동기화 최적화.
3. 외부 프로토콜 연계 강화: BGP 등과의 상호 운영성 개선.