본문 바로가기

네트워크/BGP

BGP message & attribute

 

BGP Message Type

 

OPEN : BGP에서 Peer 설정 이후 TCP 179port를 사용한 이후 TCP Sesstion이 맺어진 이후 처음 보내는 메시지 

    - Router의 BGP Version 정보와 Router의 AS 정보( 해당 AS 정보는 Neighbor의 정보가 아니라 자기 자신의 AS 정보)

    - Keepalive 정보는 담고 있지 않으며 Holdtime 그리고 BGP의 ID를 담고 있음

      (BGP의 Router ID 정보는 Vendor 마다 상이함으로 확인 필요 Cisco의 경우 기본적으로 Loopback interface IP가

      ID 가 되며 Loopback이 없는 경우 자신의 가장 높은 IP가 router ID가 됨)

    - Open Message에는 Optional Parameter가 있는데 해당 값이 변경될 경우 당연히 Open Message를 재전송 해야

       하기 때문에 당연이 모든 BGP Neighbor Peer가 끊어진후 재 연결 된다

BGP Open Message Format

UPDATE : peer 간의 Routing 정보를 전송하기 위한 메시지

    - TCP Session을 사용하기에 전송한 Update에 대해 잘 받았는지 확인하는 Process가 없음

    - 삭제된 정보가 가장 상위에 존재하며 Path attribute가 여기에 포함 됨 

BGP Update Message Format


NOTIFICATION : 정상 종료가 아닌 Peer간의 문제가 생겼을 경우 전송 되는 Message

    - Peer간의 문제가 생겼을 경우 Notification message로 상황을 알린 후 보낸측에서 Peer 연결을 종료 함

    - Error Code 1 Message header error

                     2 open message error

                     3 Update message error

                     4 Hold timer error

                     5 finite state machine error

                     6 cease(fatal error)

BGP Notification message Format

 
KEEPALIVE : TCP Session을 유지 하기위한 메시지 아무런 데이터도 포함하고 있지 않음

    - TCP Session은 Idle time 동안 아무런 데이터를 전송하지 않으면 Session이 종료됨

    - BGP는 Network에 아무런 변화가 없을 경우 Peer에게 아무런 Update를 던지지 않음

      하지만 TCP Session을 유지하기 위해선 무엇이라도 전송 해야 하기에 사용하는 Message

      (RFC 표준 권고 사항은 default로 30초 또는 60 초를 권고 하고 최대 3번을 받을 수 있도록 하고 있음)

      (Hold time 은 KeepaliveX3 한 값보다 무조건 같거나 커야 함)

 

Hold time 은 BGP가 Peer간의 Hold time이 상이한 경우 더 낮은 쪽으로 Hold time을 동기화 시킴

    - Peer의 Hold time으로 동기화 되는 경우는  Peer의 Hold time ÷ 3한 값보다 설정 된 값이 높을 경우 Peer의

      Hold time으로 동기화 됨 

 

 

BGP Path attributes

    - Well Known attributes 모든 BGP 장비가 반드시 모두 알아야 하는 값

         Mendatory : 모든 업데이트에 반드시 들어가 있고 반드시 사용하는 Attributes

         Discretionary : 모든 BGP 장비가 알고 있지만 반드시 사용하진 않아도 되는 Attributes 하지만 IBGP내의 

                            어떠한 한 Router가 해당 Attribute를 사용한다면 모든 Router가 알아야 하는 값.

                            (Attribute Flag에 Trasitive bit가 모두 1로 세팅되어 있는 Attribute)

    - optional attributes 지금도 계속 추가되고 있으며 앞으로도 계속 추가되는 Attributes 일부 장비에 셋팅 되며

          모든 장비가 해당 값을 인지할것이라고 기대 해서는 안된다 해당 Attributes는 같은 AS 내에서도 알수 있는

          장비가 있고 모를수 있는 장비도 있음

          Optional attribute를 수신하였을때 받은 BGP Router가 인지 할 수 있는 값이면 받은 장비가 사용하고

          Trasitive bit와 관계없이 인접 라우터로 전송함

          Optional attribute를 수신하였을때 받은 BGP Router가 인지 할수 없는 값이면 해당 필드는 무시 후

          Trasitive bit 가 1이면 인접 peer로 전송 0이면 해당필드를 패기 함.          

         

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

ROUTE-MAP  (0) 2021.10.31
BGP Bestpath  (0) 2021.10.22
BGP attribute  (0) 2021.10.18
BGP FSM  (0) 2021.10.08
BGP overview  (0) 2021.09.28