传输软件定义网络(SDN)——经由分组窥探的零配置邻接的制作方法

文档序号:13518694阅读:254来源:国知局
传输软件定义网络(SDN)——经由分组窥探的零配置邻接的制作方法

相关申请的交叉引用

本专利申请要求于2015年5月21日提交的题为“transportsoftwaredefinednetworking(sdn)-zeroconfigurationadjacencyviapacketsnooping”的美国专利申请no.14/718,941的优先权,该美国专利申请的全部内容通过引用合并入本文,如同复制一样。

本发明涉及用于传输网络通信的系统和方法,特别是涉及用于物理层网络配置的系统和方法。



背景技术:

常规的计算机网络由大量网络设备如路由器、交换机和/或其他硬件所构建。对大型网络的管理可能是复杂且昂贵的。相信可以通过使传统路由器中控制和数据转发的捆绑分离并且用集中式协议代替用于网络控制的全分布式协议的使用来解决复杂性。例如,在集中控制网络中,将数据转发(例如,数据面)与控制决策(例如,控制面)如路由、资源和其他管理功能解耦。该解耦还使得数据面和控制面能够在不同的硬件上操作、在不同的运行时环境中操作和/或使用不同模型来操作。在集中控制网络中,网络智能在逻辑上集中在基于软件的控制器中。因此,网络设备变成由集中控制器管理和控制的分组转发设备。



技术实现要素:

本文公开了一种传输软件定义网络(softwaredefinednetworking,sdn)控制器。在一种实施方式中,传输sdn控制器可以包括接收器和耦接至接收器的处理器。该处理器可以被配置成使传输sdn控制器基于从物理层网元(networkelement,ne)接收的物理层邻接发现消息来确定物理拓扑,以及从物理层ne接收通告消息,每个通告消息包括邻近网络层ne与相关联的物理层ne的端口之间的映射。传输sdn控制器还可以从指示第一网络层ne正在请求与第二网络层ne进行网络层连接的一些通告消息提取网络层邻接请求,并且基于网络层邻接请求、通告消息和物理拓扑来建立第一网络层ne与第二网络层ne之间的物理层连接。

在另一种实施方式中,本公开内容包括一种在物理层网络分组接口卡中实现的方法。该方法可以包括:接收包括网络层消息的比特流;检查网络层消息以确定网络层邻接请求,所述网络层邻接请求指示第一网络层ne正在请求与第二网络层ne进行网络层连接;以及将网络层邻接请求通告至传输软件定义网络(softwaredefinednetworking,sdn)控制器来支持物理层ne端口之间的传输层连接的创建,以实现第一网络层ne与第二网络层ne之间的网络层连接,其中,网络分组接口卡没有被配置成修改通过网络分组接口卡转发的消息中所包含的头信息。

在另一种实施方式中,本公开内容包括一种由传输软件定义网络(softwaredefinednetworking,sdn)控制器实现的方法。该方法可以包括:从物理层网元(networkelement,ne)接收物理层邻接发现消息,该物理层邻接发现消息指示物理层端口邻接信息;基于物理层邻接发现消息来确定物理拓扑;从物理层ne接收通告消息,每个通告消息指示物理层ne端口与邻近网络层ne之间的映射,一些通告消息包括指示第一网络层ne正在请求与第二网络层ne进行网络层连接的网络层邻接请求;以及基于该网络层邻接请求、通告消息和物理拓扑来建立第一网络层ne与第二网络层ne之间的网络层连接。

根据下面结合附图和权利要求的详细描述,将更清楚地理解这些和其他特征。

附图说明

为了更透彻地理解本公开内容,现在参考以下结合附图和详细描述进行的简要描述,其中,相同的附图标记表示相同的部分。

图1是通信网络的实施方式的示意图。

图2是通信网络的另一实施方式的示意图。

图3是物理层网元检查网络层邻接请求消息的示意图。

图4是网元(networkelement,ne)的实施方式的示意图。

图5是用于检查邻接请求消息的方法的实施方式的流程图。

图6是用于配置网络层邻接关系的方法的实施方式的流程图。

具体实施方式

首先应当理解,尽管下面提供了一个或更多个实施方式的说明性实现,但是所公开的系统和/或方法可以使用任意数量的技术来实现,而无论该技术是否为当前已知或现存的。本公开内容决不应当限于以下所示的说明性实施方式、附图和技术——包括本文所示出和描述的示例性设计和实现,而是可以在所附权利要求书的范围连同其等同方案的全部范围内进行修改。

