본문 바로가기
네트워크

IS-IS 3차

by Lauren X Ming 2022. 4. 18.

Discovering

* IS-IS의 hello packet

  1. ESH : end system이 던지는 것
  2. ISH : router가 end system에 던지는 것
  3. IIH : Router 간에 던지는 것

+ IIH의 Hello packet type

장비가 두 대가 있는데 두 장비 간에 point-to-point, ethernet으로 연결될 수 있음

L1은 L1끼리 네이버, L2는 L2끼리 네이버를 맺음. 

  1. Level 1 Lan Hello packet
  2. Level 2 Lan Hello packet
  3. point-to-point hello packet : level 1, 2 모두 가지고 있는 애끼리 네이버를 맺을 때, 1,2 각각 hello packet을 던지지 않고 ptp packet 던짐. 네이버는 한 번에 맺을 수 있지만 level 1,2의 데이터베이스 등등은 모두 구분되어있음.

+ 내가 Level 1 인지 2인지 1,2인지는 circuit id로 구분을 함

+ level 1,2 각각 네이버를 맺기 때문에 리소스 낭비가 생김 : 그래서 level 1만 네이버를 맺을건지 level 2만 네이버를 맺을 건지 등등 설정이 필요할 듯 함

TLV : 1, 129, 132, 232 
IS-IS는 TLV 매개변수를 사용하여 LSP(Link State Packets)의 정보를 전달

- 한 장비에서 기본적으로 하나의 장비는 하나의 area 정보만 가지게 됨
   - 주소를 장비에 주기 때문에 
- NET 명령어를 여러 개 줘서 여러 Area에 속할 수 있음.
   - Level2 기능은 하나만 가능함
- IPv4 TLV, IPv6 TLV, MPLS TLV, MPLS-TE TLV 각각 다 다름(각 기술마다 TLV가 다 다름)
- TLV 129 : integrate IS-IS가 나오면서 IP로 통합이 되면서 사용하게 됨
- OSI 7 layer를 만들때, TLV 형식으로 데이터를 전송하라고 만들어서 최대한 맞춰서 만듦
- 내가 최신 버전인데, 상대방 장비가 구식 장비여서 TLV 정보를 모른다면?
  - 그냥 자기가 필요한게 있으면 그냥 보내고, 내가 받았는데 모르는 TLV 정보이면 나는 사용하지 않고, 다른 장비로는 포워딩 시켜줌
  - 무조건 그러는 것은 아님
    - main TLV에 연결된 Sub TLV 정보가 있음. 
    - main은 그냥 몰라도 무조건 포워딩을 시켜주는데, sub는 삭제해버림
- 모든 데이터는 TLV 형식으로 전달이 된다.

출처 : https://t1.daumcdn.net/cfile/tistory/172BAC564DA3152126

padding(6)
- Is-IS는 MTU size를 꽉 채워서 보냄. detect 되는 MTU 사이즈가 있고 남는 부분이 있으면 채워서 보냄
hostname
- dynamic hostname(137) ?? system id로는 누가누군지 알기 어렵기 때문에, hostname으로 대체해서 보여주기 위해서

* 참고 TLV 설명 잘되어있는 블로그 : https://sahngoh.tistory.com/43

point to point hello packet
-  circuit type이 11로 설정되어 있음. 

 Level 2 hello packet
-  circuit type이 10/로 설정되어 있음. 

CLNS(Connectionless Network Service)

CLNP(Connectionless Network Protocol)

CONS(Connection Oriented Network Service)
- 있었는데 없어짐...
- TCP.IP가 나오면서..

https://d3i71xaburhd42.cloudfront.net/003ca16448178614d9f13f9b6a6e96d864835632/7-Figure5-1.png

NCAP

  • L3에서 IS-IS의 Address
  • 여러 가지 주소체계를 하나로 통합하기 위해서 가변적인 주소 크기를 가짐(8-20byte)
    • 어느 주소 체계 + Heirarchy 한 주소 체계
  • SEL : 어떤 기능을 하는 장비인지 정의하는 애들, 같은 SEL 값을 가진 애들끼리 통신을 함
    우리가 쓰는 IS-IS 는 모두 00
  • ID : system id 또는 hostname(아까 위에서 설명한 hostname)

cisco에서 사용하는 방식

