保证转发PHB组

文化   2024-11-07 20:36   北京  
RFC2597:Assured Forwarding PHB Group,June 1999

本备忘录的状态 

本文档为互联网社区指定了一个互联网标准跟踪协议,并要求讨论和提出改进建议。请参阅当前版本的“互联网官方协议标准”(STD 1),了解该协议的标准化状态和状态。这份备忘录的分发是无限的。

版权声明 

版权所有(C)互联网协会(1999)。保留所有权利。

摘要  

本文档定义了一个通用的区分服务(Differentiated Services,DS)[Blake]每跳行为(Per-Hop-Behavior,PHB)组,称为保证转发(Assured Forwarding,AF)。AF PHB组以四个独立转发的AF类提供IP数据包的传递。在每个AF类中,可以为IP数据包分配三个不同的丢弃优先级之一。如果同一微流的IP数据包属于同一AF类,则DS节点不会对其进行重新排序。

1、目的和概述  

需要在互联网上提供IP数据包的可靠转发。在一个典型的应用中,一家公司使用互联网来互连其地理上分布的站点,并希望保证只要来自每个站点的总流量不超过订阅的信息速率(配置文件),该内联网内的IP数据包就会以高概率转发。理想的是,站点可以超过订阅的配置文件,但要理解的是,超额流量的传递概率不如配置文件内的流量高。同样重要的是,网络不会对属于同一微流的数据包进行重新排序,如[Nichols]中所定义的,无论它们是否在配置文件中。   
有保证转发(AF)PHB组是提供商DS域为从客户DS域接收到的IP数据包提供不同级别转发保证的一种手段。定义了四个AF类,其中每个AF类在每个DS节点中分配了一定数量的转发资源(缓冲区空间和带宽)。希望使用AF PHB组提供的服务的IP数据包由客户或提供商DS域根据客户订阅的服务分配到一个或多个AF类中。有关此功能的更多背景和使用方法,请参阅[Clark]。
在每个AF类中,IP数据包都用三个可能的丢弃优先级值之一标记(同样由客户或提供商DS域标记)。在拥塞的情况下,数据包的丢弃优先级决定了数据包在AF类中的相对重要性。拥塞的DS节点试图通过优选地丢弃具有较高丢弃优先级值的数据包来保护具有较低丢弃优先级的数据包免受丢失。
因此,在DS节点中,IP数据包的转发保证级别取决于(1)数据包所属的AF类分配了多少转发资源,(2)AF类的当前负载是多少,以及在类内拥塞的情况下,(3)数据包的丢弃优先级是多少。
例如,如果在提供商DS域入口处的流量调节动作确保DS节点中的AF类仅被具有最低丢弃优先级值的数据包适度加载,并且没有被具有两个最低丢弃优先级的数据包过载,那么AF类可以为订阅简档内的数据包(即标记为最低丢弃优先级)提供高级别的转发保证,并为多余的流量提供最多两个较低级别的转发保障。
本文件描述了AF PHB组。其他符合DS的节点不需要实现此PHB组才能被视为符合DS,但当说符合DS的结点实现了AF PHB组时,它必须符合本文档中的规范。   
本文件中的关键词“必须”、“禁止”、“需要”、“应”、“不应”、“宜”、“不宜”、“推荐”、“可以”和“可选”应按照[Bradner]中的描述进行解释。

2、AF PHB组 

