报文转发的方法和装置的制造方法

文档序号:10627024阅读:898来源:国知局
报文转发的方法和装置的制造方法
【专利摘要】本发明提供一种报文转发的方法和装置,应用在网络设备上,所述方法包括:在客户端设备向DNS服务器发出DNS请求报文后,接收DNS服务器向客户端设备发送的DNS应答报文;从DNS应答报文中解析出被解析域名后,判断被解析域名是否匹配预设的域名特征;如果匹配,则从DNS应答报文中解析出与被解析域名对应的A记录地址;将为被解析域名预先配置的链路的下一跳地址和A记录地址的对应关系更新到路由表中;在接收到客户端设备发送的业务报文时,查询所述路由表以进行转发。应用本发明实施例,实现通过预先配置的链路承载特定的域名访问,从而在带宽紧张、业务激增的情况下,保障特定网络业务的域名访问的通畅性和可靠性,进而保障其数据传输质量,提高用户体验。
【专利说明】
报文转发的方法和装置
技术领域
[0001] 本发明涉及计算网络技术领域,尤其是一种报文转发的方法和装置。
【背景技术】
[0002] 随着信息业务的不断丰富,带宽与业务之间的矛盾也日渐剧增,具体而言,在带宽 紧张、业务激增的情况下,很难保障所有业务的传输质量。例如,在某网络中,某些P2P (Peer to Peer,对等连接)下载、视频播放等非实时业务流量占用了大部分带宽资源,造成网络堵 塞,进而影响其他业务(例如,百度搜索)的传输质量,降低用户的使用体验。

【发明内容】

