延迟中断容忍网络

上传人:Sc****h 文档编号:129742236 上传时间:2022-08-03 格式:DOC 页数:19 大小:216.50KB
收藏 版权申诉 举报 下载
延迟中断容忍网络_第1页
第1页 / 共19页
延迟中断容忍网络_第2页
第2页 / 共19页
延迟中断容忍网络_第3页
第3页 / 共19页
资源描述:

《延迟中断容忍网络》由会员分享,可在线阅读,更多相关《延迟中断容忍网络(19页珍藏版)》请在装配图网上搜索。

1、延迟/中断容忍网络1概述1到目前为止,我们接触到的网络(无论是有线网络还是无线网络)都基于以下假设:在通信持续的时间里数据源和目的之间存在端到端路径;节点之间的最大往返时间不会太长,丢包率较小。然而,实际中还存在一类不满足以上假设的网络,如深空网络(延迟很长)、卫星网络(周期性连接)、稀疏移动自组网(经常中断)等,已有的网络架构及协议均不适用于这类网络。这一类网络称为挑战性网络(challenged networks)。1998年,NASA开始了深空网络(也称星际网络,interplanetary Internet,IPN)的研究,其基本想法是让地球和距离很远的太空船之间的数据通信能够简化到像

2、发生在地球上的两个节点之间一样。该组人员后来发展成为Internet的IPNSIG工作组。但是IPNSIG遇到的一个问题是目前还没有这样一个星际网络可以进行试验,于是一部分人开始研究如何将IPN的概念运用到陆地应用中。为此,IETF成立了新的工作组寻找更通用的延迟容忍网络,这个工作组称为DTNRG,是现在DTN体系结构和协议研究的主要公开组织。2004年初,DARPA提出了中断容忍网络(disruption-tolerant networking),也简称为DTN,可以看作同一概念下的另一种叙述。D在DTN中表示“中断”还是“延迟”现在还不十分明确,但是在很多时候希望同一个体系结构或者协议能够

3、同时支持这两种情况。DTN网络具有与传统网络非常不同的特点:(1)长延时。比如,地球与火星距离最近时光传播需要4分钟,距离最远时光传播超过20分钟,而在Internet中传播时间一般按毫秒计算。如此长的延时,很多应用尤其是基于TCP/IP的应用是无法实现的。(2)节点资源有限。DTN网络常常分布于深空、水下、战场等环境中,节点受体积和重量的限制,电源及其它资源非常有限,这一点与移动自组网类似。(3)间歇性连接。造成DTN网络间歇性连接的原因有很多,如当前没有连接两个节点的端到端路径,节点运动超出通信范围,节点为节能暂时关闭电源等。网络中断可以有一定规律,如卫星网络;也可以是随机的,如稀疏移动自

4、组网。(4)不对称数据速率。在DTN网络中,数据传输的双向速率经常是不对称的。在完成空间任务时,双向数据速率比可以达到1000:1甚至更高。(5)低信噪比和高误码率。DTN网络中,环境导致的低信噪比引起信道中的高误码率。一般的光通信系统中误码率只有10-1510-12,而在深空通信中,误码率甚至可以达到10-1,极大地影响接收端对传输信号的解码和恢复。众多文献中提到DTN网络时,往往通过以上几点对DTN网络和现有的TCP/IP网络进行比较,通过分析认为现有的TCP/IP协议难以支持DTN网络中的上层应用,需要开发新型的网络协议。2. DTN体系结构 2已有的基于TCP/IP协议的因特网服务模型

5、,通过由不同链路层技术形成的级联链路来提供端到端的进程间通信。IP协议的标准化以及IP包在每一个路由器上被映射到网络特定的链路层数据帧,使得因特网服务模型支持基于分组交换的互操作。尽管没有显式说明,但因特网服务模型对于底层链路的整体性能特性是有许多重要假设的,包括数据源和目的之间存在端到端路径、任何一对节点之间的最大往返时间不会太长、端到端丢包率较小等。但正在出现的一类挑战性网络违背了以上一条或几条假设,使得当前的端到端TCP/IP模型不能很好地服务于这类网络。这类网络的例子有:l 陆地移动网络。有些陆地移动网络由于节点移动或信号强度变化(如干扰、障碍物遮挡等)可能发生不可预期的分割,另一些可

6、能发生周期性的、可预期的分割。例如,一辆通勤车可以作为一个具有有限范围通信能力的存储转发消息交换机,当它从一个地方移动到另一个地方时,它可以向通信范围内的客户提供与所途经的实体的消息交换服务。l 异种媒体网络。异种通信媒体包括近地卫星通信、非常长距离的无线电或光纤链路(如光传播延迟在秒级或分钟组的深空通信)、空中或水中的声波链路、和一些自由空间的光通信。这些系统可能遭遇由可预期中断引起的长延迟(如行星间运动或预定飞船的经过),由环境条件(如天气)引起的断电,或者提供一种可预期的间断性存储转发服务(如低轨道卫星每天周期性地通过头顶)。l 军用自组织网络。这类系统可能工作于不利的环境,节点移动、环

7、境因素或故意干扰都可以引起断连。另外,网络中的数据流量可能要和较高优先级的业务竞争带宽。比如,当高优先级的声音数据正在传输时,其它数据可能必须意外地等待几秒钟甚至更长时间。这些系统也可能有特别强烈的保护通信设施的要求。l 传感器/激励器网络。这类网络的显著特点是节点的电量、内存和CPU能力极其有限,而且节点规模可能非常大(数千或数百万节点),网内的通信通常按计划调度以保存能量,典型地使用“代理”节点将IP协议转换成传感器网络的本地协议。 由于已经有了大量的经验以及与TCP/IP协议兼容的大量系统,将高度成功的因特网结构概念应用到这些新的、不同寻常的网络中是很自然的想法。但是,极大的链路延迟、不

