专家专栏 | 拓展DNS技术体系,支撑新型网络应用发表时间:2024-08-26 17:29 作者:张宇(哈尔滨工业大学,鹏城实验室),杨镕玮(鹏城实验室),马迪(互联网域名系统国家工程研究中心ZDNS) 关键词:DNS“映射层”、新型网络应用场景 引言 DNS自1983年诞生,伴随互联网走过了四十余载,已从一个简单的“寻址”应用演进成为一个支撑广泛互联网应用的“映射层”。本文梳理了在应用需求驱动下DNS技术演进的六大趋势:服务调度、数据管理、资源认证、设备连接、消息传输和内网解析,并对DNS技术面向六种新型网络场景的前景进行了展望,包括算力网络、工业网络、Web3.0、无人机网络、家庭网络和未来网络。 DNS: 互联网功能承载体系中的“映射层” “所有计算机科学问题可以通过另一层间接来解决”。DNS以“间接(indirection)”思想解决了计算机网络命名与解析问题,构建了分布式名字空间和请求应答服务的抽象,实现了“业务层”的域名空间与“互联层”的地址空间之间的映射。DNS在设计上的间接性与抽象性,赋予了在功能上的灵活性与简单性,令其成为互联网上通用的映射机制与关键基础设施,我们将其称之为“映射层”。 互联网功能承载体系 DNS提供了一个互联网的“汇合点”。DNS除了提供“纵向的”层间名字解析功能外,还为互联网提供了“横向的”的“汇合(rendezvous)”机制,允许各方在无需预先安排的情况下,彼此相遇。DNS具备作为一个“汇合点”的三大条件:众所周知、全局唯一、广泛可用。基于DNS汇合点可实现注册与发现、发布与订阅等基础服务模式,支持服务自动发现、会话初始化以及服务负载均衡等关键功能。 DNS已成为支撑互联网连通性与经济活力的关键。一方面,DNS是保障网络连通性的关键,DNS故障会引发网络中断,例如,2024年1月底,俄罗斯国家顶级域.RU的DNSSEC故障导致其下服务出现了大范围中断。另一方面,DNS是互联网经济生态的重要组成,是互联网品牌的重要载体。根据Verisign域名行业简报统计,截至2024年第一季度,全球域名注册量已高达3.6亿。 应用驱动DNS技术演进 DNS体系核心保持稳定,但用途却有些出乎意料。DNS仍如最初设计,核心用途是一个分布式管理数据库,但有三大变化。(1)从名字到品牌:域名从主机名成为了品牌名,特别是互联网新通用顶级域名(New gTLD)的出现及其全球范围的广泛申请,顶级域名的申请和运营成为数字品牌建设的重要内容;(2)从“问者无关”到“问者相关”:DNS起初的一个关键假设是查询响应的全局一致性,而如今DNS提供“同一问题、不同答案”的个性化解析;(3)从众多应用之一成为对应用的“控制点”:DNS作为访问应用的第一步,已成为对应用实施控制的中枢之一。 DNS技术体系显著发展,已成为一个庞然大物。一方面,DNS从一个协议发展为协议族。从最初的2篇基础RFC标准,已扩展到~230篇标准类RFC文档,共计~460篇各类RFC文档。另一方面,DNS技术标识符不断扩展。IANA管理下的DNS技术标识符已达22大类,包括~90个资源记录类型(RR Type)、~20个扩展选项码(EDNS0 OPT Code),以及~60个下划线名字(Underscored Name)。“The DNS Camel”报告指出,DNS相关的185篇RFC文档篇幅已经是《C++程序设计语言》第四版的二倍,DNS这只为互联网应用承载映射功能的“骆驼”有点不堪重负。为了更好地在整体上把握DNS技术标准演进方向,IETF于2022年成立“互联网域名(DNS)技术专家委员会”,负责审阅所有和DNS技术相关的互联网标准草案。 DNS技术演进主要动力来自于应用需求,从需求的抽象程度自顶向下,主要包括六个方面:服务调度、数据管理、资源认证、设备连接、消息传输和内网解析。 (1)全球-本地服务调度器 每一次解析都提供了一次“调度”的机会。DNS已成为实现就近服务、负载均衡、故障容错、自动部署的主要途径。DNS提供了三级服务调度点:(1)全球DNS,实现全局服务负载均衡,引导用户到位置最近或性能最佳的服务点;(2)数据中心网关,实现本地服务负载均衡,提高系统并发处理能力和容错性;(3)服务编排器,实现云原生的服务注册发现和负载均衡,支撑微服务实例管理。与HTTP重定向和网络层路由相比,基于DNS的调度更灵活、便捷且低成本。 (2)分布式管理数据库 DNS是一个通用的、分布式管理的、“名字-类型-数据”结构的数据库。分布式管理是指整个系统由在不同管理域下的小系统组成,这是互联网的核心价值。除了不断增加资源记录类型,下划线名字的命名约定机制进一步提高了DNS“类型”的可扩展性。以邮件安全应用为例,DNS分布式管理特性支撑了在整个互联网尺度下,利用下划线名字_spf、_dkim、_dmarc来扩展数据类型,分别存储发送方服务器、发送方公钥和邮件处理策略信息,以供接收方验证和处置邮件。 (3)资源认证基础设施 DNS层次化资源注册与委托体制是一个天然的资源认证基础设施。注册与委托过程实现网络实体与域名资源的绑定,并通过区文件将绑定具像化,各级权威和注册者通过对相应区文件的控制权来认证。以此为基础,ACME技术通过对域名控制权的认证实现了证书管理自动化,而DNSSEC技术通过数字签名将DNS扩展为一个轻量级PKI,基于DNSSEC的DANE技术进一步将认证能力拓展到了任意网络实体,实现了“命名即认证”。 (4)设备远程连接汇合点 DNS作为“汇合点”支持设备间在广域网上的发现与连接。一个用于汇合点的域名通过应用内置很容易实现众所周知,域名的唯一性保证汇合点全局唯一,DNS部署无处不在保证汇合机制广泛可用。一个典型案例是苹果公司于2007年推出的Back to My Mac(BTMM)服务,以members.me.com为汇合点,通过DNS服务发现(DNS-SD)、动态DNS更新(DDNS)以及DNS长久查询(DNS LLQs)等机制的协同工作,实现了用户设备在移动时自动更新网络位置信息,并保持与其他设备连接。 (5)消息(隐秘)传输通道 DNS提供了普遍、通用、灵活、隐秘的消息传递通道。DNS提供了两种消息传递方式,一是通信双方之间请求应答,二是通信双方通过一个中间的权威服务器,一方写入区数据,另一方解析其中数据。网络攻击者通过在DNS查询和响应中嵌入私有数据,实现命令控制(C2)和数据渗透等功能。一个典型例子是,2017年WannaCry勒索病毒的“开关”是判断若干内置域名是否可解析。换一个角度看,DNS通道技术也可用于在受限网络环境下的远程访问,或作为即时通信应用受损时的应急通信手段。 (6)内网/专网解析 DNS技术不仅仅限于互联网上的“The DNS”(ICANN管理的全球名字空间)基础设施,也适用于无需全球协调的内网或专网之中。一些DNS技术面向有限范围的网络内,而无需依赖于全球DNS基础设施。这类技术通常有一个非全球性的TLD,即不在全球公共DNS中注册或使用的TLD。例如,.local用于mDNS,实现在局域网内设备和服务发现;.home.arpa用于家庭网络配置协议HNCP。此外,为支持实验性的DNS技术,.alt被标准化用于替代名字空间。 DNS支撑新型网络应用 DNS“映射层”具备的强大、多样的功能,令其成为满足新型网络应用需求的理想之选。新型网络应用场景应充分考虑利用现有DNS基础设施,降低设计、开发、部署、推广和维护的成本,而“不必重复发明轮子”。DNS的优势体现在八个方面: (1)分布式和去中心化,满足互联网尺度上分布式管理需求,支持大规模增量部署; (2)兼容性和扩展性,支持传统映射功能的同时,支持新记录和功能扩展,适应多变应用需求; (3)成熟和广泛支持,技术成熟,系统稳定,应用可轻松地跨平台和设备实现; (4)安全性,可保护通信真实性(DNSSEC),机密性(DoH、DoT),和隐私性(DNS查询最小化、ODNS); (5)易懂易用,工作原理和概念普及,便于推广和开发集成; (6)强大生态与持久性,具有充分的经济激励,确保持久稳定运行维护和技术演进; (7)良好的缓存机制,减流增效,降低延迟,稳定可靠; (8)支持多样传输方式,运行在各类网络传输协议上,满足多样的传输需求。 基于以往的成功经验和以上八大优势,DNS技术将有力支撑新型网络应用场景,包括算力网络、工业网络、Web3.0、无人机网络、家庭网络、未来网络。下面对这些场景进行展望。 (1)算力网络:算网资源调度 算力网络整合分散算力资源,实现规模化高质量的计算服务。其核心目标之一是实现算网资源的高效灵活调度。DNS具备的高效、敏捷、可靠的服务调度能力正适用于此。调度依赖于对资源的有效感知,DNS服务发现(DNS-SD)、服务注册协议(SRP)、动态更新(DDNS)可应用于算网资源信息注册与发布;有状态DNS操作(DSO)和DNS推送(DNS Push)可用于算网资源信息订阅与推送。目前,由鹏城实验室、互联网域名系统国家工程研究中心和国家(杭州)新型互联网交换中心三家牵头的中国通信行业标准《基于域名解析机制的算力网络资源发布与订阅技术要求》正处于研制阶段。 (2)工业网络:工业数据管理 工业网络将工业设备信息化和网络化,实现工业生产的自动化与智能化。其核心目标之一是“打通”厂间和设备间的数据通路。例如,美国工业物联网联合体(IIC)提出,工业物联网“连通性”是以数据为中心的连通、互操作与管理,其功能需求覆盖从数据标识、类型化与生命周期管理,到数据发现、发布订阅与操作,再到数据安全与治理等各个层面。不难看出,DNS技术体系对以上功能需求有成熟的“全栈式”解决方案和可扩展潜力,将在新型工业化创新浪潮中发挥不可替代的作用。 (3)Web3.0:去中心化身份认证 由W3C正在进行标准化的Web3.0技术旨在构建一个去中心化的互联网应用环境,让用户拥有和控制个人数字生活,并降低对中心化机构的依赖。其中,DID(去中心化身份)技术实现不依赖于中心化机构认证的数字身份。在IETF讨论的相关草案提出,通过将DID标识与域名相关联,Web3.0应用可充分利用DNS天然的分布式认证能力、DNSSEC的密码学认证能力,以及DANE的可扩展认证能力,与其他去中心化认证技术结合,实现多重认证与交叉认证。 (4)无人机网络:无人机全球远程识别 为满足全球各地空管机构对无人机远程识别和跟踪的需求,IETF DRIP工作组正在制定无人机远程识别的标准化协议。DNS技术在其中发挥重要的“认证设施”与“数据库”的作用,提供无人机相关公开信息(例如公钥)的存储与检索功能。具体地,无人机标识(DRIP实体标签)为IPv6地址,通过其反向域名的注册和解析确保标识的全球唯一且可查找,并将其映射到对应的注册机构域名,进而再通过DNS检索无人机相关信息。 (5)家庭网络:低功耗物联网设备接入 在家庭网络中,一些低功耗物联网设备无法直接与Wi-Fi或以太网设备通信。DNS在这种受限网络设备和环境下,可以发挥“汇合点”的作用,实现物联网设备与其他设备之间互操作。Thread协议利用家庭路由器上DNS为“汇合点”:一方面,物联网设备通过SRP将自身注册到路由器的DNS上,从而被其他设备所发现;另一方面,物联网设备通过路由器进行DNS服务发现与其他设备连接,并通过DNS推送通知来及时获得服务信息更新。此外,基于NAT64和DNS64技术,可实现IPv6-only物联网设备与IPv4-only服务连接。 (6)未来网络:体系独立的映射层 面向更长远的未来信息世界远景,设计非IP体系(例如,命名数据网络NDN),并采用在IP之上的覆盖网或在边缘网络内部进行部署,是互联网体系创新的重要方向之一。DNS与新型的、非IP的互联网体系之间关系可总结为三点。首先,DNS这一“映射层”所具有的“层”抽象性可令其独立于特定网络体系来运行,即“体系独立性”。例如,从支持IPv4到支持IPv6,DNS核心设计无需改变,未来也可以支持其他体系网络标识。其次,DNS具备的扩展性可持续支持新型网络体系上的应用需求。最后,DNS可为新型网络系统部署提供帮助,在尚未直接相连的新型网络边缘“孤岛”之间提供“汇合点”和“消息通道”。 结语 DNS技术体系的先进性与部署的泛在性令其成为满足“整个互联网尺度”上映射功能需求的最优解。同时,DNS技术持续发展,特别是有状态DNS等技术,还在不断开辟新的应用方向。因此,DNS不仅是强大的,而且是长久的。 作者简介: 张宇,哈尔滨工业大学网络安全学院教授,博导,鹏城实验室体系所技术总师,UCLA访问学者,国家重点研发计划项目负责人。研究方向为互联网基础设施保障、互联网体系、互联网测量。设计研制了DNS保障系统、互联网拓扑测量系统以及NDN KITE移动支撑协议。 杨镕玮,鹏城实验室体系所助理研究员,作为项目骨干参与国家重点研发计划、广东省重点领域研发计划等多项科研项目,主要研究方向为可编程网络、网络测量、新型网络。 马迪,互联网域名系统国家地方联合工程研究中心(ZDNS)首席研究员、正高级工程师、国际互联网码号资源理事会(NRO NC/ICANN ASO AC)委员、亚太互联网信息中心(APNIC)路由安全SIG联合创始人、国际互联网工程任务组(IETF)域名技术专家委成员。研究方向包括互联网体系结构、互联网寻址定位技术,是3项RPKI领域IETF RFC(RFC8211、RFC8416、RFC8897)的作者。作为课题负责人,承担过国家重点研发计划项目、工信部智能制造综合标准化项目等科研任务。 扫描二维码 | 了解更多 |