네트워크 type

  1. point to point : level 1, 2를 한 번에 hello packet을 보낸다
  2. broadcast(lan)
    1. DIS(Designated Intermediate System)를 선출을 함. 
      pseudo Node : SFP에서 tree 구조를 만들기 위한 용도밖에 없음.
      내가 누구랑 연결되어있다는 정보를 DIS에서 선출된 애도 전달을 하기도 함
      근데 네트웤 정보를 가지고 있거나 그러지는 않음
      DIS는 아무 장비여도 상관 없음 --> 더 좋은 priority의 애가 있다면 바로 뺏겨버림. tree 구조만 만들 수 있으면 되기 때문에 네트웤 정보를 전달하지도 않고, 모두 각각 네트웤 정보를 가지고 있기 때문에
      그래서 BDR같은 애는 필요 없음
      DIS는 죽었는지 살았는지 빠르게 체크해야 해서 3.3초마다 hello packet을 보냄
    2. broadcast는 네이버가 100개가 연결되도 broadcast로 정보를 전달함. 그래서 adjacencies 수가 적음

** 네이버가 3대 이상이면 broadcast로 DIS를 선출하는 방식으로 하고, 만약 multi access라도 둘이 연결되는 거라면 point to point로 만드는게 좋을 듯

IIH로 ipv4 정보 전달할거나, area는 49번이다 정보 전달을 함

IIH 맺은 후에 LSP로 각각의 TLV 정보들을 전달을 함

hello packet 부터 정보 전달까지 TLV 형식으로 전달을 한다.

 

DIS

  • pseudo Node 역할을 수행
  • 우리 망에 있는 데이터베이스들이 모두 싱크가 맺어졌는지 체크함
       - 현재 우리 망에 대한 LSP의 summary 정보로 체크를 함
  • Level 1, Level 2 의 DIS가 따로 선출이 됨
  • priority로 선출(default 64)
      - 이게 같으면 SNPA(mac address가 높은 애)로 선출
  • preemptive : 뺏길 수 있음. 네트웤을 광고하거나 그러지는 않기 때문에

CSNP

 

LSP(link state packet)s(== LSU(LSAs)) : 자신의 MTU size 만큼 LSP를 계속 붙여서 전달을 함

CSNP(compute sequence number packets) : DBD
  - 10초에 한번씩 정보를 전달을 함
  - 이러한 LSP가 있고, 해당 LSP의 sequence number가 뭐야 라고 전달을 함
  - 이걸 받은 애들이 나는 어떤게 없는지 확인할 수 있음. 또는 나는 해당 LSP가 있는데 sequence number가 달라. 를 알 수 있음. 
  - 그러면 PSNP를 전달해야 함. 이걸 전달해달라고 요청을 함. 
  - DIS가 LSP로 전달을 해주고, 잘 받았다고 PSNP(Ack)정보를 던져줌
--> 이런식으로 동기화를 해줌.

  - point to point는 DIS 없이 모든 네트워크 정보가 동기화 되어있음
  - 변경이 됐을 때만 업데이트 해주면 됨
  - 그래서 네트웤 변경이 되면, 업데이트 정보를 전달해주고, PSNP로 정보를 전달하고 잘 받았다고 Ack을 전달해줌.

PSNP(partial sequence number packets)(==LSR, LSAck) : 뭘 요청 했고, 뭘 받았고

LSP ID : system-id.peasudo-id.fregment id

  • 각 DIS로 선정된 애가 system-id를 사용
  • R3 입장에서 처음 DIS가 된 애는 01, 2번째는 02...
  • fregment : R2가 수천 개의 네트웤이 있다면, 1497 byte에 모두 전달할 수 없기 때문에, 전달하는 내용이 fregment가 된것임. 
       - R2의 00의 01, R2의 00의 02...이 됨

IS-IS LSP
- 나는 어떤 네이버가 있고, 어떤 네트웤이 있는지 정보를 전달하는 것이 LSP임

LAN은 DIS가 먼저 선정이 됨
- DIS가 먼저 선출 되고, DIS가 CSNP를 던져주고 자기가 더 가지고 있으면 PSNP를 던짐
- 쟤가 뭐가 부족한지 아니까, 내가 알고있는 정보를 던져버리면 동기화가 더 빠르게 됨

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

IS-IS 5차  (0) 2022.04.24
Is-Is 4차  (0) 2022.04.24
IS-IS 2차  (0) 2022.04.18
[IS-IS 1차]  (0) 2022.04.18
MPLS VPN 연동방식 - ASBR  (0) 2022.04.04