一种减小DNS报文长度的方法和装置制造方法及图纸

技术编号:17307672 阅读:17 留言:0更新日期:2018-02-19 04:55
本发明专利技术公开了一种减小DNS报文长度的方法和装置,此方法包括:步骤1,权威DNS服务器接收访问请求后,构建DNS应答报文;步骤2,确定所述访问请求的来源网络区域,获取本地DNS在所述来源网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量;步骤3,判断所述DNS应答报文的长度大于传输协议数据包限定长度与所述解析信息的信息容量的差值时,减少DNS应答报文中权威字段的内容并相应修改附加字段的内容,将更新后的DNS应答报文发送至所述访问请求的发送方。本发明专利技术通过减少权威字段和修改附加字段方式,达到减少DNS报文长度的目的,而且不会引起现有技术中其它减少DNS应答报文长度方法导致的缺点。

A method and device for reducing the length of DNS message

The invention discloses a method and a device for reducing DNS packet length, this method includes the following steps: Step 1, the DNS server receives the access request authority after the construction of DNS response message; step 2, the source network region is determined by the access request, the information capacity analysis of information access to the local DNS in the domain analysis process the source of regional network the DNS response message from the access request in the domain name to the domain name in; step 3, determine the difference between information capacity of the DNS response message is larger than the length of the transmission protocol data packet length is limited with the analysis of information, reduce the DNS response message authority and modify the contents of the fields additional field content, will send the updated DNS response message to the access request of the sender. The invention achieves the purpose of reducing the length of the DNS message by reducing the authority field and modifying the additional field mode, and does not cause the shortcomings of other DNS reduction message length methods in the existing technology.

【技术实现步骤摘要】
一种减小DNS报文长度的方法和装置
本专利技术涉及互联网
,尤其涉及一种减小DNS报文长度的方法和装置。
技术介绍
DNS是网络访问过程中重要的一环。当本地域名服务器(LocalDomainNameServer,缩写:LDNS)接收到本地的一个客户端发送的域名解析请求时,LDNS向域名服务器(DomainNameServer,缩写:DNS)发送该域名解析请求。DNS解析出域名解析请求中的访问目标域名,判断存在此访问目标域名对应的网络服务器的IP地址列表时,将相应的IP地址封装于应答包返回至LDNS。LDNS将此应答包括内容发送至客户端,客户端根据IP地址进行网络访问。客户端到LDNS、LDNS到权威DNS一般通过用户数据报协议(UserDatagramProtocol,简称UDP)协议进行传输。但是当数据包大于512字节时,就会触发通过TCP协议传输或者截断DNS应答报文中的权威字段(auth)和附加字段(add),达到正常交互的目的。现有技术中的方法及缺点包括:截断DNS报文中的auth字段和add字段会出现校验错误。部分客户端不支持TCP协议进行解析服务导致解析失败。通过减少解析结果中IP个数的方法来控制DNS应答报文长度的方法,会导致在多台设备服务时负载不均衡。通过减少cname的方式减少DNS应答报文长度的方法在现在部分融合CDN的业务模式下被禁止。通过全局删除auth和add字段,控制DNS报文长度的方法,会导致无法从权威服务器本身获取NS记录和NS记录的A记录,LDNS的NS记录和NS记录的A记录完全信任上一级权威服务器的结果,影响系统的健壮性,且会给问题查询带来麻烦。通过引入lvs减少IP个数的方法,会提高系统复杂度,lvs本身会带来其他问题。现有技术中的控制应答包报文长度的方法中,无法知晓解析链其他部分占用的字节数,站在整个解析链的角度解决问题,会导致虽然权威服务器发出的应答包不超过512字节,但是LDNS解析时加上解析链其他环节的应答结果,应答包超过了512字节,如何合理控制DNS应答报文长度成为要解决的技术问题。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种减小DNS报文长度的方法和装置。本专利技术提供了一种减少DNS应答报文长度的方法,包括:步骤1,权威DNS服务器接收访问请求后,构建DNS应答报文;步骤2,确定所述访问请求的来源网络区域,获取本地DNS在所述来源网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量;步骤3,判断所述DNS应答报文的长度大于传输协议数据包限定长度与所述解析信息的信息容量的差值时,减少DNS应答报文中权威字段的内容并相应修改附加字段的内容,将更新后的DNS应答报文发送至所述访问请求的发送方。上述减少DNS应答报文长度的方法还具有以下特点:所述步骤1和步骤2之间还包括步骤1’,步骤1’包括:获取本地DNS在各网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量,确定最大的信息容量,判断所述DNS应答报文的长度大于传输协议数据包限定长度与所述最大的信息容量的差值时,执行步骤2。上述减少DNS应答报文长度的方法还具有以下特点:所述减少DNS应答报文中权威字段的内容并相应修改附加字段的内容包括:删除所述DNS应答报文中权威字段的部分NS记录,保留至少一条NS记录,将所述附加字段的A记录修改为与所保留的NS记录相对应的A记录。上述减少DNS应答报文长度的方法还具有以下特点:步骤1’还包括:判断所述DNS应答报文的长度不大于传输协议数据包限定长度与所述最大的信息容量的差值时,将所述DNS应答报文发送至所述访问请求的发送方;所述步骤3还包括:判断所述DNS应答报文的长度不大于传输协议数据包限定长度与所述解析信息的信息容量的差值时,将所述DNS应答报文发送至所述访问请求的发送方。上述减少DNS应答报文长度的方法还具有以下特点:获取本地DNS在所述来源网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量包括:维护域名关联列表,此域名关联列表包括本域名和对应的解析链入口域名;根据此域名关联列表获取相应的解析链信息容量列表,此解析链信息容量列表包括域名、网络区域、解析链信息容量,将从此解析链信息容量列表中获知的解析链信息容量作为从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量。本专利技术还提供了一种减少DNS应答报文长度的装置,应用于权威DNS服务器,包括:构建模块,用于在接收访问请求后构建DNS应答报文;来源网络区域信息容量获取模块,用于确定所述访问请求的来源网络区域,获取本地DNS在所述来源网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量;第一判断模块,用于判断所述DNS应答报文的长度是否大于传输协议数据包限定长度与所述解析信息的信息容量的差值;报文重装模块,用于在所述判断模块判断所述DNS应答报文的长度大于传输协议数据包限定长度与所述解析信息的信息容量的差值时,减少DNS应答报文中权威字段的内容并相应修改附加字段的内容,将更新后的DNS应答报文传输至发送模块;所述发送模块,用于将收到的更新后的DNS应答报文发送至所述访问请求的发送方。上述减少DNS应答报文长度的方法还具有以下特点:还包括:多网络区域信息容量获取模块,用于获取本地DNS在各网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量,确定最大的信息容量;第二判断模块,用于判断所述DNS应答报文的长度是否大于传输协议数据包限定长度与所述最大的信息容量的差值,如果是,触发所述第一判断模块执行判断。上述减少DNS应答报文长度的方法还具有以下特点:所述报文重装模块还用于使用以下方法减少DNS应答报文中权威字段的内容并相应修改附加字段的内容:删除所述DNS应答报文中权威字段的部分NS记录,保留至少一条NS记录,将所述附加字段的A记录修改为与所保留的NS记录相对应的A记录。上述减少DNS应答报文长度的方法还具有以下特点:所述第一判断模块还用于判断所述DNS应答报文的长度不大于传输协议数据包限定长度与所述最大的信息容量的差值时,触发所述发送模块发送所述构建模块生成的DNS应答报文;所述第二判断模块还用于判断所述DNS应答报文的长度不大于传输协议数据包限定长度与所述最大的信息容量的差值时,触发所述发送模块发送所述构建模块生成的DNS应答报文;上述减少DNS应答报文长度的方法还具有以下特点:所述装置还包括信息容量获取模块,用于维护域名关联列表,此域名关联列表包括本域名和对应的解析链入口域名;根据此域名关联列表获取相应的解析链信息容量列表,此解析链信息容量列表包括域名、网络区域、解析链信息容量,将从此解析链信息容量列表中获知的解析链信息容量作为从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量。本专利技术主动探测本域解析域名的解析链其他部分数据长度,在控制应答报文长度时,考虑解析链其他部分数据长度,使LDNS处构建DNS应答报文时不超出通信协议所需的报文长度,本专利技术还通本文档来自技高网
...
一种减小DNS报文长度的方法和装置

