CN108683607B - 虚拟机流量控制方法、装置和服务器 - Google Patents
虚拟机流量控制方法、装置和服务器 Download PDFInfo
- Publication number
- CN108683607B CN108683607B CN201810616533.0A CN201810616533A CN108683607B CN 108683607 B CN108683607 B CN 108683607B CN 201810616533 A CN201810616533 A CN 201810616533A CN 108683607 B CN108683607 B CN 108683607B
- Authority
- CN
- China
- Prior art keywords
- uplink
- network card
- flow
- speed
- limiting
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/22—Traffic shaping
- H04L47/225—Determination of shaping rate, e.g. using a moving window
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/70—Virtual switches
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开提供了一种虚拟机流量控制方法、装置和服务器;其中,该方法应用于承载有虚拟交换机的主机,该方法包括:如果该主机的物理网卡接收到上行流量,物理网卡根据上行流量的业务特性确定上行限速措施;物理网卡按照上行限速措施对上行流量进行限速处理。本公开可以从数据流层面实现对流量的统一限速控制,限速方式更加灵活多样,能够满足用户依据不同业务特性的差异化限速需求,提高了用户的体验度。
Description
技术领域
本公开涉及云计算技术领域,尤其是涉及一种虚拟机流量控制方法、装置和服务器。
背景技术
虚拟交换机是一种软件形式的交换部件,可以用来实现物理主机上多台虚拟机的数据交换,并管理各虚拟机对应的端口流量。基于不同的协议和架构,虚拟交换机有多个种类,例如:Linux系统中的网桥设备和OVS(Open vSwitch,开放虚拟交换标准)设备,其中,OVS设备是一种多层虚拟交换机。
受网络带宽的限制,并不是所有的虚拟机用户都能享受到充足的流量带宽,因此,云平台通常会依照用户的优先级提供差异化的网络服务。虚拟机限速是常用的QoS(Quality of Service,服务质量)手段,以保证指定网络的高质量服务。虚拟机限速通常在连接各虚拟机的虚拟端口上实现,通过设置虚拟端口的流量阈值,保证部分用户或服务具有较为充足的流量带宽。但这种限速方式局限在各个虚拟端口上,各个虚拟端口分别限速,难以满足用户更高层次的限速需求,例如数据流层面的整体限速,限制了网络服务质量的持续提升,影响了虚拟机用户的体验度。
发明内容
有鉴于此,本公开的目的在于提供一种虚拟机流量控制方法、装置和服务器,以从数据流层面实现对流量的统一限速控制,提高限速方式的灵活多样性。
为了实现上述目的,本公开采用的技术方案如下:
第一方面,本公开提供了一种虚拟机流量控制方法,该方法应用于承载有虚拟交换机的主机,该方法包括:如果主机的物理网卡接收到虚拟机的上行流量,物理网卡根据上行流量的业务特性确定上行限速措施;物理网卡按照上行限速措施对上行流量进行限速处理。
第二方面,本公开提供了一种虚拟机流量控制装置,该装置设置于承载有虚拟交换机的主机,该装置包括:限速措施确定模块,用于如果主机的物理网卡接收到虚拟机的上行流量,物理网卡根据上行流量的业务特性确定上行限速措施;限速处理模块,用于物理网卡按照上行限速措施对上行流量进行限速处理。
第三方面,本公开实施方式提供了一种服务器,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现上述虚拟机流量控制方法。
第四方面,本公开实施方式提供了一种机器可读存储介质,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现上述虚拟机流量控制方法。
上述虚拟机流量控制方法、装置、服务器和机器可读存储介质,如果主机的物理网卡接收到虚拟机的上行流量,物理网卡根据上行流量的业务特性确定上行限速措施,并按照该上行限速措施对上行流量进行限速处理。该方式中,通过物理网卡可以从数据流层面实现对上行流量的统一限速控制,限速方式更加灵活多样,能够满足用户依据不同业务特性的差异化限速需求,提高了用户的体验度。
本公开的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本公开的上述技术即可得知。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施方式提供的一种虚拟机流量控制方法应用场景示意图;
图2为本公开实施方式提供的一种虚拟机流量控制方法的流程图;
图3为本公开实施方式提供的另一种虚拟机流量控制方法的流程图;
图4为本公开实施方式提供的另一种虚拟机流量控制方法的流程图;
图5为本公开实施方式提供的另一种虚拟机流量控制方法的流程图;
图6为本公开实施方式提供的一种虚拟机流量控制装置的结构示意图;
图7为本公开实施方式提供的服务器的结构示意图。
具体实施方式
为使本公开实施方式的目的、技术方案和优点更加清楚,下面将结合附图对本公开的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本公开一部分实施方式,而不是全部的实施方式。基于本公开中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本公开保护的范围。
为了更好地理解本公开的技术方案,下面首先对虚拟机流量控制方法的应用场景进行描述。如图1所示,虚拟交换机内设置有多个虚拟端口,用于连接虚拟机端口和物理端口,该虚拟机端口设置在虚拟机的虚拟网卡上,物理端口设置在物理网卡上;连接主机上物理网卡的虚拟端口与外部的物理网络进行通信;连接虚拟网卡的虚拟端口与该主机上的虚拟机连接,用于实现虚拟机与外部网络,或虚拟机之间的数据交换。一台虚拟交换机可以管理一台主机上的虚拟机(如图1所示),也可以以分布式管理的方式同时管理多台物理主机上的虚拟机。虚拟网卡通常设置在虚拟机上;一台虚拟机可以设置一个或多个虚拟网卡,当虚拟机设置多个虚拟网卡时,可以使该虚拟机连接不同的虚拟网络。
虚拟交换机在对所连接的虚拟机进行限速时,通常会在虚拟端口上设置流量阈值,当虚拟端口上的流量超过该流量阈值时,超出部分作丢弃处理;例如,针对虚拟端口A,设置流量阈值为2M,当虚拟端口A的流量大于2M时,虚拟交换机会丢弃超出2M部分的流量数据;对于虚拟端口B,则需要另外设置对应的流量阈值,例如为5M,当虚拟端口B的流量大于5M时,虚拟交换机同样会丢弃超出5M部分的流量数据。虚拟端口A和B之间的流量阈值相互独立,假使虚拟端口A和B属于同一用户,该用户想要对虚拟端口A和B对应的两台虚拟机提供的服务进行统一管理,例如,设置两台虚拟机共享带宽,共同进行IP地址限流等,上述这种虚拟端口独立限流的方式就难以实现这些需求。
为了满足用户日益多样化的流量管理需求,需要更加丰富、灵活的限速控制方式,基于此,本公开实施方式提供了一种虚拟机流量控制方法、装置和服务器;该技术可以应用于云计算、大数据平台等多种虚拟化网络的控制管理中,下面进行具体描述。
本公开实施方式首先提供了一种虚拟机流量控制方法,该方法中,通过虚拟交换机对所连接的虚拟机进行统一的流量管理;网络管理员可以根据用户的业务特性,预先在虚拟交换机中设置限速措施,该限速措施可以通过流量的地址、流量方向、协议类型、协议端口和是否共享带宽等多种参数进行设置,以提高虚拟机的限速措施与用户实际业务需求的匹配度。
对于虚拟机的上行流量,即虚拟机发送或上传数据产生的流量,虚拟交换机需要接收到流量之后,再根据上述限速措施进行限速;对于上行流量的限速措施,由于虚拟端口技术的限制,已经不再适合通过控制连接虚拟机的虚拟端口实现,又由于主机上所有的虚拟机的流量,均需要通过该主机的物理网卡交换至外部的网络,所以本实施方式中,通过物理网卡实现上行流量的限速控制。
如图2所示,该方法应用于承载有虚拟交换机的主机,该虚拟交换机用于转发虚拟机的流量,该方法包括如下步骤:
步骤S202,如果主机的物理网卡接收到虚拟机的上行流量,物理网卡根据上行流量的业务特性确定上行限速措施;其中,上行限速措施可以是预先根据业务特性配置的限速措施,具体配置方式可以通过主机的管理系统进行配置。因此,基于上行流量的业务特性可以查找到与之匹配的限速措施,即上述上行限速措施。
步骤S204,物理网卡按照上行限速措施对上行流量进行限速处理。
上行流量的业务特性通常包括流量的地址、协议类型、协议端口和是否共享带宽中的一种或多种;其中,流量的地址具体可以为IP地址,或其他可以唯一标识设备和虚拟设备的地址;该地址可以为源地址,即虚拟机的地址,也可以为目的地址;通过地址进行限速时,可以根据地址的版本类型进行区分,例如,IPV6(Internet Protocol Version 6,互联网协议第6版)版本的IP地址、IPV4(Internet Protocol Version 4,互联网协议第4版)版本的IP地址等;还可以根据地址的地址段进行区分,例如,目的地址为IP地址段172.21.0.0/16的数据流量限速50M。
上述协议类型可以包括IPV4、IPV6、ARP(Address Resolution Protocol,地址解析协议)、ICMP(Internet Control Message Protocol,互联网控制报文协议)、TCP(Transmission Control Protocol,传输控制协议)、UDP(User Datagram Protocol,用户数据报协议)等。上述协议端口通常为流量报文中携带的端口号,例如,FTP数据端口号20、Telnet服务端口号21、域名服务端口号53等。
关于是否共享带宽,可以设置不同的IP地址字段共享同一带宽,例如,IP地址段A和B共同限速为100M;还可以设置不同的协议类型之间、不同的协议端口之间共享同一带宽。
物理网卡根据上行流量的业务特性确定上行限速措施时,具体可以通过设置优先级的方式实现;以协议类型为例,可以设置协议类型A的优先级为100,协议类型B的优先级为50,协议类型C的优先级为10;此时,该协议类型A的流量则优先于其他协议类型的流量进行转发,当流量到达阈值时,可以首先丢弃协议类型优先级较低的流量,如上述协议类型C的流量。
在另外一种实现方式中,虚拟交换机可以根据上述业务特性,对流量进行分类,将流量归类至相应的队列中;以协议端口为例,队列A用于转发协议端口为M的流量,并设置流量阈值为X;队列B用于转发协议端口为N的流量,并设置流量阈值为Y;将流量归类至相应的队列后,每个队列顺序转发该队列中的流量。每个队列还可以设置多个业务参数,例如,队列A用于转发协议端口为M且协议类型A的流量,流量阈值为X;队列B用于转发协议端口为N且协议类型为B的流量,并设置流量阈值为Y。
上述虚拟机流量控制方法,如果主机的物理网卡接收到上行流量,物理网卡根据上行流量的业务特性确定上行限速措施,并按照该上行限速措施对上行流量进行限速处理。该方式中,通过物理网卡可以从数据流层面实现对上行流量的统一限速控制,限速方式更加灵活多样,能够满足用户依据不同业务特性的差异化限速需求,提高了用户的体验度。
本公开实施例还提供了另一种虚拟机流量控制方法,该方法中,采用TC(TrafficControl,流量控制器)队列的方式实现流量限速,通过将流量归类至不同的TC队列中,实现不同业务特性流量的限速。物理网卡中配置有第一TC队列,如图3所示,该方法包括如下步骤:
步骤S302,主机的物理网卡接收上行流量;
步骤S304,物理网卡比较上行流量的业务特性是否与第一TC队列包含的业务特性匹配;如果是,执行步骤S306,如果否,执行步骤S308;其中,业务特性包括以下至少之一:IP地址、协议类型和协议端口。
该第一TC队列可以设置有一个或多个业务特性;例如,该第一TC队列的业务特性可以设置为:IP地址为地址段1,协议类型为A,协议端口不限。上述IP地址、协议类型和协议端口之间的逻辑关系可以为“和”的关系,如满足地址段1且协议类型为A的流量才可以通过第一TC队列;上述IP地址、协议类型和协议端口之间的逻辑关系也可以为“或”的关系,如满足地址段1或协议类型为A的流量可通过第一TC队列。每个业务特性中,可以设置一个或多个子特性,例如,IP地址为地址段1、地址段2或地址段3。
步骤S306,将第一TC队列的限速措施作为该上行流量的限速措施。
具体的限速措施通常包括限速速率,突发缓冲等参数;其中,限速速率相当于上述流量阈值,即当流量到达该限速速率后,超出的流量进行丢弃处理;突发缓冲可以为用户在短时间内获得的最大流量。
步骤S308,采用默认的转发方式转发该上行流量。
默认的转发方式中,其限速速率、突发缓冲等参数通常与上述第一TC队列的限速措施有所区别;如果用户想要优先转发具有特定业务特性的流量,可以将这些业务特性添加至第一TC队列中,且该第一TC队列的限速措施的具体参数通常高于默认的转发方式,例如,第一TC队列的限速速率为10M,突发缓冲为20M;而默认的转发方式中,限速速率可以设为5M,突发缓冲为10M。
而如果用户想要首先限制具有特定业务特性的流量,则该第一TC队列的限速措施的具体参数通常低于默认的转发方式,例如,第一TC队列的限速速率为5M,突发缓冲为10M;而默认的转发方式中,限速速率可以设为10M,突发缓冲为20M。
上述方式,物理网卡采用TC队列的方式,对不同业务特性的上行流量采取特定的限速措施,从数据流层面实现对上行流量的统一限速控制,限速方式更加灵活多样,能够兼顾到用户对于数据流限速的各种需求,可以为用户提供更加细致全面的网络服务;同时,限速方式后续还可持续更新,扩展方便,且可用性强。
上述IP地址、协议类型和协议端口这些业务特性,可以针对一个上行流量进行设置,这种方式也可以理解为独占带宽的方式;在另外一种实施方式中,如果用户需要对多个上行流量的带宽进行综合控制,则上行限速措施通常还包括共享带宽,当上行流量为多个时,物理网卡按照共享带宽的方式对多个上行流量进行限速处理。
不同的地址段之间、协议类型之间、协议端口之间均可以共享带宽;另外,业务特性组合之间也可以共享带宽,例如,组合1为IP地址为地址段1,协议类型为A,协议端口不限;组合2为IP地址为地址段2,协议类型为B,协议端口为n;组合1和组合2之间共享带宽,例如,500M。
相较于针对单个上行流量的限速措施,这种共享带宽的限速方式,可以实现更加丰富和灵活的限速控制,进一步提高了用户的体验度。
上述实施方式描述的是对虚拟机的上行流量的控制方法,对于下行流量,即虚拟机接收或下载数据产生的流量,通常由物理网卡接收,再由虚拟交换机转发至对应的虚拟网卡,进而发送至虚拟机中;为了使下行流量也实现数据流层面的统一限速控制,虚拟交换机则需要通过控制连接虚拟机的虚拟端口实现相关的限速措施;如果由连接物理网卡的虚拟端口对下行流量的限速,通常仅能实现对当前主机所接收到的流量总和进行整体限速,限速方式较为粗糙。
如图4所示,上述虚拟机流量控制方法中,下行流量的限速处理方式包括下述步骤:
步骤S402,如果虚拟机的虚拟网卡接收到下行流量,虚拟网卡根据下行流量的业务特性确定下行限速措施;
步骤S404,虚拟网卡按照下行限速措施对下行流量进行限速处理。
下行流量的业务特性通常包括流量的地址、协议类型、协议端口和是否共享带宽中的一种或多种;每种业务特性的具体内容可以参考上述上行流量实施方式中的相关内容,在此不做赘述。虚拟网卡根据下行流量的业务特性确定下行限速措施时,也可以通过设置优先级的方式实现,或者采用分类的方式,将流量归类至相应的队列中。
上述虚拟机流量控制方法,如果虚拟机的虚拟网卡接收到下行流量,虚拟网卡根据下行流量的业务特性确定下行限速措施;虚拟网卡按照下行限速措施对下行流量进行限速处理。该方式中,通过虚拟网卡可以从数据流层面实现对下行流量的统一限速控制,限速方式更加灵活多样,能够满足用户依据不同业务特性的差异化限速需求,提高了用户的体验度。
在另外一种实施方式中,对于下行流量的处理,也可以采用TC队列的方式实现流量限速。如图5所示,该虚拟网卡配置有第二TC队列;
步骤S502,虚拟机的虚拟网卡接收下行流量;
步骤S504,虚拟网卡比较下行流量的业务特性是否与第二TC队列包含的业务特性匹配;如果是,执行步骤S506,如果否,执行步骤S508;其中,业务特性包括以下至少之一:IP地址、协议类型和协议端口。
步骤S506,将第二TC队列的限速措施作为该下行流量的限速措施。
步骤S508,采用默认的转发方式转发该下行流量。
该第二TC队列的业务特性的具体设置方式可以参考上述第一TC队列。下行流量的限速措施也可以包括限速速率,突发缓冲等参数。默认的转发方式中,其限速速率、突发缓冲等参数通常与上述第二TC队列的限速措施有所区别;根据用户是想要优先转发具有特定业务特性的流量,还是先限制具有特定业务特性的流量,对第二TC队列的限速措施的具体参数以及默认转发方式的具体参数进行设置。
上述方式,虚拟网卡采用TC队列的方式,对不同业务特性的下行流量采取特定的限速措施,从数据流层面实现对下行流量的统一限速控制,限速方式更加灵活多样,可以为用户提供更加细致全面的网络服务。
如果用户需要对多个下行流量的带宽进行综合控制,则下行限速措施通常还包括共享带宽,当下行流量为多个时,虚拟网卡按照共享带宽的方式对多个下行流量进行限速处理。下行流量中,不同的地址段之间、协议类型之间、协议端口之间均可以共享带宽;另外,业务特性组合之间也可以共享带宽,具体共享方式可参见上述上行流量控制的实施方式。
相较于针对单个下行流量的限速措施,这种共享带宽的限速方式,可以实现更加丰富和灵活的限速控制,进一步提高了用户的体验度。
需要说明的是,TC队列的方式对流量进行限制,往往仅能实现流量出方向的限制;对于上行流量,出方向为物理网卡;对于下行流量,出方向为虚拟网卡;因此,上述实施例中在物理网卡上设置第一TC队列,以限制上行流量;在虚拟网卡上设置第二TC队列,以限制下行流量,从而实现数据流层面的对上行流量和下行流量的统一限速控制。
上述实施方式中的虚拟机流量控制方法,可以理解为虚拟交换机通过物理网卡和虚拟网卡实现的内部限速,这种内部限速方式还可以与端口限速方式,即在虚拟端口上直接设置流量阈值的方式,二种方式相结合,以进一步丰富网络流量控制的灵活性和丰富性。
上述各方法实施方式均采用递进的方式描述,每个实施方式重点说明的都是与其他实施方式的不同之处,各个实施方式之间相同相似的部分互相参见即可。
对应于上述方法实施方式,图6为一种虚拟机流量控制装置的结构示意图,该装置设置于虚拟交换机,该装置包括:
限速措施确定模块60,用于如果主机的物理网卡接收到虚拟机的上行流量,物理网卡根据上行流量的业务特性确定上行限速措施;
限速处理模块61,用于物理网卡按照上行限速措施对上行流量进行限速处理。
上述物理网卡配置有第一TC队列;上述限速措施确定模块,还用于:物理网卡比较上行流量的业务特性是否与第一TC队列包含的业务特性匹配,其中,业务特性包括以下至少之一:IP地址、协议类型和协议端口;如果匹配,将第一TC队列的限速措施作为上行流量的限速措施。
上述限速处理模块,还用于:如果上行限速措施包括共享带宽,且上行流量为多个,物理网卡按照以共享带宽的方式对多个上行流量进行限速处理。
上述虚拟机流量控制装置,如果主机的物理网卡接收到虚拟机的上行流量,物理网卡根据上行流量的业务特性确定上行限速措施,并按照该上行限速措施对上行流量进行限速处理。该方式中,通过物理网卡可以从数据流层面实现对上行流量的统一限速控制,限速方式更加灵活多样,能够满足用户依据不同业务特性的差异化限速需求,提高了用户的体验度。
本实施方式提供了一种与上述方法实施方式相对应的服务器。图7为该服务器的结构示意图,如图7所示,该设备包括处理器701和存储器702;其中,存储器702用于存储一条或多条计算机指令,一条或多条计算机指令被处理器执行,以实现上述虚拟机流量控制方法。
图7所示的实现装置还包括总线703和转发芯片704,处理器701、转发芯片704和存储器702通过总线703连接。该服务器可以是网络边缘设备。
其中,存储器702可能包含高速随机存取存储器(RAM,Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。总线703可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
转发芯片704用于通过网络接口与至少一个用户终端及其它网络单元连接,将封装好的IPv4报文或IPv6报文通过网络接口发送至用户终端。
处理器701可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器701中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器701可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DigitalSignal Processing,简称DSP)、专用集成电路(Application Specific IntegratedCircuit,简称ASIC)、现成可编程门阵列(Field-Programmable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施方式中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施方式所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器702,处理器701读取存储器702中的信息,结合其硬件完成前述实施方式的方法的步骤。
本发明实施方式还提供了一种机器可读存储介质,该机器可读存储介质存储有机器可执行指令,该机器可执行指令在被处理器调用和执行时,机器可执行指令促使处理器实现上述虚拟机流量控制方法,具体实现可参见方法实施方式,在此不再赘述。
本发明实施方式所提供的上述虚拟机流量控制装置及服务器,其实现原理及产生的技术效果和前述方法实施方式相同,为简要描述,装置实施方式部分未提及之处,可参考前述方法实施方式中相应内容。
在本申请所提供的几个实施方式中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施方式仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施方式的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施方式中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施方式,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施方式对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施方式所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施方式技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (7)
1.一种虚拟机流量控制方法,其特征在于,所述方法应用于承载有虚拟交换机的主机,所述虚拟交换机用于转发所述虚拟机的流量;所述方法包括:
如果所述主机的物理网卡接收到所述虚拟机的上行流量,所述物理网卡根据所述上行流量的业务特性确定上行限速措施;
所述物理网卡按照所述上行限速措施对所述上行流量进行限速处理;
所述物理网卡配置有第一流量控制器TC队列;
所述物理网卡根据所述上行流量的业务特性确定上行限速措施的步骤,包括:
所述物理网卡比较所述上行流量的业务特性是否与所述第一TC队列包含的业务特性匹配,其中,所述业务特性包括:IP地址段、协议类型和协议端口;
如果匹配,将所述第一TC队列的限速措施作为所述上行流量的限速措施;
所述物理网卡按照所述上行限速措施对所述上行流量进行限速处理的步骤,包括:
如果所述上行限速措施包括共享带宽,且所述上行流量为多个,所述物理网卡按照共享带宽的方式对多个所述上行流量进行限速处理。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果所述虚拟机的虚拟网卡接收到下行流量,所述虚拟网卡根据所述下行流量的业务特性确定下行限速措施;
所述虚拟网卡按照所述下行限速措施对所述下行流量进行限速处理。
3.根据权利要求2所述的方法,其特征在于,所述虚拟网卡配置有第二TC队列;所述虚拟网卡根据所述下行流量的业务特性确定下行限速措施的步骤,包括:
所述虚拟网卡比较所述下行流量的业务特性是否与所述第二TC队列包含的业务特性匹配,其中,所述业务特性包括以下至少之一:IP地址、协议类型和协议端口;
如果匹配,将所述第二TC队列的限速措施作为所述下行流量的限速措施。
4.根据权利要求2所述的方法,其特征在于,所述虚拟网卡按照所述下行限速措施对所述下行流量进行限速处理的步骤,包括:
如果所述下行限速措施包括共享带宽,且所述下行流量为多个,所述虚拟网卡按照以共享带宽的方式对多个所述下行流量进行限速处理。
5.一种虚拟机流量控制装置,其特征在于,所述装置设置于承载有虚拟交换机的主机,所述虚拟交换机用于转发所述虚拟机的流量;所述装置包括:
限速措施确定模块,用于如果所述主机的物理网卡接收到所述虚拟机的上行流量,所述物理网卡根据所述上行流量的业务特性确定上行限速措施;
限速处理模块,用于所述物理网卡按照所述上行限速措施对所述上行流量进行限速处理;
所述物理网卡配置有第一TC队列;所述限速措施确定模块,还用于:
所述物理网卡比较所述上行流量的业务特性是否与所述第一TC队列包含的业务特性匹配,其中,所述业务特性包括:IP地址段、协议类型和协议端口;
如果匹配,将所述第一TC队列的限速措施作为所述上行流量的限速措施;
所述限速处理模块,还用于:
如果所述上行限速措施包括共享带宽,且所述上行流量为多个,所述物理网卡按照以共享带宽的方式对多个所述上行流量进行限速处理。
6.一种服务器,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器执行所述机器可执行指令以实现权利要求1至4任一项所述的方法。
7.一种机器可读存储介质,其特征在于,所述机器可读存储介质存储有机器可执行指令,所述机器可执行指令在被处理器调用和执行时,所述机器可执行指令促使所述处理器实现权利要求1至4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810616533.0A CN108683607B (zh) | 2018-06-14 | 2018-06-14 | 虚拟机流量控制方法、装置和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810616533.0A CN108683607B (zh) | 2018-06-14 | 2018-06-14 | 虚拟机流量控制方法、装置和服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108683607A CN108683607A (zh) | 2018-10-19 |
CN108683607B true CN108683607B (zh) | 2020-02-21 |
Family
ID=63811109
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810616533.0A Active CN108683607B (zh) | 2018-06-14 | 2018-06-14 | 虚拟机流量控制方法、装置和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108683607B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113132188B (zh) * | 2019-12-31 | 2023-12-19 | 华为技术有限公司 | 一种通信方法及网络设备 |
CN111901248B (zh) * | 2020-07-27 | 2022-05-27 | 新华三信息安全技术有限公司 | 一种负载均衡方法、装置、设备及机器可读存储介质 |
CN112769597B (zh) * | 2020-12-23 | 2022-11-08 | 杭州谐云科技有限公司 | 一种云边协同虚拟化场景的容器网络限流方法和系统 |
CN115190077B (zh) * | 2021-03-22 | 2023-09-22 | 阿里巴巴(中国)有限公司 | 控制方法、装置及计算设备 |
CN113660173B (zh) * | 2021-08-16 | 2024-04-26 | 抖音视界有限公司 | 一种流量控制方法、装置、计算机设备及存储介质 |
CN114900470B (zh) * | 2022-06-17 | 2023-10-31 | 中国联合网络通信集团有限公司 | 流量控制方法、装置、设备及存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8174984B2 (en) * | 2009-05-29 | 2012-05-08 | Oracle America, Inc. | Managing traffic on virtualized lanes between a network switch and a virtual machine |
CN103139039B (zh) * | 2013-02-25 | 2016-07-13 | 汉柏科技有限公司 | 一种实现流量隔离控制的虚拟网络及构建方法 |
CN103634235A (zh) * | 2013-11-01 | 2014-03-12 | 国云科技股份有限公司 | 一种限定虚拟机网络接口速度的方法 |
CN103607308B (zh) * | 2013-11-29 | 2016-09-21 | 杭州东信北邮信息技术有限公司 | 云计算环境下的虚拟机多网络管理系统和方法 |
CN107196877B (zh) * | 2016-03-14 | 2021-07-20 | 华为技术有限公司 | 网络流量控制的方法及其网络设备 |
CN107800645B (zh) * | 2016-09-06 | 2020-05-01 | 北京京东尚科信息技术有限公司 | 云主机数据发送、接收、传输方法和装置 |
CN107666446B (zh) * | 2017-09-14 | 2020-06-05 | 北京京东尚科信息技术有限公司 | 下行流量、上行流量、双向流量限制方法和装置 |
-
2018
- 2018-06-14 CN CN201810616533.0A patent/CN108683607B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108683607A (zh) | 2018-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108683607B (zh) | 虚拟机流量控制方法、装置和服务器 | |
US10735325B1 (en) | Congestion avoidance in multipath routed flows | |
CN110808913B (zh) | 报文处理的方法、装置及相关设备 | |
US9497125B2 (en) | Congestion control enforcement in a virtualized environment | |
US10932136B2 (en) | Resource partitioning for network slices in segment routing networks | |
US10148573B2 (en) | Packet processing method, node, and system | |
US9736057B2 (en) | Forwarding packet fragments using L4-L7 headers without reassembly in a software-defined networking (SDN) system | |
JP5659125B2 (ja) | 中継装置、中継方法 | |
WO2016162833A1 (en) | Method and system for traffic pattern generation in a software-defined networking (sdn) system | |
CN111756633B (zh) | 根据标签交换路径生成自动带宽调整策略 | |
WO2017025021A1 (zh) | 一种处理流表的方法及装置 | |
WO2014048230A1 (zh) | 负载分担方法和装置 | |
US9456030B2 (en) | Methods of operating load balancing switches and controllers using modified flow entries | |
US11563698B2 (en) | Packet value based packet processing | |
CN111108728B (zh) | 对报文进行处理方法及装置 | |
US20230142425A1 (en) | Virtual dual queue core stateless active queue management (agm) for communication networks | |
CN116319535A (zh) | 路径切换方法、装置、网络设备、以及网络系统 | |
US8310927B1 (en) | Priority scheme for control traffic in network switches | |
JP6461834B2 (ja) | ネットワーク負荷分散装置および方法 | |
US20150085666A1 (en) | Communication Apparatus, Control Apparatus, Communication System, Communication Method, Method for Controlling Communication Apparatus, and Program | |
CN113037691A (zh) | 报文处理方法、装置及系统 | |
CN110830380A (zh) | 确定报文出队的速率的方法及装置 | |
EP3437267B1 (en) | Methods and apparatus for transmitting data | |
US12021756B2 (en) | Multi-queue packet processing performed by an intermediate device in a communication network | |
Lesokhin et al. | Flow-based tunneling for SR-IOV using switchdev API |
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 |