收藏 分销(赏)

YD∕T 3881-2021 延迟容忍网络 体系架构(通信).pdf

上传人:曲**** 文档编号:103643 上传时间:2022-07-30 格式:PDF 页数:14 大小:354.74KB
下载 相关 举报
YD∕T 3881-2021 延迟容忍网络 体系架构(通信).pdf_第1页
第1页 / 共14页
YD∕T 3881-2021 延迟容忍网络 体系架构(通信).pdf_第2页
第2页 / 共14页
YD∕T 3881-2021 延迟容忍网络 体系架构(通信).pdf_第3页
第3页 / 共14页
YD∕T 3881-2021 延迟容忍网络 体系架构(通信).pdf_第4页
第4页 / 共14页
YD∕T 3881-2021 延迟容忍网络 体系架构(通信).pdf_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、 ICS 33.040.40M 13中 华 人 民 共 和 国 通 信 行 业 标 准YDXX/T XXXX-XXXX延迟容忍网络 体系架构Delay-Tolerant Networking Architecture(报批稿)XXXX-XX-XX 发布XXXX-XX-XX 实施发布I 目次 前言 .II 1 1 范围 .1 2 2 规范性引用文件 .1 3 3 缩略语 .1 4 4 概述 .1 5 DTN 网络架构描述 .2 5.1 必要性分析 .2 5.2 使用存储转发操作的虚拟消息交换 .2 5.3 节点和端点 .3 5.4 端点标识符和注册 .3 5.5 任意播和组播 .4 5.6 优先

2、级类别 .4 5.7 邮政类型的转发选项和管理记录 .5 5.8 路由和转发 .6 5.9 分片和重组 .7 5.10 可靠性和托管传输 .7 5.11 DTN 支持代理和应用层网关 .7 5.12 时间戳和时间同步 .8 5.13 包裹层的拥塞和流控 .8 5.14 安全 .8 6 状态管理建议 .9 6.1 应用程序注册状态 .9 6.2 托管转发状态 .9 6.3 束路由和转发状态 .9 6.4 安全相关状态 .9 6.5 策略和配置状态 .10 7 应用程序结构问题 .10 8 使用底层协议的汇聚层建议 .10 XX/T XXXX-XXXXII 前 言 本标准按照 GB/T 1.1-2

3、009 给出的规则起草。 请注意本文件的某些内容可能涉及专利,本文件的发布机构不承担识别这些专利的责任。 本标准是延迟容忍网络系列标准之一,该系列标准预计的结构及名称如下: 1. 延迟容忍网络 体系架构 2. 延迟容忍网络 LTP 协议技术要求 3. 延迟容忍网络 Bundle 协议技术要求 随着信息技术的发展,以后还将根据实际情况制定后续相关标准。 本标准考虑到国内发展延迟容忍网络需求,主要参考IETF RFC:4838,2007Delay-Tolerant Networking Architecture制定而成。 本标准由中国通信标准化协会提出并归口。 本标准起草单位:中国信息通信研究院。

4、 本标准主要起草人:马军锋、宋菲、穆琙博、张杰、王哲、柴瑶琳、吴冲。 1 延迟容忍网络 体系架构 1 1 范围 本标准定义了一种延迟容忍网络的体系架构,内容包括消息交换、优先级类别、路由和转发、分片和重组、可靠和托管传输、时间戳和时间同步、拥塞和流控、安全、以及状态管理等相关需求。 本标准适用于具有超远距离、大时延的星际网络通信。 2 2 规范性引用文件 下列文件对于本文件的应用是必不可少的。 凡是注日期的引用文件, 仅所注日期的版本适用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。 RFC 3986 (2005) Uniform Resource Identi

5、fier (URI): Generic Syntax RFC 4838 (2007) Delay-Tolerant Networking Architecture RFC 5050 (2007) Bundle Protocol Specification RFC 6257 (2011) Bundle Security Protocol Specification 3 3 缩略语 下列缩略语适用于本文件。 4 4 概述 ACL 访问控制列表 Access Control List ADU 应用数据单元 Application Data Unit API 应用编程接口 Application Pr

6、ogram Interface BSR 束状态报告 Bundle Status Report DSL 数字用户线 Digital Subscriber Line DTN 延迟容忍网络 Delay-Tolerant Networking EID 端点标识 Endpoint Identifier FTP 文件传送协议 File Transfer Protocol ID 标识符 Identifier IANA 互联网地址编码分配机构 Internet Assigned Numbers Authority ICMP 互联网控制报文协议 Internet Control Message Protocol