【技术保护点】
一种减少DNS应答报文长度的方法,其特征在于,包括:步骤1,权威DNS服务器接收访问请求后,构建DNS应答报文;步骤2,确定所述访问请求的来源网络区域,获取本地DNS在所述来源网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量;步骤3,判断所述DNS应答报文的长度大于传输协议数据包限定长度与所述解析信息的信息容量的差值时,减少DNS应答报文中权威字段的内容并相应修改附加字段的内容,将更新后的DNS应答报文发送至所述访问请求的发送方。

【技术特征摘要】
1.一种减少DNS应答报文长度的方法,其特征在于,包括:步骤1,权威DNS服务器接收访问请求后,构建DNS应答报文;步骤2,确定所述访问请求的来源网络区域,获取本地DNS在所述来源网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量;步骤3,判断所述DNS应答报文的长度大于传输协议数据包限定长度与所述解析信息的信息容量的差值时,减少DNS应答报文中权威字段的内容并相应修改附加字段的内容,将更新后的DNS应答报文发送至所述访问请求的发送方。2.如权利要求1所述的减少DNS应答报文长度的方法,其特征在于,所述步骤1和步骤2之间还包括步骤1’,步骤1’包括:获取本地DNS在各网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量,确定最大的信息容量,判断所述DNS应答报文的长度大于传输协议数据包限定长度与所述最大的信息容量的差值时,执行步骤2。3.如权利要求1所述的减少DNS应答报文长度的方法,其特征在于,所述减少DNS应答报文中权威字段的内容并相应修改附加字段的内容包括:删除所述DNS应答报文中权威字段的部分NS记录,保留至少一条NS记录,将所述附加字段的A记录修改为与所保留的NS记录相对应的A记录。4.如权利要求2所述的减少DNS应答报文长度的方法,其特征在于,步骤1’还包括:判断所述DNS应答报文的长度不大于传输协议数据包限定长度与所述最大的信息容量的差值时,将所述DNS应答报文发送至所述访问请求的发送方;所述步骤3还包括:判断所述DNS应答报文的长度不大于传输协议数据包限定长度与所述解析信息的信息容量的差值时,将所述DNS应答报文发送至所述访问请求的发送方。5.如权利要求1所述的减少DNS应答报文长度的方法,其特征在于,获取本地DNS在所述来源网络区域的解析域名过程中从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量包括:维护域名关联列表,此域名关联列表包括本域名和对应的解析链入口域名;根据此域名关联列表获取相应的解析链信息容量列表,此解析链信息容量列表包括域名、网络区域、解析链信息容量,将从此解析链信息容量列表中获知的解析链信息容量作为从所述访问请求中的域名至所述DNS应答报文中的域名的解析信息的信息容量。6.一种减少DNS应答报文长度的装置,其特征在于,应用于权威DNS服务器,包括:构建模块,用于在接收访问请求后构建...

【专利技术属性】
技术研发人员:符立佳魏静明苗辉
申请(专利权)人:贵州白山云科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1