728x90
반응형
경희대학교 유인태 교수님의 컴퓨터네트워크 강의를 기반으로 정리한 글입니다.
링크 상태 라우팅 프로토콜(Link State Routing Protocol)
- 개방형 프로토콜(RFC; Request For Command 2328)
- IETF(Internet Engineering Task Force) 국제 인터넷 표준화 기구에서 붙인 이름
- 네트워크 토폴로지 변화에 빠르게 대처 가능
- 영역 기반의 트리거 업데이트 및 부분적 업데이트 → 주기 X, 변경이 있는 부분만 업데이트
- 링크 비용을 메트릭(metric)으로 사용
- 멀티캐스트 라우팅 업데이트(224.0.0.5 및 224.0.0.6)
- OSPF로 동작하는 라우터들만 업데이트에 참여함
OSPF (Open Shortest Path First)

- 전체가 하나의 로컬 랜
- Area 0을 백본 Area, 나머지는 노말 Area → 노말 Area는 백본 Area에 직접 연결이 돼야 함
- 각각의 영역 내에서 일어나는 라우팅 업데이트는 해당 영역 내에서만 업데이트가 이뤄짐(영역 기반)
- 외부에 반드시 알려야 될 정보만 요약된 정보로 경계 지점에 있는 라우터를 통해 다른 영역으로 전달 → 라우팅 업데이트의 양을 최소화
OSPF 동작 방식
- OSPF 라우팅 프로토콜이 설정되어 있는 이웃 라우터와 Hello 패킷을 교환
- 이웃 라우터와의 인접 관계를 나타내는 데이터베이스 구축
- 이웃 라우터와 라우팅 정보(LSA)를 교환하고, 이를 바탕으로 네트워크 토폴로지에 대한 데이터베이스 구축 → LSDB(Link State Database)
- 구축한 토폴로지 데이터베이스 정보를 바탕으로 Dijkstra 알고리즘을 통해 다른 모든 목적지까지의 최적의 경로 계산 → 라우팅 테이블에 등록
- 주기적으로 Hello 패킷을 교환하면서 이웃 라우터의 상태 확인
- 네트워크 상태 변화 시 위 과정을 반복하여 새로운 라우팅 테이블 생성 → Partial 업데이트(변화된 정보만 주고 받음)
OSPF 패킷 유형
- Hello: OSPF가 설정된 이웃 라우터와 인접 관계를 맺기 위해 사용하는 패킷
- DBD(DataBase Description): 링크 상태 정보에 대한 데이터베이스, OSPF 라우터들 간 데이터베이스 동기화 검사에 사용
- LSR(Link-State Request): DBD를 받은 후, 자신에게 없는 경로가 있을 경우 해당 경로에 대한 상세한 링크 상태 정보를 요청할 때 사용
- LSU(Link-State Update): LSR에 대한 응답, 이웃 라우터와 경로 비용과 같은 경로 상태 정보를 LSA(Link State Advertisement)로 전송하는 것을 포함
- LSAck(Link-State Acknowledgement): 상기의 다른 패킷 유형에 대한 수신 확인
OSPF 데이터베이스 유형
- Adjacency Database(Neighbor Table): (Router#show ip ospf neighbor)
- 인접 관계를 맺은 이웃한 라우터에 대한 정보
- Link-State Database(Topology Table): (Router#show ip ospf database)
- 네트워크에 있는 다른 모든 라우터에 대한 정보
- 영역 내의 모든 라우터는 동일한 LSDB를 가짐
- Forwarding Database(Routing Table): (Router#show ip route)
- LSDB에 SPF 알고리즘을 실행할 때 생성되는 경로 정보
- 각 라우터의 라우팅 테이블은 고유함
DR(Designated Router) 및 BDR(Backup Designated Router)의 필요성

- 복수의 인접 관계 형성: 모든 이웃 라우터와의 인접 관계 형성으로 너무 많은 LSA가 교환될 수 있음
- 광범위한 LSA 플러딩: OSPF 초기화 및 토폴로지 변경 시마다 라우터들은 자신의 LSA를 플러딩 해야 함
- DR 및 BDR 선출: 모든 라우팅 정보는 DR/BDR을 통해서만 교환
즉, DR/BDR을 통해 모든 교환이 이뤄짐 → 모든 인접 관계 필요 X, DR/BDR과만 필요
OSPF 라우터 ID
- IPv4 주소로 표시되는 32비트 값
- OSPF를 고유하게 식별하기 위해 사용됨, OSPF 패킷 내에 포함
- OSPF 영역에 참여하려면 라우터 ID가 필요
- 관리자에 의해 수동 설정 또는 OSPF 프로세스에서 자동으로 설정
- OSPF 데이터베이스 동기화 과정 및 DR 선출 과정에서 사용됨
- 라우터 ID 결정 기준(우선 순위 순서)
- router-id rid 라우터 컨피그레이션 모드 명령으로 관리자에 의한 수동 설정
- 라우터 루프백 인터페이스 중 가장 큰 IPv4 주소 선택
- 라우터 물리 인터페이스 중 가장 큰 활성(active) IPv4 주소 선택
DR/BDR 선출 프로세스
- 네트워크 영역 내에서 인터페이스 우선 순위가 가장 높은 라우터가 DR, 두 번째로 높은 라우터가 BDR로 선출
- OSPF 인터페이스 우선 순위 범위: 0~255, 기본값은 1 (ip ospf priority value)
- 우선 순위가 0이면 이 인터페이스는 DR/BDR 선출 불가능
- 인터페이스의 우선 순위가 같을 경우 → 라우터 ID가 가장 큰 라우터가 DR, 두 번째로 높은 라우터가 BDR로 선출
- DR/BDR 선출 프로세스는 OSPF가 활성화 된 인터페이스를 갖는 첫 번째 라우터가 네트워크에 등장할 때 수행(라우터 ID가 가장 낮은 라우터가 DR이 될 가능성 있음)
- 새로운 라우터가 연결되더라도 DR/BDR 선출 프로세스가 새로 시작되지 않음
DR/BDR 인접성 확인
show ip ospf neighbor 명령
- FULL/DROTHER: DR도 BDR도 아닌 라우터와 완전한 인접 관계에 있는 DR 또는 BDR 라우터임 → 나: DR or BDR, 이웃: DROTHER
- FULL/DR: 선출된 DR 이웃 라우터와 완전한 인접 관계에 있는 라우터임 → 나: BDR or DROTHER, 이웃: DR
- FULL/BDR: 선출된 BDR 이웃 라우터와 완전한 인접 관계에 있는 라우터임 → 나: DR or DROTHER, 이웃: BDR
- 2-WAY/DROTHER: DR도 BDR도 아닌 이웃 라우터와 인접 관계에 있는 DR도 BDR도 아닌 라우터임 → 나: DROTHER, 이웃: DROTHER
OSPF 비용 메트릭
- OSPF 비용은 인터페이스 대역폭에 반비례
- OSPF 비용 계산 공식
- cost = reference bandwidth(100,000,000 bps) / interface bandwidth in bps

- 비용 값은 정수여야 하며 오늘날 100 Mbps를 초과하는 링크를 지원해야 함
- 기준 대역폭(reference bandwidth)을 변경하여 OSPF 비용을 조정
- auto-cost reference-bandwidth bandwidth (in terms of Mbits per second)
- 10,000,000,000을 원하면 10,000 입력
- 또 다른 옵션은 ip ospf cost cost 명령을 사용하여 인터페이스 비용을 직접 설정
- reference bandwidth는 영역 내 모든 라우터에 동일하게 적용해야 함
728x90
반응형
'Computer Science > Computer Network' 카테고리의 다른 글
| [컴퓨터네트워크] 10주차: VLAN 활용, VLAN 트렁크, DTP, Inter-VLAN 라우팅 (0) | 2026.02.11 |
|---|---|
| [컴퓨터네트워크] 9주차: 2계층 스위치, 스위칭 개념, VLAN 개념 (0) | 2026.02.10 |
| [컴퓨터네트워크] 6주차: 거리-벡터 라우팅 프로토콜 (0) | 2026.02.08 |
| [컴퓨터네트워크] 5주차: 라우팅 개념과 정적 라우팅 구성 (0) | 2026.02.08 |
| [컴퓨터네트워크] 4주차: IP 주소 체계, IP 주소와 서브넷팅, DHCP, SLAAC (0) | 2026.02.08 |