网络报文发送控制方法、虚拟交换机和物理的制造方法

文档序号:7773113阅读:162来源:国知局
网络报文发送控制方法、虚拟交换机和物理的制造方法
【专利摘要】本发明提供一种网络报文发送控制方法、虚拟交换机和物理机,其中,该方法包括:虚拟交换机通过为多个网络应用配置的虚拟网卡获取多种网络应用发送的、携带虚拟网卡的虚拟IP地址的报文,其中,虚拟网卡与网络应用一一对应配置;根据虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定多种网络应用的优先级;根据预设的流量控制策略和多种网络应用的优先级对接收到的报文进行发送控制。通过本发明实施例提供的网络报文发送控制方法、虚拟交换机和物理机,实现了在网络负载较重的情况下,保证优先级高的报文正常通信,提高了高级别业务的效率,避免低级别业务突增时,影响高级别业务的接入。
【专利说明】网络报文发送控制方法、虚拟交换机和物理机
【技术领域】
[0001]本发明实施例涉及通信【技术领域】,尤其涉及一种网络报文发送控制方法、虚拟交换机和物理机。
【背景技术】
[0002]同一计算机设备上会安装不同的网络应用,现有技术中,多个网络应用共享着一张物理网卡和一个协议栈,网络应用通过程序调用,将应用侧流量通过TCP/IP协议栈打包,然后传输到物理网卡上,然后加上以太网的包头发送到物理链路中。
[0003]但是,在网络应用需求比较大的时候,多个网络应用会同时抢占网卡资源,比如计算机上同时开启迅雷和语音的网络应用,由于迅雷软件采用了 P2P的抢占思路,当迅雷软件同时与不同的下载服务器建立连接时,会将服务器的带宽资源迅速占满,而本来对实时性要求比较高的语音业务,无法获得足够的带宽保证,而大大的降低通话的质量。

【发明内容】

[0004]针对现有技术的上述缺陷,本发明实施例提供一种网络报文发送控制方法、虚拟交换机和物理机。
[0005]本发明一方面提供一种网络报文发送控制方法,包括:
[0006]虚拟交换机通过为多个网络应用配置的虚拟网卡获取多种网络应用发送的、携带所述虚拟网卡的虚拟IP地址的报文,其中,虚拟网卡与网络应用一一对应配置;
[0007]所述虚拟交换机根据所述多种网络应用的报文所携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定所述多种网络应用的优先级;
[0008]所述虚拟交换机根据预设的流量控制策略和所述多种网络应用的优先级对接收到的报文进行发送控制。
[0009]本发明另一方面提供一种虚拟交换机,包括:
[0010]获取模块,用于通过多个为网络应用配置的虚拟网卡获取多种网络应用发送的、携带所述虚拟网卡的虚拟IP地址的报文,其中,虚拟网卡与网络应用一一对应配置;
[0011]处理模块,用于根据所述多种网络应用的报文所携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定所述多种网络应用的优先级;
[0012]控制模块,用于根据预设的流量控制策略和所述多种网络应用的优先级对接收到的报文进行发送控制。
[0013]本发明实施例提供的网络报文发送控制方法、虚拟交换机和物理机,虚拟交换机通过为多个网络应用对应配置的虚拟网卡获取多种网络应用发送的、携带虚拟网卡的虚拟IP地址的报文,根据报文携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定多种网络应用的优先级,然后根据预设的流量控制策略和多种网络应用的优先级对接收到的报文进行发送控制。从而实现了在网络负载较重的情况下,保证优先级高的报文正常通信,提高了高级别业务的效率,避免低级别业务突增时,影响高级别业务的接入。
【专利附图】

