OSPF
OSPF는 Dynamic 라우팅 프로토콜 중에서 가장 널리 사용되는 라우팅 프로토콜 입니다. 중대 규모 네트워크에서 많이 사용되며, 멀티캐스트 주소를 사용합니다.
특징
- Link-State Algorithms
- 표준 개방형 프로토콜(RFC 2328)
- 네트워크 토폴로지의 변화가 빠르며 부분 업데이트를 시행
- 업데이트 할 내용이 없더라도 30분 간격의 Link-State Refresh를 이용하여 Update를 주기적으로 교환
- 멀티캐스트 주소 224.0.0.5와 224.0.0.6 사용
- 링크의 비용(cost)을 메트릭으로 사용하여 경로 결정
- OSPF의 Process-ID는 1부터 65535 사이의 숫자를 사용
- Process-ID가 달라도 라우팅이 됨
- 계층적 구조
Cost 값
OSPF는 대역폭에 따라 Cost 값을 계산하고, 계산한 Cost가 가장 낮은 링크 경로를 선택합니다.
대역폭 비용
100 Gbps, 40 Gbps, 10 Gbps, 1 Gbps | 1 |
100 Mbps | 1 |
10 Mbps | 10 |
1.544 Mbps | 64 |
등등..
만약 위와 같은 토폴로지가 있다면,
거쳐가는 라우터가 더 많아도, cost의 값이 낮은 빨간 경로를 선택한다.
Key Word
- Hello packet: 아웃 라우터와 인접 관계를 맺기 위해 사용하는 패킷
- DBD (DataBase Description): 링크 상태 정보에 대한 데이터베이스로, OSPF 라우터들 간의 데이터베이스 동기화를 검사하기 위해 사용
- LSR (Link-State Request): DBD를 받은 후, 자신에게 없는 경로가 있을 경우 이 경로에 대한 상세한 링크 상태 정보를 요청할 때 사용
- LSU (Link-State Update): LSR에 대한 응답으로 사용되며, 경로 상태 정보를 LSA(Link-State Advertisement)로 전송하는 것을 포함
- LSAck (Link-State Acknowledgement): 상기의 다른 패킷 유형에 대한 수신 확인
동작 방식
- OSPF를 설정한 라우터 끼리 Hello packet을 교환해서 이웃 관계를 맺음
- 이웃 간의 라우팅 정보 (LSA)를 교환하고, 전송 받은 LSA를 Link-State DataBase에 저장
- LSA를 모두 교환하고, SPF 또는 Dijikjstra 알고리즘을 이용하여 각 목적지까지 최적의 경로를 계산한 후 Routing table에 올림
- 주기적으로 Hello packet을 교환하면서 정상 동작을 확인
- 네트워크의 상태가 변하면 위의 과정을 반복해서 Routing table 생성
Table의 종류
- Neighbor table: 인접성을 맺은 이웃한 라우터의 정보
- Database table: 목적지까지 가는 경로들의 경우의 수를 각각의 Link 상태 별로 관리
- Routing table: Database 테이블 정보 중 최적 경로를 선출하여 라우팅 테이블에 등록하고, 이 경로를 통해 패킷을 전달
계층적 구조: Area 0를 반드시 거쳐가야 함
OSPF는 Area 0을 무조건 거쳐야지 라우팅 테이블을 전달할 수 있습니다. 만약 위와 같은 구성에서 Area 1에서 2에 있는 라우터가 통신한다면,
이처럼 Area 0을 통해서 통신할 것입니다. 이를 다이렉트로 통신되게 하고싶다면,
이렇게 둘을 연결하고 해당 부분을 Area 0으로 설정해주면 됩니다.
OSPF 설정 방법
router(config)# router ospf [Process-ID(1~65535)]
router(config-router)# router id [OSPF Router-ID]
router(config-router)# network [Network-Address] [Wildcard-Mask] area [Area-ID]
- router 1
router ospf 7
network 200.200.200.0 0.0.0.255 area 1
network 201.201.201.0 0.0.0.255 area 0
- router 2
router ospf 7
network 201.201.201.0 0.0.0.255 area 0
network 202.202.202.1 0.0.0.0 area 1
network 202.202.202.1 0.0.0.0 area 1 부분처럼 한 가지 주소만 지정해도 됩니다.
'Network' 카테고리의 다른 글
[Network/L2] VLAN/Trunk/Native VLAN 이론과 실습 (1) | 2024.04.05 |
---|---|
[Network/VPN] VPN, GRE tunneling, GRE over IPSec (0) | 2024.04.02 |
[Network/Routing Protocol] EIGRP (0) | 2024.04.02 |
[Network/Routing Protocol] RIPv1, RIPv2 (0) | 2024.04.02 |
[Network] L2 Network CSMA/CD & Switch (1) | 2024.04.02 |