流量控制--2.传统的流量控制元素

传统的流量控制元素

3.1 整流

整流器通过延迟报文来满足所需的传输速率。整流是一种通过延迟传输到输出队列的报文来满足期望的输出速率的机制。这是寻求带宽控制解决方案的用户面临的最常见的需求之一。延迟报文作为流量控制解决方案的一部分,使得每种整流机制都变成了一种不会节省工作量的机制,即"为了延迟报文需要作额外的工作"。

反过来看,这种不会节省工作量的机制提供了整流功能,而节省工作量的机制(如 PRIO)则不能够延迟报文。

整流器会尝试限制或分配流量,使其满足但不会超过配置的速率(通常为每秒报文数或每秒的比特/字节数)。也正是因为其运作机制,整流器可以使突发流量变得平滑。对带宽进行整流的好处是可以控制报文的延迟。整流的底层通常会使用令牌和桶机制。

3.2 调度

调度器会协调或重新协调出去的报文。

调度是一种在特定队列的输入和输出之间协调(或重新协调)报文的机制。最常见的调度器是FIFO(先进先出)调度器。从更高层面上看,任何在输出队列上设置的流量控制机制都可以看作是一个调度器(因为这些机制也会协调出去的报文)。

其他通用的调度机制可以用于补偿各种网络条件。如公平队列算法(SFQ)可以用于防止单个客户端或流占用全部网络资源;轮询算法( WRR)以轮询的方式给每个流或客户端的报文提供出队列的机会。其他复杂的调度算法可以用于防止骨干过载(参见GRED)或改进其他调度机制(参见ESFQ)。

3.3 分类

分类器用于对进入队列的流量进行分类或分割。

分类是一种以不同的方式处理报文的机制,通常对应不同的输出队列。在处理过程中,当路由和传输一个报文时,网络设备可以使用多种方式对报文进行分类。分类可以包含对报文的标记,通常发生在单个管理控制下的网络边界,或者单独的每一跳上。

Linux模型(参见Section 4.3,“filter)允许报文在流量控制结构中级联多个分类器,并与策略器一起进行分类(另请参见Section 4.5,“policer”)

3.4 策略

策略器用于衡量或限制特定队列的流量。

策略是流量控制的一个元素,是一种限制流量的简单机制。策略广泛运用到网络边界,用于保证对端占用的带宽不会超配额。一个策略器会以一定的速率接收流量,当超过该速率之后会执行某些动作。一个比较严格的方案是直接丢弃流量(虽然流量可以通过重新分类进行处理,而不用简单地丢弃)。

策略是关于进入队列的流量速率的是和否的问题,如果进入队列的报文低于给定的速率,则允许该报文入队列;如果进入队列的报文超过给定的速率,则执行其他动作。虽然策略器内部使用了令牌桶机制,但它无法像整流机制一样延迟报文。

3.5 丢弃

丢弃整个报文,流或分类。

丢弃一个报文意味着废弃一个报文。

3.6 标记

标记是一种更改报文的机制。

注:不同于fwmarkiptables 目标的MARKipchains--mark用于修改报文的元数据,而不是报文本身。

流量控制的标记机制会在报文上安装一个DSCP,然后由管理域内的其他路由器使用并遵守(通常用于DiffServ)。

相关文章

文章浏览阅读1.8k次,点赞63次,收藏54次。Linux下的目录权限...
文章浏览阅读1.6k次,点赞44次,收藏38次。关于Qt的安装、Wi...
本文介绍了使用shell脚本编写一个 Hello
文章浏览阅读1.5k次,点赞37次,收藏43次。【Linux】初识Lin...
文章浏览阅读3k次,点赞34次,收藏156次。Linux超详细笔记,...
文章浏览阅读6.8k次,点赞109次,收藏114次。【Linux】 Open...