7、 IP 网际互联协议 Internet Protocol MRG 最小接收组 Minimum Reception Group SCTP 流控制传输协议 Stream Control Transmission Protocol TCP 传输控制协议 Transmission Control Protocol URI 统一资源标识符 Uniform Resource Identifier XX/T XXXX-XXXX2 本标准中提出的延迟容忍网络架构适用于高时延、 频繁中断等环境恶劣的通信场景, 如外太空通信、传感器网络、卫星通信等。 本标准中定义了一个端到端、 面向消息的包裹(Bundle)层,

8、 位于网络的传送层之上, 应用层之下。实现包裹层的设备称之为延迟容忍(DTN,Delay-Tolerant Networking) 网络节点。包裹层通过使用永久存储来克服网络中断的发生。 包裹层具备可靠的逐跳转发和可选的端到端确认机制, 同时包含大量的诊断和管理功能。包裹层使用基于统一的资源标识(RFC3986)作为命名方案,能够封装不同的命名和编址方案。同时,包裹层还包含一个基本的安全模型(可选)。包裹层提供了类似网络层网关的功能,但不同于网关, 包裹层关注于虚消息的转发而不是分组的交换, 并通过永久存储来保障存储和转发功能。 DTN 网络架构中提供了一个通用的方法来实现异构网关或代理的互联

9、,并使用存储转发消息路由来克服通信的中断,提供类似于电子邮件的服务,但是增强了命名、路由和安全等能力。 无法支持该架构所需的全部功能的节点,可以通过 DTN 应用层代理来支持。 5 DTN 网络架构描述网络架构描述 5.1 必要性分析 由于现有互联网体系架构是建立在一些基本假设的基础上, 所以它不能适用于一些特定的场景。 现有互联网体系架构的基本假设包括: 为保持长时间的通信会话,在源和目的地之间存在一条端到端的路径; (为实现可靠通信) ,重传(基于数据接收方及时、稳定的反馈) 是修复错误的一种有效方法 ; 端到端的丢包相对较小; 所有的路由器和端点都支持 TCP/IP 协议; 应用不需要担

10、心通信性能; 对于大多数的安全问题,基于端点的安全机制是足够的; 分组交换是对互操作和性能最合适的抽象; 在发送方和接收方之间选择一条单一路径就能够获得可接受的通信性能。 DTN 网络架构被认为放宽了上述大多数的假设,基于如下设计原则: 使用变长消息(不是流或者是大小受限的分组)作为通信抽象来帮助提升网络能力,尽可能地做更好的调度/路径选择决策; 使用命名语法支持更大范围的命名和编址规则来提升互操作性; 在网络内部使用存储来支持多路径、长时间尺度的存储转发操作(例如支持多条或没有端到端路径场景下的操作);不要求端到端的可靠性; 提供安全机制保护基础设施免遭不被授权地使用(尽可能快的丢弃流量);

11、 提供粗粒度的服务等级和交付选项,以及一种表示数据有效生命周期的方法,以便网络更好的服务于应用需求。 包裹层的使用不仅要根据自身的设计原则,同时也要考虑一些应用的设计原则: 应用程序应当最小化往返交换的次数; 当网络事务保持挂起,应用应当能够在故障发生后处理重启; 应用程序应当通知网络被转发数据的有效生命周期和相对重要性。 5.2 使用存储转发操作的虚拟消息交换 支持 DTN 网络的应用程序发送任意长度的消息, 称之为应用数据单元 (ADU, Application Data 3 Units),并受到具体实现的限制,而且 ADU 的相对顺序是不会保留的。尽管系统的接口存在很大差异, 但是 AD

12、U 总是在一个完整的单元中发送并传递给应用程序。 ADU 被包裹层转化成一个或者多个被称之为束的协议数据单元,然后被转发到 DTN 节点。束有一个定义的格式,包含两个或者多个数据块。每个块可能包含应用数据等信息。块服务的目的是保存其它协议架构中的报头或协议数据单元载荷部分的信息。使用术语“块” 而不是“报头” ,是因为由于特殊的处理要求(如数字签名),块不可能出现在一个束的开头。 在传送的过程中, 束可以被分片成多个连续的束 (也称之为分片, 或者束分片)。 分片本身也是束,可以继续被分片。两个或者多个分片可以在网络的任意位置重组,形成一个新的束。 束的源、目的地址可以通过变长的端点标识符进行

