The invention discloses a data acquisition method based on DPDK domain, the main program to capture DNS data packets, and transmits the DNS data packet into the shared memory; the sharing of the DNS data in memory for processing the data packet domain, and the domain name data read to the virtual memory; wherein, the the domain name data including the DNS packet domain, A records. Thus, a domain name data acquisition method provided by the embodiment of the invention, the Intel based on DPDK technology, relying on its high performance reach 1 million per second receive BPS packets, to capture DNS packets, so as to improve the efficiency of data acquisition of the domain name, can make the DNS backup system to provide better DNS services. The present invention also provides a domain name data acquisition system and device, which can also achieve the above technical effect.
【技术实现步骤摘要】
一种域名数据采集方法、系统和装置
本专利技术涉及网络通信领域,更具体地说,涉及一种域名数据采集方法、系统和装置。
技术介绍
目前网络通信中,用户可以不用记住IP地址就能方便地访问互联网,是由于DNS解析功能可以将域名解析为IP地址,以通过域名就能与对应IP的服务器连接。现在DNS系统仍在很多隐患,由于DNS不同层次的域名解析服务器存在依赖关系,一旦位于高层次网络中的DNS服务器遭到攻击而陷入瘫痪,则用户无法正常获得DNS服务。同时目前存在很多针对DNS的攻击,如DoS攻击,DNS缓存污染,DNS重定向,DNS劫持等,这些攻击都会威胁DNS的安全性和可用性,影响用户正常使用互联网。对现有域名系统设计备份系统也逐渐成为国内外专家学者的研究热点。DNS备份系统即在DNS服务器不能正常为用户提供域名解析服务时,通过预先存储的大量域名解析数据,直接向用户返回域名解析数据。而获取这些预先存储的域名数据通常会占用大量的时间,导致不能为用户提供快速的为用户提供正常的服务。因此,如何快速获取到域名数据,是本领域技术人员需要解决的问题。
技术实现思路
本专利技术的目的在于提供一种域名数据采集方法、系统和装置,快速获取到域名数据。为实现上述目的,本专利技术实施例提供了如下技术方案:一种域名数据采集方法,包括:利用DPDK主程序捕获DNS数据包,并将所述DNS数据包写入共享内存;将所述共享内存中的所述DNS数据包进行处理得到域名数据,并将所述域名数据读至虚拟内存;其中,所述域名数据包括所述DNS数据包的域名、A记录。其中,所述将所述域名数据读至虚拟内存,包括:利用至少两个线程将所述域 ...
【技术保护点】
一种域名数据采集方法,其特征在于,包括:利用DPDK主程序捕获DNS数据包,并将所述DNS数据包写入共享内存;将所述共享内存中的所述DNS数据包进行处理得到域名数据,并将所述域名数据读至虚拟内存;其中,所述域名数据包括所述DNS数据包的域名、A记录。
【技术特征摘要】
1.一种域名数据采集方法,其特征在于,包括:利用DPDK主程序捕获DNS数据包,并将所述DNS数据包写入共享内存;将所述共享内存中的所述DNS数据包进行处理得到域名数据,并将所述域名数据读至虚拟内存;其中,所述域名数据包括所述DNS数据包的域名、A记录。2.根据权利要求1所述的方法,其特征在于,所述将所述域名数据读至虚拟内存,包括:利用至少两个线程将所述域名数据读至虚拟内存。3.根据权利要求1所述的方法,其特征在于,所述利用DPDK主程序捕获DNS数据包,并将所述DNS数据包写入共享内存,包括:利用DPDK主程序检查接收内核的接收队列是否有数据包;若是,则读取所述数据包,并判断所述数据包是否为DNS数据包;若是,则将所述DNS数据包写入共享内存。4.根据权利要求3所述的方法,其特征在于,所述判断所述数据包是否为DNS数据包,包括:利用预设ACL规则对所述数据包进行匹配以判断所述数据包是否为DNS数据包。5.根据权利要求3所述的方法,其特征在于,所述将所述DNS数据包写入共享内存之前,还包括:通过检查所述DNS数据包的UDP首部,判断所述DNS数据包是否为分片数据包;若是,则继续接收对应所述DNS数据包的其他分片数据包,并将所述所有分片重组得到新的DNS数据包;则所述将所述DNS数据包写入共享内存,包括:将所述新的DNS数据包写入共享内存。6.根据权利要求1至5任意一项所述的方法,其特征在...
【专利技术属性】
技术研发人员:丁瑞锋,
申请(专利权)人:郑州云海信息技术有限公司,
类型:发明
国别省市:河南,41
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。