CN107196807A - 网络中间设备及其部署方法 - Google Patents

网络中间设备及其部署方法 Download PDF

Info

Publication number
CN107196807A
CN107196807A CN201710471925.8A CN201710471925A CN107196807A CN 107196807 A CN107196807 A CN 107196807A CN 201710471925 A CN201710471925 A CN 201710471925A CN 107196807 A CN107196807 A CN 107196807A
Authority
CN
China
Prior art keywords
packet
network
program
intermediate equipment
intermediary device
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.)
Withdrawn
Application number
CN201710471925.8A
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.)
Shenzhen Graduate School Tsinghua University
Original Assignee
Shenzhen Graduate School Tsinghua University
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 Shenzhen Graduate School Tsinghua University filed Critical Shenzhen Graduate School Tsinghua University
Priority to CN201710471925.8A priority Critical patent/CN107196807A/zh
Publication of CN107196807A publication Critical patent/CN107196807A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0823Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability
    • H04L41/083Configuration setting characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability for increasing network speed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources

Landscapes

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

Abstract

本发明公开了网络中间设备及其部署方法,中间设备包括主控制程序及数据包处理程序,数据包处理程序包括分类程序、重写程序和转发程序;主控制程序被处理器执行时实现以下功能:从网络控制器获取并翻译指令以进行中间设备管理;从网络控制器获取规则;收集中间设备的状态并反馈至网络控制器;以及根据数据包的处理需要将分类程序、重写程序和转发程序按照不同的顺序进行拼接,形成不同的数据包处理链路;分类程序根据主控制程序下发的规则对接收到的数据包进行分类;重写程序对数据包进行重写操作;转发程序根据规则对数据包进行转发以及对可疑数据包进行丢包操作。本发明的中间设备管理灵活、通信开销小并可缩短数据包处理时延,增加资源利用率。

Description