8、存在端到端路径、节点缺乏连续的电源供应或大内存给这类方法在操作上和性能上带来了很大的挑战。在有些情况下,当要求带宽效率时,极大的带宽-延迟乘积也会带来困难。 使Internet适应不同寻常的环境通常有两类方法。第一类方法是试图将问题链路设计得看上去像适合TCP/IP的链路类型,这类方法称为链路修补方法。这类方法实际上是“愚弄”IP协议,使之相信正运行在一个表现相对良好的物理设施上。它们努力维护端到端可靠性和因特网的命运共享(fate-sharing)模型(状态只保留在端节点上),并且一般要求所有的参与系统均运行IP。另一种常见的方法是只将挑战性网络通过一个特殊的代理连接到因特网的边缘,它提供了

9、通过因特网访问挑战性网络的方法,但不提供将该网络用于数据运输(data transit)的一般方法。如果不支持数据运输,则网络的全部能力就没有实现。事实上,支持数据运输通常更有意义,因为出于经济方面的考虑,远程部署的常规网络(如内联网)可能只能通过这类挑战性的中间网络进行访问。(Fate-sharing is an engineering design philosophy where related parts of a system are yoked together, so that they either fail together or not at all. Fate-shari

10、ng is an example of the end-to-end principle. The term fate-sharing was defined by David D. Clark in his 1988 paper The Design Philosophy of the DARPA Internet Protocols as follows:The fate-sharing model suggests that it is acceptable to lose the state information associated with an entity if, at th

11、e same time, the entity itself is lost. Specifically, information about transport level synchronization is stored in the host which is attached to the net and using its communication service. A good example of fate-sharing is the transmission of routing messages in routing protocols such as BGP, whe

12、re the failure of an link or link interface automatically has the effect of terminating routing announcements through that interface, ultimately resulting in the tearing down of the state for that route at each end of the link. Similar considerations apply to TCP.)2.1 影响挑战性网络体系结构的因素挑战性网络是用长延迟、低带宽、高误

13、码率、节点短寿命或路径不稳定性等来定性描述的,挑战性网络中的这些值均比今天因特网中的典型值差很多。本节研究路径特性、网络结构和节点资源是如何影响挑战性网络体系结构的设计的。(1)路径和链路特性高延迟、低速率。如果暂不考虑处理延迟和排队延迟,链路的传输延迟和传播延迟直接受到底层传输媒体的影响。对于某些挑战性网络来说,数据传输率相当小(如水下声波调制解调器和传感器节点中的低功率无线收发器只有约10kbps)而延迟相当大(如12秒)。数据速率可能非常不对称,如远程设备可能有相当高速的下行链路用于传输遥测数据,而只有非常低速的上行链路用于设备控制。在某些极端情况下,可能根本没有返回信道,比如与某些军事

14、设备(如潜艇)的通信要求秘密进行。断连。在许多挑战性网络中,端到端之间断开连接比存在连接更为常见。一般来说,断连可以分为有故障的和无故障的两类。前者已经在常规网络中得到了广泛研究,在此不作深入研究。非故障性断连在无线环境中出现最为频繁,主要有两大来源:节点移动和低占空比(low-duty-cycle)的系统操作。由节点移动引起的断连可能是高度可预测的(如卫星经过、充当数据路由器的公共汽车等),也可能是机会的(如由于随机移动进入通信范围的节点);可能由端节点、路由器的移动引起,也可能由遮挡通信的其它物体或信号的移动引起。由低值守操作引起的断连通常发生在低能力设备(如传感器节点)之间,并且经常是可

15、预测的,但要求立即处理的异常事件可能会意外地干扰周期性的低占空比操作。长排队延迟。对于统计复用的常规分组网络中的多跳路径,排队时间通常主导了传输延迟和传播延迟。排队时间很少超过1秒(典型情况比这小很多),如果下一跳邻居在当前时刻不可达,路由器会丢弃数据包。与之相反,经常出现断连的网络其排队时间可能非常大(几小时甚至几天),而且由于有限的传输机会,由源节点启动重传的代价可能非常高。也就是说,消息可能需要在路由器中保存很长的时间。(2)网络结构互操作考虑。在大多数挑战性网络中,网络体系结构主要由链路和媒体访问控制协议组成,设计时并没有考虑大规模互操作的要求。这是因为在许多情况下,链路上的通信还没有

16、解决好,因而在一个互联网络中使用这种链路的愿望还没有成为主要的关注焦点。这些网络一般相当简单,范围上局限于本地,甚至可能无法提供支持分层协议栈的最基本抽象。当需要部署到内存和能量有限的设备上,实现经常要做一些简化,将来自不同系统功能模块的数据合并到一个消息中,很难分离出来。这些系统常常不能实现可靠性、拥塞控制和安全性。安全。在通信链路经常超载的挑战性网络中,链路容量是一种宝贵的资源,使用数据转发服务应当受到认证和访问控制机制的保护,至少要在网络的一些关键点上保护。在这种情况下,只包括端节点的安全方法不太有吸引力,原因在于两个方面。一是端到端方法典型地要求交换一些密钥或质询(challenge)

17、,对于高延迟和易断开的网络来说是不合适的。其次,在执行认证和访问控制检查之前,将不想要的流量一直送到目的节点也是不希望的。(3)端系统特性有限的寿命。在有些挑战性网络中,端节点被放置于不利的环境中,如传感器网络、军用网络和由紧急救援人员使用的设备组成的网络。在这种情况下,节点由于环境损坏、电源耗尽等可能无法维持很长时间。这样的网络如果长时间处于断连,一个特定消息的往返时间甚至单程时间完全有可能超过发送节点的寿命。这时常规的端到端确认方案是没有用的,而应当将可靠投递的责任委托给其它实体,任何投递成功或不成功的通知消息需要被传送给可用的代理人。低占空比操作。当节点部署在缺乏供电设施的区域时,节点的

