CN107070791A - 一种sdn网络系统及其数据传输方法 - Google Patents

一种sdn网络系统及其数据传输方法 Download PDF

Info

Publication number
CN107070791A
CN107070791A CN201611247856.4A CN201611247856A CN107070791A CN 107070791 A CN107070791 A CN 107070791A CN 201611247856 A CN201611247856 A CN 201611247856A CN 107070791 A CN107070791 A CN 107070791A
Authority
CN
China
Prior art keywords
interchanger
flow table
strategy
packet
limited
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.)
Pending
Application number
CN201611247856.4A
Other languages
English (en)
Inventor
林昭文
郑楠
贾哲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
CETC 54 Research Institute
Original Assignee
Beijing University of Posts and Telecommunications
CETC 54 Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications, CETC 54 Research Institute filed Critical Beijing University of Posts and Telecommunications
Priority to CN201611247856.4A priority Critical patent/CN107070791A/zh
Publication of CN107070791A publication Critical patent/CN107070791A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9015Buffering arrangements for supporting a linked list

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种SDN网络系统及其数据传输方法,所述系统包括:转发层,包括由若干个交换机组成的网络拓扑以及通过所述网络拓扑传输数据包的源主机和目的主机;控制层,配置为获取策略并存储所述转发层的地址信息集合,基于所述策略和所述转发层的地址信息集合,选择具有最短传输路径的交换机,作为目的交换机;所述源主机和目的主机通过所述目的交换机传输数据。本发明不仅增强了网络的灵活性,同时也加强了控制器的控制性。

Description