13、标识,分别标识束的发送方和接收方。 束也包含一个 “report-to” 端点标识,用于将诊断结果直接输出到一个任意实体(如不同的源)的特殊操作。一个端点标识(EID,Endpoint Identifier)可以是一个或者是多个 DTN 节点(如组播目的地,或者是“report-to”目的地)。 DTN 网络架构不会要求网络链路总是可用或者是可靠的,而是会期望节点可以选择存储束一段时间。 因此,大多数节点期望使用永久存储介质,如磁盘,闪存等。 当系统重启时,存储束将会存活。 束包含一个初始时间戳、有效期标识、服务分类标识符和长度。这些信息提供包裹层路由,优先考虑转发数据的大小和性能要求。 当网

14、络中出现大量的排队队列时,上述信息对于流量调度和路径决策具有重要的意义。 基于束的转发最基本的要求是束可以在网络中某个地方的队列中等待, 直到通信机会出现。 需强调以下假设: (1)该存储是可用的,并且在整网均匀分布。 (2)该存储足够持久和健壮,能够存储束直到转发发生。 (3)该“存储转发”模型是比尝试实现连续连接或其他替代方案更好的选择。 将长时间存储作为 DTN 网络架构的一个最基本的要素会产生一些新问题,特别是拥塞管理和缓解拒绝服务攻击。 5.3 节点和端点 DTN 节点是发送和接收束的引擎,是包裹层的一种实现。应用程序使用 DTN 节点发送和接收束中的 ADU。节点可能是 DTN 端

15、点集中的组成员, 因此一个 DTN 端点也是一组 DTN 端点集中的一个。当端点中最少的一组节点已经无差错的接收到束,认为一个束已经成功地被转发到 DTN 端点。 这个子集被称之为端点的最小接收组(MRG,Minimum Reception Group)。端点的 MRG 可能是一个节点(单播),也可能是一组节点中的一个(任意播),或者是一组中的所有节点(组播或广播)。 一个节点可以是多个端点的 MRG。 5.4 端点标识符和注册 5.4.1 概述 EID 使用统一资源标识(URI,Uniform Resource Identifier)语法表示一个端点,一个端点至少有一个 EID。通过 EID

16、,一个节点能够决定由 EID 命名的 DTN 端点中的 MRG。 应用程序可向指定的目标 EID 发送 ADUs。在 EID 中可能会预留一部分作为通配符用于诊断和路由。 一个应用程序期望接收到特定 EID 的 ADU 被称之为注册,通常由一个 DTN 节点持续维护。这允许应用注册信息在应用或系统重启后仍然存活。 应用程序试图建立一个注册并不保证会成功。例如,指定一个端点 ID 来请求注册自身去接收XX/T XXXX-XXXX4 ADU,该 ID 对于 DTN 节点服务请求不可解析或者是不可用,此类请求很可能会失败。 5.4.2 URI 格式 每个端点 ID 采用通用资源标识符(RFC3986

17、) 来表示。每个 URI 以格式名字开始,在词法上 URI中紧跟格式名字的是一长串字符,URI 中这部分被称之为特定格式部分。需要指出的是,特定格式的语法和语义规则的限制可能比 RFC3986 规定的基本规则更具有约束力。格式名字语法的指导规则参见RFC3986 章节 3.1。 URI 按照 RFC3986 中定义的规则来构建,使用 US-ASCII 码字符集。但是,涉及无法用US-ASCII 码来表示的字符,如果在该格式允许或 URI 参考的协议元素允许的情况下,可以用“Percent-encoded octets”来代表超出 US-ASCII 编码范围的字符集。在使用百分比编码字节前,应该

18、指定用于将这些字符映射到八位字节的字符编码。 5.4.3 延迟绑定 绑定用于解析EID中的特定格式部分,其目的是携带相关的信息到目的地。延迟绑定意味着束目的地址绑定到一组特定目的地标识或者地址,不要求必须在束的源发生。因为目的EID可能会在每一跳重新解析,所以绑定可能发生在源,传输过程中或者是目的地。 在一个频繁中断的网络中, 延迟绑定可能更具有优势, 因为消息的传送时间可能会超过一个绑定的有效期,在源进行绑定是不可能或者是无效的。而且,结合延迟绑定使用基于名字的路由会减少管理(映射) 信息的数量,这些信息必须通过网络进行传播,对于经常发生变化的本地拓扑邻居关系,也可以限制映射同步要求的范围。