18、通信模式常常预先规划好。在某些情况下(如由电池供电的传感器节点),为使网络具有合理的寿命,希望实现低于1%的占空比。这些节点典型地按一定的频率收集数据,然后以较低的频率发送数据。对于这一类网络,传输调度加上路径选择,给路由提出了特殊的问题。有限的资源。在上面给出的一些挑战性网络的例子中,使用了内存和处理能力有限的节点。考虑一个内存有限的设备被要求获取某个随机物理现象的传感器读数,为保证数据传输的可靠性,尚未得到确认的数据应保存在内存中,这样端节点将数据保存在重传缓存器的时间至少等于数据传输来回时间乘以最大重传次数,对于高延迟和/或有损链路来说这个时间是很大的。与此同时,我们并不希望因这些未被确

19、认的数据充满节点的内存而使得节点不能采集新的数据。这表明,当将可靠性加入到网络设计时,应为端节点提供一种迅速清空重传缓存器的方法,而不必要等待端到端确认。2.2 修改因特网协议?为解决因特网协议运行在挑战性网络上的各种问题(或增强它们在特殊性质子网上的性能),人们开发了几种用于修改协议行为的网络互联实体,称为中间盒子(middle boxes),其中性能增强代理(Performance Enhancing Proxies,PEPs)和协议增强器(protocol boosters)主要是为在卫星网和陆地无线电网上使用TCP/IP协议而开发的链路修补方法。这些代理主动修改端到端数据流,使得基于T

20、CP/IP的端系统感觉在性能较差或性能较特殊的链路上也能高效地运行。PEP是为改进某些通信协议(如TCP协议)的端到端性能而设计的网络代理。PEP将一条端到端连接分成几段连接,在不同的连接段上使用不同的协议参数传输数据。这样不需要修改端系统就能解决协议参数设置的一些问题,比如端系统上的TCP窗口尺寸对于卫星通信而言设置得太小。一个典型的系统例子是使用传输层PEP来改进卫星链路上的TCP性能。端系统使用标准的TCP实现,并且不需要知道PEP的存在。传输层PEP截获从端系统来的TCP连接并终止连接,然后使用其它协议在PEP之间传输数据,然后再转换成TCP将数据发送给目的节点。(vailable P

21、EP implementations use different methods to enhance performance.Proxy Type: A PEP can either split a connection or snoop into it. In the first case, the proxy pretends to be the opposite endpoint of the connection in each direction, literally splitting the connection into two. In the latter case, th

22、e proxy controls the transmissions of the TCP segments in both direction, by ack filtering and reconstruction in the existing connection (see Protocol spoofing). This is based on the OSI level of implementation of the PEP. Distribution: PEPs can be either integrated or distributed. Integrated PEP wi

23、ll run on a single box, while distributed PEP will require to be installed on both sides of the link that cause the performance degradation. This is quite common in commercial PEP devices, which act as a Black box, using more or less open protocols to communicate between them in the place of the TCP

24、. Symmetry:A PEP implementation may be symmetric or asymmetric. Symmetric PEPs use identical behavior in both directions, the actions taken by the PEP occur independent from which interface a packet is received.Asymmetric PEPs operate differently in each direction, which can cause for example only o

25、ne link direction performance to be enhanced. )IETF不鼓励使用PEP,除非在一些特定环境下必须使用它们来获得“较好的”性能。之所以限制使用,是因为这类方法的脆弱性。这些方法可能包含连接操作必要的状态,从而违反了Internet的fate-sharing模型;他们通过(部分地)改变通信端点搞乱了端到端诊断和可靠性语义;当节点频繁移动时,由于涉及状态迁移极大地提高了系统的复杂性;许多方法要求两个方向的数据都流过PEP,这对于非对称路由是一个问题;它们对于在传输层之下实现的安全机制(如IPSEC)也提出很大的挑战。Protocol booster是一

26、个透明地改进协议性能的软件或硬件模块,可以位于网络或端系统中的任何地方,可以独立运行(one-element booster)或与其它协议增强器协同运行(multi-element booster)。协议增强器提供了另一种可选的协议适配技术,目前已有的协议适配技术包括协议转换和协议终止等。协议增强器本身不是一个协议,而是一个支持代理。它可以添加、删除或推迟协议消息的发送,但不会发起、终止或转换协议。一个多单元协议增强器可以定义在它们之间交换的协议消息,这些消息在增强器之外是不可见或无意义的。虽然Protocol boosters设计时考虑到了对端协议的透明性,但当子网条件很差时(如断连)这个假

27、设也限制了它改进性能的总体能力。与booster和PEP不同的一类方法是应用层代理,应用层代理提供了因特网到特殊网络的名字映射和协议转换。代理一般用在特殊网络的边缘,不需要在内部实现IP协议就可以和因特网互操作。这类方法很重要,因为顾虑到开销、地址管理或协议实现难度等,人们通常不愿意在挑战性网络中配置IP协议。代理方法的缺点是它们的专门性。代理通常使用两种方法:第一种是代理响应只在特殊网络中使用的一组特殊命令,这限制了代理在不同应用中的可重用性;第二种是代理作为原始的数据管道,这种方法无法利用代理节点提供的特殊资源(如存储或处理能力),并且要求与代理通信的应用使用与特殊网络兼容的专门协议。其次