一种SDN网络系统及其数据传输方法
技术领域
本发明涉及通信网络领域,更具体地,涉及SDN网络系统及其数据传输方法。
背景技术
SDN网络是一种新型的基于软件可编程思想的网络架构,与传统的网络不同,图1示出了SDN网络的架构图,所述SDN网络分为三部分:应用层、控制层以及转发层。控制层通过北向接口与应用层连接,同时通过南向接口与转发层连接。SDN网络采用一个集中式的控制层和分布式的转发层,控制层和转发层互相分离,通过控制层对转发层的集中化的控制,并提供开发的编程接口,为SDN网络提供灵活的可编程能力。
OpenFlow协议是2009年首次被提出的,主要是用来描述控制层与交换机所用的格式以及它们之间的接口标准,目前的OpenFlow协议已经经历了从1.0到1.5等版本的进化,每次版本的升级都有一些差异,OpenFlow流表是OpenFlow协议中一个重要的组成部分,OpenFlow流表(以下简称流表)是由控制层的控制器下发给转发层中的交换机,用来帮助交换机内数据包传递的介质,流表由控制器下发到交换机内后,将存在于交换机内,但是流表拥有生存时间,交换机收到数据包后,会根据流表的匹配字段(Match Field)与数据包信息进行匹配,之后进行转发,所述匹配字段主要的作用是用来匹配数据包,数据包的匹配域包含了以下的几个主要的字段:srcMac(源主机的Mac地址)、dstMac(目的主机的Mac地址)、srcIP(源主机的IP地址)以dstIP(目的主机的IP地址)。
数据包通过和流表的Match Field进行匹配,然后执行传输指令操作。
ONOS控制器是首款开源的SDN网络操作系统,其结构包含了分布式核心,北向抽象层,南向抽象层,而且所述北向抽象层和接口来使应用开发变得更加容易,还提供南向抽象层和接口来对接OpenFlow网络和传统网络,ONOS控制层具有可靠性强、性能好、灵活度高等特性,本文所指的控制器就是指ONOS控制器。
发明内容
本发明提供一种克服上述问题或者至少部分地解决上述问题的SDN网络系统及其数据传输方法。
根据本发明的一个方面,提供一种SDN网络系统,包括:
转发层,包括由若干个交换机组成的网络拓扑以及通过所述网络拓扑传输数据包的源主机和目的主机;
控制层,配置为获取策略并存储所述转发层的地址信息集合,基于所述策略和所述转发层的地址信息集合,选择具有最短传输路径的交换机,作为目的交换机;
其中,所述策略中至少包含受限的交换机的信息;
所述源主机和目的主机通过所述目的交换机传输数据。
根据本发明的另一个方面,提供一种SDN网络的数据传输方法,所述SDN网络系统包括控制层以及与所述控制层连接的转发层,所述转发层包括由若干个交换机组成的网络拓扑以及通过所述网络拓扑传输数据包的源主机和目的主机,所述方法包括:
S1、获取策略,所述策略中包含受限交换机信息,所述受限交换机信息包括限制传输的源主机和目的主机的地址信息以及接收该受限交换机信息的交换机;
S2、基于所述策略,从所述网络拓扑中选择具有最短传输路径的目标交换机;以及
S3、向所述目标交换机发送第一流表,使得目标交换机基于所述第一流表发送数据包。
本申请提出了一种SDN网络系统及其数据传输方法,通过向控制层下发一种策略,该策略包含了受限的交换机的地址,控制层收到该策略后会进行如下的操作:根据策略中的命令向策略中指定的交换机下发drop流表、控制层会将该策略保存在控制层中,其次当数据包在网络拓扑中进行转发时,如果负责转发的交换机将该数据包交给控制层进行分析(交换机内没有与该数据包匹配的流表),控制层会对该数据包进行选择路径,在选择路径的过程中会结合之前用户下发过的策略进行综合分析,使得这个数据包避开一些策略中对该流有限制的交换机节点。
附图说明
图1为现有技术中SDN网络的架构图;
图2为根据本发明实施例的SDN网络系统的示意图;
图3为根据本发明实施例的网络拓扑的结构示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图2示出了本发明提供的一种SDN网络系统,包括:
转发层,包括由若干个OVS(openvswith,交换机)组成的网络拓扑以及通过所述网络拓扑传输数据包的源主机和目的主机;
应用层,向所述控制层发送策略;
控制层,与转发层之间通过OpenFlow协议进行通信,控制层同时提供一种RESTAPI接口进行调用,本控制层配置为接收所述策略并存储所述转发层的地址信息集合,基于所述策略和所述转发层的地址信息集合,选择具有最短传输路径的交换机,作为目的交换机;其中
所述源主机和目的主机通过所述目的交换机传输数据。
在一个实施例中,所述策略中包含受限交换机信息,所述受限交换机信息包括限制传输的源主机和目的主机的地址信息以及接收该受限交换机信息的交换机,所述源主机和目的主机的地址信息包括srcMac、dstMac、srcIP以及dstIP四类,分别是源主机物理地址、目的主机的物理地址、源主机的IP地址以及目的主机的IP地址。
图3示出了本发明的一个实施例中网络拓扑的结构示意图,其中h1和h6分别表示源主机和目的主机,S1-S6分别表示6台交换机,所述网络拓扑与控制层连接(图中未示出)。
对于现有技术中的控制层,当主机h1与主机h6进行测试连接时,控制层会集合原有的fwd模块,并进行如下流程:
1)主机h1将数据包交给交换机S1,由于交换机内原本并没有与该数据包相匹配的流表,因此交换机S1会将该数据包以PacketIn消息的形式交给控制层进行处理;
2)控制层收到消息后,根据该数据包的信息计算出一条最短路径,既S1->S4->S6或者S1->S2->S6,假设这里计算出路径为S1->S4->S6;
3)控制层计算出路径后,会向交换机S1下发流表,该流表指定了进入S1交换机的这条流的转发规则;
4)当主机h1发送的数据包匹配了交换机S1中的流表后,将进入交换机S4;
5)交换机S4收到该数据包后,由于没有与之相匹配的流表,需要将该数据包以PacketIn消息的形式交给控制层进行处理;
6)控制层会同之前处理交换机S1的数据包的过程一样,继续计算路径,此时计算出的路径为S4->S6,同时向交换机S4下发流表;
7)当主机h1发送的数据包到达交换机S4,根据交换机S4内的流表,转发到交换机S6中;
8)交换机S6收到该流后,由于没有匹配的流表,依然将该数据包交给控制层进行处理;
9)控制层分析该数据包的信息,向交换机S6下发流表;
10)该数据包根据交换机S6中的流表到达主机h6;
11)由于网络中数据的转发是双向的,从主机h6会以同样的过程到达主机h1。
而本发明对控制器进行了二次开发,使得控制器具备接受某种策略以及具有重路由机制的数据转发的功能。
在一个实施例中,卸载控制器中本来的fwd模块,此时应用层通过REST API接口向控制器下发策略,下发策略的形式为上文所提到的四种形式。
在一个实施例中,本发明所述的SDN网络系统的数据传输方法包括:
1、控制器收到策略后,先向交换机S4下发drop流表,同时将所述策略保存在控制器中。
2、主机h1测试连接主机h6,主机h1将数据包交给交换机S1,由于交换机内原本并没有与该数据包相匹配的流表,交换机S1会将该数据包以PacketIn消息的形式交给控制器。
3、控制器收到PacketIn消息后,将该数据包进行解析,解析得到该数据包的srcMac、dstMac、srcIP以及dstIP,分别对应主机h1的物理地址,主机h6的物理地址,主机h1的IP地址,主机h6的IP地址,之后,控制器进行与之前保存的策略{“deviceId”:”S4”,”rules”:”srcMac=h1_Mac”}进行匹配,通过比较rules字段,得出交换机S4是阻止该数据包进行转发的。
4、交换机S4阻止由主机h1发往主机h6的数据包转发,因此,控制器计算当前网络拓扑,既由交换机{S1,S2,S3,S5,S6}以及其链路{S1_S2,S2_S1,S2_S3,S2_S6,S3_S2,S3_S5,S5_S6}组成的网络拓扑,这个网络拓扑去除了交换机S4以及其链路。
5、控制器根据以上获取得到的所述网络拓扑进行路由计算,通过调用迪杰斯特拉算法函数计算出最短路径,得出最短路径路径为S1->S2->S6,并向交换机S1下发流表。
6、从主机h1发往主机h6的数据包进入交换机S1后,交换机S1根据其流表,将数据包发送到交换机S2。
7、由于交换机S2中没有与之相匹配的流表,交换机S2依旧会将该数据包发往控制器进行处理。
8、同步骤4,控制器通过网络拓扑计算出接下来的最短路径为S2->S6,控制器向交换机S2发送流表。
9、该数据包进入到交换机S2,交换机根据其流表,将数据包发送至交换机S6。
10、同上述步骤相同,控制器向交换机S6发送流表。
11、交换机S6根据流表,将数据包发送至主机h6。
由于网络中数据转发是双向的,因此,从主机h6到达主机h1也将经过以上的过程.
在一个实施例中,由于流表具有一定的时限,则在时限内,主机h1与主机h6进行通信将依赖于交换机内存在的流表进行转发。
本申请提出了一种SDN网络系统及其数据传输方法,通过向控制层下发一种策略,该策略包含了受限的交换机的地址,控制层收到该策略后会进行如下的操作:根据策略中的命令向策略中指定的交换机下发drop流表、控制层会将该策略保存在控制层中,其次当数据包在网络拓扑中进行转发时,如果负责转发的交换机将该数据包交给控制层进行分析(交换机内没有与该数据包匹配的流表),控制层会对该数据包进行选择路径,在选择路径的过程中会结合之前用户下发过的策略进行综合分析,使得这个数据包避开一些策略中对该流有限制的交换机节点。
本发明并不影响数据包的传递,数据包同时也能避开某些交换机以及某些链路,不仅增强了网络的灵活性,同时也加强了控制器的控制性。
在一个实施例中,所述控制层包括:
接收模块,与所述应用层连接,配置为接收所述策略,所述策略中至少包含受限的交换机的信息;
存储模块,与所述转发层连接,配置为存储所述转发层的地址信息集合,所述转发层的地址信息集合包括任意一个交换机、源主机和目的主机的地址信息;
选择模块,与所述接收模块和存储模块连接,配置为基于所述策略和所述转发层的地址信息集合,选择具有最短传输路径的目标交换机作为目的交换机;
第一发送模块,与所述选择模块连接,配置为基于所述目的交换机的信息创建第一流表,并发送至对应的目的交换机;以及
第二发送模块,与所述接收模块连接,配置为基于所述策略创建第二流表,并发送至所述受限的交换机。
在一个实施例中,所述目的交换机配置为接收所述第一流表,并基于所述第一流表,将所述源主机传输的数据发送至所述目的主机。
在一个实施例中,所述策略还包括源主机和目的主机的地址信息;
所述受限的交换机配置为接收所述第二流表,并基于所述第二流表,阻止从所述源主机发送至所述目的主机的数据包转发。
最后,本申请的方法仅为较佳的实施方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种SDN网络系统,其特征在于,包括:
转发层,包括由若干个交换机组成的网络拓扑以及通过所述网络拓扑传输数据包的源主机和目的主机;
控制层,配置为获取策略并存储所述转发层的地址信息集合,基于所述策略和所述转发层的地址信息集合,选择具有最短传输路径的交换机,作为目的交换机;
其中,所述策略中包含受限交换机信息,所述受限交换机信息包括限制传输的源主机和目的主机的地址信息以及接收该受限交换机信息的交换机;
所述源主机和目的主机通过所述目的交换机传输数据。
2.如权利要求1所述的SDN网络系统,其特征在于,还包括:
应用层,向所述控制层发送所述策略。
3.如权利要求2所述的SDN网络系统,其特征在于,所述控制层包括控制器,所述控制器包括:
接收模块,与所述应用层连接,配置为接收所述策略;
存储模块,与所述转发层连接,配置为存储所述转发层的地址信息集合,所述转发层的地址信息集合包括任意一个交换机的地址信息;
选择模块,与所述接收模块和存储模块连接,配置为基于所述策略和所述转发层的地址信息集合,选择具有最短传输路径的目标交换机作为目的交换机;
第一发送模块,与所述选择模块连接,配置为基于所述目的交换机的信息创建第一流表,并发送至对应的目的交换机;以及
第二发送模块,与所述接收模块连接,配置为基于所述策略创建第二流表,并发送至所述受限的交换机。
4.如权利要求3所述的SDN网络系统,其特征在于,所述目的交换机配置为接收所述第一流表,并基于所述第一流表,将所述源主机传输的数据发送至所述目的主机。
5.如权利要求3所述的SDN网络系统,其特征在于,所述策略还包括源主机和目的主机的地址信息;
所述受限的交换机配置为接收所述第二流表,并基于所述第二流表,阻止从所述源主机发送至所述目的主机的数据包转发。
6.如权利要求1-5任意一项所述的SDN网络架构的流量调度方法,其特征在于,所述控制层基于迪杰斯特拉算法选择具有最短传输路径的目标交换机。
7.一种SDN网络的数据传输方法,其特征在于,包括:
S1、获取策略,所述策略中包含受限交换机信息,所述受限交换机信息包括限制传输的源主机和目的主机的地址信息以及接收该受限交换机信息的交换机;
S2、基于所述策略,从所述网络拓扑中选择具有最短传输路径的目标交换机;以及
S3、向所述目标交换机发送第一流表,使得目标交换机基于所述第一流表发送数据包。
8.如权利要求7所述的SDN网络的数据传输方法,其特征在于,所述步骤S1进一步包括:
S1.1、基于预先创建的接口接收策略,所述策略中包含受限交换机信息,所述受限交换机信息包括限制传输的源主机和目的主机的地址信息以及接收该受限交换机信息的交换机;以及
S1.2、向所述接收该受限交换机信息的交换机发送第二流表,以使所述受限的交换机阻止从所述源主机发送至所述目的主机的数据包转发。
9.如权利要求8所述的SDN网络的数据传输方法,其特征在于,所述步骤S2进一步包括:
S2.1、对数据包进行解析,获得所述数据包中的源主机和目的主机的地址信息;
S2.2、将所述策略与所述数据包中的源主机和目的主机的地址信息进行匹配,若匹配成功,从所述网络拓扑中排除所述接收该受限交换机信息的交换机,获得新的网络拓扑;以及
S2.3、从所述新的网络拓扑中计算具有最短传输路径的目标交换机。
10.如权利要求9所述的SDN网络的数据传输方法,其特征在于,所述步骤S3进一步包括:
S3.1、将第一流表发送至所述目标交换机中最接近所述源主机的第一个目标交换机,所述第一流表包含所述步骤S2.3获得的目的交换机的信息;以及
S3.2、所述第一个交换机接收所述第一流表,并基于所述第一流表将所述数据包发送至与其最近的第二个目的交换机,直至目的主机接收到所述数据包。
CN201611247856.4A 2016-12-29 2016-12-29 一种sdn网络系统及其数据传输方法 Pending CN107070791A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611247856.4A CN107070791A (zh) 2016-12-29 2016-12-29 一种sdn网络系统及其数据传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611247856.4A CN107070791A (zh) 2016-12-29 2016-12-29 一种sdn网络系统及其数据传输方法

