BGP(边界网关协议)是启用互联网全球路由系统的协议。它通过在边缘路由器之间交换路由和可达性信息来管理数据包如何从一个网络路由到另一个网络。BGP使对等互连能够在自治系统(AS) 之间发送数据包,这些系统是由单个企业或服务提供商管理的网络。这些AS共同构成了公共互联网。
BGP适用于互联网冗余、WAN环境和IaaS。OSPF对LAN和数据中心非常有用。
BGP通过保证路由器能够适应路由故障来创建网络稳定性。当一条路径出现故障时,BGP会快速找到一条新路径。BGP根据路径做出路由决策,路径由网络管理员设置的规则或网络策略定义。
BGP的工作原理
每个路由器都维护一个路由表,用于控制数据包的定向方式。路由器上的BGP进程生成路由表信息,该信息基于以下因素:
RIB包含来自直接连接的外部对等体和内部对等体的信息。RIB包含应使用哪些路由以及应发布哪些信息的策略,并在发生更改时不断更新路由表。
BGP的用途是什么?
BGP使路由器能够在一条互联网路径出现故障时快速适应并通过另一个连接发送数据包,从而帮助提供冗余。它通常用于大型网络,例如互联网服务提供商网络、广域网和基础设施即服务环境。
BGP是一种外部网关协议,这意味着它旨在在不同AS之间共享路由信息。或者,内部网关协议在单个AS内发送信息。但是,内部BGP(iBGP)可用于在组织的网络内发送可访问性信息。
每个BGP路由器都维护一个标准路由表,用于定向传输中的数据包。BGP使用客户端-服务器拓扑来传达路由信息,客户端通过向服务器发送请求来启动BGP会话。
BGP路由基础知识
BGP仅在发生更改时发送更新的路由器表信息,并且仅发送受影响的信息。BGP没有自动发现机制,这意味着网络管理员必须手动设置对等体之间的连接,并在两端编程对等体地址。
BGP根据包括以下内容的属性做出最佳路径决策:
在多个路径可用的情况下(例如在主要托管设施中),BGP策略会传达组织对传入和传出的路径流量的首选项。BGP社区标签可以控制对等体之间的路由通告行为。
网络中的BGP基于 TCP/IP 模型。它在开放系统互连传输层(第4层)上运行,以控制网络层(第3层)。
如 RFC4271 中所述并于2006年获得批准,当前版本的BGP-4支持IPv6和无类别域间路由(CIDR),这使得IPv4能够持续运行。使用CIDR可以使网络具有比当前IP地址分配方案更多的网络地址。
常见BGP问题
路由器也可能耗尽内存或存储空间,或者响应更新的速度太慢。路由器发送错误代码和子代码以传达问题,包括超时、格式错误的请求和处理问题。
Facebook中断
2021年10月4日,社交媒体应用程序Facebook、Instagram和WhatsApp 下线了六个小时。据报道,中断是由于没有进入社交媒体网站的有效BGP路由以及域名服务器离线。这基本上断开了社交媒体应用程序与互联网的连接。
BGP安全性
BGP也容易受到基于错误信息的攻击。例如,恶意行为者可以在拒绝服务攻击中向路由器发送大量不良数据包。它们还可以声称是AS的路由信息来源,并临时控制来自该AS的流量的去向,这种做法称为 BGP 劫持。
内部和外部BGP、OSPF的区别
用于在单个AS 内路由的BGP是iBGP。当BGP用于将一个AS连接到其他AS时,它称为外部BGP或eBGP。
开放最短路径优先(OSPF)协议仅在内部网络中使用。OSPF侧重于查找节点之间可用的最短路由,并尽快故障转移到该最短路由。
BGP失败到新路由的速度较慢,但比OSPF更具可扩展性。因此,OSPF更适合企业局域网和私有数据中心。OSPF本质上是分层结构,而BGP是网格。一些网络正在用iBGP替换OSPF。
什么是BGP?
更新时间:2023-11-24