CN113691630B - Dns请求处理方法、装置、系统、电子设备和存储介质 - Google Patents

Dns请求处理方法、装置、系统、电子设备和存储介质 Download PDF

Info

Publication number
CN113691630B
CN113691630B CN202110990175.1A CN202110990175A CN113691630B CN 113691630 B CN113691630 B CN 113691630B CN 202110990175 A CN202110990175 A CN 202110990175A CN 113691630 B CN113691630 B CN 113691630B
Authority
CN
China
Prior art keywords
dns request
dns
session identifier
waiting time
response information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110990175.1A
Other languages
English (en)
Other versions
CN113691630A (zh
Inventor
彭昊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Douyin Vision Co Ltd
Douyin Vision Beijing Co Ltd
Original Assignee
Beijing ByteDance Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN202110990175.1A priority Critical patent/CN113691630B/zh
Publication of CN113691630A publication Critical patent/CN113691630A/zh
Application granted granted Critical
Publication of CN113691630B publication Critical patent/CN113691630B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本公开实施例涉及互联网技术领域,公开了一种DNS请求处理方法、装置、系统、电子设备和存储介质。方法包括:发送DNS请求,所述DNS请求包括会话标识以及等待时间;接收DNS请求对应的响应信息,其中,所述响应信息,由服务器在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成。本公开在DNS请求中添加了会话标识和等待时间,会话标识和等待时间一一对应,便于服务器对多个DNS请求进行动态整合,不仅解决了现有技术只能通过客户端对多个DNS请求进行打包,HTTPDNS服务器只能被动响应,打包方式比较固定而且单一的问题,还提升了流量利用率。

Description

DNS请求处理方法、装置、系统、电子设备和存储介质
技术领域
本公开实施例涉及互联网技术领域,特别涉及一种DNS请求处理方法、装置、系统、电子设备和存储介质。
背景技术
HTTPDNS(基于HTTP协议的域名系统)利用HTTP协议与DNS服务器交互,能够代替传统的基于UDP(User Datagram Protocol,用户数据报协议)的DNS交互,绕开运营商的本地DNS服务器,有效防止域名劫持,提高域名解析效率。常用的批量HTTPDNS技术,通过客户端将多个域名请求通过一个DNS请求报文同时发送给HTTPDNS服务器,再通过HTTPDNS服务器同时将所有这些域名请求的响应体一起打包发送回客户端。
然而,批量HTTPDNS技术只适用于能够提前将一些高频或者重要的域名放进去的预加载、预连接等场景,必须提前知道哪些DNS请求可以一起发送,只能通过客户端对这些DNS请求进行打包,HTTPDNS服务器只能被动响应,打包方式比较固定而且单一。
发明内容
本公开实施方式的目的在于提供一种DNS请求处理方法、装置、系统、电子设备和存储介质,能够在服务器侧动态地将多个DNS请求自动整合,并将整合在一起的多个DNS请求所对应的各响应信息打包生成一个响应信息返回给客户端。
为解决上述技术问题,本公开的实施方式提供了一种DNS请求发送方法,所述方法包括:
发送DNS请求,所述DNS请求包括会话标识以及等待时间;
接收DNS请求对应的响应信息,其中,所述响应信息,由服务器在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成。
可选的,所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,在所述发送DNS请求之前,所述方法还包括:
分别为待发送的不同DNS请求设置不同级别的优先级,以使所述服务器能够根据所述优先级信息,确定响应所述不同DNS请求的先后顺序。
可选的,在所述分别为待发送的不同DNS请求设置不同级别的优先级之后,所述方法还包括:
在待发送的DNS请求的优先级级别不超过预设级别时,获取已发送的DNS请求中等待时间未结束的第一会话标识;
复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为所述第一会话标识。
可选的,在所述获取已发送的DNS请求中等待时间未结束的第一会话标识之后,所述方法还包括:
判断所述第一会话标识的剩余等待时间是否小于预设阈值,获取判断结果;
若所述判断结果为所述剩余等待时间小于所述预设阈值,则不复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为第二会话标识。
可选的,所述DNS请求的报文包括会话标识字段、优先级字段、等待时间字段以及扩展字段。
本公开的实施方式还提供了一种DNS请求响应方法,所述方法包括:
接收DNS请求,所述DNS请求包括会话标识以及等待时间;
在所述等待时间内,打包生成DNS请求对应的响应信息,其中,所述响应信息包括所述会话标识对应的至少一个DNS请求的响应信息;
在所述等待时间结束时,将所述响应信息发送给客户端。
可选的,所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,在所述打包生成DNS请求对应的响应信息之前,所述方法还包括:
在所述会话标识对应至少两个DNS请求时,根据所述优先级信息,确定响应所述至少两个DNS请求的先后顺序;
根据所述先后顺序,分别生成所述至少两个DNS请求的响应信息。
本公开的实施方式还提供了一种DNS请求发送装置,所述装置包括:
第一发送模块,用于发送DNS请求,所述DNS请求包括会话标识以及等待时间;
第一接收模块,用于接收DNS请求对应的响应信息,其中,所述响应信息,由服务器在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成。
可选的,所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,所述装置还包括设置模块,在所述发送DNS请求之前,
所述设置模块,用于分别为待发送的不同DNS请求设置不同级别的优先级,以使所述服务器能够根据所述优先级信息,确定响应所述不同DNS请求的先后顺序。
可选的,所述装置还包括获取模块和复用模块,在所述分别为待发送的不同DNS请求设置不同级别的优先级之后,
所述获取模块,用于在待发送的DNS请求的优先级级别不超过预设级别时,获取已发送的DNS请求中等待时间未结束的第一会话标识;
所述复用模块,用于复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为所述第一会话标识。
可选的,所述装置还包括判断模块,在所述获取已发送的DNS请求中等待时间未结束的第一会话标识之后,
所述判断模块,用于判断所述第一会话标识的剩余等待时间是否小于预设阈值,获取判断结果;
所述复用模块,还用于若所述判断结果为所述剩余等待时间小于所述预设阈值,则不复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为第二会话标识。
可选的,所述DNS请求的报文包括会话标识字段、优先级字段、等待时间字段以及扩展字段。
本公开的实施方式还提供了一种DNS请求响应装置,所述装置包括:
第二接收模块,用于接收DNS请求,所述DNS请求包括会话标识以及等待时间;
生成模块,用于在所述等待时间内,打包生成DNS请求对应的响应信息,其中,所述响应信息包括所述会话标识对应的至少一个DNS请求的响应信息;
第二发送模块,用于在所述等待时间结束时,将所述响应信息发送给客户端。
可选的,所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,所述装置还包括确定模块,在所述打包生成DNS请求对应的响应信息之前,
所述确定模块,用于在所述会话标识对应至少两个DNS请求时,根据所述优先级信息,确定响应所述至少两个DNS请求的先后顺序;
所述生成模块,还用于根据所述先后顺序,分别生成所述至少两个DNS请求的响应信息。
本公开的实施方式还提供了一种DNS请求处理系统,所述系统包括客户端和服务器,其中,
所述客户端,用于发送DNS请求,所述DNS请求包括会话标识以及等待时间;
接收DNS请求对应的响应信息,其中,所述响应信息,由所述服务器在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成;
所述服务器,用于接收DNS请求,所述DNS请求包括会话标识以及等待时间;
在所述等待时间内,打包生成DNS请求对应的响应信息,其中,所述响应信息包括所述会话标识对应的至少一个DNS请求的响应信息;
在所述等待时间结束时,将所述响应信息发送给所述客户端。
本公开的实施方式还提供了一种电子设备,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行以上所述的DNS请求发送方法,或者能够执行以上所述的DNS请求响应方法。
本公开的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现以上所述的DNS请求发送方法,或者实现以上所述的DNS请求响应方法。
本公开实施方式相对于现有技术而言,在DNS请求中添加了会话标识和等待时间,会话标识和等待时间一一对应,便于服务器对多个DNS请求进行动态整合,使得服务器在等待时间内,不仅能够生成会话标识对应的一个DNS请求所对应的响应信息,还能够将会话标识对应的多个DNS请求所对应的各响应信息进行整合打包,生成一个响应信息,从而不仅解决了现有技术只能通过客户端对多个DNS请求进行打包,HTTPDNS服务器只能被动响应,打包方式比较固定而且单一的问题,还提升了流量利用率。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是本公开的一个实施方式提供的DNS请求发送方法的流程图;
图2是本公开的另一个实施方式提供的在DNS请求中添加的各字段的格式示意图;
图3是本公开的另一个实施方式提供的DNS请求响应方法的流程图;
图4是本公开的另一个实施方式提供的DNS请求处理方法的交互流程图;
图5是本公开的另一个实施方式提供的DNS请求处理方法的交互流程图;
图6是本公开的另一个实施方式提供的DNS请求处理方法的交互流程图;
图7是本公开的另一个实施方式提供的DNS请求处理方法的交互流程图;
图8是本公开的另一个实施方式提供的DNS请求发送装置的结构示意图;
图9是本公开的另一个实施方式提供的DNS请求响应装置的结构示意图;
图10是本公开的另一个实施方式提供的DNS请求处理系统的结构示意图;
图11是本公开的另一个实施方式提供的电子设备的结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合附图对本公开的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本公开各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本公开的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本公开的一个实施方式涉及一种DNS请求发送方法,其流程如图1所示,包括:
步骤101,发送DNS请求,所述DNS请求包括会话标识以及等待时间。
在本步骤中,DNS请求可以有一个,也可以有多个。在DNS请求有多个时,可以在任一时刻同时发送多个DNS请求,也可以在不同时刻分别发送多个DNS请求,本实施方式对此不作限制。
在本步骤中,会话标识和等待时间一一对应,相同的会话标识对应相同的等待时间。其中,会话标识用来指示服务器能否将该会话标识对应的DNS请求所对应的响应信息与其他DNS请求所对应的响应信息进行打包。例如,多个DNS请求的会话标识相同,则表示服务器可以将该会话标识对应的多个DNS请求所对应的各响应信息打包成一个响应信息进行返回。多个DNS请求的会话标识不同,则表示服务器需要分别返回各会话标识对应的DNS请求所对应的响应信息。会话标识可以是随机生成的字符串,每次随机生成的会话标识需要与已经存在的会话标识不同,从而避免多个DNS请求所对应的各响应信息不能打包成一个响应信息时,对会话标识的重复使用。等待时间表示服务器在接收到该等待时间对应的DNS请求后,需要经过该等待时间的时长,才返回对应的DNS请求所对应的响应信息。等待时间的单位可以是毫秒,也可以是秒、分等,本领域技术人员可以根据实际需要进行选择,本实施方式对此不作限制。
需要说明的是,本实施方式中的DNS请求包括HTTPDNS请求,从而使本实施方式所述的DNS请求发送方法可以应用到客户端与HTTPDNS服务器建立连接,HTTPDNS服务器为客户端提供服务的场景中。
步骤102,接收DNS请求对应的响应信息,其中,所述响应信息,由服务器在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成。
在本实施方式中,由于DNS请求中添加了会话标识,因此,服务器可以根据会话标识对DNS请求进行整合,将会话标识相同的DNS请求整合在一起,从而将整合在一起的各DNS请求所对应的各响应信息打包成一个响应信息。此外,由于DNS请求中还添加了等待时间,等待时间与会话标识一一对应,因此,服务器还需要在会话标识对应的等待时间内,整合该会话标识对应的DNS请求,将各DNS请求所对应的各响应信息打包生成一个响应信息,并在等待时间结束时,返回打包生成的响应信息。
本公开实施方式相对于现有技术而言,在DNS请求中添加了会话标识和等待时间,会话标识和等待时间一一对应,便于服务器对多个DNS请求进行动态整合,使得服务器在等待时间内,不仅能够生成会话标识对应的一个DNS请求所对应的响应信息,还能够将会话标识对应的多个DNS请求所对应的各响应信息进行整合打包,生成一个响应信息,从而不仅解决了现有技术只能通过客户端对多个DNS请求进行打包,HTTPDNS服务器只能被动响应,打包方式比较固定而且单一的问题,还提升了流量利用率。
可选的,所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,在所述发送DNS请求之前,所述方法还包括:分别为待发送的不同DNS请求设置不同级别的优先级,以使所述服务器能够根据所述优先级信息,确定响应所述不同DNS请求的先后顺序。
具体的,由于各DNS请求的重要程度可能不同,因此,可以分别为各DNS请求设置不同级别的优先级,通过优先级级别的高低来体现DNS请求重要程度的高低,从而使服务器能够优先响应优先级级别高的DNS请求。其中,优先级级别可以用数字表示,例如,可以通过数字0~255来表示优先级的各个级别,数字越大则优先级级别越高。
例如,当包含不同域名的多个DNS请求需要同时发送时,可以将该多个DNS请求对应的各会话标识设置为同一个会话标识,并分别为各DNS请求设置不同级别的优先级,以表示该多个DNS请求的响应信息可以打包生成一个响应信息返回,并使服务器能够按照优先级级别的高低顺序依次处理各DNS请求。
在本步骤中,不同级别的优先级通常对应不同的等待时间。一般来说,优先级级别越低,对应的等待时间越长;优先级级别越高,对应的等待时间越短。
例如,当某个DNS请求的响应信息需要尽快返回时,可以为该DNS请求设置较高的优先级级别以及较短的等待时间,比如,可以为该DNS请求设置最高级别的优先级并将其等待时间设置为0,使得服务器在接收到该DNS请求后能够立即处理并返回其响应信息。
由于传统的DNS并不涉及优先级信息,因此,本公开实施方式通过在DNS请求中添加优先级信息,为不同的DNS请求设置不同级别的优先级,不仅实现了DNS请求能够按照优先级信息被服务器处理,使服务器具备了根据优先级信息对DNS请求进行调度的能力,还能够在弱网环境下优先保护核心的DNS请求,防止重要程度高的DNS请求被服务器滞后处理。
可选的,在所述分别为待发送的不同DNS请求设置不同级别的优先级之后,所述方法还包括:在待发送的DNS请求的优先级级别不超过预设级别时,获取已发送的DNS请求中等待时间未结束的第一会话标识;复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为所述第一会话标识。
具体的,如果已发送的DNS请求对应的等待时间尚未结束,则说明服务器还未返回该DNS请求对应的响应信息。因此,若待发送的DNS请求的优先级级别较低,未超过预设级别,即该DNS请求不需要服务器立即处理并返回其响应消息,则可以对已发送的DNS请求中等待时间尚未结束的第一会话标识进行复用,使服务器可以将该第一会话标识对应的各DNS请求所对应的各响应信息打包生成一个响应信息返回,从而节省流量,提升流量利用率。
需要说明的是,优先级的预设级别应当较低,不能设置得过高,以防止无法实现对会话标识的复用。
可选的,在所述获取已发送的DNS请求中等待时间未结束的第一会话标识之后,所述方法还包括:判断所述第一会话标识的剩余等待时间是否小于预设阈值,获取判断结果;若所述判断结果为所述剩余等待时间小于所述预设阈值,则不复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为第二会话标识。
具体的,预设阈值可以是服务器对待发送的DNS请求进行处理所需要的时长,从而可以在第一会话标识的剩余等待时间不足以使服务器对待发送的DNS请求进行处理时,不对第一会话标识进行复用,而只在第一会话标识的剩余等待时间足以使服务器对待发送的DNS请求进行处理时,对第一会话标识进行复用。
可选的,所述DNS请求的报文包括会话标识字段、优先级字段、等待时间字段以及扩展字段。
具体的,为了使服务器能够将不同DNS请求所对应的响应信息进行合并,并能够按照优先级级别确定不同DNS请求的处理顺序,可以在DNS请求的报文中添加会话标识字段、优先级字段、等待时间字段以及扩展字段。其中,会话标识字段用于指示DNS请求的会话标识,优先级字段用于指示DNS请求的优先级信息,等待时间字段用于指示DNS请求的等待时间,扩展字段为预留字段,用于后续功能扩充。
例如,如图2所示,在DNS请求的报文中可以添加8个字节来表示上述各字段。其中,会话标识字段可以占用4个字节。优先级字段可以占用1个字节,以通过数字0~255来分别表示优先级的各个级别。等待时间字段可以占用2个字节。扩展字段可以占用1个字节。
需要说明的是,本实施方式不对上述各字段所占用的具体字节数进行限制,本领域技术人员可以根据实际需要进行选择,只要能够在DNS请求的报文中添加上述各字段即可。
通过在DNS请求的报文中分别添加会话标识字段、优先级字段和等待时间字段,可以使服务器能够更加方便地获取DNS请求的会话标识、优先级信息和等待时间,从而根据会话标识、优先级信息和等待时间,对DNS请求进行处理。通过在DNS请求的报文中添加扩展字段,还可以方便后续进行功能扩展。
本公开的另一个实施方式涉及一种DNS请求响应方法,其流程如图3所示,包括:
步骤301,接收DNS请求,所述DNS请求包括会话标识以及等待时间。
本实施方式中的DNS请求、会话标识和等待时间的具体含义可以参考本公开上述实施方式所述,此处不再赘述。
步骤302,在所述等待时间内,打包生成DNS请求对应的响应信息,其中,所述响应信息包括所述会话标识对应的至少一个DNS请求的响应信息。
具体的,由于一个会话标识可能对应一个DNS请求,也可能对应多个DNS请求,因此,当一个会话标识对应多个DNS请求时,可以在等待时间内,将处理完成的所有DNS请求的响应信息打包生成一个响应信息,从而对多个DNS请求进行动态整合,提升流量利用率。
步骤303,在所述等待时间结束时,将所述响应信息发送给客户端。
在本实施方式中,在接收到DNS请求时,可以利用定时器从该DNS请求的等待时间开始倒计时。倒计时结束,则表示等待时间结束,可以将该DNS请求的会话标识对应的一个或多个DNS请求所对应的响应信息中,已经生成的一个或多个响应信息打包发送给客户端。
本公开实施方式相对于现有技术而言,通过DNS请求中一一对应的会话标识和等待时间,可以对多个DNS请求进行动态整合,在等待时间内,不仅可以生成会话标识对应的一个DNS请求所对应的响应信息,还能够将会话标识对应的多个DNS请求所对应的各响应信息进行整合打包,生成一个响应信息,从而不仅解决了现有技术只能通过客户端对多个DNS请求进行打包,HTTPDNS服务器只能被动响应,打包方式比较固定而且单一的问题,还提升了流量利用率。
可选的,所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,在所述打包生成DNS请求对应的响应信息之前,所述方法还包括:在所述会话标识对应至少两个DNS请求时,根据所述优先级信息,确定响应所述至少两个DNS请求的先后顺序;根据所述先后顺序,分别生成所述至少两个DNS请求的响应信息。
具体的,可以按照各DNS请求的优先级级别的高低顺序,依次处理各DNS请求,生成各DNS请求的响应信息。
需要说明的是,会话标识对应的至少两个DNS请求可以是客户端同时发送的,也可以是客户端在不同时刻分别发送的,本实施方式对此不作限制。
本实施方式根据优先级信息确定响应多个DNS请求的先后顺序,根据该先后顺序,分别生成各DNS请求的响应信息,从而具备了根据优先级信息对DNS请求进行调度的能力,还能够在弱网环境下优先保护核心的DNS请求,防止重要程度高的DNS请求被服务器滞后处理。
可选的,所述DNS请求的报文包括会话标识字段、优先级字段、等待时间字段以及扩展字段。其中,会话标识字段、优先级字段、等待时间字段以及扩展字段的具体内容可以参考本公开上述实施方式所述,此处不再赘述。
为了使本领域技术人员能够更清楚地理解本公开上述实施方式所述的方法,下面以DNS请求发送方法应用在客户端,DNS请求响应方法应用在服务器,DNS请求的优先级级别通过数字0~255表示,数字越大代表优先级级别越高为例进行说明。
如图4所示,本公开的一种DNS请求处理方法,包括:
步骤401,客户端为DNS请求a设置级别较低的优先级。其中,DNS请求a的会话标识为0x78781212,等待时间为5000毫秒,优先级级别为1,域名信息为www.a.com。
步骤402,客户端将DNS请求a发送至服务器。
步骤403,在域名信息为www.b.com的DNS请求b的优先级级别为1即不超过预设级别时,客户端获取已发送的DNS请求中等待时间未结束的第一会话标识。例如,该第一会话标识可以是会话标识0x78781212。
步骤404,客户端复用第一会话标识,将DNS请求b的会话标识设置为该第一会话标识。在第一会话标识为0x78781212,将DNS请求b的会话标识设置为0x78781212。相应的,DNS请求b的等待时间也为5000毫秒。
步骤405,客户端将DNS请求b发送至服务器。
步骤406,服务器在接收到DNS请求a后的5000毫秒内,分别处理DNS请求a和DNS请求b,生成DNS请求a和DNS请求b各自的响应信息,并将两个响应信息打包。
步骤407,在DNS请求a的等待时间结束时,服务器将打包好的两个响应信息发送给客户端。
如图5所示,本公开的另一种DNS请求处理方法,包括:
步骤501,客户端为DNS请求c设置级别最高的优先级。其中,DNS请求c的会话标识为0xfefeaab2,等待时间为0毫秒,优先级级别为255,域名信息为www.c.com。
步骤502,客户端将DNS请求c发送至服务器。
步骤503,服务器立即处理DNS请求c,生成DNS请求c的响应信息。
步骤504,服务器将DNS请求c的响应信息立即发送给客户端。
如图6所示,本公开的另一种DNS请求处理方法,包括:
步骤601,客户端分别为DNS请求d和DNS请求e设置中等级别的优先级。其中,DNS请求d和DNS请求e的会话标识均为0xfefeccc5,等待时间均为5毫秒。DNS请求d的优先级级别为60,域名信息为www.d.com。DNS请求e的优先级级别为100,域名信息为www.e.com。
步骤602,客户端将DNS请求d和DNS请求e同时发送给服务器。
步骤603,服务器生成响应信息。由于DNS请求e的优先级级别高于DNS请求d的优先级级别,因此,在等待时间5毫秒内,服务器优先处理DNS请求e,生成DNS请求e的响应信息,之后处理DNS请求d,生成DNS请求d的响应信息,并将两个响应信息打包,生成一个响应信息。
步骤604,在等待时间5毫秒结束时,服务器将打包后生成的响应信息发送给客户端。
如图7所示,本公开的另一种DNS请求处理方法,包括:
步骤701,客户端分别为DNS请求f和DNS请求g设置中等级别的优先级。其中,DNS请求f和DNS请求g的会话标识均为0xfefefec5,等待时间均为3毫秒。DNS请求f的优先级级别为65,域名信息为www.f.com。DNS请求g的优先级级别为105,域名信息为www.g.com。
步骤702,客户端将DNS请求f和DNS请求g同时发送给服务器。
步骤703,服务器生成DNS请求g的响应信息。由于DNS请求g的优先级级别高于DNS请求f的优先级级别,因此,在等待时间3毫秒内,服务器优先处理DNS请求g,生成DNS请求g的响应信息。
步骤704,在等待时间3毫秒结束时,服务器将DNS请求g的响应信息发送给客户端。
步骤705,服务器处理DNS请求f,生成DNS请求f的响应信息。
步骤706,服务器将DNS请求f的响应信息发送给客户端。
本公开的另一个实施方式涉及一种DNS请求发送装置,如图8所示,所述装置包括:
第一发送模块801,用于发送DNS请求,所述DNS请求包括会话标识以及等待时间;
第一接收模块802,用于接收DNS请求对应的响应信息,其中,所述响应信息,由服务器在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成。
可选的,所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,如图8所示,所述装置还包括设置模块803,在所述发送DNS请求之前,
所述设置模块803,用于分别为待发送的不同DNS请求设置不同级别的优先级,以使所述服务器能够根据所述优先级信息,确定响应所述不同DNS请求的先后顺序。
可选的,如图8所示,所述装置还包括获取模块804和复用模块805,在所述分别为待发送的不同DNS请求设置不同级别的优先级之后,
所述获取模块804,用于在待发送的DNS请求的优先级级别不超过预设级别时,获取已发送的DNS请求中等待时间未结束的第一会话标识;
所述复用模块805,用于复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为所述第一会话标识。
可选的,如图8所示,所述装置还包括判断模块806,在所述获取已发送的DNS请求中等待时间未结束的第一会话标识之后,
所述判断模块806,用于判断所述第一会话标识的剩余等待时间是否小于预设阈值,获取判断结果;
所述复用模块805,还用于若所述判断结果为所述剩余等待时间小于所述预设阈值,则不复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为第二会话标识。
可选的,所述DNS请求的报文包括会话标识字段、优先级字段、等待时间字段以及扩展字段。
上述实施方式提供的DNS请求发送装置的具体实现方法,可以参见本公开实施例提供的DNS请求发送方法所述,此处不再赘述。
本公开的另一个实施方式涉及一种DNS请求响应装置,如图9所示,所述装置包括:
第二接收模块901,用于接收DNS请求,所述DNS请求包括会话标识以及等待时间;
生成模块902,用于在所述等待时间内,打包生成DNS请求对应的响应信息,其中,所述响应信息包括所述会话标识对应的至少一个DNS请求的响应信息;
第二发送模块903,用于在所述等待时间结束时,将所述响应信息发送给客户端。
可选的,所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,所述装置还包括确定模块904,在所述打包生成DNS请求对应的响应信息之前,
所述确定模块904,用于在所述会话标识对应至少两个DNS请求时,根据所述优先级信息,确定响应所述至少两个DNS请求的先后顺序;
所述生成模块902,还用于根据所述先后顺序,分别生成所述至少两个DNS请求的响应信息。
上述实施方式提供的DNS请求响应装置的具体实现方法,可以参见本公开实施例提供的DNS请求响应方法所述,此处不再赘述。
本公开的另一个实施方式涉及一种DNS请求处理系统,如图10所示,所述系统包括客户端1001和服务器1002,其中,
所述客户端1001,用于发送DNS请求,所述DNS请求包括会话标识以及等待时间;
接收DNS请求对应的响应信息,其中,所述响应信息,由所述服务器1002在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成;
所述服务器1002,用于接收DNS请求,所述DNS请求包括会话标识以及等待时间;
在所述等待时间内,打包生成DNS请求对应的响应信息,其中,所述响应信息包括所述会话标识对应的至少一个DNS请求的响应信息;
在所述等待时间结束时,将所述响应信息发送给所述客户端1001。
本公开的另一个实施方式涉及一种电子设备,如图11所示,包括:
至少一个处理器1101;以及,
与所述至少一个处理器1101通信连接的存储器1102;其中,
所述存储器1102存储有可被所述至少一个处理器1101执行的指令,所述指令被所述至少一个处理器1101执行,以使所述至少一个处理器1101能够执行本公开上述实施方式所述的DNS请求发送方法,或者能够执行本公开上述实施方式所述的DNS请求响应方法。
其中,存储器和处理器采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本公开的另一个实施方式涉及一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM(Read-Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本公开的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本公开的精神和范围。

Claims (9)

1.一种DNS请求发送方法,其特征在于,所述方法包括:
发送DNS请求,所述DNS请求包括会话标识以及等待时间;
接收DNS请求对应的响应信息,其中,所述响应信息,由服务器在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成;
所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,在所述发送DNS请求之前,所述方法还包括:
分别为待发送的不同DNS请求设置不同级别的优先级,以使所述服务器能够根据所述优先级信息,确定响应所述不同DNS请求的先后顺序;
在所述分别为待发送的不同DNS请求设置不同级别的优先级之后,所述方法还包括:
在待发送的DNS请求的优先级级别不超过预设级别时,获取已发送的DNS请求中等待时间未结束的第一会话标识;复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为所述第一会话标识。
2.根据权利要求1所述的方法,其特征在于,在所述获取已发送的DNS请求中等待时间未结束的第一会话标识之后,所述方法还包括:
判断所述第一会话标识的剩余等待时间是否小于预设阈值,获取判断结果;
若所述判断结果为所述剩余等待时间小于所述预设阈值,则不复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为第二会话标识。
3.根据权利要求1或2所述的方法,其特征在于,所述DNS请求的报文包括会话标识字段、优先级字段、等待时间字段以及扩展字段。
4.一种DNS请求响应方法,其特征在于,所述方法包括:
接收DNS请求,所述DNS请求包括会话标识以及等待时间;
在所述等待时间内,打包生成DNS请求对应的响应信息,其中,所述响应信息包括所述会话标识对应的至少一个DNS请求的响应信息;
在所述等待时间结束时,将所述响应信息发送给客户端;
所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,在所述打包生成DNS请求对应的响应信息之前,所述方法还包括:
在所述会话标识对应至少两个DNS请求时,根据所述优先级信息,确定响应所述至少两个DNS请求的先后顺序;根据所述先后顺序,分别生成所述至少两个DNS请求的响应信息,其中,所述优先级级别不超过预设级别的所述DNS请求复用已接收的DNS请求中等待时间未结束的所述会话标识。
5.一种DNS请求发送装置,其特征在于,所述装置包括:
第一发送模块,用于发送DNS请求,所述DNS请求包括会话标识以及等待时间;
第一接收模块,用于接收DNS请求对应的响应信息,其中,所述响应信息,由服务器在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成;
所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,所述装置还包括设置模块,在所述发送DNS请求之前,
所述设置模块,用于分别为待发送的不同DNS请求设置不同级别的优先级,以使所述服务器能够根据所述优先级信息,确定响应所述不同DNS请求的先后顺序:
所述装置还包括获取模块和复用模块,在所述分别为待发送的不同DNS请求设置不同级别的优先级之后,
所述获取模块,用于在待发送的DNS请求的优先级级别不超过预设级别时,获取已发送的DNS请求中等待时间未结束的第一会话标识;
所述复用模块,用于复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为所述第一会话标识。
6.一种DNS请求响应装置,其特征在于,所述装置包括:
第二接收模块,用于接收DNS请求,所述DNS请求包括会话标识以及等待时间;
生成模块,用于在所述等待时间内,打包生成DNS请求对应的响应信息,其中,所述响应信息包括所述会话标识对应的至少一个DNS请求的响应信息;
第二发送模块,用于在所述等待时间结束时,将所述响应信息发送给客户端;
所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,所述装置还包括确定模块,在所述打包生成DNS请求对应的响应信息之前,
所述确定模块,用于在所述会话标识对应至少两个DNS请求时,根据所述优先级信息,确定响应所述至少两个DNS请求的先后顺序;
所述生成模块,还用于根据所述先后顺序,分别生成所述至少两个DNS请求的响应信息;
其中,所述优先级级别不超过预设级别的所述DNS请求复用已接收的DNS请求中等待时间未结束的所述会话标识。
7.一种DNS请求处理系统,其特征在于,所述系统包括客户端和服务器,其中,
所述客户端,用于发送DNS请求,所述DNS请求包括会话标识以及等待时间;
接收DNS请求对应的响应信息,其中,所述响应信息,由所述服务器在所述等待时间内将所述会话标识对应的至少一个DNS请求的响应信息打包生成;
所述DNS请求还包括优先级信息,所述优先级信息用于指示所述DNS请求的优先级级别,在所述发送DNS请求之前,所述客户端还用于:分别为待发送的不同DNS请求设置不同级别的优先级,以使所述服务器能够根据所述优先级信息,确定响应所述不同DNS请求的先后顺序;
在所述分别为待发送的不同DNS请求设置不同级别的优先级之后,所述客户端还用于:在待发送的DNS请求的优先级级别不超过预设级别时,获取已发送的DNS请求中等待时间未结束的第一会话标识;复用所述第一会话标识,将所述待发送的DNS请求的会话标识设置为所述第一会话标识;
所述服务器,用于接收DNS请求,所述DNS请求包括会话标识以及等待时间;
在所述等待时间内,打包生成DNS请求对应的响应信息,其中,所述响应信息包括所述会话标识对应的至少一个DNS请求的响应信息;
在所述等待时间结束时,将所述响应信息发送给所述客户端。
8.一种电子设备,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至3中任一项所述的DNS请求发送方法,或者能够执行如权利要求4所述的DNS请求响应方法。
9.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至3中任一项所述的DNS请求发送方法,或者实现如权利要求4所述的DNS请求响应方法。
CN202110990175.1A 2021-08-26 2021-08-26 Dns请求处理方法、装置、系统、电子设备和存储介质 Active CN113691630B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110990175.1A CN113691630B (zh) 2021-08-26 2021-08-26 Dns请求处理方法、装置、系统、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110990175.1A CN113691630B (zh) 2021-08-26 2021-08-26 Dns请求处理方法、装置、系统、电子设备和存储介质

Publications (2)

Publication Number Publication Date
CN113691630A CN113691630A (zh) 2021-11-23
CN113691630B true CN113691630B (zh) 2023-04-07

Family

ID=78583288

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110990175.1A Active CN113691630B (zh) 2021-08-26 2021-08-26 Dns请求处理方法、装置、系统、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN113691630B (zh)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10868881B1 (en) * 2015-12-30 2020-12-15 Mingtai Chang Loading web resources using remote resource pushing

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102387206A (zh) * 2011-10-20 2012-03-21 镇江睿泰信息科技有限公司 一种Web服务并发请求合成方法及系统
US9787521B1 (en) * 2013-09-16 2017-10-10 Amazon Technologies, Inc. Concurrent loading of session-based information
CN108337286A (zh) * 2017-01-20 2018-07-27 深圳市中兴微电子技术有限公司 一种切包方法及装置
US20200106790A1 (en) * 2018-09-28 2020-04-02 Fireeye, Inc. Intelligent system for mitigating cybersecurity risk by analyzing domain name system traffic
CN112182445A (zh) * 2019-07-02 2021-01-05 北京京东尚科信息技术有限公司 一种优化客户端页面性能的方法和装置
CN110943977B (zh) * 2019-11-11 2022-10-14 普联技术有限公司 多媒体业务数据传输方法、服务端、设备及存储介质
US11080114B2 (en) * 2019-11-26 2021-08-03 International Business Machines Corporation Controlling interaction with a scalable application
CN111049948B (zh) * 2019-12-30 2022-07-29 杭州迪普科技股份有限公司 域名检测方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10868881B1 (en) * 2015-12-30 2020-12-15 Mingtai Chang Loading web resources using remote resource pushing

Also Published As

Publication number Publication date
CN113691630A (zh) 2021-11-23

Similar Documents

Publication Publication Date Title
JP7003222B2 (ja) ランダムアクセス応答方法、装置、基地局および端末
US10680949B2 (en) Systems and methods for implementing a time-stamped controller area network (CAN) bus message
CN106034084B (zh) 一种数据传输方法及装置
WO2017067391A1 (zh) 虚拟机的数据共享方法及装置
RU2014109362A (ru) Устройства для сокращенных персональных служебных вызовов
KR20110081441A (ko) 이동통신 단말기에서 자원 할당 요청 방법 및 장치
CN101695019B (zh) 一种报文发送方法和设备
US10028293B2 (en) Method and apparatus for controlling data transmission on radio communication network
US20200382597A1 (en) Vehicle diagnostic communication apparatus, system including the same and method thereof
CN110808948B (zh) 远程过程调用方法、装置及系统
CN107528678B (zh) 一种系统消息更新的方法和设备
CN112311628B (zh) 网络测速方法、系统、网络设备和存储介质
JP2017515400A (ja) リソース再使用のための方法及び装置
US20130115992A1 (en) Method and apparatus for controlling wireless devices
CN113691630B (zh) Dns请求处理方法、装置、系统、电子设备和存储介质
CN113708869B (zh) 配置端口状态的方法、装置及系统
CN109862134B (zh) 一种ip地址的租约时间配置方法和系统及dhcp客户端
CN109428762B (zh) 一种带宽调度方法及装置
CN113596105B (zh) 内容的获取方法、边缘节点及计算机可读存储介质
CN111240867B (zh) 一种信息通讯系统及方法
EP2552163A1 (en) Data transmission method, user equipment and base station
CN108633082B (zh) 上行数据调度请求方法及装置
KR101810820B1 (ko) 액세스 제어 디바이스, 액세스 디바이스 및 방법
US20240048644A1 (en) Message transmission method and system, and network device and storage medium
CN115150388B (zh) 文件上传和文件上传状态查询方法及其设备、存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee after: Douyin Vision Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee before: Tiktok vision (Beijing) Co.,Ltd.

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee after: Tiktok vision (Beijing) Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Patentee before: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.