【技术实现步骤摘要】
一种数据处理方法、装置、电子设备及存储介质
[0001]本申请涉及计算机
,尤其涉及一种数据处理方法、装置、电子设备及存储介质。
技术介绍
[0002]域名服务器(Domain Name Server,DNS)是进行域名(domain name)和与之相对应的IP地址(IP address)转换的服务器。DNS中保存了一张域名(domain name)和与之相对应的IP地址(IP address)的表,以解析消息的域名。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS缓存是指在正常访问IP地址之后,系统会将这个IP地址存储起来,当再次访问的时候,系统就会直接把本地的DNS缓存提取显示,是加速了网址的解析,提高DNS请求吞吐量的常用方案。
[0003]目前主流的开源DNS软件有bind、Unbound或DNS厂商等,在缓存处理机制上一般采用以下两种方式:
[0004]其一,采用缓存全局共享,在多线程访问过程中通过读写锁的方式对数据进行缓存保护,该方式需要消耗大量的锁,降 ...
【技术保护点】
【技术特征摘要】
1.一种数据处理方法,应用于域名服务器DNS,所述DNS配置有N个收包线程和M个处理线程,所述N和M为大于0的整数,其特征在于,所述方法包括:接收客户端设备的访问请求;其中,所述访问请求携带至少一个待处理的数据包;将各数据包发送给所述N个收包线程进行解析,解析得到所述各数据包各自对应的访问信息;根据所述各数据包各自对应的访问信息,将所述各数据包分流到所述M个处理线程中;当所述各数据包分流到所述M个处理线程后,通过所述M个处理线程对各自所管辖的数据包进行缓存处理。2.如权利要求1所述的方法,其特征在于,所述访问信息包括数据包的请求域名、请求类型;所述根据所述各数据包各自对应的访问信息,将所述各数据包分流到所述M个处理线程中,包括:根据所述各数据包各自对应的请求域名、请求类型,计算所述各数据包各自对应的哈希值;将相同哈希值对应的数据包分流到同一个处理线程中。3.如权利要求1所述的方法,其特征在于,所述通过所述M个处理线程对各自所管辖的数据包进行缓存处理,包括:当确定出第一数据包为请求数据包类型时,确定第一处理线程的无锁缓存表中是否记录有所述第一数据包的第一请求域名;其中,所述第一数据包为所述第一处理线程所管辖的数据包;若是,则生成响应数据包,并将所述响应数据包发送给所述客户端设备;若否,则生成转发session请求,并将所述转发session请求发送给下一个DNS;其中,所述转发session请求用于请求获取所述第一数据包的响应数据包。4.如权利要求1所述的方法,其特征在于,所述通过所述M个处理线程对各自所管辖的数据包进行缓存处理,包括:当确定出第一数据包为应答数据包类型时,根据所述第一数据包中的session标识,确定是否查询到所述session标识对应的session信息;其中,所述第一数据包为所述第一处理线程所管辖的数据包;若否,则将所述第一数据包删除;若是,则删除所述session信息,将所述第一数据包的第一请求域名添加至所述第一处理线程的无锁缓存表中,并向所述客户端设备返回访问请求响应。5.如权利要求1
‑
4任一项所述的方法,其特征在于,所述M个处理线程包括P个无锁环形队列,用于缓存所述各数据包,以及所述各数据包各自对应的访问信息,所述P为等于M的整数。6.一种数据处理装置,应用于域名服务器DNS,所述DNS配置有N个收包线程和M个处理线程,所述N和M为大于0的整数,其特征在于,所述装置包括:接收模块,用于接...
【专利技术属性】
技术研发人员:乔现朋,常力元,佟欣哲,陈奇,郑直,宋悦,
申请(专利权)人:天翼安全科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。