【附图说明】
[0014]图1为本发明实施例提供的一个网络报文发送控制方法的流程图;
[0015]图2为本发明实施例提供的另一个网络报文发送控制方法的流程图;
[0016]图3为本发明实施例提供的一个虚拟交换机的结构示意图;
[0017]图4为本发明实施例提供的一个物理机的结构示意图。
【具体实施方式】
[0018]图1为本发明实施例提供的一个网络报文发送控制方法的流程图,如图1所示,该方法包括:
[0019]步骤100,虚拟交换机通过为多个网络应用配置的虚拟网卡获取多种网络应用发送的、携带所述虚拟网卡的虚拟IP地址的报文,其中,虚拟网卡与网络应用一一对应配置;
[0020]为物理机上的每个网络应用分配对应的虚拟网卡,每个虚拟网卡上设置有虚拟协议栈,也就是说,虚拟网卡与网络应用一一对应配置,需要说明的是,本实施例中为每个网络应用一一对应配置的虚拟网卡的方式很多,比如虚拟交换机采用tun/tap驱动程序为每个网络应用配置对应的虚拟网卡,该部分属于现有技术,此处不再赘述。
[0021]物理机上需要与对端进行信息交互的网络应用把报文首先发送到与自身对应配置的虚拟网卡中,虚拟协议栈将虚拟网卡的虚拟IP地址加封在该报文的包头位置,然后虚拟网卡将携带虚拟网卡的虚拟IP地址的报文发送给虚拟交换机,当多个网络应用通过与自身对应配置的虚拟网卡将与网络侧交互的报文发送给虚拟交换机,虚拟交换机便通过预先设置的虚拟网卡获取多种网络应用发送的、携带虚拟网卡的虚拟IP地址的报文。
[0022]步骤101,所述虚拟交换机根据所述多种网络应用的报文所携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定所述多种网络应用的优先级;
[0023]虚拟交换机通过虚拟网卡获取多种网络应用发送的、携带虚拟IP地址的报文后,根据多种网络应用的报文所携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,从而确定发送网络应用报文的多种网络应用的优先级。
[0024]步骤102,所述虚拟交换机根据预设的流量控制策略和所述多种网络应用的优先级对接收到的报文进行发送控制。
[0025]虚拟交换机在确定发送网络应用报文的多种网络应用的优先级之后,查询预设的流量控制策略,根据流量控制策略和多种网络应用的优先级确定优先处理的报文并通过物理网卡发送到网络侧。其中,具体的流量控制策略可以根据实际的应用需要进行调整,举例说明如下:当预设的流量控制策略为按照从高到低的顺序依次控制时,虚拟交换机则根据获取的多种网络应用的优先级按照从高到低的顺序依次对多种网络应用的报文进行发送控制,即先发送优先级高的网络应用的报文,再发送优先级低的网络应用的报文,或者,当预设的流量控制策略是预先配置与优先级对应的流量控制比例,则虚拟交换机根据多种网络应用的优先级按照预设的与优先级对应的流量控制比例同时对多种网络应用的报文进行发送控制,比如,若预设的流量控制策略是分别与第一优先级、第二优先级和第三优先级对应的流量控制比例为3:2:1,其中,第一优先级的级别高于第二优先级,第二优先级的级别高于第三优先级,当虚拟交换机确定发送报文的网络应用的优先级为第一优先级和第三优先级时,则按照3:1的流量控制比例控制报文发送。
[0026]本实施例提供的网络报文发送控制方法,虚拟交换机通过为多个网络应用对应配置的虚拟网卡获取多种网络应用发送的、携带虚拟网卡的虚拟IP地址的报文,根据报文携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定多种网络应用的优先级,然后根据预设的流量控制策略和多种网络应用的优先级对接收到的报文进行发送控制。从而实现了在网络负载较重的情况下,保证优先级高的报文正常通信,提高了高级别业务的效率,避免低级别业务突增时,影响高级别业务的接入。
[0027]图2为本发明实施例提供的另一个网络报文发送控制方法的流程图,如图2所示,该方法包括:
[0028]步骤200,虚拟交换机通过为多个网络应用配置的虚拟网卡获取多种网络应用发送的、携带所述虚拟网卡的虚拟IP地址的报文,其中,虚拟网卡与网络应用一一对应配置;
[0029]为物理机上的每个网络应用分配对应的虚拟网卡,每个虚拟网卡上设置有虚拟协议栈,也就是说,虚拟网卡与网络应用一一对应配置,需要说明的是,本实施例中为每个网络应用一一对应配置的虚拟网卡的方式很多,比如虚拟交换机采用tun/tap驱动程序为每个网络应用配置对应的虚拟网卡,该部分属于现有技术,此处不再赘述。
[0030]物理机上需要与对端进行信息交互的网络应用把报文首先发送到与自身对应配置的虚拟网卡中,虚拟协议栈将虚拟网卡的虚拟IP地址加封在该报文的包头位置,然后虚拟网卡将携带虚拟网卡的虚拟IP地址的报文发送给虚拟交换机,当多个网络应用通过与自身对应配置的虚拟网卡将与网络侧交互的报文发送给虚拟交换机,虚拟交换机便通过预先设置的虚拟网卡获取多种网络应用发送的、携带虚拟网卡的虚拟IP地址的报文。
[0031]步骤201,所述虚拟交换机根据所述多种网络应用的报文所携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定所述多种网络应用的优先级;
[0032]虚拟交换机通过虚拟网卡获取多种网络应用发送的、携带虚拟IP地址的报文后,根据多种网络应用的报文所携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,从而确定发送网络应用报文的多种网络应用的优先级。
[0033]步骤202,所述虚拟交换机根据预设的流量控制策略和所述多种网络应用的优先级对接收到的报文进行发送控制;
[0034]虚拟交换机在确定发送网络应用报文的多种网络应用的优先级之后,查询预设的流量控制策略,根据流量控制策略和多种网络应用的优先级确定优先处理的报文。其中,具体的流量控制策略可以根据实际的应用需要进行调整,举例说明如下:当预设的流量控制策略为按照从高到低的顺序依次控制时,虚拟交换机则根据获取的多种网络应用的优先级按照从高到低的顺序依次对多种网络应用的报文进行发送控制,即先发送优先级高的网络应用的报文,再发送优先级低的网络应用的报文,或者,当预设的流量控制策略是预先配置与优先级对应的流量控制比例,则虚拟交换机根据多种网络应用的优先级按照预设的与优先级对应的流量控制比例同时对多种网络应用的报文进行发送控制,比如,若预设的流量控制策略是分别与第一优先级、第二优先级和第三优先级对应的流量控制比例为3:2:1,其中,第一优先级的级别高于第二优先级,第二优先级的级别高于第三优先级,当虚拟交换机确定发送报文的网络应用的优先级为第一优先级和第三优先级时,则按照3:1的流量控制比例从接收的网络报文中确定优先处理的报文。
[0035]虚拟交换机将优先处理的报文通过物理机发送出去,具体为:虚拟机对待发送的报文的包头封装物理机的公网IP地址,并通过上行接口发送给物理网卡,以通过物理网卡将携带公网IP地址和虚拟IP地址的报文发送至网络侧,或者直接将携带虚拟IP地址的报文通过上行接口发送给物理网卡,由物理网卡对待发送的报文的包头封装物理机的公网IP地址后将携带公网IP地址和虚拟IP地址的报文发送至网络侧。
[0036]步骤203,所述虚拟交换机接收所述物理网卡根据预设的钩子程序返回的网络侧报文,所述网络侧报文包括所述公网IP地址和虚拟IP地址;
[0037]虚拟交换机接收物理网卡根据预设的钩子程序返回的网络侧报文,网络侧报文包括物理机的公网IP地址和虚拟网卡的虚拟IP地址,需要说明的是,在物理网卡上创建钩子程序的目的是为了使物理网卡将从网络侧获取的携带虚拟IP地址的报文不直接发送给用户态的网络应用程序,而是先发送给虚拟交换机。
[0038]步骤204,所述虚拟交换机将所述网络侧报文通过与所述虚拟IP地址对应的虚拟网卡发送给与所述虚拟网卡对应的网络应用。
[0039]虚拟交换机对物理网卡发送的网络侧报文进行解析获取虚拟网卡的虚拟IP地址,将网络侧报文通过与获取的虚拟IP地址对应的虚拟网卡发送给与虚拟网卡对应的网络应用。
[0040]本实施例提供的网络报文发送控制方法,虚拟交换机通过为多个网络应用对应配置的虚拟网卡获取多种网络应用发送的、携带虚拟网卡的虚拟IP地址的报文,根据报文携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定多种网络应用的优先级,然后根据预设的流量控制策略和多种网络应用的优先级对接收到的报文进行发送控制,并根据物理网卡返回的网络侧报文中的虚拟IP地址将网络侧报文通过对应的虚拟网卡返回到对应的网络应用中。从而实现了在网络负载较重的情况下,保证优先级高的报文正常通信,提高了高级别业务的效率,避免低级别业务突增时,影响高级别业务的接入。
[0041]本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:R0M、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
[0042]图3为本发明实施例提供的一个虚拟交换机的结构示意图,如图3所示,该虚拟交换机包括:获取模块11、处理模块12和控制模块13,其中,获取模块11用于通过为多个网络应用配置的虚拟网卡获取多种网络应用发送的、携带所述虚拟网卡的虚拟IP地址的报文,其中,虚拟网卡与网络应用一一对应配置;处理模块12用于根据所述多种网络应用的报文所携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定所述多种网络应用的优先级;控制模块13用于根据预设的流量控制策略和所述多种网络应用的优先级对接收到的报文进行发送控制。
[0043]需要说明的 是,其中,本实施例中为每个网络应用--对应配置的虚拟网卡的方
式很多,比如通过处理模块12采用tun/tap驱动程序为每个网络应用配置对应的虚拟网卡。预设的流量控制策略可以根据实际的应用进行调整,举例说明如下,预设的流量控制策略为按照从高到低的顺序依次控制时,控制模块12具体用于:根据所述多种网络应用的优先级按照从高到低的顺序依次对所述多种网络应用的报文进行发送控制;或者,当预设的流量控制策略是预先配置与优先级对应的流量控制比例,控制模块12具体用于:根据所述多种网络应用的优先级按照预设的与优先级对应的流量控制比例同时对所述多种网络应用的报文进行发送控制。
[0044]本实施例提供的虚拟交换机中各模块的功能和处理流程,可以参见上述图1所示的方法实施例,其实现原理和技术效果类似,此处不再赘述。
[0045]进一步地,所述控制模块12具体用于:
[0046]对待发送的报文的包头封装物理机的公网IP地址,并通过上行接口发送给物理网卡,以通过所述物理网卡将携带所述公网IP地址和所述虚拟IP地址的报文发送至网络侧。
[0047]进一步地,在通过所述物理网卡将携带所述公网IP地址和所述虚拟IP地址的报文发送至网络侧之后,所述控制模块12还用于:
[0048]接收所述物理网卡根据预设的钩子程序返回的网络侧报文,所述网络侧报文包括所述公网IP地址和虚拟IP地址;
[0049]所述虚拟交换机将所述网络侧报文通过与所述虚拟IP地址对应的虚拟网卡发送给与所述虚拟网卡对应的网络应用。
[0050]本实施例提供的虚拟交换机中各模块的功能和处理流程,可以参见上述图2所示的方法实施例,其实现原理和技术效果类似,此处不再赘述。
[0051]图4为本发明实施例提供的一个物理机的结构示意图,如图4所示,该物理机包括:物理网卡1,虚拟网卡2以及虚拟交换机3,其中,多个虚拟网卡2与网络应用一一对应配置,虚拟交换机3为本发明实施例提供的虚拟交换机,物理网卡I和虚拟网卡2为本发明实施例涉及的物理网卡和虚拟网卡。
[0052]本实施例提供的物理机中各模块的功能和处理流程,可以参见上述所示的方法实施例,其实现原理和技术效果类似,此处不再赘述。
[0053]最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
【权利要求】
1.一种网络报文发送控制方法,其特征在于,包括: 虚拟交换机通过为多个网络应用配置的虚拟网卡获取多种网络应用发送的、携带所述虚拟网卡的虚拟IP地址的报文,其中,虚拟网卡与网络应用--对应配置; 所述虚拟交换机根据所述多种网络应用的报文所携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定所述多种网络应用的优先级; 所述虚拟交换机根据预设的流量控制策略和所述多种网络应用的优先级对接收到的报文进行发送控制。
2.根据权利要求1所述的网络报文发送控制方法,其特征在于,所述虚拟交换机根据预设的流量控制策略和所述多种网络应用的优先级对接收到的报文进行发送控制具体包括: 所述虚拟交换机根据所述多种网络应用的优先级按照从高到低的顺序依次对所述多种网络应用的报文进行 发送控制;或者, 所述虚拟交换机根据所述多种网络应用的优先级按照预设的与优先级对应的流量控制比例同时对所述多种网络应用的报文进行发送控制。
3.根据权利要求1所述的网络报文发送控制方法,其特征在于,所述对接收到的报文进行发送控制具体包括: 所述虚拟交换机对待发送的报文的包头封装物理机的公网IP地址,并通过上行接口发送给物理网卡,以通过所述物理网卡将携带所述公网IP地址和所述虚拟IP地址的报文发送至网络侧。
4.根据权利要求3所述的网络报文发送控制方法,其特征在于,所述通过所述物理网卡将携带所述公网IP地址和所述虚拟IP地址的报文发送至网络侧之后,所述方法还包括: 所述虚拟交换机接收所述物理网卡根据预设的钩子程序返回的网络侧报文,所述网络侧报文包括所述公网IP地址和虚拟IP地址; 所述虚拟交换机将所述网络侧报文通过与所述虚拟IP地址对应的虚拟网卡发送给与所述虚拟网卡对应的网络应用。
5.根据权利要求1-4任一所述的网络报文发送控制方法,其特征在于,在所述虚拟交换机通过多个为网络应用配置的虚拟网卡获取多种网络应用发送的、携带虚拟网卡的虚拟IP地址的报文之前,所述方法还包括: 所述虚拟交换机采用tun/tap驱动程序为每个网络应用配置对应的虚拟网卡。
6.一种虚拟交换机,其特征在于,包括: 获取模块,用于通过为多个网络应用配置的虚拟网卡获取多种网络应用发送的、携带所述虚拟网卡的虚拟IP地址的报文,其中,虚拟网卡与网络应用一一对应配置; 处理模块,用于根据所述多种网络应用的报文所携带的虚拟IP地址查询预存的与各虚拟网卡的虚拟IP地址对应的优先级,确定所述多种网络应用的优先级; 控制模块,用于根据预设的流量控制策略和所述多种网络应用的优先级对接收到的报文进行发送控制。
7.根据权利要求6所述的虚拟交换机,其特征在于,所述控制模块具体用于: 根据所述多种网络应用的优先级按照从高到低的顺序依次对所述多种网络应用的报文进行发送控制;或者, 根据所述多种网络应用的优先级按照预设的与优先级对应的流量控制比例同时对所述多种网络应用的报文进行发送控制。
8.根据权利要求6所述的虚拟交换机,其特征在于,所述控制模块具体用于: 对待发送的报文的包头封装物理机的公网IP地址,并通过上行接口发送给物理网卡,以通过所述物理网卡将携带所述公网IP地址和所述虚拟IP地址的报文发送至网络侧。
9.根据权利要求8所述的虚拟交换机,其特征在于,所述通过所述物理网卡将携带所述公网IP地址和所述虚拟IP地址的报文发送至网络侧之后,所述控制模块还用于: 接收所述物理网卡根据预设的钩子程序返回的网络侧报文,所述网络侧报文包括所述公网IP地址和虚拟IP地址; 所述虚拟交换机将所述网络侧报文通过与所述虚拟IP地址对应的虚拟网卡发送给与所述虚拟网卡对应的网络应用。
10.根据权利要求6-9任一所述的虚拟交换机,其特征在于,所述处理模块还用于: 采用tun/tap驱动程序为每个网络应用配置对应的虚拟网卡。
11.一种物理机,包括:物理网卡,其特征在于,还包括:虚拟网卡以及如权利要求6-10任一所述的虚拟交换机。
【文档编号】H04L12/931GK103501282SQ201310468108
【公开日】2014年1月8日 申请日期:2013年10月9日 优先权日:2013年10月9日
【发明者】田新雪, 马书惠 申请人:中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1