用于虚拟架构路由的方法、系统和计算机可读介质与流程

文档序号:12515313阅读:331来源:国知局
用于虚拟架构路由的方法、系统和计算机可读介质与流程
本申请要求于2015年5月12日提交的美国专利申请序列No.14/710,533和于2014年8月29日提交的美国临时专利申请序列No.62/044,161的权益,通过引用将这两个申请的公开整体上合并于此。
技术领域
本文描述的主题涉及使用从层2导出的拓扑信息来执行层3路由。
背景技术
:在层2拓扑域(诸如最短路径桥接(SPB)或生成树协议(STP)域)中,层2节点对直接连接的设备执行层2分组转发。为了在这样的网络中执行层3路由,层2节点将分组转发到层3路由器,该层3路由器通常在VLAN之间路由(routes)分组。因此,分组必须穿过层2拓扑域到达层3路由器,从层3路由器穿过层2拓扑域返回,并到达目的地。这种对2层网络的双重遍历不是期望的,因为它增加了转发每个分组所需的时间。此外,可以在层3路由器上运行路由器冗余协议来为网络中的主机和服务器提供冗余。在数以千计的VLAN上支持的成千上万个用户的网络中,在所有VLAN上潜在地运行路由器冗余协议会是衰弱的(debilitating),并降低网络性能以及增加在运行协议的路由器上的CPU利用率。因此,存在对改进的用于虚拟架构路由的方法、系统和计算机可读介质的需求。技术实现要素:本文所述的主题包括用于虚拟架构路由的方法、系统和计算机可读介质。一种系统包括用于提供对层3路由的访问的至少一个虚拟架构路由(VFR)服务路由器中介(agent)。该系统还包括至少一个VFR代理转发器设备,用于对穿过虚拟架构路由域内的虚拟局域网(VLAN)的分组执行层3路由,并且用于向由至少一个VFR服务路由器中介提供的地址转发其中层3地址解析失败的分组。如本文所使用的,术语“VFR域”是指如本文所述的执行虚拟架构路由的VFR代理转发器设备和关联的服务路由器的全部或子集。VFR域内的节点可以参与层2拓扑发现协议,以了解域中的其它节点。本文所述的主题可以使用其上存储有可执行指令的非暂态计算机可读介质来实现,所述可执行指令在由计算机的处理器执行时控制计算机执行步骤。用于实现本文所述的主题的示例性计算机可读介质可以包括芯片存储器设备、盘存储器设备、可编程逻辑设备和专用集成电路。此外,实现本文所述的主题的计算机可读介质可以位于单个设备或计算平台上,或者可以分布在多个设备或计算平台上。附图说明现在将参考附图描述本文所述的主题的优选实施例,其中:图1是示出根据本文所述的主题的实施例的常规路由模型的网络图;图2是示出根据本文所述的主题的实施例的、用于虚拟架构路由的系统的网络图;图3是示出根据本文所述的主题的实施例的、用于VFR代理转发器设备的示例性体系架构的框图;图4是示出根据本文所述的主题的实施例的、用于与VFR代理转发器设备交互的服务路由器的示例性体系架构的框图;图5是示出根据本文所述的主题的实施例的虚拟架构路由的示例性处理的流程图;及图6A-图6D示出了在最短路径桥接网络上的不同路由方法和关联的链路成本。具体实施方式概述虚拟架构路由–本文所述的主题在任何层2网络基础结构上提供高度可扩展和高效的虚拟化层3路由。该架构可以从单个机箱扩展到使用任何层2协议的设备的大集合,以形成其拓扑。层2拓扑协议可以是形成单路径(如生成树)或多路径服务(如最短路径桥接(SPB))的协议。在本文所述的主题的一个实现中,层2服务将所有VLAN增殖到VFR域内被称为VFR代理转发器的分组转发设备。本文所述的主题的一个方面是提供通过充分利用(leveraging)层2基础结构的拓扑协议代替层3拓扑协议来最高效地利用层2基础结构的路由解决方案。兴趣在于那些支持多个出口路径、具有所有VLAN的知识并允许主机在整个层2域中自由移动的层2服务。虚拟架构路由支持全网络的分布式虚拟路由系统的建立,其中系统中的所有设备作为单个共同的(collective)层3转发机制工作。在这样的实现中,路由变成层2域的集成服务,并且更加优化了从源到最终目的地的分组转发。例如,最短路径桥接或SPB是由IEEE802定义的层2技术,它增强了IEEE802生成树协议以利用多个路径,并且定义SPBV(SPB的一个类型)以服务多个VLAN。在SPBV网络中,路由器附连在SPBV网络的边缘处以转发客户VLAN之间的流量。在网络边缘处的路由器接收来自网络中的节点的IP分组、对分组进行路由、确定对于分组的适当VLAN,并将分组转发回到不同VLAN上的层2网络中。在层2网络内的分组转发节点不具有任何层3路由能力。因为路由器接收分组并将分组转发回到相同的层2网络中,所以路由器常常被称为“单臂路由器”。虽然这种单臂路由功能是可行的,但它不提供通过网络的最直接路径。如图1中所示,经路由的分组从一个VLAN上的SPB节点A100离开层2网络到连接路由器(传统路由器X102),该路由器将分组转发到相同的层2网络内的另一个VLAN上,由此穿过层2网络两次。此外,路由器102和第二路由器104可以在每个VLAN接口上运行虚拟路由冗余协议(VRRP),以支持用于客户端主机的冗余。VRRP广告消耗参与路由器的网络带宽和CPU资源,尤其是当扩展到数百甚至数千个VLAN时。在图1中,节点100、106和108形成层2转发域。每个节点100、106和108运行SPB或SPBV来支持多个VLAN。如上所述,当节点100、106或108之一接收到需要路由的分组时,分组被转发到传统路由器102和104之一,该传统路由器执行层3路由查找并将经路由的分组转发回到VLAN上的层2网络中,这些VLAN不同于由接收到的分组所使用的那些VLAN。然后,层2节点100、106和108使用层2转发将分组传送到它们的层2目的地(主机)。例如,在图1中,来自VLAN2上的主机B110的分组可以被层3寻址到主机D114。对于这样的分组,主机B110将分组发送到SPB节点A100,层2将分组切换(转发)到相同VLAN(VLAN1)上的层3路由器102。层3路由器102执行层3地址查找,并在与目的地D114关联的不同VLAN(VLAN2)上转发分组。SPB节点B106层2将分组切换到VLAN116上的目的地D。因此,源自主机B110的分组两次穿过层2网络以到达目的地D114。对于来自主机A118的分组发生类似的路由情景。在图1所示的示例中,被层3寻址到目的地G120的源自主机A118的分组离开VLAN1上的主机A。SPB节点100接收分组并且将分组层2转发到相同VLAN(VLAN1)上的路由器102。路由器102对分组执行层3地址查找并且将分组转发到不同VLAN上的目的地G120。在这种情况下,分组没有穿过层2网络两次,但是所有需要路由的分组都通过层3路由器102,对于离开层2网络的分组,该层3路由器102可能是瓶颈。因此,在图1中,当主机B110向主机D114发送分组时,到主机D114的路径必须穿过传统路由器(传统路由器X102或传统路由器Y104),从而导致对于每个分组有3跳。从主机C122到主机E124的路径甚至比先前的示例更加低效。在图1中,离开主机E124的分组去往VLAN2上的SPBC108。SPBC108不能解析分组中的IP地址,因此SPBC108将分组层2切换到SPBA100。SPBA100同样不能解析分组中的层3或IP地址,因此SPBA100将分组层2切换到传统路由器102。传统路由器102解析分组中的层3地址,并将分组转发到VLAN1上的SPBB106。SPBB106将分组转发到VLAN1上的SPBC108。SPBC108将分组转发到主机E124。因此,尽管主机C和E本地连接到相同的SPB节点108,从C到E的分组从源到目的地要经过5跳。除了图1中所示的路由低效之外,还可以由每个VLAN上的路由器102和104运行VRRP。随着网络在数以千计的VLAN上支持成千上万个用户,在所有VLAN上潜在地运行VRRP会是衰弱的,并且降低网络性能以及增加在运行VRRP协议的路由器上的CPU利用率。本文所述的用于虚拟架构路由的主题将分组直接路由到目的地,并且不需要VRRP协议来支持路由器冗余。VFR在具有用于直接连接的节点的层3路由能力的VFR代理转发器中提供集成路由服务。VFR利用层2特征(诸如VLAN传播、多路径拓扑、快速收敛和MAC可达性)来提供消除或减少对路由协议的需要的更简单和高效的路由服务。通过消除或减少对路由协议的需要,本文所述的主题可以扩展到支持跨可以在复杂L2域中存在的数以千计的VLAN接口的路由。消除或减少对L3路由协议的需要还消除或减少了对在L2拓扑改变和L3拓扑改变之间发生的交互的需要。虚拟架构路由以以下原理操作:层2域内的主机离其它主机最多只有一个路由跳。假设所有VLAN接口都在每个边缘设备上,VFR代理转发器可以使用层2服务直接路由到其目的地,以执行多路径和MAC可达性。只有当VFR代理转发器不能路由时,它才必须转发到可以路由的边界或服务路由器。在某种意义上,这种方法在整个SPB域中分布有限的路由,从而对于退出VFR域的分组在几个选定的服务路由器上留下完整的IP转发。本文所使用的术语“服务路由器”是指包括层3路由功能和VFR服务路由器中介功能(在下文定义)的设备。术语“路由器”是指包括层3路由功能但不一定包括VFR服务路由器中介功能的设备。当VFR服务路由器中介功能被添加到路由器时,该路由器变成服务路由器。VFR代理转发器设备可以利用由VRRP描述的虚拟IP寻址概念,从而允许在参与的设备上部署简单和共享的路由配置。虽然启用了VFR的设备可以与允许经路由的分组通过层2域运送的路由协议共存,但是VFR服务最适合于通常在需要路由的企业网络和数据中心中使用的边缘路由情景,包括使用多个VLAN的配置。图2示出了在使用SPB作为层2服务的层2节点上启用的VFR代理转发器设备。在图2中,节点100A、106A和108A是VFR代理转发器设备,该VFR代理转发设备代表一个或多个服务路由器102A和104A在VFR域内的VLAN之间执行单跳层3路由,并将VFR代理转发器100A、106A和108A不能解析(基于缺乏对目的地的了解而不能转发)的分组重定向到用作目的地的服务路由器102A和104A之一。服务路由器102A和104A是集成了层2节点并且具有完全路由器能力的边界路由器。可以通过层2拓扑协议来广告路由器102A和104A的存在以表示外部路由能力,即,对于不能由VFR代理转发器设备100A、106A和108A路由的分组,服务路由器102A或104A可以是默认路由。VFR代理转发器设备100A、106A和108A可以通过层2协议字段、通过另一个OSI层的字段、通过专有消息传送或静态配置来发现路由器102A和104A。这使得代理转发器100A、106A和108A能够维持可用路由器及其对应MAC地址的列表,并由此直接支持路由器冗余,而不需要每个VLAN上都有VRRP。如下面将详细描述的,在一个实施例中,VFR服务路由器中介可以将服务路由器的层2地址传送到VFR代理转发器。此外,由层2拓扑或其它协议携带的路由能力信息可以包含优先级字段,当在转发平面中选择路由器MAC时允许VFR代理转发器100A、106A和108A考虑该优先级字段。在上面的SPBV示例中,用来携带路由器能力的层2拓扑协议是支持用于路由器的参数的中间系统到中间系统(IS-IS)。虚拟架构路由与传统的路由配置的不同之处在于,VFR代理转发器100A、106A和108A运行层2拓扑协议,并且可以对每个设备上的每个VLAN具有完全相同的路由器接口配置。传统的路由设置要求每个路由器上的每个接口具有不同的IP地址、活动冗余协议(如VRRP)、和/或静态路由配置、和/或L3拓扑协议(如开放最短路径优先(OSPF))。在图2中,当VFR代理转发器设备100A接收到来自主机B110的被层3寻址到VLAN2上的目的地D114的分组时,VFR代理转发器设备100A对分组执行层3地址查找,而不是自动将分组转发到服务路由器102A。因为可通过直接连接到VFR代理转发器设备100A的VFR代理转发器设备106A而到达目的地D114,所以地址查找解析到目的地D114,并且VFR代理转发器设备100A将分组转发到VLAN1上的VFR代理转发器设备106A,其中VLAN1与接收分组的VLAN2不同。因此,除了执行层3地址查找之外,VFR代理转发器设备100A还对寻址到下一跳在VFR转发域内的主机的分组执行VLAN切换。VFR代理106A从VLAN1上的VFR代理转发器设备100A接收分组,并且执行层2MAC桥接操作,以将分组转发到同一VLAN(VLAN1)上的目的地D114。从主机B110到主机D114的分组使用VFR转发穿过2跳(一个层3路由器跳和一个层2桥接跳)。这可以与图1中的示例形成对比,在图1中,从主机B到主机D的分组穿过3跳(层2桥接跳、继之以层3路由器跳,继之以层2桥接跳)。在另一个示例中,当主机A118将VLAN122上的被层3寻址到目的地G120的分组发送到VFR代理转发器设备100A时,VFR代理转发器设备100A尝试执行层3地址查找,并确定它不具有为目的地G提供的层3地址。因此,VFR代理转发器设备100A将分组转发到在相同VLAN(VLAN1)上的服务路由器102A。服务路由器102A对分组执行层3地址查找、解析分组的IP地址,并将分组转发到目的地G120。在将IP地址不能解析的分组转发到服务路由器102A时,由VFR代理转发器设备100A执行的操作不同于图1中所示的转发机制。在图1中,需要层3地址查找的所有分组都被转发到其中一个服务路由器。在图2中,只有IP地址不能被VFR代理100A解析的分组才被发送到服务路由器102A。用于将分组发送到服务路由器102A的机制是重定向到相同VLAN上的服务路由器MAC地址。在另一个路由示例中,离开主机C122的、被层3寻址到主机E124的分组仅通过网络中的单跳,因为VFR代理108A对分组执行层3地址查找并将分组从主机C转发到主机E。这可以与图1中所示的传统情况形成对比,在图1中,这样的分组在网络中穿过5跳。应当注意到,对于从VFR域的外部进入VFR域的分组,第一跳将是层3路由器跳(到路由器、到VFR代理或者到目的地主机(如在上述C-E的情况中一样))。在图1中所示的SPB网络中,对于来自VFR域的外部的分组的第一跳是到路由器或者到SPB域中的另一个节点的层2桥接跳。图1和图2中所示的结构之间的另一个区别在于,在图1中,传统路由器102和104以主动备用配置起作用,而在图2中,路由器102A和104A以主动-主动配置起作用。因此,路由器102A和104A不需要运行VRRP或其它路由器冗余协议,这减少了路由器102A和104A上的处理负担。以下是本文所述的主题的示例性特征。但是,本文所述的主题不限于包括这些特征的任意组合的设备、系统或方法。(1)VFR代理转发的概念虚拟架构路由是支持建立全网络的分布式虚拟路由系统的概念。VFR系统中的分组转发节点支持使用VFR代理的层3转发,并且作为单个共同的转发机制工作。通过在VLAN和层2连接域内的层2转发(MAC桥接)之间执行分组的单跳层3路由,VFR代理转发器设备代表服务路由器进行服务,由此利用通过网络的最高效的路径。(2)公共路由接口配置在一个示例性实现中,层2架构确保每个VLAN存在于VFR转发域内的每个节点上。可以使用相同的配置命令集合或者公共的文件来实现具有公共路由接口配置,其中相同的配置命令集合或者公共的文件可以被复制到所有VFR代理转发器设备,或者使用简单网络管理协议(SNMP)管理信息库(MIBS)、可扩展标记语言(XML)模式经由管理系统安装,或者通过标准协议或包括对标准协议的私有扩展的私有协议来分布。与在传统路由网络中通常发现的那些配置相比,在所有VFR代理转发设备上部署公共路由接口配置的益处是行政管理负担的减少、更快的部署和减少的配置错误。可能的是,软件定义网络(SDN)或L3协议(如边界网关协议(BGP))可以分发配置和/或公共转发表。在这种环境中,这可以导致在VFR代理转发器设备上的较少配置或没有配置。另外,有可能在单个设备中进行改变,并允许经由现有协议或新的协议将该改变传播到每个VFR代理转发器设备,从而确保网络一致性。(3)路由器MAC地址的发现–在默认情况下,VFR代理转发将存在于VFR域内的所有层2边缘设备(即,VFR代理转发器设备)上。VFR代理转发器设备的分布式转发平面知道在其不能解析目的地IP地址时要使用的服务路由器集合。然后,分组被转发到附连到层2域的合适服务路由器的MAC地址之一。在一个示例性实现中,VFR代理转发器设备利用默认的MAC地址将无法解析的L3分组转发到服务路由器。用作服务路由器的边界路由器MAC可以被静态地设置或动态地学习。本文所述的主题的一个方面包括在层2协议中携带路由器能力和优先级以支持路由器冗余。例如,SPB使用IS-IS协议来形成层2拓扑,从而允许携带作为LSP广告中的类型-长度-值(TLV)的路由器能力。对于广告路由器能力的具有IS-IS协议能力的节点,它们的MAC被认为是合格的路由器。VFR代理转发器设备(也是具有IS-IS协议能力的节点)可以了解携带这些TLV的路由器集合,并管理可用的服务路由器MAC地址的列表。基于这个服务路由器和属性的列表,VFR代理转发器设备可以使用路由器优先级和/或拓扑节点度量来确定向哪个路由器MAC地址转发无法解析的主机分组。经由该单个机制,路由器冗余和负载平衡都是可能的。当路由器节点加入或离开网络时,拓扑协议通知VFR代理转发器设备,从而给予VFR代理转发器设备正确管理其服务路由器集合的能力。(4)虚拟化的默认网关以支持交换架构域内的用户、主机、客户端和服务器的移动性。VFR代理转发器设备充当在VFR转发域内识别出的VLAN上的主机的默认网关,而不使用层3协议或冗余选择协议。VFR代理转发器设备在层2地址表中安装虚拟MAC,以便接收和转发去往默认网关的分组。层2域内的VFR代理转发器设备不将虚拟MAC作为源MAC传播。虽然任何层2拓扑协议都可以工作,但是在一个示例性实现中,只有单个VFR代理转发器接收要转发给给定主机的分组。SPB确保这个行为,而某些基本的跨越(spanning)环境则可能不能确保。(5)消除层3路由协议由于层2协议可以建立多路径拓扑域,因此在一个示例性实现中,不需要在相同的层2转发域内形成层3路由拓扑。VFR代理转发器利用多路径L2拓扑,因为层2域内的主机不超过1路由跳远。此外,在一个示例性实现中,不需要具有如VRRP的路由器冗余协议,因为在服务路由器的帮助下,边缘VFR代理转发器用作该目的。即,可以通过使用携带关于路由器能力的附加信息的层2拓扑协议来提供路由器冗余。图3是示出根据本文所述的主题的实施例的、用于VFR代理转发器设备的示例性体系架构的框图。参考图3,VFR代理转发器设备100A、106A或108A包括至少一个处理器300和至少一个相关联的存储器302。VFR代理转发器设备100A、106A或108A还包括由(一个或多个)处理器300执行或在(一个或多个)处理器300中实施的VFR代理转发模块304,用于执行本文所述的用于VFR代理转发的操作。这些操作包括代表服务路由器对穿过VLAN并寻址到虚拟架构路由域内的节点的分组执行层3路由,并将层3地址解析失败的分组层2转发到服务路由器的层2地址。此外,VFR代理转发模块对每个VLAN执行分组的层2转发(通常为IEEE802MAC桥接)。由VFR代理转发模块304使用的层3路由信息可以是完全或部分地静态配置或半静态配置,或者由VFR代理转发模块304使用层2或层3拓扑发现协议或与拓扑发现协议分离的协议来学习。用于给定VFR代理转发设备的L3路由信息可以包括对于VFR域内的节点的全部或子集的层3转发信息。在一个示例中,用于给定VFR代理转发器设备的L3路由信息可以包括对于VFR代理转发器设备的单个路由跳内的节点的层3转发信息。在所示的示例中,VFR代理转发器还包括层2拓扑协议模块306(诸如SPB)以构建底层的层2拓扑。L2拓扑协议模块306可以利用层2拓扑发现协议(诸如IS-IS)来了解服务路由器的MAC地址。这个模块还可以包含L2转发数据库(FDB)。在一个实施例中,VFR代理转发模块304可以使用对IS-IS的扩展来了解服务路由器的MAC和/或IP地址。例如,服务路由器中介可以将其VFR能力信息插入到IS-ISLSP-0消息中作为实验TLV250,并将该消息发送到层2域中的VFR代理转发器设备。TLV可以以具有被设置为不在服务中的虚拟架构路由标志而存在,或者TLV可以根本不存在。当特征退出配置并且以若干(可能是三个)LSP刷新间隔的时段发送特征时,可以使用存在TLV但VFR标志被设置为不在服务中的情况。下面的表1示出了可以包括在TLV250中以支持VFR的示例性字段。表2示出了用以支持VFR的TLV250的标志字段的示例性标志位。表3示出了用以支持VFR的非保留标志位的值。字节字段描述(默认值)1IS-IS实验TLV(250)2长度(11)3-5Enterasys/ExtremeOUI(0x00001D)6RaaS子类型(1)7长度(6)8标志(1)9优先级(100)10-13唯一IPv4路由器ID(0)是有效的14-33唯一IPv6地址表1:用以支持VFR的TLV250字段01234567RRRRRNVI表2:用以支持VFR的TLV250中的标志字段的标志位位描述(默认)0保留(0)1保留(0)2保留(0)3保留(0)4保留(0)5N(0)–不在服务中,1是不在服务中,0是在服务中6V(0)-IPV6地址,1是存在,0是不存在7I(1)-IPV4地址,1是存在,0是不存在表3:标志位的值在表3中,如果用于TLV250的标志位的位5被设置为“在服务中”,并且位6被设置为“IPv6地址存在”,则接收方VFR代理转发器设备100A、106A或108A知道IS-IS实验TLV250包含IPv6地址。将在IS-IS实验TLV250的字节14-33中携带IPv6地址。当VFR代理转发器设备100A、106A或108A接收到这种IS-ISTLV时,接收方VFR代理转发器设备100A、106A或108A更新其层3地址表,以将服务路由器的IPv6地址与路由器默认MAC地址关联,其中路由器默认MAC地址可以在VFR代理转发器100A、106A或108A内静态配置。服务路由器上的无偿的ARP为了避免来自VFR网络或VFR域内的下游VFR代理转发器设备的未知MAC地址的泛滥,服务路由器可以周期性地向VFR代理转发器设备发送无偿的ARP请求,以在过滤器数据库中保持服务路由器的MAC地址,其中过滤器数据库保持了解到的MAC地址以及在其上了解了该地址的物理端口。如果没有这样的无偿的ARP请求,由路由器用于ARP消息的并由VFR代理转发器设备维护的MAC地址将过时并被删除。由于过时,会发生不期望的泛滥。可以在面向VFR的接口上发送无偿的ARP请求,以仅对于下游转发设备维护其MAC地址。无偿的ARP请求之间的间隔可以与FDB过时定时器减去预定时间段同步,该预定时间段被设计为确保在过时定时器过期之前在每个VFR代理转发器设备中更新MAC路由器地址。间隔可以在下一个定时器对FDB过时进行任何改变之后进行更新,并且可以在VFR被禁用时停止。此外,当未找到服务路由器的FDB条目时,可以由VFR代理转发器设备将单播ARP请求发送到服务路由器的路由器-id。这些努力是为了在每个VLANID(VID)的每个VFR代理转发器的转发数据库中维护服务路由器的MAC地址,并且避免在非对称路由情景中通常发现的未知MAC的泛滥。TLV250的VFR代理转发器处理在本文所述的主题的一个实现中,在另一个VFR代理转发器设备加入或离开VFR拓扑时,VFR代理转发器设备可以调用被称为“自定义用户退出”的处理。将由VFR代理转发器接收具有TLV250的IS-ISLSP-0或LSP-1消息。在VFR代理转发器设备上运行的IS-IS可以调用自定义用户退出来解码TLV。使用“更新”调用将服务路由器信息传递到VFR代理转发器设备的L3转发元件。(Action、Router-ID、SYSID(MAC))Action–0是删除,1是更新(新的或改变的)。Router-ID必须存在并且在整个SPB网络中是唯一的。VFR代理转发器设备从自TLV250获得的节点的SYSID获得路由器MAC地址,并且对于所有VLAN接口可以是相同的。如果TLV不再存在或设置了“不在服务中”标志,则可以利用删除动作调用自定义用户退出。SPB代码可以存储对于每个SYSID的VFR状态标志,以加速处理并知道何时进行用户退出调用。本文所述的主题不限于使用层2拓扑发现协议将服务路由器MAC地址传送到VFR代理转发器。在替代实施例中,可以使用现有的或新的(例如,专有的)协议将服务路由器MAC地址传送到VFR代理转发器设备。在又一个替代实施例中,VFR代理转发器可以配置有服务路由器的MAC地址。图4是根据本文所述的主题的实施例的服务路由器102A或104A的框图。在图4中,服务路由器102A或104A包括至少一个处理器400和至少一个相关联的存储器402。服务路由器102A或104A包括对IP地址不能被VFR代理转发器解析的IP分组进行路由的路由模块406。服务路由器102A或104A还包括L3拓扑协议模块406,该L3拓扑协议模块406实现L3拓扑协议(诸如边界网关协议(BGP)、开放最短路径优先(OSPF)或路由信息协议(RIP)),以建立和保持其层3路由表。如上所述,服务路由器是具有VFR服务路由器中介的层3路由器。因此,服务路由器102A或104A包括VFR服务路由器中介407。VFR服务路由器中介407可以包括可实现层3冗余方法中介407的层3冗余协议模块408,如果知道替代路径或冗余活动路径,则层3冗余协议模块408可以在通告消息中向VFR代理转发设备通告那个信息。可以经由若干机制来了解替代路径或冗余活动路径,这些机制包括:基于与VFR服务路由器中介407合并的功能的现有协议、专有协议、手动和自动配置和知识。通常,模块408向通告模块409提供替代路径信息,通告模块409将那个信息发送到VFR代理转发设备。服务路由器102A或104A还可以包括层2拓扑协议模块306,该层2拓扑协议模块306运行与VFR代理转发器设备相同的层2拓扑协议,使得服务路由器102A或104A可以了解层2域的拓扑。这个模块还可以包含L2转发数据库(FDB)。服务路由器102A或104A可以使用上述IS-IS扩展或本文所述的任何替代机制将其MAC地址和VFR服务能力传送到VFR代理转发器设备。VFR服务路由器代理407通过使服务路由器102A或104A的MAC地址对VFR代理转发器可用,提供对服务路由器102A或104A的层3路由服务的访问。VFR服务路由器中介407可以以任何合适的方式(诸如层2拓扑发现协议)使MAC地址对VFR代理转发器可用。虽然在所示的示例中,VFR服务路由器中介407是服务路由器102A或104A的组件,但是本文所述的主题不限于这种实施例。VFR服务路由器中介407可以在设备(诸如与层3路由器分离的具有处理器和存储器的计算平台)上操作。术语“VFR服务路由器中介设备”在本文中一般被用来指在其上执行VFR服务路由器中介的设备,无论该设备是路由器、另一个网络节点还是服务器设备。VFR服务路由器中介407包括上面提到的层3冗余协议模块408(它是可选的)和向VFR代理转发器设备通告(从模块404接收到的)路由器的MAC地址的通告协议模块409。这通常是通过在通告协议(包括但不限于上面提到的层2拓扑发现协议)中提供层3路由器接口的层2地址来完成的。可以使用专有协议或可扩展协议(诸如IS-IS)或手动操作来向VFR代理转发器设备提供接口信息。VFR服务路由器中介407还包括VFR服务功能404。VFR服务功能404识别与为VFR域提供层3服务的路由器的接口。总的来说,VFR服务路由器中介407包括实现组件404、408和409中的一些或全部的设施或软件。这些部件可以被添加到传统路由器以创建服务路由器。可替代地,VFR服务路由器中介407可以部分地或整体上添加到网络系统的其它设备。图5是示出根据本文所述的主题的实施例的用于虚拟架构路由的示例性处理的流程图。参考图5,在步骤500中,在VFR代理转发器设备处接收IP分组。例如,可以在图2中所示的VFR代理转发器100A处接收IP分组。在步骤502中,VFR代理转发器设备尝试使用其层3路由信息来解析IP地址。例如,VFR代理转发器设备100A可以在其层3路由表中执行查找,以尝试解析分组中的目的地IP地址。在步骤504中,确定解析是否成功。如果解析成功,则控制前进到步骤506,其中分组被层3路由(代理路由器转发路径)。如果解析不成功,则控制前进到步骤508,其中分组被转发到路由器或服务路由器的地址。在一个实施例中,地址可以是由VFR服务路由器中介提供的服务路由器的层2地址,并且可以修改分组来包括该层2地址。为了转发到路由器或服务路由器的层2地址而对分组的修改可以包括使分组中的源层2地址保持不变、使分组中的层3报头不变、以及将目的地层2(MAC)地址替换为路由器或服务路由器的层2(MAC)地址。一旦分组中的目的地层2地址被替换为路由器或服务路由器的层2地址,该分组就被转发到VFR服务路由器。VFR域中的中间跳将被层2转发到路由器或服务路由器。在步骤510中,路由器或服务路由器使用其层3路由表来解析分组中的层3地址,并转发分组(传统路由路径)。图5中所示的示例假设由VFR代理转发器设备接收到的分组是这样的IP分组,VFR代理转发器设备将尝试使用分组中的目的地IP地址对该IP分组进行层3路由地址解析。这种分组通常将被层2寻址到VFR代理转发器设备的层2地址。如果由VFR代理转发器设备接收到的分组实际上被寻址到不是接收VFR代理转发器设备的层2地址的层2地址,则接收VFR代理转发器设备基于分组中的目的地层2地址在其层2转发数据库中执行查找。如果找到匹配,则分组被层2转发(桥接)到与分组中的层2地址对应的VFR域中的下一跳层2节点。VFR代理转发通过减少在VFR域内路由时的延迟时间来改进层2和层3分组转发的
技术领域
。在相同大小的网络中,VFR代理转发器设备的L3转发表比传统路由器需要的转发表更小。VFR代理转发设备中的L3转发表不需要包括用于VFR域外部的设备或网络的转发表条目。因为VFR代理转发器对于每个接口可以具有完全相同的路由配置,所以相对于传统网络,配置显著减少。因为在VFR域中VLAN转发的任务被分布到VFR代理转发器设备的全部或子集,VFR域内的VLAN转发比传统网络(参见图1)中更容易。因此,延迟时间减少。因此,被配置用于VFR代理服务路由的VFR代理转发器设备或服务路由器构成了改进层2和层3分组转发的
技术领域
的专用计算设备。VFR转发功能分布在整个层2或VFR域中的一个优点是,当与传统路由方法相比时,这种分布改善了总体路径成本。通过从VFR代理转发器设备直接转发,VFR域中可能的转发路径中的链路度量总和将永远不会大于传统方法。此外,当客户端主机的数量大于网络中网桥节点的数量时,从所有客户端主机到每个其它客户端主机的所有路径成本总和将具有更低的聚合路径成本。与使用单臂路由器的对应传统拓扑(参见图1)相比,这种更低的路径成本将导致相等或更低的延迟。图6A-图6D示出了在最短路径桥接网络上的路由方法和相关联的链路成本。在图6A中,3个主机600、602和604驻留在唯一的VLAN上,因此相互之间需要L3转发。如图6B中所示,主机600、602和604经由SPB节点100和106以及传统路由器102相互连接。图6B中所示的将节点和主机互连的每条链路可以被分配成本(例如,基于链路的带宽)。在所示的示例中,主机和SPB节点之间的链路上的成本是10,并且SPB节点和路由器102之间的成本是1。因为需要路由在不同VLAN之间发送消息,所以离开主机A600去往主机C604的分组必须从主机A600出发、到SPB网桥100、到路由器102、到SPB网桥106,并且从SPB网桥106到主机C604,总成本为22。从主机A600到主机B602以及从主机B602到主机C604的路由的成本也是22。加上节点之间的路由的链路成本,图6B中所示的网络的总成本为66。图6C示出了其中SPB桥106和传统路由器102被组合成单个节点608的示例。在这种示例中,从主机A600到主机B602的分组仍然必须通过路由器608,其链路成本为22。从主机A600到主机C604的分组通过SPB桥100和路由器608,其总链路成本为21。类似地,从主机A600到主机C604的分组从SPB网桥100出发、通过路由器608并到达主机C604,其总成本为21。图6C中的路由的聚合链路成本为64。图6D示出了根据本文所述的主题的实施例的使用虚拟架构路由的链路成本。在图6D中,因为每个VFR代理转发器设备100A和106A可以将分组路由到直接连接到另一个VFR代理转发器设备的节点(包括切换VLAN),所以消除了到服务路由器和从服务路由器返回的路径,从而导致降低的聚合链路成本。例如,在图6C中所示的网络中,从主机A600到主机B602的分组仅穿过VFR代理转发器设备100A,VFR代理转发器设备100A执行层3路由查找并将分组从主机A600路由到主机B602,其总链路成本为20。从主机A600到主机C604的分组被VFR代理转发器设备100A路由到VFR代理转发器设备106A。VFR代理转发器设备106A将分组层2转发到主机C604,其总链路成本为21。从主机B602到主机C604的分组被VFR代理转发器设备100A路由到VFR代理转发器设备106A。VFR代理转发器设备106A将分组层2转发到主机C604。在图6D中的主机之间转发的总聚合链路成本为62,这低于图6B或图6C中所示的示例的总聚合成本,因此示出了如本文所述的VFR代理转发的又一个示例。除了路径成本分析之外,当使用L2转发代替L3转发时,处理要求也更少。另外,VFRL3能力的有限的L3转发比传统路由器更快。这可以导致更好的CPU性能、更低的成本和更低的转发延迟。应当理解,在不背离本公开的主题的范围的情况下,可以改变本公开的主题的各种细节。此外,前述描述仅仅是为了说明目的,而不是为了限制目的。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1