CN115208827A - 一种流量分配的方法和装置 - Google Patents

一种流量分配的方法和装置 Download PDF

Info

Publication number
CN115208827A
CN115208827A CN202210809370.4A CN202210809370A CN115208827A CN 115208827 A CN115208827 A CN 115208827A CN 202210809370 A CN202210809370 A CN 202210809370A CN 115208827 A CN115208827 A CN 115208827A
Authority
CN
China
Prior art keywords
flow
traffic
port
message
preset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210809370.4A
Other languages
English (en)
Inventor
刘松林
李力
董玢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Jingdong Technology Information Technology Co Ltd
Original Assignee
Jingdong Technology Information Technology Co Ltd
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 Jingdong Technology Information Technology Co Ltd filed Critical Jingdong Technology Information Technology Co Ltd
Priority to CN202210809370.4A priority Critical patent/CN115208827A/zh
Publication of CN115208827A publication Critical patent/CN115208827A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control

Landscapes

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

Abstract

本发明公开了一种流量分配的方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:获取流量报文;根据所述流量报文的路径信息以及协议信息确定所述流量报文对应的报文组信息;确定是否存在报文组信息对应的第一流量端口,第一流量端口按照实时流量进行管理;如果是,将流量报文分配给第一流量端口;如果否,将流量报文分配给目标第二流量端口,目标第二流量端口按照固定带宽进行管理,且目标第二流量端口的实时流量小于预设第一固定带宽。该实施方式从数据流的角度为流量报文分配流量端口,可以为流量合理的分配管理方式,避免出现报文丢失、流量端口超负荷以及分配效率低的问题。

Description

一种流量分配的方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种流量分配的方法和装置。
背景技术
机房一般存在多种类型的流量端口,例如:固定带宽的流量端口或实时流量端口。
目前在进行流量分配时,采取的分配方式一般有以下几种:(1)将流量平均分配到各种类型的端口上,这可能导致端口超负荷运行,从而造成报文丢失等问题;(2)由人工进行流量的监控,根据流量变化在不同类型的流量端口间进行切换,这导致流量分配的效率较低;(3)针对固定带宽的流量端口设置限速,当流量超过限速值时使用实时流量端口,这可能增加乱序概率,影响业务稳定性。
发明内容
有鉴于此,本发明实施例提供一种流量分配的方法和装置,从报文组信息的角度为流量报文分配流量端口,根据流量报文对应的报文组信息是否存在对应的第一流量端口来确定该流量报文所要分配的流量端口,可以为流量合理的分配管理方式,依据不同的管理方式,避免出现报文丢失、流量端口超负荷以及分配效率低的问题。
为实现上述目的,根据本发明实施例的一个方面,提供了一种流量分配的方法。
本发明实施例的一种流量分配的方法包括:
获取流量报文;根据所述流量报文的路径信息以及协议信息确定所述流量报文对应的报文组信息;确定是否存在所述报文组信息对应的第一流量端口,所述第一流量端口按照实时流量进行管理;如果是,将所述流量报文分配给所述第一流量端口;如果否,将所述流量报文分配给目标第二流量端口,所述目标第二流量端口按照固定带宽进行管理,且所述目标第二流量端口的实时流量小于预设第一固定带宽。
可选地,在不存在与所述报文组信息对应的第一流量端口、且所述实时流量不小于预设第一固定带宽的情况下,还包括:确定所述流量报文中是否存在同步序列编号;如果是,将所述流量报文分配给所述第一流量端口;如果否,根据一个或多个第二流量端口的实时流量以及所述一个或多个第二流量端口分别对应的预设第二固定带宽,为所述流量报文分配流量端口;所述预设第二固定带宽大于所述预设第一固定带宽。
可选地,在所述流量报文中不存在同步序列编号的情况下,所述为所述流量报文分配流量端口,包括:在任意第二流量端口的实时流量小于或等于对应的预设第二固定带宽的情况下,将所述实时流量小于或等于对应的预设第二固定带宽的第二流量端口作为所述流量端口。
可选地,在所有所述第二流量端口的实时流量均大于对应的预设第二固定带宽的情况下,将所述流量报文分配至所述第一流量端口。
可选地,所述根据所述流量报文的路径信息以及协议信息确定所述流量报文对应的报文组信息,包括:根据所述流量报文中的源IP、目的IP、源端口、目的端口和协议类型,确定所述流量报文所属的报文组信息。
可选地,确定是否存在所述报文组信息对应的第一流量端口,包括:根据所述源IP、目的IP、源端口、目的端口和协议类型,计算所述流量报文的摘要值;确定预设流表中是否存在与所述摘要值相同的目标摘要值;其中,所述预设流表中的摘要值是根据历史流量报文的源IP、目的IP、源端口、目的端口和协议类型计算得到的;如果是,确定存在所述第一流量端口。
可选地,在所述第一流量端口为多个或所述目标第二流量端口为多个的情况下,通过负载均衡方式对所述流量报文进行分配。
可选地,该方法还包括:为所述流量报文添加所述第一流量端口的标识或所述目标第二流量端口的标识,并将添加有标识的流量报文发送给出口交换机,以使所述出口交换机根据所述标识确定所述第一流量端口或所述目标第二流量端口。
可选地,基于可编程交换机或架构服务器实现所述流量分配的方法。
为实现上述目的,根据本发明实施例的又一方面,提供了一种流量分配的装置。
本发明实施例的一种流量分配的装置包括:
获取模块,用于获取流量报文;
确定模块,用于根据所述流量报文的路径信息以及协议信息确定所述流量报文对应的报文组信息;
分配模块,用于确定是否存在所述报文组信息对应的第一流量端口,所述第一流量端口按照实时流量进行管理;如果是,将所述流量报文分配给所述第一流量端口;如果否,将所述流量报文分配给目标第二流量端口,所述目标第二流量端口按照固定带宽进行管理,且所述目标第二流量端口的实时流量小于预设第一固定带宽。
为实现上述目的,根据本发明实施例的又一方面,提供了一种用于流量分配的电子设备。
本发明实施例的一种流量分配的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例的一种流量分配的方法。
为实现上述目的,根据本发明实施例的再一方面,提供了一种计算机可读存储介质。
本发明实施例的一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的一种流量分配的方法。
上述发明中的一个实施例具有如下优点或有益效果:本发明实施例提供一种流量分配的方法和装置,从报文组信息的角度为流量报文分配流量端口,根据流量报文对应的报文组信息是否存在对应的第一流量端口来确定该流量报文所要分配的流量端口,可以为流量合理的分配管理方式,依据不同的管理方式,避免出现报文丢失、流量端口超负荷以及分配效率低的问题。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的流量分配的方法的主要步骤的示意图;
图2是根据本发明实施例的确定是否存在报文组信息对应的第一流量端口的主要步骤的示意图;
图3是根据本发明实施例的不存在所述目标第二流量端口的情况的主要步骤的示意图;
图4是根据本发明实施例的出口交换机与可编程交换机的交互过程的示意图;
图5是根据本发明实施例的流量分配的具体方法的示意图;
图6是根据本发明实施例的流量分配的装置的主要模块的示意图;
图7是本发明实施例可以应用于其中的示例性系统架构图;
图8是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要指出的是,在不冲突的情况下,本发明的实施例以及实施例中的技术特征可以相互结合。
图1是根据本发明实施例的流量分配的方法的主要步骤的示意图。
如图1所示,本发明实施例的流量分配的方法主要包括以下步骤:
步骤S101:获取流量报文;
步骤S102:根据所述流量报文的路径信息以及协议信息确定流量报文对应的报文组信息;
步骤S103:确定是否存在报文组信息对应的第一流量端口,第一流量端口按照实时流量进行管理;
如果是,执行步骤S104:将流量报文分配给第一流量端口;
如果否,执行步骤S104:将流量报文分配给目标第二流量端口,目标第二流量端口按照固定带宽进行管理,且目标第二流量端口的实时流量小于预设第一固定带宽。
在现有的流量分配领域,通常存在两种流量输出的端口,分别为普通流量端口(第一流量端口)和固定带宽的流量端口(第二流量端口),运营商对于不同的流量端口采用的计费方式也不相同。其中,普通流量端口是按照实时流量进行管理的,也就是按照输出的流量数进行计费,而固定带宽的流量端口是按照固定带宽来进行计费的,也就是在特定时间内收取固定的费用。因此,对于流量的使用方来说,为了尽可能降低成本,同时保证运行业务的稳定性,会尽可能优先使用固定带宽的流量端口。本发明实施例在尽可能优先使用固定带宽的流量端口的基础上,同时达到了针对不同报文组信息合理分配流量端口的目的。
需要说明的是,第一流量端口和第二流量端口通常都设置有多个,上述目标第二流量端口,是第二流量端口中实时流量小于预设第一固定带宽的流量端口,属于第二流量端口中的一部分。在一种可选的实施例中,预设第一固定带宽可以设置为总带宽的90%,保证流量端口的正常运行,避免出现数据丢包等问题。
报文组信息,即可以理解为数据流(data stream),是一组有序,有起点和终点的字节的数据序列,通常包括了同一次连接期间的一个或多个流量报文,对于每个报文组信息,仅通过第一个流量报文与目标接口建立连接,并生成一个SYN(Synchronize SequenceNumbers,同步序列编号),后续的其他报文无需重复建立连接。其中,同步序列编号是TCP/IP建立连接时使用的握手信,在客户机和服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,服务器使用SYN+ACK应答表示接收到了这个消息,最后客户机再以ACK消息响应。这样在客户机和服务器之间才能建立起可靠的TCP连接,数据才可以在客户机和服务器之间传递。也就是说,属于同一报文组信息的多个流量报文,仅有第一个流量报文中存在同步序列编号,后续的流量报文中则没有同步序列编号。
在本发明实施例中,由于优先采用第二流量端口进行流量输出,因此如果存在报文组信息对应的第一流量端口,说明当前流量报文并不是第一次分配端口,同时说明第二流量端口已达到负载,因此,直接将流量报文分配给第一流量端口即可。如果不存在报文组信息对应的第一流量端口,则需要对第二流量端口的实时流量再进行判定。本发明实施例以报文组信息作为流量端口的分配标准,可以针对同一报文组信息的报文进行统一分配,无需针对同一报文组信息的报文再分别分配端口,方便快捷。
对于步骤S102中根据所述流量报文的路径信息以及协议信息确定流量报文对应的报文组信息的步骤,在一种可选的实施例中,包括:根据流量报文中的源IP、目的IP、源端口、目的端口和协议类型,确定流量报文所属的报文组信息。
其中,流量报文中的源IP、目的IP、源端口、目的端口和协议类型通常被称为五元组信息,是由上述五个量组成的一个集合,可以表示出流量报文的路径信息以及协议信息。
对于步骤S103中确定是否存在报文组信息对应的第一流量端口的步骤,在一种可选的实施例中,如图2所示,包括:
步骤S201:根据源IP、目的IP、源端口、目的端口和协议类型,计算流量报文的摘要值;
步骤S202:确定预设流表中是否存在与摘要值相同的目标摘要值;其中,预设流表中的摘要值是根据历史流量报文的源IP、目的IP、源端口、目的端口和协议类型计算得到的;
如果是,执行步骤S203:确定存在第一流量端口;如果否则执行步骤S204:确定不存在第一流量端口。
本发明实施例中,通过设置预设流表来存储从第一流量出口输出的流量报文的摘要值,也就是存储了从第一流量出口输出过的所有报文组信息,因此通过摘要值的判断,就可以得知当前报文所属的报文组信息是否已经从第一流量出口输出过。
在一种可选的实施例中,当不存在报文组信息对应的第一流量端口,也就是没有匹配到预设流表,同时实时流量又大于预设第一固定带宽时,即不存在所述目标第二流量端口的情况下,如图3所示,可以包括:
步骤S301:确定流量报文中是否存在同步序列编号;
如果是,执行步骤S302:将流量报文分配给第一流量端口;
如果否,执行步骤S303:根据一个或多个第二流量端口的实时流量以及一个或多个第二流量端口分别对应的预设第二固定带宽,为流量报文分配流量端口;预设第二固定带宽大于预设第一固定带宽。
当不存在报文组信息对应的第一流量端口,也就是没有匹配到预设流表时,说明该报文组信息没有从第一流量出口输出的记录,可能存在两种情况,一是当前报文是报文组信息的第一个流量报文,二是第二流量出口还未达到饱和,该报文组信息一直是从第二流量出口输出的。因此需要先对同步序列编号进行确定,如果存在,则将流量报文分配给第一流量端口并将该报文组信息的摘要值补充至预设流表中,如果不存在,则进一步判断是否大于预设第二固定带宽。其中,预设第二固定带宽可以设置为总带宽的99%,以保证数据不会丢包。
对于不存在同步序列编号的情况,在一些可选的实施例中,为流量报文分配流量端口,包括:在任意第二流量端口的实时流量小于或等于对应的预设第二固定带宽的情况下,将实时流量小于或等于对应的预设第二固定带宽的第二流量端口作为流量端口;在另一些可选的实施例中,在所有第二流量端口的实时流量均大于对应的预设第二固定带宽的情况下,将流量报文分配至第一流量端口。也就是说,在所有第二流量端口都达到了预设第二固定带宽的情况下,说明所有第二流量端口都已满负荷运行,无法输出更多的流量,那么此时就将流量报文分配至第一流量端口。
在实际应用过程中,存在第一流量端口和/或第二流量端口为多个的情况,在一种可选的实施例中,在第一流量端口为多个的情况下,通过负载均衡方式对流量报文进行分配;在另一种可选的实施例中,在目标第二流量端口为多个的情况下,也通过负载均衡方式对流量报文进行分配。
在一种可选的实施例中,可以基于可编程交换机或架构服务器实现上述流量分配的方法。例如p4可编程交换机或者X86服务器,对于X86服务器而言,限于服务器的带宽及转发能力,无法满足Tb级带宽和数据包线速处理能力,因此服务器实现软件开发成本和设备成本都相对较高,优选基于可编程交换机实现。
在分配完流量端口后,通常需要出口交换机来发送流量,因此需要可编程交换机将确定出的端口以标识的方式传递给出口交换机,包括:为流量报文添加第一流量端口的标识或目标第二流量端口的标识,并将添加有标识的流量报文发送给出口交换机,以使出口交换机根据标识确定第一流量端口或目标第二流量端口。其中,添加的标识可以采用dscp(Differentiated Services Code Point,差分服务代码点)来表示,该标识通常存在于IP头部,可以通过编码值来区分优先级。
需要说明的是,出口交换机与可编程交换机的交互过程如图4所示,其中,出口交换机处的路由与运营商对接的流量端口一一对应,对于出口交换机和可编程交换机之间的路由交互,在一种可选的实施例中,采用源进源出的方式,当出现故障时,直接断掉路由,不会影响业务流量的正常转发。
图5为本发明实施例的一种流量分配的具体方法,如图4所示,包括:
步骤S501:获取流量报文;
步骤S502:根据流量报文的报文组信息确定对应的五元组信息;
步骤S503:通过五元组信息计算流量报文对应的摘要值,判断摘要值是否存在于预设流表中;
如果是,则执行步骤S504:将流量报文分配给所述第一流量端口;
如果否,则执行步骤S505:判断第二流量端口的实时流量是否小于预设第一固定带宽;
在小于预设第一带宽的情况下,执行步骤S506:将流量报文分配给所述第二流量端口;
在大于等于预设第一带宽的情况下,执行步骤S507:确定流量报文中是否存在同步序列编号;如果是,则执行步骤S508:将流量报文分配给所述第一流量端口;如果否,则执行步骤S509和步骤S510;
步骤S509:在第二流量端口的实时流量小于预设第二固定带宽的情况下,将流量报文分配给所述第二流量端口;
步骤S510:在所有第二流量端口的实时流量均大于对应的预设第二固定带宽的情况下,将流量报文分配至第一流量端口。
根据本发明实施例的流量分配的方法,从报文组信息的角度为流量报文分配流量端口,根据流量报文对应的报文组信息是否存在对应的第一流量端口来确定该流量报文所要分配的流量端口,可以为流量合理的分配管理方式,依据不同的管理方式,避免出现报文丢失、流量端口超负荷以及分配效率低的问题。
图6是根据本发明实施例的流量分配的装置的主要模块的示意图。
如图6所示,本发明实施例的流量分配的装置600包括:
获取模块601,用于获取流量报文;
确定模块602,用于根据所述流量报文的路径信息以及协议信息确定所述流量报文对应的报文组信息;
分配模块603,用于确定是否存在所述报文组信息对应的第一流量端口,所述第一流量端口按照实时流量进行管理;如果是,将所述流量报文分配给所述第一流量端口;如果否,将所述流量报文分配给目标第二流量端口,所述目标第二流量端口按照固定带宽进行管理,且所述目标第二流量端口的实时流量小于预设第一固定带宽。
在一种可选的实施例中,所述分配模块603还用于,在不存在与所述报文组信息对应的第一流量端口、且所述实时流量不小于预设第一固定带宽的情况下,确定所述流量报文中是否存在同步序列编号;如果是,将所述流量报文分配给所述第一流量端口;如果否,根据一个或多个第二流量端口的实时流量以及所述一个或多个第二流量端口分别对应的预设第二固定带宽,为所述流量报文分配流量端口;所述预设第二固定带宽大于所述预设第一固定带宽。
在一种可选的实施例中,所述分配模块603还用于,在任意第二流量端口的实时流量小于或等于对应的预设第二固定带宽的情况下,将所述实时流量小于或等于对应的预设第二固定带宽的第二流量端口作为所述流量端口。
在一种可选的实施例中,所述分配模块603还用于,在所有所述第二流量端口的实时流量均大于对应的预设第二固定带宽的情况下,将所述流量报文分配至所述第一流量端口。
在一种可选的实施例中,所述确定模块602还用于,根据所述流量报文中的源IP、目的IP、源端口、目的端口和协议类型,确定所述流量报文所属的报文组信息。
在一种可选的实施例中,所述分配模块603还用于,根据所述源IP、目的IP、源端口、目的端口和协议类型,计算所述流量报文的摘要值;确定预设流表中是否存在与所述摘要值相同的目标摘要值;其中,所述预设流表中的摘要值是根据历史流量报文的源IP、目的IP、源端口、目的端口和协议类型计算得到的;如果是,确定存在所述第一流量端口。
在一种可选的实施例中,所述分配模块603还用于,在所述第一流量端口为多个或所述目标第二流量端口为多个的情况下,通过负载均衡方式对所述流量报文进行分配。
在一种可选的实施例中,所述分配模块603还用于,为所述流量报文添加所述第一流量端口的标识或所述目标第二流量端口的标识,并将添加有标识的流量报文发送给出口交换机,以使所述出口交换机根据所述标识确定所述第一流量端口或所述目标第二流量端口。
在一种可选的实施例中,所述流量分配的装置基于可编程交换机或架构服务器实现所述流量分配的方法。
根据本发明实施例的流量分配的装置,从报文组信息的角度为流量报文分配流量端口,根据流量报文对应的报文组信息是否存在对应的第一流量端口来确定该流量报文所要分配的流量端口,可以为流量合理的分配管理方式,依据不同的管理方式,避免出现报文丢失、流量端口超负荷以及分配效率低的问题。
图7示出了可以应用本发明实施例的流量分配的方法或流量分配的装置的示例性系统架构700。
如图7所示,系统架构700可以包括服务器701、可编程交换机702、出口交换机703、网络704、以及服务器705、706、707。网络704用以在可编程交换机702和出口交换机703,以及出口交换机703和服务器705、706、707之间提供通信链路的介质。网络704可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
服务器701可以是提供各种服务的服务器,例如对流量报文进行流量分配的后台管理服务器。后台管理服务器可以对接收访问流量等数据进行分析等处理,并将处理结果(例如流量分配端口)发送给出口交换机703。
服务器705、706、707也可以是提供各种服务的服务器,例如运营商使用的服务器,可以根据接收到的流量计算流量费用。
需要说明的是,本发明实施例所提供的流量分配方法一般由服务器701或可编程交换机702执行,相应地,流量分配的装置一般设置于服务器701或可编程交换机702中。
应该理解,图7中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图8,其示出了适于用来实现本发明实施例的终端设备的计算机系统800的结构示意图。图8示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图8所示,计算机系统800包括中央处理单元(CPU)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储部分808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有系统800操作所需的各种程序和数据。CPU 801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)第一接口805也连接至总线804。
以下部件连接至I/O第一接口805:包括键盘、鼠标等的输入部分806;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分807;包括硬盘等的存储部分808;以及包括诸如LAN卡、调制解调器等的网络第一接口卡的通信部分809。通信部分809经由诸如因特网的网络执行通信处理。驱动器810也根据需要连接至I/O第一接口805。可拆卸介质811,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器810上,以便于从其上读出的计算机程序根据需要被安装入存储部分808。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分809从网络上被下载和安装,和/或从可拆卸介质811被安装。在该计算机程序被中央处理单元(CPU)801执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块、确定模块和分配模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,获取模块还可以被描述为“用于获取流量报文的模块”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:获取流量报文;确定所述流量报文所属的报文组信息;确定是否存在所述报文组信息对应的第一流量端口,所述第一流量端口按照实时流量进行管理;如果是,将所述流量报文分配给所述第一流量端口;如果否,将所述流量报文分配给目标第二流量端口,所述目标第二流量端口按照固定带宽进行管理,且所述目标第二流量端口的实时流量小于预设第一固定带宽。
根据本发明实施例的技术方案,从报文组信息的角度为流量报文分配流量端口,根据流量报文对应的报文组信息是否存在对应的第一流量端口来确定该流量报文所要分配的流量端口,可以为流量合理的分配管理方式,依据不同的管理方式,避免出现报文丢失、流量端口超负荷以及分配效率低的问题。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (11)