网络中间设备及其部署方法
技术领域
本发明涉及计算机网络领域,具体涉及一种网络中间设备(Middlebox)以及该中间设备在网络中的部署方法。
背景技术
随着互联网的飞速发展,互联网规模不断扩大,复杂性不断提高,网络管理与控制面临着更大的挑战。Middlebox是网络中从源地址到目的地址之间的中间设备,其在网络中除具有转发和路由功能外,还具有提升网络安全(防火墙)、改善网络负载分配(loadbalancer)以及降低带宽消耗(WAN optimizers)等重要的作用。传统的Middlebox虽然有很高的处理效率,但是设备昂贵,同时部署和管理不灵活。
随着网络功能虚拟化(Network Function Virtualization,NFV)思想的提出,Middlebox的功能可以由硬件转化为软件实现。同时,软件定义网络(Software DefinedNetwork,SDN)为灵活管理Middlebox提供了更有效的方案。这些方案解决了硬件Middlebox设备昂贵以及管理不灵活的问题,并且避免了冗余硬件模块的部署。然而,软件实现Middlebox也依旧还存在着一些缺陷:
1)Middlebox之间相互依赖的部署导致数据包处理的链路拉伸,容易引起配置冲突以及网络错误;
2)不同的Middlebox之间可能会有相同的包处理阶段以及重复的功能模块(例如包分类操作),从而导致资源浪费;
3)服务链的存在使得Middlebox管理和部署的复杂性仍然难以降低。
为了解决上述问题,工业界和学术界尝试着对中间设备做统一设计和管理。但是由于中间设备的结构复杂多样,很多适用于独立的中间设备的统一化无法应用到服务链上;并且大量的方案都是依赖数据包的处理规则,无法提高灵活性。例如现已提出的一个集中化管理的软件定义模型——OpenBox模型,该模型将中间设备划分为多个不同的功能模块,同时在OpenBox控制器中部署了算法来实现多种middlebox功能。然而,OpenBox也并没有做到中间设备的统一化和通用化,并且也没有统一的语言来描述所有类型的中间设备。
另一方面,关于中间设备的部署,软件中间设备被部署在虚拟机中,而虚拟机运行在服务器上。现有的方案多是通过优化虚拟机的部署以及虚拟机之间的流量模式来提高资源利用率。比如:
1)根据服务链部署和调度流量以在虚拟机层减少通信开销;
2)通过允许合适粒度的可编程功能放置来更好的使用网络资源。
然而,在这些部署方案中,具有较长服务链处理需求的数据包将会跨越多个服务器或者虚拟机来完成处理,因此,服务器或虚拟机之间的通信开销依旧难以缩减,这增加了较长服务链的数据包的处理时延。
发明内容
鉴于上述现有技术所存在的缺陷,本发明其中一个实施例提出了一种统一化的、通用的网络中间设备,来简化Middlebox的管理以及降低部署难度,避免虚拟机之间或服务器之间的通信开销,缩短数据包的处理时延,增加资源利用率。
本发明为达上述目的所提出的技术方案如下:
一种网络中间设备,运行于一服务器上,其中所述服务器具有执行计算机程序的处理器;所述网络中间设备包括主控制程序以及数据包处理程序,所述数据包处理程序包括分类程序、重写程序和转发程序;
所述主控制程序被所述处理器执行时实现以下功能:从网络控制器获取并翻译指令以进行所述中间设备的管理;从网络控制器获取规则;收集所述中间设备的状态并反馈至网络控制器;以及,根据数据包的处理需要将分类程序、重写程序和转发程序按照不同的顺序进行拼接,形成不同的数据包处理链路;
所述分类程序被所述处理器执行时实现以下功能:根据所述主控制程序下发的所述规则对接收到的数据包进行分类;
所述重写程序被所述处理器执行时实现以下功能:对数据包进行重写操作;
所述转发程序被所述处理器执行时实现以下功能:根据所述规则对数据包进行转发以及对可疑数据包进行丢包操作。
本发明提供的上述网络中间设备,采用计算机程序代码来实现(即软件实现),相较于现有的通过软件实现的中间设备,本发明的上述中间设备能够根据当前处理需求进行数据包处理程序的即时创建(创建是指:将分类程序、重写程序和转发程序按照不同的顺序进行拼接),从而可以减少冗余程序,缩短数据包处理时延,提高网络吞吐量;同时对于较长服务链的数据包,无需再通过多个中间设备的不同功能组合来实现,而是可以在同一个中间设备中实现所有处理功能,避免了数据包在多个虚拟机或多个服务器之间进行传输,降低了网络传输延时。
本发明的另一实施例提出了前述网络中间设备的部署方法,来将前述网络中间设备部署于软件定义网络中,并实现最小的部署链路开销和获得最小处理时延,避免数据包在多个虚拟机或多个服务器之间的传递而导致的处理时延长、通信开销大以及资源利用率低的问题。
为达上述目的所提出的部署方法包括以下两个阶段:
第一阶段:根据网络拓扑、链路带宽、资源池容量和历史流信息,为每一中间设备选择一初始部署位置,并通过不断最小化链路开销来获得最佳部署位置;
第二阶段:为每一处于最佳部署位置的中间设备分配数据包处理程序以及进行流量调度,以获得最小处理时延。
本发明提供的上述部署方法,将本发明提供的前述网络中间设备部署于软件定义网络(SDN)中,部署过程通过不断最小化网络中的最大传输时延和链路开销来不断寻找更佳的部署位置,然后通过将相同功能需求的数据流调度到最优的中间设备上完成处理,既充分利用已存在的数据包处理程序,又实现了负载均衡。
附图说明
图1是本发明具体实施例提供的一种网络中间设备的架构图;
图2是本发明的中间设备实现NAT过程的模型图;
图3是本发明的中间设备实现Prxoy的模型图;
图4是本发明的中间设备实现服务链Firewall->NAT->Proxy的模型图;
图5是图4中的模型进行程序去重处理优化后的优化模型;
图6是本发明部署方法的伪代码;
图7是本发明部署方法的第一阶段的伪代码;
图8是本发明部署方法的第二阶段的伪代码。
具体实施方式
下面结合附图和优选的实施方式对本发明作进一步说明。
本发明的具体实施方式提供一种用于软件定义网络的中间设备(英文名称为Middlebox),该中间设备通过计算机程序来实现,部署于一虚拟机中,虚拟机运行于服务器上,所述服务器具有用于执行计算机程序的处理器。本发明的中间设备部署于软件定义网络中,只需要对网络控制器进行修改升级即可,无需对网络中的交换机作出改动,同时,每个中间设备有一个对应的服务器来为其提供资源和硬件支持。如图1为本发明具体实施例提出的一种中间设备的模型架构图,该中间设备包括主控制程序mcontroller以及数据包处理程序,所述数据包处理程序包括分类程序C、重写程序R和转发程序F。
具体地,主控制程序mcontroller被处理器执行时可实现以下这些功能:通过网络协议与网络控制器进行通信,从网络控制器获取指令并进行翻译,从而来管理构成该中间设备的各个程序(例如图1中的Cr、De、In以及Up,都表示主控制程序对当前中间设备下发的不同管理指令);从网络控制器获取规则(例如数据包处理规则、通信传输规则等)并调整规则有效时长;收集所述中间设备的状态并反馈至网络控制器;以及,根据数据包的处理需要将分类程序、重写程序和转发程序按照不同的顺序进行拼接,形成不同的数据包处理链路。相应地,网络控制器通过升级而增加基础网络数据获取功能、中间设备状态获取功能、流量分配功能、流量更新功能以及流量再分配功能,这些功能都是通过对应的程序代码来实现的。其中,网络控制器的基础网络数据获取功能具体如下执行:与交换机进行通信,交换机通过Hello消息主动与网络控制器建立连接,而后交换机和网络控制器的所有交互消息都是通过这个连接来完成的,通过与交换机的通信,主要获取到网络拓扑状态和网络端口状态。网络控制器的中间设备状态获取功能具体如下执行:可以直接使用OpenNF平台提供的南向接口,通过主控制程序实现与网络控制器交互,主控制程序通过翻译网络控制器指令获取规则,并返回中间设备的网络状态给网络控制器。网络控制器的流量分配功能如下执行:网络控制器依据数据包功能需求,将相同需求数据包调度到同一个中间设备中完成处理,具体是通过执行LLFSchedule算法来进行流量调度,具体过程后续再述。网络控制器的流量更新功能通过一流量更新程序来执行:LLFSchedule算法调度流量首先依据相同资源需求,但仍需要考虑负载均衡,因此,流量更新程序监控每个数据包处理程序的资源占用情况以及链路消耗,原则上,每个数据包有两个可选的中间设备,但是当网络资源严重失衡(即出现大量同需求数据包)情况下,流量更新程序会检测到此情景,并在当前网络环境下选择剩余最优的中间设备来完成流量分担;同时若当前网络中数据包较少,根据LLFSchedule算法,相同处理需求的数据包依旧会被分配至同一个中间设备完成处理,但此时,该方案并非最优,因为数据包分类操作会消耗较大的处理时延,因此对流量的正确预测分析,以及分配会直接影响到网络的处理延时。网络控制器的流量再分配功能,也是通过相应的程序代码来实现:在出现数据包需求极不平衡的情景下,网络中会临时选择当前状态下未使用的最优的中间设备来完成流量分担,在数据包恢复时,该中间设备的资源(是指其数据包处理程序)也需要及时释放,将流量调度到其他位置,进行流量的再分配,该功能是对流量更新功能的一个补充。
分类程序被处理器执行时可实现以下功能:根据所述主控制程序下发的所述规则对接收到的数据包进行分类,例如IP头分类、HTTP头分类、载荷分类等,比如在防火墙中,前缀匹配操作检测一个IP地址是否包含一个前缀,根据匹配规则将IP地址分为多个类别。重写程序被处理器执行时可实现以下功能:对数据包进行重写操作,例如对数据包进行IP头、HTTP头或载荷的修改,具体比如loadbalancer(负载均衡器)重写目的IP地址来控制路由路径,一些代理服务器需要重写IP头和HTTP载荷创建新的数据包响应URL请求。转发程序被处理器执行时可实现以下功能:根据所述规则对数据包进行转发以及对可疑数据包进行丢包操作。所述中间设备还具有存储单元Storage,用于存储整个中间设备的数据或进行缓存,还可提供数据共享,一种实施例中,存储单元Storage可以是一个文件***,用于存储各种状态和数据。在整个中间设备中,数据包在各个程序模块之间的传输是通过功能函数的调用和参数传递来实现的。在后续优选的实施例中,所述中间设备被简化为只有一个输入端口和一个输出端口。
通过主控制程序进行数据包处理程序的创建,可以根据数据包的当前处理需要来实时构建处理链路,避免数据包处理模块的重复和闲置资源的浪费。例如,当前数据包需要经过入侵检测***检测,那么当前的中间设备应当有能够实现检测功能的程序模块,而当前的分类程序(classifier)又没有空闲资源实现该功能,则主控制程序mcontroller检测到后会执行新分类程序的创建,并为新建的分类程序分配规则和资源来实现入侵检测功能。
在本发明中,通过分析不同功能的网络中间设备,通过分类程序C、重写程序R和转发程序F来实现不同功能的中间设备和服务链。常见的几种不同功能的中间设备如下表1所示:
表1
Middlebox类型 C R F Layer Storage
Firewall IP X 2 none
NAT IP IP,Port 2 none
Proxy IP,Http IP,Http 7 URL
IPS IPContent X 2 Info
NAT-PT IP IP,Port 2 none
Socks-GW X X 4 none
LoadBal. IP,Port IP,Mac 4 Mac
上述表1中的不同功能中间设备都能够通过本发明提供的中间设备来实现,即通过将分类程序、重写程序和转发程序按照不同的顺序进行拼接即可实现。
我们以Firewall(防火墙),NAT(网络地址转换)和proxy(代理服务器)为例,首先使用Cj k->Rj k+1->Fj k+2来描述本发明的每一个单独的网络中间设备,其中,Cj k表示第j个中间设备的第k个线程上运行的用于实现所述分类程序的功能的函数,Rj k+1表示第j个中间设备的第k+1个线程上运行的用于实现所述重写程序的功能的函数,Fj k+2表示第j个中间设备的第k+2个线程上运行的用于实现所述转发程序的功能的函数。则Firewall可以被描述为Cj k(IP)->Fj k+1;NAT将内网地址/端口转为外网地址,可以描述为Cj k(IP)->Rj k+1(IP),对于NAT,IP头重写程序被用来书写源地址/端口,NAT过程采用如图2所示的模型可实现。
Proxy相对复杂一些,当某一数据包到达,Proxy通过IP头分类器判别该数据包为客户端请求(Request)包还是服务器响应(Response)包,数据包进一步完成Http头分类。对于服务器响应包,URL被添加至存储单元,然后Http转发操作将内容转发至客户端。对于客户端请求包,Proxy首先通过Http头分类确定该URL是否被缓存在存储单元,若没有,执行图3中Miss所指向的路径,Proxy会使用分类程序实现IP头分类器的功能,将目的地址相关状态写入存储单元中供共享,并通过Http转发程序将内容转发至目的服务器;若已缓存,执行图3中Hit所指向的路径,Proxy书写源地址相关状态值存储在存储单元供共享并重新建立数据包完成客户端响应,该Proxy处理过程采用如图3所示的模型实现。
接下来我们根据功能需求进行数据包处理程序的合并、拼接,来实现服务链Firewall->NAT->Proxy的功能,如图4所示,方框10中实现了Firewall功能,即根据一定的规则过滤数据包P;转发程序11、分类程序12、重写程序13以及转发程序14和它们之间的数据包传输路径(带箭头的线)共同实现NAT功能,将数据包的IP和端口修改为公网地址;多边形15内的部分共同实现了Proxy功能。带箭头虚线及其所连接的多个分类程序C代表可重(chong)用的分类程序,当这些个分类程序有充足的空闲资源时,后续的需要分类程序来执行的功能都可以通过这些个分类程序完成;同理,图中的多个转发程序F也具有相似的特性。
在更优选的实施例中,还可以通过优化程序来对本发明通过程序合并、拼接所实现的服务链进行优化,调整数据包的处理顺序以合并在一数据包处理链路中具有相同功能的多个数据包处理程序,例如,对于图4所实现的服务链而言,可以通过优化程序来合并多个分类程序,使得数据包的多个分类操作并行执行,多个转发程序也可被合并。进行优化后的服务链Firewall->NAT->Proxy如图5所示。所述优化程序进行优化的方法如下:
优化之前,我们定义一些规则来保证本发明的中间设备的正确性。首先,每个数据包处理程序都是确定的,即有正确的状态和类ID,各程序会工作正确;其次,在包处理之前,相关的状态一定要准备好,即相关的规则要被***在各相关的程序中;最后,类ID应该是唯一的并且在正确的子集中。根据所定义的这三条规则,我们通过调整处理顺序来合并这些具有相同功能的数据包处理程序,例如Firewall将数据包分类为丢包或继续处理包,继续处理包将会根据NAT和Proxy的规则继续被分类。进行优化即统一在第一步执行这些分类操作,因此服务链Firewall->NAT->Proxy可以被优化为如图5所示。在图5中,我们***一些空白程序块,这些空白程序块的功能可以被第一个分类程序所实现。
接下来,提供本发明中间设备的部署方法,以将本发明的中间设备部署于软件定义网络中的合适位置并获得最小链路开销和缩短数据包处理/传输时延。
所述部署方法采用我们设计的MBSchedule算法来实现,该算法的伪代码如图6所示,具体包括:第一阶段采用我们设计的MBLDecision算法,根据网络拓扑、链路带宽、资源池容量和历史流信息,为每一中间设备选择一初始部署位置,并最小化部署链路开销,以获得最佳部署位置;以及,第二阶段采用我们设计的LLFSchedule算法为每一处于最佳部署位置的中间设备分配数据包处理程序以及进行流量调度,以获得最小处理时延。
其中,MBLDecision算法的伪代码如图7所示,该算法的问题可以被描述为求解flown m×maxlen的全局最小值;其中:m表示部署的中间设备节点,网络中所有的节点m构成集合{M};n表示网络中除中间设备节点以外的其它节点,网络中所有的节点n构成集合{N};flown m表示从节点n到达节点m的所有流量;maxlen=maximize d(n,m),maxlen表示任意节点n到最近的节点m的最远距离的最小值。如图7所示,我们根据节点度Ndeg v和频率Nfre v来标记节点,通过调整α来调整节点度和历史通过频率对该节点的影响程度,并将归一化结果表示为correlationv。Correlationlist被用来表示correlationv的序列,并且和α值相关,归一化公式为:
基于k-center算法,我们选择不邻接节点并比较flown m×maxlen来获得最小值,在本发明的中间设备处理能力和链路带宽的限制条件下,这种优化方案减少了计算空间。
采用LLFSchedule算法进行流量调度具体包括:
判断网络中所有中间设备当前是否已分配数据包处理程序;
若所有中间设备都未被分配数据包处理程序,则根据网络带宽和网络中所有中间设备的处理能力,以最小代价流算法来调度流量;
若网络中至少部分中间设备已被分配数据包处理程序,则基于每一条流可被完整地在同一个中间设备中处理的原则,来为每个数据包选择两个已被分配数据包处理程序的中间设备;其中,若为某一数据包选择的两个中间设备对于该数据包而言,具有相同的处理开销,则选择其中具有较大空闲资源的中间设备来处理该数据包。
需要说明,图6至图8中的“模块”指的是“数据包处理程序”。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。

