2.5入口速率限制(IRL)
随着越来越多的应用程序要求进入任何给定端口的流量的准确和可预测的速率限制,交换机中入口速率限制的作用日益增加。交换机可能需要限制来自端口的总体流量,或者限制进入端口的特定流量,例如单播,多播,未知等。它可能需要限制所有帧的速率,但仍要保持QoS。设备基于每个速率资源支持此功能。
该设备支持每个端口的TCP/IP进入速率限制的同类最佳,并具有独立的风暴预防功能。基于端口的入口速率限制支持从64Kb到1Mb的信息速率它的增量是64kb。除此之外,该设备还支持基于优先级的进入速率限制。以1Mbps的增量从1Mbps到100Mbps以及以10Mbps的增量从100Mbps到1000Mbps的信息速率。可以将给定的入口速率资源配置为基于帧的最终QPri来跟踪四种优先级流量类型中的任何一种。
实现速率限制的流行方案之一是漏斗。另一种是令牌环算法。
存储桶以约定的信息速率committed information rate(CIR)的速率排放信息,当帧通过后会再次补充。在桶中的所有计算均以信息完成。因此,使用信息执行存储桶的递减和递增操作。
设备支持色盲漏斗桶的方案。这意味着在进入系统之前,帧不希望被标记。在某些网络中要求有通过感知颜色来限制速率,如果帧违反了任何测量规则,则帧标记会将帧的标记为比初始的优先级更低,在设置的可寻址应用中,不存在这样的帧标记,因此采用了色盲方案。
如图所示,低于约定的决口大小限制 (CBS_Limit) 的流量通过时无需任何进一步操作可以直接通过。如果流量决口继续运行,并且桶里的令牌快接近限制时即EBS_Limit – CurBentBktDepth(EBS_Limit-CBS_Limit) <CBS_Limit,那么将指定一组可编程的操作。
在上图中流量CBS_Limit下面的流量无需任何其他操作就可以通过。如果流量突发还在继续而且令牌深度接近EBSLimit那么。如果该帧被丢弃那么等效令牌是不会添加到存储桶中的。
如果EBS_Limit_action处于流控模式下的时候那么将生成以太网的流控帧,并且会发送源端口但传入帧将通过速率资源传递。如果端口在半双工模式下运行,则端口将被阻塞。支持两种限制模式,”strict严格”和”loose宽松”。
严格下,没有足够的令牌来接受完整的帧,则会丢弃帧,在宽松的模式下没有足够的令牌时,帧也会被接受,但是仍然会限制存储桶的大小2**24-1。在上面两种情况下当令牌大于EBSLimit和CBSLimit之差时,该帧将不会被接受。在严格中如果存在音视频流时视频帧较大,可能会被丢弃,但是音频可能会通过。因为TCP的机制原因所以在TCP中最好是执行严格的存储桶。
速率限制块的另外一个重要的功能是支持数据包的采样,在若干个网络管理应用中从给定端口进入的帧需要被采样端口采样。比如从给定的帧中采样出所有的1。任何速率资源都可以被配置成采样模式。一旦配置了,则它不能再对任何数据包类型或优先级流量进行速率限制了。
可以为每个端口分配入口速率资源,以涵盖各种类型的应用程序。基于TCP的应用可以对通过端口的聚合信息流进行限制。其他的类型有广播风暴预防,TCP-SYN,TCP-FIN,管理帧,优先级感应速率限制和数据所采样。
下图一为数据速率限制示例。图二为基于优先级的速率限制实例。可以将任何给定的存储桶编程为基于聚合速率或基于流量类型。
一种是基于数据的类型的桶分类类型,另一种是基于优先级的分类但是都有广播风暴流量的预防。
每个端口最多可以分配五个入口速率资源。
非速率限制(NRL)替代可以在每个源地址,每个目的地址或对帧来说它是作为管理帧通过入口块被分类的。
通过将寄存器的入口控制寄存器(偏移量0x09)的15向下到13位,可以启用基于SA或基于DA的非速率限制覆盖。如果设置了SA或DA非速率限制中的任意一个,则这两个入口速率限制逻辑都不会在其各自的速率限制计算中考虑该帧。
基于帧:
1、 计算所有的1层的字节
2、 计算所有的2层的字节
3、 计算所有的3层的字节
其中的含义是:
1、1层=前导码(8字节)+帧的DA+IFG(12字节)
2、2层=帧的DA到CRC
3、2层=帧的DA到CRC-18-4(如果帧已标记)
掩码类型:
以下帧的所有类型可以被选择为作为速率资源计算器的一部分。它作为一个位向量,那么不止一种帧类型可以从给定的速率资源中被选择。管理帧,多播,广播,单播,地址解析协议(ARP),TCP数据,TCP控制,UDP,非TCP UDP,IMS,镜像策略,重定向策略,未知单播或未知多播。
速率类型:
基于速率或基于流量类型。
桶增量12bits
桶的速率因素16bits
EBS/CBS限制24bits
动作模式:
丢弃
如果为该接口启用了流量控制,则将流量控制发送回源端口 流量控制模式应在具有可用可信流量控制机制的端口上进行编程。EBSLimitAction是每个端口的特征。如果一个端口有多个速率资源桶,那么所有启用的桶都应该使用相同的 ActionMode 进行编程。
采样模式:
在采样模式中这个位配置速率资源到数据包中,设备支持PolMirrored帧的采样和对帧来说是进入端口的IMS位(端口寄存器,偏移量为0x08)是设置为0x01的。请注意,在采样模式计算中不会考虑在该端口桶中丢弃的帧。同时注意如果速率资源是被配置成采样模式的操作,那么桶速率因素的参数应配置为0x00,而CountMode就配置为0x0即基于帧。
过滤后的丢弃的账户
该位决定是否考虑由于其他帧过滤原因而丢弃的帧。为了考虑进入与该速率资源相关联的给定的端口的所有帧,需要设置该位。
队列拥塞丢弃的帐户
该位设置决定是否考虑由于队列拥塞原因而被队列控制器丢弃的帧。 为了考虑进入与此速率资源关联的给定端口的所有帧,需要设置该位。
IRLFCMode入口速率限制的流控模式
该位决定 EBSLimitAction 何时被编程以生成流量控制消息,流量控制的解除由 PirlFCMode 位控制。 当该位被编程为 0 时,只有当入口速率资源变空时,流量控制才会被取消声明,当它被编程为 1 时,当入口速度资源有足够的空间时,流量控制被取消声明 由 CBS 限制。 例如,如果 CBSLimit 被编程为 0x60000,那么如果速率资源桶中有至少 0x60000 个可用令牌的空间,则接受一个帧。
PriOrPT(优先级或数据包类型)
这定义了速率资源是否需要根据传入帧的优先级或基于帧类型来导出要跟踪的帧类型。