CN104883303A - 一种sdn架构中多流表网络路由追踪的方法 - Google Patents

一种sdn架构中多流表网络路由追踪的方法 Download PDF

Info

Publication number
CN104883303A
CN104883303A CN201510275150.8A CN201510275150A CN104883303A CN 104883303 A CN104883303 A CN 104883303A CN 201510275150 A CN201510275150 A CN 201510275150A CN 104883303 A CN104883303 A CN 104883303A
Authority
CN
China
Prior art keywords
bag
workflow
probe
stream table
path
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.)
Granted
Application number
CN201510275150.8A
Other languages
English (en)
Other versions
CN104883303B (zh
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.)
State Grid Corp of China SGCC
State Grid Shanghai Electric Power Co Ltd
Smart Grid Research Institute of SGCC
Original Assignee
State Grid Corp of China SGCC
State Grid Shanghai Electric Power Co Ltd
Smart Grid Research Institute of SGCC
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 State Grid Corp of China SGCC, State Grid Shanghai Electric Power Co Ltd, Smart Grid Research Institute of SGCC filed Critical State Grid Corp of China SGCC
Priority to CN201510275150.8A priority Critical patent/CN104883303B/zh
Publication of CN104883303A publication Critical patent/CN104883303A/zh
Application granted granted Critical
Publication of CN104883303B publication Critical patent/CN104883303B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/54Organization of routing tables

Landscapes

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

Abstract

本发明提供一种SDN架构中多流表网络路由追踪的方法,所述方法包括:(1)分别对工作流和探针包的标志位进行染色;(2)设计多流表结构,区分工作流和探针包;(3)对消息包进行解析,还原所追踪的路由路径。本发明在每个交换机上多加2条用于区别工作流和探针包的流表项,和一个收集器,用于重构网络路由路径,结构简单,开销低。只要发送一个探针包即可追踪网络中任意目标流的真实轨迹,操作方便;在不改变原有工作流转发的情况下,能够准确地获得追踪路径,性能优越,追踪准确;易复制,可扩展性强,可发送多个探针包,同时追踪多条目标路径,而且收集器也可水平扩展,增大处理性能。

Description

