存根网络多家乡技术现状(2)
2014-03-28 01:21
导读:BGP是默认的AS间路由协议。它指定不同的AS间如何交换网络可达信息(例如路由广播)。 BGP运行在AS的边缘路由器上,称为外部BGP(eBGP,External Border Gateway Pro
BGP是默认的AS间路由协议。它指定不同的AS间如何交换网络可达信息(例如路由广播)。 BGP运行在AS的边缘路由器上,称为外部BGP(eBGP,External Border Gateway Protocol)。默认情况下,BGP根据AS的跳数和每个AS指定的优先级选择最短的路由。传统的存根网络的用户通过安装两个或更多到使用BGP的互联网的公网连接来实现多家乡技术。下一步,我们将详细讨论BGP多家乡技术。
3.1.1 地址管理
存根网络必须有自己的AS编号,由24位地址前缀确定的最小地址空间(标注为/24地址空间),或实现BGP多家乡技术的更大的地址空间。两种地址分配方案:供应商独立(PI,Provider Independent)地址和供应商分配(PA,Provider Assigned)地址。在存根网络中实现BGP多家乡技术时,采用不同的地址方案,会引发不同的问题。
对于地址空间比/20更大的多址网络,存根网络的所有者可以直接从一个独立的机构(如北美APNIC)申请一个PI地址块,这样的地址空间完全独立于上游ISP。因此,有PI地址的路由不能聚合到上游ISP,这大大增加上游ISP的BGP路由表的开销。
地址空间小于/20但大于/24的网络可从上游ISP获得PA地址。基于PA地址的地址管理机制逻辑上将整个存根网络根据互联网连接划分为几个子网。每个子网从最近的上游ISP继承一个独立的地址前缀。这种方法将子网看作一个独立的网络,不会自动维护备份路由。
另一种地址管理机制下,存根网络只使用某个上游ISP指定的一个默认地址块。存根网络的其他上游ISPs为默认地址块关联路由维护一个特定的路由表项。如果存根网络和指定默认地址块的ISP之间的连接失败,流量可以沿着途经的其他上游ISPs的连接路由到网络,这些ISPs有默认地址块关联路由的路由表项。这里的开销主要是路由表项更新。这两种机制中,PA地址路由可能聚合。
(转载自中国科教评价网http://www.nseac.com)
3.1.2 路由策略
在多家乡网络中,用PI地址广播非聚合路由,用PA地址广播聚合路由。显示BGP多家乡技术的路由过程。AS65000是一个非多家乡网络,其上游ISP是AS105。AS812多址到AS105和AS106。AS65000的路由通告“198.20.32.0/24 65500”始终被AS105聚合为198.20.0.0/16,因为198.20.32.0/24是198.20.0.0/16的子地址块。
AS812有一个PI地址,140.2.32.0/19。AS812通告到AS105和AS106的路由“140.2.32.0/19 812”。由于140.2.32.0/19的IP前缀不同于198.20.0.0/16(AS105)和65.4.0.0/16(AS106),AS105或 AS106都不能聚合这个通告。因此, AS105和AS106都要为AS812公布“140.2.32.0/19 10x:812”的具体路由,其中x =(5, 6)。 AS812采用了AS105指定的PA地址块198.20.1.0/19,并发出一个通告“198.20.1.0/19 812。”由于这个地址块是AS105分配的,AS105可以聚合“198.20.1.0/19 812”与AS65000通告的路由,发出一个聚合路由通告“198.20.0.0/16 103:812”。由于“198.20.1.0”不是AS106分配的,AS106不能聚合这个路由通告,但必须发出一个“198.20.1.0/19 106:812”的特定路由。根据BGP协议,路由器沿着特定路由转发数据包。特定路由指最小地址范围。这里的特定的路由是地址范围为/19的 “198.20.1.0/19 106:812”和地址范围为/16的“198.20.0.0/16 105:812。”因此,AS812将收到通过AS106的所有数据包,除非AS812和AS106之间的连接中断。在这种情况下,AS812和AS105的连接可作为AS812和AS106的备份连接。
AS812分为两个子网络,分别获得地址块198.20.1.0/24(来自AS105)和65.4.10.0/19(来自AS106)。由于这两个地址块分别是198.20.0.0/16(AS105)和65.4.0.0/16(AS106)的子网络地址块,与这两个地址块关联的路由就被AS105和AS106聚合了。注意,当ISP聚合与其子网络相关的路由时,ISP到子网络的流量依旧发送给ISP,即使ISP和子网络之间连接断开。例如在图3c中,即使AS106和AS812之间的连接断开,到“65.4.10.0/19 812”的流量也发送到AS106。正如我们最后一节所讨论的,上游AS视两个子网络为独立网络,不会自动维护备份路由。由于安全原因,如果一个存根网络有不会广播给一个AS的源地址前缀,则这个上游AS可能拒绝接受来自这个存根网络的流量。在这个例子中,因为AS812有源地址前缀198.20.1.0/19,AS106拒绝来自AS812的流量。因此,如果某个子网络和上游ISP的连接失败,地址基于那个ISP的主机通过域间路由不可达。
(转载自中国科教评价网www.nseac.com )
3.1.3 故障处理
一种处理故障的方法是以AS路由广播为前缀。存根网络有到互联网中BGP路由表的主连接和备份连接。由于路由中不断添加AS编号前缀,致使存根网络的备份连接路由越来越长。主路由是在正常情况下使用,因为它比备份路由短。当主路由失败,可以使用备份路由,因为他们在BGP路由表中也可用。
RFC2260为有多个PA地址前缀的BGP多家乡提出了两个故障处理方法。第一种处理方法,存根网络的eBGP边缘路由器对一个上游ISP仅广播在稳定状态下这个ISP所指定的地址前缀的可达性。如果到某个ISP的连接断开,该存根网络的eBGP边缘路由器将这个ISP分配的到这个存根网络的IP地址块的可达性广播给其他上游ISPs。
当采用来自上游ISPs的多个前缀时,另一种处理连接故障的方法是数据包封装。在这种情况下,存根网络的eBGP路由器不仅与直接相连的eBGP路由器供应商交换信息,而且还与连接到这个存根网络但是没与eBGP路由器直接相连的其他eBGP路由器供应商交换信息。与直接连接到BR-A的PR-A和没直接连接到BR-A但通过BR-B连接到AS812的PRB交换路由信息。当BR-B和PR-B之间发生连接故障,PR-B用BR-A的IP前缀封装所有应该发送到BR-B的数据包。然后,PR-B通过AS106的到BR-A的其他连接,发送这些封装数据包,BR-A解封装这些数据包,然后将他们传送到AS812内的主机。
对比以AS编号作为前缀的第一种机制,其他两种方法都需要上游ISPs的配合,存根网络必须与其他ISPs达成协议,以实现这些机制。这可能增加存根网络的开销。注意,当存根网络广播给ISP一个新的IP前缀时,即使采用AS编号作为前缀,存根网络也需要与他的上游ISP达成协议。例如,存根网络采用PI地址机制。然而,AS编号前缀无法识别这个。
3.2 NAT多家乡技术 (科教论文网 lw.nSeAc.com编辑发布)
因特网工程任务组(IETF)网络小组建议采用NAT的本地网络重用IP地址。NAT实现公共互联网地址和内部局域网地址的互相转换。有了这个地址映射功能,将NAT扩展以实现多家乡。NAT多家乡对网络规模没有要求,也不要求AS编号。NAT也可用于有BGP功能的存根网络。此处我们侧重于无BGP功能的多家乡网络。
3.2.1 地址管理
在大多数采用NAT多家乡技术的网络中,上游ISPs分配存根网络的地址块。采用NAT多家乡技术的存根网络可以使用NAT固有的功能来管理已分配的地址块。网络中的主机共享网络地址。NAT将不同上游ISPs分配的地址块映射到内部地址空间。事先将地址映射表存储在NAT路由器中。在数据传输过程中,NAT路由器根据映射表将包中的IP地址转换成内部或外部地址。NAT将存根网络的地址空间与外部互联网地址空间分开。如果更改上游ISPs,存根网络内的主机地址不需要重排。
3.2.2 路由策略