CN113556413B - 一种报文处理方法及装置 - Google Patents

一种报文处理方法及装置 Download PDF

Info

Publication number
CN113556413B
CN113556413B CN202110928955.3A CN202110928955A CN113556413B CN 113556413 B CN113556413 B CN 113556413B CN 202110928955 A CN202110928955 A CN 202110928955A CN 113556413 B CN113556413 B CN 113556413B
Authority
CN
China
Prior art keywords
domain name
internet protocol
name
name system
field
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
CN202110928955.3A
Other languages
English (en)
Other versions
CN113556413A (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.)
China Internet Network Information Center
Original Assignee
China Internet Network Information Center
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 China Internet Network Information Center filed Critical China Internet Network Information Center
Priority to CN202110928955.3A priority Critical patent/CN113556413B/zh
Publication of CN113556413A publication Critical patent/CN113556413A/zh
Application granted granted Critical
Publication of CN113556413B publication Critical patent/CN113556413B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures

Abstract

本申请提供一种报文处理方法及装置,终端根据DNS报文格式在问题段和DNS附加段中写入数据,得到DNS查询报文;发送DNS查询报文;具体在QNAME字段和QTYPE字段分别写入边缘服务名字和A/AAAA,在聚合标识字段、终端IP地址字段、名字网关IP地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、零、零、与终端当前业务需求匹配的应用信息,实现在DNS查询报文中同时封装边缘服务名字和与终端当前业务需求匹配的应用信息,有效减少交互次数,通过在DNS查询报文中聚合边缘服务名字和应用信息的方式提高信道利用率以降低时延,从而提升边缘服务的数据收集效率和分发效率,提高数据的上传效率。

Description