在一些网络中,数据流由网络中的路由器和交换机的布置和配置来限定。因为物理位置和/或硬件改变可能需要手动配置,所以对路由器和/或交换机的后续改变可能是昂贵的。软件定义网络(softwaredefinednetworking,sdn)是通过动态管理和控制来创建灵活网络的网络范型,在该网络范型中,数据流的管理(例如控制面)和数据的递送(例如数据面)是解耦的。在sdn网络中,网络设备(例如,路由器和/或交换机)由一个或更多个sdn控制器(sdncontroller,sdnc)控制和管理。sdnc是被配置成控制和管理sdn域的任何设备。sdnc做出路由决策,然后经由控制消息将路由决策传送到网络设备。例如,sdnc基于一些网络拓扑信息来计算用于将分组从一个节点路由到另一个节点的最佳路径,然后将路由表、交换表或流表下载到沿着最佳路径的所有网络设备。然后,网络设备根据从sdnc接收的路由表来执行数据转发功能。sdnc还动态地修改sdn网络的行为以适应网络的变化(例如,基础设施变化、新应用和/或服务部署以及/或者业务需求变化)。

网络传输层包括层0(例如,密集波分复用(densewavelengthdivisionmultiplexing,dwdm)、光子学)和开放式系统互连(opensystemsinterconnection,osi)层1(例如,同步光网络(synchronousopticalnetwork,sonet)/同步数字体系(synchronousdigitalhierarchy,sdh)和光传输网络(opticaltransportnetwork,otn))。因此,传输sdnc(transportsdnc,t-sdnc)在层0和层1处操作。期望的是,当对层3(网络层)连接进行配置时,自动建立传输层连接以实现层3连接。

本文公开了用于自动配置传输层连接以实现网络层连接的机制。例如,物理层网元接收包括网络层邻接请求消息和网络层维护消息的比特流。物理层网元包括多个物理端口。物理层网元检查每个网络层邻接请求消息的头信息以确定邻近网络层网元与物理层网元端口之间的映射。物理层网元还检查每个网络层邻接请求消息的头信息以确定网络邻接请求信息,所述网络邻接请求信息指示第一网络层网元正在请求与第二网络层网元进行网络层连接。然后,物理层网元对网络层邻接请求信息进行广播,并且确定网络层网元与物理层处的邻近物理层网元端口的映射。

物理层处的包括至少一个t-sdnc的网络设备接收通告消息。t-sdnc做出交换决策,但不做出路由决策。t-sdnc从物理层网元接收指示物理层端口邻接信息的物理层邻接发现消息。t-sdnc基于检查物理层邻接发现消息来确定物理拓扑。t-sdnc从网络层网元接收网络层邻接发现消息。t-sdnc基于检查网络层邻接发现消息来确定逻辑拓扑,包括两个网络层网元之间是否存在网络层连接。然后,t-sdnc基于所确定的物理拓扑、所确定的逻辑拓扑、所接收到的网络层邻接请求和/或所接收到的通告消息映射来建立物理层网元端口之间的物理层连接以实现所请求的网络层网元之间的网络层连接。类似地,当确定网络层处已经请求删除时,t-sdnc基于确定的物理拓扑、接收到的网络层邻接请求和/或接收到的通告消息映射来自动删除物理层网元端口之间的物理层连接。因此,可以(例如,在无需由系统管理员手动配置的情况下)由t-sdnc通过添加或删除物理层网元端口之间的对应的物理层连接来在传输层处自动配置对网络层网元之间的网络层连接的添加或删除。可以移除操作人员层,从而可以降低操作成本和操作错误。

图1是通信网络100的实施方式的示意图。网络100包括多个物理层网元(networkelement,ne)104、105和106、多个网络(network,nw)层ne102至103以及包括应用编程接口(applicationprogramminginterface,api)111的一个或更多个传输软件定义网络控制器(transportsoftwaredefinednetworkingcontroller,t-sdnc)110。物理层ne104至106经由光链路和/或电链路在通信上耦接。t-sdnc110经由光链路、电链路或其组合在通信上耦接至物理层ne104至106。网络层ne102至103经由光链路、电链路或其组合在通信上耦接至物理层ne104至106。网络层ne102至103可以是被配置成在网络域内和/或网络域之间执行数据分组转发功能的任何物理设备(例如,路由器)或逻辑设备。网络层ne102至103在osi模型的网络层处操作。图1中所示的连接和/或其他链路包括物理连接如光纤链路、电链路、无线链路以及/或者逻辑连接。连接各自包括用于在网络设备之间传输数据的单个链路、一系列并行链路、多个互连节点和/或其各种组合。