1.一种流量分配的方法,其特征在于,包括:
获取流量报文;
根据所述流量报文的路径信息以及协议信息确定所述流量报文对应的报文组信息;
确定是否存在所述报文组信息对应的第一流量端口,所述第一流量端口按照实时流量进行管理;
如果是,将所述流量报文分配给所述第一流量端口;
如果否,将所述流量报文分配给目标第二流量端口,所述目标第二流量端口按照固定带宽进行管理,且所述目标第二流量端口的实时流量小于预设第一固定带宽。
2.根据权利要求1所述的方法,其特征在于,在不存在与所述报文组信息对应的第一流量端口、且所述实时流量不小于预设第一固定带宽的情况下,还包括:
确定所述流量报文中是否存在同步序列编号;
如果是,将所述流量报文分配给所述第一流量端口;
如果否,根据一个或多个第二流量端口的实时流量以及所述一个或多个第二流量端口分别对应的预设第二固定带宽,为所述流量报文分配流量端口;所述预设第二固定带宽大于所述预设第一固定带宽。
3.根据权利要求2所述的方法,其特征在于,在所述流量报文中不存在所述同步序列编号的情况下,所述为所述流量报文分配流量端口,包括:
在任意第二流量端口的实时流量小于或等于对应的预设第二固定带宽的情况下,将所述实时流量小于或等于对应的预设第二固定带宽的第二流量端口作为所述流量端口;
或,
在所有所述第二流量端口的实时流量均大于对应的预设第二固定带宽的情况下,将所述流量报文分配至所述第一流量端口。
4.根据权利要求1所述的方法,其特征在于,所述根据所述流量报文的路径信息以及协议信息确定所述流量报文对应的报文组信息,包括:
根据所述流量报文中的源IP、目的IP、源端口、目的端口和协议类型,确定所述流量报文所属的报文组信息。
5.根据权利要求4所述的方法,其特征在于,确定是否存在所述报文组信息对应的第一流量端口,包括:
根据所述源IP、目的IP、源端口、目的端口和协议类型,计算所述流量报文的摘要值;
确定预设流表中是否存在与所述摘要值相同的目标摘要值;其中,所述预设流表中的摘要值是根据历史流量报文的源IP、目的IP、源端口、目的端口和协议类型计算得到的;
如果是,确定存在所述第一流量端口。
6.根据权利要求1所述的方法,其特征在于,
在所述第一流量端口为多个或所述目标第二流量端口为多个的情况下,通过负载均衡方式对所述流量报文进行分配。
7.根据权利要求1所述的方法,其特征在于,还包括:
为所述流量报文添加所述第一流量端口的标识或所述目标第二流量端口的标识,并将添加有标识的流量报文发送给出口交换机,以使所述出口交换机根据所述标识确定所述第一流量端口或所述目标第二流量端口。
8.根据权利要求1至7任一所述的方法,其特征在于,
基于可编程交换机或架构服务器实现所述流量分配的方法。
9.一种流量分配的装置,其特征在于,包括:
获取模块,用于获取流量报文;
确定模块,用于根据所述流量报文的路径信息以及协议信息确定所述流量报文对应的报文组信息;
分配模块,用于确定是否存在所述报文组信息对应的第一流量端口,所述第一流量端口按照实时流量进行管理;如果是,将所述流量报文分配给所述第一流量端口;如果否,将所述流量报文分配给目标第二流量端口,所述目标第二流量端口按照固定带宽进行管理,且所述目标第二流量端口的实时流量小于预设第一固定带宽。
10.一种用于流量分配的电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
11.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-8中任一所述的方法。
CN202210809370.4A 2022-07-11 2022-07-11 一种流量分配的方法和装置 Pending CN115208827A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210809370.4A CN115208827A (zh) 2022-07-11 2022-07-11 一种流量分配的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210809370.4A CN115208827A (zh) 2022-07-11 2022-07-11 一种流量分配的方法和装置

