
거리 벡터 라우팅이나 링크상태 라우팅 방식이 자율 시스템(AS)들을 연결하는 외부 라우팅 프로토콜로 사용되기에는 몇가지 문제점이 있다.
먼저 RIP은 단순히 홉(Hop) 수로 최단경로를 설정하는 문제와 최대 홉 수가 15개로 제한되는 문제
그리고 OSPF와 같은 링크 상태 라우팅 프로토콜도 큰 망에 대해서는 각 라우터가 아주 큰 링크상태 데이터베이스를 가져야 할 뿐만 아니라, 다익스트라 알고리즘에 의한 최단경로의 계산시에도 시간이 많이 걸리는 문제
BGP는 이러한 라우팅 방법들에 비하여, 규모가 큰 망을 지원 할 수 있는 새로운 Path-Vector 라우팅에 기초한 외부 라우팅 프로토콜이다.
서로 다른 AS 사이에서 BGP를 구성하는 경우
eBGP Peer에게 광고받은 정보의 AD값은 20이다.
동일 AS 안에서 BPG를 구성하는 경우
iBGP Peer에게 광고받은 정보의 AD값은 200이다.
링크 상태와 거리 벡터 라우팅은 모두 최소 비용(Least-Cost) 목표를 기반으로 한다.
패스 벡터는 최소 비용을 우선 순위로 두지 않는다.
모든 목적지까지 전체 경로 정보(Entire Path)자료 구조 → 순환 경로(loop) 탐지 가능
다양한 패스 속성들(Path Attributes)의 조합으로 경로 정보 제공
송신자는 패스 벡터의 패스 속성들을 사용하여 다양한 패스 선택 정책 적용이 가능하다.
*즉, 패스 벡터 라우팅에서는 무한 계산 문제는 발생하지 않음.
자신의 BGP 정보를 상대방에게 알려주기 위한 메시지
하나의 Update 메시지 안에는 하나의 경로 정보만 포함되고, 해당 경로에 대한 속성 값이 들어있다.
BGP Peer상태를 확인하기 위한 메시지이다.
Hold-time(180초) 동안 상대방의 Keepalive 메시지를 수신하지 못하는 경우 Peer 관계를 끊는다.
Open 메시지를 사용하여 BGP Peer 관계를 형성하고, Update 메시지를 사용하여 서로 정보를 교환한다.
교환된 정보는 바로 라우팅 테이블에 등록되는 것이 아니라 BGP 테이블에 등록된 후 속성 값을 비교하여 최적 경로만 사용하게 된다.