一种报文处理方法及装置
技术领域
本申请属于通信技术领域,尤其涉及一种报文处理方法及装置。
背景技术
在互联网起源之初,互联网的主要应用需求是计算资源的共享。进入本世纪后,随着网络视频等新型业务的高速发展,内容的获取和分发在互联网应用中所占的比重日益增大,使得互联网的主要应用需求转变为内容的获取和分发,相对应的提出两条技术路线:一是CDN(Content Delivery Network,内容分发网络),二是ICN(Information CentricNetworking,信息中心网络)。
CDN和ICN是通过缓存技术提升内容分发效率,如CDN能够根据DNS(Domain NameSystem,域名系统)的云端调度模式对边缘服务进行分配,DNS的云端调度模式是递归服务器(如递归DNS服务器)根据IP(Internet Protocol,网际协议)调度边缘服务器,由边缘服务器处理边缘服务,其中边缘服务器是CDN中离用户最近的内容缓存节点,边缘服务是下沉到边缘、由边缘服务器处理的网络服务。
但是随着物联网和车联网等技术的发展,对数据上传有了更高的要求,CDN等互联网架构关注了内容分发效率,没有对数据的快速上传提供有效的解决方案。
发明内容
有鉴于此,本申请的目的在于提供一种报文处理方法及装置。
第一方面,本申请提供一种报文处理方法,应用于终端中,所述方法包括:
所述终端根据域名系统报文格式在问题段和域名系统附加段中写入数据,得到域名系统查询报文;
所述终端发送所述域名系统查询报文;
其中所述终端在所述问题段的查询域名字段和查询类型字段分别写入边缘服务名字和A/AAAA,在所述域名系统附加段的聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、零、零、与终端当前业务需求匹配的应用信息。
可选的,所述方法还包括:
所述终端接收域名系统应答报文;
根据域名系统报文格式解析所述域名系统应答报文,以从所述域名系统应答报文中提取数据;
如果提取到的数据符合第一预设条件,执行与所述域名系统应答报文中的应用信息匹配的操作;
所述第一预设条件包括所述从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端网际协议地址字段和名字网关网际协议地址字段提取到的数据不为零。
可选的,所述终端得到所述域名系统查询报文时,在所述域名系统附加段的签名信息段中写入所述应用信息的签名;
所述第一预设条件还包括应用信息字段提取到的数据通过校验。
可选的,所述方法还包括:如果提取到的数据不符合所述第一预设条件,根据域名系统应答报文中返回的网际协议地址继续访问网络服务。
第二方面,本申请提供一种报文处理方法,应用于名字网关中,所述方法包括:
所述名字网关拦截终端发送的域名系统查询报文;
根据域名系统报文格式解析所述域名系统查询报文,以从所述域名系统查询报文中提取数据;
如果从所述域名系统查询报文中提取到的数据符合第二预设条件,在所述域名系统附加段的终端网际协议地址字段和名字网关网际协议地址字段中保存网际协议首部字段中的源网际协议地址和目的网际协议地址,并将网际协议首部的源网际协议地址和目的网际协议地址分别修改为名字网关的网际协议地址和首选边缘服务器的网际协议地址;
向所述首选边缘服务器发送调整后的域名系统查询报文;
其中所述第二预设条件包括根据查询域名字段中的边缘服务名字查找到对应的名字路由表项、所述名字路由表项中的聚合标识不为0、从查询类型字段提取到A/AAAA、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端网际协议地址字段和名字网关网际协议地址字段分别提取到零。
可选的,所述方法还包括:
如果从所述域名系统查询报文中提取到的数据符合第三预设条件,根据名字网关所属权连通图确定目标边缘服务器,将所述目标边缘服务器的网际协议地址发送给所述终端;
其中所述第三预设条件包括根据从查询域名字段提取的边缘服务名字查找到对应的名字路由表项、从查询类型字段提取到A/AAAA。
可选的,所述方法还包括:如果提取到的数据不符合所述第三预设条件,转发所述域名系统查询报文。
可选的,所述方法还包括:
所述名字网关拦截边缘服务器发送的域名系统应答报文;
根据域名系统报文格式解析所述域名系统应答报文,以从所述域名系统应答报文中提取数据;
如果从所述域名系统应答报文中提取到的数据符合第四预设条件,将所述网际协议首部字段中源网际协议地址还原成所述名字网关网际协议地址字段中保存的名字网关的网际协议地址,将所述网际协议首部字段中目的网际协议地址还原成所述终端网际协议地址字段中保存的终端的网际协议地址;
利用所述终端的网际协议地址发送还原后的域名系统应答报文;
所述第四预设条件包括所述网际协议首部字段中源网际协议地址和目的网际协议地址分别写入首选边缘服务器的网际协议地址和名字网关的网际协议地址、根据查询域名字段中的边缘服务名字查找到对应的名字路由表项、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从查询类型字段提取到A/AAAA。
可选的,所述名字网关确定首选边缘服务器包括:
如果名字路由表中不同边缘服务器中同时存在多个同名边缘服务,根据权连通图确定距离所述名字网关最近的边缘服务器,距离所述名字网关最近的边缘服务器为所述首选边缘服务器,所述边缘服务为所述域名系统查询报文中携带的边缘服务名字指向的边缘服务;
如果所述名字路由表中不同边缘服务器之间不存在同名边缘服务,查询与所述域名系统查询报文中携带的边缘服务名字匹配的名字路由表项,将所述名字路由表项中边缘服务器的标识指向的边缘服务器确定为所述首选边缘服务器。
可选的,所述方法还包括:
所述名字网关获取边缘服务的注册信息,对所述边缘服务的注册信息进行校验;
如果校验通过,根据所述边缘服务的注册信息更新名字网关的名字路由表,所述名字网关的名字路由表用于辅助所述名字网关确定所述首选边缘服务器和辅助所述名字网关确定所接收到报文的处理方式。
可选的,所述方法还包括:
所述名字网关获取权连通图,并确定所述名字网关在所述权连通图中的位置以及根据所述权连通图创建所述名字路由表,所述名字路由表包括至少一条名字路由表项,每条名字路由表项包括边缘服务名字、边缘服务器的网际协议地址、边缘服务器的标识和聚合标识;所述权连通图的顶点代表边缘服务器、边代表边缘服务器之间的物理连接、边的权值代表物理连接的综合状况。
第三方面,本申请提供一种报文处理方法,应用于边缘服务器中,所述方法包括:
所述边缘服务器在接收到域名系统查询报文后,在域名系统应答报文的域名系统附加段中写入数据;
发送所述域名系统应答报文;
其中在域名系统应答报文的域名系统附加段中写入数据包括在聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、从所述域名系统查询报文的终端网际协议地址字段中获得的数据、从所述域名系统查询报文的名字网关网际协议地址字段中获得的数据、与边缘服务器当前业务需求匹配的应用信息。
可选的,所述在域名系统应答报文的域名系统附加段中写入数据包括:如果所述域名系统查询报文中的应用信息通过完整性验证,在所述域名系统应答报文的域名系统附加段中写入数据;
其中所述在域名系统应答报文的域名系统附加段中写入数据包括在签名信息字段中写入应用信息的签名。
可选的,所述方法还包括:
根据域名系统报文格式解析所述域名系统查询报文,从所述域名系统查询报文中获取终端应用名字,根据所述终端应用名字,获得所述终端应用名字的公钥;
利用所述终端应用名字的公钥验证所述域名系统查询报文中的应用信息的完整性,如果验证通过,执行所述在域名系统应答报文的域名系统附加段中写入数据;
其中所述在域名系统应答报文的域名系统附加段中写入数据包括在签名信息字段中写入应用信息的签名。
第四方面,本申请提供一种报文处理装置,应用于终端中,所述装置包括:
封装单元,用于根据域名系统报文格式在问题段和域名系统附加段中写入数据,得到域名系统查询报文;
发送单元,用于发送所述域名系统查询报文;
其中所述封装单元在所述问题段的查询域名字段和查询类型字段分别写入边缘服务名字和A/AAAA,在所述域名系统附加段的聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、零、零、与终端当前业务需求匹配的应用信息。
第五方面,本申请提供一种报文处理装置,应用于名字网关中,所述装置包括:
拦截单元,用于拦截终端发送的域名系统查询报文;
解析单元,用于根据域名系统报文格式解析所述域名系统查询报文,以从所述域名系统查询报文中提取数据;
修改单元,用于如果从所述域名系统查询报文中提取到的数据符合第二预设条件,在所述域名系统附加段的终端网际协议地址字段和名字网关网际协议地址字段中保存网际协议首部字段中的源网际协议地址和目的网际协议地址,并将网际协议首部的源网际协议地址和目的网际协议地址分别修改为名字网关的网际协议地址和首选边缘服务器的网际协议地址;
发送单元,用于向所述首选边缘服务器发送调整后的域名系统查询报文;
其中所述第二预设条件包括根据查询域名字段中的边缘服务名字查找到对应的名字路由表项、所述名字路由表项中的聚合标识不为0、从查询类型字段提取到A/AAAA、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端网际协议地址字段和名字网关网际协议地址字段分别提取到零。
第六方面,本申请提供一种报文处理装置,应用于边缘服务器中,所述装置包括:
写入单元,用于在接收到域名系统查询报文后,在域名系统应答报文的域名系统附加段中写入数据;
发送单元,用于发送所述域名系统应答报文;
其中在域名系统应答报文的域名系统附加段中写入数据包括在聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、从所述域名系统查询报文的终端网际协议地址字段中获得的数据、从所述域名系统查询报文的名字网关网际协议地址字段中获得的数据、与边缘服务器当前业务需求匹配的应用信息。
第七方面,本申请提供一种终端,所述终端包括:一个或多个处理器、存储器;其中,所述存储器用于存储一个或多个计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,所述终端执行上述报文处理方法。
第八方面,本申请提供一种名字网关,所述名字网关包括:一个或多个处理器、存储器;其中,所述存储器用于存储一个或多个计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,所述名字网关执行上述报文处理方法。
第九方面,本申请提供一种边缘服务器,所述名字网关包括:一个或多个处理器、存储器;其中,所述存储器用于存储一个或多个计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,所述边缘服务器执行上述报文处理方法。
第十方面,本申请提供一种计算机存储介质,所述计算机存储介质包括计算机指令,当所述计算机指令运行时执行上述报文处理方法。
上述报文处理方法及装置,终端根据域名系统报文格式在问题段和域名系统附加段中写入数据,得到域名系统查询报文;终端发送域名系统查询报文;其中终端在问题段的查询域名字段和查询类型字段分别写入边缘服务名字和A/AAAA,在域名系统附加段的聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、零、零、与终端当前业务需求匹配的应用信息,实现在域名系统查询报文中同时封装边缘服务名字和与终端当前业务需求匹配的应用信息,有效减少终端和边缘服务器之间的交互次数,通过在域名系统查询报文中聚合边缘服务名字和应用信息的方式提高信道利用率以降低时延,从而提升边缘服务的数据收集效率和分发效率,提高数据的上传效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的命名服务网络的架构图;
图2是本申请实施例提供的一种报文处理方法的信令图;
图3是本申请实施例提供的DNS报文格式的示意图;
图4是本申请实施例提供的另一种报文处理方法的信令图;
图5是本申请实施例提供的传统分离通信模式和边缘分离通信模式的对比图;
图6是本申请实施例提供的三种通信模式的时延测试结果;
图7是本申请实施例提供的并发性能测试结果;
图8是本申请实施例提供的TCP/IP、NSN(边缘聚合通信模式)和NDN三种模型的对比图;
图9是本申请实施例提供的火车站对应的命名服务网络实施示意图;
图10是本申请实施例提供的一种报文处理装置的结构示意图;
图11是本申请实施例提供的另一种报文处理装置的结构示意图;
图12是本申请实施例提供的再一种报文处理装置的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先对本申请使用到的DNS协议簇进行说明:
1)DNS报文格式:RFC1035等定义DNS报文由DNS首部(Header)、问题段(QuestionSection)、应答段(Answer Section)、附加段(Additional Section)等五部分组成,问题段中的QNAME(Query Name)和QTYPE(Query Type)分别表示查询域名和查询类型(A/AAAA表示查询域名的IPv4/IPv6地址),其他段由0到多条资源记录(Resource Record,RR)组成,资源记录由NAME(域名)、TTL(Time To Live,生存时间)、CLASS(类)、TYPE(类型)、RDLENGTH(资源数据长度)、RDATA(资源数据)组成。权威DNS服务器通过区(Zone)管理资源记录,区定义了域名空间的管理边界,权威DNS服务器是特定域名记录(例如“example.com”)在域名服务机构处所设置的DNS服务器,用于特定域名本身的管理,如对特定域名进行增加、删除和修改等,并提供域名查询服务。
2)DNS扩展协议:RFC6891等定义了EDNS(Extension Mechanisms for DNS,DNS扩展协议),EDNS通过在DNS附加段添加OPT(伪记录类型)资源记录对DNS协议进行扩展。OPT资源记录可包含0到多条EDNS选项(EDNS Option),EDNS选项采用TLV(Type-length-value,类型-长度-值)编码方式,选项码(Option Code)、选项长度(Option Length)和选项数据(Option Data)分别表示EDNS选项的类型、长度和值,RFC6891指定65001到65534之间的值为私有选项码(Local/Experimentaluse)。
3)DNS安全协议:RFC4035等定义了DNSSEC(Domain Name System SecurityExtensions,DNS安全协议),DNSSEC基于公私钥机制保障数据的完整性。权威DNS服务器通过ZSK(Zone Signing Key,区域签名密钥)私钥对区中的资源记录签名,同时将ZSK公钥封装在区顶点(Zone Apex)的DNSKEY(DNS Public Key)资源记录中发布,供终端或边缘服务器校验使用。
4)DNS多播协议:RFC6762定义了mDNS(Multicast DNS,DNS多播协议),用于在本地链路上交互消息,具有去中心化、易配置等优点,广泛应用于服务发现与注册领域。
本申请提供的报文处理方法对应网络的网络架构如图1所示,图1所示网络称为命名服务网络,命名服务网络包括基础设施层、边缘服务层和边缘调度层,边缘调度层位于基础设施层和边缘服务层之间。基础设施层由路由器、交换机、递归DNS服务器(图1中以递归DNS表示)和家庭智能网关等设备组成,边缘服务层由边缘服务器(边缘服务器为图1中提供边缘服务的服务器)组成,边缘调度层由名字网关组成,其中名字网关是命名服务网络的数据流量入口,其功能是根据DNS报文的内容进行NSN(Named Service Networking,命名服务网络)网内调度。其中与命名服务网络相关的关键信息如下:
a)命名服务网络定界:网络运营机构(如电信运营商)可以根据实际情况,将区域内相互连接的多个边缘服务器(如边缘机房)等划分为一个命名服务网络,将mDNS协议作为控制平面的消息发布协议,并通过适当的路由配置控制mDNS协议对应的多播范围,使之完全覆盖且不超出命名服务网络的界限。
b)命名服务网络描述:网络运营机构生成命名服务网络的权连通图,权连通图的顶点代表边缘服务器、边代表边缘服务器之间的物理连接、边的权值代表物理连接的综合状况(如距离、带宽等)。网络运营机构为权连通图的每个顶点分配一个边缘服务器的标指(如机房编号)及其IP地址范围,并通过mDNS协议发布权连通图。
c)边缘服务部署:边缘服务提供商部署边缘服务,以边缘服务提供商其自有域名命名边缘服务并保证全网范围内域名与其他网络服务之间的映射关系具有同一性,即一个域名对应的边缘服务和其他网络服务以域名来标识,从而保持一致性。
d)边缘服务注册:边缘服务器发布边缘服务的注册信息,边缘服务的注册信息包括边缘服务名字、边缘服务器的IP地址、边缘服务器的标识(如边缘机房的编号)、聚合标识和数字签名,以完成边缘服务注册,其中聚合标识的取值可以为私有选项码或0,如果聚合标识的取值为私有选项码,说明支持聚合通信模式,如果聚合标识的取值为0,说明不支持聚合通信模式,其中边缘服务器可以通过mDNS协议发布边缘服务的注册信息。
e)名字网关部署:网络运营机构、公共递归服务商等在所属的递归DNS服务器、可编程路由器、可编程交换机、家庭智能网关等设备的数据平面部署名字网关。
下面结合附图对本申请实施例提供的报文处理方法进行说明,如图2所示,其示出了本申请实施例提供的一种报文处理方法的信令图,可以包括以下步骤:
101:终端根据DNS报文格式在问题段和DNS附加段中写入数据,得到DNS查询报文。其中终端可以在DNS附加段中加入聚合标识字段、终端IP地址字段、名字网关IP地址字段、应用信息字段和签名信息字段,如图3所示,终端根据DNS报文格式在问题段(图3中以DNS问题段表示)和DNS附加段中写入数据时,可以在问题段的QNAME字段和QTYPE字段分别写入边缘服务名字和A/AAAA,在DNS附加段的聚合标识字段、终端IP地址字段、名字网关IP地址字段、应用信息字段和签名信息字段中分别写入边缘服务注册时发布的私有选项码、零、零、与终端当前业务需求匹配的应用信息、应用信息的数字签名。其中聚合标识字段为DNS附加段中的EDNS选项码,终端IP地址字段、名字网关IP地址字段、应用信息字段和签名信息字段为DNS附加段的EDNS选项数据中的各个字段。
在本实施例中,签名信息字段是DNS附加段的可选字段,同样的终端在封装DNS查询报文时,终端在签名信息字段中写入应用信息的签名是一个可选步骤,应用信息的签名可以是但不限于是应用信息的数字签名。
边缘服务名字可以由边缘服务所属边缘服务提供商生成,如将边缘服务所属边缘服务提供商的域名作为边缘服务名字,边缘服务名字可发布至命名服务网络的全网。
终端利用终端服务提供商生成的公私钥对中的私钥对应用信息进行签名,得到应用信息的数字签名。其中终端服务提供商生成的公私钥对中的公钥用于生成终端服务名字的DNSKEY资源记录,DNSKEY资源记录加入在终端服务提供商的域名所属签名区。
如DNSKEY资源记录中的NAME为终端服务名字,RDATA包含公钥。同时利用私钥对区中的资源记录签名,进一步通过权威DNS服务器向命名服务网络的全网发布签名区的资源记录及其签名记录。
终端应用名字的生成方式是终端应用提供商以自有域名为区顶点生成终端应用区,对终端应用区中各终端的全局唯一识别码进行编码,生成标准域名标签,以标准域名标签为前缀生成终端应用区顶点的子域名,子域名作为全网唯一的终端应用名字。
终端在封装DNS查询报文时,可以在DNS附加段中写入终端应用名字。终端应用提供商可以为终端应用区部署DNSSEC生成终端应用签名区,进一步通过权威DNS服务器向命名服务网络的全网发布终端应用签名区,终端应用签名区为上述终端服务提供商的域名所属签名区。
102:终端发送DNS查询报文。
103:名字网关拦截到终端发送的DNS查询报文后,根据DNS报文格式解析DNS查询报文,以从DNS查询报文中提取数据。
104:名字网关如果从问题段的QNAME字段和QTYPE字段、从DNS附加段的聚合标识字段、终端IP地址字段和名字网关IP地址字段中提取到的数据符合第二预设条件,在DNS附加段的终端IP地址字段和名字网关IP地址字段中保存IP首部字段中的源IP地址和目的IP地址,并将IP首部的源IP地址和目的IP地址分别修改为名字网关的IP地址和首选边缘服务器的IP地址。
其中第二预设条件包括根据QNAME字段中的边缘服务名字查找到对应的名字路由表项、名字路由表项中的聚合标识不为0、从QTYPE字段提取到A/AAAA、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端IP地址字段和名字网关IP地址字段分别提取到零。
名字网关在确定提取到的数据符合第二预设条件时,名字网关确定首选边缘服务器,其确定首选边缘服务器的过程如下:
如果名字路由表中不同边缘服务器中同时存在多个同名边缘服务,根据权连通图确定距离名字网关最近的边缘服务器,距离名字网关最近的边缘服务器为首选边缘服务器,边缘服务为DNS查询报文中携带的边缘服务名字指向的边缘服务。如果名字路由表中不同边缘服务器之间不存在同名边缘服务,查询与DNS查询报文中携带的边缘服务名字匹配的名字路由表项;将名字路由表项中边缘服务器的标识指向的边缘服务器确定为首选边缘服务器。名字网关通过这两种方式能够确定处理边缘服务的首选边缘服务器,实现精准调度,并且在确定首选边缘服务器后,将首选边缘服务器的IP地址写入到IP首部的目的IP地址中。
105:名字网关向首选边缘服务器发送调整后的DNS查询报文。
106:首选边缘服务器接收到DNS查询报文后,根据DNS报文格式解析DNS查询报文,从DNS查询报文中获取终端应用名字,根据终端应用名字,获得终端应用名字的公钥。
107:首选边缘服务器利用终端应用名字的公钥验证DNS查询报文中的应用信息的完整性,如果验证通过,在DNS应答报文的DNS附加段的聚合标识字段、终端IP地址字段、名字网关IP地址字段、应用信息字段和签名信息字段中分别写入边缘服务注册时发布的私有选项码、从DNS查询报文的终端IP地址字段中获得的数据、从DNS查询报文的名字网关IP地址字段中获得的数据、与边缘服务器当前业务需求匹配的应用信息、应用信息的数字签名。
首选边缘服务器可以查询终端应用名字的DNSKEY资源记录,从DNSKEY资源记录中获取终端应用名字的公钥并通过DNSSEC信任链验证其完整性,如果针对公钥的验证通过,则基于DNSKEY资源记录的TTL将公钥缓存到首选边缘服务器的本地供后续使用。进一步,首选边缘服务器可以利用公钥验证应用信息的完整性,以确定是否验证通过。
在本实施例中,首选边缘服务器在接收到DNS查询报文后,按照步骤107在DNS应答报文的各字段中写入数据。其中在DNS应答报文写入数据过程中,DNS应答报文的DNS附加段中的签名信息字段是一个可选字段,同样的首选边缘服务器在封装DNS应答报文时,首选边缘服务器在签名信息字段中写入应用信息的签名是一个可选步骤,应用信息的签名可以是但不限于是应用信息的数字签名。在封装DNS应答报文前的验证过程也是一个可选步骤。
108:首选边缘服务器发送DNS应答报文。
109:名字网关拦截到DNS应答报文后,根据DNS报文格式解析DNS查询报文,以从DNS应答报文中提取数据。
110:名字网关如果从问题段的QNAME字段和QTYPE字段、从DNS附加段的聚合标识字段、IP首部字段中提取到的数据符合第四预设条件,将IP首部字段中源IP地址还原成名字网关IP地址字段中保存的名字网关的IP地址,将目的IP地址还原成终端IP地址字段中保存的终端的IP地址。
其中第四预设条件包括IP首部字段中源IP地址和目的IP地址分别写入首选边缘服务器的IP地址和名字网关的IP地址、根据QNAME字段中的边缘服务名字查找到对应的名字路由表项、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从QTYPE字段提取到A/AAAA。
111:名字网关利用终端的IP地址发送还原后的DNS应答报文,即将还原后的DNS应答报文发送到终端的IP地址指向的终端。
112:终端在接收DNS应答报文后,根据DNS报文格式解析DNS应答报文,以从DNS应答报文中提取数据。
113:终端如果从DNS附加段的聚合标识字段、终端IP地址字段、名字网关IP地址字段和应用信息字段中提取到的数据符合第一预设条件,执行与DNS应答报文中的应用信息匹配的操作。终端执行的操作与应用信息相关,本实施例不对终端执行的操作进行一一说明。
其中第一预设条件包括从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端IP地址字段和名字网关IP地址字段提取到的数据不为零。可选的第一预设条件还包括应用信息字段提取到的数据通过校验。终端对应用信息字段中提取到的数据进行校验的过程是:终端根据DNS应答报文中的边缘服务名字,查找与边缘服务名字匹配的DNSKEY资源记录,从DNSKEY资源记录获取边缘服务名字对应的公钥;利用边缘服务名字对应的公钥对DNS应答报文中应用信息的完整性进行校验。如果提取到的数据不符合第一预设条件,终端可以根据DNS应答报文中返回的IP地址继续访问网络服务,如继续访问边缘服务或云服务等。
上述终端根据DNS报文格式在问题段和DNS附加段中写入数据,得到DNS查询报文;发送DNS查询报文;具体在QNAME字段和QTYPE字段分别写入边缘服务名字和A/AAAA,在聚合标识字段、终端IP地址字段、名字网关IP地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、零、零、与终端当前业务需求匹配的应用信息,实现在DNS查询报文中同时封装边缘服务名字和与终端当前业务需求匹配的应用信息,有效减少交互次数,通过在DNS查询报文中聚合边缘服务名字和应用信息的方式提高信道利用率以降低时延,从而提升边缘服务的数据收集效率和分发效率,提高数据的上传效率。
请参见图4,其示出了本申请实施例提供的另一种报文处理方法的信令图,在图2基础上还可以包括以下步骤:
114:名字网关如果从问题段的QNAME字段和QTYPE字段中提取到的数据符合第三预设条件,根据名字网关所属权连通图确定目标边缘服务器。
115:名字网关将目标边缘服务器的IP地址发送给终端。
116:终端在接收到目标边缘服务器的IP地址后,利用目标边缘服务器的IP地址进一步访问边缘服务。
其中第三预设条件包括根据从QNAME字段提取的边缘服务名字查找到对应的名字路由表项、从QTYPE字段提取到A/AAAA。
名字网关根据名字网关所属权连通图确定目标边缘服务器的可选方式是:根据权连通图的各顶点的IP地址范围判断终端应用名字所在顶点,并确定距离终端应用名字所在顶点最近的边缘服务器,将该边缘服务器作为目标边缘服务器。
名字网关在获取权连通图后,确定名字网关在权连通图中的位置以及根据权连通图创建名字路由表,名字路由表包括至少一条名字路由表项,每条名字路由表项包括边缘服务名字、边缘服务器的IP地址、边缘服务器的标识和聚合标识,以利用名字路由表来辅助名字网关确定首选边缘服务器和辅助名字网关确定所接收到报文的处理方式,如是利用图2所示报文处理方式处理报文(可称为边缘聚合通信模式),还是利用图4中的步骤114和步骤115处理报文(可称为边缘分离通信模式)。
名字网关在获取到边缘服务的注册信息后,还可以对边缘服务的注册信息进行校验。如果校验通过,根据边缘服务的注册信息更新名字网关的名字路由表,更新过程不再阐述,且名字网关对边缘服务的注册信息的校验过程与终端对应用信息的校验过程相同。
名字网关如果从问题段的QNAME字段和QTYPE字段中提取到的数据不符合第三预设条件,转发DNS查询报文,例如如果名字网关根据QNAME字段中的边缘服务名字没有查找到对应的名字路由表项或QTYPE字段提取到的数据不是为A/AAAA,则名字网关将DNS查询报文发送给递归DNS服务器,由递归DNS服务器基于DNS的云端调度模式进行处理。同样的在根据QNAME字段中的边缘服务名字没有查找到对应的名字路由表项或QTYPE字段提取到的数据不是为A/AAAA时,DNS查询报文中也没有写入应用信息和应用信息的数字签名,在终端得到递归DNS服务器的反馈后发送DNS应用报文,这一过程是目前CDN使用的报文处理方式,简称为传统分离通信模式。
上述实施例提供的报文处理方法,从技术、工程、产业三个角度来说具备如下优点:
1)技术视角
精准调度。网络运营机构对终端的IP地址规划往往是保密的、动态的,CDN中的权威DNS服务器无法获得边缘服务器及终端的IP地址,仅能通过递归DNS服务器(图5中简称为递归服务器)根据两者的IP地址进行粗粒度地调度(传统分离通信模式),从而有可能调度到距离终端较远的边缘服务器。在边缘聚合通信模式和边缘分离通信模式下,通过名字网关无论是否存在多个同名边缘服务,都能够实现精准调度,例如在边缘分离通信模式下,名字网关根据权连通图获得各边缘服务器(如机房)的IP地址范围,用以确定终端在权连通图中的位置,基于名字路由表进行最短路径计算,找到距离终端最近的边缘服务器(边缘服务器为图5中提供边缘服务的服务器),实现精准调度,如图5所示。边缘聚合通信模式下,名字网关基于名字路由表将报文调度到距离名字网关最近的边缘服务器(称为首选边缘服务),实现对边缘服务器的最优调度。
低时延。边缘分离通信模式下名字信息查询过程绕过了DNS云端调度,而应用信息的交互对象也从云端服务变为边缘服务,大幅降低了应用服务时延。传统通信模式中终端与边缘服务器包含DNS报文和应用报文两次交互,边缘聚合通信模式下将名字信息(如终端应用名字)与应用信息封装于同一报文内,基于名字信息直接将报文路由至最近的边缘服务器,能够有效减少终端与边缘服务器之间的交互次数,通过报文聚合(名字信息和应用信息的聚合)提高信道利用率。申请人随机抽取100个热点域名为样本,通过PING(PacketInternet Groper)对三种通信模式的时延进行了测试,实验结果如图6所示,传统分离通信模式、边缘分离通信模式、边缘聚合通信模式的平均时延分别为248毫秒、0.6毫秒、0.28毫秒,边缘分离通信模式和边缘聚合通信模式能够有效降低时延,且在这两种模式下时延随报文长度的增长无显著变化,由此可见,实施边缘聚合通信模式和边缘分离通信模式的命名服务网络具备低时延通信能力,能够有效提升网络服务的数据收集和数据分发效率。
高并发。相比NAT(Network Address Translation,网络地址转换)技术,名字网关自动隧道的无状态特性,使之能够更加高效地处理报文。对NAT来说接收到一条报文记录一条状态,等这条报文回来再根据记录的状态进行应答,因此NAT需要记录和维护状态表,而从图3所示本申请的DNS报文格式可知,源IP地址、目的IP地址、名字网关的IP地址和终端的IP地址都记录在同一个报文中,使得名字网关不需要记录和维护状态表,利用自身所记录信息即可完成报文转发。申请人在操作系统内核实现了名字网关原型,并对比测试了名字网关自动隧道和NAT的并发性能,实验结果如图7所示,名字网关自动隧道的并发性能为单核65万QPS(Queries Per Second)且基本随核数线性增长(12核时达到782万QPS,10Gbps),NAT的并发性能为单核37.8万QPS且多核并发冲突较为显著(12核时仅为144万QPS)。进一步测试了名字网关的边缘调度,其并发性能与自动隧道转发相当。由此可见,名字网关具备高并发通信能力,能够有力支撑边缘计算,缓解流量汇聚引发的在计算、存储、网络等方面的一系列问题,提升网络服务的数据收集、数据存储、数据处理和数据分发效率。
2)工程视角
向下兼容。边缘分离通信模式向下兼容是显而易见的,边缘聚合通信模式采用标准DNS协议对名字信息和应用信息进行封装,得到的报文形式上仍然采用标准DNS报文格式,以确保与传统分离通信模式兼容,其自适应机制能确保向下兼容现有网络。此外终端还能够利用传统分离通信模式进行处理,通过对DNS应答报文中DNS附加段的检测,能够快速切换至边缘分离通信模式或传统分离通信模式,实现与现有网络的兼容。
例如终端向公共的递归DNS服务器(简称公共递归DNS服务器)发送DNS查询报文,公共递归DNS服务器可以正常回应A/AAAA记录(如表1所示),向终端反馈DNS响应报文。其中正常回应A/AAAA记录表示公共递归DNS服务器能够处理携带有A/AAAA的DNS查询报文,并向终端反馈正确的DNS响应报文。然后终端可以对DNS应答报文中的EDNS私有数据进行检测,如果从聚合标识字段、终端IP地址字段、名字网关IP地址字段和应用信息字段中提取到的数据符合第一预设条件,执行与DNS应答报文中的应用信息匹配的操作;如果不符合第一预设条件,可以切换至分离通信模式(边缘分离通信模式或传统分离通信模式),根据DNS应答报文中返回的IP地址继续访问网络服务,实现与现有网络的兼容。
表1
易实施。不同于NDN等信息中心网络,命名服务网络可以部署于递归DNS服务器的数据平面。因此,在命名服务网络推广初期,网络运营机构无需大规模改造路由器、交换机等基础设施,只需在数量相对较少的递归DNS服务器上部署名字网关,即可完成命名服务网络的建设并开展相关业务,对于路由器、家庭智能网关等设备的改造可随着业务的发展,根据实际需求分步推进。
3)产业视角
产业生态良好。不同于NDN等信息中心网络颠覆式的“单细腰”模型,命名服务网络在TCP/IP网络的基础上,充分利用现有成熟技术构建名字路由层形成“双细腰”模型(图8为TCP/IP、NSN(边缘聚合通信模式)和NDN三种模型的对比图),在支撑各类新型应用需求的同时,能够充分继承现有产业生态:一方面,除了采用边缘聚合通信模式(超低时延场景)的网络服务和终端应用需做局部修改,大部分网络服务和终端应用都无需做任何改动;另一方面,现有的数据平面编程和可编程交换机等技术能够有效支撑名字网关的实现。
商业模式清晰。在NDN等信息中心网络中,相关网络基础设施由网络运营机构投资改造,网内缓存根据热度等因素缓存内容以提升访问效率,而访问效率提升带来的收益却由网络服务提供商获得,网络运营机构如何分润网络服务商的收益是一个难题。在命名服务网络中,网络运营机构能够以边缘服务注册为抓手,基于边缘调度次数、隧道转发次数等因素向相关网络服务提供商收取费用。
下面结合图9所示火车站场景为例进行说明,电信运营商将火车站中的汇聚机房、候车室站点机房和停车场站点机房划分为一个命名服务网络,在可编程路由器上部署名字网关,并通过mDNS协议发布命名服务网络的权连通图。在得到命名服务网络后,命名服务网络中的各设备可利用上述报文处理方法实现以下功能:
1)边缘热点视频服务部署。今日头条服务提供商(toutiao.com为其自有域名)在候车室站点机房部署热点视频V1、V2的边缘热点视频服务S1、S2(在现有网络中V1、V2分别通过v1.toutiao.com、v2.toutiao.com访问),以v1.toutiao.com、v2.toutiao.com分别作为S1、S2的名字并通过发布边缘服务的注册信息的方式完成边缘服务注册。
2)边缘室内导航服务部署。高德地图服务提供商(amap.com为其自有域名)在停车场部署E1、E2等传感设备,在传感设备上安装终端应用,按照上述报文处理方法中将标准域名标签作为终端应用名字的方式生成终端应用名字x1.amap.com、x2.amap.com作为唯一标识。进一步,高德地图服务提供商(高德地图在现有网络中通过www.amap.com提供服务)在停车场站点机房中部署边缘室内导航服务,以www.amap.com作为边缘服务的名字并通过发布边缘服务的注册信息的方式完成边缘服务注册。其中图9中提供边缘室内导航服务和边缘热点视频服务的服务器为边缘服务器。
3)热点视频加速。乘客在候车室通过智能手机访问热点视频V1(通过DNS协议查询v1.toutiao.com的IP地址)时,站点机房的名字网关按照边缘分离通信模式,将访问调度到边缘热点视频服务S1,以满足候车室场景中高并发、高速率的需求。乘客在站台访问相关热点视频时,汇聚机房的名字网关同样按照边缘分离通信模式进行调度,避免云端访问以提升用户体验。
4)自动泊车辅助。E1、E2等传感设备循环采样,传感设备上的终端应用采用边缘聚合通信模式,将采样数据封装在DNS查询报文并进行签名,然后向递归DNS服务器发送该DNS查询报文,名字网关截获DNS查询报文并通过自动隧道将报文转发给边缘室内导航服务器,边缘室内导航服务器收集来自各传感设备的DNS查询报文并验证,进一步综合分析生成停车场的实时状况图(包含行驶车辆的位置、速度和移动方向,空闲车位位置,故障车辆位置等信息)。另一方面,驾驶员将智能汽车驶至停车场附近下车后,装有高德地图(终端应用)的智能汽车自行驶入停车场并接入停车场的5G网络,高德地图切换到边缘聚合通信模式,按边缘聚合通信模式封装DNS查询报文,名字网关同样拦截报文并将其转发给边缘室内导航服务器,边缘室内导航服务器按边缘聚合通信模式封装DNS应答报文并签名,然后将DNS应答报文发送给名字网关,名字网关转发至运行高德地图的智能汽车,智能汽车用获取到的停车场实时状况图辅助智能汽车完成自动泊车。
与上述方法实施例相对应,本申请实施例还提供一种报文处理装置,应用于终端中,其可选结构如图10所示,可以包括:封装单元10和发送单元20。
封装单元10,用于根据DNS报文格式在问题段和DNS附加段中写入数据,得到DNS查询报文。
发送单元20,用于发送DNS查询报文。
其中封装单元10在问题段的QNAME字段和QTYPE字段分别写入边缘服务名字和A/AAAA,在DNS附加段的聚合标识字段、终端IP地址字段、名字网关IP地址字段、应用信息字段和签名信息字段中分别写入边缘服务注册时发布的私有选项码、零、零、与终端当前业务需求匹配的应用信息、应用信息的数字签名。
在本实施例中,签名信息字段是DNS附加段的可选字段,同样的封装单元10在封装DNS查询报文时,封装单元10在签名信息字段中写入应用信息的签名是一个可选步骤,应用信息的签名可以是但不限于是应用信息的数字签名。
上述图10所示报文处理装置还可以包括:接收单元30、解析单元40和执行单元50。
接收单元30,用于接收DNS应答报文。
解析单元40,用于根据DNS报文格式解析DNS应答报文,以从DNS应答报文中提取数据。
执行单元50,用于如果从DNS附加段的聚合标识字段、终端IP地址字段、名字网关IP地址字段和应用信息字段中提取到的数据符合第一预设条件,执行与DNS应答报文中的应用信息匹配的操作;
第一预设条件包括从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端IP地址字段和名字网关IP地址字段提取到的数据不为零,且应用信息字段提取到的数据通过校验。其中第一预设条件中应用信息字段提取到的数据通过校验是一个可选步骤。
此外,应用于终端中的报文处理装置还可以包括:查找单元和校验单元。查找单元,用于根据DNS应答报文中的边缘服务名字,查找与边缘服务名字匹配的DNSKEY资源记录,从DNSKEY资源记录获取边缘服务名字对应的公钥;校验单元,用于利用边缘服务名字对应的公钥对DNS应答报文中应用信息的完整性进行校验。
应用于终端中的报文处理装置还可以包括:生成单元,用于生成终端应用名字,其生成方式是终端应用提供商以自有域名为区顶点生成终端应用区,对终端应用区中各终端的全局唯一识别码进行编码,生成标准域名标签,以该标准域名标签为前缀生成终端应用区顶点的子域名,将子域名作为全网唯一的终端应用名字;相对应的接收单元,还用于接收终端服务提供商生成的公私钥对中的私钥,公私钥对中的公钥用于生成终端服务名字的DNSKEY资源记录,DNSKEY资源记录加入在终端服务提供商的域名所属签名区。
请参见图11,其示出了本申请实施例提供的应用于名字网关中的报文处理装置,可以包括:拦截单元100、解析单元200、修改单元300和发送单元400。
拦截单元100,用于拦截终端发送的DNS查询报文。
解析单元200,用于根据DNS报文格式解析DNS查询报文,以从DNS查询报文中提取数据。
修改单元300,用于如果从问题段的QNAME字段和QTYPE字段、从DNS附加段的聚合标识字段、终端IP地址字段和名字网关IP地址字段中提取到的数据符合第二预设条件,在DNS附加段的终端IP地址字段和名字网关IP地址字段中保存IP首部字段中的源IP地址和目的IP地址,并将IP首部的源IP地址和目的IP地址分别修改为名字网关的IP地址和首选边缘服务器的IP地址。
发送单元400,用于向首选边缘服务器发送调整后的DNS查询报文。
其中第二预设条件包括根据QNAME字段中的边缘服务名字查找到对应的名字路由表项、名字路由表项中的聚合标识不为0、从QTYPE字段提取到A/AAAA、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端IP地址字段和名字网关IP地址字段分别提取到零。
发送单元400,还用于如果从问题段的QNAME字段和QTYPE字段中提取到的数据符合第三预设条件,根据名字网关所属权连通图确定目标边缘服务器,将目标边缘服务器的IP地址发送给终端;其中第三预设条件包括根据从QNAME字段提取的边缘服务名字查找到对应的名字路由表项、从QTYPE字段提取到A/AAAA。
此外,拦截单元100,还用于拦截边缘服务器发送的DNS应答报文。
解析单元200,还用于根据DNS报文格式解析DNS应答报文,以从DNS应答报文中提取数据。
修改单元300,还用于如果从问题段的QNAME字段和QTYPE字段、从DNS附加段的聚合标识字段、IP首部字段中提取到的数据符合第四预设条件,将IP首部字段中源IP地址还原成名字网关IP地址字段中保存的名字网关的IP地址,将目的IP地址还原成终端IP地址字段中保存的终端的IP地址;
发送单元400,还用于利用终端的IP地址发送还原后的DNS应答报文;
其中,第四预设条件包括IP首部字段中源IP地址和目的IP地址分别写入首选边缘服务器的IP地址和名字网关的IP地址、根据QNAME字段中的边缘服务名字查找到对应的名字路由表项、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从QTYPE字段提取到A/AAAA。
在本实施例中,确定首选边缘服务器包括:如果名字路由表中不同边缘服务器中同时存在多个同名边缘服务,根据权连通图确定距离名字网关最近的边缘服务器,距离名字网关最近的边缘服务器为首选边缘服务器,边缘服务为DNS查询报文中携带的边缘服务名字指向的边缘服务。如果名字路由表中不同边缘服务器之间不存在同名边缘服务,查询与DNS查询报文中携带的边缘服务名字匹配的名字路由表项,将名字路由表项中边缘服务器的标识指向的边缘服务器确定为首选边缘服务器。
可选的,应用于名字网关中的报文处理装置还可以包括:校验单元和更新单元。校验单元,用于获取边缘服务的注册信息,对边缘服务的注册信息进行校验;更新单元,用于如果校验通过,根据边缘服务的注册信息更新名字网关的名字路由表,名字网关的名字路由表用于辅助名字网关确定首选边缘服务器和辅助名字网关确定所接收到报文的处理方式。
可选的,应用于名字网关中的报文处理装置还可以包括:创建单元,用于获取权连通图,并确定名字网关在权连通图中的位置以及根据权连通图创建名字路由表,名字路由表包括至少一条名字路由表项,每条名字路由表项包括边缘服务名字、边缘服务器的IP地址、边缘服务器的标识和聚合标识;权连通图的顶点代表边缘服务器、边代表边缘服务器之间的物理连接、边的权值代表物理连接的综合状况。
请参见图12,其示出了本申请实施例提供的应用于边缘服务器中的报文处理装置,可以包括:写入单元1000和发送单元2000。
写入单元1000,用于在接收到DNS查询报文后,在DNS应答报文的DNS附加段中写入数据。其中在DNS应答报文的DNS附加段中写入数据包括在聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、从DNS查询报文的终端网际协议地址字段中获得的数据、从DNS查询报文的名字网关网际协议地址字段中获得的数据、与边缘服务器当前业务需求匹配的应用信息。
发送单元2000,用于发送DNS应答报文。
其中写入单元1000,用于如果DNS查询报文中的应用信息通过完整性验证,在DNS应答报文的DNS附加段中写入数据;在DNS应答报文的DNS附加段中写入数据包括在签名信息字段中写入应用信息的签名。
上述应用于边缘服务器中的报文处理装置还可以包括:获取单元和验证单元。获取单元,用于根据DNS报文格式解析DNS查询报文,从DNS查询报文中获取终端应用名字,根据终端应用名字,获得终端应用名字的公钥;验证单元,用于利用终端应用名字的公钥验证DNS查询报文中的应用信息的完整性,如果验证通过,执行在DNS应答报文的DNS附加段中写入数据;其中在DNS应答报文的DNS附加段中写入数据包括在签名信息字段中写入应用信息的签名。
此外,应用于边缘服务器中的报文处理装置还可以包括:确定单元,用于将边缘服务所属边缘服务提供商的域名作为边缘服务名字;接收单元,用于接收边缘服务提供商生成的公私钥对中的私钥,公私钥对中的公钥用于生成边缘服务名字的DNSKEY资源记录,DNSKEY资源记录记录在边缘服务提供商的域名所属签名区。
此外,应用于边缘服务器中的报文处理装置还可以包括:发布单元,用于发布边缘服务的注册信息,边缘服务的注册信息包括边缘服务名字、边缘服务器的IP地址、边缘服务器的标识、聚合标识和数字签名,以完成边缘服务注册;其中聚合标识的取值为私有选项码或0,数字签名是利用私钥对边缘服务名字、边缘服务器的IP地址、边缘服务器的标识、聚合标识进行签名时得到。
在本实施例中,上述报文处理装置的执行过程请参见上述方法实施例,此处不在阐述。
本申请实施例提供一种终端,终端包括:一个或多个处理器、存储器。其中,存储器用于存储一个或多个计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,终端执行上述报文处理方法。
本申请实施例提供一种名字网关,名字网关包括:一个或多个处理器、存储器。其中,存储器用于存储一个或多个计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,名字网关执行上述报文处理方法。
本申请实施例提供一种边缘服务器,名字网关包括:一个或多个处理器、存储器。其中,存储器用于存储一个或多个计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,边缘服务器执行上述报文处理方法。
本申请实施例提供一种计算机存储介质,计算机存储介质包括计算机指令,当计算机指令运行时执行上述报文处理方法。
需要说明的是,本说明书中的各个实施例可以采用递进的方式描述、本说明书中各实施例中记载的特征可以相互替换或者组合,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