一种SDN架构中多流表网络路由追踪的方法
技术领域
本发明涉及一种路由追踪的方法,具体涉及一种SDN架构中多流表网络路由追踪的方法。
背景技术
软件定义网络(Software Defined Networking,SDN)是近年来提出的一种新型网络体系结构,它很好地实现了数据平面和控制平面的解耦。在数据平面中,由交换机等网络核心设备负责数据包的转发和处理;在控制平面中,存在着一个逻辑集中的控制器,它通过链路与各个交换机相连,通过对交换机下发流表项来指导数据包的转发和处理。
近年来,SDN正在逐渐成为学术界和工业界的研究热点。尤其在数据中心领域中有非常丰富的应用场景,例如流量监控,流量工程,路由优化,负载均衡,异常检测等网络管理和优化工作。SDN已有一些具体实现,例如OpenFlow,NetOpen,LabelCast等。其中OpenFlow作为软件定义网络的一个代表性实例,已经被全球众多的科研机构和大学部署。
OpenFlow网络的一个特点是,控制器能够将高层的抽象策略很好的转化为底层的具体功能,以流表项的形式下发到对应的交换机,从而出色地管理好网络。为了能够较好地诊断网络的一些具体行为,对于底层的具体流表转发规则的获知是非常有必要的。
在现有的检测机制中,为了获知具体的转发信息,有些通过控制器层面来获得,有些通过数据平面的交换机流表来获得。然而无论是哪种方法,获得的只是理想中的转发信息,但这并不意味着真实的转发,真的是按所下的规则在进行。事实上,这种流表规则和真实转发不一样的现象,在真实的运行环境中是存在的。例如,当你下发了一条具体的流表时,但由于交换机的某些bug,导致这条规则并没有执行。又例如,现在的交换机有些下发的是通配符类型的流表,这意味着一条流,可能匹配多个规则,当你的本意是希望该流匹配A规则的时候,如果此时存在B规则,且B的优先级比A高的时候,那么会出现真实的转发与你预想的不同的情况,即使相应的规则的确下发了。
因此在现有的OpenFlow网络部署中,如果拥有对网络流的真实追踪能力,则将大大的提高对网络运行的故障诊断能力,而现实却是十分缺乏相应的网络流追踪工具。
发明内容
为了克服上述现有技术的不足,本发明提供一种SDN架构中多流表网络路由追踪的方法,本发明在每个交换机上多加2条用于区别工作流和探针包的流表项,和一个收集器,用于重构网络路由路径。
为了实现上述发明目的,本发明采取如下技术方案:
一种SDN架构中多流表网络路由追踪的方法,所述方法包括如下步骤:
(1)分别对工作流和探针包的标志位进行染色;
(2)设计多流表结构,区分工作流和探针包;
(3)对消息包进行解析,还原所追踪的路由路径。
优选的,所述标志位为数据包包头中除用于做转发规则匹配的任何一位。
优选的,所述步骤(2)包括如下步骤:
A、设计2个流表;
B、流表1对工作流和探针包进行区分;
B-1、若为工作流,流表1将其直接跳转至流表2;
B-2、若为探针包,流表1产生一个消息包,将消息包发送到收集器,再将探针包跳转至流表2;
C、流表2转发工作流或探针包的匹配规则;
优选的,所述消息包的内容包括所述探针包的包头信息和这一跳的交换机ID。
优选的,所述步骤(3)中收集器接收并解析消息包数据,根据网络拓扑结构及个交换机端口连接情况,使用还原算法对真实的转发路径进行重构。
优选的,所述还原算法包括如下情况:
情况1:若每一条消息包都准确的发送到收集器,则根据消息包的内容和网络拓扑结构,使用节点逆推方式,即可重构出真实的路由路径;
情况2:若每一条消息包不能准确的发送到收集器,则根据网络拓扑结构的连接关系,推出丢失节点,按照情况1没有丢失节点的算法,即可重构出真实的路由路径。
与现有技术相比,本发明的有益效果在于:
本发明在每个交换机上多加2条用于区别工作流和探针包流表项,和一个收集器,其结构简单,开销低;只要发送一个探针包即可追踪网络中任意目标流的真实轨迹,操作方便;在不改变原有工作流转发的情况下,能够准确地获得追踪路径,性能优越,追踪准确;易复制,可扩展性强,可发送多个探针包,同时追踪多条目标路径,而且收集器也可水平扩展,增大处理性能。
附图说明
图1是一种SDN架构中多流表网络路由追踪的方法流程图
图2是路径重构的一种情况的示意图
图3是路径重构的另一种情况的示意图
具体实施方式
下面结合附图对本发明作进一步详细说明。
如图1所示,一种SDN架构中多流表网络路由追踪的方法,例如当我们想追踪从主机H1到H50的一条流,可以采用如下的方法:
首先,在追踪之前,我们先将工作流(正常转发的流)和探针包进行标志位的染色,以作区分。我们默认将工作流的标志位染成0,将探针包的标志位染成1。这里的标志位可以是数据包包头的任何一位,只要它没有用来做具体转发规则的匹配即可,在我们的系统中,我们将VLAN优先级位(VLAN priority bit)作为我们的标志位。
其次,就是我们的多流表结构设计。在这里,涉及到2个流表。流表1用来对工作流和探针包进行区别处理。对于工作流而言,标志位是0,则直接跳到表2,流表2对应的是原先正常转发的规则。对于探针包而言,标志位是1,则首先会产生一个消息包,发送给远端的收集器,然后再跳到流表2,跟工作流一样,进行正常的路由。这里消息包的内容包括:该流的包头信息和这一跳的交换机ID。
这样由于标志位的不同,工作流会按照原来的转发规则进行转发而不受到任何的影响,而探针包则由于标志位的不同,每经过一跳,会将对应的消息包发送给收集器,则在收集器端,只要对相应的消息包进行解析,就能还原出,所追踪流的真实路由路径了。
这里的路径重构,分几种情况进行讨论:
情况1:如图2所示,如果每一跳的消息包都准确地发送到了收集器,那么路径重构是十分简单的。因为我们事先已经知道了网络的拓扑结构以及各个交换机的端口连接情况。同时,我们的消息包内含了所经过的交换机ID号以及对应的输入端口,则我们只要从目的端开始,按照拓扑的结构,一个节点,一个节点的逆推回去,直到最终的源端即可。
情况2:如图3所示,如果丢失信息的节点,那么我们可以通过拓扑的连接关系,从S5的输入端口推出S4,从S3的输入端口推出S2,然后按照没有丢失信息的算法,我们很快能够重构出真实的路径。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求范围当中。

