服务质量配置 目录 目 录 第1章 QoS配置............................................................................................................................................................. 1 1.1 QoS的概念......................................................................................................................................................... 1 1.1.1 QoS的三种服务模型........................................................................................................................... 1 1.1.2 QoS的各种队列算法........................................................................................................................... 2 1.1.3 QoS的信令............................................................................................................................................. 4 1.1.4 QoS链路效率机制................................................................................................................................5 1.2 QoS队列配置任务列表................................................................................................................................... 5 1.3 QoS队列配置任务............................................................................................................................................ 5 1.3.1 配置加权公平排队(WFQ)............................................................................................................. 5 1.3.2 配置接口上所使用的策略映像(CBWFQ) ........................................................................................ 5 1.3.3 配置加权早期随机检测(WRED).................................................................................................. 6 1.3.4 配置自定义排队(CQ).................................................................................................................... 6 1.3.5 配置优先权排队(PQ)........................................................................................................................... 7 1.3.6 QoS显示................................................................................................................................................. 8 1.4 QoS配置方案..................................................................................................................................................... 9 1.5 QoS配置示例................................................................................................................................................... 10 第2章 CRTP配置......................................................................................................................................................... 11 2.1 CRTP概述......................................................................................................................................................... 11 2.2 CRTP配置任务列表....................................................................................................................................... 12 2.3 CRTP配置任务................................................................................................................................................ 12 2.3.1 在链路上激活CRTP.......................................................................................................................... 12 2.3.2 改变CRTP最大连接数.................................................................................................................... 12 2.3.3 显示CRTP压缩信息......................................................................................................................... 12 2.3.4 CRTP调试............................................................................................................................................. 13 2.4 配置示例.......................................................................................................................................................... 13 第3章 CTCP配置......................................................................................................................................................... 14 3.1 CTCP概述......................................................................................................................................................... 14 3.2 CTCP配置任务列表....................................................................................................................................... 14 3.3 CTCP配置任务................................................................................................................................................ 14 3.3.1 在链路上激活CTCP.......................................................................................................................... 14 3.3.2 改变CTCP最大连接数.................................................................................................................... 15 3.3.3 显示CTCP压缩信息......................................................................................................................... 15 3.3.4 CTCP调试............................................................................................................................................. 15 3.4 配置示例.......................................................................................................................................................... 15 第4章 DLC配置........................................................................................................................................................... 16 4.1 DLC概述........................................................................................................................................................... 16 - I - 目录 4.2 DLC配置........................................................................................................................................................... 16 4.3 配置举例.......................................................................................................................................................... 16 第5章 CAR配置........................................................................................................................................................... 18 5.1 CAR概述........................................................................................................................................................... 18 5.2 CAR配置........................................................................................................................................................... 18 5.2.1 配置速率限制..................................................................................................................................... 18 5.2.2 显示速率限制信息............................................................................................................................ 18 5.3 配置举例.......................................................................................................................................................... 18 - II - 09-服务质量配置 第1章 QoS配置 如果您关心如何充分使用您的线路带宽,以及如何更有效的利用您的网络资源,那么服 务质量的配置将可能满足您的需求。 本文阐述什么是服务质量(Quality of Service,简写为QoS),以及使服务质量得到具体 体现的服务模型。另外介绍QoS的各种排队算法。有关配置可参阅QoS配置。 1.1 QoS的概念 QoS(服务质量) 是指一个网络能够利用各种各样的基础技术向选定的网络通信提供更好 的服务的能力。这些基础技术包括:帧中继(Frame Relay)、异步传输模式(Asynchronous Transfer Mode,简写为ATM)、以太网和802.1网络,以及IP-路由网络。为了保证在这 些网络上的QoS,在路由器中实现了排队、时序安排以及QoS信令技术等功能。特别是, 通过采用支持专用带宽和避免并且管理网络拥塞情况等技术,本公司路由器可提供更好 的和更可预测的网络服务。 1.1.1 QoS的三种服务模型 服务模型描述了一组端对端的QoS能力,即网络从一端到另外一端传送特殊网络通信所 要求的服务的能力。QoS软件支持三种类型的服务模型:尽力而为的、集成的以及区分 式服务。 1. 尽力而为服务(Best-Effort Service) 尽力而为服务是一种单一的服务模型。在这种服务模型中,应用能够在任何必要的时候 发送任意数量的数据,而不需要申请许可或者事先通知网络。对于尽力而为服务来说, 如果条件允许的话,网络就能够传输数据,而不需要在可靠性、延时范围或者吞吐量方 面的保证。实现尽力而为服务的路由器QoS功能是先入先出(first in, first out,简写为 FIFO)排队。 2. 集成服务(Integrated Service) 集成服务是一种复合的服务模型,它能够适应多种QoS需求。在这种模型中,应用在发 送数据以前通过QoS信令向网络申请一种特殊类型的服务。这个请求主要是为了网络通 知该应用的通信的概况,并且申请某种特殊类型的服务,这种服务可以满足它的带宽和 延时需求。只有从网络得到确认信息以后,这个应用才能够发送数据。并且,它所发送 的数据必须符合它先前所描述的通信概况。 根据来自应用和可用网络资源的信息,网络能够完成准入控制。通过维持每个流的状态, 然后基于不同的流进行智能化排队的操作,只要通信量保持在请求说明的范围之内,网 络就可以实现该应用的QoS需求。 - 1 - 09-服务质量配置 路由器软件的QoS通过使用资源保留协议(Resource Reservation Protocol,简写为 RSVP)提供可控制负载服务(Controlled Load Service)和保障速率服务(Guaranteed Rate Service)的功能。可控制负载服务即使在网络拥塞期间,也允许应用保持低延时和 高吞吐量的业务。为了实现这个目的,路由器QoS提供了加权公平排队(Weighted Fair Queuing,简写为WFQ)。 3. 区分式服务(Differentiated Service) 区分式服务与集成服务模型不同的是,在发送数据以前,使用区分式服务的应用不需要 明确地给路由器发送信号。 对于区分式服务来说,网络如果想要传送的是一种特殊的服务,就要在每一个数据包中 指定相应的QoS标记。这种指定能够以多种不同的方式体现,例如,在IP数据包中使用 IP优先权位设置。路由器使用这个QoS规定来进行分类,并且完成智能化排队的任务。 路由器QoS提供的加权随机早期检测(Weighted Random Early Detection,简写为 WRED),自定义排队(Custom Queueing, 简写为CQ)以及优先权排队(Priority Queueing, 简写为PQ)可用于发送区分式服务。 1.1.2 QoS的各种队列算法 QoS的各种排队算法是实现QoS的重要保证。本公司路由器中实现了带宽分配的加权公 平排队(Weighted Fair Queueing, 简写为WFQ),自定义排队(Custom Queueing, 简写 为CQ),优先权排队(Priority Queueing, 简写为PQ);实现拥塞控制的加权早期随机检测 (Weighted Random Early Detection, 简写为WRED); 以及最简单的先入先出算法 (FIFO)。 1. 加权公平排队(Weighted Fair Queueing) WFQ是一个自动的时序安排方法,它对所有的网络通信都提供了公平的带宽分配方案。 WFQ把优先权或者权重应用到确定的通信上以把通信划分成会话,并且决定每一个会话 相对于其他的会话来说可拥有多少带宽。WFQ是基于数据流的算法,它能够把高优先级 通信调度到队列的前端来减少响应时间,同时也能够在高带宽数据流中公平地分享剩余 的带宽。换句话说,WFQ为数据量少的通信(例如Telnet对话)提供比数据量大的通信 (例如FTP对话)更高的优先权。WFQ为并发的文件传输提供链接容量的平衡使用; 也就是说,当多个文件传输任务同时进行的时候,为这些数据传输任务提供同等的带宽。 WFQ克服了FIFO排队方式的严重局限性。当FIFO排队方式生效的时候,通信根据抵 达接口的顺序发送出去,而与带宽的耗费或者相关的延时无关。其结果是,文件传输和 其他数据量较大的网络应用常常会耗费几乎所有可用的带宽,从而剥夺其他通信的带宽。 WFQ动态地把通信划分成组成一个个的会话的消息,以便保证带宽在单个的会话之间公 平分享,保证数据量少的通信能够以一种及时的方式进行传输。 基于数据包报头的编址,WFQ可以把通信划分成不同的数据流。由于大部分通信都是IP 数据。所以基于IP头部的各个字段(源和目的地址,源和目的端口,协议类型以及TOS) 对数据包进行分类。 在进行传输以前,WFQ把各种会话的数据包放置在公平排队中。数据包从这些公平排队 中移走的顺序取决于每一个抵达数据包的最后一位所表示的传送虚拟时间(finish number)。 - 2 - 09-服务质量配置 在绝大多数所配置的运行速率为2.048Mbps或者更低的串行接口上,WFQ是作为默认 的排队模式来使用的。 2. 具体配置详见WFQ配置 普通的加权公平排队只是自动识别流,并不能根据需要为某些特殊的流提供专门的服务。 所以本公司路由器提供基于类型的加权公平排队(CBWFQ),这种算法是对普通的加权 公平排队算法的加强。它能根据用户定义识别出某类流,并为该条流分配一定的权重。 具体配置参见“CBWFQ配置”。 3. 加权早期随机检测(Weighted Random Early Detection) 随机早期检测(Random Early Detection,RED)技术是一种常用的避免拥塞机制。一旦 配置上RED后,当路由器丢弃信息包时,便可利用RED进行控制。如果你不配置加权 随机早期检测(Weighted Random EarlyDetection,WRED),路由器将使用一种叫做尾 部丢弃(tail drop)的粗糙的默认信息包丢弃技术。(加权早期随机检测(WRED)并不为专 门的流保证其所占带宽比例) 尾部丢弃同等对待所有的通信,不对服务等级进行区分。在发生拥塞时,发送队列将会 堆积一定量的包。当输出队列排满时,信息包将被丢弃,直到拥塞解决、输出队列不再 爆满为止。而当RED用来解决路由器上的拥塞时,能够避免该问题的全球化 (globalization)。全球同步(global synchronization)发生在拥塞峰值时,许多采用TCP 协议的主机降低它们的传送速率来响应撤销信息包,然后在拥塞减少后,再次提高它们 的传送速率,而这段时间转送链路未能完全被利用。 RED技术的基础是,假定大多数应用对通信中的丢失很敏感,当它们中的某些数据包被 撤销时,将会暂时降低传输速率。TCP就是准确地——甚至是很健全地——对丢弃通信 量作出反应,即通过放慢它的传输通信量,来有效地保证RED的丢弃通信量技术像拥塞 避免信令技术一样有效运行。 RED的目标是控制平均队列长度,来指示末端主机,在需要时暂时降低它们的信息包传 送速度来实现的。RED通过在高拥塞期到来之前对信息包进行随机丢弃,来告诉信息包 源降低它的传输速率。假定信息源使用了TCP,它将降低它的发送速率,直到所有信息 包到达目的地并指示拥塞被清除为止。你可通过使用RED来调用TCP,以降低信息包的 传送速率。TCP不仅可以暂停发送,而且还可以迅速重新启动,来使传输速率适应网络 可支持的速率。 当平均队列长度已经超过最小阈值,RED开始丢弃信息包。信息包丢弃的速率随着平均 队列大小的提高而线性增加,直到平均队列的大小达到最小阈值,信息包丢弃停止。当 平均队列超过最大阈值时,所有信息包将被丢弃。最小阈值要设得足够高,以达到链路 的最大利用率。如果最小阈值太低,信息包将有不必要的丢弃,传送链路将不会被充分 利用。最大、最小阈值间的间距要设置得足够大,以避免全球同步。如果间距太小,许 多信息包会被立刻丢弃,引发全球同步。 具体配置详见WRED配置。 - 3 - 09-服务质量配置 4. 自定义排队(Custom Queueing) 当自定义排队在某个接口上生效的时候,系统将会为这个接口维护17个输出队列。你可 以指定队列1到16。与每一个输出队列相关的是可配置字节总数以及数据包的类型。可 配置字节总数指定在系统移动到下一个队列以前,系统应当从当前的队列中发送多少字 节的数据。 编号为0的队列是一个系统队列;在任何编号为1到16之间的队列得到处理以前,编号 为0的队列将先被清空。系统把优先权级别高的数据包,例如保持活动数据包以及信令 数据包,安排到这个队列。其他的通信不能够使用这个队列。 对于编号为1到16的队列来说,系统相继地在这些队列之间循环,在每次循环中都从当 前队列中取出配置好的字节总数,并且在移动到下一个队列以前把这些数据包发送出去。 当处理某个队列的时候,系统就会一直发送数据包,直到发送的字节总数已经超出这个 队列的字节总数或者这个队列已经清空为止。一个队列所使用的带宽只能够根据字节总 数来间接指定。与PQ相似的是,CQ是静态配置的,因此不能够自动地适应不断变化的 网络情况。 具体配置详见CQ配置。 5. 优先权排队(Priority Queueing) 优先权排队可以配置四种通信优先级(high,middle,normal,low)。在数据传输期间,优先权 排队给优先权级别高的队列提供比优先权级别低的队列绝对优惠的待遇;只要给予了最 高的优先权级别,重要的通信总会比重要性低的通信提前得到服务。 根据用户所定义的标准,对数据包进行分类,然后把它们放置在四种输出队列的其中一 种队列中.未定义优先权级别的数据包将放置在一般队列中。当系统将把数据包发送出一 个接口的时候,系统就按照优先权级别由高向低开始扫描这个接口上的优先权队列。先 扫描高优先权级别的队列,然后扫描中优先权级别的队列,以此类推。然后,选中位于 最高优先权级别队列最前面的数据包,并传输。每当要发送一个数据包的时候,就重复 这个过程。 具体配置详见PQ配置。 1.1.3 QoS的信令 本公司路由器QoS的信令功能为终端站点或者网络节点提供了一个方法,使得它可以向 它的其它节点发送信号以申请某种通信的特殊处理。QoS的信令功能能帮助QoS调度更 好的进行,并为整个网络配置成功的、全面的端对端QoS服务。QoS的信令功能利用了 IP协议。无论是带内(IP优先权)还是带外(RSVP协议)的信令功能都表明,任何一 种特殊的通信分类都可望得到某种特殊的QoS服务。IP优先权和RSVP协议一起,为端 对端的QoS信令功能提供了一个坚实的联合:IP优先权信号用于区分式的QoS,RSVP 用于有保障的QoS。 如果需要了解更加全面的信息,请参见RSVP相关文档。 - 4 - 09-服务质量配置 1.1.4 QoS链路效率机制 为了避免有效带宽的不必要浪费,本公司路由器RTP报头压缩(CRTP)。具体内容参见 CRTP相关文档。 1.2 QoS队列配置任务列表 要进行QoS配置你需要配置接口上的队列算法,QoS信令,QoS链路效率机制。后两 种是可选的,第一类配置在每个物理接口上都有默认值,可以根据实际情况进行改变。 null 配置加权公平排队(WFQ) null 配置接口上所使用的策略映像(CBWFQ) null 配置加权早期随机检测(WRED) null 配置自定义排队(CQ) null 配置优先权排队(PQ) null 监控QoS 1.3 QoS队列配置任务 1.3.1 配置加权公平排队(WFQ) 如果需要在一个接口上配置公平排队,在指定了这个接口以后,可以在接口配置态中使 用以下命令: 命令 目的 fair-queue 在一个接口上使用公平排队策略。 注意: 在运行速率为2.048Mbps或者更低的接口上,WFQ是默认的排队模式。WFQ不适用于封装 LAPB或X.25的接口。 1.3.2 配置接口上所使用的策略映像(CBWFQ) 在接口上配置某个策略映像后就可使CBWFQ在该接口生效。如果需要在一个接口上配 置某个策略映像,在指定了这个接口以后,可以在接口配置态中使用以下命令: 命令 目的 service-policy policy-name 让接口使用某个policy-map。 注意: - 5 - 09-服务质量配置 该命令只在配置了WFQ 算法的接口有效。 1. 配置策略映像 配置策略映像以及其包含的类型映像可以指定一组不同类型的流。当某个接口使用该策 略映像时,可以根据指定类型进行一定的服务质量保障。 配置一个策略映像首先需要在全局配置态使用以下命令进入策略映像配置态: 命令 目的 policy-map policy-name 配置一个策略映像并进入策略映像配置态。 进入策略映像配置态后,可以配置当前策略映像所用的类型映像的名字,所占带宽和队 列上限。要进行这些配置,可以在策略映像配置态中使用以下命令: 命令 目的 class class-name bandwidth bandwidth(kbps) [queue-limit packet-number] 在当前策略映像中配置一个类型映像的所占带宽 和队列上限。 2. 配置类型映像 配置类型映像可以定义某种类型的流。当某个接口使用的策略映像包含该类型映像时, 可以根据指定类型进行一定的服务质量保障。 配置类型映像可以在全局配置态使用以下命令: 命令 目的 class-map class-name match protocol protocol-type 配置一个根据协议类型分类的类型映象。 class-map class-name match interface interface-type interface-number 配置一个根据接口分类的类型映象。 class-map class-name match access-group list-name 配置一个根据访问列表分类的类型映象。 1.3.3 配置加权早期随机检测(WRED) 如果需要在一个接口上配置加权早期随机检测,在指定了这个接口以后,可以在接口配 置态中使用以下命令: 命令 目的 random-detect 在一个接口上使用加权早期随机检测。 1.3.4 配置自定义排队(CQ) 如果需要在一个接口上配置自定义排队,在指定了这个接口以后,可以在接口配置态中 使用以下命令: - 6 - 09-服务质量配置 命令 目的 custom-queue-list list-number 在该接口上使用CQ算法,参数list-number为所 采用的自定义列表号。范围是1-16,无默认值。 配置自定义列表 自定义列表可以定义相应队列的分类方法,发送字节数和队列上限。当在某接口上使用 该自定义列表时,即可根据该列表进行调度。 配置自定义列表队列上限和发送字节数,可以在全局配置态使用以下命令: 命令 目的 queue-list list-number queue queue-number limit limit-number 指定每一个自定义队列的上限。参数 limit-number指定了能够排列在队列中的数据 包的数量。范围是0到32,767,默认为20。 queue-list list-number queue queue-number byte-count byte-count-number 指定每个队列发送字节。参数 byte-count-number指定在某个特定的循环 中,系统能够从一个给定的队列传输的最小字 节数,默认为1500。 配置自定义列表的分类方式,可以在全局配置态使用以下命令: 命令 目的 queue-list list-number protocol protocol-type queue-number [keyword key-value] 根据协议类型建立自定义队列。 queue-list list-number interface interface-type interface-number queue-number 根据从某个给定接口输入的数据包,建立自定 义队列。 queue-list list-number default queue-number 为那些不符合自定义列表中的任何一条规则 的数据包,分配一个队列编号,默认为1。 1.3.5 配置优先权排队(PQ) 如果需要在一个接口上配置优先权排队,在指定了这个接口以后,可以在接口配置态中 使用以下命令: 命令 目的 priority-group list-number 在该接口上使用PQ算法,参数list-number为所 采用的自定义列表号。范围是1-16,无默认值。 配置优先级列表 优先级列表可以定义相应队列的分类方法和队列上限。当在某接口上使用该优先级列表 时,即可根据该列表进行调度。 - 7 - 09-服务质量配置 配置优先级列表队列上限,可以在全局配置态使用以下命令: 命令 目的 priority-list list-number queue-limit high-limit middle-limit normal-limit low-limit 指定每一个优先权队列的队列上限,默认值高 20,中40,普通60,低80。 1.3.6 QoS显示 1. 显示接口队列情况paradise 要显示接口的队列的状况,可以使用以下命令: 命令 说明 show queue interface-type interface-number 显示该接口上的队列信息。 2. 显示自定义列表的配置 要显示自定义列表的配置的状况,可以使用以下命令: 命令 说明 show queueing custom 显示自定义列表的配置。 3. 显示优先级列表的配置 要显示优先级列表的配置的状况,可以使用以下命令: 命令 说明 show queueing priority 显示优先级列表的配置。 4. 显示类型映像的配置 要显示类型映像的配置,可以使用以下命令: 命令 说明 show class-map [class-name] 显示类型映像的配置。 5. 显示策略映像的配置 要显示策略映像的配置,可以使用以下命令: 命令 说明 show policy-map [policy-name] 显示策略映像的配置。 - 8 - 09-服务质量配置 1.4 QoS配置方案 如果用户有四种类型的应用A,B,C和D,期望的带宽比例为10/20/40/30,包长为 1428/582/371/1525。由于每次当这个队列接收服务时,系统会发送的字节数为包长的整 数倍。因此配置字节总数时应考虑包的长度,而不是简单的设为100/200/400/300,这样 配的话,带宽分配实际为1428/582/371/1525。要实现理想效果可按以下步骤进行: (1) 对于每一个队列,都用你想分配给这个队列的带宽百分数除以数据包的大小(以字 节为单位)。在这个示例中比率应当是:10/1428,20/582,40/371,30/1525或者 0.007,0.03436,0.10782,0.01967。 (2) 使用最小的数字来把上面所列出的四个数字进行归一化处理:1,4.9,15.4,2.8 这个结果是必须被发送的数据包数量的比率。 (3) 任何一个比率值的尾数都意味着系统将要发送一个额外的数据包。把比率值进行只 入不舍操作,所得到的整数就是实际所要发送的数据包的总数。在这个示例中,实 际的所发送的数据包的比率将是1:5:16:3。 (4) 用每一种协议的数据包总数乘上相应的数据包大小,可以把数据包数目比率转换成 字节总数。在这个示例中,所发送的数据包总数是一个1428字节的数据包、5个 582字节的数据包,16个371字节的数据包以及3个1525字节的数据包;即分 别从每一个队列发送1428、2910、5936和4575字节。这就是你将在你的自定义 队列配置中指定的字节总数。 (5) 为了确定这个比率所代表的带宽分配,首先要确定当对三个队列都提供一次服务的 时候,系统所传输的字节总数:(1×1428) + (5×582) + (16×371)+(3×1525) = 1428+2910+5936+4575 = 14849。然后确定每一个队列所发送的字节总数的百分 比:1428/14849,2910/14849,5936/14849,4575 /14849= 9.6%,19.5%,39.8% 和30.8%。正如你所看见的一样,这三个百分比很接近我们所期望的比率 10/20/40/30。 (6) 如果实际的带宽比率与所希望的带宽比率不太接近,则可以用原来的比率乘上最佳 的值,这样能够使实际的带宽比率尽量地靠近这三个整数。注意,你所使用的乘数 不必是一个整数。 具体配置如下:(假定四种应用分别为udp端口100,200,400,700;使用的是一号用户列 表) (1) 首先为这四种应用分配相应的队列(2,3,4,5) queue-list 1 p ip 2 udp 100 queue-list 1 p ip 3 udp 200 queue-list 1 p ip 4 udp 400 queue-list 1 p ip 5 udp 700 (2) 制定每个队列的发送字节数 queue-list 1 queue 2 byte-count 1428 queue-list 1 queue 3 byte-count 2910 queue-list 1 queue 4 byte-count 5936 queue-list 1 queue 5 byte-count 4575 - 9 - 09-服务质量配置 (3) 将该用户列表配置到端口上 interface s1/0 custom-queue-list 1 1.5 QoS配置示例 1. 配置自定义排队(CQ)示例 把匹配IP访问列表aaa的通信分配给队列编号1: queue-list 1 protocol ip 1 list aaa 这个示例把Telnet数据包分配给队列编号2: queue-list 4 protocols ip 2 tcp telenet 把UDP域名服务(Domain Name Service)数据包分配给队列编号3: queue-list 4 protocol ip 3 udp dns 把大于1000字节的数据包分配给队列编号6: queue-list 5 protocol ip 6 gt 1000 2. 配置优先权排队(PQ)示例 把队列上限分别设为15 50 70 100。 prority-list 4 queue-limit 15 50 70 100 配置优先级列表的分类方式,可以在全局配置态使用以下命令: 命令 目的 priority-list list-number protocol protocol-type {high | medium | normal | low} [keyword key-value] 根据协议的类型来建立排队优先级。 priority-list list-number interface interface-type interface-number {high | medium | normal | low} 为进入某个给定接口的数据包建立排队优先 级。 priority-list list-number default queue-number 为那些不符合优先级列表内的任何规则的数 据包,分配一个优先权队列,默认为normal。 - 10 - 09-服务质量配置 第2章 CRTP配置 2.1 CRTP概述 本章主要介绍如何在使用PPP的串行链路上配置RTP头部压缩协议,以下均称CRTP。 命令详解请参见“RTP头部压缩(CRTP)命令”。 目前我们的CRTP实现支持PPP、Frame Relay、HDLC封装的串行链路,我们在以下 的情况下需要配置CRTP: null 低速串行链路上 null 需要节约带宽的串行链路上 在以上的情况下配置CRTP是非常有效的手段,通过如下的图例可以看出: 图 2-1 配置CRTP示意图 以最好的情况来看,不带选项的IP头部为20字节,以及最小长度的RTP头部12字节, 加上8字节的UDP头部,共为40字节;如果传送的RTP净荷为G.729a,每次带两个 帧,则净荷部分为20字节;加上PPP链路层封装4字节,有效净荷仅占31.25%。 配置CRTP后,再忽略UDP的校验和,每个压缩报文中可以将IP/UDP/RTP的头部压缩 到共2字节,加上PPP封装4字节,有效净荷占76.92%,相差巨大。 注: 不应在2M以上带宽的链路上使用。 - 11 - 09-服务质量配置 2.2 CRTP配置任务列表 null 在链路上激活CRTP null 改变CRTP最大连接数 null 显示CRTP压缩信息 null CRTP调试 注: 必须在串行链路的两端同时配置CRTP否则CRTP不起作用。 2.3 CRTP配置任务 2.3.1 在链路上激活CRTP 在封装PPP的链路层上激活CRTP使用以下的命令:(在接口模式下配置,链路两端均 需配置) 命令 目的 ip rtp header-compression [{ cisco-format | iphc-format | passive}] 激活CRTP。 可选参数中cisco-format为缺省值,表示CRTP如果应用在PPP链路上,IPCP选项采 用cisco的报文格式;passive表示只有在收到对端发送的CRTP报文后才开始头部压缩, 如果应用在PPP链路上,IPCP选项同样采用cisco的报文格式;iphc-format表示如果 CRTP应用在PPP链路上,IPCP选项采用RFC2509的报文格式。 2.3.2 改变CRTP最大连接数 命令 目的 ip rtp compression-connections number 配置本地CRTP最大连接数。 以上命令需要在接口模式下配置。CRTP对每对特定的传输地址在本地保留一个结构存储 连接信息,如果连接数设定得太少,这些结构就无法对同时进行的多路RTP会话提供一 一对应,影响压缩效果。 2.3.3 显示CRTP压缩信息 命令 目的 show ip rtp header-compression [type number] [detail] 显示CRTP信息。 以上命令需要在全局模式下配置。 - 12 - 09-服务质量配置 2.3.4 CRTP调试 命令 目的 debug ip rtp header-compression 显示收发的CRTP报文信息。 以上的命令需要在全局模式下使用。 2.4 配置示例 以下的例子示范了在PPP封装的串行链路上配置CRTP命令的方法: Router_config#interface serial 1/2 Router_config_s1/2#ip rtp header-compression Router_config_s1/2#ip rtp compression-connections 25 Router_config_s1/2#encapsulation ppp Router_config_s1/2# - 13 - 09-服务质量配置 第3章 CTCP配置 3.1 CTCP概述 本章主要介绍如何在使用PPP的串行链路上配置TCP/IP头部压缩协议,以下均称 CTCP。命令详解请参见TCP/IP头部压缩的命令说明。 目前我们的CTCP实现支持封装为PPP、Frame Relay、HDLC的串行链路。我们在以 下的情况下需要配置CTCP: null 低速串行链路上 null 需要节约带宽的串行链路上 可以设想,在一条需要大量如TELNET之类通讯的链路上,客户端的几乎每次击键都需 要用一个TCP报文来承载。假设IP、TCP头部不带选项,总共需要40字节,而有效负 荷却只有1字节,效率十分低下。 同样的报文,如果用CTCP来承载,仅需4字节头部(rfc2507规定的TCP/IP头部压缩 规范),或3字节(rfc1144规定的TCP/IP头部压缩规范)。 注意: 不应在2M以上带宽的链路上使用。 3.2 CTCP配置任务列表 null 在链路上激活CTCP null 改变CTCP最大连接数 null 显示CTCP压缩信息 null CTCP调试 注意: 必须在串行链路的两端同时配置CTCP否则CTCP不起作用。 3.3 CTCP配置任务 3.3.1 在链路上激活CTCP 在封装PPP的链路层上激活CTCP使用以下的命令:(链路两端均需配置)。 - 14 - 09-服务质量配置 命令 目的 ip tcp header-compression [{ cisco-format | iphc-format | passive}] 激活CTCP。 可选参数中cisco-format为缺省值,表示CTCP如果应用在PPP链路上,如果使用IPHC 格式的CTCP,IPCP选项采用cisco的报文格式,否则采用RFC1144的IPCP报文格式; passive表示只有在收到对端发送的CTCP报文后才开始头部压缩,如果应用在PPP链 路上,如果使用IPHC格式的CTCP,IPCP选项采用cisco的报文格式,否则采用RFC1144 的IPCP报文格式;iphc-format表示如果CTCP应用在PPP链路上,IPCP选项采用 RFC2509的报文格式,但是如果对端的PPP实现只支持RFC1144的CTCP格式,则同 样使用RFC1144格式的IPCP。但是如果在FR及HDLC链路上使用CTCP,cisco-format 表示使用遵从RFC1144的CTCP,iphc-format表示遵从RFC2507的CTCP,而passive 表示我方使用的CTCP格式是由对端发送的CTCP报文格式决定的。 3.3.2 改变CTCP最大连接数 命令 目的 ip tcp compression-connections number 配置本地CTCP最大连接数。 CTCP对每个TCP连接在本地保留一个结构存储连接信息,如果连接数设定得太少,这 些结构就无法对同时进行的多个TCP连接提供一一对应,影响压缩效果。 3.3.3 显示CTCP压缩信息 命令 目的 show ip tcp header-compression [type number] [detail] 显示CTCP信息。 以上的命令需要在全局模式下使用。 3.3.4 CTCP调试 命令 目的 debug ip tcp header-compression 显示收发的CTCP报文信息。 以上的命令需要在全局模式下使用。 3.4 配置示例 以下的例子示范了在PPP封装的串行链路上配置CTCP命令的方法: Router_config#interface serial 1/2 Router_config_s1/2#ip tcp header-compression Router_config_s1/2#ip tcp compression-connections 25 Router_config_s1/2#encapsulation ppp Router_config_s1/2# - 15 - 09-服务质量配置 第4章 DLC配置 4.1 DLC概述 DLC模块主要是为了提高带宽利用率。该模块能够将链路层协议如PPP封装的数据进行 压缩后再送到物理层进行传输,或者把从物理层所接收的压缩的数据报文进行解压缩然 后再送交网络层。目前已支持对PPP协议所封装的数据进行压缩传输。支持 Lempel-Ziv(与STAC LZS兼容)以及MPPC两种压缩协议。凡是能够配置PPP协议的端 口,不管是物理端口还是逻辑端口,都可以配置压缩协议。平均而言, 压缩比一般能达到 2:1。 当传输可压缩性比较大的数据流量,比如传输text, html文件时,Lempel-Ziv算法压缩比 一般能达到3:1,MPPC算法的压缩比也能到达3:1以上。可见,在这种情况下配置压 缩算法后,带宽增益非常明显。但是当传输可压缩性比较小,或者不可压缩的数据流量, 比如传输PDF文件、ZIP文件时,配置压缩后取得的带宽增益有限。 4.2 DLC配置 在同异步端口配置数据压缩协议的步骤如下表所示。 命令 目的 Encapsulation PPP 封装PPP协议(注1) 。 Dlc-compress Lempel-Ziv | MPPC 配置压缩协议(注2) 。 注意: 1) 先必须进入同异步端口配置态。另外PPP软件模块必须支持CCP协议(RFC1962) 2) Lempel-Ziv和MPPC两种协议中选一种,PPP连接两端必须配置相同压缩协议 4.3 配置举例 假设有两台路由器A与B,其中A为本公司路由器,B为CISCO路由器,A与B 通过同步串行线相连。假设A的串行端口号为S2/0:1与B的端口号为S1/1:1。两个端 口都封装PPP(两台路由器都支持CCP协议(RFC1962))。 当启用压缩协议STAC LZS时, 这两个端口的基本配置如下: (1) 本公司路由器的S2/0:1端口配置为: interface Serial2/0:1 ip address 18.0.0.1 255.255.255.0 no ip directed-broadcast - 16 - 09-服务质量配置 encapsulation ppp bandwidth 64 dlc-compress Lempel-Ziv (2) CISCO路由器的S1/0:0端口配置为: interface Serial1/1:1 ip address 18.0.0.2 255.255.255.0 encapsulation ppp compress stac 注意: 配置LZ后, 如果CPU资源紧张,并严重影响到其他模块的性能, 用户应该调整压缩模 式为3 或者2 从而减轻CPU的负担, 如: dlc-compress lempel-Ziv mode 3” 或者 “dlc-compress lempel-Ziv mode 2 当启用压缩协议MPPC时, 这两个端口的基本配置如下: (1) 本公司路由器的S2/0:1端口配置为: interface Serial2/0:1 ip address 18.0.0.1 255.255.255.0 no ip directed-broadcast encapsulation ppp bandwidth 64 dlc-compress MPPC (2) CISCO路由器的S1/0:0端口配置为: interface Serial1/1:1 ip address 18.0.0.2 255.255.255.0 encapsulation ppp compress MPPC - 17 - 09-服务质量配置 第5章 CAR配置 5.1 CAR概述 CAR(Committed Access Rate)指定访问速率。提供速率限制的功能,可以对整个端口 的输入或输出速率进行限制;也可以应用于访问列表,对符合访问列表的流进行速率限 制。支持的端口包括:以太网端口,E1/T1端口,同步串口。 5.2 CAR配置 5.2.1 配置速率限制 命令 用途 rate-limit {input | output} {all | access-group name} bps 配置速率限制。 注意: 1) 在接口配置下使用此命令。 2) 用no Rate-limit {input | output} {all | access-group name}删除一条速率限制。 3) 每个端口最多可配置输入或输出的速率限制各8条。 5.2.2 显示速率限制信息 命令 用途 Show rate-limit interface-type interface-number 显示端口速率限制信息。 5.3 配置举例 在路由器的以太网端口上配置速率限制,限制类型为ftp,流量为8000000bps。 interface FastEthernet1/1 ip address 10.0.0.1 255.255.255.0 rate-limit input access-group aaa 8000000 ! ip access-list extended aaa permit tcp any any eq ftp 在路由器的E1端口上配置速率限制,限制端口的输入速率为1000000bps。 controller E1 1/0 - 18 - 09-服务质量配置 - 19 - unframed ! interface Serial1/0:0 ip address 10.0.0.2 255.255.255.0 encapsulation ppp rate-limit input all 1000000