简单的说就是多线 单IP 复杂的说 就是下面这段话。
基本介绍IETF先后为BGP制定了多个建议,分别为:
RFC 4271:当前正使用的BGP协议版本,称之为BGP4。
RFC 1654:BGP4协议的第一个规范。
RFC 1105、RFC 1163、RFC 1267、RFC1771:BGP4之前的BGP版本。
尽管BGP 协议是为自治系统间的路由选择而设计,但它也可以用于自治系统内部,是一类双重路由选择协议。两个可以在自治系统之间进行通信的BGP相邻结点必须存在于同一个物理链路上。位于同一个自治系统内的BGP路由器可以互相通信,以确保它们对整个自治系统的所有信息都相同,而且通过信息交换后,它们将决定自治系统内哪个BGP路由器作为连接点来负责接收来自自治系统外部的信息。
有些自治系统仅仅作为一个数据传输的通道,这些自治系统既不是数据的发起端,也不是数据的接收端。BGP协议必须与存在于这些自治系统内部的路由协议打交道,以使数据能正确通过它们。BGP协议的路由刷新消息由“网络号:自治系统路径”对所组成,每一个自治系统路径都是一系列自治系统的名字字符串,它记录了通向最终目标所经过的网络。BGP协议的路由刷新消息通过传输控制协议TCP进行可靠传输。两个路由器之间最初始的数据交换就是整个BGP 协议的路由选择表。随着路由表的不断变化,发送路由选择刷新消息的次数也越来越多,与其他一些路由选择协议有所区别,BGP协议不要求对整个路由选择表进行周期性刷新,相反,运行BGP协议的路由器保持了每一个路由选择表的最新版本。尽管BGP协议保持通向特定目标的所有路径的路由选择表,但在路由选择刷新消息中仅仅说明最佳路径。BGP协议的路由度量方法可以是一个任意单位的数,它指明某一个特定路径可供参考的程度,这些度量方法通常都是由网络管理人员通过配置文件来设置。可参考的程度可以基于任何数字准则,例如最终系统计数(计数越小时路径越佳)、数据链路的类型。
BGP 的两种邻居——IBGP和EBGP
在建立邻居关系的时候,我们都才有Loopback地址来建立,但要保证Loopback地址可达,采用Loopback地址建立的邻居不会应为链路的down而断。
IBGP路由通告:BGP Speaker 从IBGP获得的路由不会通告给它的IBGP邻居(在一定的程度上能避免AS内的环路),就会造成不是与该路由器建立邻居不能学到路由,解决方案:①采用全连接②采用RR反射器③采用联盟的方式。
EBGP路由通告:BGP Speaker 从EBGP获得的路由会向所有的BGP对等体通告(包括IBGP和EBGP)
编辑本段BGP属性(1)公认必遵(Well-Known Mandatory)
ORIGIN(起源):这个属性说明了源路由是怎样放到BGP表中的。有三个可能的源IGP,EGP,以及INCOMPLETE.路由器在多个路由选择的处理中使用这个信息。路由器选择具有最低ORIGIN类型的路径。
AS_PATH(AS路径):指出包含在UPDATE报文中的路由信息所经过的自治系统的序列。
Next_HOP(下一跳)声明路由器所获得的BGP路由的下一跳,对EBGP会话来说,下一跳就是通告该路由的邻居路由器的源地址。
(2)公认自决(Well-Known Discretionary)
LOCAL_PREF(本地优先级):本地优先级属性是用于告诉自治系统内的路由器在有多条路径的时候,怎样离开自治系统。本地优先级越高,路由优先级越高。
ATOMIC_AFFREFATE(原子聚合):原子聚合属性指出已被丢失了的信息。
(3)可选过渡(Optional Transitive)
AGGREGATOR(聚合者):此属性标明了实施路由聚合的BGP路由器ID和聚合路由的路由器的AS号。
COMMUNITY(团体):此属性指共享一个公共属性的一组路由器。
(4)可选非过渡(Optional Nontransitive)
MED(多出口区分):该属性通知AS以外的路由器采用哪一条路径到达AS,它也被认为是路由的外部度量,低MED值表示高的优先级。
ORIGINATOR_ID(起源ID):路由反射器会附加到这个属性上,它携带本AS路由器的路由器ID,用以防止环路。
CLUSTER_LIST(簇列表):此属性显示了采用的反射路径。
编辑本段BGP特征1.用属性(Attribute)描述路径,而不是用度量值;
2.使用TCP(端口179)作为传输协议,继承了TCP的可靠性和面向连接的特性;
3.通过Keepalive信息来检验TCP的连接;
4.具有丰富的属性特征,方便实现基于策略的路由;
5.拥有自己的BGP表;
6.支持VLSM和CIDR;
7.适合在大型网络中使用。
编辑本段协议结构Marker (16 bytes) Length (2 bytes) Type (1 byte)
Marker – 信息包含信息接收端可预测值。
Length – 包含协议头的信息长度。
Type –信息类型。信息可能是:Open、Update、Notification、Keepalive。
打开(Open)分组,用来与相邻的另一个BGP发言人建立联系
更新(Update)分组,用来发送某一路由的信息,以及列出多条要撤销的路由
保活(Keepalive)分组,用来确认打开分组和周期性地证实邻站关系
通知(Notification)分组,用来发送检测到的差错[1]
在传输协议连接建立之后,各端发送的第一个信息是 OPEN 信息。如果 OPEN 信息可以接收,会返回发送确认 OPEN 信息的 KEEPALIVE 信息。一旦 OPEN 信息获得确认,UPDATE、KEEPALIVE 和 NOTIFICATION 信息进行相互交换。