下列各层的流量控制和拥塞控制有区别吗?
- 第 2 层(数据链路层)
- 第 3 层(网络层)
如果它们不一样,那么在后续层中如何处理?
- 第 2 层(数据链路层)
- 第 3 层(网络层)
答案1
广义上的流量控制是指允许发送器根据从接收器捕获的某种信号(隐式或显式)增加或减少给定数据链路上的流量的机制。
在串行通信更为普遍的时代,我们使用硬件流控制 (RTS/CTS) 来允许串行链路上的端点发出信号,表明它们是否能够接收数据。DCE(例如调制解调器)可能具有可能被发送站溢出的缓冲区。当此设备通过某个缓冲阈值时,它将降低相应的信号线,发送站将通过暂停其数据传输来做出响应,直到 DCE 指示即时拥塞问题已清除。带内也实现了类似的机制(即作为正在传输的数据的一部分),称为 XON/XOFF - 与 RTS/CTS 的想法相同,但实现为特殊控制字符而不是专用硬件线路。
最近(大约 15 年前),IEEE 802.3x 标准在以太网中引入了类似的机制。这引入了所谓的“暂停”帧。与串行情况一样,给定接收器在无法接受更多流量时可以发出这样的帧。这是一种 MAC 层机制(即第 2 层),已在相当多的设备中实现,但其实际使用和部署非常有限。802.3x 的问题是,当发出暂停帧时全部不管流量的重要性如何,流量都会被阻止。最近出现了一些新标准(统称为 DCB),允许更细粒度的控制(即根据每个 CoS 暂停流量),以及用于定义不同类别的流量及其如何映射到这些 CoS 值的补充设施。用于主动流量控制的 L2 网络扩展的其他示例包括光纤通道中的缓冲信用和 ATM ABR 中的反馈机制。
真正的流量控制并不适用于第 3 层,因为第 3 层主要与可达性和寻址有关。但是,第 4 层有一些机制 - 尤其是 TCP 窗口 - 允许发送方根据网络条件限制传输。TCP 窗口的操作和注意事项值得专门提出问题/发布,因为关于该主题的文献很多。另一种已指定但未广泛实施/用于 TCP 的机制是 ECN(显式拥塞通知),它可能允许采用更主动的方法来限制发送方带宽(而不是依靠数据包丢失进行 TCP 窗口)。
除了严格的流量控制之外,还有一些机制可以根据每个发送者来塑造、选择性丢弃和监管流量(即 L2/L3 和一些 L4 QoS 机制),但这些并不是精确的流量控制,至少在该术语的通常定义中不是。
答案2
我认为您应该更具体地说明流量控制和拥塞控制的含义。
但是第 2 层处理帧和 MAC 地址,第 3 层处理数据包和 IP 地址。
例如,路由算法(OSPF、EIGRP、BGP、RIP)是第 3 层“流量控制”机制,而生成树或 flexlinks 等则是第 2 层“流量控制”机制。
再次,通过提供有关“流量控制”含义的更多具体信息,我可以更准确、更具体。
希望你觉得这篇文章有用,干杯
http://en.wikipedia.org/wiki/Open_Shortest_Path_First http://en.wikipedia.org/wiki/Spanning_Tree_Protocol