一种报文转发方法及装置与流程

文档序号:12478570阅读:161来源:国知局
一种报文转发方法及装置与流程

本发明涉及通信技术领域,尤其涉及一种报文转发方法及装置。



背景技术:

由于不同运营商间访问体验较差,ICP(Internet Content Provider,网络内容提供商)为了提升用户的访问体验,一般会购买分属于不同运营商的多个IP地址,因此DNS(Domain Name Server,域名服务器)在域名解析时会返回一个域名对应的多个IP地址。因此用户设备访问网络资源时,带宽和运营商等因素都会对用户设备的访问构成一定的影响。目前用户设备选择的链路与用户期望的链路有所差异。



技术实现要素:

有鉴于此,本发明提供一种报文转发方法及装置来解决用户设备选择的链路与用户期望的链路有所差异的问题。

具体地,本发明是通过如下技术方案实现的:

本发明提供一种报文转发方法,所述方法应用于负载均衡设备,所述负载均衡设备位于用户设备和DNS之间,所述方法包括:

接收DNS发送至用户设备的第一应答报文,所述第一应答报文携带所述用户设备请求的域名对应的多个IP地址;

确定所述用户设备对应的选路策略;

根据所述选路策略从所述多个IP地址中选出目标IP地址;

向所述用户设备发送第二应答报文,所述第二应答报文携带所述用户设备请求的域名对应的多个IP地址,且在所述第二应答报文中所述目标IP地址位于所述多个IP地址首位。

基于相同的构思,本发明还提供一种报文转发装置,所述装置应用于负载均衡设备,所述负载均衡设备位于用户设备和DNS之间,所述装置包括:

报文接收单元,用于接收DNS发送至用户设备的第一应答报文,所述第一应答报文携带所述用户设备请求的域名对应的多个IP地址;

策略确定单元,用于确定所述用户设备对应的选路策略;

地址选择单元,用于根据所述选路策略从所述多个IP地址中选出目标IP地址;

报文发送单元,用于向所述用户设备发送第二应答报文,所述第二应答报文携带所述用户设备请求的域名对应的多个IP地址,且在所述第二应答报文中所述目标IP地址位于所述多个IP地址首位。

由此可见,本发明可以使负载均衡设备接收DNS发送至用户设备的第一应答报文,所述第一应答报文携带所述用户设备请求的域名对应的多个IP地址;在确定所述用户设备对应的选路策略后,根据所述选路策略从所述多个IP地址中选出目标IP地址;然后向所述用户设备发送第二应答报文,所述第二应答报文携带所述用户设备请求的域名对应的多个IP地址,且在所述第二应答报文中所述目标IP地址位于所述多个IP地址首位。因此,本发明可以根据用户设备对应的选路策略调整应答报文中域名对应的IP地址的位置,从而使用户设备收到应答报文后,通过应答报文中域名对应的首位IP地址对应的链路访问网络资源。也即通过用户设备对应的选路策略选出的IP地址对应的链路访问网络资源,使用户设备选择的链路符合用户的期望,提升了用户的访问体验。

附图说明

图1是本发明一种示例性实施方式中的一种报文转发方法的处理流程图;

图2本发明实施例中的一个组网结构示意图;

图3是本发明一种示例性实施方式中的另一种报文转发方法的处理流程图;

图4a本发明一种示例性实施方式中的报文转发装置所在负载均衡设备的硬件结构图;

图4b本发明一种示例性实施方式中的一种报文转发装置的逻辑结构图。

具体实施方式

为了解决现有技术存在的问题,本发明提供一种报文转发方法及装置,可以使负载均衡设备接收DNS发送至用户设备的第一应答报文,所述第一应答报文携带所述用户设备请求的域名对应的多个IP地址;在确定所述用户设备对应的选路策略后,根据所述选路策略从所述多个IP地址中选出目标IP地址;然后向所述用户设备发送第二应答报文,所述第二应答报文携带所述用户设备请求的域名对应的多个IP地址,且在所述第二应答报文中所述目标IP地址位于所述多个IP地址首位。因此,本发明可以根据用户设备对应的选路策略调整应答报文中域名对应的IP地址的位置,从而使用户设备收到应答报文后,通过应答报文中域名对应的首位IP地址对应的链路访问网络资源。也即通过用户设备对应的选路策略选出的IP地址对应的链路访问网络资源,使用户设备选择的链路符合用户的期望,提升了用户的访问体验。

请参考图1,是本发明一种示例性实施方式中的一种报文转发方法的处理流程图,所述方法应用于负载均衡设备,该负载均衡设备位于用户设备和DNS之间。所述方法包括:

步骤101、接收DNS发送至用户设备的第一应答报文,所述第一应答报文携带所述用户设备请求的域名对应的多个IP地址;

