东莞
[切换城市]

什么是BGP

更新时间:2022-07-29 11:33:15 浏览次数:36次
区域: 东莞 > 南城
类别:IDC服务
地址:南城高盛科技大厦
BGP全称是Border Gateway Protocol, 对应中文是边界网关协议。这个名字比较抽象,而维基中文的解释我觉得比较好(维基英文甚至都没有类似的解释)。BGP是互联网上一个核心的去中心化自治路由协议。
这是一个用于互联网(Internet)上的路由协议。它的地位是核心的(目前是重要的,互联网上使用的路由协议),它的目的是去中心化,以达到各个网络自治。
自治系统,指在一个(有时是多个)组织管辖下的所有IP网络和路由器的全体,它们对互联网执行共同的路由策略。也就是说,对于互联网来说,一个AS是一个独立的整体网络,内部网关协议(IGP)各个路由器之间需要路由信息以知道子网络的可达信息。IGP就是用来管理这些路由。
EGP(Exterior Gateway Protocol):外部网关协议,在多个AS之间使用的一种路由协议,现在已经淘汰,被BGP取而代之。
由于BGP就是为了替换EGP而创建,它的地位与EGP相似。但是BGP也可以应用在一个AS内部。因此BGP又可以分为IBGP(Interior BGP :同一个AS之间的连接)和EBGP(Exterior BGP:不同AS之间的BGP连接)。
BGP本身就是为了在Internet工作,其设计就是为了满足大型网络的要求,所以大型私有IP网络内部可以使用IBGP。
BGP可以说是复杂的路由协议。它是应用层协议,其传输层使用TCP,默认端口号是179。因为是应用层协议,可以认为它的连接是可靠的,并且不用考虑底层的工作,例如fragment,确认,重传等等。BGP是使用TCP作为传输层的路由协议,其他的路由协议可能都还到不了传输层。
TCP连接的窗口是65K字节,也就是说TCP连接允许在没有确认包的情况下,连续发送65K的数据。而其他的路由协议,例如EIGRP和OSPF的窗口只有一个数据包,也就是说前一个数据包收到确认包之后,才会发送下一个数据包。当网络规模巨大时,需要传输的数据也相应变大,这样效率是非常低的。这也是它们不适合大规模网络的原因。而正是由于TCP可以可靠的传输大量数据,且互联网的路由信息是巨大的,TCP被选为BGP的传输层协议,并且BGP适合大规模网络环境。
和大部分协议一样,BGP的数据由header和data组成。Header有19个字节,所有的BGP数据的Header格式是一样的。
BGP如何工作
BGP是一种路径矢量协议(Path vector protocol)的实现。因此,它的工作原理也是基于路径矢量
BGP route是BGP协议传输的数据,并存储在BGP router的数据库中。并非所有的BGP route都会写到主路由表。每条BGP route都包含了目的网络,下一跳和完整的路径信息。路径信息是由AS号组成,当BGP router收到了一条 路由信息,如果里面的路径包含了自己的AS号,那它就能判定这是一条自己曾经发出的路由信息,收到的这条路由信息会被丢弃。
这里把每个BGP服务的实体叫做BGP router,而与BGP router连接的对端叫BGP peer。每个BGP router在收到了peer传来的路由信息,会存储在自己的数据库,前面说过,路由信息包含很多其他的信息,BGP router会根据自己本地的policy结合路由信息中的内容判断,如果路由信息符合本地policy,BGP router会修改自己的主路由表。
东莞网站/软件服务相关信息
2023-09-15
注册时间:2021年07月02日
UID:725737
---------- 认证信息 ----------
手机已认证
查看用户主页