네트워크/CCNA

[CCNA] OSPFv2 Routing protocol 개념

반응형

@OSPF특징과 특성

OSPF는 거리 백터(방향) 라우팅 프로토콜 대안으로서, 거리 백터 라우팅 프로토콜은 대표적으로 RIP가 있다.

RIP는 소규모 네트워크에서는 좋지만 16hop count를 지나면 경로가 삭제되는 단점이 있기 때문에 RIP를 대안하기 위해서 OSPF를 사용한다.

 

@link state routing protocol

OSPF는 link state routing protocol이다. 

link = 라우터의 인터페이스

state  = 상태

network segment = 두 라우터 사이의 연결된 부분 or 단일 라우터로 연결된 이더넷 로컬 네트워크

 

링크의 상태를 바탕으로 경로 산출을 하는 프로토콜인 OSPF는 RIP보다 특별한 장점이 있다.

1)빠른 수렴 시간

2)확장성 (소규모 network -> 대규모 network)

3)OSPF는 영역(Area)라는 개념을 사용

 

영역(Area)?

네트워크 관리자가 경로 산출의 영역으로 나눌수 있다.

이런 영역을 가정함으로써 확장성이 좋고 관리가 쉽다.

즉, 하나의 네트워크에 대한 경로가 바뀌었을시, 영역(Area)로 나눠져 있기 때문에 편리하다.

 

@OSPF 구성요소

모든 라우팅 프로토콜은 아주 유사한 구성요소를 가지고 있다.

1)대표적으로 라우팅 프로토콜 메시지(라우팅 알고리즘을 통해 가공이 된다)를 사용하여 경로 정보를 공유

2)경로 정보를 교환하고, 교환한 것을 바탕으로 데이터 구조를 만든다.

3)구조를 바탕으로 출발지와 목적지 까지의 최상의 경로를 찾아야한다.

4)그래서 이 구조를 바탕으로 최상의 경로를 찾아내기 위해 라우팅 알고리즘을 통해 가공을 해야 한다.

 

-Dijkstra shortest-path first(SPF) 알고리즘을 사용해서 산출된 결과를 사용한다.

(단거리 경로 우선) 단 거리가 최선이다.

-이 알고리즘은 목적지까지 도달하기 위한 누적 비용(cost)를 기반으로 한다.

-가장 적은 비용(cost)가 최적의 경로이다!

 

@OSPF에서의 라우팅 프로토콜 메시지의 5가지 타입

1)Hello packet 

2)Database description packet : 데이터베이스 설명 패킷

3)Link-state request packet : 링크 상태 요청 패킷

4)Link-state update packet : 링크 상태 갱신 패킷

5)Link-state acknowledgment packet : 링크 상태 확인 패킷

이러한 각각의 패킷들은 메시지 패킷이다.

 

이러한 패킷들을 잘 교환하면?

데이터 구조가 생긴다. 데이터 구조는 라우팅 알고리즘에 의해서 가공되어 최적 경로를 만들어 낸다.

 

@OSPF 메시지는 아래와 같이 세가지 OSPF 데이터 베이스를 생성 유지하기 위해 사용한다.

1)Adjaceny Database(인접DB) // 이웃테이블

양방향 통신을 설정한 모든 인접 라우터들은 그 목록(모든 이웃 라우터들에 대한 목록) 을 확인 할 수 있다.

명령어 : show ip ospf neighbor

 

2)Link-state Database // 토폴로지 테이블(전체 데이터 구조)

네트워크에 모든 라우터 들에 대한 정보 목록이 있다.

데이터베이스는 네트워크 링크 스테이트 데이터 베이스를 나타낸다.

그들이 속해 있는 단일 영역에 있는 모든 라우터들은 동일한 link-state DB를 가지고 있다.

명령어 : show ips ospf database

 

3)Forwading Database // Routing table

link-state DB에서 알고리즘을 실행시켜서(토폴로지)가공해서 만들어진 목록 (목적지 까지 가기 위한 최단 경로)