28、,到目前为止尚没有代理之间的路由能力,即如果要在代理间实现动态路由,则没有一般性的方法,只能针对不同类型的代理进行设计。电子邮件是一种异步消息投递系统,它灵活的命名机制、基于异步消息的操作和带内差错报告已接近于解决挑战性网络中的许多问题,尤其是它可以运行于很多种网络技术上。电子邮件的不足是它缺乏动态路由、投递语义定义较弱、缺乏一致的应用接口。在路由方面,现有方法依靠一组静态预配置的邮件中继,对网络断电容忍性很差。电子邮件的投递语义似乎是大部分可靠加上可能的错误报告,由于寄错邮件、中间节点或端节点持续缺乏存储空间、底层传输协议出差、执行内容策略(如内容过滤、限制长度)等,邮件可能无法投递。当投递

29、成功时,一般不会自动提供端到端确认;一旦投递失败,原始信件、出错信息以及可能由第三方提供的一些附加信息会返回给发送者。尽管这个诊断信息很有用,典型的端用户几乎没有直接纠正这些问题的能力。尽管代理、PEP和电子邮件有助于解决由挑战性网络引起的一些问题,但它们都没有提供一个完整的解决方案。断开的路径、能力/寿命有限的端设备、特殊的协议栈、不同寻常的路由(可预测或周期性连接)似乎排除了(至少引起严重的困难)直接使用IP编址及路由特性的可能性,而且IP的转发功能(如果下一跳路由不能立即使用,就丢弃数据包)对于频繁断连的链路来说也是有问题的。在可靠传输方面,因特网的fate-sharing模型要求每个连

30、接的状态保存在端系统上,因为端系统的失效将理所当然地使得数据连接变为无用。然而在许多挑战性网络中,这个假设是不成立的。比如,如果一个节点需要完成其它的任务或者其电源电量和内存很有限,允许该节点将其端节点连接状态转交给其它节点是很有用的。这么做不会完全违背fate-sharing模型(不会要求将每连接状态保存在中间节点上),但是会呈现出与当前因特网中的fate-sharing不同的行为。除了与网络本身相关的问题之外,基于低延迟假设而设计的应用在挑战性网络上也可能遇到问题,向应用提供什么情况下使用什么API的指导是合适的。事实上,向应用提供关于常规延迟或超长延迟的直接指示,并允许应用相应地定制其行

31、为是非常有用的。基于以上的分析与假设,支持挑战性网络互联的最理想框架是提供一种类似于最小公分母接口的网络服务和API,即非交互式消息传输。根据因特网上的经验,这样的系统应当结合P2P网络中的覆盖网路由能力和电子邮件的延迟容忍和中断容忍特性。如果在应用层上实现(以代理的形式),这样的系统可以在非常不同的网络之间提供网关功能。将以上各种考虑结合在一起,提出了一个挑战性网络的体系结构。2.3 基于延迟容忍消息的覆盖网络体系结构延迟容忍网络架构为解决挑战性网络之间的互操作而提出,它建立在消息交换的抽象上。消息的聚合称为捆绑(bundle),处理捆绑的路由器称为捆绑转发器(bundle forwarde

32、r)或DTN网关。作为一个覆盖网架构,DTN意欲运行在各种网络的已有协议栈之上,并当节点物理地连接两个或多个异种网络时,在异种网络之间提供存储转发的网关功能。比如,在因特网内部,覆盖网可能运行在TCP/IP之上;对于深空链路,它可能提供网关服务;而在延迟容忍的传感器/激励器网络中,它可能提供与将要标准化的传感器传输协议的互联。每个网络环境都有自己特殊的协议栈,和为特定应用域开发的命名语义,网络之间的互操作性是通过网络互联点上特殊的DTN网关来实现的。(1)域和DTN网关DTN架构包括区域和DTN网关的概念,用下图所示的例子说明。该例子包括A、B、C、D四个区域,区域B包括一个放置于通勤车上的D

33、TN网关,通勤车在DTN网关3和网关5之间来回穿梭;区域D包括一个低轨道卫星链路,该链路提供周期性的连接。区域边界用做异种网络协议与地址族之间的互联点。两个节点被认为在同一个区域中,如果它们不使用DTN网关(使用区域中已有协议)就能通信。我们期待会有少量的区域类型开发出来(如类因特网、移动自组网、周期性断连等),而同一种区域类型的网络将实现相似的底层协议栈。DTN网关综合了Metanet的waypoint概念和ARPANET最初设计中网关的定义,Waypoint是数据要进入一个区域必须经过的一个点,在这个点上可以进行区域特定编码的转换及执行一些策略和控制等。连接两个区域的DTN网关逻辑上由两个

34、部分组成,每一部分位于各自区域的传输层协议之上,类似于建立在特定链路层协议之上的ARPANET网关。然而,与ARPANET网关不同的是,运行于传输层之上的DTN网关关注可靠消息路由而不是尽力而为的分组交换。当要求可靠投递时DTN网关负责将消息保存在非易失性存储器,DTN网关还负责名字解析,和对到来的流量执行认证和访问控制检查以确保转发是允许的。(2)名字元组为路由DTN消息,使用称为名字元组(name tuples)的标识符来标识对象或对象组。名字元组由可变长度的两部分组成,形为区域名字,实体名字。第一部分为全局唯一的、分层结构的区域名字,由DTN路由器解释,用于寻找去往指定区域边界的一个或多

