CN114978967B - 基于流表项有效时间的sdn大象流侦测器实现方法 - Google Patents
基于流表项有效时间的sdn大象流侦测器实现方法 Download PDFInfo
- Publication number
- CN114978967B CN114978967B CN202210596267.6A CN202210596267A CN114978967B CN 114978967 B CN114978967 B CN 114978967B CN 202210596267 A CN202210596267 A CN 202210596267A CN 114978967 B CN114978967 B CN 114978967B
- Authority
- CN
- China
- Prior art keywords
- flow
- elephant
- detector
- effective time
- flow table
- 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
- 241000406668 Loxodonta cyclotis Species 0.000 title claims abstract description 222
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000001514 detection method Methods 0.000 claims abstract description 46
- 235000019580 granularity Nutrition 0.000 claims description 85
- 230000004044 response Effects 0.000 claims description 25
- 238000012545 processing Methods 0.000 claims description 17
- 235000014510 cooky Nutrition 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 15
- 238000012937 correction Methods 0.000 claims description 8
- 238000004458 analytical method Methods 0.000 claims description 7
- 239000000284 extract Substances 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 7
- 238000005457 optimization Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 5
- 230000000295 complement effect Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000002715 modification method Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000011897 real-time detection Methods 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/12—Network monitoring probes
-
- 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/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/028—Dynamic adaptation of the update intervals, e.g. event-triggered updates
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Abstract
本发明公开了一种基于流表项有效时间的SDN大象流侦测器实现方法,包括如下步骤:1)大象流侦测器初始化流表项;2)大象流侦测器动态调节流表项有效时间;3)大象流侦测器统计流数据分组信息;4)大象流侦测器补全校正流统计信息;5)大象流侦测器对大象流进行建模;6)大象流侦测器侦测大象流。这种方法在不修改现有接口协议的前提下,保证了侦测的高精度、低延时、和低控制带宽消耗,适用于高速数据中心网络通过快速高精度识别大象流对网络性能和资源进行管理和优化,保证对延时和带宽有特别要求的应用的服务质量和用户体验。
Description
技术领域
本发明涉及大象流侦测技术,具体是一种基于流表项有效时间的SDN大象流侦测器实现方法。
背景技术
传统计算机网络是一个基于TCP/IP架构的分层系统,不同类型的网络设备在不同层工作。数据分组(包)是计算机网络传输信息的单元。数据分组在通过不同网络设备的传输过程中需根据不同层面协议进行封装和解封。因此,每个数据分组除了包含需要传输的用户信息外,还包含了多种协议的首部字段,便于在不同设备进行传输。在这些字段中,计算机网络将具有相同五元组(源IP地址字段、目的IP地址字段、源端口号字段、目的端口号字段、协议号字段)的数据分组定义成流。因此,流是具有相同五元组的数据分组的时间序列,也就是特定网络应用传输的包的集合,比如某个视频流、语音流、文件流等。根据流包含的字节数或者占用网络带宽的多少,计算机网络通常将流分为大象流和老鼠流。大象流包含字节数大、持续时间长、消耗的网络带宽高,老鼠流字包含节数少,持续时间短,消耗的带宽低,但通常要求低传输延时。当多个大象流共享相同的网络路径时,该路径大概率会被堵塞,造成整个网络性能的恶化。侦测大象流可以把网络中的大象流及时准确地识别出来,以便优化大象流的路由,避免网络的拥堵。因此,大象流侦测是当前网络性能管理和资源优化的常用手段。
典型大象流侦测器是一个大象流的侦测软件,输入被测数据流,根据大象流模型,输出被测数据流的侦测结果。传统计算机网络的大象流侦测器主要部署在普通主机或者专用服务器上。由于主机通常只能收集本地的数据流信息,基于主机的大象流侦测器占用的资源少,但只能侦测本地的大象流,制定局部的管理和优化策略。部署在专用服务器的大象流侦测器通常需要收集全网的流量信息对全网的大象流进行侦测,制定和部署全局的网络管理和优化策略,对网络进行全局管理和优化。由于传统计算机网络并没有定义通用的接口和协议进行网络流量的搜集,专用服务器需要开发特定接口和协议完成全网流量的搜集,导致侦测器开发难度大、兼容性差、部署难度高。同时,网络流量的搜集过程可能会占用大量的数据传输带宽,影响用户数据分组的传输和恶化网络的性能。另外,由于传统计算机网络缺乏通用接口协议的支持,大象流侦测后制定的全局网络管理和优化策略也很难通过专用服务器部署到各网络设备,网络的全局管理和优化实际上很难实现。
与传统计算机网络将控制与转发功能耦合在网络设备不同,软件定义网络(Software Defined Networking, 简称SDN)定义了一种控制与转发功能完全解耦的新型网络架构。 基于软件定义网络架构的计算机网络包含完全分离的控制平面和数据平面。数据平面包含各类转发设备,如SDN交换机或者路由器,控制平面包含SDN控制器。SDN转发设备根据转发规则完成对数据包的转发,但其本身并不具备创建转发规则的能力,转发规则的创建需要SDN控制器来完成。SDN网络将转发规则称为流表项,流表项保存在转发设备的流表。流表其实是转发设备的部分内存空间。由于流表项是基于流的转发规则,一个SDN转发设备比一个传统转发设备需要更多的转发规则。同时每条流表项包含了匹配字段、转发动作、统计信息、有效时间、cookie等较多信息,因此,每条流表项占用更多的内存空间。由于每个转发设备的内存空间有限,每条SDN流表项配置了有效时间管理该流表项在流表的生命周期,提高流表资源的利用率,避免流表溢出恶化网络性能。另一方面,由于每条流表项都有有效时间,当转发设备接收到一个数据分组后在其流表查找对应的流表项时,有两种情况转发设备无法找到对应的流表项:1)接收到的数据分组属于一个新流,其对应的流表项还未创建;2)接收到的数据分组不属于一个新流,但是对应的流表项已经失效并被清理出流表内存。无论哪一种情况,转发设备都会将接收到的数据分组封装成packet_in流表项创建请求发送到SDN控制器。SDN控制器接收到packet_in请求后会创建对应的转发规则,并通过flow_mod消息将流表项下发到转发设备的流表保存。所以,SDN转发设备会将每个流的第一个包和部分后续包转发到SDN控制器。每个流转发到SDN控制器的数据分组的总数由每个流表项的有效时间决定。OpenFlow协议作为当前SDN控制平面和数据平面交互的标准接口,可以完成对网络中所有SDN转发设备的配置、管理和监控。除了packet_in和flow_mod等流表项创建请求和下发消息外,OpenFlow协议还支持发送轮询消息搜集每个流表项记录的统计信息。控制器可以根据这些统计信息汇总全网的流量信息,并进一步构建全局网络视图,对整个网络进行全局管理和优化。由于SDN控制器可以获取全网流量信息并根据流量信息,SDN控制器是部署大象流侦测器进行全网大象流侦测,并进一步进行全局网络管理和资源优化策略的制定和下发的最佳场所。
由于SDN控制器可以直接轮询每个转发设备每条流表项统计的流量信息,基于这些流量统计信息的大象流侦测器侦测精度高,但实时性受到SDN控制器轮询周期的限制。提高轮询频率可以提高侦测的实时性,但消耗过多SDN控制器资源,占用过多控制通道带宽。由于SDN网络的控制通道和数据通道通常共享网络基础设施,控制通道占用过多带宽,意味着数据通道的实际可用带宽降低;发送流表项统计信息占用过多的控制带宽意味着其它控制信息能使用的实际控制带宽降低,最终造成网络的流表项创建延时增大,数据包的转发延时增大,网络的综合性能恶化。所以,在SDN控制器上部署的基于流表项统计信息的大象流侦测器会加大SDN控制器的负载,消耗网络的控制带宽。该类型大象流侦测器通常需要SDN控制器具有较高的计算和存储资源,且部署在低速SDN网络。由于高速SDN网络每个转发设备单位时间处理的数据分组多,流表包含的流表项数量大,流统计信息要求更新频繁以及时侦测网络的大象流,部署该类侦测器在SDN控制器会消耗大量SDN控制器资源和控制通道带宽,导致网络流表项创建延时增加,网络流表包的转发延时增加,有可能不能满足延时敏感的应用,如线上医疗、线上银行、线上教学等的需求。
发明内容
本发明的目的是针对现有技术中存在的不足,而提出一种基于流表项有效时间的SDN大象流侦测器实现方法。这种方法能保证侦测的高精度、低延时和低控制带宽消耗,适用于高速数据中心网络通过快速高精度识别大象流对网络性能和资源进行管理和优化,能保证对延时和带宽有特别要求的应用的服务质量和用户体验。
实现本发明目的的技术方案是:
基于流表项有效时间的SDN大象流侦测器实现方法,包括如下步骤:
(1)大象流侦测器初始化流表项:大象流侦测器首先需要为转发设备接收到的每个新流初始化流表项,当转发设备接收到一个新流的第一个数据分组时,由于转发设备的流表内存没有预先为该数据分组配置流表项,转发设备不知道如何处理该数据分组,转发设备于是将数据分组封装成packet_in请求发送到大象流侦测器以要求大象流侦测器创建匹配的流表项,由于大象流侦测器是带有大象流侦测功能的控制器,大象流侦测器会解析接收到的packet_in请求,生成flow_mod响应,为大象流侦测器接收到的数据分组初始化有效时间的粒度、类型以及大小三维度动态可调的流表项,再将流表项封装到flow_mod 响应,最后通过flow_mod 响应把流表项下发到转发设备;大象流侦测器将流表项有效时间的粒度初始化为微秒,类型初始化为硬有效,大小初始化为几十到几百之间;
(2)大象流侦测器动态调节流表项有效时间:大象流侦测器根据流表项失效的次数调节流表项有效时间,大象流侦测器为新流初始化流表项时,为流表项配置了粒度、类型和大小三维度动态可调的有效时间,当流表项在转发设备的流表内存中超时失效后,该流表项会被转发设备清理出流表内存,当转发设备接收到一个数据分组却由于流表项超时的原因在其流表内存找不到匹配的流表项时,转发设备将数据分组封装成packet_in请求发送到大象流侦测器以要求大象流侦测器激活匹配的流表项,大象流侦测器生成flow_mod响应激活原流表项,同时调整原流表项有效时间,具体为:保持原流表项有效时间类型,将大小更新为原有效时间值的2倍,若更新后的大小值溢出,就将有效时间的粒度从微秒更新为毫秒,或者从毫秒更新为秒,再根据新的有效时间的粒度对有效时间的大小值进行更新;若更新后的大小值没有溢出,就保持原有效时间粒度不变;
(3)大象流侦测器统计流数据分组信息:采用大象流侦测器接收到的数据分组来统计流信息,每当大象流侦测器接收到一个packet_in请求时,首先对请求进行解析,然后再生成flow_mod响应为解析得到的数据分组生成或激活流表项,解析得到的数据分组信息同时会被大象流侦测器进行统计,统计信息记录流当前的字节数,计算方法是把大象流侦测器接收到的该流的数据分组大小进行累加,大象流侦测器维护了一个流统计信息表,该信息表包含:源IP地址、目的IP地址、源端口号、目的端口号、协议号、初始流表项有效时间的大小、初始流表项有效时间的粒度、当前流表项有效时间的大小、当前流表项有效时间的粒度、当前接收总字节数以及校正后总字节数;当大象流侦测器接收到一个packet_in请求并把其包含的数据分组解析出来,大象流侦测器会提取该数据分组的五元组信息<源IP地址,目的IP地址,源端口号,目的端口号,协议号>,并在信息表中查找匹配的流,如果找到匹配的流,说明接收到的数据分组是已有流的一个数据分组,大象流侦测器将该数据分组的大小累加到当前接收的总字节数,并更新该流的总字节数;如果没有找到,说明接收到的数据分组属于一个新流,大象流侦测器在流统计信息表中添加一个新记录,并根据数据分组和流表项初始有效时间对该记录进行初始化;
(4)大象流侦测器补全校正流统计信息:转发设备没有把自己接收到的每一个数据分组转发到大象流侦测器,当转发设备的流表项有效时,接收到的数据分组会被转发设备直接根据匹配流表项的指令转发到相应的端口,与大象流侦测器没有交互,只有当流表项超时失效后,转发设备才将接收到的数据分组转发到大象流侦测器,所以,大象流侦测器根据接收到的数据分组有缺失,统计的流信息需要进行补全校正,因此,每当大象流侦测器接收到一个packet_in请求完成流统计信息更新后,马上对统计的流总字节数进行校正,方法是估计该流表项在最近一个有效时间内被多少数据分组使用,再将该数据分组数乘以数据分组平均字节数,乘积就是该流在最近一个有效时间内大象流侦测器缺失的字节数,将该字节数加上原有的字节数的和就是该流校正后的总字节数,然后大象流侦测器用该流表项最近有效时间大小除以该流表项初始有效时间大小的商来估计缺失的数据分组数,用最新接收到的数据分组字节数估计该流数据分组平均字节数,对流总字节数进行校正;
(5)大象流侦测器对大象流进行建模:大象流侦测器使用阈值型大象流模型,由于计算机网络通常把超过10K字节的流定义为大象流,大象流侦测器考虑到流信息统计的缺失,以及侦测精度和速度,把超过6K字节的流判定为大象流;
(6)大象流侦测器侦测大象流:每当大象流侦测器接收到一个packet_in请求,在完成对流统计信息的更新和校正后,判断该流是否是大象流,判断方法是直接比较该流校正后的字节数,如果超过6K字节,该流被判为大象流,同时更新该流的流表项有效时间粒度为秒,类型为空闲有效,大小为5,再将该流表项下发转发设备。
步骤1)中所述的大象流侦测器是带有大象流侦测功能的控制器,具体为:
1)大象流侦测器是一个支持大象流侦测的SDN控制器,以开源Ryu控制器为基础,大象流侦测功能以Ryu外部应用的形式加入到Ryu控制器,与Ryu内部核心应用共享Ryu控制器的OpenFlow消息处理和事件派遣模块,大象流侦测应用包括两个模块:交换和侦测;交换模块接收Ryu控制器的OpenFlow消息处理和事件派遣模块传递的packet_in请求,生成flow_mod响应再通过Ryu控制器的OpenFlow消息处理和事件派遣模块下发到转发设备;侦测模块包含流信息统计、校正、和大象流侦测功能;
2)大象流侦测器不修改现有的SDN接口和协议, 但是SDN网络所使用的转发设备需要升级软件以支持有效时间的粒度、类型以及大小三维度动态可调的流表项,软件升级修改了流表项有效时间的粒度的解析,涉及的功能包括:调整定时器的精度以支持细粒度的流表项有效时间,在流表项的创建、流表项的修改和流表项的失效清理时解析写在流表项cookie的有效时间粒度。
步骤1)中所述的大象流侦测器初始化流表项具体为:
1)大象流侦测器为SDN网络的数据分组配置有效时间的粒度、类型以及大小三维度动态可调的流表项,大象流侦测器为流表项配置秒、毫秒和微秒这三种粒度的有效时间,有效时间类型为硬有效和空闲有效两种,硬有效时间和空闲有效时间分别由一个2字节无符号短整数表示,硬有效时间大小和空闲有效时间大小均为1到25535之间的整数,当其中一个有效时间设置为0时,该流表项仅考虑另一个有效时间;当两个有效时间均设置为0时,该流表项永久有效;当两个有效时间均不为0时,只要其中一个有效时间超时,该流表项失效;有效时间的粒度通过流表项的cookie实现,由于流表项的cookie被定义为8字节无符号长整数,大象流侦测器占用最低2字节设置粒度,具体为:0为粒度无效,1为秒,2为毫秒,3为微秒,大象流侦测器不修改现有的OpenFlow协议。
本技术方案实际上是一个含有大象流侦测器模块的SDN控制器软件,通过构建粒度、类型和大小等多维度动态可调流表项有效时间,使得SDN控制器在创建流表项时,能够根据该流表项失效的次数动态调节流表项的有效时间的粒度、类型和大小,进而使得每个流前期的数据分组匹配的流表项具有较细的粒度和较短的有效时间值,而后期的数据分组匹配的流表项的有效时间的粒度和大小增大。这样配置的流表项的有效时间能够保证在转发设备不增发过多packet_in流表项创建请求的前提下,大象流可以转发更多的数据分组到SDN控制器而转发的老鼠流的数据分组总数增加不大。因此,SDN控制器可以通过收集转发的packet_in请求直接统计网络的流信息,并进一步根据该信息对大象流进行侦测。由于本技术方案不需要轮询各转发设备流表项的统计信息,SDN控制器的消耗低,控制通道带宽的占用少。尽管本技术方案可能会使得大象流转发到SDN控制器的数据分组总数略微增加,但由于大象流通常消耗带宽,对延时并不敏感,用户体验不会受到影响。同时由于老鼠流本身包含的数据分组少,本技术方案并不会导致更多的老鼠流数据分组转发到SDN控制器,保证了老鼠流的低延时。另外,SDN控制器可以在接收到转发设备的packet_in请求时对大象流进行侦测,避免了统计信息轮询周期对大象流侦测实时性的影响。由于高速SDN网络的数据分组的平均间隔时间很短,现有OpenFlow协议支持的以秒为单位的流表项有效时间的时间精度不够,本技术方案在不更新现有OpenFlow协议的前提下,实现了流表项有效时间粒度的动态调节以支持高速SDN网络流表项有效时间的多维度动态调节。由于流表项有效期间转发设备接收到的数据分组不会转发到SDN控制器,只有流表项失效后转发设备接收到的数据分组才会转发到SDN控制器要求创建流表项,流表项有效时间会造成SDN控制器接收到的数据分组的缺失(对比转发设备实际接收到的数据分组)。缺失得越多代表转发到SDN控制器的数据分组越少,控制带宽占用越小,网络转发延时会越小。但是,缺失得越多会造成SDN控制器根据接收到的数据分组生成的统计信息越不准确,降低了大象流侦测的精度和实时性。所以,本技术方案还实现了一个轻量级的数据分组缺失补全方法,校正侦测器根据接收的数据分组生成的统计信息,以提高大象流侦测器的实时性和精度。
本技术方案适用于高速SDN网络的大象流侦测。支持现有的OpenFlow协议,但现有SDN控制器对packet_in请求的处理方法需要适当更新,相应的,物理或软件SDN转发设备处理flow_mod相应的方法也需要进行相应的更新。本技术方案是一个包含大象流侦测器的SDN控制器软件和更新后的物理/软件SDN转发设备软件。本技术方案与现有技术相比,具有以下优点和有益效果:
1.本技术方案的大象流侦测器在SDN控制器实现。本技术方案采用Ryu控制器,并在其应用层实现了一个大象流侦测器应用。该应用主要包含两个模块:交换模块和大象流侦测模块。交换模块主要完成packet_in请求的处理,flow_mod响应的生成和下发,flow_mod响应的生成部分主要完成匹配流表项的生成,粒度、类型和大小可动态调节的流表项有效时间在该部分实现。当交换模块处理packet_in请求时,将解析出来的数据分组信息传递给大象流侦测模块对流统计信息进行更新和补全校正,如果发现某个流的总字节数超过6K,直接将该流判定为大象流,并通知交换模块修改该流的流表项有效时间并再次下发流表项到转发设备。
2.本技术方案采用粒度、类型和大小均可动态调节的流表项有效时间支持大象流的侦测。现有OpenFlow协议可支持流表项有效时间类型和大小的动态调节,但只支持秒粒度的有效时间。本技术方案在不改变现有OpenFlow协议的前提下,直接利用现有流表项的cookie对流表项有效时间的粒度进行设置。本技术方案支持微秒、毫秒和秒三种粒度流表项有效时间,在改进后的Ryu控制器的交换模块的flow_mod响应模块实现了粒度、类型和大小可动态调节的流表项有效时间。交换机部分在本技术方案提供的改进后的OpenvSwitch软件交换机的ofproto/ofproto_dpif.c实现。
3.本技术方案对网络的每个数据分组的流表项有效时间进行动态调节。调节方法具体为:首先根据网络的平均包速设定网络的数据分组的初始流表项有效时间的粒度、类型和大小;然后每当大象流侦测器接收到一个由于流表项超时转发的packet_in请求,大象六i侦测器将保持该数据分组的流表项有效时间类型不变,大小翻倍,粒度根据有效时间大小是否溢出而增大,直到该流被判定为大象流。大象流侦测器将被判定为大象流的流表项有效时间粒度直接设置为秒,类型为空闲有效,大小为5。由于老鼠流包含的包数少,老鼠流的流表项会及时失效清理出流表内存,避免流表溢出。由于大象流包含的数据分组数多,采用逐渐增大的有效时间保证大象流的前期转发更多数据分组到大象流侦测器,便于该侦测器在大象流前期完成侦测,提高侦测及时性;同时降低大象流的中后期转发到该侦测器的数据分组数,便于控制大象流发送到SDN控制器的总包数,避免占用过多控制通道带宽,增加大象流的转发延时。
4.本技术方案还包含一个转发数据分组补全校正方法。该方法以流表项的初始有效时间为数据分组的间隔时间,每个流最新接收到的数据分组的字节数为缺失数据分组的平均字节数,缺失数据分组总数通过流表项的最近有效时间除以数据分组的间隔时间计算,缺失数据分组的总字节数用缺失数据分组总数乘以平均数据分组字节数计算。每当大象流侦测器接收到一个packet_in请求,大象流侦测器对统计信息进行更新和补全校正。
5.本技术方案对大象流进行侦测时采用基于流字节数的侦测模型。根据当前大部分侦测器将字节数超过10K的流定义为大象流,本技术方案的大象流侦测器考虑到数据分组的缺失和侦测的精度和及时性要求,根据自己生成的数据分组统计信息将当前流字节数超过6K的流判定为大象流。
这种方法保证了侦测的高精度、低延时和低控制带宽消耗,适用于高速数据中心网络通过快速高精度识别大象流对网络性能和资源进行管理和优化,保证对延时和带宽有特别要求的应用的服务质量和用户体验。
附图说明
图1为实施例中SDN网络转发设备发送流表项生成请求到SDN控制器的原理图;
图2为实施例中SDN网络转发设备直接转发数据分组的原理图;
图3为实施例中大象流侦测器(Ryu控制器)的结构图;
图4为实施例中大象流侦测器的工作原理图;
图5为实施例中描述支持粒度、类型、大小可动态调节流表项有效时间的流表项结构图;
图6为实施例中描述流表项失效时间调节方法原理图;
图7为实施例中描述支持粒度、类型和大小可动态调节流表项有效时间的转发设备软件(OpenvSwitch软件交换机)的结构图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述,但不是对本发明的限定。
实施例
基于流表项有效时间的SDN大象流侦测器实现方法,包括如下步骤:
(1)大象流侦测器初始化流表项:大象流侦测器首先需要为转发设备接收到的每个新流初始化流表项,当转发设备接收到一个新流的第一个数据分组时,由于转发设备的流表内存没有预先为该数据分组配置流表项,转发设备不知道如何处理该数据分组,转发设备于是将数据分组封装成packet_in请求发送到大象流侦测器以要求大象流侦测器创建匹配的流表项,由于大象流侦测器是带有大象流侦测功能的控制器,大象流侦测器会解析接收到的packet_in请求,生成flow_mod响应,为大象流侦测器接收到的数据分组初始化有效时间的粒度、类型以及大小三维度动态可调的流表项,再将流表项封装到flow_mod 响应,最后通过flow_mod 响应把流表项下发到转发设备;大象流侦测器将流表项有效时间的粒度初始化为微秒,类型初始化为硬有效,大小初始化为几十到几百之间;
(2)大象流侦测器动态调节流表项有效时间:大象流侦测器根据流表项失效的次数调节流表项有效时间,大象流侦测器为新流初始化流表项时,为流表项配置了粒度、类型和大小三维度动态可调的有效时间,当流表项在转发设备的流表内存中超时失效后,该流表项会被转发设备清理出流表内存,当转发设备接收到一个数据分组却由于流表项超时的原因在其流表内存找不到匹配的流表项,转发设备将数据分组封装成packet_in请求发送到大象流侦测器以要求大象流侦测器激活匹配的流表项,大象流侦测器生成flow_mod响应激活原流表项,同时调整原流表项有效时间,具体为:保持原流表项有效时间类型,将大小更新为原有效时间值的2倍,若更新后大小值溢出,就将有效时间的粒度从微秒更新为毫秒,或者从毫秒更新为秒,再根据新的有效时间的粒度对有效时间的大小值进行更新;若更新后的大小值没有溢出,就保持原有效时间的粒度不变;
(3)大象流侦测器统计流数据分组信息:传统的SDN大象流侦测器通过周期轮询网络中每个转发设备的每条流表项以统计的数据分组信息来汇集全网的流数据分组统计信息,再根据这个统计信息侦测大象流,本例采用大象流侦测器接收到的数据分组来统计流信息,每当大象流侦测器接收到一个packet_in请求时,首先对请求进行解析,然后在生成flow_mod响应,为解析得到的数据分组生成或激活流表项,解析得到的数据分组信息同时也会被大象流侦测器进行统计,统计信息记录流当前的字节数,计算方法是把大象流侦测器接收到的该流的数据分组大小进行累加,大象流侦测器维护了一个流统计信息表,该信息表包含:源IP地址、目的IP地址、源端口号、目的端口号、协议号、初始流表项有效时间的大小、初始流表项有效时间的粒度、当前流表项有效时间的大小、当前流表项有效时间的粒度、当前接收总字节数以及校正后总字节数;当大象流侦测器接收到一个packet_in请求并把其包含的数据分组解析出来,大象流侦测器会提取该数据分组的五元组信息<源IP地址,目的IP地址,源端口号,目的端口号,协议号>,并在信息表中查找匹配的流,如果找到匹配的流,说明接收到的数据分组是已有流的一个数据分组,大象流侦测器将该数据分组的大小累加到当前接收的总字节数,并更新该流的总字节数;如果没有找到,说明接收到的数据分组属于一个新流,大象流侦测器在流统计信息表中添加一个新记录,并根据数据分组和流表项初始有效时间对该记录进行初始化;
(4)大象流侦测器补全校正流统计信息:转发设备并没有把自己接收到的每一个数据分组转发到大象流侦测器,当转发设备的流表项有效时,接收到的数据分组会被转发设备直接根据匹配流表项的指令转发到相应的端口,与大象流侦测器没有交互,只有当流表项超时失效后,转发设备才将接收到的数据分组转发到大象流侦测器,所以,大象流侦测器接收到的数据分组有缺失,统计的流信息需要进行补全校正,因此,每当大象流侦测器接收到一个packet_in请求完成流统计信息更新后,马上对统计的流总字节数进行校正,方法是估计该流表项在最近一个有效时间内被多少数据分组使用,再将该数据分组数乘以数据分组平均字节数,乘积就是该流在最近一个有效时间内大象流侦测器缺失的字节数,将该字节数加上原有的字节数的和就是该流校正后的总字节数,然后大象流侦测器用该流表项最近有效时间大小除以该流表项初始有效时间大小的商来估计缺失的数据分组数,用最新接收到的数据分组字节数估计该流数据分组平均字节数,对流总字节数进行校正;
(5)大象流侦测器对大象流进行建模:大象流侦测器使用阈值型大象流模型,由于计算机网络通常把超过10K字节的流直接定义为大象流,大象流侦测器考虑到流信息统计的缺失,以及侦测精度和速度,把超过6K字节的流判定为大象流:
(6)大象流侦测器侦测大象流:每当大象流侦测器接收到一个packet_in请求,在完成对流统计信息的更新和校正后,判断该流是否是大象流,判断方法是直接比较该流校正后的字节数,如果超过6K字节,该流被判为大象流,同时更新该流的流表项有效时间粒度为秒,类型为空闲有效,大小为5,再将该流表项下发转发设备。
步骤1)中所述的大象流侦测器是带有大象流侦测功能的控制器,具体为:
1)大象流侦测器是一个支持大象流侦测的SDN控制器,如图3所示,以开源Ryu控制器为基础,大象流侦测功能以Ryu外部应用的形式加入到Ryu控制器,与Ryu内部核心应用共享Ryu控制器的OpenFlow消息处理和事件派遣模块,大象流侦测应用包括两个模块:交换和侦测;交换模块接收Ryu控制器的OpenFlow消息处理和事件派遣模块传递的packet_in请求,生成flow_mod响应再通过Ryu控制器的OpenFlow消息处理和事件派遣模块下发到转发设备;侦测模块包含流信息统计、校正、和大象流侦测功能:
2)大象流侦测器不修改现有的SDN接口和协议, SDN网络所使用的转发设备需要升级软件以支持有效时间的粒度、类型以及大小三维度动态可调的流表项,软件升级修改了流表项有效时间的粒度的解析,涉及的功能包括:调整定时器的精度以支持细粒度流表项有效时间,在流表项的创建、流表项的修改和流表项的失效清理时解析写在流表项cookie的有效时间粒度。
步骤1)中所述的大象流侦测器初始化流表项具体为:
1)大象流侦测器为SDN网络的数据分组配置有效时间的粒度、类型以及大小三维度动态可调的流表项,大象流侦测器为流表项配置秒、毫秒和微秒这三种粒度的有效时间,有效时间类型为硬有效和空闲有效两种,硬有效时间和空闲有效时间分别由一个2字节无符号短整数表示,硬有效时间大小和空闲有效时间大小均为1到25535之间的整数,当其中一个有效设置为0时,该流表项仅考虑另一个有效时间;当两个有效时间均设置为0时,该流表项永久有效;当两个有效时间均不为0时,只要其中一个有效时间超时,该流表项失效;有效时间的粒度通过流表项的cookie实现,由于流表项的cookie被定义为8字节无符号长整数,大象流侦测器占用最低2字节设置粒度,具体为:0为粒度无效,1为秒,2为毫秒,3为微秒,大象流侦测器不修改现有的OpenFlow协议。
由于侦测大象流需要首先获取网络流量统计信息,而通常获取网络流量信息的方法是SDN控制器轮询统计各转发设备保存在流表项的统计信息,消耗大量SDN控制器与转发设备之间控制通道带宽。为了降低该控制通道带宽,本例使用大象流侦测器接收到的packet_in请求对流量信息进行统计和更新,从而进一步完成大象流的侦测。SDN控制器通过接收到的packet_in请求对流量信息进行统计和更新的原理如图1所示。当转发设备接收到一个数据分组时,首先到流表内存查找该数据分组匹配的流表项,如果没找到,转发设备将接收到的数据分组封装成packet_in请求发送到SDN控制器,请求SDN控制器为该数据分组创建匹配的流表项。找不到匹配的流表项的原因有两种:一种是该数据分组是新流的第一个包,匹配的流表项尚未被创建;另一种是该数据分组属于已接收到的某个流,但该流匹配的流表项已失效。如果找到匹配的流表项,转发设备直接根据流表项的动作指令对流进行处理,不与SDN控制器发生交互,如图2所示。
本例的大象流侦测器的架构如图3所示。该侦测器是SDN控制平面的一个增强型SDN控制器。该侦测器以开源Ryu控制器为基础,全新设计的大象流侦测器应用以Ryu外部应用的形式加入到Ryu控制器,与Ryu内部核心应用共享Ryu控制器的OpenFlow消息处理和事件派遣模块。大象流侦测应用主要包括两个模块:交换和侦测。交换模块主要负责接收Ryu事件派遣模块分发的packet_in事件,对packet_in请求进行解析,创建或者更新流表项,再将流表项通过事件派遣和OpenFlow消息处理模块下发到转发设备。经过交换模块解析后的packet_in请求同时送入侦测模块。侦测模块首先更新流统计信息,然后对统计信息进行补全和校正,最后根据流总字节数是否超过阈值判定是否是大象流。
本例的大象流侦测器的工作原理如图4所示。大象流侦测器模块循环判断是否接收到Ryu事件派遣模块的新packet_in请求。当接收到新packet_in请求时,侦测器的交换模块首先对请求进行解析提取数据分组信息,然后判断该数据分组是否是新流的第一个包。如果是,交换模块为该新流初始化流表项(有效时间粒度通常为微秒,类型为硬有效,大小为几十到几百微秒),保存该流表项信息,下发该流表项到转发设备;如果不是,交换模块调整已有流表项有效时间粒度和大小,保持有效时间不变,保存该流表项信息,下发流表项到转发设备。解析后的packet_in请求同时送入大象流侦测模块。侦测模块首先更新该流的统计信息,然后根据当前收到的数据分组的大小,初始流表项有效时间,新近失效的流表项有效时间对流统计信息进行补全和校正,最后根据校正后的统计信息对大象流进行侦测。如果该流被判定大象流,将该流的现有流表项的有效时间粒度设备为秒,类型为空闲,大小为5,重新将流表项下发到转发设备。
本例的大象流侦测器可以实现秒、毫秒和微秒三种粒度的流表项有效时间的配置。由于现有的OpenFlow协议只支持以秒为单位的有效时间,目前的SDN控制器和转发设备都只支持以秒粒度的流表项有效时间。本例的大象流侦测器在不修改已有OpenFlow协议的基础上,通过现有流表项的cookie对流表项有效时间的粒度进行设置。OpenFlow协议定义的流表项结构如图5所示。流表项主要包含5个部分:匹配字段,指令集,统计信息,有效时间,cookie。匹配字段包含不同协议的多个首部字段,用于流表项与数据分组的匹配。指令集包含对数据分组的处理动作,如:转发到指定端口,丢弃,广播到所有端口等。统计信息保存了对所有调用过该流表项的数据分组的统计结果。有效时间包含配置硬有效时间和空闲有效时间,每个有效时间是一个2字节无符号整型数。Cookie是一个8字节的无符号长整数类型,可以根据需要在SDN控制器和转发设备之间进行数据的交互。因此,本例方法将流表项有效时间的粒度用一个2字节的无符号短整数表示,写入cookie最低的2字节。其中1表示秒,2表示毫秒,3表示微秒,0表示无效。
本例的大象流侦测器为各流动态调节流表项有效时间的粒度、类型和大小,如图6所示。当大象流侦测器收到每个新流的第一个数据分组时,根据网络包平均到达时间配置初始流表项有效时间为硬有效,微秒级粒度,大小为几十到几百微秒(如图6的包1)。每当转发设备收到一个数据分组,且由于流表项有效时间超时的原因无法找到匹配流表项时,转发设备将该流表封装成packet_in请求转发到大象流侦测器要求激活流表项(如图6的包3)。大象流侦测器收到请求后,会将原来的流表项有效时间大小加倍,下发到转发设备。由于流表项有效时间为2字节无符号短整数,当大小超过当前粒度的最大值时,需要提高粒度的等级。大象流侦测器接收到packet_in请求会触发大象流侦测模块对流统计信息进行更新和校正。当校正后的流总字节数超过6K,该流会判定为大象流,而大象流的流表项会被侦测器设置为空闲超时5秒重新下发到转发设备。由于大象流包含的包多,根据流表项失效次数调节流表项有效时间的粒度和大小,可以控制大象流转发到侦测器的总包数,而且在流早期发送更多的包保证大象流在早期可以被及时准确侦测。由于老鼠流包含的包少,为流表项有效时间配置微秒级粒度保证老鼠流的及时转发且其流表项及时失效被清理出流表内存,避免流表内存溢出。
如图1所示,本例的大象流侦测器基于自己生成的流统计信息对大象流进行侦测。每当大象流侦测器接收到一个packet_in请求会对流统计信息进行更新。本例方法采用传统的基于流字节数的大象流模型,即把当前流字节数超过6K的流判定为大象流。所以,流统计信息主要记录流当前的字节数,计算方法是把大象流侦测器接收到的该流的数据分组大小进行累加。因此,大象流侦测器维护了一个流统计信息表,该信息表包含地信息如表1所列:源IP地址,目的IP地址,源端口号,目的端口号,协议号,初始流表项有效时间大小,粒度,当前流表项有效时间大小,粒度,当前接收总字节数,校正后总字节数。 当大象流侦测器接收到一个packet_in请求并把其包含的数据分组解析出来后,该侦测器会提取该数据分组的五元组信息(源IP地址,目的IP地址,源端口号,目的端口号,协议号),并在信息表中查找匹配的流,如果找到匹配的流,说明接收到的数据分组是已有流的一个数据分组,将该数据分组的包大小累加到当前接收总字节数更新该流的总字节数。同时,转发设备在流表项有效时间内直接转发的数据分组数为当前流表项有效时间除以流表项初始有效时间的商。由于转发设备直接转发的数据分组不会发送到侦测器,这些数据分组数乘以大象流侦测器最近接收到的数据分组的大小粗略估计了转发设备直接转发的数据分组的总字节数。将该字节数加入当前接收总字节数即为校正后的总字节数。用校正后的流总字节数进行大象流的侦测可以更快,更精确地判定大象流。
表 1: 转换表记录结构
本例基于开源的Ryu控制器开发, 交换机可以是开源或商业的软件或物理交换机。为了支持粒度可调流表项有效时间,本例利用当前OpenFlow协议定义的流表项的cookie对有效时间粒度进行配置,保证了对当前OpenFlow协议的兼容性。为了解析支持粒度可调流表项有效时间的流表,SDN交换机需要适当修改解析方法对其支持。本例给出了OpenvSwitch开源软件交换机的修改方法,如图7所示,OpenvSwitch的守护进程ovs-vswitchd持续检查其位于内核的数据通道是否接收到新的数据分组,当接收到新数据分组时,数据通道检查内存流表是否有匹配流表项,如果有,直接按照流表项的指令对数据分组进行处理;否则,该数据分组通过守护进程上传到OpenFlow协议处理模块,将数据分组封装成packe_in请求,再通过守护进程发送到SDN控制器。当守护进程接收到SDN控制器下发的flow_mod响应时,守护进程调用OpenFlow协议处理模块对响应进行解析,并将解析出的流表项下发到数据通道,写入流表内存,完成该数据分组的转发。所以,本例需要更新OpenvSwitch的OpenFlow协议处理模块,保证正确封装packe_in请求,解析flow_mod响应。同时,守护进程还需要循环检查流表内存各流表项状态,将已失效流表项清理出流表内存,避免流表内存溢出。
Claims (2)
1.基于流表项有效时间的SDN大象流侦测器实现方法,其特征在于,包括如下步骤:
(1)大象流侦测器初始化流表项:大象流侦测器首先需要为转发设备接收到的每个新流初始化流表项,当转发设备接收到一个新流的第一个数据分组时,转发设备将数据分组封装成packet_in请求发送到大象流侦测器以要求大象流侦测器创建匹配的流表项,大象流侦测器是带有大象流侦测功能的控制器,大象流侦测器会解析接收到的packet_in请求,生成flow_mod响应,为大象流侦测器接收到的数据分组初始化有效时间的粒度、类型以及大小三维度动态可调的流表项,再将流表项封装到flow_mod 响应,最后通过flow_mod 响应把流表项下发到转发设备;大象流侦测器将流表项有效时间的粒度初始化为微秒,类型初始化为硬有效,大小初始化为几十到几百之间;
所述大象流侦测器是带有大象流侦测功能的控制器,具体为:
1)大象流侦测器是一个支持大象流侦测的SDN控制器,以开源Ryu控制器为基础,大象流侦测功能以Ryu外部应用的形式加入到Ryu控制器,与Ryu内部核心应用共享Ryu控制器的OpenFlow消息处理和事件派遣模块,大象流侦测应用包括两个模块:交换和侦测;交换模块接收Ryu控制器的OpenFlow消息处理和事件派遣模块传递的packet_in请求,生成flow_mod响应再通过Ryu控制器的OpenFlow消息处理和事件派遣模块下发到转发设备;侦测模块包含流信息统计、校正和大象流侦测功能;
2)大象流侦测器不修改现有的SDN接口和协议, 但是SDN网络所使用的转发设备需要升级软件以支持有效时间的粒度、类型以及大小三维度动态可调的流表项,软件升级修改了流表项有效时间的粒度的解析,涉及的功能包括:调整定时器的精度以支持细粒度的流表项有效时间,在流表项的创建、流表项的修改和流表项的失效清理时需要解析写在流表项cookie的有效时间粒度;
(2)大象流侦测器动态调节流表项有效时间:大象流侦测器根据流表项失效的次数调节流表项有效时间,大象流侦测器为新流初始化流表项时,为流表项配置了粒度、类型和大小三维度动态可调的有效时间,当流表项在转发设备的流表内存中超时失效后,该流表项会被转发设备清理出流表内存,当转发设备接收到一个数据分组却由于流表项超时的原因在其流表内存找不到匹配的流表项时,转发设备将数据分组封装成packet_in请求发送到大象流侦测器要求激活匹配的流表项,大象流侦测器生成flow_mod响应激活原流表项,同时调整原流表项有效时间,具体为:保持原流表项有效时间类型,将大小更新为原有效时间值的2倍,若更新后大小值溢出,就将有效时间的粒度从微秒更新为毫秒,或者从毫秒更新为秒,再根据新的有效时间的粒度对有效时间的大小值进行更新;若更新后的大小值没有溢出,就保持原有效时间粒度不变;
(3)大象流侦测器统计流数据分组信息:采用大象流侦测器接收到的数据分组来统计流信息,每当大象流侦测器接收到一个packet_in请求时,首先对请求进行解析,然后再生成flow_mod响应,为解析得到的数据分组生成或激活流表项,解析得到的数据分组信息同时也会被大象流侦测器进行统计,统计信息记录流当前的字节数,计算方法是把大象流侦测器接收到的该流的数据分组大小进行累加,大象流侦测器维护了一个流统计信息表,该信息表包含:源IP地址、目的IP地址、源端口号、目的端口号、协议号、初始流表项有效时间的大小、初始流表项有效时间的粒度、当前流表项有效时间的大小、当前流表项有效时间的粒度、当前接收总字节数以及校正后总字节数;当大象流侦测器接收到一个packet_in请求并把其包含的数据分组解析出来,大象流侦测器会提取该数据分组的五元组信息<源IP地址,目的IP地址,源端口号,目的端口号,协议号>,并在信息表中查找匹配的流,若找到匹配的流,说明接收到的数据分组是已有流的一个数据分组,大象流侦测器将该数据分组的大小累加到当前接收的总字节数,并更新该流的总字节数;若没有找到,说明接收到的数据分组属于一个新流,大象流侦测器在流统计信息表中添加一个新记录,并根据数据分组和流表项初始有效时间对该记录进行初始化;
(4)大象流侦测器补全校正流统计信息:每当大象流侦测器接收到一个packet_in请求完成流统计信息更新后,马上对统计的流总字节数进行校正,方法是估计该流表项在最近一个有效时间内被多少数据分组使用,再将该数据分组数乘以数据分组平均字节数,乘积就是该流在最近一个有效时间内大象流侦测器缺失的字节数,将该字节数加上原有的字节数的和就是该流校正后的总字节数,然后大象流侦测器用该流表项最近有效时间大小除以该流表项初始有效时间大小的商来估计缺失的数据分组数,用最新接收到的数据分组字节数估计该流数据分组平均字节数,对流总字节数进行校正;
(5)大象流侦测器对大象流进行建模:大象流侦测器使用阈值型大象流模型,并把超过6K字节的流判定为大象流;
(6)大象流侦测器侦测大象流:每当大象流侦测器接收到一个packet_in请求,在完成对流统计信息的更新和校正后,判断该流是否是大象流,判断方法是直接比较该流校正后的字节数,若超过6K字节,该流被判为大象流,同时更新该流的流表项有效时间粒度为秒,类型为空闲有效,大小为5,并将该流表项下发转发设备。
2.根据权利要求1所述的基于流表项有效时间的SDN大象流侦测器实现方法,其特征在于:步骤1)中所述的大象流侦测器初始化流表项具体为:
1)大象流侦测器为SDN网络的数据分组配置有效时间的粒度、类型以及大小三维度动态可调的流表项,大象流侦测器为流表项配置秒、毫秒和微秒这三种粒度的有效时间,有效时间类型为硬有效和空闲有效两种,硬有效时间和空闲有效时间分别由一个2字节无符号短整数表示,硬有效时间大小和空闲有效时间大小均为1到25535之间的整数;当其中一个有效时间设置为0时,该流表项仅考虑另一个有效时间;当两个有效时间均设置为0时,该流表项永久有效;当两个有效时间均不为0时,只要有一个有效时间超时,该流表项失效;有效时间的粒度通过流表项的cookie实现,由于流表项的cookie被定义为8字节无符号长整数,大象流侦测器占用最低2字节设置粒度,具体为:0为粒度无效,1为秒,2为毫秒,3为微秒,大象流侦测器不修改现有的OpenFlow协议。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210596267.6A CN114978967B (zh) | 2022-05-30 | 2022-05-30 | 基于流表项有效时间的sdn大象流侦测器实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210596267.6A CN114978967B (zh) | 2022-05-30 | 2022-05-30 | 基于流表项有效时间的sdn大象流侦测器实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114978967A CN114978967A (zh) | 2022-08-30 |
CN114978967B true CN114978967B (zh) | 2024-02-06 |
Family
ID=82958439
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210596267.6A Active CN114978967B (zh) | 2022-05-30 | 2022-05-30 | 基于流表项有效时间的sdn大象流侦测器实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114978967B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114070758B (zh) * | 2021-12-20 | 2023-07-18 | 重庆邮电大学 | 一种基于sdn网络的流表优化方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9755948B1 (en) * | 2015-09-01 | 2017-09-05 | Netronome Systems, Inc. | Controlling an optical bypass switch in a data center based on a neural network output result |
CN107809385A (zh) * | 2017-10-11 | 2018-03-16 | 中国电子科技集团公司第三十研究所 | 一种Packet‑In消息的触发与控制方法 |
CN108512766A (zh) * | 2018-03-26 | 2018-09-07 | 南京邮电大学 | 一种OpenFlow交换机流表调节方法 |
CN111800383A (zh) * | 2020-06-02 | 2020-10-20 | 深圳供电局有限公司 | 一种基于SDN的DDos流量检测方法及装置 |
CN114070758A (zh) * | 2021-12-20 | 2022-02-18 | 重庆邮电大学 | 一种基于sdn网络的流表优化方法及装置 |
CN114398174A (zh) * | 2021-12-29 | 2022-04-26 | 南京邮电大学 | 一种sdn环境下的数据中心网络动态节能调度方法及系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9553803B2 (en) * | 2014-06-30 | 2017-01-24 | Nicira, Inc. | Periodical generation of network measurement data |
US11516133B2 (en) * | 2020-07-06 | 2022-11-29 | Nokia Solutions And Networks Oy | Flow cache management |
-
2022
- 2022-05-30 CN CN202210596267.6A patent/CN114978967B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9755948B1 (en) * | 2015-09-01 | 2017-09-05 | Netronome Systems, Inc. | Controlling an optical bypass switch in a data center based on a neural network output result |
CN107809385A (zh) * | 2017-10-11 | 2018-03-16 | 中国电子科技集团公司第三十研究所 | 一种Packet‑In消息的触发与控制方法 |
CN108512766A (zh) * | 2018-03-26 | 2018-09-07 | 南京邮电大学 | 一种OpenFlow交换机流表调节方法 |
CN111800383A (zh) * | 2020-06-02 | 2020-10-20 | 深圳供电局有限公司 | 一种基于SDN的DDos流量检测方法及装置 |
CN114070758A (zh) * | 2021-12-20 | 2022-02-18 | 重庆邮电大学 | 一种基于sdn网络的流表优化方法及装置 |
CN114398174A (zh) * | 2021-12-29 | 2022-04-26 | 南京邮电大学 | 一种sdn环境下的数据中心网络动态节能调度方法及系统 |
Non-Patent Citations (2)
Title |
---|
SDN数据中心网络基于流表项转换的流表调度优化;唐菀;王敢甫;吴京京;王文涛;;中南民族大学学报(自然科学版)(第03期);第 111-117 页 * |
数据中心网络下基于SDN的TCP拥塞控制机制研究与实现;陆一飞;朱书宏;;计算机学报(第09期);第 2167-218 0 页 * |
Also Published As
Publication number | Publication date |
---|---|
CN114978967A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8914662B2 (en) | Implementing transparent clock by correcting time information carried in data using residence time information | |
Shah et al. | Maintaining statistics counters in router line cards | |
CN113676376B (zh) | 一种基于分簇的带内网络遥测方法 | |
US20220303217A1 (en) | Data Forwarding Method, Data Buffering Method, Apparatus, and Related Device | |
US20220191140A1 (en) | Data transmission control method, apparatus, and storage medium | |
US20200336436A1 (en) | Preventing duplication of packets in a network | |
US11171869B2 (en) | Microburst detection and management | |
CN114978967B (zh) | 基于流表项有效时间的sdn大象流侦测器实现方法 | |
US11652750B2 (en) | Automatic flow management | |
US20230131524A1 (en) | Data sampling method for a network device, device, and medium | |
US11050649B2 (en) | Delay measurement method of network node device, apparatus, and network node device | |
US11316804B2 (en) | Forwarding entry update method and apparatus in a memory | |
WO2020063299A1 (zh) | 统计活跃流数目的方法、网络设备和系统 | |
CN111970211A (zh) | 一种基于ipfix的大象流处理方法及装置 | |
US20240098023A1 (en) | Congestion processing method, apparatus, network device and storage medium | |
WO2022152230A1 (zh) | 信息流识别方法、网络芯片及网络设备 | |
CN116471238A (zh) | 基于新型网络拥塞通告及速率调整策略的拥塞管理方法 | |
CN114095383B (zh) | 网络流量采样方法、系统和电子设备 | |
US20220385594A1 (en) | Method for configuring and managing tsn network and system applying the method | |
CN110138819B (zh) | 网络交换机的主机状态检测方法与系统 | |
US20230081344A1 (en) | Flow characteristic extraction method and apparatus | |
US11563655B2 (en) | Network monitoring apparatus and method thereof in programmable network virtualization | |
CN114900426B (zh) | 一种基于主被动混合测量的故障定位方法及相关设备 | |
CN115484202B (zh) | 一种基于int的轻量化路径探测方法 | |
EP4250668A1 (en) | Traffic table sending method and related apparatus |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |