具有冗余路径的局域网中的消息处理的制作方法

文档序号:7969017阅读:247来源:国知局
专利名称:具有冗余路径的局域网中的消息处理的制作方法
技术领域
本发明涉及为局域网(LAN)并且尤其是为虚拟局域网(VLAN)提供负荷平衡和故障切换(fail over)冗余。
背景技术
如本领域所公知的那样,LAN是一组计算机和相关联的装置,这些计算机和装置共享公共通信线路或无线链路并且一般共享小地理区域内(例如办公楼内)的单个处理器或服务器的资源。通常,该服务器具有由多个计算机用户共同共享的应用和数据存储。主要的局域网技术包括以太网、令牌环和FDDI(光纤分布式数据接口)。另一局域网技术ARCNET(曾经是最普遍安装的局域网技术)仍然被用于工业自动化产业中。
局域网特别适用于电信应用。可以在所述局域网服务器上保留并且分配或广播给远程电话用户一套应用程序或业务。请求应用的用户可以下载一次该应用,并且然后由他们的本地存储装置来运行该应用。在电信中,客户端可以决定预订呼叫转移业务,该呼叫转移业务通过局域网连接被发送给用户并且被本地存储在用户的下一代电话中。
VLAN是一组通常在多个物理局域网段上的终端站,这些终端站就像它们是在共同的局域网段上那样通信。这是通过根据每个VLAN来分组共享上述共同的局域网段的路径来完成的。一般地,利用消息报头中的标记来实现VLAN,以便描绘所述VLAN。
第二层以太网桥接器和交换机“学习”它们的客户端被定位于网络中的何处。每当桥接器接收帧时,该桥接器在其转发表中查找上述帧的源地址,该转发表是由交换机所保留的表格,该表格显示给上述交换机将被发送到特定目的地的帧转发到何处。交换机的转发表可被当做其当前客户端的地址加上关于如何转发目的地为那些客户端的帧的信息的列表。
如果没有在该转发表中列出源地址,则交换机为该源地址向上述表格添加条目。该条目标识在其上接收来自源地址的帧的交换机端口。VLAN识别(VLAN-aware)交换机还记录在其上接收帧的VLAN。交换机支持VLAN标记。VLAN识别交换机是这样一种交换机,即该交换机基于帧报头中的VLAN标记作出帧转发决定并且根据需要添加和移除标记。
如果地址的条目已经存在于上述转发表中,但是该条目与不同于输入的消息的端口的端口或端口VLAN相关联,那么上述交换机将会更新其转发表,以反映在其上该交换机已接收到帧的所述端口(或端口VLAN)。这个学习过程是以太网交换机和桥接器的标准特征。
在任何以太网络中,任何一对通信站之间必然正好存在一条有效路径。站是发起并接收网络上的消息的装置。如果在两个站之间存在多条路径,那么将会在所述网络中存在可能导致运转中断(outage)的循环,该运转中断是由广播风暴所引起的。这是结合图1将会更好理解的问题。
在图1中,示出具有终端站101、102、103和104的局域网100,这些终端站可以是线端、计算机、电话终端装置或在这方面的任何终端。交换机105、106、107和108连接不同的终端站。在图1中,在终端站1、2或3和终端站4之间分别存在冗余路径109、110。具有冗余路径的问题是相同的消息经过不同的路径被冗余地发送到所述终端站。在大型网络中,这可以很容易地成为有问题的并且可以在相对短的时间内击溃网络。
交换机和桥接器一般通过关闭除冗余集合中的链路之一以外的其它所有链路来处理冗余链路。诸如公知的生成树协议(STP)之类的协议被用来检测贯穿所述网络的冗余路径并且选择冗余链路来关闭。生成树协议使得所有交换机负责识别网络中的冗余路径。
在图1中,例如交换机X 105和交换机Y 106负责检测,交换机A和B在其之间提供冗余路径并且消除足够的冗余链路。这是管理以太网络中的冗余链路的工业标准方法。然而,上述方法具有几个缺点。尤其是,在包括多个交换机的大型网络中,调整该网络以容纳无数过载的或故障的交换机和链路可能会花费无法接受得长的时间。
所需要的是一种用于为网络(尤其是LAN和VLAN)中的过载和故障切换情形而提供的更好的设备和方法,。一种解决办法需要相对少的系统资源并且在可以接受的时间内以有效的方式解决所述冗余问题。

