数据包转发方法及装置与流程

文档序号:13675135阅读:146来源:国知局
技术领域本公开涉及数据处理技术领域,尤其涉及一种数据包转发方法及装置。

背景技术:
玩家在玩网络游戏中最痛苦的事情莫过于遇到延时过高,登录困难,容易掉线等问题,尤其玩对战游戏时,一旦延迟比较高,分分钟会被人秒杀。造成延迟高有非常多原因,其中一个重要场景是,如果局域网内有多个设备同时上网,就会存在抢占带宽的问题,如某设备在看在线视频或下载电影,那另一个设备上网很可能就会很卡,如何解决这类问题,是玩家非常关心的问题。

技术实现要素:
本公开实施例提供一种数据包转发方法及装置,包括如下技术方案:根据本公开实施例的第一方面,提供一种数据包转发方法,用于路由设备,包括:接收终端设备发送的数据包;根据所述数据包中携带的IP地址信息确定所述数据包的分发队列;按照所述分发队列的优先级分发所述数据包至对应的目标IP地址。在一个实施例中,所述根据所述数据包中携带的IP地址信息确定所述数据包的分发队列,包括:获取所述数据包对应的目标IP(InternetProtocol,网络之间互连的协议)地址信息;判断所述目标IP地址信息是否与预设IP地址信息匹配,得到判断结果;根据所述判断结果确定所述数据包所属的分发队列。在一个实施例中,所述根据所述判断结果确定所述数据包所属的分发队列,包括:在所述目标IP地址信息与预设IP地址信息匹配时,确定所述数据包所属的分发队列为第一分发队列;在所述目标IP地址信息与预设IP地址信息不匹配时,确定所述数据包所属的分发队列为第二分发队列;其中,所述第一分发队列的优先级高于所述第二分发队列的优先级。在一个实施例中,所述按照所述分发队列的优先级分发所述数据包至对应的目标IP地址,包括:按照接收顺序发送属于所述第一分发队列的数据包至对应的目标IP地址,并在所述属于第一分发队列的数据包发送完毕后,按照接收顺序发送属于所述第二分发队列的数据包至对应的目标IP地址。在一个实施例中,在接收服务器发送的数据包之前,所述方法还包括:接收输入的IP地址信息设置命令;根据所述IP地址信息设置命令,设置所述预设IP地址信息。根据本公开实施例的第二方面,提供一种数据包转发装置,用于路由设备,包括:第一接收模块,用于接收终端设备发送的数据包;确定模块,用于根据所述第一接收模块接收的所述数据包中携带的IP地址信息确定所述数据包的分发队列;分发模块,用于按照所述确定模块确定的所述分发队列的优先级分发所述数据包至对应的目标IP地址。在一个实施例中,所述确定模块包括:获取子模块,用于获取所述第一接收模块接收的所述数据包对应的目标IP地址信息;判断子模块,用于判断所述获取子模块获取的所述目标IP地址信息是否与预设IP地址信息匹配,得到判断结果;确定子模块,用于根据所述判断子模块的判断结果确定所述数据包所属的分发队列。在一个实施例中,所述确定子模块用于:在所述目标IP地址信息与预设IP地址信息匹配时,确定所述数据包所属的分发队列为第一分发队列;在所述目标IP地址信息与预设IP地址信息不匹配时,确定所述数据包所属的分发队列为第二分发队列;其中,所述第一分发队列的优先级高于所述第二分发队列的优先级。在一个实施例中,所述分发模块用于:按照接收顺序发送属于所述第一分发队列的数据包至对应的目标IP地址,并在所述属于第一分发队列的数据包发送完毕后,按照接收顺序发送属于所述第二分发队列的数据包至对应的目标IP地址。在一个实施例中,所述装置还包括:第二接收模块,用于在接收服务器发送的数据包之前,接收输入的IP地址信息设置命令;设置模块,用于根据所述IP地址信息设置命令,设置所述预设IP地址信息。根据本公开实施例的第三方面,提供一种数据包转发装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:接收终端设备发送的数据包;根据所述数据包中携带的IP地址信息确定所述数据包的分发队列;按照所述分发队列的优先级分发所述数据包至对应的目标IP地址。本公开的实施例提供的技术方案可以包括以下有益效果:上述技术方案,获取数据包对应的目标IP地址信息,从而将目标IP地址信息与预设IP地址信息匹配,根据匹配结果确定数据包所属的分发队列,从而根据分发队列的优先级分发数据包至对应的目标IP地址,这样,在多设备抢占带宽时,可以有针对性的优先发送重要的数据包,从而提升用户的使用体验。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1是根据一示例性实施例示出的一种数据包转发方法的流程图。图2是根据一示例性实施例示出的数据包转发方法中步骤S102的流程图。图3是根据一示例性实施例示出的另一种数据包转发方法的流程图。图4是根据一示例性实施例示出的再一种数据包转发方法的流程图。图5是根据一示例性实施例示出的又一种数据包转发方法的流程图。图6是根据一示例性实施例示出的一种数据包转发装置的框图。图7是根据一示例性实施例示出的一种数据包转发装置中确定模块的框图。图8是根据一示例性实施例示出的另一种数据包转发装置的框图。图9是根据一示例性实施例示出的适用于数据包转发装置的框图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。本公开实施例提供了一种数据包转发方法,该方法可用于路由设备中,如图1所示,该方法包括步骤S101-S103:在步骤S101中,接收终端设备发送的数据包;在步骤S102中,根据数据包中携带的IP地址信息确定数据包的分发队列;在步骤S103中,按照分发队列的优先级分发数据包至对应的目标IP地址。不同的分发队列对于不同的优先级,在进行数据包分发时,可以根据分发队列的优先级进行分发。在该实施例中,获取数据包中携带的IP地址信息,进而根据IP地址信息确定数据包的分发队列,从而根据分发队列的优先级分发数据包至对应的目标IP地址,这样,在多设备抢占带宽时,可以有针对性的优先发送重要的数据包,从而提升用户的使用体验。如图2所示,在一个实施例中,上述步骤S102包括步骤S201-S203:在步骤S201中,获取数据包对应的目标IP地址信息;终端设备与服务器通信的数据包基于两种协议TCP(TransmissionControlProtocol,传输控制协议)和UDP(UserDatagramProtocol,用户数据包协议),不同的应用根据不同的需求选择不同的协议。基于这两种不同的协议,应用所发送的经过路由器的数据包格式有如下两种:IP头部+TCP数据信息(TCP头部+应用的实际数据)IP头部+UDP数据信息(UDP头部+应用的实际数据)。这两种数据包都有相同的IP头部,因此,可以通过识别IP头部来获取目标IP地址信息。在步骤S202中,判断目标IP地址信息是否与预设IP地址信息匹配,得到判断结果;其中,在服务器中,可以预设一些需要优先处理的IP地址信息,即优先设置预设IP地址信息,在获取到目标IP地址信息后,将目标IP地址信息与预设IP地址信息进行匹配。在步骤S203中,根据判断结果确定数据包所属的分发队列。对于目标IP地址信息与预设IP地址信息匹配,和目标IP地址信息与预设IP地址信息不匹配的数据包,可以放入不同的分发队列,从而进行区别分发。在该实施例中,获取数据包对应的目标IP地址信息,从而将目标IP地址信息与预设IP地址信息匹配,根据匹配结果确定数据包所属的分发队列,从而根据分发队列的优先级分发数据包至对应的目标IP地址,这样,在多设备抢占带宽时,可以有针对性的优先发送重要的数据包,从而提升用户的使用体验。如图3所示,在一个实施例中,上述步骤S203包括步骤S301-S302:在步骤S301中,在目标IP地址信息与预设IP地址信息匹配时,确定数据包所属的分发队列为第一分发队列;在步骤S302中,在目标IP地址信息与预设IP地址信息不匹配时,确定数据包所属的分发队列为第二分发队列;其中,第一分发队列的优先级高于第二分发队列的优先级。在该实施例中,可以在路由设备上建立了两个分发队列,第一分发队列和第二分发队列(如A和B)来向外发送数据包,对于所有收到的数据包,可以判断其对应的目标IP地址信息是否与预设IP地址信息匹配,对于与预设IP地址信息匹配的目标IP地址信息,可以确定其属于优先级较高的第一分发队列,对于不与预设IP地址信息匹配的目标IP地址信息,可以确定其属于优先级较低的第二分发队列,这样,按照分发队列的优先级高低进行分发,可以保证重要的数据包优先进行发送,从而,在多设备抢占带宽时,保证重要的数据包的处理速度,从而提升用户的使用体验。其中,用户可以预设一些想优先进行处理的预设IP地址信息,比如,用户在玩游戏时,为了保证游戏过程中不会出现卡顿,可以将游戏对应的目标IP地址信息设置为预设IP地址信息,这样,路由设备在进行数据包转发时,会优先转发游戏对应的数据包,从而保证游戏过程中不会出现卡顿现象。如图4所示,在一个实施例中,上述步骤S103包括步骤S401:在步骤S401中,按照接收顺序发送属于第一分发队列的数据包至对应的目标IP地址,并在属于第一分发队列的数据包发送完毕后,按照接收顺序发送属于第二分发队列的数据包至对应的目标IP地址。由于第一分发队列的优先级高于第二分发队列的优先级,因此在路由设备向外发送数据包的时候会优先处理第一分发队列,如果第一分发队列不为空,会发送第一分发队列中的数据包,直到第一分发队列为空才开始发送第二分发队列中的数据包。第一分发队列和第二分发队列中的包发送都是用FIFO(先进先出)的原则来进行发送。如图5所示,在一个实施例中,在接收服务器发送的数据包之前,上述方法还包括步骤S501-S502:在步骤S501中,接收输入的IP地址信息设置命令;在步骤S502中,根据IP地址信息设置命令,设置预设IP地址信息。在该实施例中,用户可以预设一些想优先进行处理的预设IP地址信息,比如,用户在玩游戏时,为了保证游戏过程中不会出现卡顿,可以将游戏对应的目标IP地址信息设置为预设IP地址信息,这样,路由设备在进行数据包转发时,会优先转发游戏对应的数据包,从而保证游戏过程中不会出现卡顿现象。下述为本公开装置实施例,可以用于执行本公开方法实施例。图6是根据一示例性实施例示出的一种数据包转发装置的框图,该装置可以通过软件、硬件或者两者的结合实现成为路由设备的部分或者全部。如图6所示,该数据包转发装置包括:第一接收模块61,被配置为接收终端设备发送的数据包;确定模块62,被配置为根据所述第一接收模块61接收的所述数据包中携带的IP地址信息确定所述数据包的分发队列;分发模块63,被配置为按照所述确定模块62确定的所述分发队列的优先级分发所述数据包至对应的目标IP地址。不同的分发队列对于不同的优先级,在进行数据包分发时,可以根据分发队列的优先级进行分发。在该实施例中,获取数据包中携带的IP地址信息,进而根据IP地址信息确定数据包的分发队列,从而根据分发队列的优先级分发数据包至对应的目标IP地址,这样,在多设备抢占带宽时,可以有针对性的优先发送重要的数据包,从而提升用户的使用体验。如图7所示,在一个实施例中,所述确定模块62包括:获取子模块71,被配置为获取所述第一接收模块61接收的所述数据包对应的目标IP地址信息;终端设备与服务器通信的数据包基于两种协议TCP和UDP,不同的应用根据不同的需求选择不同的协议。基于这两种不同的协议,应用所发送的经过路由器的数据包格式有如下两种:IP头部+TCP数据信息(TCP头部+应用的实际数据)IP头部+UDP数据信息(UDP头部+应用的实际数据)。这两种数据包都有相同的IP头部,因此,可以通过识别IP头部来获取目标IP地址信息。判断子模块72,被配置为判断所述获取子模块71获取的所述目标IP地址信息是否与预设IP地址信息匹配,得到判断结果;其中,在服务器中,可以预设一些需要优先处理的IP地址信息,即优先设置预设IP地址信息,在获取到目标IP地址信息后,将目标IP地址信息与预设IP地址信息进行匹配。确定子模块73,被配置为根据所述判断子模块72的判断结果确定所述数据包所属的分发队列。对于目标IP地址信息与预设IP地址信息匹配,和目标IP地址信息与预设IP地址信息不匹配的数据包,可以放入不同的分发队列,从而进行区别分发。在该实施例中,获取数据包对应的目标IP地址信息,从而将目标IP地址信息与预设IP地址信息匹配,根据匹配结果确定数据包所属的分发队列,从而根据分发队列的优先级分发数据包至对应的目标IP地址,这样,在多设备抢占带宽时,可以有针对性的优先发送重要的数据包,从而提升用户的使用体验。在一个实施例中,所述确定子模块73用于:在所述目标IP地址信息与预设IP地址信息匹配时,确定所述数据包所属的分发队列为第一分发队列;在所述目标IP地址信息与预设IP地址信息不匹配时,确定所述数据包所属的分发队列为第二分发队列;其中,所述第一分发队列的优先级高于所述第二分发队列的优先级。在该实施例中,可以在路由设备上建立了两个分发队列,第一分发队列和第二分发队列(如A和B)来向外发送数据包,对于所有收到的数据包,可以判断其对应的目标IP地址信息是否与预设IP地址信息匹配,对于与预设IP地址信息匹配的目标IP地址信息,可以确定其属于优先级较高的第一分发队列,对于不与预设IP地址信息匹配的目标IP地址信息,可以确定其属于优先级较低的第二分发队列,这样,按照分发队列的优先级高低进行分发,可以保证重要的数据包优先进行发送,从而,在多设备抢占带宽时,保证重要的数据包的处理速度,从而提升用户的使用体验。其中,用户可以预设一些想优先进行处理的预设IP地址信息,比如,用户在玩游戏时,为了保证游戏过程中不会出现卡顿,可以将游戏对应的目标IP地址信息设置为预设IP地址信息,这样,路由设备在进行数据包转发时,会优先转发游戏对应的数据包,从而保证游戏过程中不会出现卡顿现象。在一个实施例中,分发模块63用于:按照接收顺序发送属于第一分发队列的数据包至对应的目标IP地址,并在属于第一分发队列的数据包发送完毕后,按照接收顺序发送属于第二分发队列的数据包至对应的目标IP地址。由于第一分发队列的优先级高于第二分发队列的优先级,因此在路由设备向外发送数据包的时候会优先处理第一分发队列,如果第一分发队列不为空,会发送第一分发队列中的数据包,直到第一分发队列为空才开始发送第二分发队列中的数据包。第一分发队列和第二分发队列中的包发送都是用FIFO(先进先出)的原则来进行发送。如图8所示,在一个实施例中,上述装置还包括:第二接收模块81,被配置为在接收服务器发送的数据包之前,接收输入的IP地址信息设置命令;设置模块82,被配置为根据IP地址信息设置命令,设置预设IP地址信息。在该实施例中,用户可以预设一些想优先进行处理的预设IP地址信息,比如,用户在玩游戏时,为了保证游戏过程中不会出现卡顿,可以将游戏对应的目标IP地址信息设置为预设IP地址信息,这样,路由设备在进行数据包转发时,会优先转发游戏对应的数据包,从而保证游戏过程中不会出现卡顿现象。根据本公开实施例的第三方面,提供一种数据包转发装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为:接收终端设备发送的数据包;根据所述数据包中携带的IP地址信息确定所述数据包的分发队列;按照所述分发队列的优先级分发所述数据包至对应的目标IP地址。上述处理器还可被配置为:所述根据所述数据包中携带的IP地址信息确定所述数据包的分发队列,包括:获取所述数据包对应的目标IP(InternetProtocol,网络之间互连的协议)地址信息;判断所述目标IP地址信息是否与预设IP地址信息匹配,得到判断结果;根据所述判断结果确定所述数据包所属的分发队列。上述处理器还可被配置为:所述根据所述判断结果确定所述数据包所属的分发队列,包括:在所述目标IP地址信息与预设IP地址信息匹配时,确定所述数据包所属的分发队列为第一分发队列;在所述目标IP地址信息与预设IP地址信息不匹配时,确定所述数据包所属的分发队列为第二分发队列;其中,所述第一分发队列的优先级高于所述第二分发队列的优先级。上述处理器还可被配置为:所述按照所述分发队列的优先级分发所述数据包至对应的目标IP地址,包括:按照接收顺序发送属于所述第一分发队列的数据包至对应的目标IP地址,并在所述属于第一分发队列的数据包发送完毕后,按照接收顺序发送属于所述第二分发队列的数据包至对应的目标IP地址。上述处理器还可被配置为:在接收服务器发送的数据包之前,所述方法还包括:接收输入的IP地址信息设置命令;根据所述IP地址信息设置命令,设置所述预设IP地址信息。图9是根据一示例性实施例示出的一种用于数据包转发装置的框图。例如,装置900可以被提供为一服务器。装置900包括处理组件922,其进一步包括一个或多个处理器,以及由存储器932所代表的存储器资源,用于存储可由处理组件922的执行的指令,例如应用程序。存储器932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件922被配置为执行指令,以执行上述方法。装置900还可以包括一个电源组件926被配置为执行装置900的电源管理,一个有线或无线网络接口950被配置为将装置900连接到网络,和一个输入输出(I/O)接口958。装置900可以操作本发基于存储在存储器932的操作系统,例如WindowsServerTM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM或类似。一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置900的处理器执行时,使得装置900能够执行上述数据包转发方法,所述方法包括:接收终端设备发送的数据包;根据所述数据包中携带的IP地址信息确定所述数据包的分发队列;按照所述分发队列的优先级分发所述数据包至对应的目标IP地址。在一个实施例中,所述根据所述数据包中携带的IP地址信息确定所述数据包的分发队列,包括:获取所述数据包对应的目标IP(InternetProtocol,网络之间互连的协议)地址信息;判断所述目标IP地址信息是否与预设IP地址信息匹配,得到判断结果;根据所述判断结果确定所述数据包所属的分发队列。在一个实施例中,所述根据所述判断结果确定所述数据包所属的分发队列,包括:在所述目标IP地址信息与预设IP地址信息匹配时,确定所述数据包所属的分发队列为第一分发队列;在所述目标IP地址信息与预设IP地址信息不匹配时,确定所述数据包所属的分发队列为第二分发队列;其中,所述第一分发队列的优先级高于所述第二分发队列的优先级。在一个实施例中,所述按照所述分发队列的优先级分发所述数据包至对应的目标IP地址,包括:按照接收顺序发送属于所述第一分发队列的数据包至对应的目标IP地址,并在所述属于第一分发队列的数据包发送完毕后,按照接收顺序发送属于所述第二分发队列的数据包至对应的目标IP地址。在一个实施例中,在接收服务器发送的数据包之前,所述方法还包括:接收输入的IP地址信息设置命令;根据所述IP地址信息设置命令,设置所述预设IP地址信息。本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1