35、个DTN网关的路径。DTN转发表中的路由可以由网络管理员静态配置,也可以由动态DTN层路由协议计算。区域名字的分层结构有助于减少DTN转发表的规模(如同因特网中的CIDR路由聚合一样),同时由于允许使用可变长度的子串也带来了命名的灵活性。尽管看上去与DNS名字类似,但区域名字不一定要被解析成任何地址形式,也不一定要像DNS域名那样按照分布式的层次结构来解析。名字元组的第二部分标识了指定区域内的一个可解析名字,不要求全局唯一。它可以是任何结构,并且可以包含只在源区域和目的区域可解析的特殊符号,因此可支持任何命名方案。比如,在因特网中的名字元组可以是:internet.icann.int, “ht

36、tp:/www.ietf.org/oview.html”,它指的是因特网区域(按照将来要定义的某种域结构)和一个因特网特定的本地标识。当消息穿过一连串的区域时,只有区域名字用来路由;当到达目标区域边缘时,实体名字信息被解释和转换(如果需要的话)成本区域内的协议标准名字(或地址)。这种解析名字的方法导致了名字元组的迟绑定,即只有要立即用于消息转发的名字元组部分才被DTN网关使用。DTN中名字元组的迟绑定和因特网中DNS风格的名字-地址映射方案不同,后者要求在启动一个因特网的端到端会话前就要完成名字到地址的转换。对于挑战性网络来说,要去查询一张可能仅存在于目标区域的名字-地址映射表是不现实的,因为

37、可能带来极大的端到端延迟。使用名字而不是地址来标记通信的参与者是来自于对当前因特网运行趋势的一种观察。地址被用于路由和指代一个计算资源(如服务器),而名字用来方便人们记忆地址。今天的因特网包括了像搜索引擎、网页缓存等对象。在许多情况下,一个URL或URI名字有效地指示了一个数据查询,而不是提供该查询的特定端系统计算资源的标识。(3)邮政服务类型挑战性网络的概念隐含着各种资源限制,因此在整个服务模型中采用基于优先组的资源分配是很重要的。但是考虑到方案的可实现性和不把用户搞糊涂,所采用的服务类型结构不应太复杂。2从美国邮政提供的服务获得启发,采用了其中的一个服务类型子集。邮政系统是一个典型的非交互

38、式服务网络,并且已经被广大的用户所熟悉。2选择了以下几个粒度较粗且直观易懂的核心邮政服务作为挑战性网络的服务类型:低/中/高优先级递送、递送通知(notification of mailing)、递送到接收者(返回收条)、使用的路由(投递记录)。可以使用可靠递送选项来扩展该模型。(4)路径选择和消息调度 DTN架构是针对不存在端到端路径的网络设计的。所谓路由是由一连串时间独立的接触(contact,通信机会)组成,这些接触将消息从产生地传向目的地。一个接触用相对于源的开始时间和结束时间、容量、延迟、端点和方向来描述,对一个接触的可预测性的度量有助于为消息选择下一跳转发节点和选择下一个要发送的消

39、息。接触的可预测性可以在完全可预测到完全不可预测的连续范围内变化。另外,接触的可预测性对方向敏感,比如一个拨号连接从发起者的角度可能是完全可预测的,而从接收者的角度是完全不可预测的。路径选择和消息调度的细节受区域内的路由协议和算法影响很大。目前尚处于DTN研究的早期,已经提出的一些问题包括:如何确定接触的存在和可预测性,在高延迟的环境下如何获取尚未处理的消息的状态,如何将消息高效地分配给接触及确定它们的传输顺序。尽管对于这些问题都可以设计非常简单的启发式算法(如贪心算法),但要解决好每一个问题都是非常困难的,有待今后进一步的研究。(5)保管传输和可靠性DTN架构包括两类不同的消息路由节点:永久

40、节点(P)和非永久节点(NP)。P节点被认为拥有大容量的永久消息存储器,而NP节点可能没有。P节点一般都要参与保管传输,除非它不能或不愿意保存一个特定的消息。一个保管传输是指从一个DTN hop到下一个DTN hop的有确认的消息投递,以及相应的可靠投递责任的传递。保管传输类似于将投递邮件的责任委托给承诺(或有合同约定)的人或部门。保管传输的概念对于DTN架构是十分重要的。它可以防止数据的高丢失率,解除资源受限的端节点维护端到端连接状态的责任,特别是端节点通常不需要保存已经被保管传递到下一跳DTN的数据拷贝。对于坚持要端到端确认的端节点,可以请求一个“投递确认”选项。从端到端可靠投递语义到逐跳

41、可靠性方法,我们可能会问逐跳方法是否提供了一种较弱的可靠性(有端到端通知)?2认为保管传输的可靠性不一定比典型的端到端可靠性差。这个观点来自于以下观察:多数情况下当端节点不能长时间保持在工作状态时,使用委托传输的数据被可靠递送的机会超过端到端可靠投递的机会,而且端到端确认选项与端到端可靠性的语义是一致的。事实上,保管传输可以看成是在端节点移动时对端到端可靠性的优化。(6)会聚层和重传每个区域内部使用的传输层协议所提供的功能可能差异很大。比如,一个传输层协议可能提供或不提供以下功能:可靠投递,连接(有连接失败的指示),流量控制,拥塞控制,保持消息边界。当执行保管传输时,捆绑转发要求底层有保持消息

42、边界的可靠投递能力,不具有这些特性的传输层协议就需要适当地增强。下图给出了一个捆绑转发器的实现结构,包括许多传输层协议特定的会聚层,这些会聚层在要求增强的传输层上增加了可靠性、消息边界和其它特性。Internet中的TCP也要求增强,因为它不保持消息边界;支持消息边界的SCTP可能使用一个最小的会聚层,不需要很多的增强。当可靠投递由底层传输协议提供时,其对应的会聚层只需要管理连接状态,以及在一个连接断开时启动重传。在面向连接的协议中,连接中断的检测一般通过应用接口提供。当没有对失效检测的直接支持时,捆绑转发功能可以设置一个粗粒度的定时器,在它认为消息丢失时重启消息的传输。重传时间的选择取决于所