Claims (10)

1.一种网络中间设备,运行于一服务器上,其中所述服务器具有执行计算机程序的处理器;所述网络中间设备包括主控制程序以及数据包处理程序,所述数据包处理程序包括分类程序、重写程序和转发程序;
所述主控制程序被所述处理器执行时实现以下功能:从网络控制器获取并翻译指令以进行所述中间设备的管理;从网络控制器获取规则;收集所述中间设备的状态并反馈至网络控制器;以及,根据数据包的处理需要将分类程序、重写程序和转发程序按照不同的顺序进行拼接,形成不同的数据包处理链路;
所述分类程序被所述处理器执行时实现以下功能:根据所述主控制程序下发的所述规则对接收到的数据包进行分类;
所述重写程序被所述处理器执行时实现以下功能:对数据包进行重写操作;
所述转发程序被所述处理器执行时实现以下功能:根据所述规则对数据包进行转发以及对可疑数据包进行丢包操作。
2.如权利要求1所述的网络中间设备,其特征在于:所述主控制程序被所述处理器执行时还实现以下功能:调整所述规则的有效时长。
3.如权利要求1所述的网络中间设备,其特征在于:通过功能函数的调用和参数传递来实现数据包在不同的数据包处理程序之间的传输。
4.如权利要求1所述的网络中间设备,其特征在于:还包括存储单元,被配置为实现以下功能:整个网络中间设备的数据存储功能以及提供数据共享。
5.如权利要求1所述的网络中间设备,其特征在于:所述分类程序对数据包进行分类包括将数据包按IP头分类、按HTTP头分类或按载荷分类。
6.如权利要求1所述的网络中间设备,其特征在于:所述重写程序对数据包进行重写操作包括对数据包进行IP头、HTTP头或载荷的修改。
7.如权利要求1所述的网络中间设备,其特征在于:还包括优化程序,被所述处理器执行时实现以下功能:调整数据包的处理顺序以合并在一数据包处理链路中的多个分类程序,使得数据包的多个分类操作并行执行。
8.如权利要求1至7任一项所述的网络中间设备的部署方法,用于将所述网络中间设备部署在软件定义网络中,所述部署方法包括以下两个阶段:
第一阶段:根据网络拓扑、链路带宽、资源池容量和历史流信息,为每一中间设备选择一初始部署位置,并通过不断最小化链路开销来获得最佳部署位置;
第二阶段:为每一处于最佳部署位置的中间设备分配数据包处理程序以及进行流量调度,以获得最小处理时延。
9.如权利要求8所述的部署方法,其特征在于:最小化部署链路开销具体包括:求解flown m×maxlen的全局最小值;其中:m表示部署的中间设备节点,网络中所有的节点m构成集合{M};n表示网络中除中间设备节点以外的其它节点,网络中所有的节点n构成集合{N};flown m表示从节点n到达节点m的所有流量;maxlen=maximize d(n,m),maxlen表示任意节点n到最近的节点m的最远距离的最小值。
10.如权利要求8所述的部署方法,其特征在于:所述第二阶段具体包括:
判断网络中所有中间设备当前是否已分配数据包处理程序;
若所有中间设备都未被分配数据包处理程序,则根据网络带宽和网络中所有中间设备的处理能力,以最小代价流算法来调度流量;
若网络中至少部分中间设备已被分配数据包处理程序,则基于每一条流可被完整地在同一个中间设备中处理的原则,来为每个数据包选择两个已被分配数据包处理程序的中间设备;其中,若为某一数据包选择的两个中间设备对于该数据包而言,具有相同的处理开销,则选择其中具有较大空闲资源的中间设备来处理该数据包。
CN201710471925.8A 2017-06-20 2017-06-20 网络中间设备及其部署方法 Withdrawn CN107196807A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710471925.8A CN107196807A (zh) 2017-06-20 2017-06-20 网络中间设备及其部署方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710471925.8A CN107196807A (zh) 2017-06-20 2017-06-20 网络中间设备及其部署方法