각 라우팅의 경로 산출 테이블은 고유하다.

명령어 :show ip route

 

@라우팅 경로 정보를 유지하기 위해서 OSPF가 설정된 라우터가 일반적인 링크 상태 라우팅을 완료하여 전체의 정보를 

수렴상태로 만드는 단계

1)Establish Neighbor Adjacencies : 이웃과 인접 관계 형성

2)Exchange Link-state Advertisement : 링크 상태 교환

3.Build the Link State Database : 링크 상태 데이터 베이스 생성

4)Excute the SPF Algorithm : 단거리 경로 우선 알고리즘 실행

5)Choose the best Route : 최상의 경로 선택

 

@단일 영역 OSPFv2 vs 다중 영역 OSPFv2

OSPF를 보다 효율적이면서 확장성 있게 만들려면 계층적인 라우팅을 해야 된다.

 

-단일 영역 OSPF

1)link-state DB로 link-state를 공유해서 이루어진 라우터들의 집합

2)해당하는 이 영역의 모든 라우터들은 동일한 DB를 공유하고, 동일한 정보를 계속해서 동기화 시킨다.

(모든 라우터가 하나의 Area에 존재하고, 이 해당 Area를 Area0으로 표시)

 

-다중 영역 OSPF

1)계층적인 다중 영역을 구현

2)모든 영역은 backbone인 Area0으로 연결 (backbone이 가장 상위 Area)

3)라우터들은 영역 경계 라우터들에 의해서 상호 연결이 된다.

 

-다중 영역 OSPF 장점

1)계층 토폴로지 설계가 가능

2)소규모 경로 테이블을 가질수 있다. (라우팅 테이블의 크기가 작다)

이유는? 영역사이의 주소 요약을 사용하기 때문에! default 셋팅이 아니므로, 따로 설정해야 한다.

3)link-state의 갱신 over-head가 감소된다.

작은크기로 분할된 다중영역의 OSPF는 영역이 작기 때문에 전체의 OSPF중 1개가 변경되어도 다 변경되지 않는다.

4)단거리 경로 우선 계산 빈도가 감소

하나의 DB를 받아서 알고리즘으로 가공하는 횟수가 줄어든다. 테이블도 작고, 데이터도 작기 때문에

 

@OSPFv2 vs OSPFv3

1)OSPFv3는 OSPFv2에서 ipv6의 prefix를 교환

2)OSPFv3는 ipv6의 라우팅 테이블을 주고 받는다.

3)OSPF3는 ipv4, ipv6모두 지원하며, OSPFv2와 기능이 거의 유사하지만 OSPFv3는 독립적인 실행이 가능

 

@OSPF패킷

-LSU : Link State Update packet (링크 상태 갱신 패킷)

1)LSU는 OSPF의 경로 산출을 갱산할 때 필요로 전달

2)LSU는 11개의 서로 다른 종류들로 나누어져 있다.

3)LSU와 LSA(링크 상태 교환)은 상호 호환적으로 호환되게끔 같이 사용이 되고 있다.

즉, 정확한형태는 LSU에 LSA가 포용되어 있어야 한다.

 

-Hello packet

Hello packet는 3가지 경우에 사용된다!

1)OSPF 이웃 라우터들을 발견하고 인접성을 설정할 때 사용

2)두 라우터가 이웃이 되기 위해 동의해야하는 정보들을 교환할 때 사용

(이웃과 여러 가지 정보들을 교환할 때)

3)DR과 BDR을 선출!

DR과 BDR은 OSPF가 통신하기 위해서 핵심적인 역할을 하는 라우터!

단, 라우터가 point-to-point(일대일연결) 경우에는 DR과 BDR은 필요하지 않기 때문에 선출하지 않는다.

 

 

반응형

'네트워크 > CCNA' 카테고리의 다른 글

[MSSQL] ACL 간단 요약  (0) 2020.04.29