用于分布式组构系统的交换机发现协议的制作方法

文档序号:7791196阅读:250来源:国知局
用于分布式组构系统的交换机发现协议的制作方法
【专利摘要】本发明公开了一种分布式组构系统,包含通过交换机间的链路互连的并被指派给同一分组的多个独立的网络元素。每个网络元素都包含一个或多个交换芯片、处理器以及用于存储由处理器执行的程序代码的存储器。每个网络元素的程序代码都包含交换机发现协议(SDP)模块。每个网络元素的SDP模块在执行时会使用多个传输速率之一来周期性地多播SDP数据单元(SDPDU)。该多个传输速率包括快传输速率和慢传输速率。由每个网络元素的SDP模块使用的传输速率是快传输速率,直到该网络元素的SDP模块确定标准已满足,响应于此由该网络元素的SDP模块使用的传输速率改变为慢传输速率。
【专利说明】用于分布式组构系统的交换机发现协议

【技术领域】
[0001] 本发明总体地涉及数据中心和数据处理。更特别地,本发明涉及用于检测交换机 何时加入及脱离分布式组构系统、以及用于为在系统内的交换机之间的通信确定最佳可用 路径的协议。

【背景技术】
[0002] 数据中心一般是用于提供为支持企业和组织所需的因特网和内联网服务的集中 式设施。典型的数据中心能够容纳各种类型的电子设备,例如,计算机、服务器(例如,邮件 服务器、代理服务器和DNS服务器)、交换机、路由器、数据存储器件以及其他关联的构件。 一个给定的数据中心能够拥有按分布式方式互连的数百或数千个交换机。通常,多个个体 交换机被分组成分布式系统。这些交换机中的任一个能够在任何给定时间脱离或加入分布 式组构,每个此类事件都是对分布式组构系统的正常操作的潜在中断。


【发明内容】

[0003] 在一个方面中,本发明的特征在于包含通过交换机间的链路互连的并被指派给同 一分组的多个独立的网络元素的分布式组构系统。每个网络元素都包含一个或多个交换芯 片、处理器以及由处理器执行的存储器存储程序代码。每个网络元素的程序代码都包含交 换机发现协议(SDP)模块。每个网络元素的SDP模块在执行时会使用多个传输速率之一来 周期性地多播SDP数据单元(SDPDU)。该多个传输速率包括快传输速率和慢传输速率。由 每个网络元素的SDP模块使用的传输速率是快传输速率,直到该网络元素的SDP模块确定 标准已满足,响应于此,由该网络元素的SDP模块使用的传输速率改变为慢传输速率。
[0004] 在另一个方面中,本发明的特征在于用于在分布式组构系统中发现被指派给同一 分组的网络元素的计算机程序产品。计算机程序产品包括具有编入其中的计算机可读程序 代码的计算机可读存储介质。计算机可读程序代码包含被配置用于使用多个传输速率之 一来周期性地多播SDP数据单元(SDPDU)的交换机发现协议(SDP)模块。该多个传输速 率包括快传输速率和慢传输速率。SDP模块还被配置用于使用快传输速率来周期性地多播 SDTOU,直到标准已满足,并且,响应于满足该标准,将传输速率改变为慢传输速率。
[0005] 在又另一个方面中,本发明的特征在于用于在分布式组构系统中发现被指派给同 一分组的网络元素的方法。该方法包括:由多个网络元素中的每个网络元素使用多个传输 速率之一来周期性地多播交换机发现协议数据单元(SDPDU)。该多个传输速率包括快传输 速率和慢传输速率。这些网络元素中的一个或多个会检测分布式组构系统中的稳定性,并 且响应于所检测到的稳定性而将传输速率由快传输速率改变为慢传输速率。

【专利附图】

【附图说明】
[0006] 本发明的上述及更多优点通过参考下面结合附图进行的描述可以更好地理解,在 附图中,相同的附图标记指示各个附图中的相同的结构元件及特征。图形并不一定是按比 例的,反而应当注重的是说明本发明的原理。
[0007] 图1是包含具有多个网络元素、服务器和管理站的数据中心的网络环境的一种实 施例。
[0008] 图2是包含主(控制者)交换机、备用交换机以及多个跟随者交换机的数据中心 的一种实施例的框图。
[0009] 图3是包含与存储器通信的处理器以及存储于存储器内的层式软件栈的网络元 素的一种实施例的功能框图。
[0010] 图4A是在主交换机内的层式软件以及在软件栈的层之间的各个通信信道的框 图。
[0011] 图4B是在跟随者交换机内的层式软件以及在软件栈的层之间的各个通信信道的 框图。
[0012] 图5是协议TLV(类型-长度-值)的一种实施例的图表。
[0013] 图6是组ID(GID)TLV的一种实施例的图表。
[0014] 图7是交换机信息(SI)TLV的一种实施例的图表。
[0015] 图8是交换机成员(SM)TLV的一种实施例的图表。
[0016] 图9是用于交换机发现协议的传输状态机(TSM)的一种实施例的图表。
[0017] 图10是用于交换机发现协议的接收状态机(RSM)的一种实施例的图表。