19、 5.5 任意播和组播 EID可以是指包含一个或者多个DTN节点的端点。当EID指的是一组数量大于1的DTN节点,传送语义要么是任意播,要么是组播(广播被认为是组播的变种)。对于任意播转发,一个束被传送到一组可能的接收节点中的一个节点;对于组播转发,一个束预期被传送到所有节点,但受制于DTN服务等级和最大有效生命的语义。 在如因特网等延迟相对较低的网络中,如果一个节点“最近” 表示有兴趣加入一个组,那么该节点可以被认为是该组的一部分。然而在 DTN 网络中,节点可能希望更早地加入该组。 5.6 优先级类别 DTN 架构为传送 ADU 提供了相关的优先级措施(低、中、高) ,这些优先级基于应用期

20、望影响 ADU的传送紧迫性来差异化流量。优先级是由包裹层基于应用指定的信息生成,并在束块中携带。 DTN 架构中流量通常不是交互的,而是单向的。通常无法保证及时传送,但有一些服务分类、可靠性和安全性保障。 目前,已经定义了三个相对的优先级类别。 (1)批量:块束基于“省力原则”被传送。直到所有其他类别的、到相同目的地且由相同源生成的块被传送,此类别的块才被传送。 (2)普通:普通类别的块要优先于块类别的束传送,否则和块束优先级相同。 (3)加急:通常加急束要优先于其他类别的束传送,否则与其他类优先级相同。 应用对发送的每个 ADU 指定它们的请求优先级类别和数据的有效期。这类信息结合在 DTN

21、 节点上的策略或路由算法等,会影响 ADU 传送的整体可能性和时效性。 5 束的优先级等级仅作用于来自相同源的其它束。 这意味着来自一个源的高优先级束不一定比来自不同源的低优先级束更快的被转发,但是来自相同源的具有高优先级的束比低优先级的束会优先处理。 取决于特定 DTN 节点的转发/调度策略,优先级既可以跨不同源强制执行,也可能不能跨不同源强制执行。在某些 DTN 节点,具有加急优先级的束可能总是被优先于块束进行处理,而与源无关。 5.7 邮政类型的转发选项和管理记录 5.7.1 转发选项 本标准中定义了 8 种传送选项。发送 ADU 应用可以请求以下各项的任意组合: (1)保管转发请求:请

22、求在发送束时可以通过保管转发过程增强可靠性。包裹层通过使用可靠的传输协议来传输束,而且包裹层可靠传送的职责可以在网络中一个或者多个“保管节点”之间移动。 (2) 需要源节点保管接收:要求源 DTN 节点为被发送的束提供保管转发功能。如果在请求传送选项时源地址保管转发不可用,那么该请求失败。 (3)束被交付时发送报告:当 ADU 被交付到其预定的接收者时,请求生成一个束交付状态报告。 (4)束被应用确认时发送报告:当 ADU 被接收应用确认时,请求生成一个确认状态报告。 (5)束被接收时发送报告:当每个束到达 DTN 节点时,请求生成一个束接收状态报告请求。 (6)束被保管接收时发送报告:当每个

23、束都通过保管转发而被接收时,请求生成一个保管接收状态报告。 (7)束被转发时发送报告:当每个束在转发而离开 DTN 节点时,请求生成一个束转发状态报告。 (8)束被删除时发送报告:当每个束在 DTN 节点被删除时,请求生成一个束删除状态报告。 前四个传送选项作为应用的常用选项。后四个传送选项主要用于诊断目的,通常用于拥塞或受到攻击的场景下。 如果文献 RFC 6257 中定义的安全过程被启用,那么还有三个传送选项: (9)保密要求:要求目标 ADU 对于除源节点和目的地 EID 成员之外的所有其他节点是保密的。 (10)认证要求:要求所发送束的束块中所有不变的字段都要被强制验证。 (11)错误

24、检测要求:当对每个发送束中的不可变字段进行修改时,在每个目的地能够最高可能性检测出该错误。 5.7.2 管理记录:束状态报告和保管信号 管理记录用于报告与包裹层有关的状态信息或者是错误状况,定义了两类管理记录 : 束状态报告和保管信号。 管理记录类似于 IP 协议中的 ICMP 协议消息。然而,在 ICMP 中,消息需要返回到源节点。在 DTN 架构中,对于束状态报告直接发送到“report-to EID”所在的节点,对于保管信号直接发送到当前保管节点,可能与源 EID 不同。本标准中定义了下述状态报告: (1)束接收:当一个束到达 DTN 节点时发送该束状态报告。该消息的生成受限于本地策略。

25、 (2)保管接受:当一个节点接受束保管(“保管转发请求选项”被置位)时发送该报告。该消息的生成受限于本地策略。 (3)束转发:当一个束(带有“束转发选项”)被转发而离开原 DTN 节点时,该报告会被发送。该消息的生成受限于本地策略。 (4)束删除:当一个束(带有“束删除报告选项”)被丢弃时,由一个 DTN 节点发送。该消息可能会由于多种原因发生,例如过期。该消息的生成受限于本地策略,但是要求删除操作由束的当前保管节点执行。 (5)束传送:当一个完整的 ADU 且包含 “束被转发时发送报告选项”时,由最终目的地节点发送该报告。 XX/T XXXX-XXXX6 (6)应用确认:当一个完整的 ADU

26、 且包含“束被应用确认时发送报告”时,由最终目的地节点发送该报告。 除了状态报告之外,还定义了保管信号以指示监管转移的状态。 (7)保管信号:指示保管已经成功被转发。该信号为布尔变量。 5.7.3 主要的束字段 在两个或多个DTN节点之间携带的束应遵循RFC5050中定义的标准束协议。 协议设计要求必须包含 :主块,一个可选的载荷块(包含ADU数据本身) 和一组可选的扩展块。如下面所述的字段都应存在于主块中,因此每个束和分片都会出现。 (1) 创建时间戳 : 由束创建的时间和单向升序的序列号组合而成,确保从同一个源生成的每个ADU的创建时间戳都是唯一的。创建时间戳是基于应用请求发送ADU的时间

27、来,而不是束被发送到网络的时间。 (2)生命周期:消息不再有效的时间。如果一个束被保存在网络(包括源DTN节点),当生命周期终结时将被丢弃。束的生命周期通过一个相对于创建时间的偏移量来表示。 (3)服务类别标志:表示束的传送选项和优先级。优先级可以是批量、普通和加急中的一种。 (4)源EID: 第一个发送者的EID。 (5)目的EID:最终接收者的EID。 (6)Report-to端点标识:指示报告被发送到哪里的一个EID标识。 (7)保管EID:束当前保管者的EID。 载荷块表示包含在载荷中的信息(如长度) 以及载荷本身。除了在主块和载荷块中的字段,每个束其他块中可能还有其他额外的字段。 5

28、.8 路由和转发 5.8.1 概述 由于 DTN 网络中的节点可以通过多种类型的底层网络技术互连,因此一个 DTN 网路最好使用“多图” (顶点可以和多条边连接的图) 来抽象描述。因为图中的边有单向连接的可能性,关于时延、容量和方向都是随时间而变化。当一条边的容量为 0 时,被认为是不连接的。由于 DTN 图中的边可能会有很高的时延, 因此在哪个点进行时延或容量的测量非常重要。 通常使用数据进入到网络边缘的时间点作为测试时间。 由于边的容量值可能会在正值和 0 之间变化,因此可以描述一个时间段,在这个时间段内容量值是正值,时延和容量可以被认为是常量。这个时间周期被称之为一次“接触” ,使用容量

29、和间隔的乘积值来表示该接触的“体积”。 如果接触和“体积”可以提前知道,就能制定智能路由和转发决策。然而,想要最佳地利用好接触的“体积”需要将大的 ADU 和束拆分成为较小的可路由单元。这由 DTN 分片来实现。 5.8.2 连接类型 本标准主要定义了以下几种连接类型: (1)持久连接:持久连接总是可用的。 (2) 按需连接:按需连接要求某些动作来创建,直到连接中断和永久连接是一样的,如拨号连接。 (3)间歇按计划连接:按计划连接是一个协议,在特定时间建立特定时长的连接。如近地轨道卫星的链路。 (4)间隙随机连接:随机连接不是按照计划的,而是不可预期的。例如,一个未按计划飞行的飞行器飞越上空,

30、并且发出信号,通告通信可用,这就是一种随机的连接。 7 (5)间歇可预测连接:预测连接不是基于计划建立连接,而是预测可能的连接时间,连接时长,基于前期历史观测或者是其它的一些信息。 5.9 分片和重组 本标准中定义了两种形式的 DTN 分片和重组: (1) 主动分片:DTN 节点可以将应用数据块划分成多个小的块,然后将每个块作为独立的束传送。在这种情况下,最终的目的地负责从所接收的束中提取小块,然后经过重组形成初始的大块,最终形成ADU。这种方法被称之为主动分片,因为它主要应用在接触“体积”事先已知的情况下。 (2) 被动分片:当一个束只是部分转发时,DTN 节点通过在 DTN 图中共享一条边