Publications (1)

Publication Number Publication Date
CN115208827A true CN115208827A (zh) 2022-10-18

Family

ID=83579219

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210809370.4A Pending CN115208827A (zh) 2022-07-11 2022-07-11 一种流量分配的方法和装置

Country Status (1)

Country Link
CN (1) CN115208827A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101635720A (zh) * 2009-08-31 2010-01-27 杭州华三通信技术有限公司 一种未知流量过滤方法和一种带宽管理设备
US20150365325A1 (en) * 2014-06-11 2015-12-17 Jae Hyun Hwang Software defined networking based congestion control
CN107659499A (zh) * 2016-07-25 2018-02-02 华为技术有限公司 一种路由的方法及转发设备
CN113037657A (zh) * 2021-03-23 2021-06-25 北京汇钧科技有限公司 流量的调度方法、装置、电子设备及计算机可读介质
WO2021136430A1 (zh) * 2019-12-31 2021-07-08 中兴通讯股份有限公司 路径选择方法、装置、计算机设备和计算机可读介质
WO2021238799A1 (zh) * 2020-05-29 2021-12-02 华为技术有限公司 一种数据报文传输方法及装置
WO2022017249A1 (zh) * 2020-07-21 2022-01-27 阿里巴巴集团控股有限公司 可编程交换机、流量统计方法、防御方法和报文处理方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101635720A (zh) * 2009-08-31 2010-01-27 杭州华三通信技术有限公司 一种未知流量过滤方法和一种带宽管理设备
US20150365325A1 (en) * 2014-06-11 2015-12-17 Jae Hyun Hwang Software defined networking based congestion control
CN107659499A (zh) * 2016-07-25 2018-02-02 华为技术有限公司 一种路由的方法及转发设备
WO2021136430A1 (zh) * 2019-12-31 2021-07-08 中兴通讯股份有限公司 路径选择方法、装置、计算机设备和计算机可读介质
WO2021238799A1 (zh) * 2020-05-29 2021-12-02 华为技术有限公司 一种数据报文传输方法及装置
WO2022017249A1 (zh) * 2020-07-21 2022-01-27 阿里巴巴集团控股有限公司 可编程交换机、流量统计方法、防御方法和报文处理方法
CN113037657A (zh) * 2021-03-23 2021-06-25 北京汇钧科技有限公司 流量的调度方法、装置、电子设备及计算机可读介质