在本实施例中,当用户设备需要访问站点时,需要向DNS发送携带该站点域名的域名解析请求,DNS会根据该域名解析请求中的域名查找到该域名对应的IP地址。由于ICP为了提升用户设备的访问体验,一般会购买分属于不同运营商的多个IP地址,因此DNS会返回第一应答报文,所述第一应答报文携带所述用户设备请求的域名对应的多个IP地址。

步骤102、确定所述用户设备对应的选路策略;

在本发明可选的实施例中,所述负载均衡设备在收到DNS的第一应答报文后,可以进一步获取该第一应答报文中的特征信息,所述特征信息至少包括用户设备的IP地址、MAC地址或者用户设备请求访问的域名,然后负载均衡设备在本地查找与该特征信息对应的预设的选路策略。该预设的选路策略可以为用户根据自身期望在负载均衡设备中配置的。

步骤103、根据所述选路策略从所述多个IP地址中选出目标IP地址;

负载均衡设备可以根据确定的选路策略从该第一应答报文携带的多个IP地址中选出目标IP地址。

步骤104、向所述用户设备发送第二应答报文,所述第二应答报文携带所述用户设备请求的域名对应的多个IP地址,且在所述第二应答报文中所述目标IP地址位于所述多个IP地址首位。

确定目标IP地址后,负载均衡设备可以向所述用户设备发送第二应答报文,所述第二应答报文携带所述用户设备请求的域名对应的多个IP地址,且在所述第二应答报文中所述目标IP地址位于所述多个IP地址首位。

需要说明的是,如果根据所述选路策略无法从所述多个IP地址中选出目标IP地址,负载均衡设备可以将所述第一应答报文转发至用户设备;如果第一应答报文的首位本来就是目标IP地址,则第二应答报文可以就是第一应答报文;如果第一应答报文的首位不是目标IP地址,则需要将第一应答报文中的目标IP地址调整到IP地址首位,从而得到第二应答报文。

由于用户设备通常会根据DNS应答报文中的排在首位的IP地址进行访问,因此将根据选路策略选择的目标IP地址放在首位,可以使用户设备通过目标IP地址对应的链路访问服务器。由于现有技术中DNS对链路流量状态的感知度不如负载均衡设备,因此DNS无法判断哪条链路更适合用户设备使用,而本发明可以使负载均衡设备根据用户设备的需求动态调整DNS应答记录中的IP地址顺序,相比于现有技术,本发明可以简化为用户设备进行链路选择的配置,优化链路资源,提升了用户设备的访问体验。

在本发明可选的实施例中,负载均衡设备解析出第一应答报文中的域名对应多个IP地址时,可以分别确定所述多个IP地址对应的运营商,然后选择用户预设的运营商对应的IP地址作为目标IP地址。或者,负载均衡设备在分别确定所述多个IP地址对应的运营商后,分别检测所述多个IP地址对应的运营商所对应的剩余流量,然后选择剩余流量较大的运营商对应的IP地址作为目标IP地址。或者,负载均衡设备也可以将上述两种策略结合使用来获取目标IP地址,例如先查找用户预设的运营商对应的IP地址,若不存在或者存在多个IP地址,可以进一步通过比较剩余流量的方式选择流量较大的运营商对应的IP地址作为目标IP地址。

因此,本发明可以根据运营商和流量动态调整DNS应答记录中的地址,从而可以实现优选用户指定的链路,兼顾带宽利用率,从而提升了用户的访问体验。

为使本发明的目的、技术方案及优点更加清楚明白,下面对本发明的具体实施方案作进一步地详细说明。

请参见图2,是本发明实施例中的一个组网结构示意图。其中包括用户设备、DNS以及两者之间设置的负载均衡设备。当用户设备想访问www.icp.com时,假设ICP购买了电信和铁通的服务资源(服务器1、服务器2),其中服务器1(IP地址1101.1.1.1)归属于电信,服务器2(IP地址201.1.1.1)归属于铁通。根据本发明提供的报文转发方法,所述负载均衡设备的处理过程如图3所示,其中包括:

步骤301、接收DNS发送的第一应答报文;

在本实施例中,用户设备首先会向DNS发送请求报文,该请求报文中请求解析的域名为www.icp.com。DNS收到后,会查找到该域名对应2个应答记录,依次是101.1.1.1(电信)、201.1.1.1(铁通)。因此DNS会根据这两个应答记录生成第一应答报文,其中携带的域名对应的IP地址依次是101.1.1.1(电信)、201.1.1.1(铁通)。

步骤302、解析第一应答报文中的IP地址;

负载均衡设备收到第一应答报文后,会解析该第一应答报文的应答记录中的IP地址,结果依次为101.1.1.1(电信)、201.1.1.1(铁通)。

步骤303、查找IP地址对应的运营商;

负载均衡设备查找IP地址对应的运营商,确定101.1.1.1归属于电信,201.1.1.1归属于铁通。