31、来协同完成束的分片。在这种情况下,接收方的包裹层修改所收到的束,指明它是一个分片,然后正常转发。前一跳的发送者可以知道(通过汇聚层协议) 只有束中的一部分被转发到下一跳,当后续的接触可用时,继续发送剩余的部分(如果路由发生变化,很可能发送到不同的下一跳)。这被称之为被动分片,因为分片过程是在尝试传输之后发生的。 在 DTN 的实现中不要求被动分片是必须的。如果在实现中不支持被动分片,但是在目的地仍然需要重组分片能力。 而且, 对于那些小体积的接触, 必须使用某些递增传递的方法以防止数据传送被锁定。除了被动分片的方法,通过其它的协议层也可以处理此问题。 5.10 可靠性和托管传输 包裹层提供的最

32、基本服务是不确认、优先处理(但是不保证) 单播消息的传送服务。它也提供两类增强的可靠传送服务 : 端到端确认和托管转发。如果应用程序希望自己实现端到端消息可靠机制,那么就无需使用确认。DTN 架构的托管传输功能仅定义了一种粗粒度的重传能力,如下所述。 (1)对于单播传送,将会移动束到离最终目的地更近的节点,并在必要时重传。在这个路径上接收这些束的节点称之为托管者。 束从一个节点到另一个节点的移动称之为托管传输。 对于组播和任意播托管传输还在研究中。 托管传输允许源节点在发送一个束之后尽快委托重传的职责, 并恢复其与重传相关的资源。 在 DTN网络中不要求所有的节点都接受托管传输,因此它不是真正

33、意义上的逐跳机制。例如,某些节点有足够的存储资源,有时可以作为托管者,当发生拥塞或者在电量低的情况下运行时,可能会选择不提供托管服务。 托管者的存在会改变 DTN 路由执行的方式。在某些情况下,尽管托管者可能比其他一些可达节点更远离束最终的目的地,但还是应该尽快的将束移动到一个托管者,。 设计一个具有这种能力的系统需要构建多个路由图,这个问题仍在研究中。 (2) 在 DTN 网络中托管传输不仅提供一种跟踪束的方法,同时也提供一种增强的消息可靠传输机制。通常而言,托管传输依赖于它运行的底层可靠传送协议。然而,当托管传输被请求时,包裹层提供一个额外的粗粒度超时和重传机制,以及托管者到托管者的确认信

34、号机制。当应用不请求托管传输时,包裹层的超时和重传机制将不会启用,包裹层传送仅依赖于底层协议的可靠性机制。 在 DTN 网络中,一个或者多个托管者到托管者的路径一定是严格的一个方向(不可逆转)。DTN托管传输机制将会被影响, 因为任何一方都不会通过这个路径接收到返回的托管信令, 将导致束在单向路径的入口处超时。 然而这种情况并不意味着该束被丢弃, 同路径另一方向的节点可能会继续托管传输,从而被成功地传送到目的地。 5.11 DTN 支持代理和应用层网关 DTN 网络的一个目标是提供一种通用方法来互联应用层网关和代理。在现有互联网应用程序能够容忍时延的情况下,那么可以构建本地代理从当前由 DTN

35、 网络提供的通信能力中获益。这类代理兼容DTN 网络并使开发者不必考虑如何实现路由和可靠性管理,允许现有基于 TCP/IP 的应用无需改动就可以在基于 DTN 网络上运行。 XX/T XXXX-XXXX8 当 DTN 被用于为其它协议提供一种隧道封装形式时,它可以被用于构建一个由应用层网关组成的重叠网络。在这种情况下,需要设计应用程序确认功能。它为远端的应用层网关提供了一种通用的方式去告知 DTN 协议操作成功或者失败。没有这种能力,应用程序自身必须用一种非标准的方式实现这类指示功能。 5.12 时间戳和时间同步 DTN 架构依赖于 DTN 节点的时间同步(通过外部支持或非 DTN 协议)主要

36、出于四个目的:束和分片标识,按计划路由或者可预测连接,束过期时间计算,应用注册过期。 束标识和过期功能的支持是通过在每一个束中放置创建时间戳和一个显式的过期字段 (在源时间戳后用秒来表示)。与一个 ADU 相关的每一个束的集合都要求包含一个时间戳,且与发送者的 EID 是不同的。 EID,时间戳和数据偏移/长度信息一起唯一标识一个束。唯一的束标识被用于很多目的,包括保管传输,束分片重组。 时间戳也会结合应用注册使用。当应用程序表示希望接收一个特定的 EID 的 ADU 时,该注册只能维护一个有限的时间周期,并可以通过应用程序去指定。对于组播注册,应用程序也可以指定一个时间范围或是时间间隔。在这

