交换机之HOL拥塞

news2024/11/15 4:37:01

队首阻塞(Head of Line Blocking, HOL)是一种出现在缓存式通信网络交换中的一种现象,其交换结构通常由缓存式FIFO输入端、交换结构(Switch Fabric)、FIFO输出端构成。

HOL阻塞用一个现实生活中的例子说明,就如同你在一条单车道的马路上右转,但是前面有直行车,此时虽然右行线已经空闲,但是你也只能等待。

当在相同的输入端口上到达的分组报文被指向不同的输出端口时,就会出现HOL阻塞现象。

如上图所示,端口 1向端口 3 转发 100%带宽的流量 a,同时端口 2 向端口 3 转发 50%带宽的流量 b,向端口 4 转发 50%带宽的流量 C。如果没有任何预防机制,转发到端口 3 的流量会因为拥塞耗尽系统的共享 buffer,导致 Head-of-line (HOL) blocking,影响非拥塞端口的正常转发。云合芯片TM 提供 per-port per-queue 配置的 AOQ MAX (Accounting Output Queue)。当出端口队列从Share pool 中分配的 buffer 超过此队列的 AOQ MAX 门限时,直接对报文执行尾丢弃,以此防止 HO的发生。 


造成HOL阻塞的根源是向所有转发方向之后一个队列,无法在不同的转发方向之间进行调度。如果向不同的转发方向有独立的队列,则可以通过在不同队列间的轮询调度,优化报文转发,避免HOL阻塞。

克服HOL阻塞的方法是使用VOQ(Virtual Output Queue),其思想是在输入端将发送到不同端口的分组报文虚拟成不同的队列,并且彼此互不影响,这样一来即使队首分组报文被阻塞,也不会影响发送到其他输出端口的分组报文转发。

除了VOQ技术之外,还有许多解决HOL阻塞的算法,如神经网络、iSLIP等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/801437.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

人机交互与人机混合智能的区别

人机交互和人机融合智能是两个相关但不完全相同的概念: 人机交互是指人与计算机之间的信息交流和互动过程。它关注的是如何设计和实现用户友好的界面,以便人们能够方便、高效地与计算机进行沟通和操作。人机交互通常强调用户体验和界面设计,旨…

如何找回删除的文件?文件恢复,3招就行!

“昨天不小心把我的毕业资料删除了,因为改了很多版,删除的时候没想到把正确的版本删除了,错误的版本还在!这种情况应该怎么办呢?怎样才能找回我删除的文件呀?” 对于一些比较重要的文件,不小心删…

【C++初阶】C++基础(上)——C++关键字、命名空间、C++输入输出、缺省参数、函数重载

目录 1. C关键字 2. 命名空间 2.1 命名空间的定义 2.2 命名空间的使用 3. C输入&输出 4. 缺省参数 4.1 缺省参数概念 4.2 缺省参数分类 5. 函数重载 5.1 函数重载概念 5.2 C支持函数重载的原理——名字修饰(name Mingling) 5.3 extern &…

围棋基础知识

1、气 1.1星位位置 1.2天元位置 1.3 气的位置 2、禁入点 白棋里面的位置就是禁入点,也可以称为没有气的位置可以称为禁入点 破解之法: 在于将白棋全部围住,下一步为围住之策,即可。 3、死棋和活棋 3.1活棋 3.2 死棋 白棋的样…

探寻数据服务的本质:API之外的可能性

数据服务在数据建设中发挥着重要的作用。数据服务到底啥样? 是不是只对外提供一个API? 这么简单? 而我希望你能在学完这部分内容之后,真正掌握数据服务的产品功能设计和系统架构设计。因为这会对你设计一个数据服务,或…

青少年护眼灯哪个好?2023全新五款台灯推荐

国内儿童青少年的视力健康问题越来越突出,甚至许多孩子年纪非常小就已经近视了,所以许多老师以及眼科医生都和家长们强调护眼台灯的重要性。不过,护眼台灯虽好,但在选购时也要注意那些无法护眼的不专业品牌,许多产品有…

ICC2如何计算Gate Count?

我正在「拾陆楼」和朋友们讨论有趣的话题,你⼀起来吧?知识星球入口 我们认为gate count等于standard cell(非physical only)总面积 / 最小驱动二输入与非门面积。 ICC2没有专门的命令去报告gate count,只能自己计算,使用report_d…

MySQL数据库——DDL基本操作

