CN104025513B - 用于数据中心网络中的控制层级的装置和方法 - Google Patents
用于数据中心网络中的控制层级的装置和方法 Download PDFInfo
- Publication number
- CN104025513B CN104025513B CN201280065697.XA CN201280065697A CN104025513B CN 104025513 B CN104025513 B CN 104025513B CN 201280065697 A CN201280065697 A CN 201280065697A CN 104025513 B CN104025513 B CN 104025513B
- Authority
- CN
- China
- Prior art keywords
- network
- controller
- altogether
- forwarding
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/044—Network management architectures or arrangements comprising hierarchical management structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
- H04L41/122—Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/40—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/42—Centralised routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0894—Policy-based network configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0895—Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
数据中心网络,其采用光学网络拓扑结构和光学节点来高效地分配数据中心网络内的带宽,同时降低数据中心网络的物理互连需求。这样的数据中心网络至少部分地基于网络拓扑结构和应用组件拓扑结构来提供控制层级,用于控制并设置数据中心网络内的计算资源,从而增强总体的应用程序性能。
Description
相关申请的交叉引用
本申请要求于2011年11月1日提交的、名称为DATA CENTER NETWORK SWITCHING的美国临时专利申请No.61/554,107的优先权权益。本申请是于2012年6月20日提交的、名称为OPTICAL ARCHITECTURE AND CHANNEL PLAN EMPLOYING MULTI-FIER CONFIGURATIONSFOR DATA CENTER NETWORK SWITCHING的美国专利申请No.13/528,501的部分继续,是于2012年6月20日提交的、名称为OPTICAL JUNCTION NODES FOR USE IN DATA CENTERNETWORKS的美国专利申请No.13/528,211的部分继续。
关于联邦资助研究或开发的声明
--不可用--
技术领域
本公开内容一般涉及数据中心网络架构以及交换技术,并且更具体地,涉及数据中心网络,其可以采用光学网络拓扑结构和光学节点来高效地在数据中心网络中分配带宽,同时降低数据中心网络的物理互连要求。本公开内容还涉及数据中心网络,其至少部分地基于网络拓扑结构和应用组件拓扑结构来提供控制层级,以控制并设定数据中心网络内的计算资源,从而增强总的应用程序性能。
背景技术
近年来,大学、政府、企业以及金融服务实体等等已经日益地依赖于包含服务器计算机(“服务器”)的机架的数据中心网络,来实现用于支持他们特定的操作需求的应用程序(“应用”),包括但不限于:数据库管理应用、文档和文件共享应用、搜索应用、游戏应用以及金融交易应用。这样的数据中心网络通常在包含在其中的服务器以及互连服务器所需要的联网设备的数量方面是扩展的,以适应各个应用的传输需求。
传统的数据中心网络通常具有层级架构,其中,共置在特定机架中的每个服务器经由一个或多个以太网连接而连接到机架顶部以太网交换机(“机架顶部交换机”)。多个这样的顶部机架交换机形成了在本文中被称为“接入层”的结构,其通常是层级网络架构的最低级。该层级的下一较高级在本文中被称为“聚合层“,其可以包括多个以太网交换机(“聚合交换机”)和/或因特网协议(IP)路由器。接入层中的每个机架顶部交换机可以连接到聚合层中的一个或多个聚合交换机和/或IP路由器。该层级的最高级在本文中被称为“核心层”,其通常包括多个IP路由器(“核心交换机”),所述多个IP路由器能够被配置为向数据中心网络提供入口/出口点。聚合层中的每个聚合交换机和/或IP路由器可以连接到核心层中的一个或多个核心交换机,后者进而可以与彼此互连。在这样的传统的数据中心网络中,服务器机架、接入层中的机架顶部交换机、聚合层中的聚合交换机/IP路由器以及核心层中的核心交换机之间的互连,通常是使用点对点以太网链路实现的。
虽然已经采用了如上面所描述的那样的传统的数据中心网络来满足许多大学、政府、企业和金融服务实体的操作需求,但是这样的传统的数据中心网络存在缺点。例如,在数据中心网络中,未共置在同一机架中的服务器之间的数据通信可能遭受过大的延迟(在本文中也被称为“时延”),所述延迟是由数据沿着网络的层级架构“向上”、“向下”和/或“跨越”该层级结构进行传播时数据可能需要遍历的众多交换机和/或路由器所引起的。这些服务器之间的数据通信还可能在数据中心网络的各个交换机和/或路由器内遭受由于过多的节点和/或链路使用而引起的时延。此外,由于可能采用多条路径来在数据中心网络内将广播和/或多播数据传递给不同的目的地,所以这样的广播和/或多播数据可能遭受过大的时延倾斜(latency skew)。随着数据中心网络和/或其负载的规模的增加,可能加剧这样的时延和/或时延倾斜。
另外,传统的数据中心网络通常包括网络管理系统,其采用配置数据来对数据中心网络内的计算资源进行适当的分配。然而,这样的配置数据常常缺少上下文信息,例如在可用计算资源方面应当如何配置数据中心网络的拓扑结构来实现期望等级的应用性能。例如,这样的网络管理系统可以采用开放式虚拟化格式(在本文中也称为“OVF标准”)来有助于对这些计算资源的控制和设定。然而,OVF标准通常缺少与网络拓扑结构相关的上下文信息,并且因此可能不能确保为期望的应用性能等级适当地设定可用的计算资源。结果是,可能进一步加剧时延、数据瓶颈等等的问题,从而减慢或者阻止了数据在数据中心网络内的移动。
因而,期望具有避免上面描述的传统数据中心网络的至少一些缺点的数据中心网络架构。
发明内容
根据本公开内容,公开了数据中心网络,其可以采用光学网络拓扑结构和光学节点来高效地在该数据中心网络内分配带宽,同时降低该数据中心网络的物理互连要求。这样的数据中心网络至少部分地基于网络拓扑结构和应用组件拓扑结构来提供控制层级,以控制并设定数据中心网络内的计算资源。
在一个方案中,数据中心网络架构可以包括一个或多个物理或逻辑光学环形网络。每个光学环形网络包括多个光学节点,其中,至少两个光学节点中的每一个具有相关联的本地共驻控制器。所述数据中心网络架构还包括:一个或多个中央控制器;零个、一个或多个起主导作用的中央控制器;功能组件,在本文中被称为“关联建模组件(affinitymodeling component)”;以及关联-网络拓扑结构数据库。与物理的或逻辑的光学环形网络相关联的每个共驻控制器可通信地耦合到中央控制器中的相应一个。每个共驻控制器用于向通信地耦合到其的相应中央控制器发送一个或多个消息。此外,中央控制器中的每一个用于接收并处理由共驻控制器发送给它的消息,并控制相应的共驻控制器。
每个起主导作用的中央控制器可以通信地耦合到所述中央控制器中的一个或多个。在示例性方案中,起主导作用的中央控制器、中央控制器以及本地共驻控制器可以被配置为提供网络控制的层级。例如,起主导作用的中央控制器可以控制各个中央控制器来执行与光学环形网络上承载的网络业务有关的负载平衡。此外,起主导作用的中央控制器和中央控制器均用于从关联-网络拓扑结构数据库接收与关联-网络拓扑结构有关的信息。在接收到关联-网络拓扑结构信息之后,中央控制器结合起主导作用的中央控制器可以控制共驻控制器中的一些或全部来在各个光学环形网络上修改和/或实现关联-网络拓扑结构。
在另一方案中,关联建模组件包括多个功能组件,用于对关联-网络拓扑结构进行建模。在示例性方案中,所述多个功能组件至少可以包括关联单元采集器、网络拓扑结构采集器、关联拓扑结构计算器以及关联-网络拓扑结构计算器。关联单元采集器用于采集与一个或多个关联单元以及它们到物理或逻辑光学网络内的一个或多个物理单元的映射有关的信息。每个这样的关联单元在本文中被定义成应用组件,其可以被虚拟化(例如,虚拟机、虚拟化的存储块等等)或者非虚拟化(例如,物理存储服务器、在硬件平台上运行的非虚拟化软件单元、硬件防火墙、硬件负载平衡器等等)。此外,每个关联单元可以是关联组的成员,所述关联组在本文中被定义为以下各项的集合:服务器或虚拟机(VM)、集群(例如,一组被负载平衡并提供高可用性的服务器)和/或驻留在数据中心(或多个数据中心之间)的应用,所述应用需要持久的互连带宽、低时延、多播或广播服务和/或与其它服务的隔离。网络拓扑结构采集器用于采集与数据中心网络架构的拓扑结构有关的信息。关联拓扑结构计算器用于至少采用以下各项来计算、运算、推导或者获得逻辑拓扑结构(在本文中也被称为“关联拓扑结构”):(1)与关联单元及其到网络内的物理单元的映射有关的信息;(2)与网络拓扑结构有关的信息;和/或(3)与用户的特定的应用需求有关的信息,其中逻辑拓扑结构描述关联组和/或关联单元之间的功能和/或性能驱动的关系。例如,关联拓扑结构可以指定用于描述网络中的多个应用组件之间的通信的策略和属性。
至少使用与网络拓扑结构和关联拓扑结构有关的信息,关联-网络拓扑结构计算器用于形成或者获得考虑了网络拓扑结构和关联拓扑结构两者的关联-网络拓扑结构。关联-网络拓扑结构是一种拓扑结构模型,其表示网络拓扑结构和关联拓扑结构的组合,其可以通过对网络和关联拓扑结构进行逻辑组合(例如,通过逻辑缝合在一起或者覆盖)来获得。例如,关联-网络拓扑结构计算器可以通过以下方式将网络和关联拓扑结构逻辑地缝合在一起:将关联单元绑定到其在网络拓扑结构中的对应部分,在数据中心网络架构内在关联组/单元与物理和/或虚拟化单元之间产生一个或多个逻辑链路。中央控制器用于接收与关联-网络拓扑结构有关的信息,并至少基于接收到的信息,控制一个或多个光学节点以及零个、一个或多个光学接合节点,以在适当时修改网络拓扑结构,用以实现数据中心网络内的关联-网络拓扑结构,从而提供增强级别的应用程序性能和网络使用。
在另一方案中,这样的光学节点可以经由网段在数据中心网络上转发帧,所述网段中的每一个在本文中被定义为网络中的在可应用的OSI模型层(例如层-1、层-2或者层-3)处考虑的从源到目的地的单向链路。可以使用硬件和软件方案(其可以被建模成抽象组件(在本文中也被称为“资源模型”))来构造这样的网段,每一个具有特定的能力、配置、状态和连接。例如,与光学节点相关联的共驻控制器可以用任何适当的表示(例如,诸如XML或JSON之类的结构化文本、或者给定编程语言的二进制对象)来为每一个所支持的硬件平台定义这样的资源模型。共驻控制器可以向中央控制器提供这种资源模型,以允许其理解特定节点以及总体上全部互连的节点中的全部可用网段的能力、配置、状态和连接。此外,共驻控制器可以预先定义将在这些组件中的一些或全部上执行的多个操作,以例如通过将光学节点插入到网络中或者将其端口从网络隔离来控制光学节点。中央控制器可以计算网段的期望拓扑结构、为一个或多个光学节点的各个组件提供适当的配置信息、以及指示共驻控制器在事务的范围内进行所请求的配置改变。在示例性方案中,与一个光学节点相关联的共驻控制器可以用作代理控制组件,用于促进中央控制器与各个光学节点之间的事务处理的编排。例如,中央控制器可以选择与特定光学节点相关联的共驻控制器来至少在给定事务的持续时间内执行代理控制功能。中央控制器可以采用相同的代理控制组件来处理多个并行事务(例如,涉及光学节点的不相交集合的事务)。此外,不需要将代理控制组件包括在涉及给定事务的一个光学节点中。通过指示共驻控制器在事务范围内进行所请求的配置改变,中央控制器可以确保:适当地配置一个光学节点失败将导致在同一事务中所涉及的全部光学节点处移除相关的配置信息。
在另一个方案中,用于在网络中实现一个或多个转发拓扑结构以获得增强的应用程序性能和网络使用的网络节点包括:本地控制器,用于接收一个或多个转发拓扑结构。所述网络具有相关联的拓扑结构和当前网络状态,如本文中所使用的,当前网络状态与以下有关:网络中的全部网段的操作状态,和所述操作状态所涉及的源和目的地,以及通信地耦合到网络上的各个节点的全部主机计算机的端点地址(例如MAC或IP地址)。每个转发拓扑结构标识用于通过网络转发业务的一个或多个网段。本地控制器还用于使用转发拓扑结构来根据当前网络状态确定性地得出网络的一致的端对端转发配置。网络节点还包括分组交换机,其用于根据所述一致的端对端转发配置来通过网络转发业务。
在另一方案中,一种在网络中实现一个或多个转发拓扑结构以获得增强的应用程序性能和网络使用的方法,包括:在与网络上的节点相关联的本地控制器处,接收一个或多个转发拓扑结构;以及由所述本地控制器使用所述转发拓扑结构来根据当前网络状态确定性地得出所述网络的一致的端对端转发配置。所述方法还包括:由与所述节点相关联的分组交换机来根据所述一致的端对端转发配置通过所述网络转发业务。
在另一方案中,所述本地控制器和与至少一个其它网络节点相关联的至少一个其它本地控制器用于接收端对端拓扑结构,以在各个本地控制器处预先设定端对端转发拓扑结构。每个端对端转发拓扑结构是至少部分地基于当前网络状态的。每个本地控制器独立地用于确定性地选择端对端转发拓扑结构中的至少一个,并将其用作初始转发拓扑结构,以及维护未选择的端对端拓扑转发结构作为替换的转发拓扑结构。每个本地控制器还用于响应于网络状态的改变来取消对初始转发拓扑结构的选择,并独立地以及确定性地选择并使用替换的转发拓扑结构中的至少一个,来替换初始转发拓扑结构,其中,在每个本地控制器处选择的替换的转发拓扑结构是相同的替换的转发拓扑结构。
根据随后的本发明的附图和/或具体实施方式,本发明的其它特征、功能和方案将是显而易见的。
附图说明
通过参考以下本发明的具体实施方式并结合附图,将更加全面地理解本发明,在附图中:
图1是根据本公开内容的示例性数据中心网络架构的方框图;
图2是可以用于修改和/或实现图1的数据中心网络架构内的关联-网络拓扑结构的多个示例性功能组件的方框图;
图3是示例性网络拓扑结构的方框图;
图4是根据图3的网络拓扑结构推导出的示例性逻辑关联拓扑结构的方框图;
图5是通过将图3的网络拓扑结构和图4的逻辑关联拓扑结构逻辑地缝合在一起或覆盖来获得的示例性关联-网络拓扑结构的方框图;
图6是示例性数据中心网络的方框图,示出了具有图3的网络拓扑结构的数据中心网络上的节点的集中化控制的示例性含义;
图7是另一示例性数据中心网络的方框图,示出了该数据中心网络上的节点的集中化控制的示例性含义;
图8的图示出了可以在图7的节点的多个操作阶段期间出现的示例性事件序列的时序;
图9a的图示出了示例性物理或逻辑光学环形网络的示例性拓扑结构图;
图9b-9d是组成图9a的拓扑结构图的多个拓扑结构平面的图;
图10a是耦合到示例性物理或逻辑光学环形网络中的多个示例性本地共驻控制器的示例性中央控制器的方框图;
图10b的方框图示出了图10a的中央控制器以及包含图10a的各个共驻控制器的多个光学节点的细节;
图11是操作包含共驻控制器的光学节点的示例性方法的流程图;
图12a是示例性物理或逻辑光学环形网络的方框图,所述网络包括多个示例性光学节点以及多个示例性候选转发树,所述多个示例性候选转发树用于将网络业务流转发到具有指定的目的地地址的主机;
图12b是图12a的光学环形网络的方框图,包括用于将网络业务流从具有指定的源地址的主机转发到具有指定的目的地地址的另一主机的多个示例性候选转发路径;
图13a是可以被映射到预定抽象端点的多个示例性候选转发树的图;
图13b是图13a的多个示例性候选转发树的图,其中,由于节点或链路故障,一些活动的转发树已经被认为是无效的;
图14是适合于中央控制器和与光学环形网络上的多个光学节点相关联的多个共驻控制器之间的基于事务的通信的示例性数据中心网络的方框图;以及
图15a-15c是用于图14的中央控制器和多个共驻控制器的示例性有限状态机的图。
具体实施方式
以下申请的公开内容通过引用方式全部并入本文:2012年___提交的名称为DATACENTER NETWORK ARCHITECTURE的美国专利申请No.___(代理方案号PLEX-004XX);2012年__提交的名称为AFFINITY MODELING IN A DATA CENTER NETWORK的美国专利申请No.__(代理方案号PLEX-005XX);2012年__提交的名称为CONTROL AND PROVISIONING IN A DATACENTER NETWORK WITH AT LEAST ONE CENTRAL CONTROLLER的美国专利申请No.__(代理方案号PLEX-006XX);2011年11月1日提交的名称为DATA CENTER NETWORK SWITCHING的美国临时专利申请No.61/554,107;2012年6月20日提交的名称为OPTICAL ARCHITECTURE ANDCHANNEL PLAN EMPLOYING MULTI-FIBER CONFIGURATIONS FOR DATA CENTER NETWORKSWITCHING的美国专利申请No.13/528,501;以及2012年6月20日提交的名称为OPTICALJUNCTION NODES FOR USE IN DATA CENTER NETWORKS的美国专利申请No.13/528,211。
所公开的数据中心网络可以采用光学网络拓扑结构和光学节点来高效地在该数据中心网络内分配带宽,同时降低数据中心网络的物理互连需求。这样的数据中心网络提供了控制层级,用于至少部分地基于网络拓扑机构和应用组件拓扑结构来控制并设置数据中心网络内的计算资源。对计算资源的这种控制和设置包括:确定数据中心网络的组合的关联-网络拓扑结构;以及控制一个或多个光学节点和零个、一个或多个光学接合节点来在数据中心网络内实现关联-网络拓扑结构,从而提供了增强级别的应用程序性能。
图1示出了数据中心网络100的示例性实施例。如图1中所示的,数据中心网络100包括多个物理或逻辑光学环形网络A、B、C和D。光学环形网络A、B、C和D中的每一个包括多个光学节点,每个光学节点在本文中被定义为网络节点,其可以包括:用于连接到主机计算机或其它附接设备的下行链路端口,可连接到网络内的其它光学节点的上行链路端口以及分组交换机、电路交换机和/或光学交换机,如本文中所描述的。每个光学节点具有相关联的共驻控制器(在本文中也被称为“C2”)。例如,光学环形网络A包括六(6)个光学节点1-6,其分别具有六(6)个相关联的共驻控制器(C2);光学环形网络B包括六(6)个光学节点7-12,其分别具有六(6)个相关联的共驻控制器(C2);光学环形网络C包括五(5)个光学节点13-17,其分别具有五(5)个相关联的共驻控制器(C2);以及光学环形网络D包括五(5)个光学节点18-22,其分别具有五(5)个相关联的共驻控制器(C2)。各个光学节点还可以包括分组交换机和具有多播/广播能力的电路交换机(例如电交叉点或电交叉棒交换机),以增加光学节点以及部署它们的网络的功能,从而允许基于网络业务、应用需求和/或部署需求来转换容量以及降低交换机跳计数。数据中心网络100还包括多个中央控制器108、110、112(本文中也被称为“C3”)、起主导作用的中央控制器106(在本文中也被称为“C4”)、功能组件102(本文中被称为“关联建模组件”)以及关联-网络拓扑结构数据库104。要注意的是,数据中心网络100可以可替换地包括任何其它适当的物理或逻辑网络配置,包括但不限于:线性网络配置、环形网络配置、带弦环形网络配置、多维带弦环形网络配置和/或2维或更高维的圆环面网络配置。还要注意的是,这样的物理或逻辑网络配置可以包括光学节点、非光学节点、耦合到光学网络的节点或者耦合到非光学网络的节点。
与光学环形网络A、B、C和D相关联的共驻控制器(C2)中的每一个可通信地耦合到中央控制器(C3)108、110、112中的相应的一个中央控制器。例如,与光学环形网络A相关联的共驻控制器(C2)中的每一个均可通信地耦合到中央控制器(C3)108,并且与光学环形网络B相关联的共驻控制器(C2)中的每一个可通信地耦合到中央控制器(C3)110。此外,与光学环形网络C相关联的共驻控制器(C2)中的每一个可通信地耦合到中央控制器(C3)112,并且类似地,与光学环形网络D相关联的共驻控制器(C2)中的每一个可通信地耦合到中央控制器(C3)112。每个共驻控制器(C2)可以向可通信地耦合到其的相应中央控制器(C3)发送一个或多个消息。此外,中央控制器(C3)108、110、112中的每一个可以接收并处理共驻控制器(C2)发送给它的消息,并控制相应的共驻控制器(C2)。如图1中所示的,中央控制器(C3)108、110、112中的每一个可以控制包括在光学环形网络A、B、C和D中的一个或多个内的相应共驻控制器(C2)。例如,中央控制器(C3)108可以控制与光学环形网络A相关联的共驻控制器(C2),中央控制器(C3)110可以控制与光学环形网络B相关联的共驻控制器(C2),并且中央控制器(C3)112可以控制与光学环形网络C、D相关联的共驻控制器(C2)。
如图1中进一步示出的,起主导作用的中央控制器(C4)106可通信地耦合到中央控制器(C3)108和中央控制器(C3)110。起主导作用的中央控制器(C4)106用于控制可通信地耦合到它的中央控制器(C3)108、110。例如,起主导作用的中央控制器(C4)106可以控制中央控制器(C3)108、110来执行与在光学环形网络A、B上承载的网络业务有关的负载平衡。此外,起主导作用的中央控制器(C4)106、中央控制器(C3)108、中央控制器(C3)110以及中央控制器(C3)112中的每一个可以从关联-网络拓扑结构数据库104接收与关联-网络拓扑结构有关的信息。在接收到关联-网络拓扑结构信息之后,中央控制器(C3)108、110、112结合起主导作用的中央控制器(C4)106可以控制共驻控制器(C2)中的一些或全部来在各个光学环形网络A、B、C、D上修改和/或实现关联-网络拓扑结构。
关联建模组件102(参见图1)包括用于对关联-网络拓扑结构进行建模的多个功能组件。图2描绘了多个这样的功能组件(与参考标记202、204、206、208相对应,参见图2),它们可以包括在关联建模组件102中。如图2中所示的,多个功能组件可以包括关联单元采集器202、网络拓扑结构采集器204、关联拓扑结构计算器206以及关联-网络拓扑结构计算器208。关联单元采集器202可以采集与一个或多个关联单元以及它们到至少一个网络(例如物理或逻辑光学环形网络A、B、C、D中的至少一个,参见图1)内的一个或多个物理单元的映射有关的信息。每一个这样的关联单元在本文中被定义应用组件,其可以是虚拟化的(例如,虚拟机、虚拟化存储块等)或者可以是非虚拟化的(例如,物理存储服务器、在硬件平台上运行的非虚拟化软件单元、硬件防火墙、硬件负载平衡器等等)。此外,每个关联单元可以是关联组的成员,关联组在本文中被定义为以下各项的集合:服务器或虚拟机(VM)、集群(例如一组被负载平衡并提供高可用性的服务器)和/或驻留于数据中心的应用,所述应用需要持久的互连带宽、低的时延、多播或广播服务和/或与其它服务隔离。
参考图2,网络拓扑结构采集器204可以采集与网络(例如数据中心网络100(参见图1))的拓扑结构(本文中也被称为“网络拓扑结构”)有关的信息。关联拓扑结构计算器206可以至少采用以下来计算、运算、推导或获得用于描述关联组/单元之间的功能和/或性能驱动关系的逻辑拓扑结构(本文中也被称为“关联拓扑结构”):(1)与关联单元及其到网络内的物理单元的映射有关的信息,(2)与网络拓扑结构有关的信息,和/或(3)与对应用性能的特定需求有关的信息。
至少使用与网络拓扑结构和关联拓扑结构有关的信息,关联-网络拓扑结构计算器208可以形成或者获得关联-网络拓扑结构,其将网络拓扑结构和关联拓扑结构都考虑了。关联-网络拓扑结构是表示网络拓扑结构和关联拓扑结构的组合的拓扑结构模型,其可以通过将网络拓扑结构和关联拓扑结构逻辑地缝合在一起或覆盖来获得。例如,关联-网络拓扑结构计算器208可以通过将关联单元绑定到其在网络拓扑结构中的对应部分、产生关联组/单元与数据中心网络100(参见图1)内的物理和/或虚拟化单元之间的一个或多个逻辑链路,来逻辑地将网络拓扑结构和关联拓扑结构缝合在一起。至少一个中央控制器,例如代表性的中央控制器210(参见图2),可以从关联-网络拓扑结构计算器208接收与关联-网络拓扑结构有关的信息,并且至少基于所接收的信息来控制一个或多个光学节点以及零个、一个或多个光学接合节点,并在适当时修改网络拓扑结构,用于实现数据中心网络内的关联-网络拓扑结构,从而提供增强级别的应用程序性能。光学接合节点在本文中被定义为不包括与下行链路和上行链路端口互连的分组交换机的光学节点。这样的光学接合节点可以通过它们的上行链路端口连接到一个或多个其它光学接合点以及连接到一个或多个光学节点。要注意到的是,这样的光学接合节点可以包括或可以不包括下行链路端口(接入端口)。这样的光学接合点还可以通过它们的下行链路端口连接到一个或多个外部交换机或路由器。
下面参考以下示例性例子和图3-6来进一步描述图1的关联建模组件102的操作。在这个例子中,在图3中示出了示例性网络拓扑结构300,并且在图4中示出了示例性关联拓扑结构400。关联拓扑结构400包括第一示例性应用App1 402内的第一多个关联单元以及第二示例性应用App2 404内的第二多个关联单元。
如图3中所示的,网络拓扑结构300包括核心层、聚合层和接入层。网络拓扑结构300还包括多个示例性网络元件,即防火墙/负载均衡器(FW/LB)302、核心层中的核心路由器(CoreRtr1)304、聚合层中的多个聚合服务器(Agg1、Agg2)306、308、以及接入层中的多个机架顶部服务器(TOR1、TOR2、TOR3、TOR4)310、312、314、316。机架顶部服务器310通信地耦合到第一虚拟机(虚拟化服务器1)318和第二虚拟机(虚拟化服务器2)320,并且机架顶部服务器314通信地耦合到第三虚拟机(虚拟化服务器3)328。虚拟机(“VM”)在本文中被定义为一种软件实体,其向应用提供功能并基本上等同于专用的硬件计算平台(例如服务器)的功能。这样的虚拟机一般需要在其所驻留的实际硬件平台上安装监督器(例如,主操作系统)。要注意到,一个或多个虚拟机可以安装在单个监督器的顶部。
第一VM 318与虚拟交换机(vSwitch_host1)330、第一应用的第一网页服务器334(Appl1.W1)以及第二应用的防火墙332(Appl2.FW1)相关联。第二VM 320与虚拟交换机(vSwitch_host2)336、第一应用的第一应用服务器(Appl1.A1)以及第一应用的第二网页服务器340(Appl1.W2)相关联。第三VM 328与虚拟交换机(vSwitch_host1)342、第二应用的网页服务器344(Appl2.W1)以及第一应用的第二应用服务器346(Appl1.A2)相关联。虚拟机交换机(“vSwitch”)在本文中被定义为一种软件实体,其向一组VM和/或其它vSwitch提供联网功能,并且基本上等同与物理电路交换机提供给一组物理机和/或其它物理交换机的功能。要注意的是,vSwitch的不同实现可能具有不同等级的功能,例如,vSwitch的一些实现可能并不实现生成树协议,和/或可能不允许vSwitch到vSwitch的连接。类似地,虽然vSwitch的一些实现在单个监督器的顶部并且被绑定到同一监督器上的VM,但是其它实现包括分布式vSwitch,其可以分布在多个监督器上,和/或可以被绑定到存在于不同监督器上的VM。
要注意的是,参考第一VM 318,防火墙332和第一网页服务器334中的每一个通常通过虚拟网络接口卡(“vNIC”)通信地耦合到虚拟交换机330。类似地,参考第二VM 320,第一应用服务器338和第二网页服务器340中的每一个通常通过vNIC通信地耦合到虚拟交换机336;并且参考第三VM 328,网页服务器344和第二应用服务器346中的每一个通常通过vNIC通信地耦合到虚拟交换机342。vNIC在本文中被定义为一种软件实体,其向虚拟机(VM)提供功能,并且基本上等同于物理网络接口卡(NIC)提供给物理机的功能。
如图3中进一步示出的,机架顶部服务器312通信地耦合到第一应用的第一数据存储322(Appl1.D1)以及第一应用的第二数据存储324(Appl1.D2)。类似地,机架顶部服务器316通信地耦合到第二应用的数据存储326(Appl2.D1)。
如图4中所示的,第一应用App1 402内的第一多个关联单元包括防火墙/负载均衡器302、第一网页服务器334、第二网页服务器340、第一应用服务器338、第二应用服务器346、第一数据存储322和第二数据存储324。此外,第二应用App2 404内的第二多个关联单元包括防火墙332、网页服务器344和数据存储326。例如,参考第一应用App1 402,防火墙/负载均衡器302、第一网页服务器334、第二网页服务器340、第一应用服务器338、第二应用服务器346、第一数据存储322和第二数据存储324可以是关联组403的成员。类似地,参考第二应用App2 404,防火墙332、网页服务器344和数据存储326可以是关联组405的成员。此外,第一网页服务器334和第二网页服务器340可以是关联组406的成员,第一应用服务器338和第二应用服务器346可以是关联组408的成员,并且第一数据存储322和第二数据存储324可以是关联组410的成员。如图4中所示的,关联组406、408、410中的每一个包含在关联组403内。
进一步参考第一应用App1 402,要注意的是,可以为将防火墙/负载均衡器302耦合到关联组406的关联链路412、将关联组406耦合到关联组408的关联链路414以及将关联组408耦合到关联组410的关联链路416,建立一个或多个关联需求。进一步参考第二应用App2 404,还可以为将防火墙332耦合到网页服务器344的关联链路418以及将网页服务器344耦合到数据存储326的关联链路420建立一个或多个关联需求。此外,可以为将关联组403耦合到关联组405的关联链路422建立一个或多个关联需求。这样的关联需求可以包括:(1)通信相关的关联需求,其与带宽、交换机跳变、层-1跳变、时延、多播散布、超量订购、底层网络状态等有关,(2)可靠性相关的关联需求,其与层-2交换机故障、层-3路由器故障、链路故障、单故障点等有关,(3)安全相关的关联需求,其与共享物理机、共享交换机、隔离、通信路径互连等有关,和/或其它适当的关联需求。如本文中采用的,术语“层-1”、“层-2”和“层-3”分别与开放系统互连(OSI)模型中的物理层、数据链路层和网络层相对应。
例如,关于第一应用Appl 402,将防火墙/负载均衡器302耦合到关联组406的关联链路412可以具有可靠性相关的关联需求,其与单故障点(“#SpoF=sensitive”)有关;将关联组406耦合到关联组408的关联链路414可以具有通信相关的关联需求和可靠性相关的关联需求,通信相关的关联需求与跳变有关(“Hops=sensitive”),可靠性相关的关联需求与单故障点有关(“#SpoF=sensitive”);并且将关联组408耦合到关联组410的关联链路416可以具有两个通信相关的关联需求以及一个可靠性相关的关联需求,通信相关的关联需求与带宽(“BW=sensitive”)和跳变(“Hops=bounded(1)”)有关,可靠性相关的关联需求与单故障点有关(“#SPoF=sensitive”)。关于第二应用APP2 404,将防火墙332耦合到网页服务器344的关联链路418可以具有与跳变有关的通信相关关联需求(“Hops=sensitive”)和与单故障点有关的可靠性相关关联需求(“#SpoF=sensitive”),并且将网页服务器344耦合到数据存储326的关联链路420可以具有两个与带宽和跳变有关的通信相关关联需求(“BW=sensitive”)和(“Hops=sensitive”)以及与单故障点有关的可靠性相关关联需求(“#SPoF=sensitive”)。此外,将关联组403耦合到关联组405的关联链路422可以具有与各个关联组403、405之间的共享链路的数量有关的安全性相关关联需求。
参考图2,网络拓扑结构采集器204可以采集与网络拓扑结构300(参见图3)有关的信息。此外,关联单元采集器202(参见图2)可以采集与第一应用App1 402(参见图4)内的第一多个关联单元以及第二应用App2 404(参见图4)内的第二多个关联单元有关的信息。关联拓扑结构计算器206(参见图2)可以至少采用以下来计算、运算、推导或获得关联拓扑结构400(参见图4):(1)与第一和第二多个关联单元及其到网络拓扑结构300内的物理单元的映射有关的信息,(2)与网络拓扑结构300有关的信息,和/或(3)与特定的应用需求有关的信息。
进一步参考图2,关联-网络拓扑结构计算器208可以将网络拓扑结构300(参见图3)和关联拓扑结构400(参见图4)逻辑地缝合在一起或进行覆盖,以获得示例性的组合关联-网络拓扑结构500,如图5中所示的。关联-网络拓扑结构500包括与第二应用App2 404有关的关联拓扑结构400(参见图4)的一部分,其覆盖在网络拓扑结构300(参见图3)之上。要注意到的是,为了清楚说明,从图5的关联-网络拓扑结构500中省略了与第一应用App1 402有关的关联拓扑结构400的一部分。在关联-网络拓扑结构500内,第二应用App2 404的防火墙332对应于与第一VM 318相关联的防火墙332(如链路502所指示的),第二应用App2 404的网页服务器344对应于与第三VM 328相关联的网页服务器344(如由链路504所指示的),并且第二应用App2 404的数据存储326对应于通信地耦合到机架顶部服务器316的数据存储326(如链路506所指示的)。要注意到,在关联-网络拓扑结构500内,关联拓扑结构400(参见图4)的每个关联单元和网络拓扑结构300(参见图3)的每个网络单元在本文中被称为关联-网络节点。此外,链路502、504、506中的每一个在本文中被称为关联链路。
关于将网页服务器344耦合到第二应用App2 404的数据存储326的关联链路420(参见图4),两个与带宽和跳变有关的通信相关关联需求(“BW=sensitive”)和(“Hops=sensitive”)以及与单故障点有关的可靠性相关关联需求(“#SPoF=sensitive”)具有相应的与以下各项关联的关联需求:(1)网络链路NL1,其将机架顶部服务器314耦合到第三VM328,(2)网络链路NL2,其将聚合服务器308耦合到机架顶部服务器314,(3)网络链路NL3,其将聚合服务器308耦合到机架顶部服务器316,以及(4)网络链路NL4,其将机架顶部服务器316耦合到数据存储326。要注意的是,网络拓扑结构300中的每个网络链路(例如,网络链路NL1、NL2、NL3、NL4)、关联拓扑结构400中的每个关联链路412、414、416、418、420、422、以及关联-网络拓扑结构500中的每个相关链路502、504、506在本文中被称为关联-网络链路。
如上面描述的,代表性的中央控制器210(参见图2)可以从关联-网络拓扑结构计算器208接收与关联-网络拓扑结构有关的信息,并且至少基于接收到的信息来控制一个或多个光学节点以及零个、一个或多个光学接合点,以及在适当的时候修改网络拓扑结构以实现数据中心网络内的关联-网络拓扑结构,从而提供增强的应用性能。图6描绘了示例性的数据中心网络600,其示出了中央控制器210对光学节点的这种集中式控制的含义。如图6中所示的,可以从数据中心网络600(参见图6)中有效地移除之前包括在数据中心网络300(参见图3)的聚合层中的聚合服务器306、308。此外,之前包括在数据中心网络300(参见图3)的接入层中的机架上服务器310、312、314、316被布置在数据中心网络600(参见图6)的逻辑环形网络602中。例如,逻辑环形网络602可以被实现成逻辑光学环形网络。此外,机架上服务器310(及其关联的VM 318、320)、机架上服务器312(及其关联的数据存储322、324)、机架上服务器314(及其关联的VM 328)以及机架上服务器316(及其关联的数据存储326)中的每一个可以被实现成逻辑光学环形网络上的光学节点。
图7描绘了另一示例性的数据中心网络700,示出了中央控制器(C3)708对多个光学节点710.1-710.n以及光学接合节点712的集中式控制的含义。如图7中所示的,中央控制器(C3)708可以通过控制器接口726从关联-网络拓扑结构数据库704接收与关联-网络拓扑结构有关的信息。中央控制器(C3)708还可以通过控制器接口724接收与补充的非关联-网络配置706有关的信息。例如,起主导作用的中央控制器(C4)可以是与补充的非关联-网络配置有关的这样的信息的来源。这样的补充的非关联-网络配置可以对应于网络操作偏好,网络操作偏好是根据关联拓扑结构单独指定的,例如,对于一组特定的链路,使链路使用率低于给定阈值、根据时间调度来对特定网络业务(例如,数据分组或帧)流进行优先级化。
进一步如图7中所示的,光学节点710.1-710.n被布置在逻辑光学环形网络702上。光学节点710.1-710.n中的每一个包括通信地耦合到中央控制器(C3)708的共驻控制器(C2),例如,中央控制器(C3)708可以提供像中央控制器(C3)108、110、112(参见图1)所提供的功能那样的功能。光学节点710.1-710.n中的每一个还可以包括交换机(例如,分组交换机、分组交换机和交叉点交换机、或者分组交换机和交叉棒交换机)以及转发信息库(FIB)。具体地,与光学节点710.1-710.n相关联的共驻控制器(C2)分别通过控制器接口711.1-711.n通信地耦合到中央控制器(C3)708。类似地,光学接合节点712通过控制器接口730通信地耦合到中央控制器(C3)708。例如,光学节点710.1-710.n可以具有去往中央控制器(C3)708的层2或层3连接。例如,每个光学节点可以采用通过交换机结构的带内管理或者带外管理。光学接合节点712可以被带内或带外管理。
此外,与各个光学节点710.1-710.n(参见图7)相关联的共驻控制器(C2)中的每一个通过公共控制信道(即,监督信道734)通信地耦合到光学环形网络702上的一个或多个邻近的共驻控制器(C2),而不需要将任何控制业务与数据平面混合。例如,共驻控制器(C2)可以采用监督信道734来至少执行以下示例性任务:(1)检测不正确的接线和/或光纤连接(例如“东到东”而不是“东到西”);(2)帮助定位物理接线和/或光纤中断;(3)获知光学环形网络702上的光学节点710.1-710.n的拓扑结构(例如,共驻控制器(C2)可以交换邻居到邻居的连接信息,其允许共驻控制器(C2)建立监督信道734的拓扑结构或其部分段,并且通过推理链建立光学环形网络702上的光学节点710.1-710.n的拓扑结构;(4)确定在本文中被称为“逻辑中断”的事物的布置(例如,共驻控制器(C2)可以确定逻辑中断的布置,并且在需要的时候移动逻辑中断,如下文进一步描述的,这样的逻辑中断通常与光学环网络703的光纤中的上一次已知物理中断邻近);(5)传播实时的光学环网络连接和/或断开连接通知;(6)获知MAC地址/IP地址条目(例如,共驻控制器(C2)可以获知表示附接到光学节点710.1-710.n的接入端口的主计算机(“主机”;例如服务器和/或任何其它适当的网络器件)的全部MAC地址/IP地址,并向其它共驻控制器(C2)通告MAC地址/IP地址,使得它们可以确定每个MAC地址/IP地址可以如何被到达);(7)移除或更新MAC地址/IP地址条目;以及(8)传播共享的配置信息。
数据中心网络700(参见图7)进一步包括光学接合节点712,用于将网络700与网络的其余部分714互连起来。光学接合节点712可以具有相关联的共驻控制器(本文中也被称为“J-C2”)。光学接合节点712可通信地耦合到光学环形网络702上的光学节点710.1-710.n中的至少一个,例如光学节点710.n。光学接合节点712还通信地耦合到网络的其余部分714中的一个或多个其它节点。如在图7中所示的,共驻控制器J-C2经由控制器接口730通信地耦合到中央控制器(C3)708,并经由控制器接口731通信地耦合到与光学节点710.n相关联的共驻控制器(C2)。在数据中心网络700中,中央控制器(C3)708可以至少基于与关联-网络拓扑结构和/或将至少在光学环形网络702上运行的一个或多个应用有关的一个或多个需求和/或约束,来向与各个光学节点710.1-710.n相关联的共驻控制器(C2)以及与光学接合节点712相关联的共驻控制器(J-C2)提供指令。此外,每一个共驻控制器(C2、J-C2)可以通过为能够以解集中化方式执行的一个或多个功能提供处理能力来支持中央控制器(C3)708。各个共驻控制器(C2、J-C2)可以独立于彼此而运行,和/或一起运行,以维持至少光学环形网络702的操作。
要注意的是,数据中心网络架构,例如包括数据中心网络700的数据中心网络架构,可以包括零个、一个或多个光学接合节点,例如光学接合节点712。还要注意到的是,部署在逻辑光学环形网络702上的光学节点710.1-710.n可以通过上行链路端口连接到邻近节点,而光学节点710.1-710.n上的其余端口可以用作接入端口,以便互连到其它光学节点、服务器和/或任意其它适当的网络器件上的端口。
这样的光学节点可以经由使用硬件/软件构造的网段通过网络(例如数据中心网络700;参见图7)转发帧,所述硬件/软件包括但不限于:连接器、电缆、光纤、硬件收发机、交叉点、交叉棒、PHY、MAC、TCAM、交换机结构,并且例如被设置有交叉点/交叉棒设置、链路聚合组、VLAN(虚拟局域网)、IP(因特网协议)接口和虚拟路由器。作为总体,这些硬件和软件方面可以被建模成抽象组件(在本文中也被称为“资源模型”),每一个具有特定的能力、配置、状态和连接(例如、硬连线信号路径或软件分层层级)。与光学节点相关联的共驻控制器(C2)可以为每一个所支持的硬件平台用任意适当的表示(例如,诸如XML或JSON之类的结构化文本、或者给定编程语言的二进制对象)来定义这种资源模型。共驻控制器(C2)可以将这种资源模型提供给中央控制器(C3),以允许其理解特定节点以及总计全部互连节点中的全部可用网段的能力、配置、状态和连接。此外,共驻控制器(C2)可以预先定义将在这些组件的一些或全部上执行的、用于通过将光学节点插入到网络中或将其端口与网络隔离来控制光学节点的多个操作。中央控制器(C3)可以计算网段的期望拓扑结构,为一个或多个光学节点的各个组件提供适当的配置信息,以及指示共驻控制器(C2)在事务的范围内进行所请求的配置改变。共驻控制器(C2)可以验证对于资源模型的所请求的配置改变,并在事务提交时展现这些配置改变,或者可以中止事务。
此外,中央控制器(C3)可以将具有伴随着的约束的一个或多个转发拓扑结构提供给光学节点,所述一个或多个转发拓扑结构一旦被接收,将被保留直到中央控制器(C3)移除它们为止。共驻控制器(C2)可以自主地以及确定性地基于所要求网段的可用性将这些转发拓扑结构应用到其关联的光学节点的硬件和软件组件或者从所述硬件和软件组件移除这些转发拓扑结构,从而根据当前网络状态得到网络的一致的端对端转发配置。如本文中采用的,每一个转发拓扑结构标识将使用的一组网段,并且伴随着的约束定义一个或多个数据图,其中转发拓扑结构应用于所述一个或多个数据图以实现端对端转发配置。
可以将给定的转发拓扑结构的一组网段表示成互连列表,每一个具有连接已知的层2实体的开始点和结束点。光学节点合作以监测层2链路状态和结束点信息,并且,如果任何互连被修改为跨越不同的结束点(例如,当层1连接被改变时)或者不能传输帧(例如,由于收发机故障或者带来链路衰弱的其它原因而引起的),那么网络上的全部光学节点会将受影响的互连以及使用它们的全部转发拓扑结构标记为无效。随后,可以通过一个或多个其它现有的转发拓扑结构或者新应用的备份(或替换)转发拓扑结构来发送受影响的数据图。共驻控制器(C2)可以使用监督信道(例如监督信道734)来交换并同步关于互连状态的信息,并且全部光学节点可以使用适当的确定性算法来选择相同的转发拓扑结构。要注意的是,可以通过用特定的硬件和/或软件组件匹配数据图来应用给定的转发拓扑结构的伴随着的约束,如资源模型所定义的。例如,伴随给定转发拓扑结构的约束可以将到达特定进入端口的字段(例如MAC地址、VLAN和/或IP子网)与交换机结构进行匹配,之后它们才被认为是有资格使用特定转发拓扑结构。
在数据中心网络700(参见图7)中,光学节点710.1-710.n中的每一个可以通过多个相继的操作阶段(即,操作阶段零(“S0”)、操作阶段一(“S1”)、操作阶段二(“S2”)以及操作阶段三(“S3”))来执行有序转换。操作阶段S0与被断电的光学节点相对应。操作阶段S1与这样的光学节点相对应:所述光学节点是“自我意识”的,但是与所述光学节点的上行链路以及监督信道734隔离。在操作阶段S1中操作的这种光学节点并不与同任意其它光学节点相关联的共驻控制器(C2)通信,也不与中央控制器(C3)708通信。在操作阶段S2中,光学节点不仅是“自我意识”的,而且还是“对等意识”的。在操作阶段S2中操作的这种光学节点可以通过监督信道734与同其它光学节点相关联的共驻控制器(C2)进行通信,从而在各个光学节点的上行链路端口和/或接入端口中的一个或多个之间交换网络业务,但是并不与中央控制器(C3)708进行通信。在操作阶段S3中,光学节点可以通过监督信道734与同其它光学节点相关联的共驻控制器(C2)进行通信,并且与中央控制器(C3)708进行通信。下面进一步描述光学节点的操作阶段S1、S2、S3。
在光学节点(例如,光学节点710.1-710.n中的一个;参见图7)第一次开启或重新启动时,该光学节点可以进入操作阶段S1。在操作阶段S1中,对于连接到该光学节点的上行链路端口的链路而言,该光学节点是透明的,并且与所述链路隔离,同时互连是在连接到接入端口的链路之间提供的。此外,在操作阶段S1中,可以根据需要和/或需求,对光学节点执行一个或多个自我测试,以确定光学节点是否是可操作的。要注意到的是,在操作阶段S1中,禁止光学节点与连接到其上行链路端口的链路交换网络业务,但是允许该光学节点执行与这种网络业务和/或控制业务有关的在监督信道(例如监督信道734;参见图7)上的双向传递。
还要注意到,在光学节点在其双向传递模式中操作时,通过确保以下可以避免层-2广播域中的所谓“桥环路”:(1)网络上的所有光学节点都操作在操作阶段S0或S1中,并且因此被禁止与连接到它们的上行链路端口的链路交换网络业务;或者(2)网络上的至少一个光学节点操作在操作阶段S2或S3中,并且因而可能已经在监督信道上建立了逻辑中断,和/或可能已将在网络的一个或多个外环上建立了洪水中断(flooding break),以防止这种桥环路的创建。例如,光学节点可以将这种逻辑中断设置在监督信道734(参见图7)上,和/或可以将这种洪水中断设置在光学环形网络702(参见图7)的一个或多个外环上。这种外环通常与光学节点的多个往东的上行链路端口(例如,四(4)个往东的上行链路端口,或者任意其它适当数量的端口)和多个往西的上行链路端口(例如,四(4)个往西的上行链路端口,或者任意其它适当数量的端口)相对应。要注意的是,逻辑中断在其被充分连接时可以被设置在光学环形网络上,并且可以与光学环形网络的光纤中的上一次已知物理中断共置。
例如,光学节点可以通过过滤该光学节点的往东的上行链路端口上两个方向上的网络业务,来将逻辑终端设置在监督信道上,和/或将洪水中断设置在光学环形网络的外环的一个或多个上。具体地,当光学节点将逻辑中断设置在监督信道上时,该光学节点可以对其往东的上行链路端口上的网络业务进行过滤,以禁止全部单播、广播以及多播数据分组或帧的传播,指定的多播数据分组/帧(在本文中被称为“信标帧”)除外,允许所述指定的多播数据分组/帧穿过逻辑中断,以使得网络能够确定监督信道是否有故障。此外,当光学节点将洪水中断设置在外环上时,光学节点可以对其往东的上行链路端口上的网络业务进行过滤,以禁止全部多目的地的数据分组或帧的泛滥,同时允许具有已知目的地的单播数据分组/帧穿过洪水中断。这种多目的地的数据分组或帧在本文中被定义为广播数据分组/帧、多播数据分组/帧以及具有未知目的地的单播数据分组/帧。结果是,在设置这种洪水中断之后,光学节点仍然能够围绕光学环形网络在任意方向上发送具有已知目的地的单播数据分组/帧,并且使得所述单播数据分组/帧成功地到达它们各自的目的地。
当光学节点(例如光学节点710.1-710.n中的一个;参见图7)的关联共驻控制器(C2)实现去往连接到该光学节点的上行链路端口的链路的连接时,光学节点可以进入操作阶段S2。在操作阶段S2中,共驻控制器(C2)可以通过监督信道(例如监督信道734;参见图7)与同网络上的其它光学节点(例如光学环形网络702上的光学节点710.1-710.n)相关联的一个或多个其它共驻控制器(C2)进行通信,而不与数据面混合任何控制业务。
当光学节点从操作阶段S1进入操作阶段S2时,与该光学节点相关联的共驻控制器(C2)可以采用监督信道来与其对等共驻控制器(C2)交换信息,以确定:(1)光学网络的拓扑结构,或光学网络的一部分段的拓扑结构;以及(2)光学网络上的中断(例如,逻辑中断、洪水中断)的设置。光学节点随后可以在连接到其接入端口和上行链路端口的链路之间交换网络业务。要注意到的是,与光学节点相关联的共驻控制器(C2)可以通过以下方式避免创建桥环路:经由监督信道获知中断(例如逻辑中断、洪水中断)的设置;并且根据需要对该光学节点的往东的上行链路端口上两个方向上的网络业务进行过滤。
当光学节点从操作阶段S3进入操作阶段S2(例如,光学节点与中央控制器(C3)之间的通信可能已经被破坏)时,该光学节点的全部接入端口和上行链路端口可能维持可操作。此外,在操作阶段S2中,光学节点可以采用监督信道来维持与光学网络(或光学网络的部分段)上的其它光学节点的同步,直到以下为止:(1)与该光学节点相关联的共驻控制器(C2)被重启,在该情况下该光学节点返回到操作阶段S1;(2)共驻控制器(C2)被认为是非负责的,并且因而被从监督信道上的积极参与中排除(例如,邻近共驻控制器(C2)可以检测到这种情况,从而导致中央控制器(C3)将该光学节点视为是不可运行的;该光学节点最终可以被重启,在该情况下,其将从操作阶段S2返回到操作阶段S1);或者(3)直到该光学节点与中央控制器(C3)之间的连接被建立,从而导致从操作阶段S2转换到操作阶段S3。
要注意的是,改变物理或逻辑光学环形网络上的逻辑中断的设置(例如,响应于光纤切断或者光学节点断电)可能导致光学节点所获知的至少一些端点地址变得过时。例如,在光学节点的往东的端口上获知的MAC地址现在可能是可通过该光学节点的往西的端口到达的。在这样的情况下,当逻辑中断第一次被设置在光学环形网络上或者随后被改变时,如通过监督信道传递的,与这些光学节点相关联的共驻控制器(C2)可以合作,以移除或重新指向MAC地址条目。在操作阶段S2中操作的光学节点可以经由以下提供连接到其接入端口和上行链路端口的链路之间的连接:(1)中央控制器(C3)之前配置的并仍然可操作的任意残留链路;或者(2)外环。此外,在操作阶段S2中操作的这种光学节点可以从故障恢复,例如通过撕裂被认为是不可操作的任意这种残留链路,和/或通过在外环上在替换的方向上转发网络业务。
一旦光学节点(例如,光学节点710.1-710.n中的一个;参见图7)已经成功地建立了与中央控制器(C3)(例如中央控制器(C3)708;参见图7)的连接,该光学节点就可以进入操作阶段S3。如果该光学节点失去了与中央控制器(C3)的联系,那么该光学节点可以从操作阶段S3返回到操作阶段S2。要注意到的是,可以通过监督信道734来传播中央控制器(C3)708的地址,以允许光学环形网络702上的全部光学节点710.1-710.n连接到相同的中央控制器(C3)708。
图8的图示出了可以在光学节点(例如,光学节点710.1-710.n中的一个;参见图7)的各个操作阶段S0、S1、S2、S3期间发生的事件的示例性序列的定时。当光学节点操作在操作阶段S0时,该光学节点是断电的。当光学节点操作在操作阶段S1时,该光学节点在例如时刻T1可以操作在双向传递模式802,并且在从例如时刻T2到时刻T3的间隔中初始化与该光学节点相关联的共驻控制器(C2)的内核装载803。当光学节点操作在操作阶段S2时,该光学节点可以实现与光学环形网络(例如光学环形网络702;参见图7)上的邻近光学节点的连接,其中控制由与同各个光学节点相关联的共驻控制器(C2)提供。此外,当操作在操作阶段S2时,光学节点在例如时刻T4可以经历插入到光学环形网络的外环(参见参考数字804;图8)中。当光学节点操作在操作阶段S3时,光学节点可以实现与光学环形网络上的邻近光学节点的连接以及与中央控制器(C3)(例如,中央控制器(C3)708;参见图7)的连接,从而允许控制由各个共驻控制器(C2)结合中央控制器(C3)来提供。此外,当操作在操作阶段S3时,光学节点在例如时刻T5可以参与本文中被称为“关联优化”的过程(参见参考数字806;图8),在共驻控制器(C2)结合中央控制器(C3)的控制下修改和/或实现光学环形网络上的关联-网络拓扑结构。
如上面所描述的,在数据中心网络700(参见图7)中,光学节点710.1-710.n中的每一个可以通过多个操作阶段(即,操作阶段S0、操作阶段S1、操作阶段S2和操作阶段S3)执行有序的转换。下面参考多个拓扑结构面(即,拓扑结果面零(“P0”)、拓扑结构面一(“P1”)、拓扑结构面二(“P2”)以及拓扑结构面三(“P3”))来进一步描述光学节点的操作阶段S0、S1、S2和S3。
在正常操作中,物理或逻辑光学环形网络上的全部光学节点最终可以进入操作阶段S3,从而建立与中央控制器(C3)的连接,中央控制器(C3)结合与各个光学节点相关联的共驻控制器(C2)可以配置光学环形网络中的各种链路以用于更高效的网络业务流。在操作阶段S3中,中央控制器(C3)还可以确定在本文中被称为光学环形网络的“拓扑结构图”的事物。
图9a示出了中央控制器(C3)所确定的示例性光学环形网络900的拓扑结构图。如图9a中所示的,光学环形网络900包括多个光学节点1-12以及将各个光学节点1-12互连起来的多个链路(例如,以太网跨度(Ethernet span))。要注意的是,将光学节点1-12互连起来的多个链路可以与光学环形网络900的多个外环R1、R2、R3、R4(参见图9a)相对应。光学环形网络900还包括:飞行路径902,其通信地耦合在光学节点3和11之间并穿过光学节点1、2、12;旁路链路904,通信地耦合在光学节点3和12之间;以及旁路链路906,通信地耦合在光学节点1和3之间。要注意的是,这样的飞行路径可以用于在光学环形网络中在任意两个光学节点之间建立相应的信道平面允许的点对点连接,并且可以被实现以使得并不需要任何信号穿过交换机结构而传输到下一光学节点。可以采用这样的飞行路径和旁路链路来在光学环形网络上实现更高效的网络业务转发。
当在光学环形网络900(参见图9a)中发生例如由光学节点1-12中的一个从一个操作阶段转换到另一个操作阶段(例如,由于应用程序崩溃、电源故障等)而引起的或者由互连一对光学节点的链路变得不可操作(例如,由于被中断的收发机、拔出的电缆等)而引起的破坏时,光学环形网络900的拓扑结构可能会受到影响。此外,中央控制器(C3)可能能够或者可能无法将适当的修改应用于受到影响的拓扑结构以便以即时的方式解决该破坏。如上面所描述的,在操作阶段S2和/或S3中,与各个光学节点1-12相关联的共驻控制器(C2)可以介入以修改拓扑结构,或者在操作阶段S1中,共驻控制器(C2)可以控制一个或多个光学节点以双向传递模式进行操作。这样的拓扑结构修改在概念上可以被视为发生在拓扑结构面P0、P1、P2、P3中的一个或多个中。要注意的是,图9a中所示的示例性拓扑结构图是拓扑结构面P0(参见图9b)、拓扑结构面P1(参见图9c)和拓扑结构面P2、P3(参见图9d)的叠加描绘。
图9b描绘了光学环形网络900(参见图9a)中的示例性拓扑结构面P0。如图9b中所示的,拓扑结构面P0包括光学节点8,其被断电并从而操作在操作阶段S0中。此外,在拓扑结构面P0中,外环R1、R2、R3、R4被描绘为虚线,这是因为由于光学节点8被断电从而它们并不贡献任何网络业务。
图9c描绘了光学环形网络900(参见图9a)中的示例性拓扑结构面P1。如图9c中所示的,拓扑结构面P1包括光学节点4和5,它们操作在操作阶段S1的双向传递模式中。此外,在拓扑结构面P1中,外环R1、R2、R3、R4被描绘为实线,例外的是外环R1、R2、R3、R4在光学节点8(参见图9b)的位置附近被描绘成虚线。被描绘成实线的外环R1、R2、R3、R4可以承载网络业务,这是因为光学节点4、5操作在操作阶段S1的双向传递模式中。被描绘为虚线的外环R1、R2、R3、R4并不贡献网络业务,这是因为光学节点8在操作阶段S0中被断电。
图9d是光学环形网络900(参见图9a)中的示例性拓扑结构面P2、P3的叠加描绘。如图9d中所示的,拓扑结构面P2、P3包括光学节点1-3、6、7、9-12,这些光学节点中的每一个都操作在操作阶段S2中或在操作阶段S3中。此外,在拓扑结构面P2、P3中,外环R1、R2、R3、R4被描绘为实线,例外的是外环R1、R2、R3、R4在光学节点8(参见图9b)的位置附近被描绘为虚线,这是由于光学节点8在操作阶段S0中被断电。被描绘为实线的外环R1、R2、R3、R4可以承载网络业务,这是因为光学节点1-3、6、7、9-12每一个都操作在操作阶段S2或操作阶段S3。当光学节点(例如光学节点10)操作在操作阶段S2中时,其对拓扑结构面P2的贡献可以包括针对每一个外环R1、R2、R3、R4的连接的往东的链路和连接的往西的链路。要注意的是,对可用于拓扑结构面P2的外环的选择是可配置的。当光学节点(例如,光学节点3)进入操作阶段S3时,其对拓扑结构面S3的贡献可以由中央控制器(C3)来计算,并且除了不是拓扑结构面P2的一部分的任意剩余外环之外,还可以包括针对每个配置的飞行路径和/或旁路链路的链路。
例如,外环R1、R2、R3、R4可以在拓扑结构面P2和拓扑结构面P3之间进行划分,以分离与各个拓扑结构面P2、P3相对应的网络业务。要注意的是,如果一个帧被允许自由地在拓扑结构面P2和P3之间横穿,那么可能产生不想要的桥环路和/或重复。为了解决这一问题,这种帧当在特定拓扑结构面上行进时可以被标记;例如,所述帧当在拓扑结构面P2上行进时可以被封装。可替换地,拓扑结构面P2和P3可以被维持为物理分离的。要注意的是,可以允许帧在拓扑结构面P1和P2之间自由横穿。下面进一步描述拓扑结构面P2和P3。
拓扑结构面P2在概念上可以被视为包括:(1)第一拓扑结构面P2a,其中,可以应用严格的洪水(flooding)(例如,沿着拓扑结构面P2中的一个或多个外环在东西两个方向上发送多目的地的帧)直到达到逻辑中断为止;以及(2)第二拓扑结构面P2b,其中,共驻控制器(C2)知道目的地MAC地址可到达的光学节点,并且因而可以使用最短的可用逻辑路径(例如,顺时针或逆时针)沿着拓扑结构面2中的外环向所述光学节点发送单播帧。虽然FIB(例如,包括在光学节点710.1-710.n中的每一个中的FIB;参见图7)可以包含或可以不包含适当的转发信息(例如,转发信息可能过时),但是与光学环形网络上的光学节点相关联的共驻控制器(C2)每一个可以维持第一表,在本文中被称为“P2表”,其可以被实现为非易失性表存储器,用于存储与MAC地址、表示层-2广播域的相关联的虚拟域标识符(VDI)、以及相关联的光学节点和端口有关的信息。当光学节点变得意识到新MAC地址/VDI被附接到其接入端口中的一个或多个时,与该光学节点相关联的共驻控制器(C2)可以通过监督信道向其在光学环形网络上的对等共驻控制器(C2)传播与新MAC地址/VDI有关的信息。P2表承担以下任务:在光学节点操作在操作阶段S2中时,维持基本的连接。
与各个光学节点相关联的共驻控制器(C2)每一个可以维持第二表,在本文中被称为“P3表”,其可以被实现为非易失性表存储器,用于存储与光学节点的拓扑结构和传输配置状态有关的信息。这种拓扑结构和传输配置状态可以由中央控制器(C3)来确定,并且可以用于填充FIB(例如,包括在光学节点710.1-710.n中的每一个中的FIB;参见图7)。
图10a描绘了中央控制器(C3)1002,其通信地耦合到分别与物理或逻辑光学环形网络100上的多个光学节点1010、1012相关联的多个共驻控制器(C2)1004、1006。如图10a中所示的,共驻控制器(C2)1004、1006每一个都可以通过监督信道1008与另一个进行通信。此外,每一个共驻控制器(C2)1004、1006包括多个逻辑模块,即,包含拓扑结构表的逻辑模块C21、包含P2表的逻辑模块C22以及包含P3表的逻辑模块C23。
每个共驻控制器(C2)(例如,共驻控制器(C2)1004或1006;参见图10a)可以进入在本文中被称为“冷启动模式”或“暖启动模式”的模式。在共驻控制器(C2)进入冷启动模式时,共驻控制器(C2)可以清除逻辑模块C21中的拓扑结构表(例如,拓扑结构表存储器),并通过在监督信道(例如监督信道1008;参见图10a)上与其对等共驻控制器(C2)进行通信来重新获知拓扑结构表。例如,在光学节点第一次引导时,其相关联的共驻控制器(C2)可以进入冷启动模式,其中,共驻控制器(C2)可以在其控制下重新初始化硬件和/或软件结构。此外,共驻控制器(C2)可以通过在监督信道上交换邻居到邻居的连接信息而重新获知光学环形网络上的光学节点的拓扑结构,并将获知的拓扑结构信息存储在其关联的拓扑结构表中。
如图10a中所示的,共驻控制器(C2)(例如,共驻控制器(C2)1004或1006)在逻辑模块C22中维持P2表。P2表包含共驻控制器(C2)本地地和/或从其对等共驻控制器(C2)获知的全部MAC地址。例如,对等共驻控制器(C2)可以经由监督信道通告经由它们各自的接入端口获知的MAC地址。每个共驻控制器(C2)可以使用P2表来确定如何最佳地到达给定的MAC地址,考虑逻辑中断的可能设置。要注意的是,P2表独立于嵌入在FIB中的MAC地址表。
当共驻控制器(C2)(例如,共驻控制器(C2)1004或1006;参见图10a)进入冷启动模式时,共驻控制器(C2)可以清除P2表,并且重新初始化FIB中的MAC地址表。共驻控制器(C2)还可以本地地重新获知MAC地址,并与光学环形网络上的全部其它共驻控制器(C2)进行通信,以重新获取它们的本地MAC地址信息。当共驻控制器(C2)进入暖启动模式时,共驻控制器(C2)可以相对于FIB中的MAC地址表来审核P2表,使得全部MAC地址在P2表中是已知的。共驻控制器(C2)还可以相对于其对等共驻控制器(C2)的MAC地址表来审核P2表,以确保在P2表中不存在过时的或丢失的条目。例如,当共驻控制器(C2)被重启时(例如,在应用程序崩溃之后),与之相关联的共驻控制器(C2)可以进入暖启动模式,除非发生了连续的故障/错误状况,在这种情况下共驻控制器(C2)可能被迫进入冷启动模式。在暖启动模式中,共驻控制器(C2)可以使得硬件和/或软件结构在其控制下处于完好无损,但是可以审核它们以确保相互的一致性。
如图10a中所示的,共驻控制器(C2)(例如,共驻控制器(C2)1004或1006)在逻辑模块C23中维持P3表。P3表可以存储与以下各项有关的信息:拓扑结构面P3的本地配置以及任意飞行路径和/或旁路链路连同用于移除这种飞行路径和旁路链路的故障状况。共驻控制器(C2)可以从中央控制器(C3)(例如,中央控制器(C3)1002)接收P3表中所包含的信息。
当共驻控制器(C2)1004或1006进入冷启动模式时,共驻控制器(C2)可以清除P3表,并重新建立其到中央控制器(C3)1002的连接。一旦共驻控制器(C2)1004或1006在操作阶段S3中连接到中央控制器(C3)1002,中央控制器(C3)就可以审核P3表,并在需要时采取任意校正动作。当共驻控制器(C2)1004或1006进入暖启动模式时,共驻控制器(C2)可以发起相对于FIB中所包含的信息来对P3表进行审核,以确保:(1)P3表中指定的全部故障状况都已经被处理;以及(2)在FIB中不存在与P3表不一致的条目。一旦中央控制器(C3)1002重新连接到共驻控制器(C2)1004或1006,中央控制器(C3)1002就可以审核P3表,并且在必要时采取任意校正动作(例如,P3表可以被修改或清除)。
要注意的是,当FIB(例如,包括在光学节点710.1-710.n中的每一个内的FIB;参见图7)的转发规则由于例如MAC地址表中的丢失条目而不能处理数据分组的转发时,共驻控制器(C2)可以搜索P3表以获得所述分组的适当的转发信息,并且,如果必要,则可以搜索P2表来获得这样的转发信息。用这种方式,中央控制器(C3)可以使用由中央控制器(C3)计算的拓扑结构面P3来有效地统治共驻控制器(C2)安装的拓扑结构面P2。此外,如果一个条目或多个条目被从P2表和/或P3表中移除,那么共驻控制器(C2)可以搜索FIB以确保其不包含任何基于P2和/或P3表中的过时信息的转发规则。要注意的是,拓扑结构面P2中的转发拓扑结构(“P2转发拓扑结构”)与一组网段相对应,并由共驻控制器(C2)来管理。此外,拓扑结构面P3中的转发拓扑结构(“P3转发拓扑结构)也与一组网段相对应,并且由中央控制器(C3)来管理。
下面参考图11来描述一种操作光学节点的示例性方法,所述光学节点具有相关联的共驻控制器(C2)(例如,共驻控制器(C2)1004或1006;参见图10a、10b)、相关联的P2表以及相关联的P3表。如步骤1002中所描绘的,在光学节点的输入端口接收进入的数据分组,所述进入的数据分组属于指定的分组流并具有指定的目的地(例如,目的地MAC地址)。如在步骤1104中所描绘的,确定所述指定的分组流是否与P3表中的包含用于所述数据分组的适当转发信息的任意条目相匹配。在所述指定的分组流与P3表中的条目相匹配的情况下,将属于所述指定的分组流的数据分组转发到光学节点的输出端口,并将来自P3表中的转发信息添加到转发信息库(FIB)中,如步骤1106中所描绘的。否则,确定所述指定的分组流是否与P2表中的包含用于所述数据分组的适当转发信息的任意条目相匹配,如步骤1108中所描绘的。在所述指定的分组流与P2表中的条目相匹配的情况下,将属于所述指定的分组流的数据分组转发到光学节点的输出端口,并将来自P2表的转发信息添加到转发信息库(FIB)中,如步骤110中所描绘的。否则,生成异常,使得共驻控制器(C2)将数据分组注入(flood)到网络上(例如,拓扑结构面2上),以发现用于所述数据分组的适当转发信息,或者缓冲所述数据分组,直到发现这样的转发信息为止,如步骤1112中所描绘的。如步骤1114中所描绘的,随后由共驻控制器(C2)来确定是否已经发现了用于所述数据分组的适当转发信息。在已经发现了用于所述数据分组的适当转发信息的情况下,共驻控制器(C2)可以用所述转发信息来填充P2表和/或P3表,如步骤1116中所描绘的。此外,将属于指定的分组流的数据分组转发到光学节点的输出端口,如步骤1118中所描绘的。否则,允许共驻控制器(C2)继续将数据分组注入到网络上,如步骤1120中所描绘的。要注意的是,P3表中所包含的转发信息可以包括进入数据分组的源MAC地址和目的地MAC地址两者,从而允许为指定的分组流定义路径拓扑结构。此外,P2表中所包含的转发信息可以包括进入数据分组的目的地MAC地址,从而允许为指定的分组流定义树拓扑结构。
在数据中心网络100(参见图1)中,与光学环形网络A、B、C和D相关联的中央控制器(C3)108、110、112以及共驻控制器(C2)可以合作地运行,以:(1)有效透明地配置光学环形网络A、B、C、D,以及(2)基本自动地操作各个光学环形网络A、B、C、D。起主导作用的中央控制器(C4)106可以协调多个光学环形网络A、B之间的操作。要注意的是,这样的多个光学环形网络可以通过接合节点(层-1)、直接连线或桥(层-2)或者路由器(层-3)来交叉连接(例如,参见图1中布置在光学环形网络A、B之间的交叉连接链路114、116)。
还要注意到,光学环形网络A、B、C、D(参见图1)中的每一个可以由环ID标识,其可以被实现成通用的唯一标识符(UUID)、全局唯一标识符(GUID)或任何其它适当的标识符。光学环形网络A、B、C、D(参见图1)中的每一个还可以通过指定中央控制器(C3)108、110、112中的相应的一个的地址(“C3地址”)来与该中央控制器(C3)相关联。此外,中央控制器(C3)108、110、112中的每一个可以使用环ID来管理一个或多个光学环形网络,以确定给定光学节点属于哪个光学环形网络。下文进一步描述中央控制器(C3)的操作以及共驻控制器(C2)的操作。下文还描述在光学环形网络上分配和传播环ID。
每个中央控制器(C3)一般具有在与之关联的一个或多个光学环形网络上实现更高效的网络业务流的任务。每个中央控制器(C3)还可以修改网络拓扑结构,并实现与之关联的光学环形网络内的关联-网络拓扑结构,以提供增强的应用性能。如本文中所采用的,每个中央控制器(C3)可以至少执行以下任务:(1)分别为一个或多个光学环形网络设置一个或多个环ID,如果对于与光学环形网络上的光学节点相关联的共驻控制器(C2)是未知的话(例如,每个光学环形网络最多可以具有一个与之相关联的环ID);(2)获知相关联的光学环形网络的拓扑结构,并接收拓扑结构更新;(3)获知相关联的光学环形网络上的光学节点的本地接入链路上的全部MAC地址,并接收关于新的和/或过时的MAC地址的更新;(4)总计地(例如以链路负载水平)或者按照特定类别(例如按照VLAN)和/或按照光学节点端口或转发规则来获得光学节点的网络业务统计;以及(5)接收并更新P3表以利用层-1/层-2/层-3转发规则来设置拓扑结构面P3。
在数据中心网络(例如,数据中心网络700;参见图7)中,系统管理员可以对单个光学节点(例如光学节点710.1-710.n中的一个;参见图7)上的中央控制器(C3)(例如中央控制器(C3)708;参见图7)的地址(“C3地址”)进行配置。此外,与光学节点相关联的共驻控制器(C2)可以连接到中央控制器(C3),其可以给光学节点分配环ID。随后光学节点可以通过监督信道(例如监督信道734;参见图7)向光学环形网络(例如,光学环形网络702;参见图7)传播(例如“宣告”)C3地址和环ID。光学环形网络上的全部光学节点随后可以使用C3地址来连接到相同的中央控制器(C3),并使用环ID来向中央控制器(C3)标识它们自己。在某个稍后的时刻,系统管理员可以对光学环形网络内的一个光学节点上的新中央控制器(C3)的C3地址进行配置,从而使得将光学环形网络从之前的中央控制器(C3)切换到新的中央控制器(C3)。
要注意的是,中央控制器(C3)的C3地址可以包括存储在物理或逻辑光学环形网络的各个光学节点上的非易失性信息,并且因此可以跨越一个或多个系统重启而持续。此外,环ID可以包括存储在光学环形网络的各个光学节点上的易失性信息,并且因此在光学节点上可以是空的,直到这样的环ID信息被提供给其共驻控制器(C2)为止。可以由共驻控制器(C2)在光学环形网络上的对等共驻控制器(C2)(例如通过监督信道734;参见图7)或者由中央控制器(C3)将这样的环ID信息提供给共驻控制器(C2)。
当系统管理员对物理或逻辑光学环形网络内的光学节点上的新中央控制器(C3)的C3地址进行配置时,光学节点可以将其自身从之前的中央控制器(C3)断开(如果存在的话),将其自身连接到新中央控制器(C3),并向新中央控制器(C3)提供其当前分配的环ID(其可以为空),其中,新中央控制器(C3)随后可以验证或改写环ID。如果新中央控制器(C3)验证了环ID,那么光学节点可以通过监督信道向光学环形网络上的其它光学节点传播新中央控制器(C3)的C3地址和验证的环ID。
一旦物理或逻辑光学环形网络上的共驻控制器(C2)已经建立了去往中央控制器(C3)的连接,共驻控制器(C2)就可以向中央控制器(C3)提供连接信息,以允许中央控制器(C3)确定光学环形网络的拓扑结构。这样的连接信息可以包括但不限于:一个或多个段属性、一个或多个节点属性和/或一个或多个端口属性。
这样的段属性可以至少包括以下各项:(1)按顺序的活动节点的排序列表,其中,这些活动节点在往东的方向上按照所述顺序出现在监督信道(或其段)上,其中,排序列表中的每一个条目是包含站MAC和IP地址的元组(排序列表可以结束于当前控制逻辑中断的活动节点,逻辑中断阻止其往东的端口;排序列表并不包括已经从监督信道排除的任何活动节点);以及(2)指示光学环形网络是完全连接还是被分割的布尔表达式。
这样的节点属性至少可以包括以下各项:(1)节点类型(例如,接合或光学)以及相关的信息(例如机箱组装/型号、SKU等);(2)站MAC地址(例如主MAC地址);(3)带外管理接口的配置的IP地址;以及(4)监督信道的配置的IP地址。
这样的端口属性至少可以包括以下各项:(1)配置能力(例如可编程交叉点是否存在)、介质信息(例如铜线、波长或可用波长集合)等等;(2)配置状态,例如端口本身的MAC地址、端口是否被去除服务、任意交叉点设置(例如,未知的、传递的、插入的、多点的、测试的)、哪个波长(或其集合)被使能了、层-1和层-2链路状态等等;以及(3)配置补充,例如,可选的对等信息,例如链路另一侧上的邻居节点的MAC地址以及该邻居节点的站MAC地址,所有都是为东西方向单独提供的,等等。
当任意连接信息改变时,共驻控制器(C2)可以向中央控制器(C3)发送异步更新,其包括发生改变的段、节点和/或端口的属性。如果存在需要,那么中央控制器(C3)还可以从共驻控制器(C2)取回连接信息。
另外,中央控制器(C3)可以取回与共驻控制器(C2)所获知的呈现在其本地接入链路上的全部MAC地址有关的信息。这样的信息可以包括:MAC地址、接入端口以及层-2广播域(例如,根据虚拟域标识符(VDI)推导的)。如果MAC地址变为过时的或者被移动到同一光学节点上的不同接入端口,那么共驻控制器(C2)可以向中央控制器(C3)发送更新。
要注意的是,中央控制器(C3)可以例如通过以预定的速率(例如每隔几秒一次)轮询共驻控制器(C2)来获得上行链路端口和接入端口上的网络业务统计和/或主要网络业务流的转发统计。中央控制器(C3)还可以给每个共驻控制器(C2)提供设置规则(例如,配置、转发等)。例如,可以采用服从标准的协议(例如开放流切换协议)来描述FIB(例如,光学节点710.1-710.n中的每一个中所包括的FIB;参见图7)的转发规则,并且可以采用非服从标准的协议来提供用于配置光学节点的配置规则,以实现飞行路径和/或旁路链路。此外,中央控制器(C3)可以在事务范围内配置多个光学节点,使得适当地配置一个光学节点的失败可以导致在参与同一事务的全部光学节点处移除相关的配置信息。此外,通过将边界条件(例如,链路-衰弱(link-down)事件)附接到设置规则,共驻控制器(C2)可以自主地对故障/错误情况采取校正动作。中央控制器(C3)可以指示共驻控制器(C2)设置一个或多个备份拓扑结构,以用于从这样的故障/错误情况中恢复。
图10b描绘了物理或逻辑光学环形网络1000的另一视图,其中,中央控制器(C3)1002通信地耦合到多个光学节点1010、1012。如图10b中所示的,中央控制器(C3)1002包括拓扑结构适应引擎1018。此外,光学节点1010包括共驻控制器(C2)1004和分组/电路交换机1019。同样地,光学节点1012包括共驻控制器(C2)1006和分组/电路交换机1021。分组/电路交换机1019、1021用于通过多个通信信道(“上行链路”)1009通过它们的上行链路端口将各个光学节点1010、1012互连起来。此外,分组/电路交换机1019用于通过至少一个接入链路1011通过其接入端口将光学节点1010连接到至少一个主机1015。类似地,分组/电路交换机1021用于通过至少一个接入链路1013通过其接入端口将光学节点1012连接到至少一个主机1017。
如上面所描述的,中央控制器(C3)(例如中央控制器(C3)1002;参见图10a、10b)可以修改网络拓扑结构,并实现与之相关联的光学环形网络内的关联-网络拓扑结构,用于提供增强的应用性能。在图10a和图10b的光学环形网络1000中,对光学拓扑结构的这种修改以及对关联-网络拓扑结构的实现可以由中央控制器(C3)1002使用拓扑结构适应引擎1018来实现。
如本文中采用的,中央控制器(C3)1002(参见图10b)内的拓扑结构适应引擎1018可以从关联-网络拓扑结构数据库(例如,关联-网络拓扑结构数据库704;参见图7)接收以下信息作为输入:当前网络拓扑结构(例如,电路交换机设置、波长设置、层-1链路状态、层-2链路状态、每个上行链路端口上的对等光学节点的MAC地址(例如,经由链路层发现协议(LLDP)或监督信道获知的)、接入端口上的获知的MAC地址、拓扑结构面P3的当前配置状态以及拓扑结构面P2的当前配置状态);以及关联拓扑结构(例如,关联单元、关联组以及关联链路,包括关联链路需求和属性)。从拓扑结构适应引擎1018的角度来看,关联-网络拓扑结构表示工作负载抽象层。拓扑结构适应引擎1018可以使用工作负载抽象层来访问与关联-网络拓扑结构有关的信息。拓扑结构适应引擎1018还可以接收以下与补充的非关联-网络配置(例如,补充的非关联-网络配置706;参见图7)有关的信息作为输入:各种网络统计(例如聚合的链路级别统计(例如链路使用、字节计数、队列深度等)、针对每个VLAN的链路级别统计、针对每个源/目的地MAC对的链路级别统计、以及针对每个粒度的流级别统计);以及电路交换机配置能力(例如,针对每个SKU交换机的收发机和电路交换机能力列表以及内部连接图)。
此外,拓扑结构适应引擎1018可以提供以下信息作为输出:能够至少影响拓扑结构面P3的底层物理拓扑结构的每个光学节点内的电路交换机(例如,电路交换机1019或1021;参见图10b)的设置;提供给每个光学节点的候选转发树的列表以及每个目的地MAC地址到候选转发树的映射(例如,经由特定的定位(pinning)、哈希函数或任何其它适当的函数);以及提供给光学节点的每个网络业务流的候选转发路径的列表连同那些路径以及每个网络业务流到候选转发路径的映射(例如,经由特定的定位(pinning)、哈希函数或任何其它适当函数)。候选转发树和候选转发路径可以定义转发拓扑结构,其识别用于通过网络转发业务的网段。从光学节点1010、1012的角度来看,这样的转发拓扑结构表示网络抽象层。与各个光学节点1010、1012相关联的每个共驻控制器(C2)1004、1006可以使用网络抽象层来访问与转发拓扑结构有关的信息。
图12a描绘了示例性物理或逻辑光学环形网络1200,其包括多个光学节点1-11和多个示例性的用于将网络业务流转发到具有指定目的地MAC地址的主机A的候选转发树。主机A通信地耦合到光学环形网络1200的光学节点1。此外,应当理解的是,光学节点1-11中的每一个通信地耦合到中央控制器(C3)。如图12a中所示的,第一候选转发树可以包括:第一树段B1,用于有效地将业务流从光学节点8转发到光学节点10;第二树段B2,用于有效地将业务流从光学节点10转发到光学节点11;第三树段B3,用于有效地将业务流从光学节点11转发到光学节点9;以及第四树段B4,用于有效地将业务流从光学节点9转发到光学节点1。使用具有树段B1、B2、B3、B4的第一候选转发树,通信地耦合到光学节点8的主机B可以将网络业务流转发到具有指定目的地MAC地址的主机A。如图12中进一步所示的,第二候选转发树可以包括:第一树段C1,用于有效地将业务流从光学节点6转发到光学节点5;第二树段C2,用于有效地将业务流从光学节点5转发到光学节点3;以及第三树段C3,用于有效地将业务流从光学节点3转发到光学节点1。使用具有树段C1、C2、C3的第二候选转发树,通信地耦合到光学节点6的主机C可以将网络业务流转发到具有指定目的地MAC地址的主机A。
图12b描绘了示例性的光学环形网络1200,其包括多个光学节点1-11以及多个示例性的用于将网络业务流从具有指定源MAC地址的主机D转发到具有指定目的地MAC地址的主机A的候选转发路径。主机D通信地耦合到光学环形网络1200的光学节点9。而且,要理解的是,光学节点1-11中的每一个通信地耦合到中央控制器(C3)。如图12b中所示的,第一候选转发路径可以包括:单个路径段D1,用于有效地将业务流从光学节点9转发到光学节点1。使用具有单个路径段D1的第一候选转发路径,具有指定源MAC地址的主机D可以将网络业务流转发到具有指定目的地MAC地址的主机A。第二候选转发路径可以包括:路径段D2,用于有效地将业务流从光学节点9转发到光学节点11;路径段D3,用于有效地将业务流从光学节点11转发到光学节点10;以及路径段D4,用于有效地将业务流从光学节点10转发到光学节点1。使用具有路径段D2、D3、D4的第二候选转发路径,具有指定源MAC地址的主机D可以将网络业务流转发到具有指定目的地MAC地址的主机A。第三候选转发路径可以包括:路径段D5,用于有效地将业务流从光学节点9转发到光学节点10;路径段D6,用于有效地将业务流从光学节点10转发到光学节点11;以及路径段D7,用于有效地将业务流从光学节点11转发到光学节点1。使用具有路径段D5、D6、D7的第三候选转发路径,具有指定源MAC地址的主机D可以将网络业务流转发到具有指定目的地MAC地址的主机A。
如上面所描述的,当操作在操作阶段S3中时,光学节点可以参与关联优化,从而在它们的相关联的共驻控制器(C2)结合中央控制器(C3)的控制下修改和/或实现网络上的关联-网络拓扑结构。作为这种关联优化的结果,光学节点可以沿着路径拓扑结构(例如,沿着拓扑结构适应引擎1018所提供的一个候选转发路径;参见图10b),或者沿着树拓扑结构(例如,沿着拓扑结构适应引擎1018所提供的一个候选转发树;参见图10b),通过网络来转发网络业务流(“关联流”)。还可以通过网络来转发所谓的“非关联流”,使得某些网络度量被优化(例如,受制于跳计数考虑因素等,网路链路被负载均衡)。
这样的候选转发路径和树连同每个光学节点的适当映射功能可以定义通用的框架,用以实现期望的数据分组转发行为。这样的通用框架可以通过使多个地址/流映射到单个候选转发路径或树来提供MAC地址和关联流的聚合。此外,候选转发路径和树的列表可以通过以下方式来提供粒度负载均衡的方便方式:使用一致的映射函数(例如哈希函数)来给全部光学节点提供相同的候选转发路径/树列表。此外,光学节点可以使用候选转发路径和树列表来自主地从活动转发树/路径切换到备份转发树/路径,例如通过提供利用不相交链路的候选转发路径和树。
因为在典型的数据中心网络中可能存在多达若干成千上百(如果不是更多的话)的唯一MAC地址和关联流,所以中央控制器(C3)(例如,中央控制器(C3)1002;参见图10a、10b)为网络中的每个目的地MAC地址或关联流提供候选转发路径/树可能是有问题的。为了避免必须给数据中心网络中的每个光学节点提供这样的潜在大量的候选转发路径/树,中央控制器(C3)可以定义在本文中被称为针对通信地耦合到其的每个光学节点的“抽象端点”的内容。具体地,中央控制器(C3)可以将适当的源/目的地抽象端点对映射到相应的候选转发路径,并且进一步将适当的目的地抽象端点映射到相应的候选转发树,而不必直接地映射大量的单独的MAC地址和网络业务流。
如本文中采用的,每个抽象端点可以与数据中心网络中的特定节点相对应。此外,每个抽象端点的定义(“端点定义”)可以包括MAC地址集合、关联流集合、由上行链路/接入端口和VLAN ID组成的元组的集合、以及上行链路/接入端口集合。地址/流/元组/端口的这些各种集合进而可以被映射到单独的MAC地址和关联流。要注意的是,中央控制器(C3)以及各个节点能够确定性地知道这样的映射,这是因为可以通过监督信道在节点当中传播MAC地址附接。中央控制器(C3)可以给通信地耦合到其的共驻控制器(C2)提供相应的端点定义,作为网络抽象层的一部分。
结果是,被映射到给定目的地抽象端点的每个转发树可以应用于附接到相应节点的接入端口的全部MAC地址。使用给定的目的地抽象端点,中央控制器(C3)随后可以为每个相应的目的地MAC地址提供候选转发树列表。类似地,被映射到给定的源/目的地抽象端点对的每个转发路径可以应用于附接到相应光学节点对的接入端口的全部MAC地址。使用给定的源/目的地抽象端点对,中央控制器(C3)随后可以为每个相应的源/目的地MC地址对提供候选转发路径列表。
如上面所描述的,光学环形网络上的光学节点可以使用拓扑结构适应引擎(例如拓扑结构适应引擎1018;参见图10b)所产生的候选转发路径和树列表,以自主地从活动转发路径/树切换到备份转发路径/树。为此,每个候选转发路径/树列表可以基于相应列表中的每个活动和备份路径/树的指定权重而被划分成一个或多个活动转发路径/树和一个或多个备份转发路径/树。例如,每个活动转发树(以及每个活动转发路径)可以具有比零(“0”)或者任意其它适当的值大的指定权重,并且每个备份转发树(以及每个备份转发路径)可以具有等于0或任意其它适当的值的指定权重。分配给每个活动转发树(以及每个活动转发路径)的指定权重指示已经被映射到相应抽象端点(例如目的地MAC地址)的各个转发树(或路径)的近似比例。可以使用哈希函数或者任意其它适当的映射函数来完成这样的映射。此外,被映射到相应抽象端点的转发树(和路径)可以根据它们变为“活动”的顺序而被排序。
图13a描绘了可以被映射到预定目的地抽象端点的示例性候选转发树列表1300。如图13a中所示的,多个候选转发树1300包括多个活动转发树1-3以及多个备份转发树4-K。每个活动转发树1-3具有大于0的指定权重(“w”)(例如,分别为w=0.5、0.3、0.2或者任意其它适当的权重),并且每个备份转发树4-K具有等于0的指定权重(“w”)。此外,每个活动转发树1-3以及每个备份转发树4-K具有被指定为“真”或任意其它适当指定的相应的有效性值(“有效”)。要注意的是,这样的有效性值可以替换地被指定为“假”或任何其它适当指定。如本文中所采用的,具有被指定为“真”的有效性值的每个活动/备份转发树(以及每个活动/备份转发路径)提供这样的含义:转发树(或路径)上没有任何节点是不可操作的,以及转发树(或路径)上没有任何将任何可操作节点互连起来的链路是衰弱的。如果转发树(或路径)上的任何节点被认为是不可操作的,或者如果转发树(或路径)上的将任何可操作节点互连起来的任何链路被认为是衰弱的,那么该转发树(或路径)的有效性值被指定为“假”。
图13b描绘了示例性的候选转发树列表1300,其中,一些活动转发树例如由于节点或链路故障已经被认为是无效的(“有效=假”)。如图13b中所示的,多个候选转发树1300现在包括多个活动转发树1-5以及多个备份转发树6-K。活动转发树1-5中的一些(例如,活动转发树2、4、5)具有被指定为“真”的有效性值(“有效”),而活动转发树1-5中的另一些(例如,活动转发树1、3)可以具有被指定为“假”的有效性值。如图13b中进一步所示的,备份转发树6-K中的每一个均具有被指定为“真”的有效性值以及等于0的指定权重(“w”)。此外,具有被指定为“假”的有效性值的活动转发树1、3具有被指定为等于0的权重,而具有被指定为“真”的有效性值的活动转发树2、4、5具有被指定为大于0的权重(例如,分别是w=0.5、0.3、0.2)。参考图13a、13b,可以看到,在发生节点/链路故障时,中央控制器(C3)可以按顺序地确定性地转移活动转发树的指定权重(“w”),并从而允许备份转发树中的一个或多个变为“活动”。还要注意到的是,如果所谓的有效活动转发树的数量变得小于活动转发树的总数,那么可能需要重新归一化活动转发树的指定权重。
参考以下故障情形以及图12a,将要进一步理解候选转发树(例如,与列表1300相对应的候选转发树;参见图13a、13b)的使用。如上面所描述的,图12a描绘了物理或逻辑光学环形网络1200,其包括多个光学节点1-11以及用于将网络业务流转发到具有指定目的地MAC地址的主机A的多个候选转发树。参考图12b,一个这样的候选转发树(“候选转发树B”)包括:第一树段B1,用于将业务流从光学节点8转发到光学节点10;第二树段B2,用于将业务流从光学节点10转发到光学节点11;第三树段B3,用于将业务流从光学节点11转发到光学节点9;以及第四树段B4,用于将业务流从光学节点9转发到光学节点1。例如,候选转发树B可以被认为是“活动”树,并且可以具有指定的等于1的权重(“w”=1)以及被指定为“真”的有效性值(“有效”=真)。另一个这样的候选转发树(“候选转发树C”)包括:第一树段C1,用于将业务流从光学节点6转发到光学节点5;第二树段C2,用于将业务流从光学节点5转发到光学节点3;以及第三树段C3,用于将业务流从光学节点3转发到光学节点1。例如,候选转发树C可以被认为是“备份”树,并且可以具有等于0的指定权重(“w”=0)以及被指定为“真”的有效性值(“有效”=真)。要注意的是,主机A的指定的目的地MAC地址可以包括在抽象端点的端点定义中。
第一故障情形涉及光学环形网络1200(参见图12a)上的光学节点9与光学节点1之间的上行链路的故障。例如,这样的上行链路故障可以与活动候选转发树B的第四树段B4的故障相对应。在该第一故障情形中,可以按照如下方式来处理上行链路故障。光学节点9和光学节点1可以检测与第四树段B4的故障相对应的链路-衰弱事件,并且通过监督信道向光学环形网络1200上的其它光学节点2-8、10、11广播所述链路衰弱事件。一旦光学环形网络1200上的全部光学节点都已经接收到了关于链路衰弱事件的通知,光学节点就可以对与可能已经使用该故障链路的候选转发树相关联的任何抽象端点进行检查。对于使用了该故障链路的每一个候选转发树(例如候选转发树B)而言,如果该故障链路将在操作阶段S2或S3中操作的并且已经被设置了临时配置的两个光学节点(例如,光学节点9、1)互连起来了,那么该候选转发树的有效性值的指定从“真”改为“假”(“有效”=假)。例如,光学环形网络1200上的全部光学节点可以使得候选转发树B无效,其中候选转发树具有的抽象端点包含映射到它的主机A的目的地MAC地址,并且这些光学节点可以将候选转发树B的权重(“w”=1)转移到候选转发树C,从而使得候选转发树C变为“活动”。此外,如果端点定义的任意单元(例如,目的地MAC地址)由于候选转发树B被认为是无效的而映射到新候选转发树,那么应当相应地更新各个光学节点上的适当的拓扑结构表。在适当的时候,光学环形网络1200上的每个光学节点随后可以向中央控制器(C3)发送关于可能已经经历了修改的任意端点定义的通知。
第二故障情形涉及光学节点(例如,光学环形网络1200上的光学节点9;参见图12a)的所谓的“硬”故障。例如,这样的硬故障可能是由于光学节点9丧失电力或者已经从光学环形网络1200断开而引起的。在第二故障情形中,可以按照以下方式来处理光学节点9的硬故障。邻居光学节点(例如,光学环形网络1200上的光学节点8、10;参见图12a)可以检测到多个链路故障,并从而检测到光学节点9已经发生故障。光学节点8、10可以通过监督信道向光学环形网络1200上的其它光学节点1-7、11广播光学节点9的故障。一旦光学环形网络1200上的全部光学节点都已经接收到了关于节点故障的通知,这些光学节点就可以对与可能已经使用了该故障节点的候选转发树相关联的任何抽象端点执行检查。对于使用了该故障节点的每个候选转发树(例如,候选转发树B)而言,如果故障节点在操作阶段S2或S3中操作、被设置了临时的配置并且组成了该候选转发树中的所谓的“非叶”节点,那么将该候选转发树的有效性值的指定从“真”改变为“假”(“有效”=假)。例如,参考图12a,光学节点9、10、11组成候选转发树B中的非叶节点,而光学节点8、1组成候选转发树B中的所谓的“叶”节点。此外,光学环形网络1200上的全部光学节点都可以使候选转发树B无效(所述候选转发树B具有的抽象端点包含映射到其的主机A的目的地MAC地址),并且将候选转发树B的权重(“w”=1)转移到候选转发树C,从而使得候选转发树C变为“活动”。如果端点定义的任何单元(例如,目的地MAC地址)由于候选转发树B被认为无效而映射到新候选转发树,那么应当相应地更新各个光学节点上的适当的拓扑结构表。此外,在适当的时候,光学环形网络1200上的每个光学节点可以向中央控制器(C3)发送关于可能已经经历了修改的任意端点定义的通知。要注意地是,例如,如果光学节点8遭受了硬故障,而不是光学节点9,那么候选转发树B依然被认为是有效的,这是因为光学节点8组成候选转发树B中的叶节点。
如上面所描述的,中央控制器(C3)可以计算网络的期望的拓扑结构、为光学环形网络上的一个或多个光学节点的组件提供适当的配置信息、以及指示与光学节点相关联的共驻控制器(C2)进行需要的配置改变。因为中央控制器(C3)可以使用数据面来与共驻控制器(C2)进行通信,所以这种对光学节点组件的重新配置可能会不时地损害中央控制器(C3)与共驻控制器(C2)之间的连接,并从而损害中央控制器(C3)控制光学环形网络的能力。中央控制器(C3)可以通过在一个或多个事务的范围内向光学节点提供指示,来避免这种潜在的对其控制光学环形网络的能力进行的损害。
图14描绘了示例性数据中心网络架构1400,其适合于在中央控制器(C3)与光学环形网络1401上的多个光学节点1404、1406、1408、140之间实现基于事务的提交模型。如图14中所示的,与各个光学节点1404、1406、1408、1410相关联的共驻控制器(PC2、C2)可以通过监督信道1414与彼此进行通信。此外,各个光学节点1404、1406、1408、1410内的电路交换机(未示出)可以通过多个上行链路1416通过它们的上行链路端口将光学节点互连起来。在数据中心网络架构1400内,中央控制器(C3)1402用于利用中央控制器(C3)1402与光学节点1404、1406、1408、1410之间的事务,来基本同时地在光学节点1404、1406、1408、1410处实现给定的一组配置改变,使得这些光学节点可以本质上用作一个组来展现或拒绝所述给定的一组配置改变。
参考图14,与光学节点1404相关联的共驻控制器(PC2)可以用作代理控制组件,用于便于中央控制器(C3)1402与光学环形网络1401上的光学节点1404、1406、1408、1410之间的事务处理的协调。例如,中央控制器(C3)1402可以选择与光学节点1404相关联的共驻控制器(PC2)来在给定事务的至少持续时间内一直执行代理控制功能。要注意的是,中央控制器(C3)1402可以采用相同的代理控制组件来处理多个并行事务(例如,涉及光学节点的不相交集合的事务)。还要注意的是,代理控制组件不需要包括在参与特定事务的一组光学节点中。
在与光学节点1404、1406、1408、1410(参见图14)执行基于事务的通信时,中央控制器(C3)1402可以发送或接收至少以下示例性消息:(1)“Query-to-Commit”(中央控制器(C3)可以向各个共驻控制器(C2)发送的用于评估临时配置的消息);(2)“Query-to-CommitACK”(共驻控制器(C2)可以直接向中央控制器(C3)发送的用于指示对Query-to-Commit消息的有条件接受的响应);(3)“Query-to-Commit NACK”(共驻控制器(C2)可以直接向中央控制器(C3)发送的用于指示对Query-to-Commit消息的拒绝的响应—故障指示可以包括在该消息中);(4)“Commit”(中央控制器(C3)可以向代理控制组件发送的用于提交事务的消息—其可以包括在该事务下之前发出Query-to-Commit消息的共驻控制器(C2)的数量);(5)“Abort”(中央控制器(C3)可以向代理控制组件发送的用于中止事务的消息);(6)“Commit ACK”(代理控制组件可以向中央控制器(C3)发送的用于指示事务被成功提交并不再可撤销的响应);(7)“Commit NACK”(共驻控制器(C2)可以向中央控制器(C3)发送的用于指示事务未被提交但是被成功中止和撤销的响应—故障指示可以包括在该消息中);(8)“Abort ACK”(代理控制组件可以向中央控制器(C3)发送的用于指示事务被成功中止和撤销的响应);以及(9)“WHACK”(代理控制组件可以向中央控制器(C3)发送的用于指示事务未被成功中止并且可能需要重新同步光学环形网络的响应)。
在这样的事务处理期间,可以通过监督信道1414使用例如通过监督信道提供的层-2服务,在与光学节点1404相关联的代理控制组件(例如,共驻控制器(PC2);参见图14)和与各个光学节点1406、1408、1410相关联的共驻控制器(C2)之间来发送/接收消息。例如,与光学节点1404相关联的共驻控制器(PC2)以及与各个光学节点1406、1408、1410相关联的共驻控制器(C2)可以采用以下示例性消息中的一个或多个:(1)“Commit”(代理控制组件可以向共驻控制器(C2)发送的用于提交事务的消息);(2)“Abort”(代理控制组件可以向共驻控制器(C2)发送的用于中止事务的消息);(3)“Commit OK”(代理控制组件可以向共驻控制器(C2)发送的用于指示事务已经被提交并且共驻控制器(C2)所发起的配置改变被允许的消息);(4)“Abort OK”(代理控制组件可以向共驻控制器(C2)发送的用于指示事务已经被中止并且共驻控制器(C2)发起的配置改变被允许的消息);(5)“Fail”(一个共驻控制器(C2)可以向其它共驻控制器(C2)(包括代理控制组件)发送的用于指示事务将被中止的消息);以及(6)“Commit ACK”(一个共驻控制器(C2)在其具有用于事务的临时配置时可以向代理控制组件发送的消息,从而确认其成功地提交了事务—代理控制组件可以验证适当数量的共驻控制器(C2)具有该临时配置,并检测是否有任何共驻控制器(C2)已经从当前事务退出)。要注意的是,与指定事务相关联的每个消息可以由嵌入在相应消息中的事务标识符来标识。
图15a描绘了中央控制器(C3)(例如,中央控制器(C3)1402;参见图14)的示例性有限状态机1500a,用于发起与多个共驻控制器(PC2、C2)(例如,与光学节点1404相关联的共驻控制器(PC2)以及与各个光学节点1406、1408、1410相关联的共驻控制器(C2);参见图14)的事务。中央控制器(C3)可以通过向每个共驻控制器(PC2、C2)发送Query-to-Commit(“QTC”)消息来发起事务,所述消息包括事务ID以及针对光学节点的层-1/层-2/层-3可配置单元的临时配置。每个共驻控制器(PC2、C2)可以评估Query-to-Commit消息,以确定临时配置是有效的还是无效的。如状态1502中所描绘的,中央控制器(C3)等待从各个共驻控制器(PC2、C2)接收对Query-to-Commit消息的响应(例如,Query-to-Commit ACK消息),并且一旦从共驻控制器(PC2、C2)接收到Query-to-Commit ACK消息,中央控制器(C3)就可以向代理控制组件(例如共驻控制器(PC2);参见图14)发送Commit消息。如状态1504中所描绘的,中央控制器(C3)等待从共驻控制器(PC2)接收对Commit消息的响应(例如,Commit ACK消息),并且一旦从共驻控制器(PC2)接收到Commit ACK消息,中央控制器(C3)发起的事务就被认为是成功的。在预定超时时段(例如15秒钟)之后共驻控制器(PC2、C2)中的一个或多个没有对Query-to-Commit消息进行响应的情况下,或者在用Query-to-Commit NACK消息进行响应的情况下,中央控制器(C3)可以向共驻控制器(PC2)发送Abort消息。如状态1506中所描绘的,中央控制器(C3)等待从共驻控制器(PC2)接收Abort ACK消息,并且一但接收到(或者已经经历了预定超时时段;例如10秒钟),事务就被中止,如状态1508中所描绘的。要注意的是,如果在状态1504中中央控制器(C3)从共驻控制器(PC2)接收到Commit NACK消息,那么事务也可以被中止。还要注意的是,如果在状态1504中,中央控制器(C3)接收到WHACK消息(或者已经经历了预定的超时时段;例如10秒钟),那么光学环形网络(例如光学环形网络1401;参见图14)可能必须被重新同步,如状态1510中所描绘的。这种对光学环形网络的重新同步可以包括在监督信道上在全部光学节点之间对P2/P3拓扑结构表进行重新同步。
图15b描绘了例如由与光学节点1404(参见图14)相关联的共驻控制器(PC2)实现的代理控制组件的示例性有限状态机1500b。参考图15b,共驻控制器(PC2)可以从中央控制器(C3)接收Commit消息,并且通过监督信道将Commit消息循环到与其它光学节点(例如光学节点1406、1408、1410;参见图14)相关联的共驻控制器(C2)。如状态1512中所描绘的,共驻控制器(PC2)等待从共驻控制器(C2)接收对Commit消息的响应(例如Commit ACK消息),并且一旦从共驻控制器(C2)接收到Commit ACK消息,共驻控制器(PC2)就可以通过监督信道将Commit OK消息循环到与其它光学节点相关联的共驻控制器(C2)。如在状态1514中所描绘的,共驻控制器(PC2)等待Commit OK消息被循环到各个共驻控制器(C2),并且一旦Commit OK消息的循环完成,就向中央控制器(C3)发送Commit ACK消息。执行Commit OK消息的这种循环,以向每个共驻控制器(C2)指示:各个共驻控制器(C2)都已经成功地处理了事务。被循环的Commit OK消息还用作同步点,在同步点处,允许共驻控制器(PC2、C2)所发起的配置改变。在共驻控制器(PC2、C2)中的一个或多个拒绝Query-to-Commit消息的情况下,中央控制器(C3)向共驻控制器(PC2)发出Abort消息,共驻控制器(PC2)通过监督信道将Abort消息循环到共驻控制器(C2)。如状态1518中所描绘的,共驻控制器(PC2)等待Abort消息被循环到共驻控制器(C2),并且一旦Abort消息的循环完成,共驻控制器(PC2)就可以通过监督信道将Abort OK消息循环给共驻控制器(C2)。如状态1520中所描绘的,共驻控制器(PC2)等待Abort OK被循环给共驻控制器(C2),并且一旦Abort OK的循环完成,共驻控制器(PC2)就可以向中央控制器(C3)发送Abort ACK消息。被循环的Abort OK消息用作另一同步点,在此处再次允许共驻控制器(PC2、C2)所发起的配置改变。在状态1512,如果已经经历了预定的超时时段(例如,4秒钟)或者共驻控制器(PC2)没有从全部的共驻控制器(C2)接收到Commit ACK消息,那么共驻控制器(PC2)可以通过监督信道将Abort消息循环给共驻控制器(C2)。如状态1522中所描绘的,共驻控制器(PC2)等待Abort消息被循环给共驻控制器(C2),并且一旦Abort消息的循环完成,共驻控制器(PC2)就可以通过监督信道将Abort OK消息循环给共驻控制器(C2)。如状态1524中所描绘的,共驻控制器(PC2)等待Abort OK消息被循环给共驻控制器(C2),并且一旦Abort OK的循环完成,共驻控制器(PC2)就可以向中央控制器(C3)发送Commit NACK消息。这种被循环的Abort OK消息用作另一同步点,在此处,再次允许共驻控制器(PC2、C2)所发起的配置改变。在状态1522,如果在Abort OK的循环完成之前已经经历了预定的超时时段(例如2秒钟),那么共驻控制器(PC2)可以通过监督信道将Abort OK消息循环给共驻控制器(C2)。共驻控制器(PC2)随后进入状态1516,这是因为在这种情况下事务的结果是不确定的。此外,共驻控制器(PC2)向中央控制器(C3)发送WHACK消息,从而向中央控制器(C3)指示:事务没有被成功地中止,并且可能需要对光学环形网络重新同步。要注意的是,共驻控制器(PC2)还可以在已经经历了预定的超时时段(例如4秒钟)之后从状态1514进入状态1516,而不需要接收任何关于Commit OK的循环已经完成的指示。
图15c描绘了例如由与各个光学节点1406、1408、1410(参见图14)相关联的共驻控制器(C2)实现的用于每个共驻控制器(C2)的示例性有限状态机1500c。参考图15c,共驻控制器(C2)从中央控制器(C3)接收Query-to-Commit消息,保持其原有的配置信息,并存储使用Query-to-Commit消息提供的临时配置信息。如状态1526中所描绘的,共驻控制器(C2)评估使用Query-to-Commit消息提供的临时配置的有效性,并且一旦临时配置被认为是有效的,就向中央控制器发送Query-to-Commit ACK消息。如状态1528中所描绘的,共驻控制器(C2)等待从共驻控制器(PC2)接收Commit消息(或Abort消息)。一旦从共驻控制器(PC2)接收到Commit消息,共驻控制器(C2)就可以使用临时配置信息来设置其关联的光学节点,如状态1530中所描绘的。一旦在光学节点上成功地设置了临时配置,共驻控制器(C2)就可以向共驻控制器(PC2)发送Commit ACK消息。通过对从共驻控制器(C2)接收到的Commit ACK消息的数量进行计数,共驻控制器(PC2)可以确定光学节点的设置是在什么时间完成的,使得对共驻控制器(PC2、C2)所发起的任何改变(其在状态1530、1532、1534、1536、1538中被推迟)的封锁可以被解除,如由共驻控制器(PC2)经由Commit OK消息来宣告。如状态1532中所描绘的,共驻控制器(C2)等待从共驻控制器(PC2)接收Commit OK消息,并且一旦接收到Commit OK消息,共驻控制器(C2)就可以移除临时配置。在共驻控制器(C2)从共驻控制器(PC2)接收到Commit消息而不是从中央控制器(C3)接收到Query-to-Commit消息的情况下,共驻控制器(C2)可以向共驻控制器(PC2)发送Commit ACK消息,共驻控制器(PC2)进而通过监督信道将Commit OK消息循环给共驻控制器(C2)。共驻控制器(C2)随后进入状态1532,以等待来自共驻控制器(PC2)的Commit OK消息。在共驻控制器(C2)从共驻控制器(PC2)接收到Abort消息而不是从中央控制器(C3)接收到Query-to-Commit消息的情况下,共驻控制器(C2)可以向共驻控制器(PC2)发送Abort ACK消息,共驻控制器(PC2)进而通过监督信道将Abort OK消息循环给共驻控制器(C2)。如状态1536中所描绘的,共驻控制器(C2)等待从共驻控制器(PC2)接收Abort OK消息,并且一旦接收到Abort OK消息,共驻控制器(C2)就可以从中央控制器(C3)断开。在状态1526,如果临时配置被认为是无效的,那么共驻控制器(C2)可以向中央控制器(C3)发送Query-to-Commit NACK消息。如状态1534中所描绘的,共驻控制器(C2)等待从共驻控制器(PC2)接收Abort消息,并且一旦从共驻控制器(PC2)接收到Abort消息,共驻控制器(C2)就进入状态1536。要注意的是,如果在状态1528中共驻控制器(C2)从共驻控制器(PC2)接收到Abort消息,那么它也可以进入状态1536。在状态1530中共驻控制器(C2)没有使用临时配置成功地设置其关联的光学节点的情况下,共驻控制器(C2)可以向其它共驻控制器(PC2、C2)发送Fail消息,以指示事务将被中止。随后共驻控制器(C2)进入状态1538,在状态1538中,其可以取消临时配置。一旦在状态1538取消了临时配置,共驻控制器(C2)就可以再次进入状态1536。如果在状态1538中临时配置的取消失败了,那么共驻控制器(C2)进入状态1540,这是因为在这种情况下事务的结果是不确定的。要注意的是,如果没有从共驻控制器(PC2)接收到Commit OK消息,或者如果已经经历了预定的超时时段(例如4秒钟),那么共驻控制器(C2)也可以进入状态1538。
要注意的是,本文中描绘和/或描述的操作纯粹是示例性的。此外,在适当的时候,可以以任意顺序来使用这些操作,和/或部分地使用这些操作。在记住以上说明性实施例的情况下,应当理解的是,这些说明性实施例可以采用各种计算机实现的操作,其涉及在计算机系统中传输或存储的数据。这些操作是需要对物理量进行物理操纵的操作。一般地,虽然不是必须地,这些量可以采取能被存储、传输、组合、比较和/或被操纵的电、磁和/或光信号的形式。
此外,在本文中描绘和/或描述的形成说明性实施例的一部分的任意操作是有用的机器操作。说明性实施例还可以涉及用于执行这些操作的设备或装置。所述装置可以被特殊地构成以用于所需目的,或者可以是通用计算机,其被存储在计算机中的计算机程序选择性地激活或配置,以执行特定机器的功能。具体地,采用耦合到一个或多个计算机可读介质的一个或多个处理器的各种通用机器可以与根据本文公开的教导编写的计算机程序一起使用,或者构造更专用的装置来执行所需操作可能是更方便的。
用于实现本文公开的网络架构的指令还可以体现为计算机可读介质上的计算机可读代码。计算机可读介质是能够存储数据的任何数据存储设备,所述数据之后能够被计算机系统读取。这样的计算机可读介质的例子包括磁和固态硬盘驱动器、只读存储器(ROM)、随机存取存储器(RAM)、蓝光TM光盘、DVD、CD-ROM、CD-R、CD-RW、磁带和/或任意其它适当的光学或非光学数据存储设备。计算机可读代码可以被存储在单个位置,或者以分布式方式被存储在联网环境中。
以上描述针对本公开内容的特定说明性实施例。然而,将明显的是,可以对所描述的实施例进行其它变形和修改,同时达到这些实施例的相关联的优势中的一些或全部。此外,可以用硬件、软件(实现成具有程序指令的计算机可读介质)、固件或它们的组合来实现本文中描述的程序、过程、组件和/或模块。例如,本文中描述的功能可以通过至少一个处理器来执行,所述至少一个处理器执行来自至少一个存储器或其它存储设备的程序指令。
本领域技术人员将清楚的是,在不背离本文公开的发明构思的情况下,可以对上面描述的系统和方法进行修改和变形。相应地,本公开内容不应当被认为是受限的,除了由所附权利要求的范围和精神限制以外。
Claims (31)
1.一种网络节点,用于通过网络转发业务,所述网络通过一个或多个网段互连一个或多个其它节点,所述网络节点包括:
共驻控制器,被配置为从一个或多个中央控制器接收具有伴随着的约束的多个端对端转发拓扑结构,每个端对端转发拓扑结构标识用于通过所述网络转发业务的一个或多个网段,并且所述伴随着的约束定义一个或多个数据图,其中相应的转发拓扑结构应用于所述一个或多个数据图,所述共驻控制器被配置为基于所需网段的可用性来确定性地将所述端对端拓扑转发结构应用于相关联的节点的硬件和软件组件或者从相关联的节点的硬件和软件组件移除所述端对端转发拓扑结构,以便根据表示所述网络中的全部网段的操作状态的当前网络状态来确定性地得到所述网络的一致的端对端转发配置;以及
交换机,被配置为根据所述一致的端对端转发配置来通过所述网络转发所述业务,所述交换机包括分组交换机、电路交换机以及光学交换机中的至少一个,
其中,所述共驻控制器通过控制信道通信地连接到与所述网络上的至少一个其它网络节点相关联的至少一个其它共驻控制器。
2.如权利要求1所述的节点,其中,所述网络具有相关联的网络拓扑结构,所述网络拓扑结构是物理的或逻辑的拓扑结构,所述网络拓扑结构是线性拓扑结构、环形拓扑结构以及2维或更高维的环面拓扑结构中的至少一个。
3.如权利要求2所述的节点,其中,所述环形拓扑结构是带弦环形拓扑结构。
4.如权利要求3所述的节点,其中,所述带弦环形拓扑结构是多维带弦环形拓扑结构。
5.如权利要求1所述的节点,其中,每个节点是光学节点。
6.如权利要求1所述的节点,其中,所述共驻控制器被配置为:
确定性地选择所述端对端转发拓扑结构中的至少一个作为初始转发拓扑结构,并且维护未选择的端对端转发拓扑结构以作为替换的转发拓扑结构,以及
响应于网络状态的改变而取消对所述初始转发拓扑结构的选择,并且独立地以及确定性地在相应的共驻控制器处选择并使用所述替换的转发拓扑结构中的至少一个,来替代所述初始转发拓扑结构,
其中,所选择的至少一个替换的转发拓扑结构与所述网络中的全部其它共驻控制器所选择的替换的转发拓扑结构是相同的。
7.如权利要求1所述的节点,其中,所述交换机通过通信信道通信地连接到与所述其它网络节点相关联的至少一个其它交换机。
8.如权利要求7所述的节点,其中,所述共驻控制器还被配置为采用所述控制信道来执行以下中的一个或多个:
交换连接信息,以获知所述网络的涉及各个共驻控制器的网络拓扑结构的至少一部分;
至少使用所述连接信息将所述当前网络状态至少与另一节点的一个其它共驻控制器进行同步;
在所述控制信道上建立逻辑中断,以对通过所述网络转发的所述业务的至少一些进行过滤,从而避免在所述控制信道上创建桥环路;
确定所述逻辑中断在所述控制信道上的位置;
在所述网络上传播连接通知和断开连接通知中的一个或两个;
获知与通信地耦合到所述网络的至少一个主计算机相关联的至少一个端点地址;
通告与通信地耦合到所述网络的所述至少一个主计算机相关联的所述端点地址;以及
在各个共驻控制器处移除或更新端点地址条目。
9.如权利要求8所述的节点,其中,每个端对端转发拓扑结构包括第一转发拓扑结构,所述第一转发拓扑结构标识用于通过所述网络转发业务的一个或多个第一网段,并且其中,所述共驻控制器还被配置为独立于中央控制器来计算并维护由所述第一转发拓扑结构标识的所述第一网段。
10.如权利要求9所述的节点,其中,所述共驻控制器还被配置为在所述网络上建立洪水中断,以避免在所述第一转发拓扑结构内创建一个或多个桥环路。
11.如权利要求7所述的节点,其中,所述共驻控制器还被配置为定义所述网络的至少与所述节点相关联的至少一部分的资源模型,所述资源模型包括与所述节点的能力、配置信息、状态信息以及连接信息中的一个或多个有关的信息,并且所述共驻控制器还被配置为将所述资源模型提供给中央控制器。
12.如权利要求1所述的节点,其中,所述共驻控制器还被配置为:使用基于事务的提交模型接收并存储来自中央控制器的所述端对端转发拓扑结构,以及使用所述基于事务的提交模型来接受或拒绝与其它共驻控制器中的每一个相同的端对端转发拓扑结构。
13.如权利要求7所述的节点,其中,所述共驻控制器还被配置为通过网络抽象层接口访问与从中央控制器接收到的所述端对端转发拓扑结构有关的信息。
14.如权利要求13所述的节点,其中,与所述端对端转发拓扑结构有关的所述信息包括:提供给所述节点的一个或多个候选转发树,分配给各个候选转发树的第一权重,以及目的地地址到相应的候选转发树的映射。
15.如权利要求14所述的节点,其中,与所述端对端转发拓扑结构有关的所述信息包括一个或多个抽象端点定义,其中,所述抽象端点定义包括一个或多个目的地端点的定义,并且其中,所述目的地端点至少部分地基于分配给各个候选转发树的所述第一权重而被映射到相应的候选转发树。
16.如权利要求13所述的节点,其中,与所述端对端转发拓扑结构有关的所述信息包括:提供给所述节点的一个或多个候选转发路径、分配给各个候选转发路径的第二权重、以及源/目的地地址对到相应的候选转发路径的映射。
17.如权利要求16所述的节点,其中,与所述端对端转发拓扑结构有关的所述信息包括一个或多个抽象端点定义,其中,所述抽象端点定义包括一个或多个源/目的地端点对的定义,并且其中,所述源/目的地端点对至少部分地基于分配给各个候选转发路径的所述第二权重而被映射到相应的候选转发路径。
18.一种通过网络转发业务的方法,所述网络通过一个或多个网段互连一个或多个节点,所述方法包括:
在所述网络上的节点中的共驻控制器处,从一个或多个中央控制器接收具有伴随着的约束的多个端对端转发拓扑结构,每个端对端转发拓扑结构标识用于通过所述网络转发业务的一个或多个网段,并且所述伴随着的约束定义一个或多个数据图,其中相应的转发拓扑结构应用于所述一个或多个数据图,
其中,所述共驻控制器通过控制信道通信地连接到与所述网络上的至少一个其它节点相关联的至少一个其它共驻控制器;
所述共驻控制器基于所需网段的可用性来确定性地将所述端对端拓扑转发结构应用于相关联的节点的硬件和软件组件或者从相关联的节点的硬件和软件组件移除所述端对端转发拓扑结构,以便根据表示所述网络中的全部网段的操作状态的当前网络状态来确定性地得到所述网络的一致的端对端转发配置;以及
由所述节点中的交换机根据所述一致的端对端转发配置来通过所述网络转发所述业务,所述交换机包括分组交换机、电路交换机以及光学交换机中的至少一个。
19.如权利要求18所述的方法,还包括:
通过所述控制信道通信地将所述共驻控制器连接到与所述网络上的至少一个其它节点相关联的至少一个其它共驻控制器。
20.如权利要求19所述的方法,还包括:
通过通信信道通信地将所述交换机连接到与所述其它节点相关联的至少一个其它交换机。
21.如权利要求20所述的方法,还包括:
由所述共驻控制器使用所述控制信道来执行以下中的一个或多个:
交换连接信息以获知涉及各个共驻控制器的网络拓扑结构的至少一部分;
至少使用所述连接信息来将所述当前网络状态至少与另一节点的一个其它共驻控制器进行同步;
在所述控制信道上建立逻辑中断,以对通过所述网络转发的所述业务中的至少一些进行过滤,从而避免在所述控制信道上创建桥环路;
确定所述逻辑中断在所述控制信道上的位置;
在所述网络上传播连接通知和断开连接通知中的一个或两个;
获知与通信地耦合到所述网络的至少一个主计算机相关联的至少一个端点地址;
通告与通信地耦合到所述网络的所述主计算机相关联的所述端点地址;以及
在各个共驻控制器处移除或更新端点地址条目。
22.如权利要求20所述的方法,还包括:
通信地将所述共驻控制器和所述至少一个其它共驻控制器连接到中央控制器。
23.如权利要求22所述的方法,还包括:
由所述共驻控制器定义所述网络的至少与所述节点相关联的至少一部分的资源模型,所述资源模型包括与所述节点的能力、配置信息、状态信息以及连接信息中的一个或多个有关的信息;以及
由所述共驻控制器将所述资源模型提供给所述中央控制器。
24.如权利要求22所述的方法,还包括:
所述共驻控制器使用基于事务的提交模型来接收并存储从所述中央控制器接收到的所述端对端转发拓扑结构;以及
所述共驻控制器使用所述基于事务的提交模型来接受或拒绝与所述至少一个其它共驻控制器相同的端对端转发拓扑结构。
25.如权利要求22所述的方法,还包括:
由所述共驻控制器通过网络抽象层接口来访问与从所述中央控制器接收到的所述端对端转发拓扑结构有关的信息。
26.如权利要求25所述的方法,其中,与所述端对端转发拓扑结构有关的所述信息包括:提供给所述节点的一个或多个候选转发树、分配给各个候选转发树的第一权重、以及目的地地址到相应的候选转发树的映射。
27.如权利要求26所述的方法,其中,与所述端对端转发拓扑结构有关的所述信息包括一个或多个抽象端点定义,其中,所述抽象端点定义包括一个或多个目的地端点的定义,并且其中,所述方法还包括:
至少部分地基于分配给各个候选转发树的所述第一权重将所述目的地端点映射到相应的候选转发树。
28.如权利要求25所述的方法,其中,与所述端对端转发拓扑结构有关的所述信息包括:提供给所述节点的一个或多个候选转发路径、分配给各个候选转发路径的第二权重、以及源/目的地地址对到相应的候选转发路径的映射。
29.如权利要求28所述的方法,其中,与所述多个端对端转发拓扑结构有关的所述信息包括一个或多个抽象端点定义,其中,所述抽象端点定义包括一个或多个源/目的地端点对的定义,并且其中,所述方法还包括:
至少部分地基于分配给各个候选转发路径的所述第二权重,将所述源/目的地端点对映射到相应的候选转发路径。
30.如权利要求19所述的方法,还包括所述共驻控制器:
确定性地选择所述端对端转发拓扑结构中的至少一个作为初始转发拓扑结构;
维护未选择的端对端转发拓扑结构,以作为替换的转发拓扑结构;以及
响应于网络状态的改变,取消对所述初始转发拓扑结构的选择,并选择并使用所述替换的转发拓扑结构中的至少一个,以替代所述初始转发拓扑结构,
其中,所选择的至少一个替换的转发拓扑结构是所述网络中的全部其它共驻控制器所选择的相同的替换的转发拓扑结构。
31.一种数据中心网络,包括多个节点,每个节点如权利要求1所记载的,所述网络还包括:
关联建模组件,用于对关联-网络拓扑结构进行建模并且生成关联-网络拓扑结构信息;
关联-网络拓扑结构数据库,用于存储由所述关联建模组件生成的所述关联-网络拓扑结构信息;以及
通信地耦合到每一个共驻控制器的一个或多个中央控制器,
其中,所述一个或多个中央控制器被配置为:从所述关联-网络拓扑结构数据库接收所述关联-网络拓扑结构信息,基于所述关联-网络拓扑结构信息生成多个端对端转发拓扑结构以及伴随着的约束,并且向每个共驻控制器提供具有伴随着的约束的所述多个端对端转发拓扑结构以便控制所述共驻控制器中的一些或全部用于在所述数据中心网络上修改和/或实现所述关联-网络拓扑结构。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161554107P | 2011-11-01 | 2011-11-01 | |
US61/554,107 | 2011-11-01 | ||
US13/528,211 US8842988B2 (en) | 2011-06-20 | 2012-06-20 | Optical junction nodes for use in data center networks |
US13/528,211 | 2012-06-20 | ||
US13/528,501 | 2012-06-20 | ||
US13/528,501 US9065582B2 (en) | 2011-06-20 | 2012-06-20 | Optical architecture and channel plan employing multi-fiber configurations for data center network switching |
PCT/US2012/060116 WO2013066605A1 (en) | 2011-11-01 | 2012-10-12 | Hierarchy of control in a data center network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104025513A CN104025513A (zh) | 2014-09-03 |
CN104025513B true CN104025513B (zh) | 2018-02-09 |
Family
ID=48192595
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201280065697.XA Active CN104025513B (zh) | 2011-11-01 | 2012-10-12 | 用于数据中心网络中的控制层级的装置和方法 |
Country Status (3)
Country | Link |
---|---|
EP (4) | EP2774328B1 (zh) |
CN (1) | CN104025513B (zh) |
WO (4) | WO2013066604A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI816907B (zh) * | 2018-10-11 | 2023-10-01 | 美商高通公司 | 用於在無線通訊中配置傳輸配置狀態的技術 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140153443A1 (en) * | 2012-11-30 | 2014-06-05 | International Business Machines Corporation | Per-Address Spanning Tree Networks |
JP5769208B2 (ja) * | 2013-05-21 | 2015-08-26 | 国立研究開発法人情報通信研究機構 | ネットワークの構成及び動作の可視化システム |
US9559946B2 (en) | 2014-03-31 | 2017-01-31 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Link aggregation group (LAG) support on a software-defined network (SDN) |
US9667499B2 (en) | 2014-09-12 | 2017-05-30 | Alcatel Lucent | Sparsification of pairwise cost information |
US9507932B2 (en) * | 2014-09-12 | 2016-11-29 | Alcatel Lucent | Policy enforcement in a topology abstraction system |
CN105338331B (zh) * | 2015-12-16 | 2018-08-24 | 武汉微创光电股份有限公司 | 一种非压缩视频监控系统及故障恢复方法 |
CN107341040A (zh) * | 2016-04-28 | 2017-11-10 | 北京神州泰岳软件股份有限公司 | 一种虚拟化云平台的数据采集方法和装置 |
CN106210168B (zh) * | 2016-07-06 | 2019-05-07 | 杭州迪普科技股份有限公司 | 一种更换出口网关地址的方法和装置 |
US10382315B2 (en) | 2016-12-08 | 2019-08-13 | Hewlett Packard Enterprise Development Lp | Framework for universally specified affinity topologies with partial path invalidation and generalized network flows |
CA3090944A1 (en) | 2017-02-08 | 2018-08-16 | Upstream Data Inc. | Blockchain mine at oil or gas facility |
CN109412828B (zh) * | 2017-08-18 | 2022-06-14 | 上海诺基亚贝尔软件有限公司 | 用于软件定义网络中的网络拓扑发现的方法、设备和系统 |
US10469921B2 (en) * | 2017-11-10 | 2019-11-05 | Juniper Networks, Inc. | Data center packet optical transport failure protection |
US11031787B2 (en) * | 2018-09-14 | 2021-06-08 | Lancium Llc | System of critical datacenters and behind-the-meter flexible datacenters |
CA3139776A1 (en) | 2019-05-15 | 2020-11-19 | Upstream Data Inc. | Portable blockchain mining system and methods of use |
CN112260788B (zh) * | 2020-10-19 | 2021-09-03 | 北京邮电大学 | 动态高精度时频同步网 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101895482A (zh) * | 2009-05-18 | 2010-11-24 | 华为技术有限公司 | 对点到点技术网络的逻辑拓扑信息进行抽象的方法和装置 |
CN102217228A (zh) * | 2007-09-26 | 2011-10-12 | Nicira网络公司 | 管理和保护网络的网络操作系统 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7327688B2 (en) * | 1994-01-21 | 2008-02-05 | Alcatel Canada Inc. | Digital communications system |
CA2217275C (en) * | 1997-10-03 | 2005-08-16 | Newbridge Networks Corporation | Multiple internetworking realms within an internetworking device |
US7545755B2 (en) * | 2000-03-03 | 2009-06-09 | Adtran Inc. | Routing switch detecting change in session identifier before reconfiguring routing table |
US7080031B2 (en) * | 2001-02-01 | 2006-07-18 | Level 3 Communications, Llc | System and method for determining an evolving combination of network components to maximize the net present value of a provider's cash flow |
US7743127B2 (en) * | 2002-10-10 | 2010-06-22 | Hewlett-Packard Development Company, L.P. | Resource allocation in data centers using models |
US7987272B2 (en) * | 2004-12-06 | 2011-07-26 | Cisco Technology, Inc. | Performing message payload processing functions in a network element on behalf of an application |
WO2007016942A1 (en) * | 2005-08-08 | 2007-02-15 | Pirelli & C. S.P.A | Method for configuring an optical network |
US8160056B2 (en) * | 2006-09-08 | 2012-04-17 | At&T Intellectual Property Ii, Lp | Systems, devices, and methods for network routing |
US8000239B2 (en) * | 2006-12-14 | 2011-08-16 | Oracle America, Inc. | Method and system for bandwidth allocation using router feedback |
WO2008116309A1 (en) * | 2007-03-26 | 2008-10-02 | Universite Laval | Method and system for testing for defects in a multipath optical network |
WO2009096793A1 (en) * | 2008-02-01 | 2009-08-06 | Telenor Asa | Analysis and visualization of a network |
US8279867B2 (en) * | 2008-03-02 | 2012-10-02 | Jeffrey Alan Carley | Method and apparatus for reducing flood traffic in switches |
GB2459433B (en) * | 2008-03-07 | 2012-06-06 | Hewlett Packard Development Co | Distributed network connection policy management |
US8395989B2 (en) * | 2008-04-23 | 2013-03-12 | Verizon Patent And Licensing Inc. | Method and system for network backbone analysis |
CA2727255C (en) * | 2008-06-09 | 2018-05-01 | Genesis Technical Systems Corp. | Bonded interconnection of local networks |
US20090328133A1 (en) * | 2008-06-27 | 2009-12-31 | Motorola, Inc. | Capability management for network elements |
WO2010042578A1 (en) * | 2008-10-08 | 2010-04-15 | Citrix Systems, Inc. | Systems and methods for real-time endpoint application flow control with network structure component |
US8131149B2 (en) * | 2009-05-06 | 2012-03-06 | Ciena Corporation | Optical routing device and optical network using same |
US8416692B2 (en) * | 2009-05-28 | 2013-04-09 | Microsoft Corporation | Load balancing across layer-2 domains |
-
2012
- 2012-10-12 WO PCT/US2012/060112 patent/WO2013066604A1/en active Application Filing
- 2012-10-12 EP EP12845825.4A patent/EP2774328B1/en active Active
- 2012-10-12 EP EP12845454.3A patent/EP2774048B1/en active Active
- 2012-10-12 WO PCT/US2012/060116 patent/WO2013066605A1/en active Application Filing
- 2012-10-12 EP EP12845867.6A patent/EP2774047B1/en active Active
- 2012-10-12 CN CN201280065697.XA patent/CN104025513B/zh active Active
- 2012-10-12 EP EP12846611.7A patent/EP2774329B1/en active Active
- 2012-10-12 WO PCT/US2012/060108 patent/WO2013066602A1/en active Application Filing
- 2012-10-12 WO PCT/US2012/060111 patent/WO2013066603A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102217228A (zh) * | 2007-09-26 | 2011-10-12 | Nicira网络公司 | 管理和保护网络的网络操作系统 |
CN101895482A (zh) * | 2009-05-18 | 2010-11-24 | 华为技术有限公司 | 对点到点技术网络的逻辑拓扑信息进行抽象的方法和装置 |
Non-Patent Citations (1)
Title |
---|
A Policy-aware Switching Layer for Data Centers;Dilip Antony Joseph et al.;《Proceedings of the ACM SIGCOMM 2008 conference on Data communication》;20080624;第1页第1栏,第5页,第6页第1栏,第9页第5部分,第14-15页第7.2小节,图1a,图14-15 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI816907B (zh) * | 2018-10-11 | 2023-10-01 | 美商高通公司 | 用於在無線通訊中配置傳輸配置狀態的技術 |
Also Published As
Publication number | Publication date |
---|---|
EP2774329A1 (en) | 2014-09-10 |
WO2013066605A1 (en) | 2013-05-10 |
CN104025513A (zh) | 2014-09-03 |
EP2774329B1 (en) | 2019-06-19 |
EP2774048B1 (en) | 2019-02-20 |
EP2774048A4 (en) | 2015-08-19 |
WO2013066604A1 (en) | 2013-05-10 |
EP2774328B1 (en) | 2020-06-03 |
EP2774047B1 (en) | 2019-06-26 |
WO2013066603A1 (en) | 2013-05-10 |
EP2774328A4 (en) | 2015-08-26 |
EP2774328A1 (en) | 2014-09-10 |
WO2013066602A1 (en) | 2013-05-10 |
EP2774047A4 (en) | 2015-08-19 |
EP2774048A1 (en) | 2014-09-10 |
EP2774329A4 (en) | 2015-08-19 |
EP2774047A1 (en) | 2014-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104025513B (zh) | 用于数据中心网络中的控制层级的装置和方法 | |
US9942623B2 (en) | Data center network architecture | |
US9204207B2 (en) | Hierarchy of control in a data center network | |
US10200278B2 (en) | Network management system control service for VXLAN on an MLAG domain | |
US9337931B2 (en) | Control and provisioning in a data center network with at least one central controller | |
CN100583811C (zh) | 虚拟网络设备 | |
US7765283B2 (en) | Network provisioning in a distributed network management architecture | |
CN102986172B (zh) | 虚拟集群交换 | |
CN103888360B (zh) | 基于贪婪算法的集合覆盖方法获取sdn网中服务节点的方法 | |
CN104919760B (zh) | 虚拟机箱系统控制协议 | |
JP2010283811A (ja) | ネットワーク要素の転送プレーンにおいてポート状態テーブルを保持するための方法及び装置 | |
CN105340230A (zh) | 虚拟机架拓扑管理 | |
US9800521B2 (en) | Network switching systems and methods | |
CN103997513A (zh) | 一种可编程虚拟网络服务系统 | |
CN106850459A (zh) | 一种实现虚拟网络负载均衡的方法及装置 | |
US20140254607A1 (en) | Centralized control and management planes for different independent switching domains | |
WO2017113929A1 (zh) | 一种软件定义网络中控制转发设备集群的方法及控制器 | |
CN108540328A (zh) | Ason的控制平面建模方法和装置 | |
Wu et al. | Masking failures from application performance in data center networks with shareable backup | |
Bruyere et al. | Rethinking IXPs’ architecture in the age of SDN | |
CN104125079B (zh) | 一种确定双机热备份配置信息的方法及装置 | |
Bogdanski | Optimized routing for fat-tree topologies | |
US20120155328A1 (en) | Methods and apparatus for dynamic mapping of power outlets | |
Cucinotta et al. | Data centre optimisation enhanced by software defined networking | |
Zhao et al. | Unified control system for heterogeneous networks with Software Defined Networking (SDN) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20181203 Address after: American Texas Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: New Hampshire Patentee before: Pu Laikexi company |