37、种情况下,在指定时间段内的任意时间发送到指定 EID 的流量最终都会被传送到应用程序。 5.13 包裹层的拥塞和流控 在包裹层进行拥塞控制和流控制目前尚未达成一致意见, 在长时间、 高可变时延环境中实现拥塞和流控机制的方案和效能等问题尚未解决。 本标准定义 “流控” 以确保发送节点传送数据到接收节点的平均速率不会超过接收节点准备接收来自发送节点数据的平均速率。同时定义“拥塞控制” 来保证聚合速率不会超过最大聚合速率。如果流控从拥塞节点朝向流量源后向扩散,那么可以使用流控机制作为一种解决部分拥塞问题的方案。 DTN 流控决策必须在包裹层基于节点内可用资源的信息来制定。当存储资源不足时,DTN 节

38、点只有一定的自由权限来处理这种状况。在任何情况下,当束超时一定会被丢弃。但节点必须避免丢弃已经接受保管的束。 此外,DTN 节点也可能通过来自底层协议的支持来影响自己的资源使用。例如,使用 TCP/IP 来接收束的 DTN 节点,可以通过较少、频繁地执行读取操作从而降低它的接收速率,以便减少其负载。因为 TCP 提供了流控,因此可以有效地通过逐跳的流控来减少应用数据的消费速率。但是这可能会导致报头拥塞问题。在这种情况下,具有更宽松机制的排序限制协议是更合适的(如 SCTP)。 5.14 安全 延迟容忍网络环境中存在严重的资源匮乏情况, 需要使用网络认证和接入控制等手段。 不允许未经授权的用户向

39、网络洪泛流量,更不允许未经授权的流量在网络中转发。对于 DTN 网络架构,安全组件的建立需满足以下几个目标: (1)及时阻止未经授权的应用程序数据通过 DTN 网络或者是存储在 DTN 网络; (2)阻止未经授权的应用程序通过 DTN 基础设施来进行控制; (3)阻止未经授权的应用程序以一定速率或者是服务类别发送束; (4)及时丢弃在传送过程中损坏或不正确修改的束; (5)及时检测和取消授权被盗用的实体。 现有的为低时延、面向连接场景设计的认证和接入控制协议不能在 DTN 网络正常工作。特别是,更新访问控制列表和撤销证书会非常困难。 此外, 要求频繁访问中心服务器以完成一个认证或鉴权的事务的方

40、法,不适用于 DTN 网络,它会带来通信、漏洞检测和恢复等延时问题。 为满足上述安全需求,DTN 网络架构采用了一种标准但可选部署的安全架构,并使用逐跳和端到9 端的认证及完整性机制。DTN 网络中可能只有部分节点具备安全机制,这将导致在一个不安全的 DTN网络之上出现一个安全的 DTN 重叠网。具体的安全架构和机制参见文献 RFC6257。 6 状态管理建议状态管理建议 6.1 应用程序注册状态 在一个高时延且可变时延的环境中应使用异步应用接口。 此类接口应包含一个当发生某些触发事件时,应用程序注册回调动作的方法。这些注册创建的状态信息称之为应用程序注册状态。 应用程序注册状态通常是由应用程

41、序的显示请求创建, 并通过单独的显示请求进行删除, 也可以由应用程序指定的定时器删除。在大多数情况下,必须有一个规定,用于在应用程序和操作系统中断/重启条件之间来保留这个状态。这是因为在客户/服务器模式下,束的往返时间可能会超过请求应用程序的执行时间(或者托管系统的正常运行时间)。当应用程序未自动重启,但应用程序注册状态仍然保持不变时,必须提供一种方法来指示在触发事件发生时系统执行什么操作。 为了初始化注册从而建立应用程序注册状态,一个应用程序会为其接收 ADU 的端点指定一个端点标识,以及一个可选的时间值用来指示注册应当保留多长时间。对于注册到组,也可以指定时间间隔。时间间隔是指发送到指定

42、EID 的 ADU 的初始时间范围。 6.2 托管转发状态 托管转发状态包括记录对节点已经被托管的束信息, 以及它们中一个或多个转移托管权的协议状态。当接收到一个或者多个托管转发成功信令时, 可以释放重传状态和记账状态, 同时表明托管权已经被转移。此外,当接收到表示不会被清除的信号事件,而该状态却被系统清除时,束的超时时间将增加其上限值。 6.3 束路由和转发状态 在 DTN 网络中,路由指的是根据一些对象功能执行算法并计算路由路径。转发指的是从一个 DTN节点向另一个 DTN 节点移动束。路由使用路由状态(路由信息库) ,转发使用从路由信息导出的状态,并维护转发状态(转发信息库)。转发信息库