Publications (1)

Publication Number Publication Date
CN107070791A true CN107070791A (zh) 2017-08-18

Family

ID=59624285

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611247856.4A Pending CN107070791A (zh) 2016-12-29 2016-12-29 一种sdn网络系统及其数据传输方法

Country Status (1)

Country Link
CN (1) CN107070791A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547418A (zh) * 2018-10-31 2019-03-29 中国科学院计算机网络信息中心 基于软件定义网络sdn的数据传输网络系统
CN110365553A (zh) * 2019-07-24 2019-10-22 湘潭大学 一种基于SDN的IPv6网络流量监控方法及系统
CN114338510A (zh) * 2021-12-09 2022-04-12 北京华云安信息技术有限公司 控制和转发分离的数据转发方法和系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103621027A (zh) * 2011-05-30 2014-03-05 日本电气株式会社 通信路由控制系统和通信路由控制方法
CN104580168A (zh) * 2014-12-22 2015-04-29 华为技术有限公司 一种攻击数据包的处理方法、装置及系统
CN105282043A (zh) * 2014-06-20 2016-01-27 中国电信股份有限公司 全局网络负载均衡系统、设备和方法
CN105933253A (zh) * 2016-04-13 2016-09-07 浪潮集团有限公司 一种sdn网络下交换机配置恢复方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103621027A (zh) * 2011-05-30 2014-03-05 日本电气株式会社 通信路由控制系统和通信路由控制方法
CN105282043A (zh) * 2014-06-20 2016-01-27 中国电信股份有限公司 全局网络负载均衡系统、设备和方法
CN104580168A (zh) * 2014-12-22 2015-04-29 华为技术有限公司 一种攻击数据包的处理方法、装置及系统
CN105933253A (zh) * 2016-04-13 2016-09-07 浪潮集团有限公司 一种sdn网络下交换机配置恢复方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547418A (zh) * 2018-10-31 2019-03-29 中国科学院计算机网络信息中心 基于软件定义网络sdn的数据传输网络系统
CN109547418B (zh) * 2018-10-31 2021-05-14 中国科学院计算机网络信息中心 基于软件定义网络sdn的数据传输网络系统
CN110365553A (zh) * 2019-07-24 2019-10-22 湘潭大学 一种基于SDN的IPv6网络流量监控方法及系统
CN114338510A (zh) * 2021-12-09 2022-04-12 北京华云安信息技术有限公司 控制和转发分离的数据转发方法和系统