Publications (1)

Publication Number Publication Date
CN107196807A true CN107196807A (zh) 2017-09-22

Family

ID=59879451

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710471925.8A Withdrawn CN107196807A (zh) 2017-06-20 2017-06-20 网络中间设备及其部署方法

Country Status (1)

Country Link
CN (1) CN107196807A (zh)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10116530B2 (en) 2015-06-05 2018-10-30 Cisco Technology, Inc. Technologies for determining sensor deployment characteristics
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
CN109144944A (zh) * 2018-07-31 2019-01-04 佛山科学技术学院 一种并发性能最优的程序组带宽调度方法
US10250446B2 (en) 2017-03-27 2019-04-02 Cisco Technology, Inc. Distributed policy store
US10289438B2 (en) 2016-06-16 2019-05-14 Cisco Technology, Inc. Techniques for coordination of application components deployed on distributed virtual machines
US10374904B2 (en) 2015-05-15 2019-08-06 Cisco Technology, Inc. Diagnostic network visualization
US10523512B2 (en) 2017-03-24 2019-12-31 Cisco Technology, Inc. Network agent for generating platform specific network policies
US10523541B2 (en) 2017-10-25 2019-12-31 Cisco Technology, Inc. Federated network and application data analytics platform
US10554501B2 (en) 2017-10-23 2020-02-04 Cisco Technology, Inc. Network migration assistant
WO2020024961A1 (zh) * 2018-08-01 2020-02-06 华为技术有限公司 数据处理方法、设备及***
US10574575B2 (en) 2018-01-25 2020-02-25 Cisco Technology, Inc. Network flow stitching using middle box flow stitching
US10594542B2 (en) 2017-10-27 2020-03-17 Cisco Technology, Inc. System and method for network root cause analysis
US10594560B2 (en) 2017-03-27 2020-03-17 Cisco Technology, Inc. Intent driven network policy platform
US10680887B2 (en) 2017-07-21 2020-06-09 Cisco Technology, Inc. Remote device status audit and recovery
US10708183B2 (en) 2016-07-21 2020-07-07 Cisco Technology, Inc. System and method of providing segment routing as a service
US10708152B2 (en) 2017-03-23 2020-07-07 Cisco Technology, Inc. Predicting application and network performance
US10764141B2 (en) 2017-03-27 2020-09-01 Cisco Technology, Inc. Network agent for reporting to a network policy system
US10797970B2 (en) 2015-06-05 2020-10-06 Cisco Technology, Inc. Interactive hierarchical network chord diagram for application dependency mapping
US10798015B2 (en) 2018-01-25 2020-10-06 Cisco Technology, Inc. Discovery of middleboxes using traffic flow stitching
US10826803B2 (en) 2018-01-25 2020-11-03 Cisco Technology, Inc. Mechanism for facilitating efficient policy updates
US10873794B2 (en) 2017-03-28 2020-12-22 Cisco Technology, Inc. Flowlet resolution for application performance monitoring and management
US10972388B2 (en) 2016-11-22 2021-04-06 Cisco Technology, Inc. Federated microburst detection
US10999149B2 (en) 2018-01-25 2021-05-04 Cisco Technology, Inc. Automatic configuration discovery based on traffic flow data
US11128700B2 (en) 2018-01-26 2021-09-21 Cisco Technology, Inc. Load balancing configuration based on traffic flow telemetry
US11233821B2 (en) 2018-01-04 2022-01-25 Cisco Technology, Inc. Network intrusion counter-intelligence

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150163150A1 (en) * 2013-12-06 2015-06-11 Telefonaktiebolaget L M Ericsson (Publ) Method and system of service placement for service chaining
CN104937879A (zh) * 2013-01-28 2015-09-23 瑞典爱立信有限公司 用于在网络中放置服务的方法和设备
CN105099960A (zh) * 2014-04-30 2015-11-25 国际商业机器公司 用于实现服务链的方法和装置
WO2015194182A1 (ja) * 2014-06-19 2015-12-23 日本電気株式会社 サービスチェーン管理装置、サービスチェーン管理システム、サービスチェーン管理方法、及び、プログラム記録媒体
CN105229968A (zh) * 2013-05-29 2016-01-06 瑞典爱立信有限公司 对于服务链的带宽感知服务布置的方法和***
CN105430051A (zh) * 2015-10-30 2016-03-23 浙江工商大学 一种面向sdn的服务功能链构建方法
CN105553882A (zh) * 2015-12-23 2016-05-04 清华大学 用于sdn数据平面资源调度的方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104937879A (zh) * 2013-01-28 2015-09-23 瑞典爱立信有限公司 用于在网络中放置服务的方法和设备
CN105229968A (zh) * 2013-05-29 2016-01-06 瑞典爱立信有限公司 对于服务链的带宽感知服务布置的方法和***
US20150163150A1 (en) * 2013-12-06 2015-06-11 Telefonaktiebolaget L M Ericsson (Publ) Method and system of service placement for service chaining
CN105099960A (zh) * 2014-04-30 2015-11-25 国际商业机器公司 用于实现服务链的方法和装置
WO2015194182A1 (ja) * 2014-06-19 2015-12-23 日本電気株式会社 サービスチェーン管理装置、サービスチェーン管理システム、サービスチェーン管理方法、及び、プログラム記録媒体
CN105430051A (zh) * 2015-10-30 2016-03-23 浙江工商大学 一种面向sdn的服务功能链构建方法
CN105553882A (zh) * 2015-12-23 2016-05-04 清华大学 用于sdn数据平面资源调度的方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
PENGFEIDUAN等: "Toward Latency-Aware Dynamic Middlebox Scheduling", 《2015 24TH INTERNATIONAL CONFERENCE ON COMPUTER COMMUNICATION AND NETWORKS(ICCCN)》 *
QINGLI等: "Quokka: Latency-Aware Middlebox Scheduling with dynamic resource allocation", 《JOURNAL OF NETWORK AND COMPUTER APPLICATIONS》 *
XINHE等: "MBBrick: Unified Middlebox Design and Deployment in Software Defined Network", 《2017 IEEE CONFERENCE ON COMPUTER COMMUNICATIONS WORKSHOPS (INFOCOM WKSHPS): SWFAN 17: INTERNATIONAL WORKSHOP ON SOFTWARE-DRIVEN FLEXIBLE AND AGILE NETWORKING》 *

