静态TRILL路由方法和系统与流程

文档序号:12040143阅读:230来源:国知局
静态TRILL路由方法和系统与流程
本发明一般涉及网络路由,更具体地说,涉及TRILL网络内的静态路由方法。

背景技术:
多链接透明互连(TRILL)是一种把网络层路由协议应用于链路层,以便支持第2层多路径技术的因特网工程任务组(IETF)协议。TRILL用来替换生成树协议(STP)。通过阻断所有备选路径,STP网络在虚拟局域网(VLAN)中的所有网桥之间,建立并保持单一的无环路径。这导致可用网桥的低效使用,和减小集合带宽。TRILL通过对第2层设备应用中间系统到中间系统(IS-IS)第3层路由协议来解决该问题。这实质上允许第2层设备通过多个路径路由以太网帧,从而提供更高的吞吐量。TRILL由称为路由网桥的网络设备实现,路由网桥是能够实现TRILL协议、进行第2层转发、并且几乎不需要任何配置的第2层设备。路由网桥的位置由其媒体存取控制(MAC)地址定义。也称为硬件地址或物理地址的MAC地址是分配给网络接口控制器(NIC)(也称为网络适配器),以便在物理网络段上通信的唯一标识符。MAC地址通常是在制造时分配的,并被保存在硬件、只读存储器或某些其它固件机构中的12位16进制数(长度为48比特)。诸如路由网桥之类的网络节点可具有多个NIC,在这种情况下,每个NIC具有它自己的唯一MAC地址。主机不能根据另一个主机的MAC地址判定该主机是在与发送主机相同的网络段上,还是在桥接到该网络段的另一个网络段上。一般来说,TRILL设备(路由网桥)在它们自己之间运行链路状态协议。目前的第2层TRILL网络中一般使用的链路状态路由协议是中间系统到中间系统(IS-IS)路由协议。链路状态协议是其中向网络中的所有路由网桥广播连接信息,以致每个路由网桥知道所有其它的路由网桥和它们之间的连接的协议。连接信息使路由网桥能够计算两两之间的最佳或者最小成本的单播路径,和计算用于把帧传送给其位置未知的目的地,或者传送给组播/广播群的分发树。IS-IS用于在计算机网络内有效地移动信息。IS-IS是通过在路由网桥的整个网络内扩散(flood)链路状态信息来工作的。每个路由网桥独立地收集扩散的网络信息,并建立网络的拓扑的数据库。IS-IS利用Dijkstra算法计算穿过网络的最佳路径。随后根据计算的穿过网络的最佳路径,把后续数据分组转发给目的地。例如,按照以下方式,利用IS-IS链路状态协议,通过校园网转发帧。首先,单播帧在入口路由网桥进入校园网。所述帧携带内部报头到达,所述内部报头包含帧的源主机和目的地主机(即,该帧的预定接收者)的MAC地址。入口路由网桥封装所述帧,并增加新的TRILL报头,所述新的TRILL报头包括入口路由网桥和连接到目的地主机的VLAN的出口路由网桥的“别名”。TRILL报头包括6比特递减跳数、出口路由网桥别名和入口路由网桥别名。在添加TRILL报头之后,入口路由网桥确定沿着到达最终目的地的最佳路径的下一跳路由网桥,添加包括入口路由网桥的MAC地址和下一跳路由网桥的MAC地址的外部报头,然后把该帧转发给下一跳路由网桥。一旦下一跳路由网桥接收到所述帧,那么它比较TRILL报头中的出口路由网桥别名和它自己的别名。如果该路由网桥确定它不是出口路由网桥(即,TRILL报头中的别名和它自己的别名不匹配),它如上所述确定沿着到达最终目的地的最小成本路径的下一步,然后向前转发所述帧。沿着最佳路径每个路由网桥重复该步骤,直到所述帧到达出口路由网桥为止。出口路由网桥剥离外部报头和TRILL报头、解封所述帧、然后把所述帧转发给在内部报头中指定的目的地主机的MAC地址。链路层发现协议(LLDP)是一种形式的邻居发现协议。LLDP和IS-IS之间的主要差别在于与像在IS-IS系统中那样了解整个网络拓扑相反,利用LLDP的路由网桥只向它们的邻近路由网桥或者下一跳路由网桥,通知它们的位置。每个路由网桥收集通知的下一跳位置信息,以编辑包含它的每个下一跳路由网桥的MAC地址的LLDP数据库。