【具体实施方式】
[0018] 本文所描述的分布式组构系统包含多个互连的独立的网络元素。这些网络元素每 个都包含用于在整个分布式组构中路由数据包的一个或多个交换芯片。在下文,这样的网 络元素可以可互换地称为交换机。这些网络元素彼此间按照某些协议来通信。其中的一种 协议是交换机发现协议(SDP),网络元素通过该交换机发现协议(SDP)来检测网络元素何 时加入或脱离分布式组构系统。对分布式组构系统的成员关系的变化的快速检测对分布式 组构系统的正常操作是重要的。另外,SDP有助于选择路径让数据包从一个网络元素到另 一网络元素地穿过分布式组构系统的的过程,并且特别地有助于在旧路径变为不可用时快 速地选择新路径的过程。
[0019] 图1示出了包含经由网络8与管理站4和服务器6通信的数据中心10的网络环 境2的一种实施例。网络8的实施例包括--但不限于--局域网(LAN)、城域网(MAN)和 广域网(WAN),例如,因特网或万维网。在一种实施例中,网络8被配置为第二层(L2) VLAN。 数据中心10 -般是用于容纳支撑作为企业、组织或其他实体的操作的组成部分的应用和 数据的各种计算机、路由器、交换机以及其他相关设备的设施。
[0020] 数据中心10包含经由交换机间的链路(ISL) 16来通信的多个网络元素14。网络 元素14是独立的(单独的)基于数据包的交换机,被配置在一起以形成单个分布式组构系 统,每个交换机都被指定为特定分组(或群集)的成员。每个分组都具有主(或控制者)网 络元素、一个或多个备用或后备网络元素以及一个或多个跟随者网络元素,如同将结合图2 更详细地描述的。数据中心10能够具有多个分组,尽管每个网络元素能够仅为一个分组的 成员。同一分组的成员共用同一组ID (GID)。网络元素14的实施例包括--但不限于-- 核心交换机、接入交换机、组构卡、线路卡和在实体架式交换机中的管理模块。尽管图中仅 示出5个网络元素14,但是在分布式组构系统中的网络元素的数量能够达到数百个或数千 个。
[0021] 数据中心10可以被实现于单个地点或者分布于多个地点。尽管被示于数据中心 10的外部,但是管理站4和服务器6中的任一个(或两者)可以被认为是数据中心10的一 部分。在数据中心10中,功能出现于三个层面上:管理层面、控制层面和数据层面。分组的 管理(例如,配置管理、运行时间配置管理、信息的呈现(展示和显示)、图形生成以及处理 SNMP请求)可出现于管理层面上。控制层面与涉及网络信令和控制的那些功能相关。数据 层面管理数据流。在数据中心10中,管理层面的功能被集中实现于主网络元素,这将在下 文进一步描述。控制层面的功能可以主要实现于服务器6上或者分布于网络元素当中。一 般地,数据层面的功能分布于网络元素14当中。
[0022] 管理站4提供用于管理和控制分布式组构系统的网络交换机14的中心管理点。通 过管理站4,数据中心10的用户或网络管理者与主网络元素通信,以便从单个位置管理可想 得到地具有数千个网络元素的分组。在管理站4上执行的图形用户界面(GUI)应用能够用来 给网络管理者提供关于分布式组构系统的整体网络拓扑的视图。这样的GUI应用的实例是由 纽约的阿尔蒙克市(Armonk, N. Y)的IBM公司提供的Blade Harmony Manager?。
[0023] 另外,管理站4能够经由各种连接之一直接(点到点)或间接地连接至数据中心 10的主网络元素14,这些连接例如有标准电话线路、数字用户线路(DSL)、非对称DSL、LAN 或WAN链路(例如,Tl、T3)、宽带连接(帧中继(FrameRelay)、ATM),以及无线连接(例如, 802. 11(a)、802. 11(b)、802. 11(g)、802. 11 (η))。使用网络协议(例如,Telnet 或 SNMP (简 单网络管理协议)),管理站4能够接入给定的网络元素14的命令行接口(CLI)。
[0024] -般地,服务器6是用于给数据中心10提供一种或多种服务的计算机(或计算机 分组),服务器6的实例包括--但不限于--邮件服务器、代理服务器、DNS服务器以及 运行分布式组构系统的控制层面的控制服务器。为了支持整个网络元素群集的控制层面功 能,服务器6配置有足够的处理能力(例如,具有多个处理器核心)。
[0025] 图2示出了具有包含主(控制者)交换机14-1、备用(后备)交换机14-2以及多 个跟随者交换机14-3、14-4、14-N的多个网络元素14的数据中心10的一种实施例。一般 地,网络元素之一被选择作为主交换机14-1,另一个被指定为备用交换机14-2,而所有其 他交换机都是跟随者。主交换机14-1是整个分布式组构系统的控制中心,而跟随者交换机 是在主交换机14-1的控制之下的任意网络元素,主交换机14-1将控制层面和数据层面的 数据包发送给跟随者交换机14-3、14-4、14-N并且接收来自跟随者交换机14-3、14-4、14-N 的控制层面和数据层面的数据包。在分布式组构系统的正常工作下,备用交换机14-2像跟 随者交换机一样工作,除了备用交换机14-2在主交换机失效的事件中担任主交换机的角 色。除非特别排除在外,否则下面对跟随者交换机的引用包括备用交换机。
[0026] 主交换机14-1和备用交换机14-2各自都经由ISL 16与每个跟随者交换机14-3、 14-4、14-N通信。在不脱离本文所描述的原则的情况下,也能够采用其他互连配置,例如,菊 花链(daisy chain)、全互联(full mesh)、星型(star)和堆栈型(stacked)。在一种实施 例中,网络元素14进行通信所经由的ISL 16是10Gb以太网链路(网络元素14按照IEEE 802. Qgb标准来通信)。
[0027] 在这样的分布式组构系统中的应用优选地具有三种模式:主机模式、备用模式和 成员模式。取决于给定的网络元素的角色,在该网络元素上运行的应用按照相应的模式来 运行。例如,在主交换机14-1上运行的应用按照主机模式来运行。每个应用都能够采取不 同的方式,从而在不同的模式中承担不同的职责。这些应用的示例实现方式包括纯中心化 方式、完全分布式方式以及中心和分布式方式的结合。在网络元素上运行的应用具有在分 布式组构系统中的全部网络元素上的全部数据端口的全局视图。
[0028] 图3示出了包含与存储器22通信的处理器20以及存储于存储器22内的层式软 件24的网络元素14的一种简化实施例。层式软件24包含为每个网络元素14所共用的软 件构件集。简言之,该软件构件集包含用于将多个网络元素14分组在一起以形成单个大型 交换机的协议。通过实现由该软件构件集所提供的协议(在此称为M-DFP或管理分布式 组构协议),网络元素分组能够被连接以形成堆栈式交换机、虚拟交换机或分布式架式交换 机。这个软件构件集还能够用来实现实体架式交换机。一般地,M-DFP软件构件驻留于网 络元素上的那些应用与系统上的SDK(软件开发包)之间的软件栈24内。SDK包含运行时 间工具,例如,Linux内核、开发工具、软件库和框架。
[0029] 层式软件栈24包含路径选择层26、交换机发现协议(SDP)模块28、EL2T(基于以 太网的L2传送)层30、RPC (远程过程调用)模块32、端口映射/宏模块34、DC堆栈模块 36、DC API (应用程序接口)38、交换机附接/拆离(attach/detach)模块40、CP (检查点) 模块42和TFTP (简单文件传输协议)模块44。为在网络元素14当中实现M-DFP所需的通 信能够运行于标准以太网链路、组构连接或者任何专用总线之上。
[0030] 简单概述之,路径选择层(PSL) 26促进了支持SDP与EL2T模块28、30的CPU到CPU 的通信,并且包括到套接字(socket)和数据端口两者的驱动器接口。SDP模块28和PSL 26 合作以确定用以将数据包从本地网络元素发送给远程网络元素的出端口。如同本文所使用 的,术语"本地"和"远程"是相对于正在描述的网络元素而言的。
[0031] 为了确定出端口,SDP模块28维持每个可能的ISL 16的链路状态。另外,SDP模 块保持每个远程交换机的以及每个可能的路径/端口的健康记录。健康记录能够跟踪下列 信息:路径的健康状态,以及在当前间隔内所接收到的SDPDU的数量。主交换机保持全部交 换机(主交换机和跟随者交换机)的健康记录。跟随者交换机仅保持主交换机的记录(一 般地,跟随者交换机不与其他跟随者交换机通信)。
[0032] 对于正常的路径选择,如果当前路径具有"上向"链路状态并且是健康的,则当前 路径是有利的。如果远程网络元素的当前路径不再是健康的或可用的,健康记录用来选择 下一最佳路径。用于选择最佳路径的实例标准是找到具有"上向"链路状态的路径,该路径 已经拥有在最近时段内接收到的最多SDTOU,并且还没有其他模块报告过该路径是不健康 的。在远程网络元素的新路径被确定之后,SDP模块28通知这个新路径的PSL 26。在预定 的间隔之后,健康记录被重置以确保健康记录内的信息是当前的。
[0033] SDP模块28发现网络元素何时加入及脱离分组,这分别称为交换机找到和交换 机离开事件。对网络元素的离开的检测能够使用超龄移出(age-out)机制来实现。在 ISL 16上的链路断开事件在某些条件下同样能够触发交换机离开检测(switch-gone detection)。SDP模块28将交换机找到(J0IN_STACK)和交换机离开(LEAVE_STACK)事件 报告给在同一网络元素上的DC堆栈模块36,以进一步处理。SDP模块28的其他功能是检 查在本地网络元素与其他远程网络元素之间的全部可能路径的ISL 16的健康,并且提供 基于优先级的主机选举机制。
[0034] EL2T层30提供简单L2传输协议,以促进通过在EL2T层30之上的上层协议进行 的通信。在一种实施例中,这些上层协议包括RPC模块32、DC堆栈模块36、CP模块42、TFTP 模块44以及在网络元素14上的全部应用。
[0035] RPC模块32提供基于EL2T层30的且由主交换机14-1上的DC-ΑΡΙ层38用来与 远程网络元素通信的RPC机制。
[0036] 端口映射/宏模块34提供在具有从全局CLI端口到实体器件和端口的映射的层 式软件之上的应用。在与DC堆栈模块36和SDP模块28的合作下,端口映射/宏模块34 保持该映射。
[0037] DC堆栈模块36在同一分组内形成网络元素的"堆栈",从而调整网络元素使得它 们作为单个交换机进行合作。在同一分组内的全部网络元素的DC堆栈模块36使用EL2T 模块30来相互通信,以进行信息交换和堆栈形成。另外,在不同网络元素上的DC堆栈模块 36共同工作,以确保主交换机14-1具有现有网络元素的最新信息(通过HOST-UPDATE事 件)。HOST-UPDATE事件被传递给DC堆栈模块36,以在给定的网络元素的交换机信息已经 改变以及DC堆栈模块36已经接收到该给定的网络元素的JOIN-STACK事件的任何时候提 供信息更新。
[0038] 通过DC-ΑΡΙ层38,在网络元素14上运行的应用能够对网络元素的硬件交换芯片 进行程序调用,以从芯片中检索信息或者设置芯片上的某些参数。这些芯片可以驻留于本 地网络元素上或远程网络元素上。
[0039] 交换机附接/拆离模块40将网络元素上的变化通知给网络元素上的应用,从而给 在层式软件栈24之上的应用提供关于在分组内的全部网络元素上的全部数据端口的全局 视图。
[0040] CP模块42帮助在主交换机14-1上运行的应用以与备用交换机14-2同步每个相 关数据库和状态,为备用交换机到主交换机的失效转移(failover)作准备。
[0041] TFTP模块44提供在EL2T层30之上的传输层,以帮助DC堆栈模块36和应用将来 自主交换机14-1的配置或固件镜像推送给任何跟随者交换机14-3、14-4、14-N。
[0042] 图4A和图4B示出了分别在主交换机14-1内的以及在跟随者交换机14-3 (所谓 跟随者交换机的代表实例)内的软件栈24。在此,每个软件栈24都包含具有各种应用54 的应用层50,这些应用54的实例包括配置应用、CLI应用和系统表(syslogs)应用。双头 箭头52表示在软件栈24内的构件之间的控制流程。
[0043] 在层式软件栈24中,SDP模块28被布置于上方的DC堆栈模块36与下方的路径 选择层26之间。SDP模块28包含交换机发现协议(SDP)、成员跟踪层(MTL)和路径健康维 护(PHM)构件。SDP是运行于共同的L2 VLAN上的、用于在分布式组构系统中发现交换机的 多播协议。在交换机接收到SDP的数据包之后,相关的交换机信息被传递到MTL之内,以保 持成员关系。
[0044] MTL是用于跟踪在同一分组内的当前网络元素成员的以及用于保持全部此类成员 的交换机信息的SDP模块28的数据库层。每个网络元素的交换机信息包括:交换机编号、 交换机的MAC地址、交换机信息(SI)和交换机成员(SM)序列号,以及从远程网络元素接收 到最后一个SDTOU的时间。交换机信息的任何变化都被报告给MTL,以进行跟踪。当ISL 16失效时,经由该链路获知的交换机信息被从MTL中清除。为了帮助检测交换机离开事件, MTL实现了超龄移出机制,使用定时器来"超龄移出"远程网络元素,只要在规定的时长内没 有接收到来自该网络元素的SDTOU。
[0045] MTL还基于交换机优先级(在由网络元素多播的SDTOU中携带的)来选择分组的 主交换机。在选择之后,所选择的主交换机将交换机成员信息报告给主交换机的DC堆栈模 块36。另外,主交换机的MTL将消息传递给DC堆栈模块36以通知分组内的交换机成员关 系的任何变化,无论是由新发现的网络元素引起的还是由检测到网络元素的离开引起的。
[0046] SDP模块28的PHM构件保持在本地网络元素与全部其他远程网络元素之间的全部 可能路径的健康状态。当接收到来自网络元素的SDPDU时,该网络元素的健康状态同样会 在MTL中进行更新。如同前面所描述的,EL2T 30和PSL 26使用该健康信息来确定用于在 本地网络元素与远程网络元素之间的通信的路径或端口。
[0047] 在启动之后,本地网络元素经由ISL 16周期性地发送"SDP Hello"帧(即, PDU),以对在同一 VLAN内的全部其他对等点(peer)宣布它的存在。响应于接收到"SDP Hello"roU,每个网络元素收集交换机信息并将该信息保持于它的本地数据库(S卩,MTL) 内。在网络元素收集了足够的交换机信息之后,每个网络元素的SDP模块28基于交换机优 先级来选择主交换机(全部网络元素选择同一主交换机)。每个网络元素的SDP模块28将 其收集的交换机信息按照适当的方式传递给在该同一网络元素上的DC堆栈模块36 ;如果 该网络元素是分组的主交换机,则交换机信息被用于堆栈的协调和形成。
[0048] 由SDP模块28发布的数据包被称为交换机数据协议数据单元(SDPDU)。一般地, SDPDU是基于TLV的H)U (协议数据单元)。SDTOU使用四种类型的TLV :协议TLV、组ID (GID) TLV、交换机信息(SI)TLV和交换机成员(SM)TLV。图5示出了包含类型字段62、长度字段 64、0UI (组织唯一标识)字段66、子类型字段68和协议ID字段70的协议TLV 60的一种 实施例。协议TLV 60用来标识H)U的帧类型。类型字段62标识TLV的起始(例如,值= 127);长度字段64指示协议TLV的位长度;0UI字段66保存私有公司ID ;子类型字段68保 存用于标识TLV的类型(在此,指示协议TLV)的值(在此,等于1);而协议ID字段70标 识协议(例如,以太网)。
[0049] 图6示出了用于分组识别的GID TLV 80的一种实施例。在同一 VLAN内的多个网 络元素可以属于不同的分组,并且因此属于不同的虚拟交换机(或虚拟机架hGID TLV 80 包含类型字段82、长度字段84、0UI字段86、子类型字段88和组ID字段90。在类型字段 82内的值标识TLV的起始(例如,值=127);长度字段84指示TLV的位长度;0UI字段86 保存公司ID ;子类型字段88保存值2,以指示该TLV是GID TLV 80 ;而组ID 90标识正传 输的网络元素所属的网络元素分组。
[0050] 图7示出了交换机信息(SI)TLV 100的一种实施例。SI TLV100被用来通告本地 网络元素的交换机信息,并且包含类型字段102、长度字段104、0Π 字段106、子类型字段 108、SI序列号字段110、已确认的SI序列号字段112、已确认的SM序列号字段114,以及用 于携带交换机信息的字段116。类型字段102、长度字段104和0UI字段106的作用与协议 TLV 60和GID TLV 80中的那些类似。在子类型字段108中的值3将该TLV的类型标识为 SI TLV100〇
[0051] SI序列号字段110保存该特定TLV的序列号。序列号响应于TLV内的交换机信 息的任何变化而加1(其例外情况是在字段112U14内的已确认的SI或SM序列号的变化 并不会导致SI序列号的递增)。在一种实施例中,序列号0被用来指示无效的SI ;这通常 指示在更新之前没有接收到SI。具有有效SI的SDPDU应当从不会使用SI序列号0。已确 认的SI序列号字段112保存由本地网络元素发送的且由主交换机确认的交换机信息TLV 的最后序列号。该值如果是由主交换机发送的则被设置为0。主交换机并不使用已确认的 SI序列号字段112来确认接收自成员的SI。相反,主交换机会将SI序列号字段172用于 确认。通常,系统具有多于一个的成员。已确认的SI序列号字段112由成员交换机用来确 认接收自主交换机的SI。已确认的SM序列号字段114保存接收自主交换机的交换机成员 TLV的最后序列号。该字段114仅由成员交换机使用,并且如果由主交换机发送则被设置为 0〇
[0052] 交换机信息字段116包含用于交换机编号118、交换机优先级120、CE/FE(控制 元件/转发元件)类型122、交换机类型124、机架ID 126、端口数128、MAC地址130、UUID 132、ISL位掩码134和标志136的字段。交换机编号字段118保存由正传输的网络元素设 置的交换机编号。交换机优先级字段120保存正传输的网络元素的交换机优先级,该网络 元素能够被用来选择主交换机。CE/FE类型字段122将交换机的类型标识为控制元件(CE)、 转发元件(FE)或两者。交换机类型124标识正传输的网络元素的交换机类型。交换机类 型是交换机的类型;该类型确定交换机的端口配置和端口类型。CE指示控制元件;FE指示 转发元件;只有CE能够是在分布式系统内的主控制者或备用控制者。机架ID 126能够标 识在实体机架内的网络元素的物理位置。端口数128标识端口的数量,MAC地址130保存 MAC地址,UUID字段132保存UUID,而ISL位掩码字段134保存本地ISL端口的位掩码,全 部均关于正传输的网络元素。
[0053] 标志字段136具有用于正传输的网络兀素的1位字段138,用于表不它是主交换 机,并且具有用于正传输的网络元素的1位字段140,用于表示它是备用交换机。
[0054] 图8示出了(仅由主交换机传输的)交换机成员(SM)TLVl50的一种实施例。主 交换机使用SM TLV 150将主交换机已经针对同一网络元素分组而收集的全部成员信息通 知给跟随者交换机。SMTLV 150包含类型字段152、长度字段154、0UI字段156、子类型字 段158、SM序列号字段160、主交换机编号字段162、备用交换机编号字段164、用于标识由 SM TLV携带的条目数的字段166,以及用于携带成员关系信息的字段168。在成员关系信息 字段168内的每个条目都包含交换机编号字段170、SI序列号字段172和交换机MAC地址 174。
[0055] 类型字段152、长度字段154和0UI字段156的作用与协议TLV 60、GID TLV 80和 SI TLV 100的那些类似。在子类型字段158内的值4将TLV的类型标识为SM TLV 150。SM 序列号字段160保存该特定的SM TLV的序列号。序列号响应于SM TLV的任何变化而加1。 序列号0表示无效的SM TLV ;要么是没有接收到要么是没有更新。具有有效SM的SDPDU在 SM序列号字段内不使用序列号0。主交换机编号字段162保存CE主交换机的交换机编号。 如果主交换机还没有被指定,则该值等于0。备用交换机编号字段164保存备用交换机的交 换机编号。如果备用交换机还没有被指定,则该值等于0。字段166保存由由SM TLV 150 携带的条目数(N)。每个交换机成员条目都包含成员的交换机编号(0,尚未指定)、接收自 成员交换机的最后交换机信息TLV的SI序列号,以及该成员交换机的交换机MAC地址。
[0056] 全部网络元素都会周期性地多播SDroU。对于主交换机,SDPDU包含下列TLV :协 议TLV 60、GID TLV 80、交换机信息TLV 100和交换机成员TLV 150。对于全部跟随者交 换机,每个SDPDU都包含:协议TLV 60、GID TLV 80和交换机信息TLV100。SDPDU的数据 包格式包含ECP (边缘控制协议)报头(例如,以太网类型(Ethertype)),随后是协议TLV 60、GID TLV80、SI TLV 100,以及在主交换机的情形中,随后是SM TLV 150。ECP是在用于 由VDP协议所需的PDU传输的802. IQbg中定义的协议。
[0057] 在SDPDU的处理中,SDP模块28具有两个状态机:传输状态机(TSM) 200和接收状 态机(RSM)250。图9示出了用于SDP的TSM 200的一种实施例。TSM 200控制着网络元素 用以发布SDFOU的过程。SDPDU的传输能够发生于两种不同的模式中:快速传输模式和慢 速传输模式;快速传输模式具有比慢速传输模式快的传输速率。TSM 200的目标是在分布 式组构系统(即,全部网络元素和相关的ISL)已经变得稳定时通过进入慢速传输模式而降 低用来运行SDP的CPU开销,以及响应于任何检测到的变化而通过进入快速传输模式来使 交换机发现加速。SDPDU的重传速率在主交换机与跟随者交换机已经完全交换了分组内的 全部成员的当前交换机信息之后减慢。重传速率同样能够在主交换机或跟随者交换机对其 所传输的SDPDU没有了进一步改变的任何时候减慢。
[0058] TSM 200在下列事件发生时进入快速传输模式:(1)网络元素启动,(2)TLV改变 (例如,主交换机、备用交换机或跟随者交换机改变;或者,交换机信息超龄移出),(3)主交 换机已经将交换机成员TLV内的已确认的SI序列号设置为0 (由主交换机用来立即请求来 自远程网络元素的应答的机制),⑷当前多播路径失效(为SMAC学习所需),以及(5)当 主交换机失效转移发生时。例如,在发生主交换机失效的事件时,备用交换机担任新的主交 换机的角色。其他交换机最终会检测到该变化并丢弃从旧的主交换机处获知的(通过交换 机成员TLV 150获得的)全部交换机信息。该"TLV改变"事件促使全部交换机进入快速传 输模式。作为另一实例,远程交换机信息TLV 100的变化会触发主交换机上的交换机成员 TLV改变。因而,新交换机的加入促使主交换机进入快速传输模式。但是,主交换机进入快 速传输模式不会触发跟随者交换机进入快速传输模式。
[0059] TSM 200包括空闲状态202、TLV置零状态204、快速传输状态206、传输状态208、 慢速传输状态210、转至慢速传输状态212、TLV置1状态214以及转至快速传输状态216。 三种状态被认为是稳定的状态:空闲状态202 ;快速传输状态206,在该快速传输状态206 中SDPDU按照快传输速率来传输;以及慢速传输状态210,在该慢速传输状态210中SDTOU 按照慢传输速率来传输。具有两个设定的一个传输定时器能够被用来实现两种传输速率: 一个设定用于快速传输模式(例如,1秒的间隔),而另一个设定用于慢速传输模式(例如, 30秒的间隔)。
[0060] 从状态到状态的转变受由TSM 200保持的某些变量的值影响。在一种实施例中, 变量被称为"RETRIAL"和"LOCAL-FAST-XMIT"。RETRIAL变量含有最后一个SDTOU的传 输数(换言之,未改变的SDTOU的连续传输,这表明收敛稳定性)。LOCAL-FAST-XMIT变 量是用于指示TSM 200当前是否处于快速传输模式的布尔量(Boolean)。某些参数的值 还会影响TSM 200的操作。在一种实施例中,这些参数被称为"FAST-XMIT-INTERVAL"、 "SLOW-XMIT-INTERVAL" 和 "SL0W-XMIT-THRESH0LD"。FAST-XMIT-INTERVAL 参数的值控制 着在快速传输模式中的传输定时器。默认值将传输定时器设置为1秒。如果该值等于〇, 则没有SDPDU传输发生。SLOW-XMIT-INTERVAL参数的值控制着在慢速传输模式中的传输 定时器。默认值将传输定时器设置为30秒。如果该值等于0,则没有SDPDU传输发生。 SLOW-XMIT-THRESHOLD参数控制着TSM何时转变为慢速传输模式,S卩,RETRIAL变量何时超 过该阈值,表示同一 SDTOU的给定数量的连续传输。对于主交换机,默认阈值为10 ;对于跟 随者交换机,默认阈值为5。
[0061] 6类事件能够触发TSM 200内的状态转变:网络元素启动;网络元素关闭;TLV改 变;定时器到期;主交换机请求转至快速传输模式(因此,该事件能够仅发生于跟随者交换 机上);以及"TLV同意"事件(由RSM 250触发)。TSM 200在TLV同意事件发生时进入慢 速传输模式。TLV同意事件表示:1)对于主交换机,本地序列号(SI和SM两者)已经由全 部跟随者交换机确认,并且主交换机没有遇到接收自全部跟随者交换机的远程SI序列号 的改变;以及2)对于每个跟随者交换机,其本地SI序列号已经由主交换机确认,并且跟随 者交换机没有遇到接收自主交换机的序列号的改变(SI和SM两者)。对于将为有效的TLV 同意事件,序列号无法等于〇。
[0062] 当网络元素初始化时以及当它关闭时,该网络元素进入空闲状态202。当处于空 闲状态202时,RETRIAL变量被设置为等于0,并且LOCAL-FAST-XMIT变量被设置为等于1。 当处于空闲状态202时,如果TLV改变,则TSM 200转变为TLV置零状态204。TLV改变意 指网络元素正对在其下一个SDTOU中的任意一个TLV进行修改。在TLV置零状态204中, TSM 200作出TLV改变,并且一旦完成(upon completion) (UCT)则返回至空闲状态202。当 TLV稳定(即,没有TLV改变)时,TSM 200从空闲状态202转变为快速传输状态206。
[0063] 响应于转变为快速传输状态206,传输定时器停止并重启。当传输定时器到期时, TSM转变为传输状态208。在传输状态208中,RETRIAL变量递增。如果RETRIAL变量的结 果值超过了 SLOW-XMIT-THRESHOLD值,则LOCAL-FAST-XMIT变量被设置为等于0,并且网络 元素发送SDPDU。在发送了 SDPDU之后,如果L0CAL-FAST-TRANSMIT变量等于1,则TSM 200 返回至快速传输状态206;如果等于0,则TSM 200转变为慢速传输状态210。当RETRIAL变 量的值超过SLOW-XMIT-THRESHOLD的值(表示未改变的SDPDU的传输数已经超过了规定阈 值)时,网络元素进入慢速传输模式,以减慢SDPDU的传输,因为全部同级的网络元素 (peer network element)没有更多的改变要作出。
[0064] 当处于快速传输状态206时,如果TLV同意事件在传输定时器到期之前发生,则 TSM 200转变为转至慢速传输状态212 ;或者如果TLV改变事件在传输定时器到期之前发 生,则TSM 200转变为TLV置1状态214。在转至慢速传输状态212中,LOCAL-FAST-XMIT 变量被设置为等于〇,并且TSM 200 -旦完成(UCT)就转变为慢速传输状态210。在TLV置 1状态214中,TLV改变被作出,RETRIAL变量被设置为等于0,并且LOCAL-FAST-XMIT变量 被设置为等于1。一旦完成这些设定,TSM 200返回至快速传输状态206。
[0065] 响应于转变为慢速传输状态210,传输定时器停止并重启,并且按照慢传输速率 来运行。当时传输定时器到期,TSM 200转变为传输状态208。当处于慢速传输状态210 时,如果主交换机在传输定时器到期之前请求较快的传输速率,则TSM 200转变为转至快 速传输状态216 ;或者如果TLV改变事件在传输定时器到期之前发生,则TSM 200转变为 TLV置1状态214。在转至快速传输状态216中,RETRIAL变量被重置(设置为等于0), 并且LOCAL-FAST-XMIT变量被设置为等于1,并且TSM 200 -旦完成(UCT)就转变为传 输状态208。再者,在TLV置1状态214中,TLV被设置,RETRIAL变量被重置为等于0, LOCAL-FAST-XMIT变量被设置为等于1,并且,一旦完成这些设定,TSM 200返回至快速传输 状态206。
[0066] 一般地,SDP主要被用来发现新的交换机,并且,如同前面所描述的,MTL实现了超 龄移出机制(age out mechanism)来检测出交换机何时脱离分布式组构系统。超龄移出机 制被实现于主交换机及其他交换机中。主交换机运行定时器来在其交换机成员TLV中"超 龄移出"远程交换机的SI序列号,只要已经在规定的时长(例如,100秒)内没有接收到相 关的交换机信息TLV。当该SI序列号被超龄移出时,主交换机触发TLV改变,并且因此进入 快速传输模式。在快速传输模式中,信息交换立即发生于主交换机与特定的远程交换机之 间,这从而在例如通过由于未知的原因而将相关的SDPDU丢弃于导线上从而超龄移出发生 的情况下,能够避免触发不必要的交换机离开事件。
[0067] 如果在规定的时长(例如,120秒)内还没有接收到远程交换机的交换机信息 TLV,则所有网络元素都实现另一定时器来去除该远程交换机的交换机信息。当这种情况发 生时,交换机离开事件被检测到,并且通知SDP模块的MTL。当由PSL 26或其他模块通知了 交换机离开时,所获知的该交换机的交换机信息被从MTL中清除(或者标记为"不可用")。 例如,其他模块能够在下列情况下发信号通知路径失效(即,路径不健康):链路断开、由协 议(例如,PSL/EL2T/RPC)检测到的数据包丢失等。
[0068] 用于实现超龄移出机制的两个参数包括SI-AGE-OUT-INTERVAL和 SWITCH-AGE-OUT-INTERVAL。由 SI-AGE-OUT-INTERVAL 参数所保持的值是在交换机成员 TLV 中的用于使远程交换机的SI序列号超龄移出的时间间隔。它的默认值能够是例如100秒。 如果该值被设置为等于〇,则超龄机制被禁用。由SWITCH-AGE-OUT-INTERVAL参数所保持 的值是用于使远程交换机的交换机信息超龄移出的时间间隔。它的默认值能够是例如120 秒。如果该值被设置为等于〇,则该超龄机制被禁用。
[0069] 在一种实施例中,如果用于检测交换机离开事件的唯一方法是通过超龄机制,则 不允许TSM 200进入慢速传输模式;这确保了超龄机制使用较快的定时器速率来检测交换 机离开事件。
[0070] 图10示出了用于SDP的RSM 250的一种实施例。RSM 250控制着由网络元素接 收到的SDTOU的处理。RSM 250包含空闲状态252、接收状态254和处理状态256。空闲状 态252和接收状态254被认为是稳定状态。3类事件能够触发在RSM 200内的状态转变: 启动、关闭以及接收到SDTOU。
[0071] 当网络元素初始化(启动)时以及当它关闭时,该网络元素进入空闲状态252ASM 200从空闲状态252转变为接收状态254。RSM250保持于接收状态254,直到SDPDU被接收 到(或者网络元素断电)。响应于接收到SDTOU,RSM 250转变为处理状态256。在处理状 态256中,跟随者交换机处理在SDTOU中接收到的交换机信息TLV以及接收自主交换机的 交换机成员TLV两者。相比之下,主交换机处理所接收到的交换机信息TLV ( S卩,不是交换 机成员TLV)。
[0072] 另夕卜,当处于处理状态256时,如果TLV同意事件发生,则LOCAL-FAST-XMIT变量 被设置为等于0。如同前面所描述的,在主交换机和跟随者交换机已经接收到了在交换机信 息和交换机成员TLV中的已稳定化的当前信息之后,RSM 250触发TSM 200进入慢速传输 模式。但是,主交换机能够通过将在交换机成员TLV中的该网络元素的相应SI序列号设置 为0而触发网络元素的TSM 200进入快速传输模式。
[0073] 另外,在处理状态256中,如果SM. SI_ACKed (即,在SM中的字段172)等于0,则 RSM 250通知TSM 200移至快速传输状态206。主交换机能够使用该机制来促使网络元素 返回至快速传输模式。网络元素还处理SDPDU数据包,RSM 250 -旦完成就转变回到接收 状态254。
[0074] 本领域技术人员应当意识到,本发明的各方面可以被实现为系统、方法和计算机 程序产品。因而,本发明的各方面可以完全以硬件来实现,完全以软件(包括,但不限于,固 件、程序代码、常驻软件、微代码)来实现,或者以硬件和软件的组合来实现。所有此类实施 例在本文中一般可以称为电路、模块或系统。另外,本发明的各方面还可以采用实现于具有 实现于其上的计算机可读程序代码的一个或多个计算机可读介质内的计算机程序产品的 形式。
[0075] 可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算 机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是--但不限 于--电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算 机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便 携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器 (EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者 上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的 有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0076] 计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号, 其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括--但 不限于--电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是 计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者 传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0077] 计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括--但不限 于--无线、有线、光缆、RF等等,或者上述的任意合适的组合。
[0078] 可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的计算 机程序代码,所述程序设计语言包括面向对象的程序设计语言一诸如Java、Smalltalk、C++ 等,还包括常规的过程式程序设计语言一诸如"C"语言或类似的程序设计语言。程序代码可 以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、 部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。 在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络--包括局域网(LAN) 或广域网(WAN)-连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务 提供商来通过因特网连接)。
[0079] 程序代码可以完全于用户的计算机上执行,部分于用户的计算机上执行,作为独 立式软件包来执行,部分于用户的计算机上且部分于远程计算机上执行,或者完全于远程 计算机或服务器上执行。任何此类远程计算机都可以通过包括局域网(LAN)或广域网 (WAN)在内的任何类型的网络连接至用户的计算机,或者该连接可以连接至外部计算机 (例如,通过使用因特网服务提供商的因特网)。
[0080] 下面将参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图 和/或框图描述本发明。应当理解,流程图和/或框图的每个方框以及流程图和/或框图 中各方框的组合,都可以由计算机程序指令实现。这些计算机程序指令可以提供给通用计 算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些计 算机程序指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程 图和/或框图中的一个或多个方框中规定的功能/动作的装置。
[0081] 也可以把这些计算机程序指令存储在计算机可读介质中,这些指令使得计算机、 其它可编程数据处理装置、或其他设备以特定方式工作,从而,存储在计算机可读介质中的 指令就产生出包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的指令 的制造品(article of manufacture) 〇
[0082] 计算机程序指令还可以被装载到计算机、其他可编程的数据处理装置或者其他器 件上,以促使一系列操作步骤在计算机、其他可编程的数据处理装置或者其他器件上执行, 从而产生计算机实现的过程,使得在计算机或其他可编程装置上执行的指令提供用于实现 在流程图和/或框图的一个或多个方框中指定的功能/动作的处理。
[0083] 附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程 序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以 代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个 用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所 标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以 基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的 是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行 规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的 组合来实现。
[0084] 本发明的各方面可以实现于以半导体制造工艺制造的一个或多个集成电路(1C) 芯片中。1C芯片的制造商能够按照未加工的晶圆形式(在具有多个未封装的芯片的单个晶 圆上),作为裸片,或者按照封装的形式来分发它们。当按照封装的形式时,1C芯片被安装 于单个芯片封装内,例如,具有固定于主板的引线的塑料载体或者其他更高层的载体,或者 被安装于多个封装内,例如,具有表面和/或预埋的互连的陶瓷载体。1C芯片然后与作为中 间产品(例如,主板)的或最终产品的一部分的其他芯片、分立电路元件和/或其他信号处 理器件集成在一起。最终产品能够是包含1C芯片的任何产品,范围包括从电子游戏系统和 其他低端应用到具有显示器、输入设备和中央处理器的高级计算机产品。
[0085] 在不脱离本发明的范围和精神的情况下,本领域技术人员清楚许多修改和变化。 实施例被选择并被描述,以便最佳地解释本发明的原理和实际应用,并且以便使本领域技 术人员能够在具有适合于所能设想到的特定用途的各种修改的各种实施例方面来理解本 发明。
[0086] 本文所使用的术语只是为了描述特定的实施例,而并非旨在限定本发明。如同本 文所使用的,单数形式的"一(a)"、"一个(an)"和"该(the)"意指同样包括复数形式,除非 上下文另有明确说明。还应当理解,术语"包括"和/或"包含"在用于本说明书时指出存 在着所声明的特征、整数、步骤、操作、元件和/或构件,但是并不排除存在或添加一个或多 个其他特征、整数、步骤、操作、元件、构件和/或它们的分组。
[0087] 在下面的权利要求书中的相应结构、材料、动作以及全部方法或步骤加上功能要 件的等价物意指包括用于结合特别声明的其他要求权利的要件来执行功能的任何结构、材 料或动作。关于本发明的描述已经为了说明和描述的目的而给出,但是该描述并非意指按 照所公开的形式来穷尽或限定本发明。
[〇〇88] 虽然本发明已经参照特定的优选实施例进行示出和描述,但是本领域技术人员应 当理解,在不脱离下面的权利要求所定义的本发明的精神和范围的情况下可以于其中进行 在形式和细节方面的各种修改。
【权利要求】
1. 一种分布式组构系统,包含通过交换机间的链路互连的并被指派给同一分组的多个 独立的网络元素,每个网络元素都包含一个或多个交换芯片、处理器以及用于存储由所述 处理器执行的程序代码的存储器,每个网络元素的所述程序代码包含交换机发现协议SDP 模块,每个网络元素的所述SDP模块在执行时使用多个传输速率之一来周期性地多播SDP 数据单元SDTOU,所述多个传输速率包括快传输速率和慢传输速率,由每个网络元素的所述 SDP模块使用的传输速率是所述快传输速率,直到该网络元素的所述SDP模块确定标准已 满足,响应于此由该网络元素的所述SDP模块使用的传输速率改变为所述慢传输速率。
2. 根据权利要求1所述的分布式组构系统,其中所述标准是该网络元素的所述SDP模 块检测到在同一分组内的所述网络元素当中的稳定性。
3. 根据权利要求2所述的分布式组构系统,其中所述多个网络元素包含主网络元素, 并且其中在同一分组内的所述网络元素当中的稳定性在该网络元素的所述SDP模块与所 述主网络元素之间交换的信息已经变稳定时被检测到。
4. 根据权利要求1所述的分布式组构系统,其中所述标准是由该网络元素的所述SDP 模块进行的未改变的SDTOU的连续传输的次数超过阈值。
5. 根据权利要求1所述的分布式组构系统,其中所述网络元素的一个或多个响应于所 接收到的SDPDU而检测在同一分组内的所述网络元素当中的变化并且返回到按照所述快 传输速率来传输SDTOU。
6. 根据权利要求1所述的分布式组构系统,其中每个网络元素的所述SDP模块包含成 员跟踪层MTL构件,所述MTL构件选择所述网络元素之一作为所述分组的主网络元素。
7. 根据权利要求6所述的分布式组构系统,其中每个SDPDU包含协议TLV、分组 ID(GID)TLV以及交换机信息(SI)TLV,并且由所述主交换机传输的每个SDPDU还包含交换 机成员(SM)TLV。
8. 根据权利要求6所述的分布式组构系统,其中每个网络元素的所述SDP模块的所述 MTL构件维持含有所述分组的当前成员关系的数据库。
9. 根据权利要求6所述的分布式组构系统,其中每个网络元素的所述SDP模块的所述 MTL构件采用超龄移出机制来确定网络元素是否已脱离所述分布式组构系统,根据权利要 求1所述的分布式组构系统,其中每个网络元素的所述SDP模块包含路径健康维护(PHM) 构件,每个网络元素的所述SDP模块的所述路径健康维护(PHM)构件维持在该网络元素与 全部其他网络元素之间的全部可能路径的健康状态,以确定待用于在该网络元素与所述其 他网络元素中的每个网络元素之间的通信的路径。
10. -种用于在分布式组构系统中发现指派给同一分组的网络元素的计算机程序产 品,所述计算机程序产品包含: 具有编入其中的计算机可读程序代码的计算机可读存储介质,所述计算机可读程序代 码包含: 配置用于使用多个传输速率之一来周期性地多播SDP数据单元SDPDU的交换机发现协 议SDP模块,所述多个传输速率包括快传输速率和慢传输速率,所述SDP模块还被配置用于 使用所述快传输速率来周期性地多播所述SDTOU,直到标准被满足,并且响应于满足所述标 准,将传输速率改变为所述慢传输速率。
11. 根据权利要求11所述的计算机程序产品,其中所述标准是所述SDP模块检测到在 同一分组内的所述网络元素当中的稳定性。
12. 根据权利要求12所述的计算机程序产品,其中所述多个网络元素包含主网络元 素,并且其中在同一分组内的所述网络元素当中的稳定性在该网络元素的所述SDP模块与 所述主网络元素之间交换的信息已经变稳定时被检测到。
13. 根据权利要求11所述的计算机程序产品,其中所述标准是由该网络元素的所述 SDP模块进行的未改变的SDTOU的连续传输的次数超过阈值。
14. 根据权利要求11所述的计算机程序产品,其中所述SDP模块还被配置用于响应于 所接收到的SDPDU而检测在同一分组内的所述网络元素当中的变化并且返回到按照所述 快传输速率来传输SDTOU。
15. 根据权利要求11所述的计算机程序产品,其中所述SDP模块还包含配置用于选择 所述网络元素之一作为所述分组的主网络元素的成员跟踪层(MTL)构件。
16. 根据权利要求16所述的计算机程序产品,其中每个SDPDU都包含协议TLV、分组 ID(GID)TLV以及交换机信息(SI)TLV,并且由所述主交换机传输的每个SDPDU还包含交换 机成员(SM)TLV。
17. 根据权利要求16所述的计算机程序产品,其中所述SDP模块的所述MTL构件还被 配置用于维持含有所述分组的当前成员关系的数据库。
18. 根据权利要求16所述的计算机程序产品,其中所述SDP模块的所述MTL构件还被 配置用于实现超龄移出机制,以确定网络元素是否已脱离所述分布式组构系统。
19. 根据权利要求16所述的计算机程序产品,其中每个网络元素的所述SDP模块还包 含路径健康维护(PHM)构件,所述路径健康维护(PHM)构件被配置用于维持在所述分布式 组构系统中的给定的网络元素与全部其他网络元素之间的全部可能路径的健康状态,以确 定待用于在该给定网络元素与所述其他网络元素中的每个网络元素之间的通信的路径。
20. -种用于在分布式组构系统中发现指派给同一分组的网络元素的方法,所述方法 包括: 由多个网络元素的每个网络元素使用多个传输速率之一来周期性地多播交换机发现 协议数据单元SDrou,所述多个传输速率包括快传输速率和慢传输速率; 由所述网络元素中的一个或多个网络元素检测在所述分布式组构系统中的稳定性;并 且 由检测到稳定性的所述一个或多个网络元素响应于所检测到的稳定性而将所述传输 速率从所述快传输速率改变为所述慢传输速率。
21. 根据权利要求21所述的方法,其中所述多个网络元素包含主网络元素,并且其中 所述稳定性在检测到所述稳定性的所述一个或多个网络元素与所述主网络元素之间交换 的信息已经变稳定时被检测到。
22. 根据权利要求21所述的方法,其中所检测到的稳定性是超过阈值的未改变的 SDPDU的连续传输的次数。
23. 根据权利要求21所述的方法,还包括响应于所接收到的SDPDU而检测在同一分组 内的所述网络元素当中的变化,并且将传输从所述慢传输速率改变回到所述快传输速率。
24. 根据权利要求21所述的方法,还包括选择所述网络元素之一作为所述分组的主网 络元素。
【文档编号】H04L12/26GK104094556SQ201380007707
【公开日】2014年10月8日 申请日期:2013年1月17日 优先权日:2012年2月2日
【发明者】K·G·坎博, 吕达人, V·潘德伊, N·高什 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1