Claims (6)

1.一种SDN架构中多流表网络路由追踪的方法,其特征在于,所述方法包括如下步骤:
(1)分别对工作流和探针包的标志位进行染色;
(2)设计多流表结构,区分工作流和探针包;
(3)对消息包进行解析,还原所追踪的路由路径。
2.根据权利要求1所述路由追踪的方法,其特征在于,在所述步骤(1)中,所述标志位为数据包包头中除用于做转发规则匹配的任何一位。
3.根据权利要求1所述路由追踪的方法,其特征在于,所述步骤(2)包括如下步骤:
A、设计2个流表;
B、流表1对工作流和探针包进行区分;
B-1、若为工作流,流表1将其直接跳转至流表2;
B-2、若为探针包,流表1产生一个消息包,将消息包发送到收集器,再将探针包跳转至流表2;
C、流表2以原先正常转发的规则转发,进行正常的路由。
4.根据权利要求3所述路由追踪的方法,其特征在于,所述消息包的内容包括所述探针包的包头信息和这一跳的交换机ID。
5.根据权利要求1所述路由追踪的方法,其特征在于,所述步骤(3)中,收集器接收并解析消息包数据,根据网络拓扑结构及个交换机端口连接情况,使用还原算法对真实的转发路径进行重构。
6.根据权利要求5所述路由追踪的方法,其特征在于,所述还原算法包括如下情况:
情况1:若每一条消息包都准确的发送到收集器,则根据消息包的内容和网络拓扑结构,使用节点逆推方式,即可重构出真实的路由路径;
情况2:若每一条消息包不能准确的发送到收集器,则根据网络拓扑结构的连接关系,推出丢失节点,按照情况1没有丢失节点的算法,即可重构出真实的路由路径。
CN201510275150.8A 2015-05-26 2015-05-26 一种sdn架构中多流表网络路由追踪的方法 Active CN104883303B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510275150.8A CN104883303B (zh) 2015-05-26 2015-05-26 一种sdn架构中多流表网络路由追踪的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510275150.8A CN104883303B (zh) 2015-05-26 2015-05-26 一种sdn架构中多流表网络路由追踪的方法

Publications (2)

Publication Number Publication Date
CN104883303A true CN104883303A (zh) 2015-09-02
CN104883303B CN104883303B (zh) 2019-03-08

Family

ID=53950643

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510275150.8A Active CN104883303B (zh) 2015-05-26 2015-05-26 一种sdn架构中多流表网络路由追踪的方法

Country Status (1)