43、在区域的细节,这表明覆盖网络中的“网络层”要能通过请求会聚层中的信息来了解下面“物理层”的特性,从而表现出了对分层结构的一种违反。在挑战性网络中,知道转发层上的一些路径信息对于选择差错控制策略非常有用。尤其是,对来回时间的粗略估计对于触发尝试性的修复措施特别有用。(7)安全DTN架构的安全需求与传统网络的安全模型不同,其安全主体除了通信端点外还包括路由器(即DTN网关)本身。在DTN中,人们更感兴趣的是可认证地接入到一个特定服务类型的业务流中,避免将数据传输了很长距离后,最终发现该流量是被禁止的。为实现DTN的安全模型,每个消息包括一个不变的“邮戳”(一种能力),邮戳中包括一个可验证的发送者(

44、或角色)标识、对该消息所请求的服务类型的许可(及批准机构)、用于验证消息内容正确性的其它常规加密信息。在DTN的每一跳,路由器检查消息携带的证书(邮戳),并尽早丢弃未通过认证的消息。该方法的另一个好处是使得拒绝服务攻击难以实施。目前的安全框架使用公钥作为密钥交换的起点。每个想要发送消息的主体事先生成自己的公钥/私钥对,并从DTN转发器所知道的某个认证中心获得自己签名的公钥,所有路由器事先配置一个或多个认证中心的公钥。主体用自己的私钥对发送的消息签名,然后将消息、消息签名及自己的签名公钥一起发送。在第一个DTN路由器上,签名的公钥被用来验证发送者及所请求的服务类型(根据网关中存放的一张访问控制列

45、表),验证通过的消息用网关的私钥签名后发送。使用这种方法,只有第一跳网关需要缓存用户的证书,且只为邻近用户服务。不在网络边缘的“核心”网关可以依赖上游网关的认证来查证消息的真实性。这种方法有助于提高这类网络中密钥管理的可扩放性,因为每个网关只需缓存邻近网关(或用户)而不是所有用户的公钥证书,既节约了空间,又减少了网络中密钥管理的开销(网关之间交换密钥的频率很低)。但以上方法也容易被受损害的节点利用发起拒绝服务攻击。如果一个原来合法的路由器被攻陷,它可以假冒它所知道的用户身份发送数据。然而,如果要求携带端到端消息签名(一种DTN安全选项),合法用户可以在随后的时间里拒绝产生这些数据的源头。因此,

46、2认为允许受损害的节点发起拒绝服务攻击以换取系统的可扩放性(避免逐跳检查用户证书)是一个合理的折衷方案。(8)拥塞控制和流量控制作为一种逐跳传输的体系结构,流量控制和拥塞控制是紧密相关的。在DTN中,流量控制是指限制DTN节点向下一跳DTN节点的发送速度,拥塞控制是指在DTN网关上处理对永久存储器的竞争。处理这些问题的机制可以分为积极的方法和反应式的方法两类。积极的方法一般包括某种形式的接纳控制,以避免拥塞的产生。在许多情况下,一个区域可能是在一个实体的管理控制之下,这时积极的方法是可行的。如果积极的方法不足以解决问题或不可用,则必须使用反应式方法(很可能包括直接的流量控制)。如果实际操作延迟

47、较高,反应式方法通常导致性能下降。与其它架构相比,DTN架构有两个特性使得拥塞控制非常困难:1)在未来一段时间里可能不会有接触到来(从而积累在节点里的数据没有机会排空),2)已接收的保管传输的消息不能丢弃(除非在极端情况下或消息过期)。给定这些约束条件,则处理拥塞的可能措施包括为不同的服务类型预留缓存空间、当存储空间满时拒绝新的连接、将保管传输转移到其它可能的保管节点(可能不是最佳的下一跳)、为满足保管传输而丢弃非保管传输的消息。在极端情况下,也可以删除保管消息,但这种举动将被认为是一种系统错误,应尽量避免。目前的拥塞控制方法是使用一个共享优先级队列来分配保管存储。首先,清除所有过期的消息,并

48、拒绝太长的消息使用保管传输;其次,消息按照优先级和寿命(由发送者指定,携带在消息中)排队。这个方法有两个问题:1)优先级倒置,如果较早到达的低优先级消息已经被保管接收,后到的高优先级消息可能没有保管空间;2)队头阻塞,节点的永久存储空间已被等待的消息占满,排在队头的保管消息要使用的接触还未开始,而这时DTN节点被要求向一个当前可用的接触转发一个不要求保管传输的消息,那么这个非保管传输的消息就无法发送。至于流量控制,DTN转发器可以充分利用区域内部传输层协议的流量控制功能。总之,DTN是一种新型的网络体系结构,解决了长延迟和间歇连接环境中异构网络的互操作性问题。DTN在多种不同类型的传输层之上、

49、应用层之下添加了一个DTN层,可以充分利用下层网络提供的服务进行数据传输。它采用异步消息传递和类似于邮件投递的服务类型模型和投递语义,提供多种形式的连接,包括预定的、预测的和机会连接的投递路径。3. DTN体系结构规范3(1)使用存储转发操作的虚拟消息交换DTN应用发送的消息称为应用数据单元ADU,其长度与实现有关。ADU典型地以一个个完整的单元传输,不维护相对顺序。ADU由捆绑层(bundle layer)传输。捆绑层将ADU划分成一个或多个称为捆绑(bundle)的协议数据单元,交给DTN节点转发。每个bundle包含一个或多个块(blodk),每个块可能包含应用数据或用于传输bundle

