RFC1633_Internet 体系结构中的综合服务概述_第1页
RFC1633_Internet 体系结构中的综合服务概述_第2页
RFC1633_Internet 体系结构中的综合服务概述_第3页
RFC1633_Internet 体系结构中的综合服务概述_第4页
RFC1633_Internet 体系结构中的综合服务概述_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、RFC1633Integrated Services in the Internet Architecture Internet: an Overview体系结构中的综合服务概述组织:中国互动出版网(/)RFC文档中文翻译计划(/compters/emook/aboutemook.htm)E-mail:译者:jonel_t(jonel_t tian_)译文发布时间:2001-8-14版权:本中文翻译文档版权归中国互动出版网所有。可以用于非商业用

2、途自由转载,但必须保留本文档的翻译及版权信息。Network Working Group R. BradenRequest for Comments: 1633 ISICategory: Informational D. Clark MIT S. Shenker Xerox PARC June 1994Internet 体系结构中的综合服务概述(RFC1633Integrated Services in the Internet Architecture: : an Overview) 本备忘录的状态:本备忘录提供关于Internet社区的信息。它不指定任何一种形式的标准。本备忘录的发布不受任

3、何限制。摘要本备忘录讨论了提供综合服务的Internet架构和协议的一个提议性扩展,例如,同时支持实时和非实时服务的IP。这个扩展必须满足多种新应用不断增长的实时服务要求,包括电信会议、远程研究会、电信科学及分布式仿真。本备忘录是Dave Clark,Scott Shenker, Lixia Zhang, Deborah Estrin, Sugih Jamin, John Wroclawski, Shai Herzog和Bob Braden近期工作的直接成果,而且利用了很多其他人的工作。目 录1.简介22. 体系结构的元素32.1. 综合服务模型32.2.参考实现框架53. 综合服务模型73.

4、1. 服务质量需求83.2. 资源共享需求和服务模型103.3. 分组丢弃113.4. 使用反馈113.5. 预留模型114. 通信量控制机制124.2.机制的应用144.3. 一个例子:CSZ模式145. 预留设置协议155.1.RSVP 概述155.2. 路由选择与预留176. 致谢18参考文献:18安全考虑20作者地址201.简介 通过Internet 的IETF会议的多播是对在一个分组交换架构中传送数字化音频和视频的一个大范围试验。这些高度可视化的试验依赖于三个技术的支持。(1)很多现代的工作站都装有内置的多媒体硬件,包括音频codecs(多媒体数字信号编解码器)和视频frame-gr

5、abbers,而且现在的视频设备也不贵。(2) IP多播虽然在商业路由器中还没有得到广泛应用,但在MBONE,一个临时性的“多播骨干网”中却得到了支持。(3)已开发出高度复杂的数字音频和视频应用程序。 这些试验也表明,还缺少一个重要的技术元素:由于不断变化的排队延迟和拥塞丢失的原因,实时应用在Internet中的表现经常不好。在Internet最初的构想中,它仅提供一个非常简单的服务质量,即点到点的尽力而为的数据传送。在实时应用如远程视频,多媒体会议,可视化和虚拟现实能够得到广泛使用前,Internet架构必须被修改,以支持为端到端分组延迟提供某种控制的实时QoS。这种扩展在开始时就应是为了多

6、播而设计;简单地从单播(点到点)推广是不行的。 实时QoS并不是下一代Internet中通信量管理的唯一问题。要求网络经营者有能力对不同的通信量类中的一个特定链接上的带宽共享进行控制。他们应该能够把通信量分成几个管理类,而且根据负载情况为每一个链接带宽指定一个最小百分比,同时还要允许在别的时间有有效的“未用”带宽。例如,这些类可能表示不同的用户组或不同的协议族。这样一种管理措施通常被叫做控制链路共享。我们使用术语综合服务(IS)来表示一个包括尽力而为服务、实时服务以及控制链路共享的Internet服务模型。 在过去几年中,综合服务的需求和机制是许多讨论和研究的主题(由于文献太多,即使列出一个代

7、表性的例子在这里也是太大了,作为一个不完全的列表可参见CSZ92, Floyd92, Jacobson91, JSCZ93, Partridge92, SCZ93, RSVP93a)。这一工作导致了支持本备忘录中所描述的综合服务的统一方法。我们相信现在是时候开始在Internet中综合服务的预先配置工程了。 本备忘录第二部分介绍Internet的一个IS扩展的元素。第三部分讨论实时服务模型SCZ93a,SCZ93b。第四部分讨论用于路由器的通信量控制、转发算法CSZ92。第五部分讨论RSVP,一个与我们所设想的IS模型兼容的资源设置协议的设计RSVP93a, RSVP93b。2. 体系结构的元

8、素 Internet的基本服务模型,具体就是IP的尽力而为传输服务,自20年前开始Internet研究工程以来就没有改变过CerfKahn74。我们现在提议改变这个模型,以包含综合服务。从学术的角度看,Internet服务模型的更改是一个大事业;但事实上我们我们只想扩展原有的体系结构,从而减轻了它的影响。新增的组件和机制将补充而不是替代基本IP服务。 理论上,被提议的体系结构扩展包含两个元素:(1)一个扩展的服务模型,我们叫它IS模型,和(2)一个参考实现框架,它给我们一个实现IS模型的词汇表集和一个通用计划组织。把定义外部可见行为的服务模型跟实现的讨论分开是很重要的,因为具体实现在服务模型的

9、生命周期中可能(而且必将会)改变。但是,这两者是有关系的;为使服务模型可信,提供一个如何实现这个模型的实例是有用的。 2.1. 综合服务模型 我们提议的IS模型为实时通信量提供两种类型的服务:保证服务和可预测服务。这个模型把这些服务和控制链路共享整合在一起,而且被设计成对多播和单播都有效。IS模型概要推迟到第三部分中再讨论,我们首先讨论在模型后面的一些关键设想。 第一个设想是资源(如带宽)必须得到明确管理,以便达到应用程序的需求。这意味着“资源预留”和“接入控制”都是这种服务的关键构件。另一种可选择的方法,试图在不对Internet服务模型作出明确改变情况下支持实时通信量,我们把它否定了。 实

10、时服务的本质就是对某些服务保证的需求,而且我们认为不作预留是无法实现这些保证的。术语“保证”在这里是一种广义的意思;即可以是绝对的或统计的,严格的或近似的。但是,在一个用户决定的时间段内应用程序以一种可接受的方式运行情况下,用户应该能得到一个质量可充分预测的服务。其次,“充分”和“可接受”都是模糊的术语。通常情况下,更严格的保证对资源耗费更多,使得这些不能与其他应用共享。 下面的论点是在Internet中提出来反对资源保证的。 “带宽是无限的。” 光纤不可思议的巨大的负载能力,使得有人断定带宽在将来是如此的充足、遍地都是而且便宜,以至除了光速限制外将没有通信延迟,因此将不需要预留资源。但是,我

11、们相信这在短期内是不可能的,在较长时期内也不太可能。虽然物理带宽看来会不贵,但作为一种网络服务而被提供的带宽不太可能变得如此便宜,以至浪费它们会是最划算的设计原则。尽管廉价的带宽在最后确实将普遍可用,但我们不能接受在Internet中会“无处不在”的可用。除非我们能够提供处理拥塞链路的可能性,否则实时服务将只能被简单的排除在外了。我们发现那些限制是不可接受的。 “简单的分级就足够了” 在某些时间和某种条件下为实时通信量简单地分配一个更高的优先级是对的,这将为其提供足够的实时服务。但分级是一种实现机制,而不是一个服务模型。如果我们根据一种特定机制来定义模型,我们将不能得到我们想要的准确特性。在简

12、单分级情况下的问题是,一旦有过多的实时流要求更高的优先级,则每一个流都被降级了。将我们的模型限制在这个简单的失败模型内是不能接受的。在某种情况下,用户将要求在一些新的请求收到“忙信号”是仍能成功传送某些流。 “应用可以适应” 适应性实时应用的发展,如Jacobson的音频程序VAT,并没有消除对发送分组传输时间的要求。人类对交互和可理解性的要求限制了网络延迟适应性的可能范围。我们已经见过在真实的试验里,尽管VAT可以适用网络延迟达数秒钟,但用户发现在这种情况下进行交互是不可能的。 我们认为为了向特定的用户分组流提供特定的QoS,路由器具有资源预留的能力是一种不可避免的需求。这导致了在路由器中对

13、特定流状态的需求,这是对Internet模型的一个重要而且基本的改变。Internet体系结构是在这样的思想下建成的,这种思想认为应将流相关的状态留在终端系统中Clark88。在这种思想基础上设计的TCP/IP协议包导致的健壮性是Internet成功的关键之一。在第五部分中我们讨论这种流状态是怎样加入路由器的而用于资源预留的,为了保留Internet协议包的健壮性,这种状态必须做成“软性的”。 路由器中的资源预留有一个现实的副作用。尽管它意味着一些用户可以获得优先服务,但是资源预留需要强制实行策略和管理控制。这因此而导致两种认证需求:对谁提出预留请求的用户认证,以及对使用这些预留资源的分组认证

14、。然而这些问题并不是“IS”独有的,Internet发展过程中的其他方面,包括商业化和商业安全,都有同样的需求。在本备忘录中我们将不对这些问题作进一步的讨论,但它们是需要关注的。 我们提出的另一个设想就是有必要把Internet用作同时对非实时及实时通信的公共架构。人们也可以选择为实时服务建立一个新的、完整的并行架构,而不改变Internet。我们否定了这种方法,因为它将失去实时和非实时通信量统计共享的重要优势,而且它比建立和管理一个公共架构更加复杂得多。 除了这个公共架构的设想,我们还采纳了一个统一的协议栈模型,对实时及实时服务使用一个简单的网络层协议。因此,我们提议为实时数据使用已有的网络

15、层协议(如IP或CLNP)。另一个方法是在网络层增加一个新的实时协议ST2-90。我们的统一栈方法提供经济的机制,而且它允许我们很容易的把控制链路共享包括进来。它也处理部分覆盖的问题,例如,允许在有IS能力的Internet系统和那些没有扩展的系统之间的交互,而没有通道的复杂性。 我们认为Internet应该有一个简单的服务模型。如果在Internet的不同地方有不同的服务模型,将很难知道任何的端到端服务质量声明是如何实现的。然而,一个简单的服务模型并不意味着就需要一个分组调度或接入控制的简单实现。尽管已开发出满足我们服务模型的特定分组调度或接入控制机制,但很可能还会有其它的机制满足这个服务模

16、型。后面介绍的参考实现框架,允许在没有一个简单设计情况下讨论有关实现的问题。 基于上述考虑,我们相信为了提供必要的服务,一个包括在路由器中增加流状态以及一个明确的设置机制的IS扩展是必要的。一个不考虑这点的不完备解决方案将是一次不明智的投资。我们相信我们提议的扩展保持了Internet架构的基本健壮性和效率,而且允许对网络资源进行有效的管理;这将是重要的目标,尽管带宽将变得非常便宜。 2.2.参考实现框架 我们提议一个实现这个IS模型的参考实现框架。这个框架包括四个组件:分组调度、接入控制程序、分类器和预留设置协议。在后面先作简单的讨论,在第四和第五部分中将作进一步讨论。 在接下来的讨论中,我

17、们定义来自单一用户活动而且有相同QoS需求的数据报的相应可识别数据流为抽象的“流”。例如,一个流可能包含一个传输链接或一个给定主机对之间的视频流。这是IS能识别的最好分组流粒度。我们定义一个流应是单一的,例如,它具有一个单一的原端和N个目的端。因此,一个N方的电视会议一般需要N个流,每个站点产生一个。 在今天的Internet中,IP转发是完全的平均主义;所有的分组都获得相同的服务质量,而且分组一般都是按一个严格的FIFO排队原则进行转发。对于综合服务,路由器必须根服务模型为每一个流实现合适的QoS。路由器创建不同服务质量的功能称为“通信量控制”。相应的通信量控制由三个组件实现:分组调度器,分

18、类器以及接入控制。 分组调度器 分组调度器使用多个队列及其它可能的机制如计时器来管理不同分组流的转发。分组调度器必须根据分组在何处排队的思想来实现;这是在一个典型操作系统的输出驱动器层次,而且符合数据链路层协议。调度算法的细节可能与特定的输出介质有关。例如,输出驱动器在面对具有内部带宽分配机制的网络技术时需要激发合适的链路层控制。 在第三部分和SCZ93中描述了为实现这个IS模型而建立的一个实验性分组调度器;这个调度器被称为CSZ调度器,在第四部分中将对其作进一步讨论。应该注意为完成我们的服务模型并不强制要求这个CSZ模式;大家知道一部分网络实际上是未满载的,FIFO就可以传送满意的服务。 另

19、外一个组件可以认为是分组调度器的部件,也可认为是单独的组件:评估器Jacobson91。这个算法被用来衡量输出数据流的性质,以显示控制分组调度和接入控制的统计信息。本备忘录将评估器作为分组调度器的一个部件。 分类器 为了便于通信量控制(和计费),必须把每个输入分组映射到某个类;分组调度器对同一类的所有分组给予相同的处理。这种映射由分类器来执行。类的选择可能基于已知分组头的内容和/或某些加入每个分组的类别号码。 一个类可以与很多类型的流相关,例如,所有的视频流或所有来自某一特定组织的流。另一方面,一个类仅只一个单一的流。一个类可能只是某个特定路由器的抽象概念;相同的分组在通路上的不同路由器中可能

20、被划为不同的类。例如,骨干网路由器可能选择把很多流映射在少数几个汇聚类中,而靠近外围的路由器,由于汇聚流要少得多,可能为每一个流使用一个单独的类。 接入控制 接入控制实现决定算法,路由器或主机用这个算法来决定在不影响原来保证的条件下是否同意一个新流的QoS请求。在一个主机请求通过Internet的某些通路的实时服务时,接入控制在每一个节点中都被激活,以作出一个本地的接受/拒绝决定。接入控制算法必须与服务模型一致,而且它在逻辑上是通信量控制的一部分。尽管接入控制仍然存在着开放研究问题,一个优先的切入点已经有了JCSZ92。 接入控制有时会与策略或实施混淆在一起,策略与实施是网络中“边”上的每一分

21、组功能,以确保主机不能违反它答应的通信量特征。我们认为策略是分组调度器的一项功能。 除了确保达到QoS保证的要求,接入控制还将参与资源预留管理策略的实施。某些策略会对那些预留请求要求认证。最后接入控制还将在计费和管理报告中起重要作用。 我们实现框架的第四个也是最后一个组件是预留设置协议,它在终端主机和流所经过路径上的路由器中创建和维护特定流的状态是必要的。第五部分讨论了一个称为RSVP(预留协议)的预留设置协议RSVP93a,RSVP93b。在Internet中坚持只有一种预留协议将会是不可能的,但我们认为预留协议的多种选择会导致混乱。我们相信多种协议只有在支持不同的预留模型是才会存在。 对服

22、务模型的链路共享部分的设置需求远没有对资源预留的设置需求清楚。尽管我们期待大多数这方面的问题可以通过网络管理接口来解决,而且因此而不必把RSVP作为整体架构的一部分,但我们也可能需要RSVP在提供需求状态能起作用。 为了声明其资源需求,应用必须用一个称为“流规约”的参数列表来指定想得到的QoSPartridge92。流规约由预留设置协议发送,传给接入控制以测试其可接受性,最终被用来确定分组调度机制的参数。 图1展示了这些组件是怎样装进一个IP路由器中的,该路由器已经被扩展以提供综合服务。这个路由器具有两个主要的功能:在双向水平线下的路径转发,已及在水平线上的后台代码。 由于路由器必须为每个分组

23、执行路径转发,因此必须将其高度优化。事实上,在大多数商业路由器中,它的实现还包括硬件支持。路径转发被分成三个部分:输入驱动器、网络转发器和输出驱动器。网络转发器解释相应协议包的网络协议头,如TCP/IP的IP头,或OSI的CLNP头。网络转发器为每一个分组执行一个包相关的分类器,然后把该分组及它的类传给合适的输出驱动器。分类器必须全面而有效。为提高效率,应为资源分类和路由查找采用一个公共机制。 输出驱动器实现了分组调度器。(分层主义者会注意到输出驱动器现在有两个不同的部分:与具体机制高度无关的分组调度器,以及只关心硬件细部分的实际I/O驱动。评估器置于两者之间某处。我们只是注意到这个事实,并不

24、意味着将其提升为一个原则)。 _ | _ _ _ | | | | | | | | | | | 路由代理 | | 预留设置 | | 管理代理 | | | | | | 代理 | | | | | |_._| |_._| |_._| | | . . | . | | . . _V_ . | | . . | | . | | . . | 接入控制 | . | | V . |_| . | | | | 路由数据库 通信量控制数据库 | |=| | | | _ | | | _ | |_|_|_|_| = o | | | | | | 分 组 | _ | | = | 分类器 | = 调 度 器 |=|_|_|_| =

25、 | | |_| | _ | | | | | |_|_|_|_| = o | | 输 出 | Internet | | | 驱 动 | 转 发 器 | 输 出 驱 动 器 | |_|_|_|图1: 路由器参考实现模型 后台代码被简单的装入路由器的内存中,而且由一个通用CPU执行。这些后台的程序创建控制路径转发的数据结构。路由代理实现一个特定的路由协议,而且建立一个路由数据库。路由设置协议实现这个协议以建立资源预留,见第五部分。如果接入控制同意一个新的请求,分类器和分组调度器数据库会作出相应的改变以实现要求的QoS。最后,每个路由器都支持网络管理代理。这个代理必须能够修改分类器和分组调度器数据库

26、以设置控制链路共享以及设置接入控制策略。 主机的实现框架基本上与路由器的相似,只是多了一些应用程序。主机应用程序产生和接收数据,而不是转发数据。应用程序的一个流在需要实施QoS时必须激活一个本地预留设置代理。应用程序接口的最佳方法还有待决定。例如,可能存在一个明确的网络资源设置API,也可能设置只是作为操作系统调度功能的一部分被不明确的激活。主机的IP输出路径可能不需要分类器,因此分组的类分配可以由相应流的本地I/O控制结构来指定。 在路由器中,综合服务改变路径转发以及后台功能。对取决于硬件加速性能的路径转发的改变将会是更困难和更昂贵的。为大量不同的策略需求和未来环境选择一个通用而且能修改的通

27、信量控制机制集将是最重要的,以达到高效的实现。 3. 综合服务模型 应用程序激活置入网络服务接口的服务模型来定义它们可以请求的服务集。尽管下层网络技术和上层应用包将会发展,但对这种服务接口兼容性需求的要求会是相对稳定的(或者,更准确的说是扩展的;我们确实希望在将来增加新服务,但我们也希望改变现有服务是困难的)。由于其持续性的影响,所以应在基本服务需求的基础上而不是参考任何特定网络来设计服务模型。我们现在简单的描叙一个Internet核心服务集的提案;所提议的这个核心服务模型的更完全描叙见SCZ93a, SCZ93b。该核心服务模型提出了那些与分组传输时间有最直接关系的服务。我们把其他的服务(如

28、路由选择、安全或流同步)留给别的标准化组织。一个服务模型包含一个服务承诺集;网络对相应的服务请求承诺某种传送服务。这些服务承诺可以根据提出请求的实体而划分为:单个流实体或集合实体(流类)。对单个流作出的服务承诺的目标是提供合理的应用性能,因此而被应用的环境改造需求所驱动;这些与服务质量有关的服务承诺被传送给一个单一的流。对集合实体作出的服务承诺被资源共享或经济、需求所驱动;这些与汇聚资源有关的服务承诺对多种实体有效。在本部分中我们先探讨单个流的服务需求,并且提议一个相应的服务集。然后,我们讨论服务需求和资源共享服务。最后,我们总结一些关于分组丢弃的评论。 3.1. 服务质量需求 核心服务模型主