物理层ne104至106可以是被配置成根据由sdn域中的t-sdnc110指定的sdn路由来执行数据转发功能的任何物理设备(例如,交换机)。物理层ne104包括一个或更多个物理端口(例如,端口215、216、310或311)、相应的网络分组接口卡(npic)130、131和132以及处理器。该处理器耦接至网络分组接口卡,并且被配置成执行各种功能。在一种实施方式中,物理层ne104执行光交换机的功能。上游端口由物理层ne104映射到下游端口。例如,波长可以由物理层ne104从上游端口路由到映射的下游端口。例如,波长被从网络分组接口卡130路由到物理层ne104与物理层ne105之间的链路,然后通过物理层ne105与物理层ne106之间的链路,最后路由到网络分组接口卡132。波长例如经由网络层ne103被从网络分组接口卡132进一步路由到目的地。网络分组接口卡130和处理器可以不被配置成修改通过网络分组接口卡130转发的消息中所包含的头信息,例如广播消息120中所包含的头。换句话说,物理层ne10在不对编码的数据分组的头进行修改的情况下将编码的数据分组从第一端口转发到第二端口。

网络分组接口卡130接收包括广播消息120(例如,邻接发现消息和网络层维护消息)和/或目标消息(例如,网络层邻接请求消息)的比特流。邻接发现消息或网络层邻接请求消息可以是开放式最短路径优先(openshortestpathfirst,ospf)消息、中间系统到中间系统(intermediatesystemtointermediatesystem,is-is)消息、边界网关协议(bordergatewayprotocol,bgp)消息或另一类型的邻接消息。邻接发现消息可以是网络层邻接发现消息或物理层邻接发现消息中的任一个。网络层邻接发现消息于在osi模型的网络层处操作的通信上耦接的网络层ne(例如,网络层ne102至103)之间广播。网络层邻接发现消息包括网络层ne邻接关系的信息。物理层邻接发现消息于在osi模型的物理层处操作的通信上耦接的物理层ne104至106之间广播。物理层邻接发现消息包括物理层ne104至106邻接关系的信息。网络层邻接发现消息和物理层邻接发现消息可以周期性地和/或在事件发生时广播。例如,网络层邻接请求消息由第一网络层ne(例如,网络层ne102或网络层ne103)发送以指示请求第一网络层ne与第二网络层ne之间的网络层连接。然后,所请求的网络层连接也通过物理层连接——例如通过建立网络层ne的邻近物理层ne端口之间的物理连接——来实现。

网络分组接口卡130例如通过经由窥探公用程序查阅邻接请求消息的内容来检查网络层邻接请求消息。如本文使用的,检查是指查阅经过接口的分组的内容而不改变分组,这也可以被称为窥探。由网络层ne102至103发送的网络层邻接请求消息可以是目标ospfhello消息、目标is-ishello消息或另一类型的邻接请求消息。例如,网络层ne102可以被配置成在通信上耦接至另一期望的下一跳网络层ne,例如网络层ne103。网络层ne102发送指示网络层ne102与网络层ne103之间期望连接的网络层邻接请求。网络层ne103也发送指示网络层ne103与网络层ne102之间期望连接的网络层邻接请求。网络层邻接请求消息包括网络层ne的信息如网络层ne102和103的标识。这种邻接请求消息被编码成比特流,并且经由物理层ne104至106在网络层ne102与网络层ne103之间传送。

例如,物理层ne104检查网络层邻接请求消息的头,使得物理层ne104能够确定第一网络层ne102与第二网络层ne103之间请求连接。物理层ne104通过检查网络层邻接请求消息的头来获得第一网络层ne102的第一标识和第二网络层ne103的第二标识。然后,物理层ne104在物理层处发送通告消息以对网络层请求消息进行广播。在一种实施方式中,通告消息可以是ospf链路状态通告(linkstateadvertisement,lsa)消息。例如,npic130或物理层ne104可以将网络层邻接请求信息附加到ospflsa消息。网络层邻接请求信息或通告消息包括物理层ne104的标识、第一网络层ne102的标识和/或第二网络层ne103的标识。