文章目录 前言数据库操作查看已存在的所有数据库创建数据库选中数据库删除数据库修改数据库编码 表操作创建表显示创建表时的语句显示表结构删除表修改表的结构增加列修改列删除列 修改表名 前言 DDL 操作是与数据库结构相关的操作,它们不涉及实际的数据操作&#…

B2B企业如何选择CRM系统?

CRM软件的优势在于简化业务流程,实现企业的降本增效。越来越多的B2B企业通过CRM为业务赋能,B2B企业如何快速找到适合公司业务的CRM系统?总的来说就是根据企业自身业务而量身打造的一套系统。 1.整理业务需求 B2B企业首先要考虑是业务痛点&a…

易基因:m6A-seq等揭示RBM33参与调控m6A去甲基化酶ALKBH5活性及其底物选择性|科研进展

大家好,这里是专注表观组学十余年,领跑多组学科研服务的易基因。 RNA结合蛋白(RNA-binding protein,RBP)是一类结构和功能多样化的蛋白质,参与多种生物过程。越来越多的证据表明,RBP通过调控编…

意外:WPS编程新工具,不用编程,excel用户:可以不用VBA啦

来来来,拓宽一下视野! 别总以为excel和WPS只能用VBA编程,也别总是想着ACCESS这些老生常谈的工具。其实对于电子表格高级用户来讲,不会VBA,不用ACCESS,也一样可以解决复杂问题或者高级应用。 尤其是WPS用户…

C++多线程编程(第三章 利用栈特性自动释放锁RALL,锁管理器、控制器)

1、什么是RALL,手动代码实现 RALL(resource Acquisition Is Initialization )C 之父Bjarne Stroustrup 提出; 使用局部对象来管理资源的技术称为资源获取即初始化;它的生命周期是由操作系统来管理的,无需人…

Hive分区分桶

分区 分区概念 在逻辑上分区表与未分区表没有区别,在物理上分区表会将数据按照分区键的列值存储在表目录的子目录中,目录名“分区键键值”。其中需要注意的是分区键的值不一定要基于表的某一列(字段),它可以指定任意…

ubuntu软件:录制视频和截图工具,压缩视频

1. 自带录制视频工具; 使用方式: 无需下载 开始录屏/结束录屏:Ctrl Alt Shift r 当看到 Ubuntu 桌面的右上方多了一个红色的小圆点,代表正在录制 注意: 录屏默认的时长30秒,超时会自动结束&#xff01…

Postman如何导出接口的几种方法

本文主要介绍了Postman如何导出接口的几种方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 前言: 我的文章还是一贯的作风,简确用风格(简单确实有用)&am…

无涯教程-jQuery - serialize( )方法函数

serialize()方法将一组输入元素序列化为数据字符串。 serialize( ) - 语法 $.serialize( ) serialize( ) - 示例 假设无涯教程在serialize.php文件中具有以下PHP内容- <?php if( $_REQUEST["name"] ) {$name$_REQUEST[name];echo "Welcome ". $na…

JavaScript小结测试

题目 有两个体操队&#xff0c;海豚队和考拉队。他们互相竞争3次。平均得分最高的赢家将获得奖杯! 利用下面的测试数据&#xff0c;计算每队的平均得分 比较各队的平均分&#xff0c;以确定比赛的获胜者&#xff0c;并将其打印到控制台。不要忘了可能会出现平局&#xff0c;所…

ENVI提取NDVI与植被覆盖度估算

目标是通过ENVI计算植被覆盖度结合ArcGIS出图得到植被覆盖图。 一、植被覆盖度的定义: 植被覆盖度( FractionalVegetation Cover,FVC) 通常定义为植被( 包括叶、茎、枝) 在地面的垂直投影面积占统计区总面积的百分比,它量化了植被的茂密程度,反应了植被的生长态势,是刻画…

C语言结构体大小分析

一&#xff0c;基本类型 C语言自带的数据类型大小如下 数据类型大小&#xff08;字节&#xff09;char1short2int4long4或8float4double8long double16 二&#xff0c;自定义类型---struct C语言除了以上这些基本类型&#xff0c;还支持用户自己定义数据类型 类似于一下形…

Android Banner - ViewPager

现在来给viewpager实现的banenr加上自动轮播 自动轮播的原理&#xff0c;使用handler的延迟消息来实现。 自动轮播实现如下内容 开始轮播&停止轮播 可配置轮播时长、轮播方向 通过自定义属性来配置轮播时长&#xff0c;方向 感知生命周期&#xff0c;可见时开始轮播&…