29、要关注分组传输时间。每一分组延迟是网络所作出的服务质量承诺中的主要指标。我们提出更严格的假设,就是我们作出的量化服务承诺的唯一指标就是延迟的最大值和最小值。应用性能依赖低延迟服务的程度变化很大,我们可以根据其依赖程度而将应用定性的分成几个级别。有一类应用在确定的时间内需要每一分组的数据,如果数据到时不能到达,则这些数据就完全没用了;我们称这类应用为实时应用。另外一类应用总是会等待数据的到达;我们称其为“弹性”应用。我们现在分别地考虑这两个类的延迟需求。3.1.1.实时应用 这种实时应用的一个重要的类,“回放”应用,将是我们在后面的讨论中明确考虑的唯一实时应用。在一个回放应用中,原端取得一些信号

30、,将其分组然后将这些分组通过网络传输。网络不可避免的对这些传送分组引入了某种延迟变化。接收方将这些数据分组解开,然后试图忠实的还原这些信号。这是通过缓冲输入数据然后根据原发送时间的某个固定延迟偏移来还原信号;术语“回放点”是指原发送时间的固定延迟偏移时间点。任何在其回放点之前到达的数据都可以被用来重构这个信号;在回放点之后到达的数据对于重构实时数据来说根本没有了。 为了给延迟偏移选择一个合理的值,应用需要某种指定其分组可承受的最大延迟的“先验”特性。这种“先验”特性可能是网络提供的对延迟范围的一种量化服务承诺;也可能是通过观察已经到达分组而得到的延迟经验值;应用需要知道它期望的是何种延迟,但这

31、种期望值不需要在流的整个持续时间内都保持恒定。 一个回放应用的性能可由两种不同的尺度来衡量:反应时间和可信度。某些回放应用,特别是那些在链接两端包括交互的应用,如电话呼叫,对反应时间特别敏感;其它的回放应用,如传输电影或讲稿,则不需要。相似的,应用对丢包的可信度要求可以说有一个很大的范围。我们将考虑两种在某种程度上人为地分开的类:要求一个绝对的可靠回放的不可容忍的应用,以及能容忍一些丟包的可容忍的应用。我们希望大多数的音频和视频应用都是可容忍的,但我们也察觉到也有一些其它的应用如电路模拟是不可容忍的。 延迟以两种方式影响回放应用的性能。首先,由对未来分组延迟预测决定的延迟偏移值决定了应用的反应

32、时间。其次,单个分组延迟由于超过其延迟偏移值而降低回放的可信度;应用因此而可以改变延迟偏移值以回放后面的分组(这会引起失真),或者简单的将迟到分组丢弃(这会产生一个不完全的信号)。对迟到分组的两种不同处理方式导致了对不完全信号和失真信号之间的选择,而最优的选择将取决于具体的应用,但重要的一点是迟到分组确实降低了可信度。 不可容忍的应用必须使用一个固定的延迟偏移值,因为延迟偏移值的任何变化都将导致回放的某种失真。对一个给定分布的延迟,这个固定延迟偏移值要大于最大绝对延迟值,以避免分组迟到的可能性。这种应用只有在给定每个分组的完全可靠的最大延迟上限时才能恰当的设置其延迟偏移值值。我们称具有完全可靠

33、延迟上限的服务为“保证服务”,并且提议它为不可容忍的回放应用的合适服务模型。 相反,可容忍的应用不需要把他们的延迟偏移量设置得比最大绝对延迟更大,因为他们可以容忍某些迟到分组。而且,他们试图以最近实际的分组延迟经验值来改变他们的延迟偏移量以减少其反应时间,而不是使用一个单一的固定延迟偏移量。我们称按这种方式改变其延迟偏移量的应用为“自适应的”回放应用。 对于可容忍服务我们提议一个称为“可预测服务”的服务模型,该模型支持一个相对可靠的,但不是完全可靠的延迟限制。这个限制,相对保证服务的限制而言,不是根据其它流行为的最坏情况而假设。相反,这个限制可能是根据其它流行为的适当保守的预测而计算的。如果网

34、络出错,限制被突破,则应用性能可能受到影响,但根据这种限制花费较低的假设,用户会愿意容忍这种服务中断。而且由于大量可容忍应用是自适应的,我们认为这种可预测服务也提供“最大值最小化”服务,即它试图把过去的最大延迟最小化。这种服务并不试图最小化每一分组延迟,而是试图把其放入延迟分布中。 很明显,在其它条件都一样的情况下,应用都会选择绝对可靠限制而不是相对可靠限制。那我们要不要提供可预测限制呢?关键是要考虑效率;当服务需求从完全可靠降低到相当可靠限制时,相应增加了网络的可持续利用资源,因此可预测服务一般要比保证服务开销低。可预测服务类基于这样一种假设,就是稍微降低可容忍服务的性能,但整个效率却获得很

35、大的提高。 为了提供一个延迟限制,从原端过来的通信量在本质上应该是可被区分的,而且必须有某种接入控制算法来确保一个请求流在实际上获得(资源)提供。我们整个体系结构的一个基本要素就是通信量特征和接入控制对这些实时延迟限制服务都是必须的。因此我们假设应用数据的产生过程是它的一种本质属性,不受网络的影响。然而有很多音频和视频应用可以调整其编码模式,因而可以根据可用的网络服务来改变其数据产生过程。这种编码模式的改变是对可信度(指编码模式本身,而不是指回放过程)和流的带宽需求的折衷。这种“速率自适应的”回放应用有一个优点,就是它们不仅可以通过重设回放点,而且可以通过调整其通信模式来适用当前的网络条件。对

36、于速率自适应应用,用于服务承诺的通信量特征是不可变的。因此我们通过允许网络通报(或者通过丢弃分组的不明确的方式,或者明确地对分组进行控制)速率自适应应用改变其通信特征来增加限制模型。 3.1.2.弹性应用 尽管实时应用并不等待迟到数据的到来,弹性应用却总是等待数据的到来。这并不是指这些应用对延迟不作要求,相反的是分组延迟的较大变化将会极大的损害应用性能。而且,关键是应用立即使用达到数据,而不是将其为后面的某个时间缓冲起来,所以总是选择等待数据的输入而不是在没有数据时进行处理。由于分组一到达就可以立即使用,因此这些应用并不需要任何先验的服务特性来使其运行。一般来讲,对于给定的一个分组延迟分布,弹

37、性应用的性能似乎更依赖于平均延迟,而不是延迟分布的细节。可以考虑的几种弹性应用有:突发性交互(Telnet,X,NFS),交互式大批量传输(FTP),以及异步大批量传输(电子邮件,FAX)。这些弹性应用的延迟需求从突发性交互的严格要求到异步大批量传输的宽松要求,而交互式大批量传输介于两者之间。 弹性应用的一个合适的服务模型就是提供“尽可能的”或ASAP服务。(为了与过去的用法兼容,我们将使用术语尽力而为的服务来之ASAP服务。)我们还提议提供几个尽力而为的服务类以表现不同弹性应用的相关延迟敏感性。这种服务模型允许比交互式大批量传输应用具有更低延迟的突发交互式应用,而交互式大批量传输延迟相应的比

38、异步大批量传输延迟要低。相对于实时服务模型,使用这种服务的应用并不遵循接入控制。把应用分成可容忍回放应用、不可容忍回放应用和弹性应用的分类法既不精确,也不完备,只是用来对配置核心服务模型提供指导。相应的核心服务模型是根据它是否能够充分的满足应用的整体需求来判断的,而不是根据下层分类法来判断。特别地,并不是所有地实时应用都是回放应用;例如,你可以想象一个可视化应用,它只不过在分组到达时显示每个分组的编码图像。然而,非回放应用仍然可以使用保证或者可预测实时服务模型,尽管这些服务对它们的需求不是特别明确的讲究。相似的是,回放应用并不能被完全的分为容忍或者不容忍,而是更像一个整体;同时提供保证和可预测

39、服务允许应用能根据自己的需求就可信度、反应时间以及开销之间找到一个折衷。除了这种明显的不足外,我们希望这种分类法既能描叙现在的应用,也能描叙将来的应用,从而使我们的核心服务描叙能充分地满足所有应用的需求。3.2. 资源共享需求和服务模型 这是考虑服务质量承诺的最后一部分;这些承诺规定网络如何必须为单个流分配资源。这种资源分配通常使基于一个每一流的基础,既每一个流分别请求接入网络,然而并不提出任何流聚合时引起的策略问题。为了提出这些策略问题,我们现在讨论资源共享服务承诺。在前面我们集中于单个流的服务质量承诺,并把它当成唯一的利益量。在这里,我们假定资源共享的基本利益量时单个链路上的聚合带宽。因此

40、,服务模型的这个组件,被称为“链路共享”,提出了如何根据某些指定部分的集合而在不同集合性实体中共享一个链路的汇聚带宽。有几个例子通常被用来解释在集合性实体之间的链路共享需求。 多实体链路共享可以被几个组织、政府部门或者其它的实体一起购买和使用的链路。他们可能希望在链路未超载时能确保以一种控制的方式共享,也许是按照各个实体的投资份额来进行的。同时,他们可能希望当链路未载时任何一个实体都可以使用所有的空闲带宽。 多协议链路共享在一个多协议Internet中,可能要求防止一个协议族(DECnet, IP, IPX,OSI, SNA, etc.)使链路超载,而其它的协议族被排除在外。由于不同协议族可能

41、有不同的拥塞检测和响应方法,而且其中某些方法可能比其它方法更具有“侵略性”,因此这一点是重要的。这可能导致一种情形,就是在拥塞时一个协议比另一协议回退得快,因得不到带宽而结束。为了纠正这一点,可能有需要在路由器中进行明确的控制。另外,人们可能希望这种控制仅在超载时才使用,虽然一个空闲的链路可以按任何比例而被使用。 多服务共享在一个协议族如IP中,管理者可能希望对分配给多种服务类的带宽部分进行限制。例如,管理者可能希望对某些链路部分的实时通信量数量进行限制,以避免抢占弹性通信量如FTP的链路部分。 在一般条件下,链路共享服务模型根据某些指定的比例来共享汇聚带宽。我们可以将这个链路共享服务模型扩展

42、为一个分级版。例如,可以将一条链路分给多个组织使用,每条链路都分给多个协议使用,每条链路都被分给多个服务使用。在这里共享由一个树来定义,该树的每一个叶子节点就是一链路部分。 按比例分配访问的即时链路共享的一个理想化可改变模型是可改变共享模型(在DKS89中介绍,DKS89中作了进一步的研究,而且已经被通用化为层次情况),在这个模型中每一时刻有效带宽都被活动实体按指定的比例来共享资源。可改变模型展示了期望的策略行为,但是,这当然只是不现实的理想化。因此我们提议实际的服务模型应尽可能的接近这个理想可改变模型的带宽共享。要求分组按指定顺序发送一匹配那些可改变模型是不必要的,因此我们假定单个流的所有没

43、一分组延迟需求细节都是通过服务质量承诺提出,而且,传输的链路共享服务的满意度可能将很少的依赖可改变链路共享模型,对使用这个模型的调度的微小偏离将不在区分。 我们前面讨论了接入控制,这种控制是用来确保实时服务承诺得以达成。相似的,接入控制对确保链路共享承诺得以达成也是必须的。对每一个实体,接入控制必须保留累计的保证,而且预测通信量一避免其超过指定的链路共享比例。3.3. 分组丢弃 到目前为止,我们一直简单地假设一个流内的所有分组都同样的重要。但是,在很多音频和视频流中,某些分组比其它分组更有价值。因此我们提议给服务模型增加一个“抢占式”分组服务,由此可以将一个流中的某些分组标记为抢先的。当网络对

44、达到它的量化服务承诺有危险时,它可以对某些分组进行“抢占式选择”,然后将其丢弃(而不只是将其延迟,因为那将导致无序的问题)。通过丢弃这些分组,路由器可以减少其它分组的延迟。 而且可以定义一个不遵从接入控制的分组类。在上面描叙的情形中仅在网络量化服务承诺有被损害的危险时才把分组丢弃,而期望是优先的分组几乎总是被传送,因此应将它们包括在接入控制所描叙的通信量中。但是我们可以将抢占性扩展到极端的情形,既“可牺牲的”分组(术语可牺牲的被用来表示抢占性的一种极端程度),希望很多这种可牺牲的分组可以不被传送。可以将可牺牲的分组排除在接入控制所描叙的通信量中;例如,从接入控制的角度来看,这些分组度不是流的一

45、部分,因此对传送它们没有承诺。 3.4. 使用反馈服务中另外一个重要的问题是使用反馈模型,也被称为“计费”,用来防止滥用网络资源。上面描叙的链路共享服务可以用来提供对使用的强制管理限制。然而,网络访问的一个更自由的市场模型将需要用户在预留他们的网络资源时的反压力。这是一个充满争议的问题,我们不准备在这个时候对其多作评论。3.5. 预留模型 “预留模型”描叙了应用是如何与QoS层对话的。这个简单模型就是在应用请求一个特定的QoS时网络或者接受或者拒绝它。通常情况下都比这更加复杂。很多应用将可以从一个QoS级别范围内,或者更一般地说,从一个流规约的多维空间的某个区域内的任何地方获得可接受的服务。

46、例如,网络可能同意一个更低的资源级别而不是简单的拒绝请求,然后通知应用获得了哪一种QoS承诺。一个更复杂的例子就是“双向”预留模型,在这个模式中,一个“提供的”流规约由每一个发送者Si通过多播分布树广播到所有的接收者Sj。通路上的每一个路由器记录这些值并且有可能调整这些值以反映有效的容量。接收者获得这些提供,产生相应的“请求”流规约,然后沿着相同的路由器把它们回播给发送者。在每一个部分点上,都必须协调提供和请求流规约以创建一个预留,而且还传递一个已修改的合适的请求流规约。这种双向模式允许扩充的特性如在路径上每一跳的延迟分布Tenet90, ST2-90。进一步的工作是必须的,以定义预留模型中需

