基于网络的择路方案的制作方法

文档序号:7959420阅读:74来源:国知局
专利名称:基于网络的择路方案的制作方法
技术领域
本发明总体上涉及网络通信,更具体来说,涉及一种基于网络的择路方案。
背景技术
在网络中,交换机在不同网络要素之间对帧进行择路。为了对帧进行择路,交换机通常使用以太网择路协议,该以太网择路协议使得交换机能够基于动态学习算法执行择路。

发明内容
根据本发明,提供了针对基于网络的择路方案的技术。根据特定实施例,这些技术描述了使得专用网络能够对帧经过该专用网络所取的路径进行控制的择路方案和网络组织。
根据特定实施例,用于对帧进行择路的方法包括使用交换机的一组端口来接收帧的步骤。每个帧都包括源地址、目的地地址以及有效载荷。这些帧的至少某部分还包括一个或更多个标签,其中每个标签都指定了组标识、交换机标识以及端口标识。所述交换机是交换机组的一部分,该交换机组是交换网络的一部分。所述方法还包括以下步骤在所述交换机中保持表示与所述交换机组中的各其他交换机相对应的输出端口的择路信息。对于每个帧,如果该帧符合特殊择路协议,则所述方法包括按第一操作模式进行操作的步骤,否则,所述方法包括按第二操作模式进行操作的步骤。在第一操作模式中,读取该帧中的第一标签。确定第一标签的交换机标识是否对应于所述交换机。如果所述交换机标识并不对应于所述交换机,则访问所述择路信息,以确定与所述交换机标识相对应的输出端口,并在所述多个端口中的所确定的端口上发送所述帧。如果所述交换机标识对应于所述交换机,则在与第一标签的端口标识相对应的端口上发送所述帧。在第二操作模式中,根据标准择路协议处理所述帧。
本发明的实施例提供了多种技术优点。例如,这些技术可以允许设备指定帧经过专用网络应当采用的特定路径。这些专用择路技术可以结合广泛使用的择路技术(如以太网择路)一起来起作用。例如,在专用网络内,针对选定的网络流量,交换机可以使用专用网络择路协议来代替以太网择路。在特定实施例中,将专用网络内的交换机分成多个组,并且可由表示组、交换机以及端口标识符的标签来唯一地引用多个交换机中的特定交换机的特定端口。这可以使得组内的交换机可以保持只针对该组中的其他交换机而定义的专用择路表。在某些实施例中,可以使用在交换机中需要更少存储器的更小的择路表来实现合适的择路。此外,在特定实施例中,可以向进入专用网络的帧添加标签,以确保对该帧的响应从完全相同的端口上离开所述专用网络。
本领域的技术人员根据以下图、说明书以及权利要求很容易想到本发明的其他技术优点。此外,尽管以上列举了多个具体优点,但是各种实施例可以包括所列举的优点中的全部、一些,或者不包括其中的任何优点。