Claims (17)

1.一种报文处理方法,其特征在于,应用于终端中,所述方法包括:
所述终端根据域名系统报文格式在问题段和域名系统附加段中写入数据,得到域名系统查询报文;
所述终端发送所述域名系统查询报文;
其中所述终端在所述问题段的查询域名字段和查询类型字段分别写入边缘服务名字和A/AAAA,在所述域名系统附加段的聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、零、零、与终端当前业务需求匹配的应用信息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述终端接收域名系统应答报文;
根据域名系统报文格式解析所述域名系统应答报文,以从所述域名系统应答报文中提取数据;
如果提取到的数据符合第一预设条件,执行与所述域名系统应答报文中的应用信息匹配的操作;
所述第一预设条件包括从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端网际协议地址字段和名字网关网际协议地址字段提取到的数据不为零。
3.根据权利要求2所述的方法,其特征在于,所述终端得到所述域名系统查询报文时,在所述域名系统附加段的签名信息段中写入所述应用信息的签名;
所述第一预设条件还包括应用信息字段提取到的数据通过校验。
4.根据权利要求2或3所述的方法,其特征在于,所述方法还包括:如果提取到的数据不符合所述第一预设条件,根据域名系统应答报文中返回的网际协议地址继续访问网络服务。
5.一种报文处理方法,其特征在于,应用于名字网关中,所述方法包括:
所述名字网关拦截终端发送的域名系统查询报文;
根据域名系统报文格式解析所述域名系统查询报文,以从所述域名系统查询报文中提取数据;
如果从所述域名系统查询报文中提取到的数据符合第二预设条件,在所述域名系统附加段的终端网际协议地址字段中保存网际协议首部字段中的源网际协议地址,在所述域名系统附加段的名字网关网际协议地址字段中保存网际协议首部字段中的目的网际协议地址,并将网际协议首部的源网际协议地址和目的网际协议地址分别修改为名字网关的网际协议地址和首选边缘服务器的网际协议地址;
向所述首选边缘服务器发送调整后的域名系统查询报文;
其中所述第二预设条件包括根据查询域名字段中的边缘服务名字查找到对应的名字路由表项、所述名字路由表项中的聚合标识不为0、从查询类型字段提取到A/AAAA、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端网际协议地址字段和名字网关网际协议地址字段分别提取到零。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
如果从所述域名系统查询报文中提取到的数据符合第三预设条件,根据名字网关所属权连通图确定目标边缘服务器,将所述目标边缘服务器的网际协议地址发送给所述终端;
其中所述第三预设条件包括根据从查询域名字段提取的边缘服务名字查找到对应的名字路由表项、从查询类型字段提取到A/AAAA。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:如果提取到的数据不符合所述第三预设条件,转发所述域名系统查询报文。
8.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述名字网关拦截边缘服务器发送的域名系统应答报文;
根据域名系统报文格式解析所述域名系统应答报文,以从所述域名系统应答报文中提取数据;
如果从所述域名系统应答报文中提取到的数据符合第四预设条件,将所述网际协议首部字段中源网际协议地址还原成所述名字网关网际协议地址字段中保存的名字网关的网际协议地址,将所述网际协议首部字段中目的网际协议地址还原成所述终端网际协议地址字段中保存的终端的网际协议地址;
利用所述终端的网际协议地址发送还原后的域名系统应答报文;
所述第四预设条件包括所述网际协议首部字段中源网际协议地址和目的网际协议地址分别写入首选边缘服务器的网际协议地址和名字网关的网际协议地址、根据查询域名字段中的边缘服务名字查找到对应的名字路由表项、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从查询类型字段提取到A/AAAA。
9.根据权利要求5所述的方法,其特征在于,所述名字网关确定首选边缘服务器包括:
如果名字路由表中不同边缘服务器中同时存在多个同名边缘服务,根据权连通图确定距离所述名字网关最近的边缘服务器,距离所述名字网关最近的边缘服务器为所述首选边缘服务器,所述边缘服务为所述域名系统查询报文中携带的边缘服务名字指向的边缘服务;
如果所述名字路由表中不同边缘服务器之间不存在同名边缘服务,查询与所述域名系统查询报文中携带的边缘服务名字匹配的名字路由表项,将所述名字路由表项中边缘服务器的标识指向的边缘服务器确定为所述首选边缘服务器。
10.根据权利要求5至9中任意一项所述的方法,其特征在于,所述方法还包括:
所述名字网关获取边缘服务的注册信息,对所述边缘服务的注册信息进行校验;
如果校验通过,根据所述边缘服务的注册信息更新名字网关的名字路由表,所述名字网关的名字路由表用于辅助所述名字网关确定所述首选边缘服务器和辅助所述名字网关确定所接收到报文的处理方式。
11.根据权利要求5至9中任意一项所述的方法,其特征在于,所述方法还包括:
所述名字网关获取权连通图,并确定所述名字网关在所述权连通图中的位置以及根据所述权连通图创建所述名字路由表,所述名字路由表包括至少一条名字路由表项,每条名字路由表项包括边缘服务名字、边缘服务器的网际协议地址、边缘服务器的标识和聚合标识;所述权连通图的顶点代表边缘服务器、边代表边缘服务器之间的物理连接、边的权值代表物理连接的综合状况。
12.一种报文处理方法,其特征在于,应用于边缘服务器中,所述方法包括:
所述边缘服务器在接收到域名系统查询报文后,在域名系统应答报文的域名系统附加段中写入数据;
发送所述域名系统应答报文;
其中在域名系统应答报文的域名系统附加段中写入数据包括在聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、从所述域名系统查询报文的终端网际协议地址字段中获得的数据、从所述域名系统查询报文的名字网关网际协议地址字段中获得的数据、与边缘服务器当前业务需求匹配的应用信息。
13.根据权利要求12所述的方法,其特征在于,所述在域名系统应答报文的域名系统附加段中写入数据包括:如果所述域名系统查询报文中的应用信息通过完整性验证,在所述域名系统应答报文的域名系统附加段中写入数据;
其中所述在域名系统应答报文的域名系统附加段中写入数据包括在签名信息字段中写入应用信息的签名。
14.根据权利要求12所述的方法,其特征在于,所述方法还包括:
根据域名系统报文格式解析所述域名系统查询报文,从所述域名系统查询报文中获取终端应用名字,根据所述终端应用名字,获得所述终端应用名字的公钥;
利用所述终端应用名字的公钥验证所述域名系统查询报文中的应用信息的完整性,如果验证通过,执行所述在域名系统应答报文的域名系统附加段中写入数据;
其中所述在域名系统应答报文的域名系统附加段中写入数据包括在签名信息字段中写入应用信息的签名。
15.一种报文处理装置,其特征在于,应用于终端中,所述装置包括:
封装单元,用于根据域名系统报文格式在问题段和域名系统附加段中写入数据,得到域名系统查询报文;
发送单元,用于发送所述域名系统查询报文;
其中所述封装单元在所述问题段的查询域名字段和查询类型字段分别写入边缘服务名字和A/AAAA,在所述域名系统附加段的聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、零、零、与终端当前业务需求匹配的应用信息。
16.一种报文处理装置,其特征在于,应用于名字网关中,所述装置包括:
拦截单元,用于拦截终端发送的域名系统查询报文;
解析单元,用于根据域名系统报文格式解析所述域名系统查询报文,以从所述域名系统查询报文中提取数据;
修改单元,用于如果从所述域名系统查询报文中提取到的数据符合第二预设条件,在所述域名系统附加段的终端网际协议地址字段中保存网际协议首部字段中的源网际协议地址,在所述域名系统附加段的名字网关网际协议地址字段中保存网际协议首部字段中的目的网际协议地址,并将网际协议首部的源网际协议地址和目的网际协议地址分别修改为名字网关的网际协议地址和首选边缘服务器的网际协议地址;
发送单元,用于向所述首选边缘服务器发送调整后的域名系统查询报文;
其中所述第二预设条件包括根据查询域名字段中的边缘服务名字查找到对应的名字路由表项、所述名字路由表项中的聚合标识不为0、从查询类型字段提取到A/AAAA、从聚合标识字段中提取到边缘服务注册时发布的私有选项码、从终端网际协议地址字段和名字网关网际协议地址字段分别提取到零。
17.一种报文处理装置,其特征在于,应用于边缘服务器中,所述装置包括:
写入单元,用于在接收到域名系统查询报文后,在域名系统应答报文的域名系统附加段中写入数据;
发送单元,用于发送所述域名系统应答报文;
其中在域名系统应答报文的域名系统附加段中写入数据包括在聚合标识字段、终端网际协议地址字段、名字网关网际协议地址字段和应用信息字段中分别写入边缘服务注册时发布的私有选项码、从所述域名系统查询报文的终端网际协议地址字段中获得的数据、从所述域名系统查询报文的名字网关网际协议地址字段中获得的数据、与边缘服务器当前业务需求匹配的应用信息。
CN202110928955.3A 2021-08-13 2021-08-13 一种报文处理方法及装置 Active CN113556413B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110928955.3A CN113556413B (zh) 2021-08-13 2021-08-13 一种报文处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110928955.3A CN113556413B (zh) 2021-08-13 2021-08-13 一种报文处理方法及装置