发明内容
本发明利用对等交换机。对等交换机在网络中占据相同的逻辑位置。换句话说,所有对等节点(peer)被连接到相同的网络路由器、交换机和终端站。对等交换机提供贯穿网络的冗余路径。在图1中,交换机A和交换机B可以是对等节点。由于交换机X和交换机Y被连接到完全不同的站的集合,所以交换机X和交换机Y不是对等节点。对等交换机能够相互监控对方的“健康”(或状态)并且交换详细的状态信息,诸如交换每个交换机的转发表的内容。在这里,对等交换机组被称为对等交换机的单个集合。上述集合的所有成员是上述集合的所有其它成员的对等节点。
本发明提供一种用于在包括交换机和客户端的虚拟局域网中进行消息处理的方法和设备,其中至少两个交换机是第一和第二对等交换机,并且至少第二对等交换机冗余地连接客户端。对于第二对等交换机的至少一个客户端,站消息通知由第一对等交换机来发送。在每个站消息通知中,插入第二对等交换机的源地址。在上述对等节点组之外的交换机处理站消息通知,就像上述站消息通知来自其地址位于上述站消息通知的报头的源地址字段中的装置一样。
本发明具有若干优点。首先,上述方法通过向站通知消息中插入MAC地址来利用地址欺骗(address spoofing)的形式。这促进动态网络重组,而不需要交换机或桥接器上的专用软件或特殊性能。相反,本发明利用VLAN交换机的特性来自动地“学习”网络体系结构。
此外,通过为多个站从对等节点组中的交换机向该对等节点组之外的交换机广播站通知来实现故障切换而简化本发明。以这样的方式,本发明并不由于单独再分配上述VLAN而使网络超负荷。同样地这种配置还有利于将负荷重新分配实现为总负荷平衡策略的部分。
应该理解的是使用站通知允许交换机对等节点组的成员在其中不能使用用于管理网络冗余的其它机制(诸如生成树协议)的情况下管理冗余。使用站通知来为一组对等交换机提供装置以自治地管理其工作负荷和冗余有利地不需要来自在这些装置所附属的交换机、桥接器和路由器上所实现的特定功能的帮助。


