[go: up one dir, main page]

CN105099916A - 开放流路由交换设备及其对数据报文的处理方法 - Google Patents

开放流路由交换设备及其对数据报文的处理方法 Download PDF

Info

Publication number
CN105099916A
CN105099916A CN201410174615.6A CN201410174615A CN105099916A CN 105099916 A CN105099916 A CN 105099916A CN 201410174615 A CN201410174615 A CN 201410174615A CN 105099916 A CN105099916 A CN 105099916A
Authority
CN
China
Prior art keywords
stream
list item
data message
entry data
miniflow
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
CN201410174615.6A
Other languages
English (en)
Other versions
CN105099916B (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.)
Lenovo Global Technologies International Ltd
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to CN201410174615.6A priority Critical patent/CN105099916B/zh
Publication of CN105099916A publication Critical patent/CN105099916A/zh
Application granted granted Critical
Publication of CN105099916B publication Critical patent/CN105099916B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种开放流路由交换设备及其对数据报文的处理方法,方法包括:响应于接收入口数据报文,解析该入口数据报文;将解析的入口数据报文与位于TCAM的宏流表中的流表项进行匹配;响应于解析的入口数据报文与所述宏流表中的流表项匹配,执行所述宏流表中的流表项相关联的启动长流检测的动作;以及响应于该入口数据报文在长流检测中被判别属于长流,通知与所述开放流路由交换设备相连的开放流控制器检测到长流,并从所述开放流控制器接收位于SRAM的微流表的流表项,该微流表的流表项与检测到的长流对应的入口数据报文中的特征值相关。该路由交换设备及其方法降低了开放流路由交换设备的成本,并使得开放流控制器能够优化流量转发路径。

Description