Similar Documents

Publication Publication Date Title
CN102857416B (zh) 一种实现虚拟网络的方法、控制器和虚拟网络
CN104283791B (zh) 一种sdn网络中的三层拓扑确定方法和设备
CN102368727B (zh) 跨ip网络的trill网络通信方法、系统和设备
CN102792646B (zh) 通信系统、控制装置、通信方法
CN101136921B (zh) 通信装置及通信系统
JP3748216B2 (ja) パケット転送方法およびパケット送受信装置
CN104272679A (zh) 通信系统、控制装置、通信方法以及程序
CN103858391A (zh) 在转发层面针对无连接的mpls网络使mpls路径环回
CN103081418A (zh) 计算机系统和计算机系统中的通信方法
CN104335537A (zh) 用于层2多播多路径传送的系统和方法
EP2596603B1 (en) Ethernet switch and method for routing ethernet data packets
EP2974147B1 (en) Loop-free hybrid network
JP5987971B2 (ja) 通信システム、スイッチ、制御装置、制御用チャネルの構築方法及びプログラム
CN103069756A (zh) 通信系统、控制器、节点控制方法和程序
CN105009526A (zh) 控制装置、控制系统、交换机控制方法和程序
CN103023773A (zh) 多拓扑网络中转发报文的方法、装置和系统
WO2017084448A1 (zh) 一种网络系统及网络运行方法
CN102891800A (zh) 获知溢出地址的可升级转发表
KR20160122226A (ko) 통신 시스템, 제어 장치, 통신 제어 방법 및 프로그램
CN103733577B (zh) 数据包转发系统、控制装置、数据包转发方法
CN107070791A (zh) 一种sdn网络系统及其数据传输方法
CN104335536B (zh) 分组传送系统、控制装置、分组传送方法
CN105812257A (zh) 业务链路由管理系统及其使用方法
CN105075196A (zh) 控制器、通信系统、路径切换方法和程序
US20150003291A1 (en) Control apparatus, communication system, communication method, and program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170818