Publications (2)

Publication Number Publication Date
CN113556413A CN113556413A (zh) 2021-10-26
CN113556413B true CN113556413B (zh) 2023-07-25

Family

ID=78105678

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110928955.3A Active CN113556413B (zh) 2021-08-13 2021-08-13 一种报文处理方法及装置

Country Status (1)

Country Link
CN (1) CN113556413B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114500072B (zh) * 2022-02-10 2024-01-26 数贸科技(北京)有限公司 报文数据的传输方法及系统
CN114827197B (zh) * 2022-03-31 2023-09-12 远景智能国际私人投资有限公司 基于物联网的服务通信方法、装置、设备及介质
CN116032591A (zh) * 2022-12-23 2023-04-28 迈普通信技术股份有限公司 一种哑终端仿冒识别方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110839049A (zh) * 2018-08-15 2020-02-25 阿里巴巴集团控股有限公司 基于域名系统的数据调度方法和系统
CN111629401A (zh) * 2019-02-27 2020-09-04 大唐移动通信设备有限公司 一种边缘应用的数据分流方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1797696A1 (fr) * 2004-10-06 2007-06-20 France Telecom Procede et systeme de resolution dns distribuee
CN101170585B (zh) * 2007-11-13 2011-08-24 中兴通讯股份有限公司 一种域名查询方法
US8219644B2 (en) * 2008-07-03 2012-07-10 Barracuda Networks, Inc. Requesting a service or transmitting content as a domain name system resolver
CN101841521A (zh) * 2010-01-22 2010-09-22 中国科学院计算机网络信息中心 对dns报文中的身份信息进行认证的方法、服务器和系统
US10666602B2 (en) * 2017-05-05 2020-05-26 Microsoft Technology Licensing, Llc Edge caching in edge-origin DNS
CN107645573B (zh) * 2017-09-29 2020-07-10 中国人民解放军国防科技大学 一种探测递归域名服务器转发配置的方法
CN108833424B (zh) * 2018-06-25 2020-11-03 哈尔滨工业大学 一种获取域名所有资源记录的系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110839049A (zh) * 2018-08-15 2020-02-25 阿里巴巴集团控股有限公司 基于域名系统的数据调度方法和系统
CN111629401A (zh) * 2019-02-27 2020-09-04 大唐移动通信设备有限公司 一种边缘应用的数据分流方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
内容配送网路由请求系统的研究;胡鹏,洪佩琳,李津生,杨海松;计算机应用(02);全文 *