[0003] 有鉴于此,本发明提供一种报文转发的方法和装置,有效保障特定网络业务的传 输质量。
[0004] 具体地,本发明是通过如下技术方案实现的:
[0005] 本发明的一方面,提供一种报文转发的方法,所述方法应用在网络设备上,包括:
[0006] 在客户端设备向DNS服务器发出DNS请求报文后,接收所述DNS服务器向所述客 户端设备发送的DNS应答报文;
[0007] 从所述DNS应答报文中解析出被解析域名后,判断所述被解析域名是否匹配预设 的域名特征;
[0008] 如果匹配,则从所述DNS应答报文中解析出与所述被解析域名对应的A记录地 址;
[0009] 将为所述被解析域名预先配置的链路的下一跳地址和所述A记录地址的对应关 系更新到路由表中;
[0010] 在接收到客户端设备发送的业务报文时,查询所述路由表以进行转发。
[0011] 本发明的另一方面,提供一种报文转发的装置,所述装置应用在网络设备上,包 括:
[0012] 报文接收单元,用于在客户端设备向DNS服务器发出DNS请求报文后,接收所述 DNS服务器向所述客户端设备发送的DNS应答报文;
[0013] 第一判断单元,用于从所述DNS应答报文中解析出被解析域名后,判断所述被解 析域名是否匹配预设的域名特征;
[0014] 解析单元,用于在被解析域名匹配预设的域名特征时,从所述DNS应答报文中解 析出与所述被解析域名对应的A记录地址;
[0015] 第一更新单元,用于将为所述被解析域名预先配置的链路的下一跳地址和所述A 记录地址的对应关系更新到路由表中;
[0016] 第一转发单元,用于在接收到客户端设备发送的业务报文时,查询所述路由表以 进行转发。
[0017] 应用本发明实施例,可以预先为特定域名配置转发链路,并在DNS应答报文中携 带的被解析域名为特定域名时,将为所述被解析域名预先配置的链路的下一跳地址和所述 被解析域名对应的A记录地址的对应关系更新至路由表中,并在接收到业务报文时,根据 该路由表进行转发,以实现通过预先配置的链路承载特定的域名访问,从而在带宽紧张、业 务激增的情况下,保障特定网络业务的域名访问的通畅性和可靠性,进而保障其数据传输 质量,提高用户体验。
【附图说明】
[0018] 图1是本发明一示例性实施例示出的一种报文转发的方法的流程图;
[0019] 图2是本发明一示例性实施例示出的另一种报文转发的方法的流程图;
[0020] 图3是本发明一示例性实施例示出的一种报文转发的装置的一硬件结构示意图;
[0021] 图4是本发明一示例性实施例示出的一种报文转发的装置的结构框图;
[0022] 图5是本发明一示例性实施例示出的另一种报文转发的装置的结构框图。
【具体实施方式】
[0023] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及 附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例 中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附 权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
[0024] 在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。 在本发明和所附权利要求书中所使用的单数形式的"一种"、"所述"和"该"也旨在包括多 数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语"和/或"是指 并包含一个或多个相关联的列出项目的任何或所有可能组合。
[0025] 应当理解,尽管在本发明可能采用术语第一、第二、第三等来描述各种信息,但这 些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离 本发明范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第 一信息。取决于语境,如在此所使用的词语"如果"可以被解释成为"在……时"或"当…… 时"或"响应于确定"。
[0026] 本技术领域人员可以理解的是,用户访问某网站时,可以在客户端设备中输入所 述网站的域名,例如,用户可以在客户端设备装载的浏览器中输入域名www. baidu. com,以 实现对百度网站的访问。在用户进行业务访问的过程中,客户端设备首先会向DNS服务器 (Domain Name Server,域名服务器)发出DNS请求报文,DNS服务器接收到该DNS请求报文 后,根据请求报文中携带的被解析域名返回DNS应答报文给客户端设备,该DNS应答报文中 可以携带与被解析域名对应的A (Address,地址)记录地址,其中,A记录地址是被解析域名 对应的IP地址(Internet Protocol Address,网际协议地址),客户端设备接受到DNS应 答报文后,进而可以根据所述A记录地址进行业务访问。
[0027] 在本发明实施例中,在客户端设备与DNS服务器之间设置有用于实现负载均衡的 网络设备,所述网络设备可以为路由器、三层交换机等,本发明对此不作特殊限制。该网络 设备可以在客户端设备向DNS服务器发出DNS请求报文后,接收DNS服务器向客户端设备 发送的DNS应答报文,从该报文中解析出被解析域名,并判断被解析域名是否与预先设置 的域名特征匹配,如果匹配,进一步从该报文中解析出与被解析域名对应的A记录地址,且 建立为被解析域名预先配置的链路的下一跳地址与该A记录地址的对应关系,并将该对应 关系更新到路由表中,在接收到客户端设备发送的业务报文时,查询路由表以转发业务报 文。从而可以通过预先配置的链路承载特定网络业务的流量,确保特定网络业务的传输质 量。
[0028] 为了使本技术领域的人员更好地理解本发明实施例中的技术方案,下面结合附图 对本发明实施例中技术方案作进一步详细的说明。
[0029] 图1示出了本发明一示例性实施例示出的一种报文转发的方法的流程图。
[0030] 参照图1,一种报文转发的方法,应用在网络设备上,所述方法包括如下步骤:
[0031] 步骤S101,在客户端设备向DNS服务器发出DNS请求报文后,接收DNS服务器向客 户端设备发送的DNS应答报文。
[0032] 其中,DNS应答报文所包含的字段内容属于公知技术内容,在此不再赘述。
[0033] 步骤S102,从DNS应答报文中解析出被解析域名。
[0034] DNS应答报文的域名字段的字段数据为被解析域名,在本实施例中,可以从该域名 字段解析出被解析域名。
[0035] 步骤S103,判断被解析域名是否匹配预设的域名特征,如果匹配,执行步骤S104, 如果不匹配,执行步骤S107。
[0036] 具体地,技术人员或者管理员可以汇总传输质量需要得到保障的各种网络业务, 在本发明中将这些网络业务称为特定网络业务。技术人员或者管理员从所述特定网络业务 的域名中提取出域名特征,然后将所述域名特征配置在网络设备中,以供所述网络设备可 以根据所述域名特征进行特定网络业务的识别。举例来说,假设百度为特定网络业务,技术 人员或者管理员可以从百度的域名WWW. baidu. com中提取出一个域名特征baidu,并将所 述域名特征baidu存储在网络设备中。当网络设备解析出的被解析域名匹配所述域名特征 baidu时,网络设备可以确定所述被解析域名为特定网络业务的域名,执行步骤104。可选 的,还可以为一些特定网络业务预设多个域名特征,当被解析域名匹配上预设的域名特征 中的一个或者多个时,可以确定被解析域名与预设的域名特征匹配,即被解析域名为特定 网络业务的域名。
[0037] 步骤S104,从DNS应答报文中解析出与被解析域名对应的A记录地址。
[0038] 在DNS解析中,当DNS应答报文的类型字段值对为A时,可以从DNS应答报文中解 析到与被解析域名对应的IP地址,该IP地址就是A记录地址。
[0039] 步骤S105,判断路由表中是否已保存为被解析域名预先配置的链路的下一跳地址 与A记录地址的对应关系,如果是,则执行步骤S107,如果否,则执行步骤S106。
[0040] 在本实施例中,技术人员或者管理员可以为特定网络业务预先配置传输质量有保 障的链路,并将所述链路的信息配置在网络设备上。其中,所述链路的信息包括有:链路的 优先级以及链路的下一跳地址等。
[0041] 在本步骤中,网络设备在解析出被解析域名对应的A记录地址后,获取为被解析 域名配置的链路信息,也就是获取为所述被解析域名对应的特定网络业务配置的链路信 息,然后判断路由表中是否保存有所述A记录地址与所述链路信息中下一跳地址的对应关 系。如果路由表中保存有所述A记录地址与所述链路信息中下一跳地址的对应关系,则执 行步骤S107。如果路由表中没有保存所述A记录地址与所述链路信息中下一跳地址的对应 关系,则执彳丁步骤S106。
[0042] 在路由表中存储的被解析域名预先配置的链路的下一跳地址与A记录地址的对 应关系,如表1所示,但不限于表1所示的表达形式,只要是能表达上述对应关系即可。
[0043] 表 1
[0044]
[0045] 在步骤S105中,根据步骤S104获取到A记录地址查找路由表,如果能够查找到与 所述A记录地址匹配的路由表项,则判断该路由表项中所述A记录地址对应的下一跳地址 是否为所述预先配置的链路的下一跳地址,如果是,则可以确定路由表中已保存被解析域 名预先配置的链路的下一跳地址与A记录地址的对应关系,反之,没有保存。
[0046] 步骤S106,将为被解析域名预先配置的链路的下一跳地址和A记录地址的对应关 系更新到路由表中。
[0047] 当在步骤S105确定路由表中没有保存被解析域名预先配置的链路的下一跳地 址与A记录地址的对应关系时,在步骤S106,将为被解析域名预先配置的链路的下一跳 地址和A记录地址的对应关系存入路由表中。举例来说,假设为百度预先配置的链路 的下一跳地址为10.29.0. 1,网络设备从DNS应答报文中解析出的百度的A记录地址为 61. 135. 169. 125,则网络设备将所述A记录地址61. 135. 169. 125与下一跳地址10. 29. 0. 1 的对应关系存储在路由表中,以形成表1所不的路由表。
[0048] 需要说明的是,在本发明实施例中,可以为被解析域名预先配置一条或者多条链 路,在为被解析域名预先配置多条链路时,为每条链路设置优先级信息,并且将优先级信息 更新到路由表中。例如,为被解析域名WWW. baidu. com预先配置3条链路,分别为Linkl、 Link2和Link3,按链路的优先级高低排序为Link2>Linkl>Link3,将该链路的优先级更新 到路由表。
[0049] 另外,在所述DNS应答报文中携带有所述被解析域名的多个A记录地址时,网络设 备可以将每个A记录地址与所述链路的下一跳地址的对应关系更新到路由表中。进一步举 例来说,DNS应答报文中携带的多个A记录地址分别为IP1和IP2,而链路Linkl、Link2和 Link3各自对应的下一跳地址分别为IPA、IPB和IPC,则网络设备可以将如下对应关系保存 在路由表中:IP1 - IPA,IP1 - IPB,IP1 - IPC 以及 IP2 - IPA,IP2 - IPB,IP2 - IPC。
[0050] 步骤S107,将DNS应答报文转发至客户端设备。
[0051] 步骤S108,在接收到客户端设备发送的业务报文时,查询所述路由表以进行转发。
[0052] 根据本发明的优选实施例,在接收到客户端设备发送的业务报文时,根据业务报 文的目的IP地址查询步骤S106更新后的路由表,如果目的IP地址匹配到多个链路的下一 跳地址,则可以将所述业务报文转发到优先级最高的链路的下一跳,例如,业务报文的目的 IP地址为IP1,根据IP1查询路由表,与IP匹配的路由表项包括IP1 - IPA,IP1 - IPB,IP 1 一 IPC,且IPB对应的链路Link2的优先级最高,即业务报文的目的IP地址的下一跳地址 为Link2对应的下一跳的地址IPB,则可以将业务报文转发到IPB,可以理解的是,如果目的 IP地址只匹配到一个预先配置的链路的下一跳地址,则可以将业务报文转发到该链路的下 一跳。本发明实施例实现通过预先配置的链路转发业务报文,保障业务的数据传输质量。
[0053] 图2示出了本发明一示例性实施例示出的另一种报文转发的方法的流程图。
[0054] 参照图2,该实施例通过客户端设备、网络设备以及服务器三者之间的交互,详细 描述了本发明实施例的报文转发的方法。
[0055] 步骤S201,客户端设备向服务器发送DNS请求报文。
[0056] 步骤S202,服务器向客户端设备发送DNS应答报文。
[0057] 步骤S203,网络设备接收服务器向客户端设备发送的DNS应答报文。
[0058] 步骤S204,网络设备从DNS应答报文中解析出被解析域名。
[0059] 步骤S205,网络设备判断被解析域名是否与预设的域名特征匹配,如果是,则执行 步骤S206,如果否,则执行步骤S209。
[0060] 步骤S206,网络设备将从DNS应答报文中解析出与被解析域名对应的A记录地址。
[0061] 步骤S207,网络设备判断路由表中是否已保存为被解析域名预先配置的链路的下 一跳地址和A记录地址的对应关系,如果是,则执行步骤S209,如果否,则执行步骤S208。
[0062] 步骤S208,网络设备将为被解析域名预先配置的链路的下一跳地址和A记录地址 的对应关系更新到路由表中,执行步骤S209。
[0063] 步骤S209,网络设备将DNS应答报文转发至客户端设备。
[0064] 步骤S210,客户端设备向网络设备发送业务报文。
[0065] 步骤S211,网络设备根据业务报文的目的IP地址查询路由表,以转发所述业务报 文。
[0066] 在本实施例中,网络设备可以将访问特定域名的业务报文通过为该特定域名预先 配置的链路进行转发,例如,客户端设备在进行WWW. baidu. com的业务访问时,其业务报文 中的目的IP地址是61. 135. 169. 125,网络设备通过该目的IP地址查询路由表,且路由表中 与该目的IP地址对应的链路的下一跳地址为10. 29. 0. 1,则网络设备根据地址10. 29. 0. 1, 重新将该业务报文进行封装,以转发至所述链路连接的下一跳设备,从而实现通过预先配 置的链路承载特定网络业务的流量,确保特定网络业务的传输质量。
[0067] 应用本发明实施例,可以预先为特定域名配置转发链路,并在DNS应答报文中携 带的被解析域名为特定域名时,将为所述被解析域名预先配置的链路的下一跳地址和所述 被解析域名对应的A记录地址的对应关系更新至路由表中,并在接收到业务报文时,根据 该路由表进行转发,以实现通过预先配置的链路承载特定的域名访问,从而在带宽紧张、业 务激增的情况下,保障特定网络业务的域名访问的通畅性和可靠性,进而保障其数据传输 质量,提高用户体验。
[0068] 与前述报文转发的方法的实施例相对应,本发明还提供了报文转发的装置的实施 例。
[0069] 本发明报文转发的装置400的实施例可以应用在网络设备上。装置实施例可以通 过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑 意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机程序指令读 取到内存中运行形成的。从硬件层面而言,如图3所示,为本发明一示例性实施例示出的 一种报文转发的装置的一硬件结构示意图,除了图3所示的处理器、内存、网络接口、以及 非易失性存储器之外,实施例中报文转发的装置400所在的设备通常根据该设备的实际功 能,还可以包括其他硬件,对此不再赘述。
[0070] 图4示出了本发明一示例性实施例示出的一种报文转发的装置的结构框图。
[0071] 参照图4,一种报文转发的装置400,应用在网络设备上,所述装置包括:报文接收 单元401、第一判断单元402、解析单元403、第二判断单元404、第二转发单元405、第一更新 单元406以及第一转发单元407。
[0072] 报文接收单元401用于在客户端设备向DNS服务器发出DNS请求报文后,接收DNS 服务器向客户端设备发送的DNS应答报文。
[0073] 第一判断单元402用于从DNS应答报文中解析出被解析域名后,判断被解析域名 是否匹配预设的域名特征。
[0074] 解析单元403用于在被解析域名匹配预设的域名特征时,从DNS应答报文中解析 出与被解析域名对应的A记录地址。
[0075] 第二判断单元404用于在将为所述被解析域名预先配置的链路的下一跳地址和 所述A记录地址的对应关系更新到路由表中之前,判断路由表中是否已保存为被解析域名 预先配置的链路的下一跳地址和A记录地址的对应关系。
[0076] 第二转发单元405用于在第二判断单元404确定路由表中已保存为被解析域名预 先配置的链路的下一跳地址和A记录地址的对应关系时,将DNS应答报文转发至客户端设 备。
[0077] 第一更新单元406用于在第二判断单元404确定路由表中没有保存为被解析域名 预先配置的链路的下一跳地址和A记录地址的对应关系时,将为被解析域名预先配置的链 路的下一跳地址和A记录地址的对应关系更新到路由表中。
[0078] 作为本发明的一种可选实施例,当第二判断单元404确定路由表中没有保存为被 解析域名预先配置的链路的下一跳地址和A记录地址的对应关系时,第一更新单元406将 可以为所述被解析域名预先配置的链路的下一跳地址和所述A记录地址的对应关系更新 到路由表中。
[0079] 第一转发单元407用于在接收到客户端设备发送的业务报文时,查询路由表以进 行转发。
[0080] 作为本发明的一种可选实施例,所述装置还包括第三转发单元408,用于在第一判 断单元402确定被解析域名不匹配预设的域名特征时,将DNS应答报文转发至客户端设备。
[0081] 根据本发明的优选实施例,报文转发的装置400还包括第二更新单元409,用于 在为被解析域名预先配置的链路有多条时,将为每条链路设置的优先级信息更新到路由表 中。
[0082] 基于所述报文转发装置400还包括第二更新单元409,本发明还提供一种优选实 施例,如图5所示,图5是本发明一示例性实施例示出的另一种报文转发的装置的结构框 图,第一转发单元407包括查询子单元4071和报文转发子单元4072,其中查询子单元4071 用于根据业务报文的目的IP地址查询更新后的路由表,而报文转发子单元4072用于在目 的IP地址匹配到多个链路的下一跳地址时,将业务报文转发到优先级最高的链路的下一 跳。
[0083] 上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的 实现过程,在此不再赘述。
[0084] 对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实 施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件 说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以 不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的 需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付 出创造性劳动的情况下,即可以理解并实施。
[0085] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精 神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【主权项】
1. 一种报文转发的方法,应用在网络设备上,其特征在于,所述方法包括: 在客户端设备向DNS服务器发出DNS请求报文后,接收所述DNS服务器向所述客户端 设备发送的DNS应答报文; 从所述DNS应答报文中解析出被解析域名后,判断所述被解析域名是否匹配预设的域 名特征; 如果匹配,则从所述DNS应答报文中解析出与所述被解析域名对应的A记录地址; 将为所述被解析域名预先配置的链路的下一跳地址和所述A记录地址的对应关系更 新到路由表中; 在接收到客户端设备发送的业务报文时,查询所述路由表以进行转发。2. 根据权利要求1所述的方法,其特征在于,在为所述被解析域名预先配置的链路有 多条时,所述方法还包括: 将每条链路的优先级信息更新到路由表中。3. 根据权利要求2所述的方法,其特征在于,在接收到客户端设备发送的业务报文时, 查询所述路由表以进行转发包括: 根据所述业务报文的目的IP地址查询所述更新后的路由表; 如果所述目的IP地址匹配到多条链路的下一跳地址,则将所述业务报文转发到优先 级最尚的链路的下一跳。4. 根据权利要求1所述的方法,其特征在于,所述将为所述被解析域名预先配置的链 路的下一跳地址和所述A记录地址的对应关系更新到路由表中之前,所述方法还包括: 判断路由表中是否已保存为所述被解析域名预先配置的链路的下一跳地址和所述A 记录地址的对应关系; 如果已保存,则将所述DNS应答报文转发至客户端设备; 如果没有保存,则将为所述被解析域名预先配置的链路的下一跳地址和所述A记录地 址的对应关系更新到路由表中。5. 根据权利要求1所述的方法,其特征在于,所述方法还包括: 如果确定所述被解析域名不匹配预设的域名特征,则将所述DNS应答报文转发至客户 端设备。6. -种报文转发的装置,应用在网络设备上,其特征在于,所述装置包括: 报文接收单元,用于在客户端设备向DNS服务器发出DNS请求报文后,接收所述DNS服 务器向所述客户端设备发送的DNS应答报文; 第一判断单元,用于从所述DNS应答报文中解析出被解析域名后,判断所述被解析域 名是否匹配预设的域名特征; 解析单元,用于在被解析域名匹配预设的域名特征时,从所述DNS应答报文中解析出 与所述被解析域名对应的A记录地址; 第一更新单元,用于将为所述被解析域名预先配置的链路的下一跳地址和所述A记录 地址的对应关系更新到路由表中; 第一转发单元,用于在接收到客户端设备发送的业务报文时,查询所述路由表以进行 转发。7. 根据权利要求6所述的装置,其特征在于,所述装置还包括: 第二更新单元,用于在为所述被解析域名预先配置的链路有多条时,将每条链路的优 先级信息更新到路由表中。8. 根据权利要求7所述的装置,其特征在于,第一转发单元包括: 查询子单元,用于根据所述业务报文的目的IP地址查询所述更新后的路由表; 报文转发子单元,用于在所述目的IP地址匹配到多个链路的下一跳地址时,将所述业 务报文转发到优先级最高的链路的下一跳。9. 根据权利要求6所述的装置,其特征在于,所述装置还包括: 第二判断单元,用于在将为所述被解析域名预先配置的链路的下一跳地址和所述A记 录地址的对应关系更新到路由表中之前,判断路由表中是否已保存为所述被解析域名预先 配置的链路的下一跳地址和所述A记录地址的对应关系; 第二转发单元,用于在已保存时,将所述DNS应答报文转发至客户端设备; 所述第一更新单元,用于在没有保存时,将为所述被解析域名预先配置的链路的下一 跳地址和所述A记录地址的对应关系更新到路由表中。10. 根据权利要求6所述的装置,其特征在于,所述装置还包括: 第三转发单元,用于在确定所述被解析域名不匹配预设的域名特征时,将所述DNS应 答报文转发至客户端设备。
【文档编号】H04L29/12GK105991793SQ201510279366
【公开日】2016年10月5日
【申请日】2015年5月27日
【发明人】王金威
【申请人】杭州迪普科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1