Cited By (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10374904B2 (en) 2015-05-15 2019-08-06 Cisco Technology, Inc. Diagnostic network visualization
US11477097B2 (en) 2015-06-05 2022-10-18 Cisco Technology, Inc. Hierarchichal sharding of flows from sensors to collectors
US11431592B2 (en) 2015-06-05 2022-08-30 Cisco Technology, Inc. System and method of detecting whether a source of a packet flow transmits packets which bypass an operating system stack
US10142353B2 (en) 2015-06-05 2018-11-27 Cisco Technology, Inc. System for monitoring and managing datacenters
US10171319B2 (en) 2015-06-05 2019-01-01 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US11968102B2 (en) 2015-06-05 2024-04-23 Cisco Technology, Inc. System and method of detecting packet loss in a distributed sensor-collector architecture
US10177998B2 (en) 2015-06-05 2019-01-08 Cisco Technology, Inc. Augmenting flow data for improved network monitoring and management
US10181987B2 (en) 2015-06-05 2019-01-15 Cisco Technology, Inc. High availability of collectors of traffic reported by network sensors
US10230597B2 (en) 2015-06-05 2019-03-12 Cisco Technology, Inc. Optimizations for application dependency mapping
US10243817B2 (en) 2015-06-05 2019-03-26 Cisco Technology, Inc. System and method of assigning reputation scores to hosts
US11968103B2 (en) 2015-06-05 2024-04-23 Cisco Technology, Inc. Policy utilization analysis
US11936663B2 (en) 2015-06-05 2024-03-19 Cisco Technology, Inc. System for monitoring and managing datacenters
US10305757B2 (en) 2015-06-05 2019-05-28 Cisco Technology, Inc. Determining a reputation of a network entity
US10320630B2 (en) 2015-06-05 2019-06-11 Cisco Technology, Inc. Hierarchichal sharding of flows from sensors to collectors
US10326673B2 (en) 2015-06-05 2019-06-18 Cisco Technology, Inc. Techniques for determining network topologies
US10326672B2 (en) 2015-06-05 2019-06-18 Cisco Technology, Inc. MDL-based clustering for application dependency mapping
US10116531B2 (en) 2015-06-05 2018-10-30 Cisco Technology, Inc Round trip time (RTT) measurement based upon sequence number
US10439904B2 (en) 2015-06-05 2019-10-08 Cisco Technology, Inc. System and method of determining malicious processes
US10454793B2 (en) 2015-06-05 2019-10-22 Cisco Technology, Inc. System and method of detecting whether a source of a packet flow transmits packets which bypass an operating system stack
US11924072B2 (en) 2015-06-05 2024-03-05 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US10516585B2 (en) 2015-06-05 2019-12-24 Cisco Technology, Inc. System and method for network information mapping and displaying
US10516586B2 (en) 2015-06-05 2019-12-24 Cisco Technology, Inc. Identifying bogon address spaces
US11924073B2 (en) 2015-06-05 2024-03-05 Cisco Technology, Inc. System and method of assigning reputation scores to hosts
US11902120B2 (en) 2015-06-05 2024-02-13 Cisco Technology, Inc. Synthetic data for determining health of a network security system
US10536357B2 (en) 2015-06-05 2020-01-14 Cisco Technology, Inc. Late data detection in data center
US11902121B2 (en) 2015-06-05 2024-02-13 Cisco Technology, Inc. System and method of detecting whether a source of a packet flow transmits packets which bypass an operating system stack
US11902122B2 (en) 2015-06-05 2024-02-13 Cisco Technology, Inc. Application monitoring prioritization
US10567247B2 (en) 2015-06-05 2020-02-18 Cisco Technology, Inc. Intra-datacenter attack detection
US11894996B2 (en) 2015-06-05 2024-02-06 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US11700190B2 (en) 2015-06-05 2023-07-11 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US11695659B2 (en) 2015-06-05 2023-07-04 Cisco Technology, Inc. Unique ID generation for sensors
US10623283B2 (en) 2015-06-05 2020-04-14 Cisco Technology, Inc. Anomaly detection through header field entropy
US10623282B2 (en) 2015-06-05 2020-04-14 Cisco Technology, Inc. System and method of detecting hidden processes by analyzing packet flows
US10623284B2 (en) 2015-06-05 2020-04-14 Cisco Technology, Inc. Determining a reputation of a network entity
US10659324B2 (en) 2015-06-05 2020-05-19 Cisco Technology, Inc. Application monitoring prioritization
US11637762B2 (en) 2015-06-05 2023-04-25 Cisco Technology, Inc. MDL-based clustering for dependency mapping
US10686804B2 (en) 2015-06-05 2020-06-16 Cisco Technology, Inc. System for monitoring and managing datacenters
US10693749B2 (en) 2015-06-05 2020-06-23 Cisco Technology, Inc. Synthetic data for determining health of a network security system
US11601349B2 (en) 2015-06-05 2023-03-07 Cisco Technology, Inc. System and method of detecting hidden processes by analyzing packet flows
US11528283B2 (en) 2015-06-05 2022-12-13 Cisco Technology, Inc. System for monitoring and managing datacenters
US10728119B2 (en) 2015-06-05 2020-07-28 Cisco Technology, Inc. Cluster discovery via multi-domain fusion for application dependency mapping
US10735283B2 (en) 2015-06-05 2020-08-04 Cisco Technology, Inc. Unique ID generation for sensors
US10742529B2 (en) 2015-06-05 2020-08-11 Cisco Technology, Inc. Hierarchichal sharding of flows from sensors to collectors
US11522775B2 (en) 2015-06-05 2022-12-06 Cisco Technology, Inc. Application monitoring prioritization
US10797970B2 (en) 2015-06-05 2020-10-06 Cisco Technology, Inc. Interactive hierarchical network chord diagram for application dependency mapping
US11516098B2 (en) 2015-06-05 2022-11-29 Cisco Technology, Inc. Round trip time (RTT) measurement based upon sequence number
US11502922B2 (en) 2015-06-05 2022-11-15 Cisco Technology, Inc. Technologies for managing compromised sensors in virtualized environments
US11496377B2 (en) 2015-06-05 2022-11-08 Cisco Technology, Inc. Anomaly detection through header field entropy
US10505828B2 (en) 2015-06-05 2019-12-10 Cisco Technology, Inc. Technologies for managing compromised sensors in virtualized environments
US11121948B2 (en) 2015-06-05 2021-09-14 Cisco Technology, Inc. Auto update of sensor configuration
US10116530B2 (en) 2015-06-05 2018-10-30 Cisco Technology, Inc. Technologies for determining sensor deployment characteristics
US10917319B2 (en) 2015-06-05 2021-02-09 Cisco Technology, Inc. MDL-based clustering for dependency mapping
US10129117B2 (en) 2015-06-05 2018-11-13 Cisco Technology, Inc. Conditional policies
US10979322B2 (en) 2015-06-05 2021-04-13 Cisco Technology, Inc. Techniques for determining network anomalies in data center networks
US11405291B2 (en) 2015-06-05 2022-08-02 Cisco Technology, Inc. Generate a communication graph using an application dependency mapping (ADM) pipeline
US11368378B2 (en) 2015-06-05 2022-06-21 Cisco Technology, Inc. Identifying bogon address spaces
US11252058B2 (en) 2015-06-05 2022-02-15 Cisco Technology, Inc. System and method for user optimized application dependency mapping
US11102093B2 (en) 2015-06-05 2021-08-24 Cisco Technology, Inc. System and method of assigning reputation scores to hosts
US10904116B2 (en) 2015-06-05 2021-01-26 Cisco Technology, Inc. Policy utilization analysis
US11128552B2 (en) 2015-06-05 2021-09-21 Cisco Technology, Inc. Round trip time (RTT) measurement based upon sequence number
US11252060B2 (en) 2015-06-05 2022-02-15 Cisco Technology, Inc. Data center traffic analytics synchronization
US10862776B2 (en) 2015-06-05 2020-12-08 Cisco Technology, Inc. System and method of spoof detection
US11153184B2 (en) 2015-06-05 2021-10-19 Cisco Technology, Inc. Technologies for annotating process and user information for network flows
US10289438B2 (en) 2016-06-16 2019-05-14 Cisco Technology, Inc. Techniques for coordination of application components deployed on distributed virtual machines
US11283712B2 (en) 2016-07-21 2022-03-22 Cisco Technology, Inc. System and method of providing segment routing as a service
US10708183B2 (en) 2016-07-21 2020-07-07 Cisco Technology, Inc. System and method of providing segment routing as a service
US10972388B2 (en) 2016-11-22 2021-04-06 Cisco Technology, Inc. Federated microburst detection
US11088929B2 (en) 2017-03-23 2021-08-10 Cisco Technology, Inc. Predicting application and network performance
US10708152B2 (en) 2017-03-23 2020-07-07 Cisco Technology, Inc. Predicting application and network performance
US10523512B2 (en) 2017-03-24 2019-12-31 Cisco Technology, Inc. Network agent for generating platform specific network policies
US11252038B2 (en) 2017-03-24 2022-02-15 Cisco Technology, Inc. Network agent for generating platform specific network policies
US11146454B2 (en) 2017-03-27 2021-10-12 Cisco Technology, Inc. Intent driven network policy platform
US10764141B2 (en) 2017-03-27 2020-09-01 Cisco Technology, Inc. Network agent for reporting to a network policy system
US10594560B2 (en) 2017-03-27 2020-03-17 Cisco Technology, Inc. Intent driven network policy platform
US11509535B2 (en) 2017-03-27 2022-11-22 Cisco Technology, Inc. Network agent for reporting to a network policy system
US10250446B2 (en) 2017-03-27 2019-04-02 Cisco Technology, Inc. Distributed policy store
US11863921B2 (en) 2017-03-28 2024-01-02 Cisco Technology, Inc. Application performance monitoring and management platform with anomalous flowlet resolution
US11683618B2 (en) 2017-03-28 2023-06-20 Cisco Technology, Inc. Application performance monitoring and management platform with anomalous flowlet resolution
US10873794B2 (en) 2017-03-28 2020-12-22 Cisco Technology, Inc. Flowlet resolution for application performance monitoring and management
US11202132B2 (en) 2017-03-28 2021-12-14 Cisco Technology, Inc. Application performance monitoring and management platform with anomalous flowlet resolution
US10680887B2 (en) 2017-07-21 2020-06-09 Cisco Technology, Inc. Remote device status audit and recovery
US11044170B2 (en) 2017-10-23 2021-06-22 Cisco Technology, Inc. Network migration assistant
US10554501B2 (en) 2017-10-23 2020-02-04 Cisco Technology, Inc. Network migration assistant
US10523541B2 (en) 2017-10-25 2019-12-31 Cisco Technology, Inc. Federated network and application data analytics platform
US10594542B2 (en) 2017-10-27 2020-03-17 Cisco Technology, Inc. System and method for network root cause analysis
US10904071B2 (en) 2017-10-27 2021-01-26 Cisco Technology, Inc. System and method for network root cause analysis
US11233821B2 (en) 2018-01-04 2022-01-25 Cisco Technology, Inc. Network intrusion counter-intelligence
US11750653B2 (en) 2018-01-04 2023-09-05 Cisco Technology, Inc. Network intrusion counter-intelligence
US10826803B2 (en) 2018-01-25 2020-11-03 Cisco Technology, Inc. Mechanism for facilitating efficient policy updates
US10574575B2 (en) 2018-01-25 2020-02-25 Cisco Technology, Inc. Network flow stitching using middle box flow stitching
US10798015B2 (en) 2018-01-25 2020-10-06 Cisco Technology, Inc. Discovery of middleboxes using traffic flow stitching
US10999149B2 (en) 2018-01-25 2021-05-04 Cisco Technology, Inc. Automatic configuration discovery based on traffic flow data
US11128700B2 (en) 2018-01-26 2021-09-21 Cisco Technology, Inc. Load balancing configuration based on traffic flow telemetry
CN109144944A (zh) * 2018-07-31 2019-01-04 佛山科学技术学院 一种并发性能最优的程序组带宽调度方法
WO2020024961A1 (zh) * 2018-08-01 2020-02-06 华为技术有限公司 数据处理方法、设备及***
US11463346B2 (en) 2018-08-01 2022-10-04 Huawei Technologies Co., Ltd. Data processing method, device, and system

Similar Documents

Publication Publication Date Title
CN107196807A (zh) 网络中间设备及其部署方法
CN110830357B (zh) 使用高级拓扑描述的多云虚拟计算环境供应
Zhang et al. Adaptive interference-aware VNF placement for service-customized 5G network slices
US10917351B2 (en) Reliable load-balancer using segment routing and real-time application monitoring
US10069764B2 (en) Ruled-based network traffic interception and distribution scheme
US8719331B2 (en) Work migration in a processor
WO2020029829A1 (en) Method and apparatus for virtual network functions and packet forwarding
CN107819742B (zh) 一种动态部署网络安全服务的***架构及其方法
US20160091913A1 (en) Smart power management in switches and routers
CN105721535A (zh) 对服务功能链中的服务功能的并行处理
US20160320818A1 (en) Dynamic management of power supply units
US20220182874A1 (en) Systems and methods for distribution of application logic in digital networks
US11979290B2 (en) Controlling parallel data processing for service function chains
EP3611622B1 (en) Technologies for classifying network flows using adaptive virtual routing
US20140173092A1 (en) Exchange of server health and client information through headers for request management
Torkzadeh et al. Energy-aware routing considering load balancing for SDN: a minimum graph-based Ant Colony Optimization
US20190044799A1 (en) Technologies for hot-swapping a legacy appliance with a network functions virtualization appliance
Bremler-Barr et al. Openbox: Enabling innovation in middlebox applications
US20240195749A1 (en) Path selection for packet transmission
Zhang et al. Network service chains deployment across multiple SDN domains
CN108737455B (zh) 网络业务识别装置及方法
Jalalitabar et al. Branching-aware service function placement and routing in network function virtualization
Wang et al. Low-latency service chaining with predefined NSH-based multipath across multiple datacenters
US11075835B2 (en) Distributed, packet-mediated, packet routing
Cao et al. A study on application-towards bandwidth guarantee based on SDN

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20170922