保证转发(AF)PHB组提供N个独立AF类别的IP数据包转发。在每个AF类中,IP数据包被分配了M个不同的丢弃优先级中的一个。属于AF类i且具有丢弃优先级j的IP数据包用AF码点AFij标记,其中1<=i<=N和1<=j<=M。目前,定义了四个类(N=4),每个类(M=3)有三个级别的丢弃优先级。可以定义更多的AF类或丢弃优先级级别以供本地使用。
DS节点应该实现所有四个通用AF类。一个AF类中的数据包必须独立于另一个AF类别中的数据包包送,即DS节点不得将两个或多个AF类聚合在一起。
DS节点必须为每个实现的AF类分配可配置的最小转发资源量(缓冲区空间和带宽)。每个类都应该以一种在小时间尺度和大时间尺度上实现配置的服务速率(带宽)的方式进行服务。   
当从其他AF类或其他PHB组获得多余资源时,AF类也可以配置为接收比最小值更多的转发资源。本备忘录没有指定如何分配多余的资源,但实现必须指定实际支持哪些算法以及如何对其进行参数化。
在AF类中,如果DS节点包含丢弃优先级值p,则其转发IP数据包的概率不得小于当p<q时包含丢弃优先级数值q的概率。请注意,这一要求可以在不需要出列和丢弃已排队的数据包的情况下得到满足。
在每个AF类中,DS节点必须接受所有三个丢弃优先级码点,并且它们必须产生至少两个不同级别的丢失概率。在某些网络中,特别是在企业网络中,瞬态拥塞很少发生且时间很短,因此DS节点在每个AF类别中只实现两个不同级别的丢失概率可能是合理的。虽然这对于某些网络来说可能已经足够了,但在拥塞经常发生的DS域中,应该支持三种不同级别的丢失概率。
如果DS节点仅对AF类x实现两个不同级别的丢失概率,则码点AFx1必须产生较低的丢失概率,而码点AFx2和AFx3必须产生较高的丢失概率。
当同一微流的AF数据包属于同一AF类时,无论其丢弃优先级如何,DS节点都不得对其进行重新排序。转发AF数据包没有可量化的时间要求(延迟或延迟变化)。
本备忘录第7节描述了AF类和其他PHB之间的关系。
AF PHB组可用于实现端到端和域边缘到域边缘服务。   

3、流量调节措施  

DS域可以在域的边缘以不同的丢弃优先级控制进入或离开域的AF流量。此类流量调节操作可能包括流量整形、丢弃数据包、增加或减少数据包的丢弃优先级,以及将数据包重新分配给其他AF类。然而,流量调节动作不得导致同一微流的数据包重新排序。

4、排队和丢弃行为 

本节定义了AF PHB组的排队和丢弃行为。PHB组行为的其他方面在第2节中进行了定义。
AF实现必须尽量减少每个类内的长期拥塞,同时允许突发导致的短期拥塞。这需要一个主动队列管理算法。这种算法的一个例子是随机早期丢弃(Random Early Drop,RED)[Floyd]。本备忘录没有指定特定算法的使用,但确实要求保持几个属性。
AF实现必须通过丢弃数据包来检测和响应每个类中的长期拥塞,同时通过排队数据包来处理短期拥塞(数据包突发)。这意味着存在一个平滑或滤波功能,用于监测瞬时拥塞水平并计算平滑的拥塞水平。丢弃算法使用这个平滑的拥塞级别来确定何时应该丢弃数据包。
丢弃算法必须对使用AF类的微流的短期流量特征不敏感。也就是说,具有不同短期突发形状但长期分组速率相同的流应该以基本相等的概率丢弃分组。实现这一点的一种方法是在dropping函数中使用随机性。   
丢弃算法必须以相同的方式处理单个类和优先级级别内的所有数据包。这意味着,对于任何给定的平滑拥塞级别,单个优先级内特定微流数据包的丢弃率将与该流在通过该优先级的流量总量中所占的百分比成正比。
向端节点反馈的拥塞指示,以及与拥塞相关的每个丢弃优先级的数据包丢弃水平,必须是渐进的,而不是突然的,以使整个系统达到稳定的工作点。一种方法(RED)使用两个(可配置的)平滑拥塞级别阈值。当平滑后的拥塞水平低于第一阈值时,不会丢弃具有相关优先级的数据包。当平滑后的拥塞水平在第一和第二阈值之间时,数据包以线性增加的概率被丢弃,从零到刚好在第二阈值之前达到的可配置值。当平滑后的拥塞水平高于第二阈值时,相关优先级的数据包以100%的概率被丢弃。
为了允许AF PHB在许多不同的操作环境中使用,丢弃算法控制参数必须针对每个分组丢弃优先级和每个AF类别独立配置。   
在上述限制范围内,本规范允许一系列数据包丢弃行为。不一致的丢弃行为导致端到端服务语义不一致,并限制了AF PHB在多供应商环境中的可能使用范围。随着经验的积累,本文档的未来版本可能会更严格地定义所需行为的具体方面。