技术实现要素:
本发明的实施例提供TRILL网络中的静态路由的系统、方法和程序产品。路由网桥接收识别与TRILL网络中的每个出口路由网桥对应的下一跳路由网桥的路由指令。路由网桥接收具有内部报头的数据分组,所述内部报头包含数据分组的目的地主机的MAC地址。路由网桥确定它是否是入口路由网桥。响应于确定路由网桥是入口路由网桥,所述路由网桥识别出口路由网桥的名称,并用TRILL报头封装所述数据分组,所述TRILL报头包含入口路由网桥的名称和出口路由网桥的名称。路由网桥随后确定它是否是出口路由网桥。响应于确定路由网桥是出口路由网桥,所述路由网桥解封数据分组,并把数据分组转发给位于在内部报头中指定的MAC地址的目的地主机。响应于确定路由网桥不是出口路由网桥,所述路由网桥识别下一跳路由网桥的MAC地址,用外部报头封装数据分组,并把数据分组发送给下一跳路由网桥的MAC地址,所述外部报头包含路由网桥的MAC地址和下一跳路由网桥的MAC地址。在一些实施例中,路由网桥通过检查数据分组是否封装有TRILL报头来确定它是否是入口路由网桥。在一些实施例中,路由网桥接收TRILL转发数据库,所述TRILL转发数据库包含链接到TRILL网络的每个VLAN的VLANID,包含在每个VLAN内的每个主机的MAC地址,和链接到每个VLAN的出口路由网桥。在一些实施例中,路由网桥通过检查TRILL转发数据库以确定对应于在内部报头中指定的目的地主机的MAC地址的出口路由网桥,来识别出口路由网桥的名称。在一些实施例中,路由网桥通过比较路由网桥的名称和TRILL报头中的出口路由网桥的名称,来确定所述路由网桥是否是出口路由网桥。在一些实施例中,如果路由网桥是入口路由网桥,解封包括除去TRILL报头。在一些实施例中,如果路由网桥不是入口路由网桥,解封包括除去外部报头和TRILL报头。在一些实施例中,路由网桥从它的下一跳路由网桥接收位置信息,并利用所述位置信息,创建LLDP数据库。在一些实施例中,路由网桥通过对照LLDP数据库参考路由指令,来识别下一跳路由网桥的MAC地址。附图说明图1图解说明按照本发明的实施例的静态TRILL路由系统。图2图解说明按照本发明的TRILL网络。图3是图解说明按照本发明的实施例,由图2的TRILL网络中的每个路由网桥进行的入口路由网桥确定的步骤的流程图。图4是图解说明按照本发明的实施例,由图2的TRILL网络中的每个路由网桥进行的出口路由网桥确定的步骤的流程图。图5示出图1的主机和路由网桥内的硬件和软件的方框图。具体实施方式下面参考附图,详细说明本发明的实施例。图1图解说明按照本发明的实施例的静态TRILL路由系统100。静态TRILL路由系统100包括连接到TRILL网络106的VLAN104。虽然图1把VLAN104例示成静态TRILL路由系统100中的唯一VLAN,不过其它实施例可包括连接到TRILL网络106的多个VLAN。VLAN104包括主机102a-102n。在优选实施例中,VLAN104是虚拟局域网。在其它实施例中,VLAN104可被实现成企业内部网、局域网(LAN)或者广域网(WAN)。在优选实施例中,VLAN104包括支持每个主机102a-102n和按照本发明的实施例的TRILL网络106之间的通信的连接和协议的组合。通常,VLAN104是可位于任何地方并且可借助TRILL网络106相互通信的一组主机102a-102n。VLAN104中的每个主机102a-102n既可以是进入TRILL网络106的通信的来源,也可以是离开TRILL网络106的通信的目的地。每个主机102a-102n可以是桌上型计算机、笔记本、膝上型计算机、平板计算机、手持式设备、智能电话机、瘦客户端、或者能够接收输入、执行计算机程序指令和通过TRILL网络106与另一个计算系统通信的任何其它电子设备或计算系统。通常,每个主机102a-102n是包括允许网络连接的网络接口的任意可编程设备。下面将参考图5,更详细地说明主机102a-102n。通常,TRILL网络106包括实现TRILL协议的一个或多个网络设备。所述网络设备被称为路由网桥。TRILL网络106中的路由网桥被用于在数据链路层(第二层)相互连接VLAN104中的主机102a-102n。在优选实施例中,TRILL网络106包括至少两个路由网桥。下面将参考图2,更详细地说明TRILL网络106。图2图解说明按照本发明的实施例的TRILL网络106。TRILL网络106包括入口路由网桥202、下一跳路由网桥204和出口路由网桥206。应理解图2中所示的系统只是一个例子,这里说明的实施例可在具有不同网络拓扑和网络设备的系统中实现,而不脱离本发明的范围。在下面的讨论中,将在传输源于源主机102a并且预定给目的地主机102n的数据分组的情况下,说明TRILL网络106的操作。该说明性例子不是对本发明的限制,应理解在各个实施例中,TRILL网络106可按照不同方式操作。入口路由网桥202包括TRILL转发数据库210a、路由指令211a和LLDP1数据库208。通常,入口路由网桥202是能够实现TRILL协议的网络设备。更具体地说,入口路由网桥202是链接到VLAN104中的源主机102a的边缘路由网桥。通常,边缘路由网桥是TRILL网络106中链接到TRILL网络106外部的VALN中的主机的任意路由网桥。这里可把未链接到TRILL网络106外部的VALN中的主机的路由网桥称为中转路由网桥(例如,在一个实施例中,下一跳路由网桥204)。在优选实施例中,入口路由网桥202从源主机102a接收数据分组,用TRILL报头和外部报头封装该数据分组,并把数据分组转发给下一跳路由网桥204,如下详细所述。入口路由网桥202的TRILL转发数据库210a包括静态TRILL路由系统100中的每个VLAN的VLANID,包含在每个VLAN内的每个主机的MAC地址,和链接到每个主机的出口路由网桥。更具体地说,TRILL转发数据库210a包括VLAN104的VLANID,VLAN中的每个主机102a-102n的MAC地址,和链接到每个主机102a-102n的出口路由网桥。在优选实施例中,入口路由网桥202利用TRILL转发数据库210a确定接收的数据分组的适当出口路由网桥,和在接收的数据分组上创建TRILL报头,之后把接收的数据分组转发给TRILL网络106内的另一个路由网桥。为此,入口路由网桥202对照TRILL转发数据库210a,参考数据分组的内部报头中的目的地主机的MAC地址,以便确定出口路由网桥,在本例中,所述出口路由网桥是出口路由网桥206。通常,在所有边缘路由网桥中发送或者配置TRILL转发数据库,在优选实施例中,所述边缘路由网桥包括入口路由网桥202和出口路由网桥206。在确定了适当的出口路由网桥之后,入口路由网桥202把数据分组封装在TRILL报头中,所述TRILL报头包含入口路由网桥202和新确定的出口路由网桥(出口路由网桥206)的别名。入口路由网桥202的路由指令211a包括指令入口路由网桥202使用哪个下一跳路由网桥,以便到达指定的出口路由网桥的信息。在优选实施例中,TRILL网络106只包括下一跳路由网桥204,不过在其它实施例中,入口路由网桥202可被链接到众多的下一跳路由网桥。在优选实施例中,路由指令211a指令入口路由网桥202利用下一跳路由网桥204作为到出口路由网桥206的路径上的下一跳。入口路由网桥202的LLDP1数据库208包括链接到入口路由网桥202的所有下一跳路由网桥的MAC地址和别名。在优选实施例中,入口路由网桥202检查LLDP1数据库208,以识别如上所述,利用路由指令211a指示的下一跳路由网桥(它是下一跳路由网桥204)的MAC地址。在确定了下一跳路由网桥的MAC地址之后,入口路由网桥202把数据分组封装在包含入口路由网桥202的MAC地址和下一跳路由网桥204的MAC地址的外部报头中。从而,如上所述,在从源主机102a接收到数据分组之后,入口路由网桥202已利用TRILL转发数据库210a、路由指令211a和LLDP1数据库208把数据分组封装在TRILL报头中,并进一步封装在外部报头中。入口路由网桥202随后把数据分组转发给下一跳路由网桥204。数据分组被下一跳路由网桥204接收,下一跳路由网桥204解封外部报头,随后对暴露的TRILL报头进行分析。下一跳路由网桥204包括路由指令211b和LLDP2数据库212。通常,下一跳路由网桥204是能够实现TRILL的网络设备。由于下一跳路由网桥204不直接链接到TRILL网络106外部的VLAN,因此它被视为中转路由网桥。虽然在图2中,下一跳路由网桥204被表示成唯一的中转路由网桥,不过应理解这代表单个实施例。在其它实施例中,在入口路由网桥202和出口路由网桥206之间,可以存在许多的下一跳路由网桥。在优选实施例中,下一跳路由网桥204能够从入口路由网桥202接收数据分组,确定后续的下一跳路由网桥或者出口路由网桥,并把数据分组转发给后续的路由网桥,在优选实施例中,所述后续的路由网桥是出口路由网桥206,如图2中所示。路由指令211b包括指令下一跳路由网桥204使用哪个下一跳路由网桥,以便到达在接收的数据分组的TRILL报头中指定的出口路由网桥的信息。在优选实施例中,路由指令211b指令下一跳路由网桥204把接收的数据分组转发给出口路由网桥206。出口路由网桥206是转发给VLAN104中的目的地主机102n的数据分组的最后一跳或出口路由网桥。LLDP2数据库212包括链接到下一跳路由网桥204的所有路由网桥的MAC地址和别名。在优选实施例中,下一跳路由网桥204检查LLDP2数据库212,以识别在路由指令211b中指定的下一跳路由网桥(它是出口路由网桥206)的MAC地址。从而,如上所述,在从入口路由网桥202接收到数据分组之后,下一跳路由网桥204已从所述数据分组解封外部报头,并利用路由指令211b和LLDP2数据库212把数据分组重新封装在新的外部报头中,所述新的外部报头包含下一跳路由网桥204的MAC地址和出口路由网桥206。下一跳路由网络204随后把该数据分组转发给出口路由网桥206。数据分组被出口路由网桥206接收,出口路由网桥206解封外部报头,随后对暴露的TRILL报头进行分析。出口路由网桥206包括TRILL转发数据库210b、路由指令211c和LLDP3数据库214。通常,出口路由网桥206是能够实现TRILL协议的网络设备。更具体地说,出口路由网桥206是链接到VLAN104中的目的地主机102n的边缘路由网桥。在优选实施例中,出口路由网桥206从下一跳路由网桥204接收数据分组,除去外部报头,确定它自己是否是出口路由网桥,解封TRILL报头的数据分组,并把数据分组转发给在数据分组的内部报头中指定的目的地主机(所述目的地主机是目的地主机102n)的MAC地址。出口路由网桥206的TRILL转发数据库210b包括静态TRILL路由系统100中的每个VLAN的VLANID,包含在每个VLAN内的每个主机的MAC地址,和链接到每个VLAN的出口路由网桥。更具体地说,TRILL转发数据库210b包括VLAN104的VLANID,VLAN104中的每个主机102a-102n的MAC地址,和链接到每个主机102a-102n的出口路由网桥。在优选实施例中,出口路由网桥206利用TRILL转发数据库210b确定接收的数据分组的适当出口路由网桥,和在从VALN104中的目的地102n(如上所述,目的地主机102n既可以是离开TRILL网络106的通信的目的地,也可以是进入TRILL网络106的通信的来源)接收的数据分组上创建TRILL报头。出口路由网桥206对照TRILL转发数据库210b,参考在接收的数据分组的内部报头中指定的目的地主机的MAC地址,以便确定出口路由网桥。在优选实施例中,对于源于源主机102a的预定给目的地主机102n的数据分组,不使用TRILL转发数据库210b,因为出口路由网桥206是目的地主机102n的出口路由网桥或者最后一跳路由网桥。路由指令211c包括指令出口路由网桥206使用哪个下一跳路由网桥,以便到达指定的出口路由网桥的信息。在优选实施例中,不使用路由指令211c,因为出口路由网桥206已确定它自己是到VLAN104中的目的地主机102n的最后一跳路由网桥。LLDP3数据库214包括链接到出口路由网桥206的所有下一跳路由网桥的MAC地址和别名。在优选实施例中,出口路由网桥206检查LLDP3数据库214,以识别在路由指令211c中指定的下一跳路由网桥的MAC地址。不过,在优选实施例中,由于出口路由网桥206是最后一跳路由网桥,因此不需要任何下一跳确定,从而不使用LLDP3数据库214。从而,如上所述,在从下一跳路由网桥204接收到数据分组之后,出口路由网桥206从数据分组解封外部报头,并检查TRILL报头,以确定它自己是数据分组的适当出口路由网桥。出口路由网桥206随后从数据分组解封TRILL报头,并把数据分组转发给VLAN104中的目的地主机102n。如上详细所述,图2图解说明按照本发明的一个实施例的TRILL网络106。在其它实施例中,TRILL网络106可包括更多或更少的下一跳/中转路由网桥,和边缘路由网桥。虽然在上面讨论的例子中,出口路由网桥206起从源主机102传送给目的地主机102n的数据分组的最后一跳或者适当的出口路由网桥的作用,不过另一方面,出口路由网桥206可起VLAN104中的从目的地主机102n到源主机102a的传输的入口路由网桥的作用。在这种备选方案中,TRILL转发数据库210b被用于如上所述确定适当的出口路由网桥,而LLDP3数据库214和路由指令211c用于确定到出口路由网桥的路径上的下一跳路由网桥,在该备选方案中,所述下一跳路由网桥是入口路由网桥202。图3是图解说明按照本发明的优选实施例,由TRILL网络中的每个路由网桥进行的入口路由网桥确定的流程图。在优选实施例中,路由网桥从它的所有邻居或者下一跳路由网桥接收位置信息,并创建该路由网桥的LLDP数据库(步骤302)。例如,就图2来说,入口路由网桥202从下一跳路由网桥204收集位置信息,并创建LLDP1数据库208。在优选实施例中,接收到的位置信息包括接收路由网桥的所有下一跳路由网桥的MAC地址和路由器网桥ID或“别名”。例如,位于入口路由网桥202中的LLDP1数据库208会包括下一跳路由网桥204的MAC地址和别名。路由网桥随后从用户接收路由指令(步骤304)。路由指令识别与TRILL网络中的每个出口路由网桥对应的优选下一跳路由网桥。在优选实施例中,直接在每个路由网桥上配置路由指令,路由指令特定于该路由网桥。例如,就图2来说,路由指令211a会被直接配置到入口路由网桥202上,会把下一跳路由网桥204识别为到出口路由网桥206的下一跳。于是,即使存在从入口路由网桥202到出口路由网桥206的其它下一跳路径,入口路由网桥202也将选择下一跳路由网桥204作为下一跳。在另一个实施例中,从利用TRILL网络106外部的主机,或者从TRILL网络106外部的控制服务器,比如VLAN104中的主机102a-102n中的一个或多个,把路由指令扩散到TRILL网络106中。在这个实施例中,路由指令并不特定于单独的路由网桥。路由指令改为识别TRILL网络中的所有路由网桥的用户指定的下一跳路由网桥。依据等于TRILL网络中的路由网桥的数量的跳数,把路由指令扩散到TRILL网络中的所有路由网桥。例如,就图2来说,由于在TRILL网络106中存在3个网络设备,因此依据为3的向前跳数,把路由指令扩散到TRILL网络106中。通常,可以设定路由指令的跳数,以减少不必要的扩散,同时确保在扩散中,每个路由网桥接收到路由指令。路由网桥随后从主机接收包含内部报头的数据分组(步骤306)。在优选实施例中,内部报头指定源主机102a的MAC地址和目的地主机102n的MAC地址。在另一个实施例中,VLAN104的VLANID也被包含在一个独立的报头或者内部报头的独立部分(称为802.1Q报头)中。在收到数据分组之后,路由网桥通过检查数据分组是否被TRILL报头封装,来确定它是否是入口路由网桥(判定308)。如果数据分组未被TRILL报头封装,路由网桥是入口路由网桥。如果数据分组被TRILL报头封装,路由网桥不是入口路由网桥。如果路由网桥不是入口路由网桥,路由网桥开始参考下面的图4详细说明的确定它是否是出口路由网桥(判定402)。如果路由网桥是入口路由网桥,它接着确定数据分组的出口路由网桥的别名(步骤310)。入口路由网桥202通过对照TRILL转发数据库210a,检查目的地主机102n的MAC地址,来确定出口路由网桥的别名(步骤310)。TRILL转发数据库210a指定用于链接到TRILL网络106的每个主机的出口路由网桥。在优选实施例中,确定的目的地主机102n的出口路由网桥是出口路由网桥206。入口路由网桥202随后用TRILL报头封装内部报头(步骤312)。TRILL报头包含入口路由网桥和新确定的出口路由网桥的别名。在优选实施例中,TRILL报头包含入口路由网桥202和出口路由网桥206的别名。图4是图解说明按照本发明的优选实施例,由TRILL网络中的每个路由网桥进行的出口路由网桥确定的流程图。路由网桥通过检查在TRILL报头中指定的由入口路由网桥202创建的出口路由网桥的别名是否和它自己的别名匹配,来确定它是否是出口路由网桥(判定402)。如果该路由网桥的别名匹配在TRILL报头中指定的出口路由网桥的别名,该路由网桥是出口路由网桥,从而可开始对数据分组解封(步骤410)。如果该路由网桥的别名不匹配在TRILL报头中指定的出口路由网桥的别名,该路由网桥不是出口路由网桥。如果该路由网桥被确定不是出口路由网桥,该路由网桥识别下一跳路由网桥的MAC地址(步骤404)。在优选实施例中,该路由网桥通过查阅如上所述配置到或扩散到该路由网桥中的路由指令,以确定它被指令把该数据分组转发给的下一跳路由网桥的别名,识别下一跳路由网桥的MAC地址。所述路由网桥随后通过对照其LLDP数据库,检查下一跳路由网桥的别名,识别下一跳路由网桥的MAC地址。例如,就图2来说,入口路由网桥202查阅路由指令211a,从而确定指示的下一跳路由网桥是下一跳路由网桥204。入口路由网桥202通过检查LLDP1数据库208,识别下一跳路由网桥204的MAC地址。在另一个实施例中,路由指令包含指示的下一跳路由网桥的别名和MAC地址。于是,路由网桥不必查阅LLDP数据库以确定下一跳路由网桥的MAC地址。例如,就图2来说,入口路由网桥202上的路由指令211a包含下一跳路由网桥204的别名,以及下一跳路由网桥204的MAC地址。于是,入口路由网桥202不必查阅LLDP1数据库208。路由网桥随后在数据分组上创建外部报头(步骤406)。在优选实施例中,外部报头包含所述路由网桥的MAC地址和在步骤404中确定的其下一跳路由网桥的MAC地址。例如,就图2来说,入口路由网桥202在数据分组上创建包含入口路由网桥202的MAC地址,和下一跳路由网桥204的MAC地址的外部报头。在优选实施例中,所述路由网桥随后把数据分组发送给在步骤404中确定的下一跳路由网桥(步骤408)。例如,就图2来说,入口路由网桥202把数据分组发送给下一跳路由网桥204。在一个优选实施例中,如果所述路由网桥被确定为出口路由网桥(判定402),该路由网桥剥离TRILL和外部报头,并解封数据分组(步骤410)。例如,就图2来说,当出口路由网桥206确定它是预定给目的地主机102n的数据分组的出口路由网桥时,出口路由网桥206剥离由下一跳路由网桥204创建的外部报头,和由入口路由网桥202创建的TRILL报头,并解封所述数据分组。在另一个实施例中,当出口路由网桥也是入口路由网桥时,该路由网桥只剥离TRILL报头。在这个实施例中,数据分组不存在外部报头,因为数据分组从未到达下一跳路由网桥,或者通过不止一个路由网桥。例如,如果入口路由网桥202确定它也是该数据分组的出口路由网桥,入口路由网桥202将剥离由入口路由网桥202创建的TRILL报头,并对该数据分组解封。在一个实施例中,当出口路由网桥也是入口路由网桥时,该路由网桥可进行提早检查,从而完全避免创建TRILL报头。入口路由网桥202或下一跳路由网桥204决不会创建外部报头,因为对该数据分组来说,到达作为入口路由网桥202的出口路由网桥不需要任何下一跳。在优选实施例中,出口路由网桥随后把数据分组转发给在内部报头中指定的目的地主机的MAC地址(步骤412)。例如,就图2来说,出口路由网桥206检查解封的数据分组的内部报头,以确定目的地主机102n的MAC地址。出口路由网桥206随后把解封的数据分组转发给位于VLAN104中的目的地主机102n的指定MAC地址。出于举例说明的目的,给出了本发明的各个实施例的上述说明。上述说明并不是详尽的,也不意图把本发明局限于公开的确切形式。许多修改和变化都是可能的。对本发明所属领域的技术人员来说显而易见的这种修改和变化包含在由附加权利要求限定的本发明的范围之内。图5表示按照本发明的例证实施例的数据处理系统800、900的方框图。应理解图5仅仅提供一种实现的例示,并不意味对其中可实现不同实施例的环境的任何限制。根据设计和实现要求,可以作出对所述环境的许多修改。数据处理系统800、900代表能够执行机器可读程序指令的任何电子设备。数据处理系统800、900可以代表智能电话机、计算机系统、PDA或其它电子设备。可用数据处理系统800、900代表的计算系统、环境和/或结构的例子包括但不限于个人计算机系统、服务器计算机系统、瘦客户端、胖客户端、手持或膝上型设备、多处理器系统、基于微处理器的系统、网络PC、小型计算机系统、和包括任意上述系统或设备的分布式云计算环境。主机102a-102n、入口路由网桥202、下一跳路由网桥204和出口路由网桥206都包括图5中图解说明的相应各组内部组件800和外部组件900。相应的各组内部组件800都包括在一条或多条总线826上的一个或多个处理器820、一个或多个计算机可读RAM822和一个或多个计算机可读ROM824,和一个或多个操作系统828和一个或多个计算机可读有形存储装置830。主机102a-102n中的一个或多个操作系统828和程序;入口路由网桥202中的LLDP1数据库208,TRILL转发数据库210a,路由指令211a;下一跳路由网桥204中的LLDP2数据库212和路由指令211b;和出口路由网桥206中的LLDP3数据库214,TRILL转发数据库210b,路由指令211c被保存在相应计算机可读有形存储装置830中的一个或多个之上,供相应处理器820中的一个或多个处理器借助相应RAM822(一般包括高速缓冲存储器)的一个或多个执行。在图5中图解说明的实施例中,每个计算机可读有形存储装置830是内部磁盘驱动器的磁盘存储装置。另一方面,每个计算机可读有形存储装置830是半导体存储装置,比如ROM824、EPROM、闪存或者能够保存计算机程序和数字信息的任何其它计算机可读有形存储装置。每组内部组件800还包括读取和写入一个或多个便携式计算机可读有形存储装置936,比如CD-ROM、DVD、记忆棒、磁带、磁盘、光盘或半导体存储器件的R/W驱动器或接口832。主机102a-102n中的程序;入口路由网桥202中的LLDP1数据库208,TRILL转发数据库210a,路由指令211a;下一跳路由网桥204中的LLDP2数据库212和路由指令211b;和出口路由网桥206中的LLDP3数据库214,TRILL转发数据库210b,路由指令211c可被保存在相应的便携式计算机可读有形存储装置936中的一个或多个之上,经相应的R/W驱动器或接口832被读取并载入相应的硬盘驱动器830中。每组内部组件800还包括网络适配器或接口836,比如TCP/IP适配器卡、无线Wi-Fi接口卡、或3G或4G无线接口卡或其它有线或无线通信链路。主机102a-102n中的程序;入口路由网桥202中的LLDP1数据库208,TRILL转发数据库210a,路由指令211a;下一跳路由网桥204中的LLDP2数据库212和路由指令211b;和出口路由网桥206中的LLDP3数据库214,TRILL转发数据库210b,路由指令211c可以从外部计算机经网络(例如,因特网、局域网或其它、广域网)和相应的网络适配器或接口836,被下载到相应的计算机主机102a-102n,入口路由网桥202,下一跳路由网桥204,和出口路由网桥206。主机102a-102n中的程序;入口路由网桥202中的LLDP1数据库208,TRILL转发数据库210a,路由指令211a;下一跳路由网桥204中的LLDP2数据库212和路由指令211b;和出口路由网桥206中的LLDP3数据库214,TRILL转发数据库210b,路由指令211c从网络适配器或接口836被载入相应的硬盘驱动器830中。网络可包括铜线、光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。各组外部组件900都可包括计算机显示监视器920、键盘930和计算机鼠标934。外部组件900还可包括触摸屏、虚拟键盘、触控板、指示装置和其它人机接口装置。各组内部组件800还都可包括与计算机显示监视器920、键盘930和计算机鼠标934连接的装置驱动器840。装置驱动器840、R/W驱动器或接口832和网络适配器或接口836包含硬件和(保存在存储装置830和/或ROM824中的)软件。关于按照本发明的实施例的方法、设备(系统)和计算机程序产品的框图和/或流程图说明了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机指令实现。这些计算机指令可被提供给通用计算机、专用计算机或其它可编程数据处理设备的处理器,从而生产出一种机器,以致通过计算机或其它可编程数据处理设备的处理器执行的指令产生实现在流程图和/或框图的一个或多个方框中规定的功能/动作的装置。上述程序可用一种或多种编程语言,包括低级语言、高级语言、面向对象的语言或者非面向对象的语言,比如Java、Smalltalk、C和C++的任意组合编写。另一方面,上述程序的功能可整个或者部分用计算机电路和其它硬件(未示出)实现。根据上面所述,按照本发明公开了计算机系统、方法和程序产品。不过,可以作出众多的修改和替换,而不脱离本发明的范围。于是,只是举例地,而不是限制性地公开了本发明。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1