50、的其它信息。块中携带的信息相当于传统协议数据单元中的头部或载荷部分,但称其为块而不是头部是因为由于特定处理的需要(如数字签名),块不一定出现在bundle的开始。在传输的过程中,一个bundle可以被分裂成多个bundle,也称为分片或bundle分片。分片本身也是bundle,还可以进一步分片。两个或多个分片可以在网络的任何地方重组,构成一个新的bundle。bundle的源和目的用EID(Endpoint Identifier)进行标识,bundle还包含一个report-to EID,用于将诊断输出到指定的任何实体。一个EID可以指一个DTN节点,也可以指多个DTN节点(如多播目的或报告

51、目的)。尽管IP网络基于存储转发操作,但它假设存储时间不长,和排队延迟、传输延迟在一个数量级上。但是在DTN网络中,链路并不总是可用或可靠的,节点可能需要存储较长的时间。大多数DTN节点将使用某种形式的永久存储设备,如磁盘、闪存等,并且在系统重启之后未发送的bundle依然保存在系统中。bundle包含起始时间戳、有用寿命指示器(useful life indicator)、服务类型指示器(class of service designator)和长度,这些信息为捆绑层路由提供了数据传输的长度及性能要求。当有大量数据在节点中排队时,知道这些信息对调度决策和路径选择是非常重要的。bundle转发

52、的要点是,有一个地方可以让bundle排队等待通信机会。这突出了以下假设:l 存储在整个网络中分布并可以获得。l 存储系统足够永久和健壮,能够保存bundle直至转发发生。l (隐含地)相比于持续连接或其它方式,存储转发是一种更好的模式。支持DTN架构的网络必须考虑和支持这些假设。将长时间存储作为DTN架构的一个基本方面也带来了新的问题,尤其是关于拥塞管理和DoS防御。本质上,节点存储代表了一种必须管理和保护的新资源,DTN领域的许多研究工作都是围绕这些问题。(2)节点和端点DTN节点是收发捆绑的引擎,是捆绑层的实现。应用使用DTN节点发送和接收携带在捆绑中的ADU,当作为report-to目

53、的地时,也使用DTN节点接收携带在捆绑中的诊断信息。一个DTN端点(DTN endpoints)是一组DTN节点,一个捆绑被认为成功投递到了一个DTN端点,如果该DTN端点的某个最小子集正确接收了该捆绑,这个子集称为端点的最小接收组(Minimum Reception Group, MRG)。一个端点的MRG可以指一个节点(单播)、一组节点中的一个(任播)、组中所有节点(多播和广播)。一个节点可以在多个端点的MRG中。(3)端点标识符和注册端点标识符是用一般的URI语法表示的一个名字,用于标识一个DTN端点。节点能够根据EID确定相应DTN端点的MRG。每个节点至少要有一个唯一标识它的EID。

54、应用将ADU发往目的EID,也可以将ADU发到一个特定的EID再转发。取决于所用的EID的结构,EID中的某些部分可以使用通配符,这对于诊断和路由来说通常是有用的。应用希望接收去往某个特定EID的ADU,这种意图称为一个注册。注册一般永久保存在DTN节点中,以使应用和操作系统重启后这些注册信息依然存在。不能保证应用建立一个注册的尝试总是成功的,比如,其指定的EID可能不能翻译或不可用。每个EID在语法上表示为一个URI。每个URI以一个方法(scheme)名开始,后面跟一串字符,这个部分称为URI的方法特定部分(scheme-specific part,SSP)。使用URI可以给EID的构造带

55、来很大的灵活性,比如可以基于DNS域名来构造,或者看上去像是“兴趣的表达”。作为一个名字,不要求EID与路由或拓扑组织相关联,但也不禁止这种关联,在某些环境下这种关联可能是有益的。一个EID可能代表了包含多个DTN节点的端点,因此URI方法的设计者必须定义如何解释EID的SSP,以便确定EID是指一个单播、多播还是任播的节点集合。绑定是指为转发消息而解释EID中的SSP,比如,绑定可能要求将一个EID映射到一个下一跳EID或一个低层地址。迟绑定(late binding)是指将bundle的目的绑定到一组特定的目的标识符或地址不一定要发生在bundle的源头。由于目的EID会在每一跳被重新解释

56、,因此绑定可以发生在源头、传输过程中或目的,这与Internet中的域名-地址绑定发生在数据传输前(早绑定)不同。在一个频繁断连的网络中迟绑定是有利的,因为消息的传输时间可能超过绑定的有效时间,从而使得在源头绑定不可能或无效。基于名字的路由与迟绑定一起使用可以减少在网络中传播的管理(映射)信息的数量,也可以将映射同步的范围限制到发生变化的本地区域。(4)任播和多播一个EID标识的端点可能包含了多个DTN节点,这时递送语义可能是任播或多播。对于任播递送,一个bundle被递送给一组节点中的一个;对于多播递送,bundle要被递送到组中的所有节点。DTN网络中的多播递送在组成员方面产生出一个新的问

57、题。在低延迟网络(如Internet)中,如果节点“最近”表达了对加入一个组的兴趣,该节点被认为是该组成员。在一个DTN网络中,应用可能在时刻t表达了它希望接收发往EID e的数据,但在这之前的某个时段内,发往组e的数据已经生成了。为使应用收到这些数据,数据必须在发送者停止发送之后的很长时间依然可用,因此数据必须存储在网络中以支持这种组语义。如何设计和实现这个语义是一个研究问题,它至少和可靠组播问题一样困难。(5)服务优先级DTN架构对所递送的ADU提供了相对优先级度量(低、中、高),这些优先级表示了应用希望ADU递送的紧急程度。优先级携带在bundle块中。在DTN网络中,网络流量一般是非交