5、隧道化 

当AF分组被隧道化时,隧道化分组的PHB不得降低隧道化AF分组的转发保证,也不得导致属于同一微流的AF分组的重新排序。

6、推荐的代码点 

下面给出了四个通用AF类的推荐代码点。这些码点不与任何其他通用PHB组重叠。
AF代码点的推荐值如下:AF11 = '001010',AF12 = '001100',AF13 = '001110',AF21 = '010010',AF22 = '010100',AF23 = '010110',AF31 = '011010',AF32 = '011100',AF33 = '011110',AF41 = '100010',AF42 = '100100',以及AF43 = '100110'。下表总结了推荐的AF代码点值。    

7、与其他PHB组的相互作用  

上述推荐的AF码点映射不会干扰本地使用空间,也不会干扰[Nichols]中推荐的类选择器码点。因此,由这些类选择器代码点选择的PHB可以与AF PHB组共存,并保留为它们定义的转发行为和关系。特别是,默认PHB码点“000000”可能仍用于传统的尽力而为流量。同样地,码点“11x000”可能仍将用于网络控制流量。
AF PHB组与边缘流量调节动作相结合,将每个AF类中的流量限制在该类分配资源的(通常不同的)百分比内,可用于获得类选择器PHB所暗示的整体行为。在这种情况下,在DS域中使用部分或全部类选择器代码点作为AF代码点的别名可能是合适的。
除了类选择器PHB之外,任何其他PHB组都可以在同一DS域内与AF PHB组共存。但是,任何AF PHB组实施都应记录以下内容:
(a) 如果有的话,其他PHB组可以抢占专门分配给每个AF PHB类的转发资源。这种抢占不能发生在正常的网络操作中,但在某些异常情况下可能是合适的。例如,“11x000”码点可能会抢占AF转发资源,以便在需要时优先处理意外的高水平网络控制流量。
(b) 如何在AF PHB组和其他已实施的PHB组之间分配“多余”资源。例如,一旦为每个AF类分配了最小分配,任何剩余资源都可以在AF类和默认PHB之间平均分配。在另一个示例中,任何剩余的资源都可以分配给转发多余的AF流量,只有在满足所有AF需求时,资源才专用于默认PHB。   
本备忘录未规定AF PHB组与其他已实施的PHB组之间存在任何特定关系;它只要求记录所选择的任何关系。实现可能允许配置这两种关系中的一种或两种。预计这种级别的配置灵活性将对许多网络管理员有价值。

8、安全影响 

为了保护自己免受拒绝服务攻击,提供商DS域应将进入该域的流量限制在订阅的配置文件中。此外,为了保护到客户DS域的链接免受拒绝服务攻击,提供商DS域应允许客户DS域指定如何将链接的资源分配给AF数据包。如果服务产品要求标记有AF码点的流量受到源或目标地址等属性的限制,则网络中的入口节点有责任验证这些属性的有效性。
[Blake]和[Nichols]中涵盖了其他安全考虑因素。

9、知识产权 

IETF已收到关于本文档中包含的部分或全部规范所主张的知识产权的通知。如需更多信息,请查阅在线权利主张列表。   

10、IANA注意事项  

本文档在[Nichols]定义的代码空间池1中分配了第6节中列出的12个代码点。

附录:服务示例 

例如,AF PHB组可用于实施所谓的奥林匹克服务,该服务由三个服务类别组成:铜牌、银牌和金牌。将数据包分配给这三个类,这样黄金类中的数据包比分配给白银类的数据包负载更轻(因此具有更大的及时转发概率)。白银类和青铜类之间也存在着同样的关系。如果需要,每个类中的数据包可以通过赋予它们低、中或高丢弃优先级来进一步分隔。
青铜、白银和黄金服务等级可以在网络中映射到AF等级1、2和3。类似地,低、中、高丢弃优先级可以映射到AF丢弃优先级级别1、2或3。
   