物理层网元104还检查通过物理层ne104至106的网络层邻接发现消息的头,使得物理层ne104能够获得物理层ne端口和网络层ne102至103的邻接信息。物理层ne104使用所检查的数据来确定物理层ne端口到邻近网络层ne102的映射。然后,物理层ne104在物理层处发送通告消息以对物理层ne端口到邻近网络层ne102的映射进行广播。在一种实施方式中,通告消息可以是ospflsa消息。例如,npic130或物理层ne104可以将映射信息附加到ospflsa消息。映射信息或通告消息包括物理层ne104的标识、物理端口标识和邻近网络层ne102的标识。映射信息和网络层邻接请求信息可以由物理层ne104在同一通告消息中或在单独的通告消息中传送。

t-sdnc110是被配置成(例如,经由控制消息)控制和管理sdn域的任意设备。每个t-sdnc110在物理上和/或逻辑上位于sdn域内。第三方115如系统管理员可以通过应用编程接口(applicationprogramminginterface,api)111访问t-sdnc110。t-sdnc110执行包括生成和获得路由信息、网络拓扑和/或网络状态信息的各种控制面功能。例如,t-sdnc110确定、维护和/或广播t-sdnc110所管理和/或支持的sdn域的特定于sdn的拓扑信息。因此,t-sdnc110接收由其他sdnc110所支持和/或管理的其他sdn域的特定于sdn的拓扑信息。每个t-sdnc110通过向t-sdnc110所管理的sdn域中的物理层ne104至106发送包括流表的控制消息来对物理层ne104至106进行配置。每个t-sdnc110通过控制器设备接口与物理层ne104进行通信,该控制器-设备接口可以采用任何标准化协议(例如,openflow协议)。应当注意,在对特定于sdn的拓扑信息进行通告之前,每个t-sdnc110对已经在内部网关协议(interiorgatewayprotocol,igp)中定义的链路状态信息进行广播。

t-sdnc110接收由物理层ne104至106所发送的物理端口的物理层邻接发现消息。例如,物理层邻接发现消息(例如,广播消息120)包括第一物理层ne104的标识、第一物理层ne104的第一物理层ne端口的标识、第二物理层ne105的标识和/或第二物理层ne105的第二物理层ne端口的标识。通过查阅物理层邻接发现消息,t-sdnc110获得以下消息:第一物理层ne端口和第二物理层ne端口在物理层处邻近,并且第一物理层ne104和第二物理层ne105在物理层处邻近。物理拓扑由t-sdnc110基于物理层邻接发现消息来确定。例如,t-sdnc110可以基于物理层邻接发现消息中的物理层ne端口的标识以及物理层ne104至106的标识来构建拓扑。例如,t-sdnc110可以确定如图2所示的物理拓扑。t-sdnc110可以采用物理拓扑、物理拓扑与逻辑拓扑之间的映射和/或来自网络层邻接请求的数据来自动配置物理层连接以支持网络层邻接请求。

图2是通信网络200的另一实施方式的示意图。网络200包括网络(network,nw)层ne202、203、204和205、物理层ne210、211、212和213、t-sdnc230以及广播消息220,其分别可以基本上类似于网络层ne102和103、物理层ne104、105和106、t-sdnc110以及广播消息120。物理层ne210至213接收包括广播消息220(例如,邻接发现消息和网络层维护消息)的比特流。物理层ne210至213还接收包括目标消息(例如,网络层邻接请求消息)的比特流。邻接发现消息可以是开放式最短路径优先(openshortestpathfirst,ospf)消息、中间系统到中间系统(intermediatesystemtointermediatesystem,is-is)消息、边界网关协议(bordergatewayprotocol,bgp)消息或其他邻接发现消息中的任一个。邻接发现消息可以是网络层邻接发现消息或物理层邻接发现消息中的任一个。网络层邻接发现消息于在osi模型的网络层处操作的通信上耦接的逻辑节点(例如,nw节点202至205)之间广播,并且包括逻辑节点(例如nw节点202至205)邻接关系的信息。物理层邻接发现消息于在osi模型的物理层处操作的通信上耦接的物理层ne210至213之间广播,并且包括物理层ne210至213邻接关系的信息。网络层邻接请求消息可以是ospf消息、is-is消息、bgp消息或其他邻接请求消息中的任一个。网络层邻接请求消息由网络层ne发送,并且包括网络层ne的邻接请求信息。网络层邻接请求消息包括请求通过网络层ne202至网络层ne205之间的网络层链路的创建、删除或修改来实现网络层邻接关系的创建、删除或修改的网络层ne202至205的标识。