Also Published As

Publication number Publication date
CN113556413A (zh) 2021-10-26

Similar Documents

Publication Publication Date Title
CN113556413B (zh) 一种报文处理方法及装置
CN101656765B (zh) 身份位置分离网络的名址映射系统及数据传输方法
US10601769B2 (en) Mapping between classical URLs and ICN networks
US8375436B2 (en) Session migration over content-centric networks
US10069792B2 (en) Geolocation via internet protocol
US10931559B2 (en) Distribution of network-policy configuration, management, and control using model-driven and information-centric networking
CN104160680B (zh) 用于透明代理缓存的欺骗技术
US11438427B2 (en) Discovery of resources in a local network
CN105162900A (zh) 一种多节点协作的域名解析和缓存方法及系统
US20130191477A1 (en) Mapping system, network, and method for adaptation of id/loc separation to datacenter for cloud computing
CN101800781A (zh) 一种穿越nat的隧道过渡方法及系统
CN107580079A (zh) 一种报文传输方法和装置
EP2869510A1 (en) Express header for packets with hierarchically structured variable-length identifiers
CN109729183A (zh) 请求处理方法、装置、设备及存储介质
CN109246016B (zh) 跨vxlan的报文处理方法和装置
CN102185935B (zh) 一种面向资源的分层名字解析系统
CN104717639A (zh) 一种移动客户端访问互联网的方法和接入网关服务器
CN103685367A (zh) 离线下载系统和方法
CN101222410A (zh) 一种邻域-资源发现的方法和装置以及系统
Gulati et al. Software-defined content dissemination scheme for Internet of healthcare vehicles in COVID-like scenarios
Banerjee et al. The survey, research challenges, and opportunities in ICN
Kondo et al. ZINK: An efficient information centric networking utilizing layered network architecture
CN114268605B (zh) 一种智能dns实现方法、装置及计算机存储介质
Dong et al. Enhance Information Derivation by In-Network Semantic Mashup for IoT Applications
JP3968066B2 (ja) 名前解決システム

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