开放流路由交换设备及其对数据报文的处理方法
技术领域
本发明涉及网络技术,更具体地,涉及一种开放流路由交换设备及其对数据报文的处理方法。
背景技术
网络中,长流(Long-livedFlow)又被称为大象流(elephantflow),指代那些存活时间长,有大量数据发送需求的网络连接对应的报文流量,例如,FTP下载某个视频文件,就可以视这个FTP连接所对应的报文流为长流。短流(Short-livedFlow),又被称为老鼠流(miceflow),其特征和长流恰好相反,指代那些连接存活时间很短,数据量小的网络连接所对应的报文流。例如,Web请求往往在客户端和服务器之间传输几个报文的数据量就完成了一次会话,就属于短流。近来,随着多媒体业务和Web2.0的高速发展,大量的网络测量和研究报告表明,网络中80%的流量是由20%的长流贡献的。如果能够监视20%的长流,就可以很好地控制及优化网络流量,掌握整个网络80%的流量的动向,这对于网络流量的优化将是一个非常不错的举措。
传统的通信网络把控制逻辑和数据转发紧密耦合在路由交换设备上,导致网络控制平面管理异常复杂。软件定义网络SDN(SoftwareDefinedNetworking)技术使得网络的控制和转发分离,将控制平面分离到核心的控制器或控制器集群上,而路由交换设备只负责数据转发。SDN为网络新应用和未来互联网技术提供了一种新的解决方案。开放流(OpenFlow)为SDN提供了技术上的支持。OpenFlow是通过如下方式将控制功能从网络设备中分离出来的:在网络设备上维护流表(FlowTable)结构,报文按照流表中的流表项进行转发,而流表的生成、维护、配置则由开放流控制器来管理。SDN和OpenFlow的关系是,SDN是一种网络设计理念,而OpenFlow则是为实现SDN这一理念提供的具体技术。
如今,OpenFlow和SDN分离了网络路由交换设备的控制和转发。使得路由交换设备功能更加单一和模块化,基本上只负责报文的转发。而那些原先被整合到网络设备中的复杂的控制协议和逻辑被分离出来,并集中到一个或多个核心的开放流控制器上,对全网的硬件设备进行管控。使得网络流量优化在这种集中式的网络控制架构上非常容易地实现,并且这种流量信息对于开放流控制器也是一种很好的补充。因为开放流控制器本身已经能够感知到全网的拓扑结构,最缺乏的是对全网流量信息实时动态的掌握,需要路由交换设备提供网络中的信息,尤其是长流信息。
但是,OpenFlow技术的发展遇到了硬件上暂时无法解决的瓶颈。在开放流路由交换设备上,需要上述的流表,用于处理流量转发和定义各种流量策略。现有的开放流路由交换设备一般采用TCAM实现开放流流表,因为TCAM具有查找快速、操作简单、并且能够支持掩码匹配的优点,但同时它具有3个明显的缺点:成本高、功耗大和表项更新复杂。另外,现有的开放流路由交换设备将报文解析、匹配、执行等控制装置以及实现流表的TCAM,甚至通信装置都集成在ASIC芯片中,受制于ASIC硬件工艺的限制以及成本、功耗、体积等方面的考虑,ASIC开发商一般只会在传统的路由交换设备中集成很少量的TCAM,并且现有的路由交换设备无法监视长流。因此,本领域需要一种低成本的路由交换设备来监视网络中的长流。
发明内容
根据本发明的一个方面,提供了一种开放流路由交换设备对数据报文的处理方法,包括:
响应于接收入口数据报文,解析该入口数据报文;
将解析的入口数据报文与位于TCAM的宏流表中的流表项进行匹配,其中,在所述宏流表的流表项中相关联的动作包含启动长流检测;
响应于解析的入口数据报文与所述宏流表中的流表项匹配,执行所述宏流表中的流表项相关联的启动长流检测的动作;
响应于该入口数据报文在长流检测中被判别属于长流,通知与所述开放流路由交换设备相连的开放流控制器检测到长流,并从所述开放流控制器接收位于SRAM的微流表的流表项,该微流表的流表项与检测到的长流对应的入口数据报文中的特征值相关。
根据本发明的另一个方面,提供了一种开放流路由交换设备,包括:
解析装置,被配置为响应于接收入口数据报文,解析该入口数据报文;
匹配装置,被配置为将解析的入口数据报文与位于TCAM的宏流表中的流表项进行匹配,其中,在所述宏流表的流表项中相关联的动作包含启动长流检测;
执行装置,被配置为响应于解析的入口数据报文与所述宏流表中的流表项匹配,执行所述宏流表中的流表项相关联的启动长流检测的动作;
通知装置,被配置为响应于该入口数据报文在长流检测中被判别属于长流,通知与所述开放流路由交换设备相连的开放流控制器检测到长流,并从所述开放流控制器接收位于SRAM的微流表的流表项,该微流表的流表项与检测到的长流对应的入口数据报文中的特征值相关。
本发明提出的方法很好地解决了ASIC对TCAM表项的依赖,降低了开放流路由交换设备对TCAM空间的需求。通过识别网络中的长流并将匹配长流的流表项迁移到比TCAM更加廉价和更低能耗的SRAM上,大大降低了开放流路由交换设备的成本,并提供了一种节能的设计。同时,由于本发明把贡献了80%的流量的长流识别出来,使得开放流控制器对全网的流量信息有了更进一步的了解和更细粒度的控制,结合其对全网拓扑的掌握情况,可以优化流量转发路径,并且避免拥塞点的出现。
附图说明
通过结合附图对本公开示例性实施方式进行更详细的描述,本公开的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开示例性实施方式中,相同的参考标号通常代表相同部件。
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图;
图2示出了传统的开放流路由交换设备和控制器的通信框架;
图3示出了开放流路由交换设备对数据报文的处理方法的流程框图;以及
图4示出了根据本发明一种实施方式的OpenFlow通信框架下的开放流路由交换设备的结构组成。
具体实施方式
下面将参照附图更详细地描述本公开的优选实施方式。虽然附图中显示了本公开的优选实施方式,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
图1示出了适于用来实现本发明实施方式的示例性计算机系统/服务器12的框图。图1显示的计算机系统/服务器12仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图1所示,计算机系统/服务器12以通用计算设备的形式表现。计算机系统/服务器12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机系统/服务器12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机系统/服务器12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机系统/服务器12可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(图1未显示,通常称为“硬盘驱动器”)。尽管图1中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线18相连。存储器28可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器28中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机系统/服务器12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24等)通信,还可与一个或者多个使得用户能与该计算机系统/服务器12交互的设备通信,和/或与使得该计算机系统/服务器12能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口22进行。并且,计算机系统/服务器12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器20通过总线18与计算机系统/服务器12的其它模块通信。应当明白,尽管图中未示出,可以结合计算机系统/服务器12使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
图2示出了传统的开放流路由交换设备和控制器的通信框架,根据图2,在OpenFlow通信框架下,传统的路由交换设备的转发和控制分离开来,开放流路由交换设备负责数据报丈的转发,开放流控制器负责协议控制进程。在开放流控制器中维护了全网的拓扑信息。开放流路由交换设备中流表的所有流表项都是由开放流控制器下发的,开放流路由交换设备和开放流控制器之间的通信使用OpenFlow协议在一条加密的通道上传输。开放流控制器下发的每条流表项都可以关联统计计数器,开放流控制器可以查询流表项的统计计数器来收集流量统计信息。
在开放流路由交换设备设置了若干个流表(FlowTable)用于存储报文转发和策略控制相关的流表项。流表通常是一系列流表项的集合,OpenFlow规范中定义了流表项需要支持的标准协议字段,每条流表项主要包含了如下几个信息:
1)匹配字段:要匹配报文头部的哪些字段,如源/目的MAC地址、VLANID、VLAN优先级、源/目的IP地址、DSCP、IP协议号、TCP/UDP源/目的端口号等。最新的OpenFlow规范(openflow-spec-v1.4.0)中定义了多达42个不同的匹配字段。流表具有不同的实现,可以只包含感兴趣的某些字段,比如只关心IP五元组;也可以包含OpenFlow规范中定义的绝大部分字段。
2)匹配优先级:每条流表项都被安排一个匹配优先级。报文在某个流表中可能和多条流表项都匹配,在这种情况下,只执行匹配优先级最高的那条流表项所关联的动作。
3)关联的动作:当报文匹配到流表项中定义的字段之后,执行与之关联的动作,这些动作可能包含但不限于:修改报文头部指定字段的值、添加一个新的报文头、删除某个报文头部、将报文从某个(某些)端口发送出去、维护报文统计信息等。除了这些动作外,还可以根据流表的具体实现自定义与流表项相关联的其它动作。
回到图2,现有的开放流路由交换设备中的报文解析、匹配、执行等控制装置可以分解为解析装置、匹配装置和执行装置。入口数据报文经过解析装置后,会将所有报文头部的字段解析出来,接着匹配装置在硬件为TCAM的存储了流表项的流表里面查找,看报文是否与其中的流表项匹配,如果与某条流表项匹配,执行装置就执行该流表项中相应的动作。而流表中的流表项是开放流控制器通过开放流路由交换设备的通信装置向TACM中的流表下发的。
已有的开放流路由交换设备一般采用三态内容寻址存储器TCAM(TernaryContentAddressableMemory)作为流表的存储载体,一般的内容寻址存储器(CAM)每个位(bit)只有两个值:0和1。而TCAM中每个位有三种状态值,即除了0和1之外,还有一个不关注(don'tcare)状态,表示不关心这个位的值具体是多少,也就是网络领域中经常所说的“掩码”,例如:一个8位的二进制数据8’b1101xxxx就可以匹配8’b11010000到8’b11011111范围内的所有值,换算成十进制数值,就是208到223之间的所有值。由于TCAM查找效率高并且支持任意位的掩码屏蔽功能,在使用TCAM作为流表的存储载体时,就可以非常方便的实现网络管理策略。例如,管理员想封锁所有去往192.168.0.1的FTP流量,在IP五元组(源IP地址,目的IP地址,协议号,源端口号,目的端口号)的流表定义下,即可表示为(*,192.168.0,1,TCP,*,21),其中符号*表示不关心该字段的值。这种通过掩码把某些字段屏蔽掉的流表项通常会匹配到很多条连接。
使用TACM成本高,为了在低成本下监视长流,本发明将传统OpenFlow框架下的流表进行了进一步的分割,分为宏流表和微流表。相关的概念包括:若干连续报文组成报文序列,一个或若干个报文序列就成为一个数据流。通信双方的某个特定应用之间的报文序列称为一条微流。在流表中的流表项可以要求精确匹配所有要求的字段,这时候就称匹配到这条精确流表项的报文序列为“微流”(microflow);流表的流表项的某些字段也可以用“掩码”屏蔽掉,这时候就称匹配到这条掩码流表项的报文序列为“宏流”(macroflow)。因此,宏流表中的流表项一般会出现一个或多个字段被掩码屏蔽掉,用于匹配宏流,并且需要使用TCAM实现;微流表的流表项一般要求精确匹配预设的所有字段,即微流,可以使用SRAM实现。SRAM(StaticRandomAccessMemory)是静态随机访问存储器,是一种具有静止存期功能的内存,不需要刷新电路即能保存内部存储的数据。和TCAM不同的是,SRAM中每个bit位只能是0或者1两种值,所以无法直接做到掩码匹配功能,但是SRAM每一个bit的成本比TCAM便宜30倍,每一个bit的功耗比TCAM低150倍。将原来TCAM实现的流表分成TCAM实现的宏流表和SRAM实现的微流表能够降低开放流路由交换设备的成本和功耗。后续将介绍为什么这样替换以及如何使用。
在这样的前提下,本发明的实施例公开了一种开放流路由交换设备对数据报文的处理方法,图3示出了开放流路由交换设备对数据报文的处理方法的流程框图,根据图3,
在步骤S301,响应于接收入口数据报文,解析该入口数据报文;
在步骤S302,将解析的入口数据报文与位于TCAM的宏流表中的流表项进行匹配,其中,在所述宏流表的流表项中相关联的动作包含启动长流检测;
在步骤S303,响应于解析的入口数据报文与所述宏流表中的流表项匹配,执行所述宏流表中的流表项相关联的启动长流检测的动作;
在步骤S304,响应于该入口数据报文在长流检测中被判别属于长流,通知与所述开放流路由交换设备相连的开放流控制器检测到长流,并从所述开放流控制器接收位于SRAM的微流表的流表项,该微流表的流表项与检测到的长流对应的入口数据报文中的特征值相关。
步骤S301为现有开放流路由交换设备中的常用技术,这里不再赘述其如何实现。
在步骤S302中,宏流表位于TCAM中,微流表位于SRAM中,原来所有的流表都要使用TCAM,占用的存储空加大,并且成本和功耗都很高;使用SRAM实现的微流表代替大部分TCAM实现的宏流表,可以减小成本和功耗。宏流表的流表项中某个匹配字段被掩码屏蔽。例如:针对IP五元组的流表定义(源IP地址、目的IP地址、协议号、源端口号、目的端口号),流表项(202.197.65.34,198.54.24.22,TCP,*,21)就是一条宏流表的流表项,表示从IP地址202.197.65.34的主机到IP地址198.54.24.22的主机的所有FTP流量。相关联的动作包含启动长流检测的动作。前面叙述相关联的动作时已经指出,相关联的动作可以根据流表的实现自定义其他动作。在本发明中,定义了启动长流检测的动作。该流表项也是从开放流控制器获得的。在宏流表的流表项中,可以对特定字段定义标志位,来标识相关联的动作为:是否启动长流检测,如果该标志位被置位(为0或1)就标识着相关联的动作包括启动长流检测,如果该标志位没有被置位(为1或0),就标识着相关联的动作不包含启动启动长流检测。例如,在某字段中增加一个标志位:LFD(Long-liVedFlowDetection)。LFD标志位被置为1表示当检测到有入口数据报文与该流表项匹配时,启动长流检测机制。开放流控制器在向开放流路由交换设备的宏流表中下发流表项时,可以根据网络拓扑信息以及从路由交换设备上收集的流量统计信息来决定是否设置该宏流流表项的LFD标志位。例如,当控制器查询到发往某个网段的流量特别大的时候,就可以下发一条流表项来匹配所有去往这个网段的流量,并在流表项的关联的动作中设置LFD标志位,从而启动开放流路由交换设备对匹配该流表项的报文的长流识别。
在步骤S303,当入口数据报文匹配宏流表中的某条流表项后,假设LFD标志位被设置为启动长流检测,可以使用概率选判、流量统计和过滤算法等方法来判断该报文是否属于某个长流。
方法一:概率选判方法
概率选判方法属于现有技术,在该方法中,宏流表的流表项关联了概率选判的动作,入口数据报文匹配到该流表项之后,以某个概率将其判属为长流。假设选判概率为p,某条流需要传输N个报文,每个报文均有概率p的机会被选判为属于长流。根据概率统计方法,该流在第k个报文被选判为长流的概率为P=1-(1-p)^k。从此公式中可以看出,k值越大,网络流被选判为长流的概率P值会越高。例如,当概率p=1/64时,某条流在第10个报文被判别为长流的概率是14.6%,在第100个报文被判别为长流的概率是79.3%,而在第150个报文被判别为长流的概率高达90.1%。这说明,该方法对长流识别是有一个时间过程的。一般而言,从时间跨度上来看,长流需要传输的报文数量非常多,它被识别出来的概率会非常大,而短流因为传输的报文数量非常少,它被误判为长流的概率非常小。
方法二:流量统计方法
流量统计方法也属于现有技术,该方法可以将满足一定流量速率的连接所对应的报文流识别为长流。该方法中,宏流表的流表项关联一个PB(Packet-Byte)计数器,同时统计报文数量(Packet计数器)和数据量(Byte计数器)。该PB计数器每隔一个固定周期被清零,该固定周期可以用户设定。匹配该宏流表的流表项的报文都会触发流量统计动作:Packet计数器自动加1,并将报文大小累加到Byte计数器上。一旦Packet计数器和Byte计数器同时超过规定的阈值后,所有报文被候选为长流,直至PB计数器被清零为止。本阶段的筛选条件是把满足一定速率的连接所对应的报文流选判为长流。
方法三:过滤器方法
过滤器方法也属于现有技术,在该方法中,当报文匹配宏流表的流表项后,进入Bloom过滤器进行筛选。Bloom过滤器由m个哈希表组成,每个哈希表包含N(N远大于m)个PB计数器。报文由m个哈希函数hl,…,hm生成m个索引值,在每个哈希表中寻址到一个PB计数器。每个PB计数器每隔一个设定周期被清零。匹配该宏流的流表项的报文都会触发Bloom过滤动作:所有m个Packet计数器自动加1,报文大小分别累加到这m个Byte计数器上。报文经过Bloom过滤器寻址到m个PB计数器,当且仅当所有m个PB计数器同时超过设定阈值后,该报文被候选为长流。
这些长流识别方法在数学上都可以归为概率统计方法,原理上需要一定容量的样本。但在网络传输过程中,报文到达交换设备在时间上是离散的。所以,需要一定跨度的时间,才能收集到容量足够大的样本。而在样本的收集过程中,可能存在长流识别的滞后效果,例如,某个方法可能在传输第10个报文时,某条长流才被识别出来,而前9个报文就被认为不是长流,就会经过开放流路由交换设备进行转发。不同方法的样本容量决定了不同长流识别方法能以多快的速度将报文识别为属于某条长流。
此外,方法一和方法二存在两种误判的可能:既可能把短流误判为长流,又可能漏判某个长流。方法三在参数调整合理后,只会出现短流被误判为长流。上述三种方法可以单独使用,也可以组合起来,以获得更高的精度,减小误判。
在步骤S304中,通知与所述开放流路由交换设备相连的开放流控制器检测到长流可以使用现有的加密通道。具体可以发送中断请求给开放流路由交换设备的ASIC硬件驱动程序(通信装置),告诉检测到长流,驱动程序发送PACKET-IN消息给开放流控制器,在PACKET-IN消息中,可以将Reason字段的值设置为OFPR_LFI指示该报丈被判别属于长流;对应地,开放流控制器得知当前入口数据报文为长流之后,从长流对应的入口数据报文中提取预定的特征值(例如IP五元组),这些特征值被组装成微流表的流表项,并且,开放流控制器可以基于一定的策略,对该长流所关联的微流表的流表项中的执行动作进行修改,以达到其控制目的和策略,然后将形成的微流表的流表项下发到微流表中,因此,该微流表的流表项与检测到的长流对应的入口数据报文中的特征值相关。或者,也可以在开放流路由交换设备中提取预定的特征值,直接发送给开放流控制器,然后由控制器基于一定的策略,对该长流所关联的微流表的流表项中的执行动作进行修改,得到组装成的流表项,下发到微流表中。
上述下发到微流表中的流表项的一个直接目的就是识别长流。在前面的步骤中,长流识别一直需要宏流表的流表项;一旦识别出长流的特征值,就可以将这些特征值组装成为微流表的流表项,从而直接识别出属于长流的报文,并通过相关联的动作进行精细控制,而不再需要利用宏流表对属于原来长流的数据报文进行长流识别。换句话说,原来都需要TACM的工作转移到SRAM中,就可以减少对TCAM的需求。本发明只是要把长流在开放流路由交换设备上识别出来并告诉开放流控制器,开放流控制器里面可能有各种各样的控制策略,可以依据这些控制策略来设置开放流路由交换设备上的微流表的流表项。开放流控制器的策略实施不在本发明的讨论范围之内。
因此,在一种实施方式中,图3所示的方法还包括以下步骤(图3未示出):在步骤S305,响应于接收到新的入口数据报文,将该新的入口数据报文与所述微流表中的流表项进行匹配。
在另一种实施方式中,图3所示的方法还包括(图3未示出):在步骤S306,响应于该新的入口数据报文与所述微流表中的流表项匹配,对该新的入口数据报文执行所述微流表中的流表项相关联的动作;以及在步骤S307,如果该新的入口数据报文与所述微流表中的流表项不匹配,说明说明该入口数据报文不属于长流,则将该新的入口数据报文与所述宏流表中的流表项进行匹配,从而进一步判别该新的入口数据报文是否属于长流。
以IP五元组(源IP地址、目的IP地址、协议号、源端口号、目的端口号)为例。开放流控制器要监视去往10.10.1.0/24网段的TCP流量,会在开放流路由交换设备的宏流表中下发(*,10.10.1.0/24,TCP,*,*)的表项来监视这些流量,同时启动长流检测。当匹配该宏流表的流表项的报文被判别为属于长流后,开放流控制器提取出该报文的IP五元组信息,假设为(20.20.1.1,10.10.1.1,TCP,5001,21)。进而,开放流控制器向开放流路由交换设备微流表中下发一条微流表项,即(20.20.1.1,10.10.1.1,TCP,5001,21)。那么,后续的从IP地址为20.20.1.1的主机向IP地址为10.10.1.1的主机发送的TCP流量中,源端口为5001,目的端口号为21的所有报文都会匹配该微流表中的微流表项,被认为是属于长流的报文,执行的动作也就是该微流表项所关联的动作,而不会执行也与之匹配的宏流表规则所关联的动作。例如所执行的动作为:将匹配报文从到某个负载较轻的链路上传输。
在另外一种实施方式中,也可以同时将入口数据报文与微流表和宏流表中的流表项进行匹配,如果同时匹配,优先选择与微流表中的流表项匹配结果,这样可以同时识别原来的长流,并且识别新的长流。也就是说,图3所示的方法还包括以下步骤(图3未示出):在步骤S308,响应于接收到新的入口数据报文,同时将该新的入口数据报文与宏流表和微流表中的流表项进行匹配;在步骤S310响应于该新的入口数据报文至少与微流表中的流表项匹配,对该新的入口数据报文执行所述微流表中的流表项相关联的动作;在步骤S311,响应于该新的入口数据报文只与宏流表中的流表项匹配,进一步判别该新的入口数据报文是否属于长流。也就是说,响应于该新的入口数据报文与宏流表和微流表中的流表项同时匹配或者仅与微流表中的流表项匹配,都对该新的入口数据报文执行所述微流表中的流表项相关联的动作。这可以通过设定微流表中的流表项匹配优先级大于宏流表的流表项的匹配优先级来实现,也可以通过仲裁器来实现。
在一种实施方式中,使用微流表的流表项判别放流时,可能会将短流误判为长流,这时需要消除这些误差。因此,图3所示的方法在将该新的入口数据报文与所述微流表中的流表项进行匹配还包括(图3未示出):在步骤S3011,响应于该新的入口数据报文与微流表中的流表项匹配,判断是否将该新的入口数据报文误判为属于长流;步骤S3012,响应于确定该新的入口数据报文被误判为属于长流,通知所述开放流控制器;步骤S3013,从所述开放流控制器接收删除的微流表的流表项;以及步骤S3014,删除对应的微流表的流表项。这样就把识别的错误的属于长流的微流表的流表项删除,后续就不用该微流表的流表项识别长流。本发明还提供一种判断是否将该新的入口数据报文误判为属于长流的方法。在步骤1,将微流表中的每条流表项与一个计数器关联;在步骤2,响应于该新的入口数据报文与该微流流表项匹配,将对应的计数器加1;在步骤3,每隔固定周期对计数器清零;在步骤4,响应于连续若干个周期计数器清零前的计数都低于设定阈值时,确定将该新的入口数据报文误判为属于长流,
在一种实施方式中,长流的数据报文发送结束后,需要从微流表中删除该微流表的流表项,从而不需要微流表的流表项来判别该入口数据报文是否属于长流。可以结合上述方法,也就是说图3的方法还包括步骤送312,响应于在设定周期没有与该微流表的流表项相匹配的数据报文,从微流表中删除该流表项。此时说明该长流已经传输完毕,可以释放存储空间。
在同一个发明构思下,图4示出了根据本发明一种实施方式的OpenFlow通信框架下的开放流路由交换设备400的结构组成。根据图4,开放流路由交换设备包括微流表401、宏流表402、解析装置403、匹配装置404、执行装置405和通信装置406。具体来说,开放流路由交换设备400中,解析装置403,被配置为响应于接收入口数据报文,解析该入口数据报文;匹配装置404,被配置为将解析的入口数据报文与位于TCAM的宏流表401中的流表项进行匹配,其中,在所述宏流表的流表项中相关联的动作包含启动长流检测;执行装置405,被配置为响应于解析的入口数据报文与所述宏流表中的流表项匹配,执行所述宏流表中的流表项相关联的启动长流检测的动作;通知装置406,被配置为响应于该入口数据报文在长流检测中被判别属于长流,通知与所述开放流路由交换设备相连的开放流控制器检测到长流,并从所述开放流控制器接收位于SRAM的微流表402的流表项,该微流表的流表项与检测到的长流对应的入口数据报文中的特征值相关。
在一种实施方式中,该宏流表的流表项中相关联的动作包含启动长流检测包括:在宏流表的流表项中对特定字段定义标志位,其中该标志位标识相关联的动作为是否启动长流检测;响应于该标志位被置位,则该宏流表的流表项中相关联的动作包含
在一种实施方式中,所述执行装置405执行所述宏流表中的流表项相关联的启动长流检测的动作采用以下至少一种方法进行检测:概率选判;流量统计;过滤算法。
在一种实施方式中,所述匹配装置404被进一步配置为:响应于接收到新的入口数据报文,将该新的入口数据报文与所述微流表中的流表项进行匹配。
在一种实施方式中,所述执行装置405被进一步配置为:响应于该新的入口数据报文与所述微流表中的流表项匹配,对该新的入口数据报文执行所述微流表中的流表项相关联的动作;并且所述匹配装置404还被进一步配置为:响应于该新的入口数据报文与所述微流表中的流表项不匹配,将该新的入口数据报文与所述宏流表中的流表项进行匹配,从而进一步判别该新的入口数据报文是否属于长流。
在一种实施方式中,所述匹配装置404还被进一步配置为:响应于接收到新的入口数据报文,同时将该新的入口数据报文与宏流表和微流表中的流表项进行匹配;并且所述执行装置405被进一步配置为:响应于该新的入口数据报文至少与微流表中的流表项匹配,对该新的入口数据报文执行所述微流表中的流表项相关联的动作;响应于该新的入口数据报文只与宏流表中的流表项匹配,进一步判别该新的入口数据报文是否属于长流。
在一种实施方式中,所述匹配装置404还包括长流误判装置(图4未示出),被配置为:响应于该新的入口数据报文与微流表中的流表项匹配,判断是否将入口数据报文误判为属于长流;所述通知装置还被进一步配置为:响应于确定入口数据报文被误判为属于长流,通知所述开放流控制器;从所述开放流控制器接收删除的微流表的流表项;并且所述匹配装置还被进一步配置为:响应于接收到删除的微流表的流表项,删除对应的微流表的流表项。
在一种实施方式中,其中所述匹配装置还包括长流误判装置,被配置为:将微流表中的每条流表项与一个计数器关联;响应于入口数据报文与该微流流表项匹配,对对应的计数器加1;每隔固定周期对计数器清零;以及响应于连续若干个周期计数器清零前的计数都低于设定阈值时,确定将该新的入口数据报文误判为属于长流。
在一种实施方式中,所述匹配装置404还被进一步配置为:响应于在设定周期没有与该微流表的流表项相匹配的数据报文,从微流表中删除该流表项。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是——但不限于——电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Java、Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (18)

1.一种开放流路由交换设备对数据报文的处理方法,包括:
响应于接收入口数据报文,解析该入口数据报文;
将解析的入口数据报文与位于TCAM的宏流表中的流表项进行匹配,其中,在所述宏流表的流表项中相关联的动作包含启动长流检测;
响应于解析的入口数据报文与所述宏流表中的流表项匹配,执行所述宏流表中的流表项相关联的启动长流检测的动作;
响应于该入口数据报文在长流检测中被判别属于长流,通知与所述开放流路由交换设备相连的开放流控制器检测到长流,并从所述开放流控制器接收位于SRAM的微流表的流表项,该微流表的流表项与检测到的长流对应的入口数据报文中的特征值相关。
2.根据权利要求1所述的方法,其中该宏流表的流表项中相关联的动作包含启动长流检测包括:在宏流表的流表项中对特定字段定义标志位,其中该标志位标识相关联的动作为是否启动长流检测,响应于该标志位被置位,则该宏流表的流表项中相关联的动作包含启动长流检测。
3.根据权利要求1所述的方法,其中执行所述宏流表中的流表项相关联的启动长流检测的动作采用以下至少一种方法进行检测:概率选判;流量统计;过滤算法。
4.根据权利要求1所述的方法,还包括:
响应于接收到新的入口数据报文,将该新的入口数据报文与所述微流表中的流表项进行匹配。
5.根据权利要求4所述的方法,还包括:
响应于该新的入口数据报文与所述微流表中的流表项匹配,对该新的入口数据报文执行所述微流表中的流表项相关联的动作;
响应于该新的入口数据报文与所述微流表中的流表项不匹配,将该新的入口数据报文与所述宏流表中的流表项进行匹配,从而进一步判别该新的入口数据报文是否属于长流。
6.根据权利要求4所述的方法,还包括:
响应于该新的入口数据报文与所述微流表中的流表项匹配,判断是否将该新的入口数据报文误判为属于长流;
响应于确定该新的入口数据报文被误判为属于长流,通知所述开放流控制器;
从所述开放流控制器接收删除的微流表的流表项;以及
删除对应的微流表的流表项。
7.根据权利要求6所述的方法,其中所述判断是否将该新的入口数据报文误判为属于长流包括:
将微流表中的每条流表项与一个计数器关联;
响应于该新的入口数据报文与该微流流表项匹配,对对应的计数器加1;
每隔固定周期对计数器清零;
响应于连续若干个周期计数器清零前的计数都低于设定阈值时,确定将该新的入口数据报文误判为属于长流。
8.根据权利要求1所述的方法,还包括:
响应于接收到新的入口数据报文,同时将该新的入口数据报文与宏流表和微流表中的流表项进行匹配;
响应于该新的入口数据报文至少与微流表中的流表项匹配,对该新的入口数据报文执行所述微流表中的流表项相关联的动作;
响应于该新的入口数据报文只与宏流表中的流表项匹配,进一步判别该新的入口数据报文是否属于长流。
9.根据权利要求1所述的方法,还包括:
响应于在设定周期没有与该微流表的流表项相匹配的数据报文,从微流表中删除该流表项。
10.一种开放流路由交换设备,包括:
解析装置,被配置为响应于接收入口数据报文,解析该入口数据报文;
匹配装置,被配置为将解析的入口数据报文与位于TCAM的宏流表中的流表项进行匹配,其中,在所述宏流表的流表项中相关联的动作包含启动长流检测;
执行装置,被配置为响应于解析的入口数据报文与所述宏流表中的流表项匹配,执行所述宏流表中的流表项相关联的启动长流检测的动作;
通知装置,被配置为响应于该入口数据报文在长流检测中被判别属于长流,通知与所述开放流路由交换设备相连的开放流控制器检测到长流,并从所述开放流控制器接收位于SRAM的微流表的流表项,该微流表的流表项与检测到的长流对应的入口数据报文中的特征值相关。
11.根据权利要求10所述的开放流路由交换设备,其中该宏流表的流表项中相关联的动作包含启动长流检测包括:在宏流表的流表项中对特定字段定义标志位,其中该标志位标识相关联的动作为是否启动长流检测;响应于该标志位被置位,则该宏流表的流表项中相关联的动作包含启动长流检测。
12.根据权利要求10所述的开放流路由交换设备,其中所述执行装置执行所述宏流表中的流表项相关联的启动长流检测的动作采用以下至少一种方法进行检测:概率选判;流量统计;过滤算法。
13.根据权利要求10所述的开放流路由交换设备,其中
所述匹配装置被进一步配置为:响应于接收到新的入口数据报文,将该新的入口数据报文与所述微流表中的流表项进行匹配。
14.根据权利要求13所述的开放流路由交换设备,其中:
所述执行装置被进一步配置为:响应于该新的入口数据报文与所述微流表中的流表项匹配,对该新的入口数据报文执行所述微流表中的流表项相关联的动作;
所述匹配装置还被进一步配置为:响应于该新的入口数据报文与所述微流表中的流表项不匹配,将该新的入口数据报文与所述宏流表中的流表项进行匹配,从而进一步判别该新的入口数据报文是否属于长流。
15.根据权利要求14所述的开放流路由交换设备,其中
所述匹配装置还包括长流误判装置,被配置为:响应于该新的入口数据报文与所述微流表中的流表项匹配,判断是否将该新的入口数据报文误判为属于长流;
所述通知装置还被进一步配置为:响应于确定该新的入口数据报文被误判为属于长流,通知所述开放流控制器;从所述开放流控制器接收删除的微流表的流表项;
所述匹配装置还被进一步配置为:响应于接收到删除的微流表的流表项,删除对应的微流表的流表项。
16.根据权利要求15所述的开放流路由交换设备,其中所述匹配装置还包括长流误判装置,被配置为:
将微流表中的每条流表项与一个计数器关联;
响应于该新的入口数据报文与该微流流表项匹配,对对应的计数器加1;
每隔固定周期对计数器清零;
响应于连续若干个周期计数器清零前的计数都低于设定阈值时,确定将该新的入口数据报文误判为属于长流。
17.根据权利要求10所述的开放流路由交换设备,其中
所述匹配装置还被进一步配置为:响应于接收到新的入口数据报文,同时将该新的入口数据报文与宏流表和微流表中的流表项进行匹配;
所述执行装置被进一步配置为:响应于该新的入口数据报文至少与微流表中的流表项匹配,对该新的入口数据报文执行所述微流表中的流表项相关联的动作;响应于该新的入口数据报文只与宏流表中的流表项匹配,进一步判别该新的入口数据报文是否属于长流。
18.根据权利要求10所述的开放流路由交换设备,其中所述匹配装置还被进一步配置为:响应于在设定周期没有与该微流表的流表项相匹配的数据报文,从微流表中删除该流表项。
CN201410174615.6A 2014-04-28 2014-04-28 开放流路由交换设备及其对数据报文的处理方法 Active CN105099916B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410174615.6A CN105099916B (zh) 2014-04-28 2014-04-28 开放流路由交换设备及其对数据报文的处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410174615.6A CN105099916B (zh) 2014-04-28 2014-04-28 开放流路由交换设备及其对数据报文的处理方法

Publications (2)

Publication Number Publication Date
CN105099916A true CN105099916A (zh) 2015-11-25
CN105099916B CN105099916B (zh) 2018-08-03

Family

ID=54579505

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410174615.6A Active CN105099916B (zh) 2014-04-28 2014-04-28 开放流路由交换设备及其对数据报文的处理方法

Country Status (1)

Country Link
CN (1) CN105099916B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105515850A (zh) * 2015-12-02 2016-04-20 浙江工商大学 利用OpenFlow控制器和配置点实现对ForCES转发件的控制管理方法
WO2017219904A1 (zh) * 2016-06-19 2017-12-28 华为技术有限公司 一种数据处理方法和装置
CN107818151A (zh) * 2017-10-24 2018-03-20 湖南恒茂高科股份有限公司 数据查找方法、装置、计算机设备和存储介质
CN110703817A (zh) * 2016-03-29 2020-01-17 华为技术有限公司 一种统计流量的控制方法、装置和系统
CN112769703A (zh) * 2021-02-09 2021-05-07 芯河半导体科技(无锡)有限公司 一种高效的基于sram的tcam实现方法
CN114221849A (zh) * 2020-09-18 2022-03-22 芯启源(南京)半导体科技有限公司 一种fpga结合tcam实现智能网卡的方法
CN114374648A (zh) * 2020-10-14 2022-04-19 芯启源(南京)半导体科技有限公司 一种np芯片结合tcam实现智能网卡的方法
CN115811502A (zh) * 2021-09-14 2023-03-17 安华高科技股份有限公司 集中式聚合长流检测及管理
CN115942052A (zh) * 2022-12-26 2023-04-07 新华三工业互联网有限公司 一种ip信号流监控方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120131222A1 (en) * 2010-11-22 2012-05-24 Andrew Robert Curtis Elephant flow detection in a computing device
CN102957603A (zh) * 2012-11-09 2013-03-06 盛科网络(苏州)有限公司 基于多级流表的Openflow报文转发方法及系统
CN102984064A (zh) * 2012-12-28 2013-03-20 盛科网络(苏州)有限公司 区分转发大象流的方法及系统
CN103166866A (zh) * 2011-12-12 2013-06-19 华为技术有限公司 生成表项的方法、接收报文的方法及相应装置和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120131222A1 (en) * 2010-11-22 2012-05-24 Andrew Robert Curtis Elephant flow detection in a computing device
CN103166866A (zh) * 2011-12-12 2013-06-19 华为技术有限公司 生成表项的方法、接收报文的方法及相应装置和系统
CN102957603A (zh) * 2012-11-09 2013-03-06 盛科网络(苏州)有限公司 基于多级流表的Openflow报文转发方法及系统
CN102984064A (zh) * 2012-12-28 2013-03-20 盛科网络(苏州)有限公司 区分转发大象流的方法及系统

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105515850B (zh) * 2015-12-02 2018-08-14 浙江工商大学 利用OpenFlow控制器和配置点实现对ForCES转发件的控制管理方法
CN105515850A (zh) * 2015-12-02 2016-04-20 浙江工商大学 利用OpenFlow控制器和配置点实现对ForCES转发件的控制管理方法
CN110703817B (zh) * 2016-03-29 2022-04-05 华为技术有限公司 一种统计流量的控制方法、装置和系统
US11716262B2 (en) 2016-03-29 2023-08-01 Huawei Technologies Co., Ltd. Control method, apparatus, and system for collecting traffic statistics
CN110703817A (zh) * 2016-03-29 2020-01-17 华为技术有限公司 一种统计流量的控制方法、装置和系统
US11381480B2 (en) 2016-03-29 2022-07-05 Huawei Technologies Co., Ltd. Control method, apparatus, and system for collecting traffic statistics
US11012542B2 (en) 2016-06-19 2021-05-18 Huawei Technologies Co., Ltd. Data processing method and apparatus
WO2017219904A1 (zh) * 2016-06-19 2017-12-28 华为技术有限公司 一种数据处理方法和装置
CN107818151A (zh) * 2017-10-24 2018-03-20 湖南恒茂高科股份有限公司 数据查找方法、装置、计算机设备和存储介质
CN114221849B (zh) * 2020-09-18 2024-03-19 芯启源(南京)半导体科技有限公司 一种fpga结合tcam实现智能网卡的方法
CN114221849A (zh) * 2020-09-18 2022-03-22 芯启源(南京)半导体科技有限公司 一种fpga结合tcam实现智能网卡的方法
CN114374648A (zh) * 2020-10-14 2022-04-19 芯启源(南京)半导体科技有限公司 一种np芯片结合tcam实现智能网卡的方法
CN114374648B (zh) * 2020-10-14 2024-03-19 芯启源(南京)半导体科技有限公司 一种np芯片结合tcam实现智能网卡的方法
CN112769703A (zh) * 2021-02-09 2021-05-07 芯河半导体科技(无锡)有限公司 一种高效的基于sram的tcam实现方法
CN115811502A (zh) * 2021-09-14 2023-03-17 安华高科技股份有限公司 集中式聚合长流检测及管理
CN115811502B (zh) * 2021-09-14 2025-04-08 安华高科技股份有限公司 用于实施聚合流检测及管理的半导体芯片、方法和系统
CN115942052A (zh) * 2022-12-26 2023-04-07 新华三工业互联网有限公司 一种ip信号流监控方法及装置

Also Published As

Publication number Publication date
CN105099916B (zh) 2018-08-03

Similar Documents

Publication Publication Date Title
CN105099916A (zh) 开放流路由交换设备及其对数据报文的处理方法
US12456037B2 (en) Using generative adversarial networks (GANs) to enable sharing of sensitive data
US10574556B2 (en) System for aggregating statistics associated with interfaces
CN103379039B (zh) 一种用于流统计的方法、装置及系统
Su et al. Redundant rule detection for software-defined networking
CN1781286B (zh) 用于分组分类和重写的方法和装置
CN105099960B (zh) 用于实现服务链的方法和装置
US10075371B2 (en) Communication system, control apparatus, packet handling operation setting method, and program
US11943128B1 (en) Path telemetry data collection
US10778545B2 (en) Network verification system
CN104012052A (zh) 用于软件定义网络中的流管理的系统和方法
CN114531944B (zh) 数据流的路径签名
US10819573B2 (en) Hierarchical coherency for network function virtualization
WO2015165212A1 (zh) 一种报文处理方法、装置及计算机存储介质
CN104821890A (zh) 一种基于普通交换芯片的OpenFlow多级流表的实现方法
CN114338509B (zh) 一种基于带内网络遥测技术的数据包转发环路实时检测系统及检测方法
US10164908B2 (en) Filtration of network traffic using virtually-extended ternary content-addressable memory (TCAM)
TW201445930A (zh) 封包交換裝置及方法
US10187286B2 (en) Method and system for tracking network device information in a network switch
CN101626323A (zh) 一种网络数据流量监测方法和装置
RU2602333C2 (ru) Сетевая система, способ обработки пакетов и носитель записи
CN112073326B (zh) 一种智能变电站过程层网络数据流控制方法
US8249067B2 (en) Separation of fabric and packet processing source in a system
EP4272400A1 (en) Network telemetry
CN104125149A (zh) 优化软件定义的网络的网络元件的配置系统的方法和设备

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
TR01 Transfer of patent right

Effective date of registration: 20200826

Address after: 23 / F, Lincoln building, 979 King's road, Quarry Bay, Hong Kong, China

Patentee after: Lenovo Global Technology International Co.,Ltd.

Address before: Armank, New York

Patentee before: International Business Machines Corp.

TR01 Transfer of patent right