본문으로 바로가기

TIL 2021-12-03 OSPFv2,

category TIL 2021. 12. 3. 23:37

Router-LSA

 

stub의 경우 Link ID 는 N1 주소, Link data는 N1의 network mask

transit은 Link ID는 DR 인터페이스의 주소(DR Router ID), Link Data는 N3 인터페이스의 IP주소

 

다른 라우터들도 flag만 바뀌고 다를건 없음

 

Network-LSA(LS Type 2)

 

DR은 한 네트워크에 여러개의 네트워크 라우터가 있을때 필요함. 불필요한 연결을 줄일 수 있음.

그래서 DR이 Network LSA를 만든다고 볼 수 있음. (transit network, broadcast, nbma)

 

네트워크에 붙어있는 라우터 리스트를 가지고 있다.

single area에서만 활동

 

Link state id는 DR과 네트워크가 연결되어있는 인터페이스의 주소

Advertising Router는 DR의 라우터 주소

 

 

Bring up Adjacencies

 

broadcast transit network

초기화 도중에 Hello message를 통해 정보 주고 받음

각 라우터의 인터페이스가 DR과 Backup DR를 선출함

 

Hello message

adjanceny relationship을  만들고 유지하는데 사용함

모든 라우터 인터페이스에서 기간마다 전송됨

 

neighbor끼리의 통신이 양방향인것을 확신해줌

 

Broadcast와 NBMA 경우 Hello protocol로 네트워크의 DR을 선출함

 

Router ID

 

OSPF 프로토콜에 각 라우터에 할당되어있는 32비트 숫자

Autonomous System에 유일하게 할당되는 숫자임

하나의 전략으로는 라우터에 할당된 가장 큰 IP interface 주소를 할당하는 것

 

Area ID

패킷이 속해있는 area에 대한 32비트 숫자

모든 OSPF Packet은 하나의 area에만 속해있음

virtual link 타고 가는 놈은 0.0.0.0의 backbone Area ID로 표시됨

 

Network mask

unnumbered point to point나 virtual link 같은 경우 0.0.0.0

 

HelloIntervel

주기적으로 Hello 보내는 시간

 

Router Priority

DR,BDR 선출에 사용됨

0이면 라우터가 DR,BDR 안한다는 것(디폴트는 1)

 

RouterDeadInterval

라우터가 죽엇다고 판단할떄까지 시간(대체로 HelloIntervel * 4)

 

--------------여기까지 OSPF 패킷에 대한 설명----------------

 

DR

Broadcast난 NBMA에서만 정의됨

DR 없는 경우 0.0.0.0

DR라우터는 네트워크의 그 IP Interface 주소로 정의됨

 

Neighbor

네트워크에서 Hello packet을 받은 라우터 ID를 리스트에 넣은 것

 

Hello Packet

 

IP Protocol

OSPF(89)

 

broadcast와 physical point to point network에서는 IP Multicast address ALLOSPFRouters(224.0.05)로 HelloInterval seconds마다 Hello packet을 보낸다

 

Virtual link에서는

각 hellointerval seconds마다 unicast로 보낸다

 

OSPF Hello packet에서 Router priority가 가장 큰게 DR, 그다음이 BDR로 선출됨(0이면 안됨)

 

2. 모두 동일하면 Router ID가 동일한게 DR, 그 다음이 BDR

 

3. 한번 선출되면 OSPF를 clear하거나 라우터 재부팅하지 않는 이상 더 큰 Router Priority를 가진 놈이 있어도 다시 선출하지 않음

 

4.DR이 다운되면 BDR이 DR 역할을 하고 BDR을 다시 선출, BDR이 맛가면 BDR 다시 선출

 

DR/BDR 아니면 DRother라고 함

 

 

Synchronization of Database

 

linkstate routing 알고리즘에서는 모든 라우터의 LSDB가 동기화되는게 중요함

 

OSPF는 오직 근접 Router만 동기화함으로써 간단하게 만듦

 

각각의 라우터는 DD packet의 Sequence를 근접해있는 애들에게 보내서 database를 설명한다

 

모든 DD Packet은 라우터 DB에 속해있는 LSA의 집합(LSA Header)을 의미한다.

 

Neighbour가 현재 DB 카피보다 더 최신의 LSA를 보면 라우터는 이 신형 LSA가 필요하다고 표시를 한다

 

판별기준

1.LS Age

2.LS Sequence

3.LS Checksum

 

 

 

DB교환과정

0. Hello로 DR선출

1. 두 라우터가 Master/slave 관계를 형성한다.

2. Master가 보낸 DD Packet은 slave에 의해 ack됨

각 DD Packet은 sequence number가 있다.(Master가 선택함)

 

 

 

각 DD 는 M-bit를 통해 더 올 packet이 있는지 표시함

 

DB Exchange process는 router가 M-bit가 off한 DD Packet을 주고 받을떄 끝남

 

 

DD Fields

Interface MTU

fragmentation 없이 연계된 인터페이스에 나갈수 있는 IP 데이터그램의 최대 사이즈

 

I-bit

DD Packet에 첫 오고 가는 Sequence(Master Slave를 정하는지 아닌지)

 

M-bit

more DD packet

 

MS-bit

1은 Master

0은 slave

 

DD Sequence number

초기값은 unique해야됨, 값은 master만 올릴수 있음

전체 DD가 전송될떄까지 숫자가 증가함

'TIL' 카테고리의 다른 글

TIL 2021-12-08 Linear Discrimination  (0) 2021.12.08
TIL 2021-12-05 Kernel Machines  (0) 2021.12.06
TIL 2021-12-02 RIPv2, OSPF  (0) 2021.12.02
TIL 2021-11-30 NAT3, RIP(벨만포드)  (0) 2021.11.30
TIL 2021-11-29 NAT2  (0) 2021.11.29