Country Link
CN (1) CN104883303B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105407046A (zh) * 2015-11-25 2016-03-16 国网智能电网研究院 一种在软件定义网络中获取网络设备转发状态的方法
WO2017067178A1 (zh) * 2015-10-23 2017-04-27 华为技术有限公司 VxLAN中的路径探测方法,控制器和网络设备
CN107135100A (zh) * 2017-05-02 2017-09-05 国网辽宁省电力有限公司 一种sdn网络的故障节点探测方法
CN107171832A (zh) * 2017-05-02 2017-09-15 国网辽宁省电力有限公司 一种sdn网络的故障节点探测系统
CN107276800A (zh) * 2017-06-12 2017-10-20 郑州云海信息技术有限公司 一种用于云数据中心的网络流量追踪方法及装置
CN107623629A (zh) * 2016-07-15 2018-01-23 华为技术有限公司 一种流转发路径的还原方法及设备

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104038384A (zh) * 2014-05-22 2014-09-10 中国电子科技集团公司第三十研究所 一种基于gbf的追踪溯源系统及其工作方法
CN104601394B (zh) * 2014-11-26 2018-09-21 华为技术有限公司 一种业务链连通性检测的方法、装置及系统

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017067178A1 (zh) * 2015-10-23 2017-04-27 华为技术有限公司 VxLAN中的路径探测方法,控制器和网络设备
US10484206B2 (en) 2015-10-23 2019-11-19 Huawei Technologies Co., Ltd. Path detection method in VxLAN, controller, and network device
CN105407046A (zh) * 2015-11-25 2016-03-16 国网智能电网研究院 一种在软件定义网络中获取网络设备转发状态的方法
CN107623629A (zh) * 2016-07-15 2018-01-23 华为技术有限公司 一种流转发路径的还原方法及设备
CN107623629B (zh) * 2016-07-15 2020-03-10 华为技术有限公司 一种流转发路径的还原方法及设备
CN107135100A (zh) * 2017-05-02 2017-09-05 国网辽宁省电力有限公司 一种sdn网络的故障节点探测方法
CN107171832A (zh) * 2017-05-02 2017-09-15 国网辽宁省电力有限公司 一种sdn网络的故障节点探测系统
CN107276800A (zh) * 2017-06-12 2017-10-20 郑州云海信息技术有限公司 一种用于云数据中心的网络流量追踪方法及装置

Also Published As

Publication number Publication date
CN104883303B (zh) 2019-03-08

Similar Documents

Publication Publication Date Title
CN104883303A (zh) 一种sdn架构中多流表网络路由追踪的方法
CN102594689B (zh) 一种分布式网络控制方法及装置
EP2544409B1 (en) Generic monitoring packet handling mechanism for OpenFlow 1.1
EP2553886B1 (en) Aggregating data traffic from access domains
CN105743734B (zh) 虚拟机镜像流量传输的控制方法和装置
CN102368727B (zh) 跨ip网络的trill网络通信方法、系统和设备
US8462636B2 (en) Systems and methods for communication of management traffic over link aggregation group interface for a network element with distributed architecture
CN106605392A (zh) 用于使用控制器在网络上进行操作的系统和方法
CN105009526A (zh) 控制装置、控制系统、交换机控制方法和程序
CN104518967A (zh) 路由方法、设备和系统
CN101136921A (zh) 通信装置及通信系统
CN104335537A (zh) 用于层2多播多路径传送的系统和方法
KR20150051107A (ko) 신속한 경로 설정 및 장애 복구 방법
CN104901890A (zh) 一种sdn的路由生成、匹配方法和系统
CN102511151A (zh) 一种路由器、虚拟集群路由器系统及建立方法
CN103152205B (zh) 基于流索引的oam处理方法及装置
CN106209615B (zh) 一种基于spfa算法计算转发路径的动态路由控制方法和系统
CN103354509B (zh) 一种链路连接信息的获取方法和设备
KR20160122226A (ko) 통신 시스템, 제어 장치, 통신 제어 방법 및 프로그램
CN106936609A (zh) 一种软件定义网络中控制转发设备集群的方法及控制器
US9832114B2 (en) Packet forwarding system, control apparatus, packet forwarding method, and program
Chen et al. Link failure recovery in sdn: High efficiency, strong scalability and wide applicability
CN104980302A (zh) 一种在sdn框架下基于stp消除冗余链路的方法
CN107786497A (zh) 生成acl表的方法和装置
EP2991286A1 (en) Communication node, communication system, packet processing method and program

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