步骤304、查找用户配置,确定是否存在优选运营商;若是,则转步骤305;若否,则转步骤306;

用户可以预先进行配置,为用户设备设置优选的运营商,这样在有优选运营商的链路时,则会配置该运营商资源。负载均衡设备查找到为该用户设备配置的运营商后,将当前这两个运营商与为用户设备配置的运营商进行匹配,进而确定当前链路中是否存在优选运营商。

步骤305、将第一应答报文中优选运营商对应的IP地址为目标IP地址;转步骤308;

假设为用户设备配置的优选运营商为铁通,则负载均衡设备可以进一步确定铁通与用户配置的优选运营商相匹配,因此可以选择第一应答报文中的铁通对应的IP地址(201.1.1.1)为目标IP地址。

步骤306、获取运营商对应的剩余流量;

当确定不存在优选运营商或存在多个优选运营商时,可以进一步获取运营商对应的剩余流量。

步骤307、比较流量大小,将第一应答报文中流量大的运营商对应的IP地址作为目标IP地址;转步骤308;

假设铁通、电信两个链路的剩余流量分别为100M、200M,则可以将第一应答报文中的剩余流量较大的电信对应的IP地址(101.1.1.1)作为目标IP地址。由于电信的剩余流量较大,使用户设备在通过电信的链路访问www.icp.com时能够享受更好的带宽资源。

步骤308、向所述用户设备发送第二应答报文,所述第二应答报文携带所述用户设备请求的域名对应的多个IP地址,且在所述第二应答报文中所述目标IP地址位于所述多个IP地址首位。

当确定目标IP地址后,载均衡设备可以判断第一应答报文中的首位IP地址是否是目标IP地址,若是,则将该第一应答报文作为第二应答报文发送到用户设备;若否,则将目标IP地址调整到首位,再将调整后的第二应答报文发送到用户设备。用户设备收到第二应答报文后,可通过优选的链路访问www.icp.com。进而实现链路资源的充分利用,提高用户的访问体验。

基于相同的构思,本发明还提供一种报文转发装置,该装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,本发明的报文转发装置作为一个逻辑意义上的装置,是通过其所在装置的CPU将存储器中对应的计算机程序指令读取后运行而成。

请参考图4a是本发明一种示例性实施方式中的报文转发装置所在负载均衡设备的硬件结构图,所述负载均衡设备位于用户设备和DNS之间,该装置基本运行环境包括CPU,存储器以及其他硬件。从逻辑层面上来看,该报文转发装置400的逻辑结构如图4b所示,其中该装置400包括:

报文接收单元401,用于接收DNS发送至用户设备的第一应答报文,所述第一应答报文携带所述用户设备请求的域名对应的多个IP地址;

策略确定单元402,用于确定所述用户设备对应的选路策略;

地址选择单元403,用于根据所述选路策略从所述多个IP地址中选出目标IP地址;

报文发送单元404,用于向所述用户设备发送第二应答报文,所述第二应答报文携带所述用户设备请求的域名对应的多个IP地址,且在所述第二应答报文中所述目标IP地址位于所述多个IP地址首位。

可选的,所述策略确定单元402,具体用于根据应答报文中的特征信息,在本地查找与该特征信息对应的选路策略,所述特征信息至少包括用户设备的地址或者域名。

可选的,所述地址选择单元403,包括:

第一子单元4031,用于分别确定所述多个IP地址对应的运营商;选择用户设备预设的运营商对应的IP地址作为目标IP地址。

可选的,所述地址选择单元403,还包括:

第二子单元4032,用于分别确定所述多个IP地址对应的运营商;分别检测所述多个IP地址对应的运营商所对应的剩余流量;选择剩余流量较小的运营商对应的IP地址作为目标IP地址。

可选的,所述报文发送单元404,还用于若根据所述选路策略无法从所述多个IP地址中选出目标IP地址,将所述第一应答报文转发至用户设备。

由此可见,本发明可以使负载均衡设备接收DNS发送至用户设备的第一应答报文,所述第一应答报文携带所述用户设备请求的域名对应的多个IP地址;在确定所述用户设备对应的选路策略后,根据所述选路策略从所述多个IP地址中选出目标IP地址;然后向所述用户设备发送第二应答报文,所述第二应答报文携带所述用户设备请求的域名对应的多个IP地址,且在所述第二应答报文中所述目标IP地址位于所述多个IP地址首位。因此,本发明可以根据用户设备对应的选路策略调整应答报文中域名对应的IP地址的位置,从而使用户设备收到应答报文后,通过应答报文中域名对应的首位IP地址对应的链路访问网络资源。也即通过用户设备对应的选路策略选出的IP地址对应的链路访问网络资源,使用户设备选择的链路符合用户的期望,提升了用户的访问体验。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1