58、互和单向的,网络对及时投递没有很强的保证,但仍提供某些形式的服务类别、可靠性和安全性。目前DTN定义了大宗、普通和加急三种优先级,用于调度发送队列中的bundle。l 大宗(bulk):大宗的bundle按最小努力(least effort)发送,仅当由相同源头产生、去往相同目的地的所有其它优先级的bundle都已传输,才传输这一类bundle。l 普通(normal):普通bundle优先于大宗bundle传输。l 加急(expedited):加急bundle优先于其它类型的bundle传输。应用为其发送的每一个ADU描述所要求的优先级种类和生存时间,这些信息与DTN节点上运用的路由与转发策

59、略相结合,将最终影响ADU投递的可能性和及时性。一个bundle的优先级种类只与从相同源头发出的bundle有关,这意味着从一个源头发出的高优先级bundle可能不会比从另一个源头发出的中等优先级的bundle投递得更快(或更好的服务质量),但从同一个源头发出的高优先级bundle将比低优先级的bundle优先处理。取决于特定DTN节点的转发/调度策略,优先级也可能在不同源之间实施,即在某些DTN节点上,加急bundle总是优先于大宗bundle发送。DTN架构提供了几种服务选项给应用,包括保管传输服务(可靠传输)、返回收条服务(确认收到)和一些诊断服务等。(6)主要的bundle域每个bun

60、dle应包含一个主块(必需)、一个可选的载荷块(包含ADU数据)和一组可选的扩展块,块可以像IPv6中的扩展头那样级联在一起。以下给出的域均包含在主块中,因而出现在每一个bundle或分片中。l Creation Timestamp:由bundle的创建时间和一个单调增长的序列号级联而成,这样保证由同一个源产生的每个ADU都有唯一的创建时间戳。这个创建时间戳基于应用请求发送一个ADU的时间(time-of-day),而不是相应的bundle进入网络的时间。协议假设DTN节点具有基本的时间同步能力。l Lifespan:消息失效的时间。当存储在网络(包括在源DTN节点)中的bundle失效时,这

61、个bundle会被丢弃。一个bundle的Lifespan表示为距其创建时间的偏移量。l Class of Service Flags:指示该bundle使用的投递选项和优先级种类。l Source EID:源(第一个发送者)EID。l Destination EID:目的(最终接收者)EIDl Report-To EID:指示返回收条、路由跟踪等报告应当发送给谁,这个EID可能和Source EID不同。l Custodian EID:bundle的当前保管员(如果有的话)载荷块包含所携带载荷的信息(如长度)及载荷本身。除了主块和载荷块中的域之外,每个bundle还可以在附加的块中携带其它域

62、。(7)路由和转发DTN架构为捆绑层上的单播、任播和多播消息提供了路由和转发的框架。由于DTN网络中的节点可能通过多种类型的底层网络技术互连,因此一个DTN网络最好用一个多图(multigraph)来抽象地描述,即一对顶点之间可以有几条边连接。图中的边一般来说在延迟、容量和方向性(可能存在单向连接)方面是时变的。当一条边具有零容量时,这条边被认为断连。由于DTN图中的边可能具有极大的延迟,因此在描述一条边的容量或延迟时分清这些特性是在什么时候测量的非常重要。我们将边的容量和延迟表示为数据注入到该边时刻的函数。比如,考虑一条边在时刻t具有容量C(t)和延迟D(t),如果在时刻t有B比特注入到这条

63、边,则它们将在时刻 t + D(t) + B/C(t) 全部到达。我们假设C(t)和D(t)在时间段 t, t + D(t) + B/C(t) 内没有很大改变。由于边可能在正容量和零容量之间变化,可以描述一个容量严格为正的时间段,在这个时间段内延迟和容量认为不变,这个时间段称为“一次接触”(contact),容量和时间段长度的乘积称为一次接触的量(volume)。如果各个接触及它们的量可以预先知道,就可以智能地进行路由和转发决策。然而,最佳利用一次接触的量要求将大的ADU和bundel划分成较小的可路由单位,这由DTN分片功能完成。当通过DTN图的投递路径可能丢包或接触的时间段和容量无法预先精

64、确得到时,路由计算是非常困难的。路由是DTN的一个研究热点。根据接触的性能特性是否可预测以及接触的成立是否要求某些措施,将接触定义为以下几类:l Persistent Contacts(永久接触):接触总是可用的,即不需要有初始化连接的措施,如DSL连接或Modem连接。l On-Demand Contacts(按需接触):需要某些措施来启动接触,但启动之后就和永久接触一样,直到被终止,如拨号连接。l Intermittent-Scheduled Contacts(间歇预定的接触):一个预定的接触是指同意在特定时刻建立一个特定时间长度的接触,比如与LEO卫星的接触。一个节点与卫星的接触列表可以

65、根据卫星的可视时间、容量和延迟来建立。l Intermittent-Opportunistic Contacts(间歇机会接触):机会接触不是预定的,而是意想不到地出现。比如,一个非预定的飞行器飞过上空并发出信标,通告可用于通信,这将提供一个机会接触。另一种机会接触是PDA和机场中央大厅亭子之间通过红外线或蓝牙的通信链路,当PDA接近亭子时机会接触开始,并持续一段不可确定的时间(直至链路中断)。l Intermittent-Predicted Contacts(间歇预测接触):预测接触是根据之前观察到的接触历史或其它信息对可能的接触时间和接触长度的预测。如果预测接触有足够的可信度,可以基于该信息选择路由。这是一个活跃的研究领域,并已有一些方法被提出。(8)分片和重组设计DTN的分片/重组功能是为了通过充分利用接触的量和避免重传已转

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!