在t-sdnc230处接收来自物理层ne210至213的通告消息。例如,由物理层ne210发送的通告消息包括物理层ne210的端口215与网络层ne204邻近的信息。由物理层ne210发送的通告消息还可以包括由网络层ne204针对网络层ne204与网络层ne205之间的网络层连接而发送的网络层邻接请求信息。由物理层ne212发送的通告消息包括物理层ne212的端口216与网络层ne205邻近的信息。由物理层ne212发送的通告消息还可以包括由网络层ne205针对网络层ne205与网络层ne204之间的网络层连接而发送的网络层邻接请求信息。物理层网元211和213发送类似的通告消息。t-sdnc230例如经由无源ospf接口接收通告消息。

t-sdnc230基于来自物理层ne的通告消息来确定网络200的物理拓扑。然后,t-sdnc230基于物理拓扑和来自网络层邻接请求的信息来建立、删除和/或修改物理层ne端口215与物理层ne端口216之间的物理层连接,以实现网络层ne204与网络层ne205之间的网络层连接。在t-sdnc230建立了端口215与端口206之间的物理层连接之后,网络层ne204和网络层ne205可以交换网络层邻接发现消息和/或网络层邻接消息以完成网络层连接的建立。应当注意,如下述美国非临时申请所讨论的,t-sdnc230还可以基于网络层通告来确定逻辑拓扑并且将逻辑拓扑映射到物理拓扑,该美国非临时申请是由peterashwood-smith于2015年5月12日提交的第14/709697号的美国非临时申请“transportsoftwaredefinednetworking(sdn)-logicaltophysicaltopologydiscovery”,其通过引用合并入本文。这种物理拓扑到逻辑拓扑的映射可以用于支持建立物理层连接以支持网络层连接。

可以通过向物理层ne端口215和216分配波长——有时被称为波长(λ)——以及/或者通过向物理层ne端口215和216分配与信号相关联的时隙来建立物理层连接。可以经由时分复用(例如,时间共享)在多个物理连接之间共享特定的λ,使得仅在一小部分时间段内在该特定的λ上发送给定的光信号,将该λ的剩余部分保留用于其他光信号。将多个可用λ中的λ分配给一个物理连接同时将多个λ中的其余λ分配给其余的物理连接被称为波分复用和/或频分复用。通过使用波分复用和时分复用,大量的连接可以在物理层处共享公用光链路,同时被网络层视为唯一链路。因此,t-sdnc230可以自动创建物理层连接以实现所请求的网络层连接,而无需来自系统管理员的输入。此外,t-sdnc230可以基于网络层邻接请求来删除现有的物理层连接以移除现有的网络层连接。另外,t-sdnc230可以基于网络层邻接请求中所包含的信息通过添加或移除分配给物理层连接的一个或更多个λ的全部或一部分来修改现有的物理层连接,从而改变相关联的网络层连接的可用带宽。

图3是物理层ne306至307检查由网络层ne302至303发送的目标消息320的示意图300。网络300包括网络层ne302和303以及物理层ne306和307,其分别可以基本上类似于网络层ne102和103以及物理层ne104、105和106。分别地,端口310是物理层ne306的一部分,端口311是物理层ne307的一部分。网络层ne302向网络层ne303发送目标消息320。网络层ne302和303尚未在通信上耦接。当消息经过物理层ne时,物理层ne306和物理层ne307可以各自检查目标消息320。目标消息320可以是网络层邻接请求消息例如目标ospfhello消息、目标is-ishello消息、目标bgphello消息等。物理层ne306和物理层ne307可以分别检查通过端口310和端口311转发的目标消息320的头信息。

通过检查目标消息320的头信息,物理层ne306确定网络层ne302请求与网络层ne303进行网络层连接,物理层ne307确定网络层ne303请求与网络层ne302进行网络层连接。然后,物理层ne306在物理层处发送通告消息如lsa,该通告消息包括物理层ne306的标识信息、网络层ne302的标识信息和/或网络层ne303的标识信息。该通告消息还包括由网络层ne302针对网络层ne302与网络层ne303之间的网络层连接发送的网络层邻接请求信息。类似地,物理层ne307在物理层处发送通告消息,该通告消息包括物理层ne307的标识信息、网络层ne303的标识信息和/或网络层ne302的标识信息。该通告消息还包括由网络层ne303针对网络层ne303与网络层ne302之间的网络层连接发送的网络层邻接请求信息。可以由t-sdnc如t-sdnc110或t-sdnc230使用通告以根据请求来支持物理层ne306与物理层ne307之间的物理层连接的创建,从而实现网络层ne302与网络层ne303之间的网络层连接。

图4是网元(networkelement,ne)400的实施方式的示意图,该ne400可以用作sdn域中的sdnc(例如,t-sdnc110和/或230)或网络设备(例如,物理层ne104至106、210至213、306至307或者网络层ne102至103、202至205或302至303等)。根据该实施方式,ne400可以被配置成:确定sdn域中对其他互连的sdn域可见的路由和/或链路;生成特定于sdn的拓扑信息;将特定于sdn的拓扑信息广播(例如,通告)至互连的sdn域;以及/或者建立物理层连接以实现网络层连接。ne400可以被实现在单个节点中,或者ne400的功能可以被实现在多个节点中。本领域技术人员将认识到,术语ne涵盖广泛范围的设备,ne400仅是其示例。出于清楚讨论的目的,包括了ne400,但这决不意味着将本公开内容的应用限制于特定ne实施方式或特定类的ne实施方式。可以在网络装置或部件如ne400中实现本公开内容中描述的特征/方法中的至少一些。例如,可以使用硬件、固件和/或安装在硬件上运行的软件来实现本公开内容中的特征/方法。

如图4所示,ne400可以包括收发器(tx/rx)410,该收发器(tx/rx)410可以是发送器、接收器或其组合。分别地,tx/rx410可以耦接至多个下游端口420以用于发送和/或接收来自其他节点的帧,并且tx/rx410可以耦接至多个上游端口450以用于发送和/或接收来自其他节点的帧。处理器430可以耦接至tx/rx410以处理帧以及/或者确定将帧发送到哪些节点。处理器430可以包括一个或更多个多核处理器以及/或者可以用作数据存储器、缓冲器等的存储器设备432。处理器430可以被实现为通用处理器,或者可以是一个或多个专用集成电路(applicationspecificintegratedcircuit,asic)和/或数字信号处理器(digitalsignalprocessor,dsp)的一部分。

处理器430可以包括邻接配置模块433,该邻接配置模块433可以实现如下面更充分讨论的邻接请求消息检查方法500和/或邻接配置方法600。在替选实施方式中,邻接配置模块433可以被实现为存储在存储器设备432中的可以由处理器430执行的指令。存储器设备432可以包括用于临时存储内容的例如随机存取存储器(randomaccessmemory,ram)的缓存器。另外,存储器设备432可以包括用于相对较长时间地存储内容的长期存储器例如只读存储器(readonlymemory,rom)。例如,缓存器和长期存储器可以包括动态随机存取存储器(dynamicrandomaccessmemory,dram)、固态驱动器(solid-statedrive,ssd)、硬盘或其组合。

应当理解,通过将可执行指令编程和/或加载到ne400上,改变了处理器430和/或存储器设备432中至少之一,将ne400部分地变换成具有本公开内容所教导的新颖功能的特定机器或装置例如邻接配置架构。对电气工程和软件工程领域而言基本的是,可以通过公知的设计规则将可以通过将可执行软件加载到计算机中实现的功能转换成硬件实现。在以软件来实现构思与以硬件来实现构思之间的决策通常取决于以下考虑:设计的稳定性和要生产的单元的数量的考虑,而不是在从软件域转换到硬件域中涉及的任何问题。通常,仍要经受频繁改变的设计可以优选地以软件来实现,因为重新开发硬件实现比重新开发软件设计更昂贵。通常,会大规模生产的稳定的设计可以优选地以硬件例如以asic来实现,因为对于批量生产,硬件实现会比软件实现更便宜。通常,可以以软件形式开发和测试设计,并且随后通过公知的设计规则将设计变换成以对软件的指令进行硬线连接的asic形式的等效硬件实现。以与由新的asic控制的机器是特定的机器或装置相同的方式,同样地,已经编程和/或加载有可执行指令的计算机同样可以被视为特定的机器或装置。

图5是用于检查邻接请求消息的方法500的实施方式的流程图,例如在网络层ne请求创建、修改和/或删除网络层连接时。方法500可以在物理层ne如物理层ne104至106、210至213或者306至307中实现。在步骤502处,方法500接收包括网络层消息的比特流。网络层消息包括网络邻接请求消息和/或网络层维护消息。在步骤504处,方法500检查网络层消息以确定网络层邻接请求,该网络层邻接请求指示第一网络层ne(例如,网络层ne102、103、204、205、302或303)正在请求添加、删除或改变与第二网络层ne(例如,网络层ne103、102、205、204、303或302)的网络层连接。在步骤506处,方法500将网络层邻接请求广播至传输软件定义网络(transportsoftwaredefinednetworking,sdn)控制器(例如,t-sdnc110或230)以支持对物理层ne端口(例如,物理层ne端口215、216、310或311)之间的传输层连接的创建、删除或修改(例如,对整个波长(lambda)或波长的时分部分的添加或删除),以实现第一网络层ne与第二网络层ne之间的网络层连接。可以由未被配置成修改通过网络分组接口卡转发的消息中所包含的头信息的网络分组接口卡来执行方法500的检查。这样,网络分组接口卡被配置成在物理层(例如,osi层1和osi层0)处进行通信,而不是在网络层(例如,osi层3)处进行通信。因此,方法500使物理层基于网络层请求自动地改变。

图6是用于配置网络层邻接关系的方法600的实施方式的流程图,例如在网络层ne请求创建、修改和/或删除网络层连接时。方法600可以在t-sdnc如t-sdnc110或230中实现。在步骤602处,方法600从物理层网元(networkelement,ne)(例如,物理层网元104至106、210至213或者306至307)接收指示物理层端口邻接信息的物理层邻接发现消息(例如,广播消息120或220)。在步骤604处,方法600基于物理层邻接发现消息来确定物理拓扑。

在步骤606处,方法600从物理层ne接收通告消息,每个通告消息指示物理层ne端口(例如,物理层ne端口215至216,参见图2)与邻近网络层ne(例如,网络层ne102至103、202至205或者302至303)之间的映射,一些通告消息包括指示第一网络层ne正在请求创建、删除或修改与第二网络层ne的网络层连接的网络层邻接请求。

在步骤608处,方法600基于网络层邻接请求、通告消息和物理拓扑来建立、删除或修改第一网络层ne与第二网络层ne之间的物理层连接。例如,方法600建立与第一网络层ne邻近的第一物理层ne端口和与第二网络层ne邻近的第二物理层ne端口之间的物理层连接(例如,通过针对该物理层连接分配波长和/或时隙),以实现第一网络层ne与第二网络层ne之间的网络层连接。作为另一示例,方法600删除与第一网络层ne邻近的第一物理层ne端口和与第二网络层ne邻近的第二物理层ne端口之间的现有物理层连接(例如,通过针对该物理层连接取消波长和/或时隙分配),以删除第一网络层ne与第二网络层ne之间的网络层连接。作为另一示例,方法600修改与第一网络层ne邻近的第一物理层ne端口和与第二网络层ne邻近的第二物理层ne端口之间的现有物理层连接,以改变第一网络层ne与第二网络层ne之间的网络层连接。例如,对现有物理层连接的修改可以包括添加或删除λ、λ的一部分和/或时隙以分别增加或减少物理层连接的带宽和相关联的网络层连接的带宽。

虽然本公开内容中提供了若干实施方式,但应当理解,在不脱离本公开内容的精神或范围的情况下,可以以许多其他具体形式实施所公开的系统和方法。本示例被认为是说明性的而不是限制性的,并且意在不限于本文给出的细节。例如,可以将各种元件或部件组合或集成在另一系统中,或者可以省略或不实现某些特征。

此外,在不脱离本公开内容的范围的情况下,在各种实施方式中描述和示出为分立或单独的技术、系统、子系统和方法可以与其他系统、模块、技术或方法组合或集成。被示出为或讨论为彼此耦接或直接耦接或通信的其他项可以通过某种接口、设备或中间部件间接地进行耦接或通信,无论是采用电方式、机械方式还是其他方式。在不脱离本文所公开的精神和范围的情况下,本领域技术人员可以确定并且做出关于改变、替换和变更的其他示例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1