例如,可以通过使用漏桶流量规则来分配数据包的丢弃优先级,该规则的参数是速率和大小,大小是两个突发值的总和:已提交的突发大小和过量突发大小。如果存储桶中的令牌数量大于超出的突发大小,则为数据包分配低丢弃优先级;如果存储桶内的令牌数量超过零,但最多不超过超出的突发大小时,则分配中等丢弃优先级;若存储桶为空,则分配高丢弃优先级。可能还需要为来自客户DS域的高丢弃优先级流量设置上限,以避免来自一个客户DS域大量无法送达的高丢弃优先数据包可能拒绝为来自其他域的可能送达的高掉落优先数据包提供服务的情况。
另一种分配数据包丢弃优先级的方法是将奥林匹克服务类别的用户流量限制在给定的峰值速率,并在每个丢弃优先级上均匀分布。这将产生一种比例带宽服务,在假设具有高带宽微流的客户订阅了比具有低带宽微流客户更高的峰值速率的情况下,在拥塞期间平均分配可用容量。
如果在每个DS节点中预先知道该类的最大到达速率,则AF PHB组还可以用于使用过度配置的AF类来实现丢失和低延迟服务。然而,所需准入控制服务的规范超出了本文的范围。如果低损耗不是目标,则可以通过为AF类可用的缓冲区空间设置较低的最大限制来实现低延迟服务,而不会过度配置。

参考文献  

[Blake] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z. and W. Weiss, "An Architecture for Differentiated Services", RFC 2475, December 1998.    [Bradner] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.[Clark] Clark, D. and Fang, W., Explicit Allocation of Best Effort Packet Delivery Service. IEEE/ACM Transactions on Networking, Volume 6, Number 4, August 1998, pp. 362-373.[Floyd] Floyd, S., and Jacobson, V., Random Early Detection gateways for Congestion Avoidance. IEEE/ACM Transactions on Networking, Volume 1, Number 4, August 1993, pp. 397-413.[Nichols] Nichols, K., Blake, S., Baker, F. and D. Black, "Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers", RFC 2474, December 1998.

完整版权声明 

版权所有(C)互联网协会(1999)。保留所有权利。
本文件及其翻译可复制并提供给他人,对其进行评论或以其他方式解释或协助其实施的衍生作品可全部或部分制作、复制、出版和分发,不受任何限制,前提是上述版权声明和本段包含在所有此类副本和衍生作品中。但是,不得以任何方式修改本文件本身,例如删除版权声明或对互联网协会或其他互联网组织的引用,除非是为了制定互联网标准而需要,在这种情况下,必须遵循互联网标准过程中定义的版权程序,或者需要将其翻译成英语以外的语言。
上述授予的有限权限是永久性的,互联网协会或其继承人或受让人不会撤销。   
本文件和其中包含的信息是按“原样”提供的,互联网协会和互联网工程任务组否认所有明示或暗示的保证,包括但不限于使用本文件中的信息不会侵犯任何权利或对适销性或特定用途适用性的任何暗示保证。

致谢 

RFC编辑器功能的资金目前由互联网协会提供。  
 ***推荐阅读***
NAT域隧道模式IPsec安全模型
IP层安全(IPsec)文件路线图
IP网络地址转换器(NAT)的协议复杂性
IANA为共享地址空间保留的IPv4前缀
IPv4链路本地地址的动态配置
在VMware安装一台CentOS虚拟机
在Linux中命令行管理文件和帮助
在Linux中创建、查看和编辑文件
Linux用户、组管理
Linux权限与设置ACL

铁军哥
高级网络规划设计师,原中国电信高级技术规划工程师,天翼云认证高级解决方案架构师,H3C认证网络工程师。 继续加油,努力传播知识,影响更多人!
 最新文章