将参考以下附图描述本发明,其中示出了本发明的至少一个实例图1示出现有技术的LAN,
图2示出本发明的LAN,以及图3示出本发明的变型。
具体实施例方式
现在参考图2描述本发明的解决方案。类似于图1,图2中所示的LAN包括终端站201-205,这些终端站201-205可以是任何前述终端装置。交换机X和Y 206、207连接终端站201-205。对等交换机208、209(诸如交换机A和交换机B)互相通信并且共享状态信息。
在所示的示例性附图中,上述对等交换机(在本实例中为A和B 208、209)相互监控对方的健康。如果这两个对等交换机之一故障,则另一个可以接替。网络中的其它部分不必知道上述对等组中的交换机的数目或进出到上述对等交换机组的哪个链路是冗余的,因为上述交换机组的成员以对于网络中的其它部分或多或少是透明的形式管理冗余。问题是,如果交换机B故障,那么交换机A如何接替它。
可以使用用于检测其它对等节点的状态的很多机制。例如,上述检测机制可以在可预测的、周期性的基础上向所有其它交换机发送第二层组播或广播消息。在某一时间窗内无法接收某一数量的这些消息例如表示,应该已经有效地发起广播的交换机发生故障。此外,用于检测需要负荷平衡或者故障切换(failover)的机制应该从实现/引起故障切换的机制中分离出来。另一可替换的方案是直接将交换机一起连接到“专用通信网”中,并且通过这个专用通信网执行健康监控、即周期性的消息交换。应该理解的是对等节点以其来检测故障切换或者冗余的方式不会集中在此。
无论如何,由于站A和B可以进行通信,所以每个站保留另一个交换机的转发表的拷贝。于是,上述对等节点组的每个成员知道当前正在由上述对等节点组服务的所有客户端的列表。每个对等节点组的客户端的地址被保留在这个“共享”的转发表中。
接下来,消息可以包括有用信息,诸如包括自从上一次交换机发送消息以来已开始从发送消息的交换机接收服务的客户端的列表。为保证每个交换机的有效负荷端口是可用的,使用上述有效负荷接口发送广播。
如果交换机B故障,则最终交换机A将会检测到上述故障。当交换机A检测到故障时,该交换机A为每个使用交换机B的客户端创建一个站通知消息,并且将那个帧广播给网络中的在对等节点组之外的部分。例如,假定交换机B为图2中的所有终端站传送通信量。那么交换机A会为四个终端站中的每一个创建站通知帧,并且将该站通知帧广播出其每一个端口,而不是广播出所述站实际会通过其发送帧的端口。
在本发明的一个方面,站通知可以是第二层消息,该第二层消息看起来是在终端站发起,从而认为消息的源地址是终端站的地址。至少,该消息仅仅需要包括源的表面上的地址(apparent address)的消息报头。目的地地址可以是非特定的广播地址。在802.3(以太网)网络中,帧应该包括足够的填充,以确保整个帧具有协议所要求的长度。
以下利用传统的交换实践,交换机不会将帧转发回在其上接收帧的端口(或端口-VLAN)。例如,在图2中,如果终端站204发送广播消息,那么交换机Y 206必须在其所有端口上广播该消息,除了在其上接收上述消息的那一个端口之外。这防止帧在一组交换机和站之间被来回“往复”(ping-ponging)。此外,这防止交换机在关于装置正在使用的是哪一个交换端口方面变混乱。
相同的规则一般被用于交换机对等节点组的成员。如果交换机B 209从终端站1接收帧,则该交换机B 209并不将该帧发送回交换机X,该交换机B 209首先从所述交换机X接收帧。现在,在交换机B 209故障的情况下,交换机A 208遵循相同的规则。在故障切换期间,交换机A 208为现在将会交换其通信量的站广播站通知。交换机A 208注意其针对站向哪里发送站通知或者它可能引起“往复”或者必须避免的交换混乱。
在图2的实例中,示出了4个终端站。这假定,交换机B为所有终端站交换通信量。在这种情况下,如果交换机B故障,那么交换机A产生4个独立的站通知广播。在本实例中,为上述4个终端站之一发送每个广播。重要的是由交换机A为终端站1、2和3所发送的站通知不会被发送到交换机X,因为那样会导致交换机X相信上述终端站已经移动。类似地,重要的是由交换机A为终端站4所发送的站通知不会被发送至交换机Y,因为那样会使交换机Y确信还没有移动的终端站4已经移动。因此,在本实例中,上述站通知为终端站1、2和3向交换机Y而不是交换机X广播,而将为终端站4的广播被发送至交换机X而不是交换机Y。
接替上述故障的对等交换机的交换机填充上述站通知的消息报头并发送这些站通知。那个交换机保留正由故障的对等节点所服务的所有站的列表。
假定接替的交换机(在本实例中为交换机A)具有这样一个列表(例如共享转发表),那么该交换机将会具有以下装置的地址,即这些装置是上述故障的交换机的客户端。接替的交换机在这个列表上重复,从而给每个装置构建一个广播站通知并将该广播站通知发送给遵循上面在第二点中所描述的规则的网络。
在这个实例中,交换机A仅仅具有两个所连接的端口。当看起来是交换机B故障时,交换机A将会为终端站1从其每一个端口广播站通知,除了站1通过其通信的那一个端口以外。在这个实例中,仅仅存在一个这样的端口,该端口连接到交换机Y。该端口也会为终端站2向交换机Y广播站通知。进而,交换机A为终端站3向交换机Y广播站通知。最后,交换机A为终端站4向交换机X广播站通知。当交换机X和Y接收到该站通知时,这些交换机X和Y将会从其所有端口广播上述站通知,除了在其上接收上述站通知的端口以外。
由交换机所发送的站通知的有利特征是每个帧好像是来自故障的交换机的客户端之一。在以太网术语中,帧报头中的源MAC(发起方地址)是被存储在上述“共享的”转发表中的MAC地址之一,而不是发送上述帧的交换机的地址。在这种意义上,发送上述站通知的交换机正在“欺骗(spoofing)”其它站的MAC地址。
这是非常重要的,因为,当上述对等节点组以外的交换机接收到该消息时,这些交换机将会处理该消息,就像该消息实际上来自其地址被欺骗的那个站(即,故障的交换机的客户端)一样。接收到上述站通知的交换机将会得知,到上述帧的表面上的源的新路径应该替换它们已经知道的任何路径。因此,在上述对等节点组之外的桥接器/交换机不需要任何特定的代码来处理该组中的交换机之一的故障。这种站通知的使用开发了第二层以太网交换机和桥接器的标准学习特性。
重要的是注意到站通知并不必在对等交换机组的成员之间被发送。这些站通知的主要功能是告知在上述对等交换机组之外的其它交换机和桥接器到站的新转发路径。同样重要的是注意到上述站通知不是从一个交换机被发送到另外一个交换机的专用消息,就是说它正接替第三交换机。该消息仅仅是另一个标准的第二层消息。
如已经解释的那样,每个交换机保留一转发表。上述表格的格式是专有的并且取决于交换机是否支持VLAN而变化。至少,上述表格包括配对的列表。上述配对中的一个成员是站的硬件地址,而另一个成员是端口(或端口-vlan),交换机应从上述端口转发目的地为上述站的帧。当交换机接收到单播帧时,该交换机在其转发表中查找该帧的目的地址,以告知将帧转发到哪个端口(或端口-vlan)上。
通常,交换机通过学习过程来增加和更新上述转发表。无论何时交换机接收到帧,该交换机都查看上述帧的源地址,该源地址是报头中的一字段,该字段包括发送这个帧的装置的硬件地址。如果源地址不在上述转发表中,则交换机在转发中产生一条目,该条目表示端口(或端口-vlan),在上述端口上,交换机从具有上述条目中的地址的装置接收该消息。如果对于上述地址该条目已经存在并且在上述转发表中列出上述端口,诸如当装置不同于在其上已接收到消息的那个装置时,那么交换机更新其转发表,以将MAC地址与新端口相关联。
这是站通知利用的第二更新特性。所有交换机合并两种类型的学习,即,当在不同于来自在上述表格中所列出的装置的前述消息的端口上接收来自该装置的消息时,为新的地址将新的条目添加到转发表,并且改变与现有条目相关联的端口。
迄今已经论述了故障切换。然而,本发明可以被用于负荷平衡。返回到图1,此时,应该理解的是,该图示出单个局域网,该单个局域网包括由交换机A和B组成的一个对等节点组。在那种类型的网络中,交换机X和Y之间的所有通信量刚好流过交换机A或交换机B中的一个。在那种情形中,负荷平衡是不可能的。当对等节点组中的交换机之一故障时,站通知仅仅能被用于触发故障切换。
典型地,利用VLAN来将单个物理网络中的通信量分割为几个不同的逻辑/虚拟网络中,上述逻辑/虚拟网络刚好共享相同的物理基础设施。将VLAN和对等交换机组结合产生了对等节点组的成员之间的负荷平衡的可能性。图2包括将对等交换机组和VLAN结合的实例。该图包括被覆盖在一个物理网络上的两个虚拟网络。例如,VLAN 101包括终端站1、3和5以及交换机X、A、B和Y上的端口。例如,VLAN 102包括终端站2和4以及交换机X、A、B和Y上的端口。
在该实例中,两个VLAN在交换机X和交换机Y之间都具有冗余路径。传统的网络将会使用生成树或静态配置来使不必要的重复路径不适用(直到需要)。可是,本发明中的站通知的可用性产生了另一种可能性。假定交换机A和B是对等节点并且可以相互通信,则交换机A和B可以为自己决定每个将传送哪些VLAN。如在图2中所示的那样配置交换机X和Y,以将VLAN 101和102置于上述对等节点组中的两个交换机的链路上。
这个特征可被用于VLAN的间隔尺寸(granularity)处的交换机之间的负荷平衡。对等交换机组中的交换机可以监控彼此的工作负荷以及状态和转发表信息。如果交换机对等节点组的成员变得过载,则其对等节点之一可以负责其VLAN中的一些工作。如何定义和检测过载超出了范围,因为所述机制是用于识别应该将哪些VLAN从过载的交换机移到负载较轻的交换机。
那些接受来自过载的交换机的负荷的对等节点必须接替全部VLAN的职责。为了接替一个VLAN的职责,交换机为在上述共享的转发表中所列出的所有站发送站通知,如利用将要被移动的VLAN能样。将VLAN从一个交换机转移到另一个交换机的过程差不多就像在先前描述的故障切换的情况下它所做的那样进行,除了在这种情况下过载交换机以及对等节点接替VLAN中的一些,这两者仍然在使用中并且两者继续交换帧。
现在,将会参考图3中所示的实际交换网络300来描述本发明的实际应用。如图所示,将网络分割为逻辑网络,上述逻辑网络包括核心网络302和接入网络304,该逻辑网络以服务终端站308的VLAN或一组VLAN 306为主机(host)。第一逻辑网络是核心网络,该核心网络以组织(organization)的服务器和网关为主机并且向网络上的客户端站提供服务。第二逻辑结构是以终端站为主机的接入网络,这些终端站包括想要获得对核心网络的接入的服务的移动站。这样的逻辑上划分的网络可以例如是西门子HiPath无线服务器(HWS)TM。
在上述核心和接入网络之间的是核心网络交换机310。可能存在被耦合到上述核心网络交换机310的VLAN识别交换机312。示出并且也可以使用无线局域网接入点314。基于其在核心和接入网络VLAN之间映射的能力,所述网络提供了一些服务。在核心网络302侧,可以包括将核心网络交换机310耦合到因特网318的路由器316和/或处理视频流等等的服务器320。
此外,所包括的可以是BSS(基本业务集合)322,BSS 322在该图中被示为站的集合。在这种情况下,BSS 322包括一个用作全连接的网络的接入点(AP)。上述AP被连接到有线网络。该图举例说明了,BSS 322如何被集合成ESS、通过交换机或网络集线器共享共同的第二层网络的BSS的集合。因此,HWS提供了ESS之间的移动性,从而实现了其功能。
因此,附图的实例示出交换机的稳定的对等交换机组。这种交换机对等节点组中的核心交换机决定它们自己之间如何分配负荷和上述组是否在故障切换或者负荷平衡模式下工作。对等节点组中的核心交换机可以使用本发明来实施VLAN的间隔尺寸处的故障切换和负荷平衡。
在对等节点组中的核心交换机实施负荷平衡的情况下,那么上述组中的每个核心交换机负责上述接入网络VLAN的某些部分。另一方面,一组中的核心交换机并不拥有核心VLAN。任何核心交换机可以随时将帧切换到任何核心VLAN上,只要其专有转发表指示,上述核心VLAN是上述帧的正确的目的地。
在核心交换机对等节点组中,相对上述接入网络VLAN执行负荷平衡和故障切换。为了将VLAN的职责从一个核心交换机转移到另一个,对于在接入网络VLAN上进行通信的每个站,上述接收核心交换机向那个站与其相关联的核心VLAN广播站通知。对于每个已知的核心网络站,核心交换机向正在被接替的接入网络广播站通知。在故障切换的情形下,依然存在的核心交换机为每个由故障的HWS所拥有的接入VLAN执行这些步骤。在负荷平衡的情形下,上述核心交换机为从过载的核心交换机对等节点接替的每个VLAN执行这些步骤。
站通知机制在核心交换机系统中稍不同于图2中示出的较简单的环境。为了提供其功能,图3的系统在其接入和核心侧上被配置有不同的VLAN集合。实际上,这意味着,核心网络交换机将不会参与接入网络生成树活动,而接入网络交换机将不会参与核心网络生成树活动。如以上所解释的那样,生成树方法无法管理由对等交换机组的成员所提供的潜在冗余路径。因此,上述交换机对等节点组的成员自己管理冗余。站通知为交换机对等节点提供一种方法来向上述交换机组的非成员传送决定,所述决定是关于哪一个交换机负责VLAN,而不需要任何专用软件或在上述非成员交换机上切换的理解。
上述实例涉及具有两个成员的对等交换机组。然而,应该理解的是本发明还延伸到任何大小的对等交换机组。在广义上,本发明可被用于任何OSI第二层分组交换、诸如数据网络中所发现的那些分组交换。尽管没有测试电路交换的适用性、诸如传统的语音网络中的那些电路交换,但是本发明也可以适用于那些电路。在使用中的各种第二层协议中,本发明很好地适用于以太网和实现以太网的交换机。然而,当然这里的概念可被扩展到诸如ATM的其它第二层协议。
这里根据被分割为VLAN的网络论述了本发明。在那种情形中,上述对等节点组中的每个交换机负责遍历所述对等节点组的VLAN的特定子集。本发明可以遵守VLAN的802.1Q IEEE标准以及消息优先级标记。当然,本发明不限于此并且可被用于任何网络。
虽然已根据特定实例论述了本发明,但是本发明不应该如此受到限制并且应该理解的是,在所公开的本发明的精神和范围内可以实施本发明的修改和变型。
权利要求
1.一种用于在包括交换机和客户端的局域网中进行消息处理的方法,其中,所述交换机中的至少一个交换机是能够监控另一个交换机的状态的对等交换机,并且至少一个交换机冗余地连接所述客户端,该方法包括以下步骤由所述对等交换机为所述另一个交换机的至少一个客户端发送站消息通知,以及在每个站消息通知中插入所述客户端的源地址,其中,其它交换机处理所述站消息通知,就像该站消息通知来自所述客户端一样。
2.根据前述权利要求所述的方法,其中,所述插入步骤在所述站消息通知中插入以太网MAC地址。
3.根据前述权利要求所述的方法,更进一步地包括保留转发表的步骤,该转发表将硬件站和交换机应该向其转发所接收到的帧的端口进行配对。
4.根据前述权利要求所述的方法,更进一步地包括监控至少一个所述交换机的状态以确定上述被监控的交换机是否故障的步骤。
5.根据前述权利要求所述的方法,更进一步地包括确定负荷的步骤,所述负荷由客户端的子集或将要从第二对等节点转移到第一对等节点的客户端组成,其中,对于所确定的客户端子集或第二对等节点的客户端,发送站消息通知的步骤被发送。
6.根据前述权利要求所述的方法,更进一步地包括检测另一个交换机故障的步骤,其中,发送站消息通知的步骤为所述故障的交换机的每个客户端发送站消息通知。
7.一种用于在包括交换机和客户端的局域网中进行消息处理的设备,其包括对等交换机,该对等交换机监控至少另一个交换机的状态;,至少一条冗余路径,通过该冗余路径来贯穿网络连接所述客户端;其中,所述对等交换机在每个站消息通知中插入所述客户端的源地址,其中,其它交换机处理该站消息通知,就像该站消息通知来自所述客户端一样。
8.根据权利要求7所述的设备,其中,所述交换机是OSI第二层分组交换机。
9.根据权利要求7-8所述的设备,其中,所述网络是虚拟局域网(VLAN)。
10.根据权利要求7-8所述的设备,其中,所述网络被分割为包括核心网络和接入网络的逻辑网络。
11.根据权利要求10所述的设备,更进一步地包括西门子HiPath无线服务器。
全文摘要
提供包括交换机和客户端的局域网中的消息处理。所述交换机中的至少一个是对等交换机,该对等交换机能够监控另一个交换机的状态,并且至少一个交换机冗余地连接客户端。由所述对等交换机为所述另一个交换机的至少一个客户端发送站通知消息。在每个站消息通知中,插入所述另一个交换机的源地址。所述其它交换机处理所述站消息通知,就像该站消息通知来自所述客户端一样。
文档编号H04B1/74GK1937569SQ20061013576
公开日2007年3月28日 申请日期2006年9月13日 优先权日2005年9月13日
发明者R·库思伯特, M·G·埃格林, D·戈德温, J·乔斯林 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1