为了更完全地理解本发明及其优点,结合附图参照以下说明,在附图中图1例示了使用基于网络的择路方案来控制帧经过交换网络的路径的系统;图2A到2C例示了交换网络中采用基于网络的择路方案的一组交换机以及存储有这些交换机中的一个所保持的择路信息的表;图3A到3C例示了出站(outbound)帧的路径和该帧在经过交换网络中的各种交换机时的对应结构;图4是例示了用于对在交换网络中的交换机处接收到的网络管理消息进行处理的方法的流程图;以及图5是例示了用于对在交换系统中的交换机处接收到的帧进行处理的方法的流程图。
具体实施例方式
图1例示了使用基于网络的择路方案来控制帧经过交换网络的路径的系统(总体上以10表示)。如所例示的,系统10包括交换网络12、管理设备14、网络设备16、因特网18以及外部网络20。可以使用任何合适的技术或协议将系统10的多个要素互连。通常,系统10内的要素相互操作,以控制帧经过交换网络12所取的路径。
交换网络12包括交换机22,并表示将交换机22与耦合到交换网络12的要素互连起来的硬件、软件以及控制逻辑的任何合适集合。因此,交换网络12提供了支持所附接的设备之间的通信的基础结构。如所例示的,交换网络12包括组成多个组24的多个交换机22。在某些实施例中,交换网络12是允许设备具体地确定帧通过网络的路径的专用网络。
交换机22表示在网络内和/或在不同网络之间对帧进行择路的网络连接设备。根据特定实施例,各交换机22表示带有多个端口的网络设备,其能够在所述多个端口间交换网络流量。例如,交换机22可以各自表示能够基于标准以太协议在多个端口间交换帧的芯片型交换设备。然而,如这里使用和描述的,交换机22可以包括交换机、路由器或能够互连多个网络要素的任何合适的网络设备。此外,交换机22可以在交换网络12内使用通信用的任何合适技术或协议来进行通信。此外,如以下更详细地论述的,交换机22实现了基于网络的择路方案,以允许对经过交换网络12的帧进行源择路。
如所例示的,将多个交换机22组成多个组24。交换网络12可以包括一个或更多个组24,而各组24可以包括一个或更多个交换机22。在一个组24内,可以使用任何合适的技术或协议按任何配置来互连多个构成交换机22。在多个组24之间的边界处,一个组24中的交换机22可以连接到另一组24中的交换机22。这提供了组内链路和外部链路。如进一步例示的,交换机22还连接到管理设备14、网络设备16、因特网18、外部网络20。根据本例示应当理解,交换机22可以连接到任何合适的网络或设备。如所例示的,交换网络12包括3个组24组X、组Y以及组Z。组X包括3个交换机22交换机X.A、交换机X.B以及交换机X.C。组Y也包括3个交换机22交换机Y.A、交换机Y.B以及交换机Y.C。组Z包括4个交换机22交换机Z.A、交换机Z.B、交换机Z.C以及交换机Z.D。出于例示的目的给出了该具体构成,但应当理解,交换网络12可以包括交换机22的任何合适的分组。
在某些实施例中,对每个组24分配了交换网络12内的唯一标识符。在所例示的实施例中,各组24具有唯一标识符X、Y或Z。在特定实施例中,对特定组24中的各交换机22分配了该特定组24内的唯一标识符。一个组24中的特定交换机22的标识符可以被不同组24中的不同交换机22共用。例如,交换机X.A和交换机Y.A共用共同的交换机标识符A,但是它们各自是可识别的,因为它们具有不同的组标识符X和Y。此外,每个交换机22都可以具有多个端口。因此,在交换网络12内,可以通过使用组/交换机/端口标识符,唯一地引用特定端口。例如,X.A.5唯一地指组X中的交换机A上的端口5。此外,在特定组24内,可以仅通过使用交换机/端口标识符来唯一地引用特定端口。例如,在组X内,A.5可以唯一地指交换机X.A上的端口5。
此外,可以只针对特定组24来限定该特定组24内的择路信息。在某些实施例中,将网络择路信息存储在网络择路表中。针对特定组24中的各构成交换机22的网络择路表可以只提供针对该特定组24中的其他交换机22的择路信息。在特定实施例中,网络择路表基于交换机/端口标识符来保持择路信息。这使得可以实现更小的表大小和更简单的查找机制,这是因为一个组24中的交换机22不必保持针对其他组24中的交换机22的择路信息。各交换机22还可以保持针对交换网络12中的其他组24的基本择路信息。例如,组X中的各交换机22可以保持为寻址到组Y的帧指定特定端口的一个择路表条目。在特定实施例中,这使得无需冗长的择路表就可以进行合适的择路。尽管将择路信息描述成被存储为表的形式,但是应当理解,可以按任何合适的方式(包括数据库、文件、散列表等)来存储择路信息。以下参照图2A到2C进一步阐述交换机22存储的选定择路信息的一个实施例。此外,尽管未明确地例示或详细描述,但是交换机22还可以保持其他择路信息,如以太择路表。因此,交换机22可以针对选定网络流量使用基于网络的择路方案,而针对其他网络流量使用另一择路方案。
在操作中,设备可以使用帧中的标签对帧经过交换网络12的路径进行控制。帧可以包括表示该帧包含这些标签的报头信息。在某些实施例中,存在两种类型的标签进站(inbound)标签和出站标签。当帧进入交换网络12时例如可以使用进站标签,以确保在最初接收到该帧的同一端口上从交换网络12发送对该帧的响应。当进站帧在特定端口处进入交换网络12时,接收交换机22可以添加表示接收到该帧的组/交换机/端口的进站标签。在特定实施例中,交换机22只对该交换机22从交换网络12外部接收的帧添加进站标签。
例如,在所例示的实施例中,交换机Z.C可能从外部网络20接收到以管理设备14为目的地的帧。交换机Z.C可以先于在由交换机Z.C保持的择路信息表示的端口上转发该帧(可能将该帧转发到交换机Y.C)而添加进站标签。交换机Y.C可以在由它的择路信息表示的端口上转发该帧,依此类推,直到该帧到达它的目的地管理设备14。在其他实施例中,接收到一进站帧的各交换机22添加表示接收该帧的组/交换机/端口的进站标签。在特定实施例中,接收交换机22添加仅表示接收交换机22在其上接收该帧的端口的进站标签,并且接收该帧的各后续交换机22可以添加表示交换机22在其上接收该帧的端口的其他进站标签。在某些实施例中,通过检查帧中的进站标签,在某些情况下,通过获知交换网络12的结构,可以获知该帧经过交换网络12所取的路径。
可以使用出站标签来确定帧经过交换网络12应当采用的特定路径。例如,管理设备14和网络设备16可以发送带有出站标签的帧,以限定希望的帧路径。在某些情况下,知道由交换网络12和它的构成交换机22使用的出站标签协议的任何设备都可以发送带有出站标签的帧。为了使用出站标签,发送设备可以向帧的报头添加一个或更多个标签。各出站标签可以使得交换网络12能够沿交换网络12的设定部分(如通过两个交换机22之间的链路或跨过一个组24)传送帧。
在某些实施例中,出站标签是矢量型的。对于矢量型出站标签,每个出站标签都可以指定一组输出端口。帧中的这些出站标签的序列可以指定该帧逐链路地经过交换网络12的路径。每个接收交换机22都仅识别由当前出站标签指定的端口,从帧中删除当前出站标签,然后在所指定的端口上转发该帧。例如,在所例示的实施例中,交换机X.A可以接收带有矢量型出站标签的帧。第一标签标识端口4。为了将该帧传送给合适的下一交换机22,交换机X.A删除第一标签,并在端口4上发送该帧。然后该帧将由交换机Y.A接收,并且交换机Y.A重复类似的处理,以将该帧传送给合适的下一交换机22。在一个实施例中,各矢量型标签是与交换机22的端口相对应的位映像(bit map)。在另一实施例中,矢量型标签可以引用表示一个或更多个出站端口的存储器位置(如VLAN表条目)。
在其他实施例中,出站标签是端口标识(端口ID)型的。对于端口ID型出站标签,各出站标签都可以指定组/交换机/端口。帧中的这些出站标签的序列指定了从一个组24到下一组24、或到外部网络(如因特网18或外部网络20)或到设备(如管理设备14或网络设备16)的跳程(hop)。使用端口ID型出站标签,当帧经过特定组24时,“当前”出站标签可以保持不变,而当帧被转发到特定组24的外部时,可以删除它。例如,在所例示的实施例中,交换机Y.B可能接收到以网络设备16m(其连接到交换机Z.D)为最终目的地的帧。如果该帧具有端口ID型出站标签,则交换机Y.B确定该帧中的第一标签所指定的组/交换机/端口。对于该示例,它可以是端口Y.C.2。例如,考虑接收到带有表示端口Y.C.2的初始标签的帧的交换机Y.B。交换机Y.B首先评价由该标签指定的组标识是否与交换机Y.B是其中成员的组相匹配。若是,则交换机Y.B查看由第一标签指定的交换机标识,以确定该标签是否标识交换机Y.B(在此情况下为否)。由于该交换机标识指定了组Y中的另一交换机,所以交换机B访问它的择路信息,以确定要在其上将帧发送到交换机Y.C的合适端口。然后,交换机Y.B在该端口上转发该帧,其中第一标签仍然是该帧的一部分。当接收到该帧时,交换机Y.C检查该标签表示的组标识和交换机标识。在此情况下,由于该标签中的组标识和交换机标识指定交换机Y.C,所以交换机Y.C可以从该帧删除第一标签,并在由该标签指定的端口(在本示例中是端口2)上转发该帧。
尽管将交换网络12描述为组成既定组24的多个交换机22,但是应当指出这是逻辑描述。交换网络12的组成部分可以位于一个或更多个物理位置处,并且/或者可以包括附加的或更少的组成部分。此外,可以通过多个组成部分的任何合适的集合和布置,来提供交换机22和组24的功能性。可以通过用于控制帧经过网络的路径的任何合适设备,来实现由交换网络12的各种组成部分执行的功能。
如所例示的,系统10还包括通过交换机X.A连接到交换网络12的管理设备14。管理设备14可以对交换网络12的操作和/或交换网络12内的不同交换机22之间的相互操作进行控制。在特定实施例中,管理设备14执行对交换网络12的初始配置。该初始配置将多个交换机22分成多个组24,对各交换机22分配交换机标识,对各组24分配组标识,并向各交换机22发布与该特定交换机22相对应的交换机标识和组标识。此外,管理设备14可以将该初始配置结果发送给可以使用基于网络的择路方案的任何其他设备。管理设备14可以按任何合适的方式(包括自动化方式或手动方式)执行初始配置。
在某些实施例中,管理设备14从网络设备16、因特网18、外部网络20和/或交换机22接收网络管理消息。为了控制对到管理设备14的管理消息的择路,交换网络12内的交换机22可以提供对接收的管理消息的特殊处理。例如,当特定交换机22检测到接收的网络管理消息时,交换机22可以访问它的择路信息,以确定在其上转发该网络管理消息的端口。在特定实施例中,各交换机22都具有应当在其上发送网络管理消息的限定端口。该限定端口可以随交换机22而变化。然而,由例如交换机Z.C接收的网络管理消息可以始终沿同一路径经过同一交换机22,而到达管理设备14。在特定实施例中,一个或更多个交换机22向网络管理消息添加进站标签,使得管理设备14获知该网络管理消息进入交换网络12的端口和/或每个网络管理消息到达管理设备14所经过的精确路线。
此外,如上所述,系统10可以包括任何合适数量的管理设备14。在这些情况下,交换机22可以将管理消息发送给一些或所有管理设备14。例如,不同的管理设备14可以负责不同的管理功能,并且交换机22可以基于类型或其他合适的因素转发管理消息。
网络设备16代表可连接到交换网络12的任何设备。例如,网络设备16可以包括个人计算机、服务器、文件存储部、网络打印机以及其他具备网络功能的设备。网络设备16通过交换网络12与其他网络设备16、管理设备14、因特网18以及外部网络20进行通信。尽管未例示,但是网络设备16还可以连接到其他网络或其他设备、组成部分或要素。如所例示的,系统10包括3个网络设备161、16m以及16n。网络设备161通过交换机Y.B连接到交换网络12;网络设备16m通过交换机Z.D连接到交换网络12;而网络设备16n通过交换机Z.A连接到交换网络12。尽管系统10包括3个网络设备16,但是应当理解,任何数量和类型的网络设备16都可以连接到交换网络12。
因特网18和外部网络20表示连接到交换网络12的网络,通过该交换网络12可以向连接到交换网络12的其他要素发送消息并且/或者从连接到交换网络12的其他要素接收消息。因特网18可以是连接在一起的任何网络组,如可以使用TCP/IP网络协议来实现数据传输和交换的世界范围的计算机和计算机网络的集合。外部网络20表示能够在多个设备之间实现通信的另一设备网络。例如,外部网络20可以包括一个或更多个网络,如电信网、卫星网、电缆网、局域网(LAN)、广域网(WAN)、公共交换电话网和/或任何其他合适的网络。尽管未明确例示,但是与针对交换网络12所描述的类似,对于外部网络20内的通信,外部网络20可以单独采用基于网络的择路方案。
在所例示的实施例中,因特网18通过交换机Y.B连接到交换网络12,而外部网络20通过交换机Z.C连接到交换网络12。因特网18和外部网络20可以与网络设备16、管理设备14进行通信,并且可以通过交换网络12相互进行通信。尽管未例示,但应当理解,因特网18和外部网络20各自还可以连接到其他网络或其他设备、组成部分或要素。尽管系统10包括两个网络(因特网18和外部网络20),但是任何数量和类型的网络16都可以连接到交换网络12。
已对使用基于网络的择路方案的系统的特定实施例进行了描述,这并不包括所有实施例。尽管将系统10描述为包含要素的特定配置和布置,但是应当指出,这是一种逻辑描述,并且在逻辑上和物理上均可以对系统10的组成部分和功能进行合适的组合、分离以及分布。此外,可由组成部分的任何合适的集合和布置来提供系统10的功能性。所描述并例示的交换网络12中的交换机22的组织、数量以及结构仅是例示性的。可以按任何合适的方式来组织并构成交换机22,并且交换机22可以包括任何合适配置和数量的组24。可以按任何合适的方式构成系统10,以对帧经过交换网络12的路径进行控制。
图2A到2C例示了多个组24中的一个组Z,其使用基于网络的择路方案和与组Z中的交换机Z.A相对应的样本网络择路表。图2A例示了多个组24中的一个(组Z)及其构成交换机22(交换机Z.A、交换机Z.B、交换机Z.C以及交换机Z.D)的实施例。通过组内链路30和外部链路32连接这些构成交换机22。组内链路30将构成交换机22连接到其他构成交换机22,而外部链路32将构成交换机22连接到其他组24中的交换机22和网络设备16m、16n。尽管未例示,但是外部链路32可以将构成交换机22连接到各种网络、组成部分、要素或设备,例如包括其他网络设备16、管理设备14、因特网18以及外部网络20。
如所例示的,交换机Z.A具有由端口0到5表示的6个组内链路30和外部链路32。在所例示的实施例中,端口0连接到交换机X.B;端口1连接到交换机Z.B;端口2连接到交换机Z.D;而端口4连接到网络设备16n。可以通过使用任何合适通信或协议的任何合适逻辑或设备来实现交换机Z.A与其他设备或网络之间的这些连接。尽管未例示,但是端口3和5可以连接到任何网络设备16、交换机22、网络(例如因特网18或外部网络20)或任何其他网络、组成部分、要素或设备。尽管将交换机22描述为只具有6个端口,但是应当理解,交换机22可以包括任何合适数量个端口。
图2B例示了交换机22可以如何存储择路信息的一个示例。在所例示的实施例中,交换机Z.A将择路信息存储为网络择路表34。网络择路表34包括交换机列36,表示应当接收帧的交换机或设备;和出站端口列38,表示应当在其上发送帧的对应的出站端口。当交换机Z.A接收到以标识的交换机22或设备(如网络设备16m、16n或管理设备14)为目的地的帧时,其查询表34以确定应当在哪个端口上发送该帧。
在特定实施例中,将交换网络12分成交换机22的组24,使得可以通过使用组/交换机/端口标识符来唯一地引用交换网络12中的任何特定端口。此外,在组24内,可以仅通过使用交换机/端口标识符来唯一地引用特定端口。因此,在特定组24(如组Z)内,可以只针对组来定义网络择路表。如所例示的,交换机Z.A的网络择路表34只提供了针对组Z中的其他交换机22、连接到交换机Z.A的设备以及管理设备14的择路信息。由于交换机Z.A不必保持针对除组Z以外的其他组24中的交换机22的择路信息,所以交换机Z.A可以具有更小的网络择路表大小和更简单的查找机制。在特定实施例中,按表的形式存储择路信息,而在其他实施例中,按多种不同方式存储并/或保持择路信息。将择路信息例示和描述为存储在表34中,但是应当理解,这只是出于例示性的目的,而可以按任何合适的方式存储择路信息。此外,尽管未明确地例示,但是交换机22也可以包括便于使用其他协议对帧进行择路的择路信息。例如,交换机22可以保持用于基于寻址信息(其可以包括帧的源地址和目的地地址)对帧进行择路的基于以太网的择路信息。
例如,交换机Z.A可以接收带有端口ID型出站标签的帧。交换机Z.A查看第一标签,并确定该标签的组标识是否等于组Z。如果是,则交换机Z.A确定该标签的交换机标识是否等于交换机Z.A。如果该标签的交换机标识与交换机Z.A的交换机标识相同,则交换机Z.A从该帧中去除第一标签,并在由该标签标识的端口上转发该帧。否则,交换机Z.A获知由该标签的交换机标识所标识的交换机应当接收该帧。通过查询网络择路表34,交换机Z.A可以确定用于该帧的合适的出站端口,使得该帧到达由该标签标识的交换机。
作为另一示例,交换机Z.A可以接收以管理设备14为目的地的网络管理消息。在对表34进行访问之后,交换机Z.A确定应当在端口0上转发以管理设备14为目的地的帧。在所例示的实施例中,交换机X.B从交换机Z.A接收该网络管理消息,并类似地基于其择路信息转发该网络管理消息。在特定实施例中,存储在交换机22中的择路信息标识要在其上转发任何和所有网络管理消息的特定出站端口。在特定实施例中,择路信息表示用于通过更复杂的方法把网络管理消息转发到管理设备14的出站端口。
图2C例示了可由交换机Z.A存储并保持的组择路信息的示例。如所例示的,交换网络12包括组Z、组Y以及组X。在许多实施例中,交换机Z.A不保持针对位于组Y或组X中的交换机22的择路信息。因此,在特定实施例中,交换机Z.A保持表40,表40提供针对组Y整体的择路信息和针对组X整体的择路信息。由列42列出的针对各组24的基本择路信息与由列44列出的出站端口相关联。由此,交换机Z.A可以保持表40,以指定寻址到组X的帧的特定出站端口(在所例示的实施例中是端口0)。在特定实施例中,按各种不同的格式存储针对其他组24的基本择路信息,并且对表40的使用是例示性的而非限制性的。尽管将表40例示为只存储有两个组24,但是表40可以包括与任何数量个不同的组24、设备、网络等相对应的择路信息。在某些实施例中,交换机22不存储组择路信息。
参照图2A到2C例示并描述的组Z和表34、40只是例示性的。应当理解,可以按任何合适的方式对操作方式和被表示为执行不同操作的设备进行修改。尽管按表的形式描述了择路信息,但是特定实施例包括按任何合适的方式存储的择路信息。此外,尽管将组Z描述为具有组成部分的特定配置和布置,但是组24可以包括被合适地布置以提供对帧经过网络的路径进行控制的系统的任何合适设备。
图3A到3C例示了出站帧的路径和该帧在经过各种交换机22时的对应结构。图3A例示了帧的路径50。在所例示的实施例中,管理设备14发送帧,该帧经过4个交换机22(它们是3个不同的组24的构成部分),并到达外部网络20。管理设备14可以将帧构造成,使得交换网络12中的各种交换机22知道按哪个特定方向对该帧进行择路。管理设备14可以将帧构造成,使得采用最高效的路线、使用流量最少的路线、避免有故障的交换机22,或者出于任何合适的原因来构造帧。管理设备14可以发送帧,作为对由外部网络20发送的帧的响应。可以将由管理设备14选择的路线选择为,使得外部网络20在发送原始消息的同一端口处接收帧。
如所例示的,路径50包括5个不同的跳程(1到5)。首先,管理设备14通过跳程1将帧发送到交换机X.A。然后,交换机X.A在跳程2中将帧发送到交换机X.C;交换机X.C在跳程3中将帧发送到交换机Y.C;然后,交换机Y.C在跳程4中将帧发送到交换机Z.C。最后,交换机Z.C在跳程5中将帧发送到外部网络20。在某些实施例中,将帧构造成包括矢量型标签。在图3B中,针对路径50的各跳程(1到5),示出了带有矢量型标签的帧的结构。在特定实施例中,将帧构造成包括端口ID型标签。在图3C中,针对路径50的各跳程(1到5),示出了带有端口ID型标签的帧的结构。
图3B示出了经过路径50的各种跳程(1到5)的帧的对应结构。在所例示的实施例中,帧构成有表示路径50上的下一交换机22的矢量型标签。如所例示的,帧包括目的地地址52、源地址54、一个或更多个(或者没有)标签56以及有效载荷58。目的地地址52可以是对帧的目的地采用任何合适格式或协议的表示。类似地,源地址54可以是对帧的源采用任何合适格式或协议的表示。标签56对帧经过交换网络12的路径进行操作控制。有效载荷58表示任何类型的信息,并且可以包括不包含在帧的报头中的所有信息。在某些实施例中,有效载荷58就是要由帧传送的信息。在其他实施例中,有效载荷58表示不由交换机22处理或分析的任何信息。
与跳程1相对应的帧表示从管理设备14发送到交换机X.A的帧的结构。在跳程1中,该帧包含目的地地址52、源地址54、4个标签56以及有效载荷58。交换机X.A接收该帧并提取标签56a。由于标签56a包含值5,所以交换机X.A在从该帧中删除了标签56a之后在端口5上发送该帧。因此,在跳程2中,该帧包含目的地地址52、源地址54、3个标签56以及有效载荷58。在跳程2之后,交换机X.C接收该帧并提取标签56b。如所例示的,标签56b包含值4。交换机X.C从该帧中删除标签56b,并在端口4上把该帧发送出去。在跳程3中,该帧包含目的地地址52、源地址54、2个标签56以及有效载荷58。交换机Y.C接收该帧并提取标签56c。标签56c包含值0,因此交换机Y.C在从该帧中删除了标签56c之后在端口0上发送该帧。对于跳程4,该帧包含目的地地址52、源地址54、1个标签56以及有效载荷58。交换机Z.C接收该帧并提取最后一个标签56标签56d。标签56d包含值3。交换机Z.C从该帧中删除标签56d,并在端口3上把该帧发送出去,然后由外部网络20接收该帧。
图3B中的帧结构仅出于例示的目的描述了包含在多个矢量型标签中的逻辑信息。然而,如上所述,矢量型标签可以包括采用任何合适格式编码的信息,以允许交换机22恰当地识别一个或更多个出站端口。如上所述,每个矢量型标签都可以包括位矢量、对存储在存储器中的位矢量的引用或适于表示一个或更多个出站端口的任何其他数据结构。
图3C表示经过路径50的各种跳程(1到5)的帧的对应结构。在所例示的实施例中,帧构成有表示路径50中的下一组24的端口ID型标签。如所例示的,帧包括目的地地址52、源地址54、一个或更多个(或者没有)标签60以及有效载荷58。在某些实施例中,目的地地址52、源地址54以及有效载荷58与图3B中表示的类似。标签60对帧经过交换网络12的路径进行操作控制。
与跳程1相对应的帧表示从管理设备14发送到交换机X.A的帧的结构。在跳程1中,该帧包含目的地地址52、源地址54、3个标签60以及有效载荷58。交换机X.A接收该帧并提取标签60a。标签60a指定端口X.C.4交换机X.C的端口4。交换机X.A首先对标签60a的组标识“X”与它自己的组标识进行比较。交换机X.A发现它们是匹配的,然后交换机X.A对标签60a的交换机标识“C”与它自己的交换机标识进行比较。由于它们不相匹配,所以交换机X.A查看它的择路信息,来确定以交换机X.C为目的地的帧的合适的出站端口。交换机X.A把端口5识别为正确的端口,并在端口5上向交换机X.C发送该帧。在所例示的实施例中,交换机X.A不从该帧中删除标签60a,这是因为标签60a中的交换机标识与交换机X.A的交换机标识不匹配。
在跳程2中,该帧仍然包含目的地地址52、源地址54、3个标签60以及有效载荷58。交换机X.C接收该帧并提取标签60a。交换机X.C首先对标签60a的组标识“X”与它自己的组标识进行比较。交换机X.C发现它们是相匹配的,然后交换机X.C对标签60a的交换机标识“C”与它自己的交换机标识进行比较。由于它们是相匹配的,所以交换机X.C对端口标识(其为4)进行评价。交换机X.C首先删除标签60a,然后在端口4上向交换机Y.C发送该帧。
对于跳程3,该帧包含目的地地址52、源地址54、2个标签60以及有效载荷58。交换机Y.C接收该帧,并提取标签60b。类似地,交换机Y.C首先对标签60a的组标识“Y”与它自己的组标识进行比较。交换机Y.C发现它们是相匹配的,然后交换机Y.C对标签60b的交换机标识“C”与它自己的交换机标识进行比较。由于它们是相匹配的,所以交换机Y.C对端口标识(其为0)进行评价。交换机Y.C删除标签60b,然后在端口0上发送该帧。
因此,在跳程4中,该帧包含目的地地址52、源地址54、1个标签60c以及有效载荷58。交换机Z.C接收该帧并提取标签60c。首先,交换机Z.C对标签60a的组标识“Z”与它自己的组标识进行比较。交换机Z.C发现它们相匹配,接着对标签60c的交换机标识与它自己的交换机标识进行比较。由于又是匹配的,所以交换机Y.C对端口标识(端口3)进行评价。交换机Z.C删除标签60c,并在端口3上发送该帧。在跳程5中,该帧包含目的地地址52、源地址54以及有效载荷58。在跳程5之后,由外部网络20接收该帧。
参照图3A到3C例示并描述的设备和帧结构仅仅是例示性的。应当理解,可以按任何合适的方式对操作方式和被表示为执行不同操作的设备进行修改。尽管将帧描述为包括特定协议和结构,但是在特定实施例中帧可以按任何合适的方式来构造,并且使用任何协议。具体来说,尽管将帧示出为带有目的地地址52、源地址54以及有效载荷58,但是特定实施例可以构思出带有对帧经过交换网络12的路径进行控制的标签的任何帧结构。此外,尽管将帧经过的路径描述为具有交换机22的特定集合,但是该路径也可以包括任何合适的设备,这些设备被恰当地布置成提供对帧经过网络的路径进行控制的系统。
图4是例示了用于对在一个交换机22处接收的网络管理消息进行处理的方法80的流程图。在所例示的实施例中,将端口ID型标签添加给进站网络管理消息,使得管理设备14可以确定管理设备14接收的网络管理消息的精确入口点。
在步骤82处,交换机22接收帧。在步骤84中,交换机22确定该帧是否为网络管理消息。例如,可以通过包含在帧的报头中的信息、通过在特定时间接收帧、通过从特定位置接收帧或者按任何其他合适的方式,来识别网络管理消息。如果该帧不是网络管理消息,则如步骤86所示,可以进行到与图5中所示类似的方法。然而,如果该帧是网络管理消息,则方法80继续到步骤88,在步骤88处,交换机22访问存储在交换机22上的择路信息。在步骤90中,交换机22利用该择路信息,确定针对网络管理消息的合适输出端口。在某些实施例中,交换机22访问该择路信息,该择路信息标识针对任何和所有网络消息的合适输出端口。例如,该择路信息可以与参照图2B例示并描述的类似。在其他实施例中,交换机22利用该择路信息来计算针对网络管理消息的合适输出端口。
在计算出针对网络管理消息的输出端口之后,在步骤92中,交换机22确定交换机22是否从外部链路接收到该帧。如果是,则在步骤94处,交换机22向该帧添加指定交换机在其上接收到该帧的输入端口的标签。如果该帧不是从外部链路接收的,则方法80简单地进行到步骤96。最后,在步骤96中,交换机22在步骤90中识别出的输出端口上发送该帧。然后,方法80回到步骤82,在步骤82中,交换机22接收另一帧。
参照图4描述的方法只是例示性的,应当理解,可以按任何合适的方式对操作方式和被表示为执行这些操作的设备进行修改。例如,在某些实施例中,将端口ID型标签添加给进站网络管理消息。尽管该方法描述了按特定顺序执行的特定步骤,但是应当理解,系统10可构思出用于按任何可操作顺序执行这些步骤中的一些、全部或不执行这些步骤中的任何步骤的多个要素的任何合适的集合和布置。
图5是例示了用于对在交换机22处接收的帧进行处理的方法100的流程图。在所例示的实施例中,使用端口ID型标签来控制帧经过交换网络12的路径。在步骤102处,交换机22接收帧。然后,在步骤104处,交换机22确定该帧是否采用了特殊择路协议的格式。在某些实施例中,位于该帧的起始处的虚拟局域网标识标签包含表示可以使用特殊择路协议的特定值。在其他实施例中,交换机22确定该帧使用或符合采用各种不同方式的特殊择路协议。如果未对该帧应用特殊择路协议,则在步骤106中,交换机22根据标准择路来处理该帧,然后方法100结束。在某些实施例中,标准择路包括基于以太网和/或因特网协议(IP)的择路,尽管交换机22可以使用任何合适的择路协议。
如果使用了特殊择路协议,则方法100进行到步骤108,在步骤108中,交换机22提取(或读取)该帧中的第一标签。在某些实施例中,第一标签是在最靠近帧的起始处找到的标签。在其他实施例中,第一标签就是交换机22处理的帧的多个标签中的第一个标签。在步骤110中,交换机22确定在该标签中找到的组标识是否为该特定交换机22所属的组。如果该组标识与交换机22的组不匹配,则在步骤112处,交换机22从该帧中删除该第一标签。在步骤114中,交换机22对该帧是否还有标签进行评价。如果有,则方法100回到步骤108,在步骤108中,交换机22读取该帧中的第一标签。否则,在步骤116中交换机22丢弃该帧,然后方法100结束。
如果交换机22确定标签的组标识等于交换机22的组标识,则方法100进行到步骤118。在步骤118中,交换机22确定该标签的交换机标识是否等于交换机22的交换机标识。如果是,则在步骤120处,交换机22确定针对该帧的合适输出端口等于该标签中的端口标识。交换机22在步骤122中从该帧中删除第一标签,并在步骤124中在所确定的输出端口上发送该帧;然后,方法100结束。如果该标签的交换机标识不等于交换机22的交换机标识,则方法100从步骤118进行到步骤126。在步骤126中,交换机22访问由交换机22存储的择路信息。在某些实施例中,交换机22按表的形式存储择路信息。在步骤128中,交换机22根据该择路信息确定,应当在哪个端口上转发帧,使得由该帧中的交换机标识所指定的特定交换机22来接收该帧。在步骤130中,交换机22在该输出端口上发送该帧,然后方法100结束。
参照图5描述的方法仅仅是例示性的,应当理解,可以按任何合适的方式对操作方式和被表示为执行这些操作的设备进行修改。尽管该方法描述了按特定顺序执行的特定步骤,但是应当理解,系统10可构思出用于按任何可操作顺序执行这些步骤中的一些、全部或不执行这些步骤中的任何步骤的多个要素的任何合适集合和布置。
尽管在几个实施例中对本发明进行了描述,但是本领域的技术人员可以提出各种修改和变型,并且本发明包括落在所附权利要求的范围内的这种修改和变型。
权利要求
1.一种用于对帧进行择路的方法,其包括以下步骤使用交换机的多个端口来接收多个帧,每个所述帧都包括源地址、目的地地址以及有效载荷,所述帧的至少某部分包括一个或更多个标签,每个所述标签都指定了组标识、交换机标识以及端口标识,其中,所述交换机是交换机组的一部分,而所述交换机组是交换网络的一部分;在所述交换机中保持择路信息,该择路信息表示所述多个端口中针对所述交换机组中的各其他交换机的输出端口;对于每个所述帧,如果该帧符合特殊择路协议,则按第一操作模式进行操作,而如果该帧不符合该特殊择路协议,则按第二操作模式进行操作;在第一操作模式中读取所述帧中的第一标签;确定第一标签的交换机标识是否对应于所述交换机;如果所述交换机标识不对应于所述交换机,则访问所述择路信息,以确定所述多个端口中与所述交换机标识相对应的输出端口,并在所述多个端口中的所确定的输出端口上发送所述帧;以及如果所述交换机标识对应于所述交换机,则在所述多个端口中与第一标签的端口标识相对应的端口上发送所述帧;并且在第二操作模式中,根据标准择路协议来处理所述帧。
2.根据权利要求1所述的方法,在第一操作模式中还包括以下步骤确定第一标签的组标识是否对应于所述交换机组;和如果所述组标识不对应于所述交换机组,则从所述帧中删除第一标签;其中,确定所述交换机标识是否对应于所述交换机,是在确定所述组标识是否对应于所述交换机组之后进行的。
3.根据权利要求2所述的方法,还包括以下步骤在从所述帧中删除了第一标签之后,确定所述帧是否包括第二标签;如果所述帧包括第二标签,则读取该第二标签,并确定第二标签的组标识是否对应于所述交换机组;以及如果所述帧不包括第二标签,则丢弃所述帧。
4.根据权利要求1所述的方法,还包括以下步骤在多个输入端口中的一个输入端口处接收网络管理消息;确定所述多个端口中要在其上发送所接收的网络管理消息的一个端口;如果所述网络管理消息是在将所述交换机连接到所述交换网络外部的设备的链路上接收的,则在所述网络管理消息中插入一标签,该标签表示所述交换机的所述多个端口中的接收到所述网络管理消息的所述一个端口;以及在所述多个端口中的所确定的端口上发送所述帧。
5.根据权利要求4所述的方法,其中,所述择路信息包括一个条目,该条目指定了所述多个端口中要在其上发送由所述交换机接收的所有网络管理消息的所述一个端口。
6.根据权利要求1所述的方法,在第一操作模式中,还包括以下步骤如果第一标签的交换机标识对应于所述交换机,则在发送所述帧之前,从所述帧中删除第一标签。
7.根据权利要求1所述的方法,其中所述交换网络中的每个交换机组都具有组标识符,与各交换机组相对应的组标识符不同于与任何其他交换机组相对应的组标识符;并且对于每个交换机组,该交换机组中的每个交换机都具有对应的交换机标识符,与各交换机相对应的交换机标识符不同于与该交换机组中的任何其他交换机相对应的交换机标识符。
8.一种用于对帧进行择路的方法,其包括以下步骤在交换机的多个端口中的一个端口处接收帧,该帧包括源地址、目的地地址以及有效载荷;确定所述帧是否符合特殊择路协议;如果所述帧符合所述特殊择路协议,则按第一操作模式进行操作,而如果所述帧不符合所述特殊择路协议,则按第二操作模式进行操作;在第一操作模式中读取一个或更多个标签中的第一标签,每个标签都指定了一端口标识;确定所述多个端口中与第一标签的端口标识相对应的输出端口;从所述帧中删除第一标签;以及在所述多个端口中的所述输出端口上发送所述帧;并且在第二操作模式中,根据标准择路协议来处理所述帧。
9.一种交换机,其包括多个端口,每个所述端口都可以进行操作以接收多个帧,每个所述帧都包括源地址、目的地地址以及有效载荷,所述帧的至少某部分包括一个或更多个标签,每个所述标签都指定了组标识、交换机标识以及端口标识;存储器,其可以进行操作以保持网络择路信息和标准择路信息,所述网络择路信息表示所述多个端口中针对交换机组中的一个或更多个其他交换机的输出端口,所述标准择路信息将寻址信息映射到所述多个端口中的所述输出端口,其中,所述交换机是所述交换机组的一部分,而所述交换机组是交换网络的一部分;其中,对于每个所述帧,所述交换机都可以进行操作以确定所述帧是否符合特殊择路协议,如果所述帧不符合所述特殊择路协议,则使用所述标准择路协议对所述帧进行处理;其中,如果所述帧符合所述特殊择路协议,则所述交换机还可以进行操作以读取所述帧中的第一标签,并确定第一标签的交换机标识是否对应于所述交换机;如果所述交换机标识不对应于所述交换机,则所述交换机还可以进行操作以访问所述网络择路信息,来确定所述多个端口中与所述交换机标识相对应的输出端口,并在所述多个端口中的所确定的输出端口上发送所述帧;如果所述交换机标识对应于所述交换机,则所述交换机还可以进行操作,以在所述多个端口中与第一标签的端口标识相对应的端口上发送所述帧。
10.根据权利要求9所述的交换机,其中所述交换机还可以进行操作以确定第一标签的组标识是否对应于所述交换机组,如果所述组标识不对应于所述交换机组,则从所述帧中删除第一标签;并且确定所述交换机标识是否对应于所述交换机,是在确定所述组标识是否对应于所述交换机组之后进行的。
11.根据权利要求10所述的交换机,其中,所述交换机还可以进行操作以执行以下步骤在从所述帧中删除了第一标签之后,确定所述帧是否包括第二标签;如果所述帧包括第二标签,则读取第二标签,并确定第二标签的组标识是否对应于所述交换机组;以及如果所述帧不包括第二标签,则丢弃所述帧。
12.根据权利要求9所述的交换机,其中,所述交换机还可以进行操作以执行以下步骤在多个输入端口中的一个输入端口处接收网络管理消息;确定所述多个端口中要在其上发送所接收的网络管理消息的一个端口;如果所述网络管理消息是在将所述交换机连接到所述交换网络外部的设备的链路上接收的,则在所述网络管理消息中插入一标签,该标签表示所述交换机的所述多个端口中的接收到所述网络管理消息的端口;以及在所述多个端口中的所确定的端口上发送所述帧。
13.根据权利要求12所述的交换机,其中,所述网络择路信息包括一个条目,该条目指定了所述多个端口中要在其上发送由所述交换机接收的所有网络管理消息的所述一个端口。
14.根据权利要求9所述的交换机,其中,如果第一标签的交换机标识对应于所述交换机,则所述交换机还进行操作以在发送所述帧之前从所述帧中删除第一标签。
15.根据权利要求9所述的交换机,其中所述交换网络中的每个交换机组都具有组标识符,与各交换机组相对应的组标识符不同于与任何其他交换机组相对应的组标识符;并且对于每个交换机组,该交换机组中的每个交换机都具有对应的交换机标识符,与各交换机相对应的交换机标识符不同于与该交换机组中的任何其他交换机相对应的交换机标识符。
16.用于对多个帧进行择路的逻辑,该逻辑被编码在介质中,并且在被执行时可以进行操作以执行以下步骤使用交换机的多个端口来接收多个帧,每个所述帧都包括源地址、目的地地址以及有效载荷,所述帧的至少某部分包括一个或更多个标签,每个所述标签都指定组标识、交换机标识以及端口标识,其中,所述交换机是交换机组的一部分,而所述交换机组是交换网络的一部分;在所述交换机中保持择路信息,该择路信息表示所述多个端口中针对所述交换机组中的各其他交换机的输出端口;对于每个所述帧,如果该帧符合特殊择路协议,则按第一操作模式进行操作,而如果该帧不符合该特殊择路协议,则按第二操作模式进行操作;在第一操作模式中读取所述帧中的第一标签;确定第一标签的交换机标识是否对应于所述交换机;如果所述交换机标识不对应于所述交换机,则访问所述择路信息,以确定所述多个端口中与所述交换机标识相对应的输出端口,并在所述多个端口中的所确定的输出端口上发送所述帧;以及如果所述交换机标识对应于所述交换机,则在所述多个端口中与第一标签的端口标识相对应的端口上发送所述帧;并且在第二操作模式中,根据标准择路协议来处理所述帧。
17.根据权利要求16所述的逻辑,在第一操作模式中还可以进行操作以执行以下步骤确定第一标签的组标识是否对应于所述交换机组;和如果所述组标识不对应于所述交换机组,则从所述帧中删除第一标签;其中,确定所述交换机标识是否对应于所述交换机,是在确定所述组标识是否对应于所述交换机组之后进行的。
18.根据权利要求17所述的逻辑,还可以进行操作以执行以下步骤在从所述帧中删除了第一标签之后,确定所述帧是否包括第二标签;如果所述帧包括第二标签,则读取该第二标签,并确定第二标签的组标识是否对应于所述交换机组;以及如果所述帧不包括第二标签,则丢弃所述帧。
19.根据权利要求16所述的逻辑,还可以进行操作以执行以下步骤在多个输入端口中的一个输入端口处接收网络管理消息;确定所述多个端口中要在其上发送所接收的网络管理消息的一个端口;如果所述网络管理消息是在将所述交换机连接到所述交换网络外部的设备的链路上接收的,则在所述网络管理消息中插入一标签,该标签表示所述交换机的所述多个端口中的接收到所述网络管理消息的端口;以及在所述多个端口中的所确定的端口上发送所述帧。
20.根据权利要求19所述的逻辑,其中,所述择路信息包括一个条目,该条目指定了所述多个端口中要在其上发送由所述交换机接收的所有网络管理消息的所述一个端口。
21.根据权利要求16所述的逻辑,还可以进行操作,以在第一操作模式中,在第一标签的交换机标识对应于所述交换机时,在发送所述帧之前从所述帧中删除第一标签。
22.根据权利要求16所述的逻辑,其中所述交换网络中的每个交换机组都具有组标识符,与各交换机组相对应的组标识符不同于与任何其他交换机组相对应的组标识符;并且对于每个交换机组,该交换机组中的每个交换机都具有对应的交换机标识符,与各交换机相对应的交换机标识符不同于与该交换机组中的任何其他交换机相对应的交换机标识符。
23.一种用于对多个帧进行择路的系统,其包括帧接收装置,用于使用交换机的多个端口来接收多个帧,每个所述帧都包括源地址、目的地地址以及有效载荷,所述帧的至少某部分包括一个或更多个标签,每个所述标签都指定组标识、交换机标识以及端口标识,其中,所述交换机是交换机组的一部分,而所述交换机组是交换网络的一部分;择路信息保持装置,用于在所述交换机中保持择路信息,该择路信息表示所述多个端口中针对所述交换机组中的各其他交换机的输出端口;操作装置,用于针对每个所述帧,在该帧符合特殊择路协议的情况下,按第一操作模式进行操作,而在该帧不符合所述特殊择路协议的情况下,按第二操作模式进行操作;在第一操作模式中,包括第一标签读取装置,用于读取所述帧中的第一标签;交换机标识确定装置,用于确定第一标签的交换机标识是否对应于所述交换机;不对应发送装置,用于在所述交换机标识不对应于所述交换机的情况下,访问所述择路信息,以确定所述多个端口中与所述交换机标识相对应的输出端口,并在所述多个端口中的所确定的输出端口上发送所述帧;以及对应发送装置,用于在所述交换机标识对应于所述交换机的情况下,在所述多个端口中与第一标签的端口标识相对应的端口上发送所述帧;以及在第二操作模式中,包括帧处理装置,该帧处理装置用于根据标准择路协议来处理所述帧。
全文摘要
基于网络的择路方案。提供了一种网络组织和择路方案。这些技术使得网络可以对经过网络的帧所取的路径进行控制。发送帧的设备可以向该帧添加标签,以限定该帧经过网络应当采用的特定路径。例如,这些标签可以表示网络中的多个交换机之间的逐链路路径。作为另一示例,可以将网络组织成一个或更多个交换机组,每个组和组内的交换机都具有唯一的标识符,使得可以通过诸如组/交换机/端口标识的分级标识来指网络中的任何给定交换机或端口。
文档编号H04L29/06GK1848815SQ20061007212
公开日2006年10月18日 申请日期2006年4月12日 优先权日2005年4月12日
发明者清水刚 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1