43、的结构和维护规则在实现时是可选择的。在某些 DTN 网络中,用于更新路由信息库状态的信息交互可能会发生在与应用数据交互不同的网络路径上。 路由信息库状态的维护依赖于所使用的路由算法类型。 路由算法可能考虑请求服务等级和潜在的托管位置,这些信息将会增加路由信息库的大小。本标准不要求转发信息库和路由信息库的分离,具体的实现细节由开发者决定,且路由算法的选择还在研究中。 束可能会占用节点队列相当长的时间。对于单播或者任意播传送,时间可能是从束到达一个节点,然后被转发到下一跳的时间间隔。对于组播传送,这个时间间隔可能相当长,会延续到束超时。当以这种方式使用组播传送时,加入组的节点能够获得先前发送到组的

44、信息。在这种情况下,一些节点可以作为存储服务器,为新的加入者提供已经传送给其他参与者的束副本。 6.4 安全相关状态 DTN 安全方法在文献 RFC6257 中描述,使用这些安全方法时需要在所有使用该方法的 DTN 节点维护状态。所有这类节点都要求保存它们自己的私有信息(包括策略和认证资料) 以及用于验证证书的信息。而且,在大多数情况下,DTN 节点将缓存其下一跳邻居(束)的一些公共信息。所有缓存信息都有有效期,节点负责在有效期内获取、分发以及更新公共信息和证书。 XX/T XXXX-XXXX10 除了基本的端到端和逐跳认证之外, 在 DTN 网络中还可以使用访问控制列表 (ACL, Acce

45、ss Control List)等多种机制。ACL 代表任意一个想执行安全策略节点的当前状态。ACL 在节点配置时被初始化,并可以被 DTN 束或者一些其它技术动态地更新。 能力或者证书可以被撤销, 通过维护一张撤销列表 (如黑名单,其它状态形式)可以去验证那些已经被分发的无效认证资料。 在网络中可以通过选择节点来实现强制的安全边界, 除了逐跳验证之外, 还可以验证端到端的证书。(这样做可能需要调整路由,以确保包含每个 ADU 的所有束都通过这些点)。用于端到端验证的公共信息都会缓存到这些点上。 6.5 策略和配置状态 DTN 节点将包含一些配置和策略信息。这些信息可能会改变束的转发行为。策略

46、状态包括:加密算法的类型、访问控制过程(如果 DTN 安全被应用)、节点是否可以成为保管节点、使用什么类型的汇聚层和路由协议,不同优先级的束如何被调度、束和其他数据在哪里被保存、保存多长时间、可能生成的状态报告,以及速率是多少等。 7 应用程序结构问题应用程序结构问题 DTN 协议是延迟容忍的,因此使用它们的应用程序也必须是延迟容忍的,以便能够在延迟严重或者中断的环境下有效运行。 不同于会话式的请求/应答通信,由 DTN 架构提供的通信原语都是基于面向消息的通信。通常,应用程序应当尝试在一个 ADU 中包含足够的信息,以便能作为网络和接收者的独立工作单元来处理。其目标是在应用程序之间最小化同步

47、信息的交互。例如,一个单独的文件传送请求消息,可以包含认证消息、文件位置信息和请求文件操作等。 除了高时延路径对会话通信的影响,延迟容忍的应用程序还必须考虑其他因素。例如,在发送消息和等待应答的过程中,应用程序可能会中断。如果这种可能性是可以预见,应用程序可以重新启动并使用保存在永久存储中的状态信息。 8 使用底层协议的汇聚层建议使用底层协议的汇聚层建议 因为不同协议族中的底层协议所提供的功能都不完全相同, 因此需要对每个协议或者是协议族作一些适配或扩展。 适配是通过一组位于包裹层和底层协议之间的汇聚层来实现的。 汇聚层管理与底层协议关联的特定协议接口细节,向包裹层提供一个一致的接口。 根据其适配的底层协议,汇聚层的复杂性各不相同。例如,对于互联网中的 TCP/IP 协议汇聚层可能只需要在 TCP 流中增加消息边界,对于一些没有可靠传输机制的网络,如果需要为包裹层提供可靠的传输,那么汇聚层的实现会相当复杂(例如,它必须实现可靠性、分片、流控等)。

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 环境建筑 > 智能化/通信

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服