47、要的有相应复杂性级别的一般性数量。4. 通信量控制机制 我们首先简单介绍可能的通信量控制机制,然后在4.2节中采用了这些机制的一个子集以支持我们所提议的各种服务。 4.1. 基本功能 在分组转发路径中的每一个路由器都确实有一个可以使用的有限的行为集。给定一个特定的分组,路由器必须为其选择一个路由;另外路由器可以将其转发或者丢弃,还可能由于其它等待发送的分组而将其重新排序。路由器也可能保留这个分组,即使这时链路是空闲的。这些都是我们必须改变的要求行为的构件。 4.1.1.分组调度 分组调度的基本功能是对输出队列进行重排序。人们已写了很多关于管理输出队列的可能方式及由此产生的行为的论文。可能最简单

48、的方法是一个分级模式,在这个模式中分组按优先级排序,高优先级的分组总是先被转发。这使得某些分组比其它的分组具有绝对的优先权;如果高优先级分组足够多的话,低优先级类的分组可能被完全阻止发送。 一个可供选择的调度模式是循环或某些给予不同分组类访问链路部分的变量。有一个被称为加权公平队列或WFQ的变量,以用来演示如何将一条链路的所有带宽分成特定的部分。 还有更复杂的队列管理模式,其中大多数都包括观察单个分组服务目标,如传输期限,然后根据这些准则来对分组进行排序。 4.1.2.分组丢弃 对分组丢弃的控制和对它们的调度一样重要。最明显的是,路由器在它的缓冲区完全满了时必须丢弃分组。然而,事实上这并不决定

49、哪个分组将被丢弃。如果简单的将到达分组丢弃,则可能产生不想要的行为。 在目前的Internet环境中,TCP运作于提供尽力而为服务的IP之上,分组丢弃被TCP认为是一个拥塞信号而减少它在网络上的负载。选择丢弃一个分组就是选择一个原端来扼杀。不需要考虑任何特定的算法,这个简单的关系就意味着路由器必须实现某种特定的丢弃控制以改善拥塞控制。 在实时服务环境中,丟包与预期服务质量完成的关系更加直接。如果建立了一个队列,丢弃一个分组就可以降低该队列中后面的所有分组的延迟。丢弃一个可以使多个成功。实现者的问题是决定服务目标何时会受到损害。他们不能把队列长度作为分组在队列中时间长短的衡量。如果是在一个分级模

50、式中,低优先级的分组可能被不确定的先丢弃,尽管一个短队列中可能有更旧的分组存在。虽然可以用实际的时间标志来测量等待时间,但复杂度将是不可接受的。 某些简单的丟包模式如把所有缓冲池合并成一个全局单一的缓冲池,如果该池已满,则丢弃到达分组,这会使WFQ调度模式失败。因此,丟包和调度必须合并起来。 4.1.3.分组分类 上述关于调度和丟包的讨论都假设分组已被分成某些可用一种特定方法处理的流或分组序列。这种处理方法的基础是分类本身。现在的路由器根据目标地址来选择路由。对于分组必须得到的服务类的选择仅有目标地址是不够的;还需要更多的信息。 一种方法是放弃IP数据报模型,而采取虚电路模型,在该模型中一条电

51、路用特定服务属性来设置,而分组则携带电路标识符。这是ATM的方法和协议,如ST-II ST2-90。另外一个模型,则对IP每这么多敌意,它允许分类器查看分组的更多域,如原端地址、协议号以及端口域。因此,视频流可以通过一个UDP头中特定的一种端口域而被识别,或者一个特定的流可以通过查看其原端和目的端的端口号来识别。甚至有可能查看分组的更深层次,如在测试应用层的域来选择分层编码视频流的一个子集。 分类器实现的问题是复杂性和处理开销。目前的经验认为对有效算法的仔细实现可导致IP分组的有效分类。这个结果是非常重要的,因为它允许我们给一个已有的应用,如基于已有IP头的Telnet增加QoS支持, 减少分

52、类开销的一个方法是在Internet层分组头中提供一个“流标识符”域。这个流标识符可以是一个能够被储存的句柄,并用其对分组进行快速分类。关于这个概念有很多种不同的说法,对其工程化时要求选择一个最佳的设计。 4.1.4.接入控制正如我们在介绍中所说的,实时服务依赖于路由器状态的设置以及对确定分组类作出的承诺。为了确保完成这些承诺,要求原端有明确的请求,以便在资源无效时拒绝该请求。对资源有效性的决定被称为接入控制。接入控制要求路由器能了解对它当前所有资源的需求。传统提议的方法多是记住过去请求的参数,然后基于每个服务的最坏可能限制来作计算。最近的一个提议,看来能提供更好的链路利用率,这是通过使路由器测量现有分组流的实际使用情况,然后用这些测量所得的信息作为允许新流的根据JCSZ92。这种方法会导致更高的超载风险,但可证明在利用带宽时要有效得多。注意对接入控制的需求是全局服务模型的一部分,而运行在每一个路由器上的具体算法却是局部

温馨提示

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

评论

0/150

提交评论