Similar Documents

Publication Publication Date Title
EP3758412B1 (en) Multichannel data transmission method, apparatus, system and computer-readable medium
CN111769998B (zh) 一种网络时延状态的探测方法及装置
US9042355B2 (en) Quality of service (QoS) for satellite communications network
CN112039796B (zh) 数据包传输方法和装置、存储介质和电子设备
CN112788060B (zh) 数据包传输方法和装置、存储介质和电子设备
CN109218216B (zh) 链路聚合流量分配方法、装置、设备及存储介质
CN111343097B (zh) 链路负载均衡的方法、装置、电子设备及存储介质
US11784885B2 (en) Shared bandwidth speed limiting method, device, and storage medium
CN111935033B (zh) 用于时间敏感流的终端流预留方法、系统及计算机设备
CN105554099A (zh) 一种采集服务器负载均衡的方法及装置
US20240048477A1 (en) Packet forwarding method, apparatus, and system, and computer-readable storage medium
CN112637299A (zh) 云资源分配方法、装置、设备、介质及产品
CN109922003B (zh) 一种数据发送方法、系统及相关组件
CN116418876A (zh) 一种算力网络服务的迁移方法、系统及云管理平台
CN109922012B (zh) 一种传输数据的方法以及相关设备
US10819582B2 (en) Traffic optimization device and traffic optimization method
CN115208827A (zh) 一种流量分配的方法和装置
WO2023098520A1 (zh) 一种调节交换网板拥塞的方法、装置及系统
US10334055B2 (en) Communication layer with dynamic multi-session management
CN111510384A (zh) 处理服务产生的数据的方法、电子设备和计算机可读介质
CN113453285B (zh) 一种资源调整方法、装置及存储介质
CN110336758B (zh) 一种虚拟路由器中的数据分发方法及虚拟路由器
CN110300060B (zh) 用于软件定义网络的通信方法和装置
CN112714071A (zh) 一种数据发送方法及装置
US20220035645A1 (en) Managing communication rates between applications in a tiered application computing environment

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