BGP

ksh98·2024년 6월 16일

네트워크

목록 보기
25/25

지금까지 다룬 네트워크 상황은 이상적인 상황이다. 실제로는 수많은 라우터를 연결해야 하는데 이 많은 라우터를 테이블에 모두 저장하는 것은 어렵다. 또한 했다 해도 라우팅 알고리즘을 돌리면서 너무 많은 메세지가 날아다닐 것이다.

AS

  • 라우터와 링크들이 연결된 독자적인 단위이다.
  • isp는 하나 이상의 as로 이루어진다.

as 내 라우팅

  • 한 as 안에서 라우팅 하는 것
  • as 안에서 라우팅을 할 때는 아무 라우팅 알고리즘을 사용해도 된다. 단 as 안에서는 모든 라우터가 같은 라우팅 알고리즘을 사용해야 한다.
  • 따라서 as는 서로 다른 내부 라우팅 알고리즘을 사용할 수 있다.
  • 링크 상태 알고리즘, 거리 벡터 알고리즘등을 말한다.
  • 대표적으로 ospf가 있다.

as 간 라우팅

  • as간 라우팅을 위해서는 전 세계가 하나의 통일된 라우팅 알고리즘을 사용해야 한다.
  • 게이트웨이란 다른 as와 연결된 라우터를 말한다.
  • 게이트웨이는 인터 라우팅 인트라 라우팅을 모두 한다.
  • bgp가 있다.

BGP

  • as간 라우팅을 담당하는 프로토콜
  • 경계에 있는 게이트웨이을 위한 프로토콜이다.
  • BGP는 IP 또는 서브넷을 자신과 다른 AS내의 호스트에게 말할 수 있게 한다.
  • 즉 자신이 여깄다고 말할 수 있게 한다.

EBGP

  • 게이트웨이에게 이 방향으로 가면 어떤 AS가 있고 목적지의 어느 서브넷으로 갈 수 있다는 것을 알려준다.

IBGP

  • 게이트웨이가 받은 경로 정보를 자기와 같은 AS내 라우터들에게 알려주는 것

작동 과정

  1. as3의 게이트웨이인 3a가 as3, x를 전파하면 2c가 받는다.
  2. 2c는 x에게 보내고 싶으면 3a에게 보내야 한다는 것을 알게 된다.
  3. 2c는 ibgp 프로토콜을 통해 as2 내 모든 라우터에게 as3, x를 전파한다.
  4. as2의 2a가 as1의 1c에게 as2, as3, x를 보내며 x로 가고 싶으면 as2로 보내야 한다는 것을 알려준다.
  5. 1c는 또 ibgp를 이용해 자신의 as내 라우터에게 이를 전파한다.

  1. 1a, 1b, 1d는 이제 x에게 가려면 게이트웨이 1c에게 가야한다는 것을 알게 되었다. 하지만 아직 1c로 가는 법은 모르고 따라서 이때 링크 상태 프로토콜 같은 인트라 라우팅 프로토콜을 실행한다.

  2. 인트라 라우팅 프로토콜을 돌리면 1d의 포워딩 테이블에는 최종적으로 다음과 같이 x로 가려면 1번 포트로 나가야 한다는 것이 들어간다.

위 예시처럼 한 게이트웨이가 여러 경로를 받을 수도 있다. 이때는 as의 정책을 따라 선택하면 된다.

정책에 따른 경로 결정

  • as는 정책에 따라 경로를 결정한다.

예시 1

  • b는 a와 c가 자신의 고객이 아니라 자신을 거쳐가길 원하지 않는다.
  • a는 aw라는 경로를 b와 c에게 전파한다.
  • 하지만 b는 자신을 거쳐가길 원하지 않기 때문에 c에게 baw 라는 경로를 전파하지 않는다.
  • 따라서 c는 caw라는 경로만 알고 w를 가기 위해서 b를 거치지 않을 것이다.

예시 2
같은 네트워크 구성에서 가정을 다르게 했다.

  • x는 b에서 c로 갈 때 자신을 거치는 것을 원하지 않는다.
  • 그래서 x는 xcy 같은 경로를 b에게 알려주지 않는다.
  • 따라서 b는 bcy 같은 경로만 알고 x를 거치지 않게 된다.
profile

0개의 댓글