CN106453134B - 一种基于虚拟队列长度协调单组播竞争的cicq结构交换机分组调度方法 - Google Patents
一种基于虚拟队列长度协调单组播竞争的cicq结构交换机分组调度方法 Download PDFInfo
- Publication number
- CN106453134B CN106453134B CN201610929933.8A CN201610929933A CN106453134B CN 106453134 B CN106453134 B CN 106453134B CN 201610929933 A CN201610929933 A CN 201610929933A CN 106453134 B CN106453134 B CN 106453134B
- Authority
- CN
- China
- Prior art keywords
- port
- output port
- cell
- multicast
- head cell
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3045—Virtual queuing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公布了一种基于虚拟队列长度协调单组播竞争的CICQ结构交换机分组调度算法。本发明提供的算法包括输入调度和输出调度两部分。在输入调度中,首先找出列交叉节点缓存分组之和最小的输出端口,然后在有信元去往该输出端口的输入端口中,选择单播头信元和组播头信元目的端口并集元素最少的输入端口,计算单播头信元和组播头信元的权重,选择权重最大的头信元,传输到相应的交叉节点缓存中。在输出调度中,令交叉节点缓存的权重等于其对应单播队列队长与头信元有去往其对应输出端口所有组播队列的虚拟队长之和,权重最大的交叉节点缓存中的分组离开输出端口。与典型的方法比较,本发明提供的算法具有更好的通过率和分组平均时延性能。
Description
技术领域
本发明属于高性能分组交换技术领域。
背景技术
本发明中的CICQ交换机运行于同步模式下,记固定长度的分组为信元。一次完整调度包含输入调度和输出调度。N×N端口的CICQ交换机在每个输入端口维护N个单播VOQ队列和K个多播MQ(multicast queue)队列。其等效于由N个单组播缓存队列和交叉节点缓存(Crossbar Buffer,XB)间的1×N个解复用器和N个XB和输出端口间的N×1个复用器组成。CICQ最主要的特点是XB在一定程度上解耦了输入竞争和输出竞争,实现了两级并行调度。在第一级,每个输入仲裁器决定从VOQ或MQ中传往相应XB的信元,如果XB已满,则不能从相应的VOQ或MQ继续传输信元。如果XB大小为无穷大,则CICQ结构可始终运行于工作保持状态,此时CICQ结构等效于OQ结构。
目前已有的单组播混合业务调度算法可分为基于轮询(Round Robin,RR)和基于权重两类。基于RR的算法比较固定,虽然复杂度低,但性能较差。在基于权重的调度算法研究中,有研究将性能较好的组播调度算法MRSF(Maximum Ratio of Service First)和单播调度算法SBF(Shortest buffer First)集成提出了一种单组播混合调度算法MF-MRSF(Max-fanout First and Maximum Ratio of Service First)。也有研究通过分析单组播业务各自特性,提出了一种为单组播分组设置统一权重的调度算法LCMS(Low-CostMulticast Scheduling)。LCMS在组播权重设置时考虑了其到达时扇出数大于单播的因素,并依此提升组播优先级,同时以单组播分组各自等待时间来均衡二者权重关系。
由于OQ结构中交换机始终运行于work-conserving状态,从而保证了100%的通过率。所谓work-conserving状态是指在任意时隙若交换机中存在去往某个输出端口的分组,则一定有分组在该时隙被调度离开该输出端口。因此在单组播混合调度中,为追求高通过率和低时延,以交换机运行于work-conserving状态为目标,将权重值设置为单组播队列的虚拟队列长度。本发明提出了一种新的基于虚拟队列长度的LVQF(Longest Virtual QueueFirst)算法,通过合理设置单组播队列权重值和均衡交叉节点缓存占用的机制来尽量避免头分组阻塞的出现,使得交换机在运行中尽量处于工作保持状态,从而提升通过率并降低了平均时延。
发明内容
本发明的目的是提供CICQ结构交换机中分组平均时延更低的单组播业务调度算法。
为实现上述目的,本发明通过以下技术路线实现:
第一步初始化输入端口集合IE={1,2,…,N},和输出端口集合OE={1,2,…,N};
第二步找出列交叉节点缓存的分组长度之和EO j最小的输出端口j;
第三步找出单播头信元及组播头信元目的端口并集的端口数目WP i最小的输入端口i;
第四步将输入端口i中权重值最大的头信元传输到相应的交叉缓存中;
第五步更新输入输出端口状态;
第六步对各输出端口分别进行输出调度。
进一步地,第二步“找出CICQ交换机列交叉节点缓存的分组长度之和EO j的值最小的输出端口j”具体包括以下步骤:
(1)对输出端口j(其中j∈OE)对应的列交叉节点缓存长度分长度之和EO j进行升序排列;
(2)若集合OE为空,则输入调度结束,跳向第六步;否则在集合OE中找出EO j最小的输出端口j。
第三步“找出WP i最小的输入端口i”的具体方法如下:
(1)若输入端口i和输出端口j对应的交叉节点缓存XBi,j为空,且输入端口i有去往输出端口j的分组,则令WP i等于输入端口i单播头信元与组播头信元目的端口并集的端口数目;若XBi,j非空或者输入端口i无去往输出端口j的分组,则WP i等于0;
(2)对WP i进行升序排列,若所有的WP i均为0,则在集合OE中剔除输出端口j,即OE=OE\{j},回到第二步;否则,找出最小不为0的WP i对应的输入端口i,进入第四步。
第四步“将输入端口i权重值最大的头信元传输到XBi,j”的具体步骤如下:
(1)令单播队列权重WU i,j等于VOQi,j队长,组播队列权重WM i,l等于组播队列MQi,l当前所有信元扇出数之和,且称之为虚拟队长(l=card(Φ)mod K,且j∈Φ,Φ为组播队列头信元目的端口集合);
(2)找出权重值最大的头信元。该信元为单播信元,则直接传输到交叉缓存XBi,j;若为组播头信元,则传输到其扇出端口中能接收新信元的交叉缓存中。
第五步“更新输入输出端口状态”的具体步骤为:
在集合IE中剔除输入端口i,集合OE中剔除输出端口j,即IE=IE\{i},OE=OE\{j},跳回第2步。
第六步“对各输出端口分别进行输出调度”的具体步骤如下:
(1)对于所有的输出端口j,其中1≤j≤N,计算输出端口j对应的各XBi,j缓存信元的权重值WX i,j。如果XBi,j非空,则WX i,j等于对应的VOQi,j的队长与头信元扇出端口包含j的所有MQi,k的虚拟队长之和;否则,WX i,j=0;
(2)选择权重值WX i,j最大的信元,将其从XBi,j传出输出端口j。
本发明的有益效果:本发明提供了一种基于虚拟队列为权重的单组播混合业务调度算法。对比结果显示,本发明算法的平均分组时延低于主流的MRSF和LCMS算法。并且当归一化负载接近1,组播比例提高时,LVQF具有比现有算法更明显的优势,且通用性和实用性更好。
附图说明
图1是CICQ结构交换机框图;
图2是CICQ结构交换机LVQF调度算法流程图;
具体实施方式
LVQF调度算法包括输入调度和输出调度两个部分,调度裁决中若遇到多个相同选择,则从中随机选择一个。
第一部分、输入调度
第1步 初始化输入端口集合IE={1,2,…,N}和输出端口集合和OE={1,2,…,N};
第2步 若集合OE为空,则输入调度结束,跳向第二部分的输出调度;否则,在集合OE中找出EO j最小的输出端口j;
第3步若输入端口i和输出端口j对应的交叉结点缓存XBi,j为空,且输入端口i有去往输出端口j的分组,取WP i的值等于输入端口i单播头信元与组播头信元目的端口并集的端口数目;若XBi,j非空或者输入端口i无去往输出端口j的分组,则WP i等于0;
第4步 若WP i最大值为0,则在集合OE中剔除输出端口j,即OE=OE\{j},跳回第2步;否则,找出大于0的最小WP i对应的输入端口i,进入第5步;
第5步 计算单播队列权重值WU i,j(WU i,j等于VOQi,j队长)和组播队列权重值WM i,l,其中l=card(Φ)mod K,且j∈Φ,Φ为组播队列头信元目的端口集合,WM i,l值等于组播队列MQi,l当前所有信元扇出端口数之和,即虚拟队长。找出权重值最大的头信元传输到交叉缓存XBi,j,若组播头信元权重值大,则传输到其扇出端口中能接收新信元的交叉缓存中;
第6步 在集合IE中剔除输入端口i,集合OE中剔除输出端口j,即IE=IE\{i},OE=OE\{j},跳回第2步。
第二部分、输出调度
第1步 对任一输出端口j,其中1≤j≤N,计算输出端口j对应的各XBi,j缓存信元的权重WX i,j。若XBi,j非空,则WX i,j等于对应的VOQi,j的队长与头信元扇出端口包含j的所有MQi,k的虚拟队长之和;否则,WX i,j=0;
第2步 对输出端口j,选择权重值WX i,j最大的信元,将其从XBi,j传出输出端口j。
Claims (1)
1.一种基于虚拟队列长度的CICQ交换机单组播混合业务调度方法,其特征是:
1.1初始化输入端口IE={1,2,…,N},和输出端口集合OE={1,2,…,N};
1.2找出列交叉节点缓存的分组长度之和EO j最小的输出端口j,具体方法如下:
(1.2.1)对输出端口j,其中j∈OE,对应的列交叉节点缓存的分组长度分长度之和EO j进行升序排列;
(1.2.2)若集合OE为空,则输入调度结束,跳向第六步;否则在集合OE中找出EO j最小的输出端口j;
1.3找出单播头信元及组播头信元目的端口并集的端口数目WP i最小的输入端口i,具体方法如下:
(1.3.1)若输入端口i和输出端口j对应的交叉节点缓存XBi,j为空,且输入端口i有去往输出端口j的分组,则令WP i等于输入端口i单播头信元与组播头信元目的端口并集的端口数目;若XBi,j非空或者输入端口i无去往输出端口j的分组,则WP i等于0;
(1.3.2)对WP i进行升序排列,若所有的WP i均为0,则在集合OE中剔除输出端口j,即OE=OE\{j},回到第1.2步;否则,找出最小不为0的WP i对应的输入端口i,进入第1.4步;
1.4将输入端口i中权重值最大的头信元传输到可接受新分组的信元的目的交叉缓存中,具体如下:
(1.4.1)令单播队列权重WU i,j等于VOQi,j队长,组播队列权重WM i,l等于组播队列MQi,l当前所有信元扇出数之和,且称之为虚拟队长,其中l=card(Φ)mod K,且j∈Φ,Φ为组播队列头信元目的端口集合;
(1.4.2)找出权重值最大的头信元;该信元为单播信元,则直接传输到交叉缓存XBi,j;若为组播头信元,则传输到其扇出端口中能接收新信元的交叉缓存中;
1.5在集合IE中剔除输入端口i,集合OE中剔除输出端口j,即IE=IE\{i},OE=OE\{j},回到步骤1.2;
1.6对各输出端口分别进行输出调度,具体如下:
(1.6.1)对于所有的输出端口j,其中1≤j≤N,计算输出端口j对应的各XBi,j缓存信元的权重值WX i,j;如果XBi,j非空,则WX i,j等于对应的VOQi,j的队长与头信元扇出端口包含j的所有MQi,k的虚拟队长之和;否则,WX i,j=0;
(1.6.2)选择权重值WX i,j最大的信元,将其从XBi,j传出输出端口j。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610929933.8A CN106453134B (zh) | 2016-10-31 | 2016-10-31 | 一种基于虚拟队列长度协调单组播竞争的cicq结构交换机分组调度方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610929933.8A CN106453134B (zh) | 2016-10-31 | 2016-10-31 | 一种基于虚拟队列长度协调单组播竞争的cicq结构交换机分组调度方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106453134A CN106453134A (zh) | 2017-02-22 |
CN106453134B true CN106453134B (zh) | 2019-04-05 |
Family
ID=58177317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610929933.8A Active CN106453134B (zh) | 2016-10-31 | 2016-10-31 | 一种基于虚拟队列长度协调单组播竞争的cicq结构交换机分组调度方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106453134B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109450823B (zh) * | 2018-11-13 | 2021-06-08 | 中国电子科技集团公司第五十四研究所 | 一种基于聚合式交叉节点的网络大容量交换装置 |
CN115473862B (zh) * | 2022-04-24 | 2023-07-11 | 中国人民解放军战略支援部队信息工程大学 | 避免交换芯片组播包队头阻塞的方法及系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101478483B (zh) * | 2009-01-08 | 2011-09-07 | 中国人民解放军信息工程大学 | 交换设备内实现分组调度的方法及交换设备 |
CN101902390B (zh) * | 2009-05-27 | 2013-04-17 | 华为技术有限公司 | 一种单播和多播集成调度装置、交换系统及方法 |
CN101695052B (zh) * | 2009-10-21 | 2014-10-15 | 中国人民解放军理工大学 | 一种交叉点小缓存的高性能crossbar调度方法 |
US8737414B2 (en) * | 2009-12-10 | 2014-05-27 | Polytechnic Institute Of New York University | Scheduling, including distributed scheduling, for a buffered crossbar switch |
CN103384225B (zh) * | 2013-03-15 | 2016-04-27 | 北京安拓思科技有限责任公司 | 基于输入交叉点缓存快速分组交换网络的流量控制方法 |
CN105429898B (zh) * | 2015-11-02 | 2018-04-06 | 北京航空航天大学 | 一种cicq结构交叉缓存队列均衡的分组调度算法 |
-
2016
- 2016-10-31 CN CN201610929933.8A patent/CN106453134B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106453134A (zh) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104486237B (zh) | clos网络中无乱序分组路由及调度方法 | |
US7852866B2 (en) | Low complexity scheduling algorithm for a buffered crossbar switch with 100% throughput | |
CN105429898B (zh) | 一种cicq结构交叉缓存队列均衡的分组调度算法 | |
CN100420241C (zh) | 实现信息交换的系统及方法和调度算法 | |
CN101695051A (zh) | 一种用于缓冲Crossbar的队列长度均衡调度方法 | |
CN106453134B (zh) | 一种基于虚拟队列长度协调单组播竞争的cicq结构交换机分组调度方法 | |
Li et al. | Space-memory-memory architecture for Clos-network packet switches | |
CN100421420C (zh) | 一种调度纵横式交换矩阵中变长数据包队列的方法 | |
CN101478486B (zh) | 一种交换网数据调度方法、设备和系统 | |
CN101964747B (zh) | 基于前置反馈的两级交换结构工作方法 | |
CN101931585A (zh) | 一种信元保序的方法及装置 | |
CN106603145B (zh) | 一种考虑信道状态的geo卫星星载cicq结构交换机分组调度方法 | |
CN106357555B (zh) | 一种基于业务均衡的cicq结构分组调度方法 | |
CN106453137B (zh) | 一种以缓解HOL Blocking为目标的动态组播入队方法 | |
Yoshigoe | The CICQ switch with virtual crosspoint queues for large RTT | |
Dong et al. | MCS: buffered Clos-network switch with in-sequence packet forwarding | |
CN103326962B (zh) | 多样化服务交换方法 | |
Yoshigoe | Threshold-based exhaustive round-robin for the CICQ switch with virtual crosspoint queues | |
Yoshigoe | The crosspoint-queued switches with virtual crosspoint queueing | |
Gao | An adaptive scheduling algorithm for multi-priority traffic in load-balanced switch | |
Wang et al. | A shared-memory design for crosspoint buffered switches under mixed uni-and multicast traffic | |
Mhamdi et al. | Efficient Multicast Support in High-Speed Packet Switches. | |
Mhamdi | A Partially Buffered Crossbar packet switching architecture and its scheduling | |
Shen et al. | A dual-feedback-based two-stage switch architecture | |
Pan et al. | Flow based performance guarantee scheduling in buffered crossbar switches |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |