一种软件定义天基骨干网络中链路拓扑发现方法与流程

文档序号:12134314阅读:757来源:国知局
一种软件定义天基骨干网络中链路拓扑发现方法与流程

本发明涉及天基骨干网络通信技术领域,特别涉及一种软件定义的天基骨干网络中链路拓扑发现方法。



背景技术:

软件定义网络(SDN)最初由美国斯坦福大学于2008年提出,旨在将传统网络的控制和转发解耦,为上层各种网络应用和业务提供高度灵活、弹性、可定制化服务。SDN采用逻辑上集中的控制平面(即天基网络控制器),相比分布式控制省去了网络节点之间交互控制信息的开销;转发平面(即SDN交换机)功能单一化,剥离了各种分布式控制信令,容易实现高可靠、高性能等优点。

当前的卫星网络存在地面网络管理与控制中心,负责卫星物理资源的分配和管理,而传统的路由等功能还是基于分布式的。卫星网络与软件定义的思想相结合,将卫星网络的物理资源、逻辑资源的管控统一起来,采用进一步逻辑上集中控制的思路,可提高整个系统的效率和性能,为业务提供更有效的服务质量和高度定制化服务,是将来卫星网络发展的一个趋势。

在软件定义网络中,传统的南向接口协议OpenFlow面向地面网络设计,存在交互流程冗余、复杂,计算开销复杂度高的问题。星载交换机的计算、存储、网络能力都与地面对应设备差几个数量级,若使用地面原始的OpenFlow协议,其性能会随着卫星网络规模的扩大而急剧降低(例如拓扑发现开销正比于全网星载交换机的总端口数),因此OpenFlow协议用于天基骨干网中,必须进行针对性优化,尤其要解决拓扑发现的逐端口LLDP帧探测问题。



技术实现要素:

本发明的目的是提出一种软件定义天基骨干网络中链路拓扑发现方法,旨在降低天基网络控制器采用OpenFlow协议实现天基骨干网络星载交换机拓扑发现的探测开销。

为了实现上述发明目的,本发明所采取的技术方案为:

一种软件定义天基骨干网络中链路拓扑发现方法,其特征在于,包括以下步骤:

(1)所有星载交换机在与天基网络控制器建立初始连接时,通过响应来自天基网络控制器的OFPT_FEATURES_REQUEST消息将各自的端口信息上报给天基网络控制器;所述的端口信息包括星载交换机每个端口的MAC地址和端口标识;

(2)天基网络控制器重新设置每个星载交换机中每个端口的MAC地址为端口对应的端口标识值;

(3)天基网络控制器命令每个星载交换机安装来自该天基网络控制器的LLDP帧处理流表项;并设置发送Packet Out消息的规则和Packet In消息处理规则;

(4)根据所设置的发送Packet Out消息的规则,在一个设定的探测周期内,天基网络控制器向每个星载交换机只发送一个Packet Out消息,且将Packet Out消息中LLDP帧的端口标识字段置为0;

(5)星载交换机收到Packet Out消息后,根据LLDP帧处理流表项对Packet Out消息中的LLDP帧进行修改,将修改后的LLDP帧发送给其他星载交换机对应的端口;

(6)其他星载交换机收到修改后的LLDP帧后,将修改后的LLDP帧和收到该帧的端口信息封装到Packet In消息中,上报到天基网络控制器;

(7)天基网络控制器收到封装后的Packet In消息后,根据所设置的Packet In消息处理规则解析Packet In消息,即将Packet In消息中LLDP帧外层的L2层帧的源MAC地址解析为端口的端口标识,得到发出LLDP帧的星载交换机及其对应端口和接收该LLDP帧的星载交换机及其对应端口;

(8)天基网络控制器根据发出LLDP帧的星载交换机及其对应端口和接收该LLDP帧的星载交换机及其对应端口得知前者端口到后者对应端口的有向链路;

完成软件定义天基骨干网络中链路的拓扑发现。

其中,步骤(3)中天基网络控制器命令每个星载交换机安装来自该天基网络控制器的LLDP帧处理流表项,具体为:天基网络控制器命令每个星载交换机采用逐端口复制LLDP帧,且每个星载交换机将LLDP帧对应的L2层帧的源MAC地址设置为被复制端口的MAC地址,即该端口的端口标识值,并将该修改后的LLDP帧通过该端口发送给其他星载交换机对应的端口。

其中,步骤(5)具体为:星载交换机收到Packet Out消息后,星载交换机将Packet Out消息中的LLDP帧进行逐端口复制,将该LLDP帧对应的L2层帧的源MAC地址设置为被复制端口的MAC地址,即该端口的端口标识值,并将该修改后的LLDP帧通过该端口发送给其他星载交换机对应的端口。

本发明与背景技术相比具有如下优点:

1.本发明将天基网络控制器在一个拓扑发现周期内,发送到各个星载交换机的LLDP帧总数从正比于全网星载交换机端口总数降低到正比于全网星载交换机总数。

2.星载交换机通过对LLDP帧的逐端口复制和L2层帧源MAC地址的改写,并未增加星载交换机的处理负担。

3.本发明支持混合模式,即通过L2层源地址的编址规划,可实现背景技术的方式与本发明提到的方式的同时工作,二者互不影响,具有良好的兼容性,因此支持渐进式部署。

附图说明

图1是本发明的流程图。

图2是软件定义天基骨干网络中基于LLDP的传统拓扑发现示意图。

图3是本发明提出的软件定义天基骨干网络基于LLDP的改进拓扑发现示意图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下参照图1-图3并举实施例,对发明方案作进一步地详细说明。所述的天基骨干网络包括卫星(内含星载交换机)、卫星终端、卫星终端下挂的由用户组成的用户子网以及天基网络控制器。

本发明的核心思想是:星载交换机在与天基网络控制器建立初始连接时通过OpenFlow协议的OFPT_FEATURES_REPLY消息响应天基网络控制器的OFPT_FEATURES_REQUEST消息,天基网络控制器利用OFPT_FEATURES_REPLY消息得到每个星载交换机的端口信息,使星载交换机通过改写LLDP帧对应的L2层帧的源MAC地址来区分该交换机每个端口转发的LLDP帧,最后由天基网络控制器通过解析L2层帧的源MAC地址为该端口的端口标识(Port ID),关联该LLDP帧所经过的星载交换机的源端口和目的端口从而发现该链路,实现链路发现。所述的端口信息包括星载交换机每个端口的MAC地址和Port ID;通过此方式,天基网络控制器可将LLDP帧的发送数量从正比于全网星载交换机的端口总数降到正比于全网星载交换机的数量,大大降低了全网拓扑发现的开销。

一种软件定义天基骨干网络中链路拓扑发现方法,如图1包括以下步骤:

(1)所有星载交换机在与天基网络控制器建立初始连接时,通过响应来自天基网络控制器的OFPT_FEATURES_REQUEST消息,将星载交换机各自的端口信息(包括端口的MAC地址和Port ID)上报给天基网络控制器;其中,OFPT_FEATURES_REQUEST消息对应的应答消息名称为OFPT_FEATURES_REPLY,该消息中包含该星载交换机的信息以及其每个端口的相关信息(如端口号、MAC地址、端口状态等)。

(2)天基网络控制器通过OFPT_PORT_MOD消息重新设置每个星载交换机中每个端口的MAC地址为其对应的Port ID值,即建立端口MAC地址与端口Port ID的映射关系;其中,要求星载交换机对OpenFlow协议的处理流程进行修改,即具有通过响应OFPT_PORT_MOD消息修改该端口MAC地址的能力。

(3)天基网络控制器命令每个星载交换机安装来自该天基网络控制器的LLDP帧处理流表项,具体为:天基网络控制器对每个星载交换机采用逐端口复制LLDP帧,且每个星载交换机将LLDP帧对应的L2层帧的源MAC地址设置为被复制端口的MAC地址即Port ID值,并将该修改后的LLDP帧通过该端口发送给其他星载交换机对应的端口;天基网络控制器设置发送LLDP帧的规则为:在一个设定的探测周期内,天基网络控制器为每个星载交换机只发送一个LLDP帧,且将该帧的Port ID字段置为0;天基网络控制器设定接收到的Packet In消息中的LLDP帧的处理规则为:天基网络控制器解析Packet In消息,即将Packet In消息中LLDP帧的L2层帧的源MAC地址解析为端口的Port ID,得到发出LLDP帧的星载交换机及其对应端口和接收该LLDP帧的星载交换机及其对应端口。

其中上文提到的探测周期由天基网络控制器设定,且对每个星载交换机可单独设置该值。此外Port ID值置为0,目的是匹配流表项,从而进行LLDP帧复制等操作。

(4)天基网络控制器为每个星载交换机生成Packet Out消息,消息内容为LLDP帧,天基网络控制器在一个设定周期内向每个星载交换机发送一个LLDP帧,该帧的Port ID字段为0,从而使该LLDP帧匹配对应的流表项。

(5)星载交换机收到LLDP帧后,对LLDP帧进行逐端口复制,将该LLDP帧对应的L2层帧的源MAC地址设置为被复制端口的MAC地址,即该端口的端口标识(Port ID),并将该修改后的LLDP帧通过该端口发送给其他星载交换机对应的端口;

(6)其他星载交换机收到修改后的LLDP帧后,将LLDP帧和收到该帧的端口信息封装到Packet In消息中,上报到天基网络控制器;

(7)天基网络控制器收到封装后的Packet In消息后,根据所设置LLDP帧的处理规则解析Packet In消息,即将Packet In消息中LLDP帧的L2层帧的源MAC地址解析为端口的Port ID,得到发出LLDP帧的星载交换机及其对应端口和接收该LLDP帧的星载交换机及其对应端口;

(8)天基网络控制器根据发出LLDP帧的星载交换机及其对应端口和接收该LLDP帧的星载交换机及其对应端口得知存在一条前者该端口到后者对应端口的有向链路。

为清楚的说明本发明,下面列举具体场景进行说明,其中图2、图3是同一场景,但是图2代表基于LLDP的传统拓扑发现流程,而图3是本发明提出的基于LLDP的拓扑发现改进流程。

实施例由单个天基网络控制器和两个星载交换机组成,天基网络控制器通过OpenFlow协议控制星载交换机S1、S2,而每个星载交换机具有3个端口,分别命名为Port 1、2、3,其中S1的Port 1与S2的Port 3存在一条链路。

如果采用图2所示的传统拓扑发现流程:

1)针对星载交换机S1,天基网络控制器需要为每个端口生成一个Packet Out消息,在该消息内包含对应的LLDP帧,其Port ID设置为该端口的ID,如对应端口1的LLDP帧内容包含:Chassis ID=S1,Port ID=Port 1。星载交换机S1具有3个端口,因此需要生成总共3个Packet Out消息,并通过OpenFlow的控制信道发送给星载交换机S1。

2)当上述LLDP帧被星载交换机S2收到并通过Packet In消息通知天基网络控制器时,控制器得到如下拓扑信息:存在链路(S1.Port1,S2.Port 3)。同理,对于星载交换机S2,流程类似,因此在一个探测周期,天基网络控制器总共需要发送6个Packet Out消息。

采用图3所示的改进拓扑发现流程:

1)针对星载交换机S1,天基网络控制器仅生成一个Packet Out消息,在该消息内包含对应的LLDP帧,其中Port ID设置为0。

2)星载交换机S1根据图3所示的流表项处理逻辑,对LLDP帧进行逐端口复制和L2层帧MAC地址改写,如针对端口1,其改写后LLDP帧内容为:Chassis ID=S1,Eth Src MAC=Port ID 1。

3)当上述LLDP帧被星载交换机S2收到并通过Packet In消息通知天基网络控制器时,控制器根据L2层帧MAC地址解析为该端口的Port ID,得到结果为S1.Port 1。据此得到链路信息:(S1.Port 1,S2.Port 3)。同理,对于星载交换机S2,流程类似,因此在一个探测周期,天基网络控制器总共需要发送2个Packet Out消息

以上,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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