CN117834562A - 一种驻留时间机制的硬件实现方法 - Google Patents
一种驻留时间机制的硬件实现方法 Download PDFInfo
- Publication number
- CN117834562A CN117834562A CN202410023327.4A CN202410023327A CN117834562A CN 117834562 A CN117834562 A CN 117834562A CN 202410023327 A CN202410023327 A CN 202410023327A CN 117834562 A CN117834562 A CN 117834562A
- Authority
- CN
- China
- Prior art keywords
- message
- time
- residence time
- module
- hardware implementation
- 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.)
- Pending
Links
- 230000007246 mechanism Effects 0.000 title claims abstract description 34
- 238000000034 method Methods 0.000 title claims abstract description 21
- 230000005540 biological transmission Effects 0.000 claims abstract description 24
- 238000012797 qualification Methods 0.000 claims description 8
- 230000006870 function Effects 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 6
- 239000000872 buffer Substances 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种驻留时间机制的硬件实现方法,包括以下步骤:步骤1:驻留时间查询表模块的应用,报文进入交换机并存储在输入端口缓存池的过程中,会提取出报文的FlowID字段和到达时间ArrivalTime发送给驻留时间查询表模块;骤2:传输选择模块的应用,传输选择模块通过判断当前时间CurrentTime是否大于等于“报文的合格时间EligibilityTime-保护带长度ProtectBand”确定该报文是否有资格参与调度竞争;步骤3:FIFO模块的应用,当报文调度完成后,会通过CrossBar发往目的端口的FIFO模块。本发明着眼于驻留时间机制的硬件实现,给出了在交换机中的具体硬件实现方案,并提出了使用驻留时间机制的报文的调度方案,使用保护带机制来保证时间触发报文不被其他报文阻塞。
Description
技术领域
本发明涉及计算机网络的确定性实时传输技术领域,尤其涉及一种驻留时间机制的硬件实现方法。
背景技术
现有网络接入系统中,服务器通过接入交换机,核心交换机及路由器实现对服务器中报文的转发,为用户提供接入外接网络的服务。
驻留时间机制是一种无需时间同步的时间触发的数据传输方法。附图1示意了驻留时间机制的数据传输过程。数据流fi在设备vj中停留的时间记为从设备vj发出报文到设备vj+1接收到报文的时间记为/>于是,
A、数据流到达终端vn的时延为:
B、时延的抖动jitter为数据流fi沿路由路径测算驻留时延(Δt)引入的误差。该机制通过配置数据流在交换机中的驻留时间,时延抖动理论上可以优于基于时间同步的时间触发的数据传输方法。
但是此技术在交换机上还未有展开应用,在硬件上还未有实现驻留时间机制的技术。
发明内容
1.要解决的技术问题
本发明的目的是为了解决现有技术中在硬件上还未有实现驻留时间机制技术的问题,而提出的一种驻留时间机制的硬件实现方法。
2.技术方案
为了实现上述目的,本发明采用了如下技术方案:
一种驻留时间机制的硬件实现方法,包括以下步骤:
步骤1:驻留时间查询表模块的应用,使用驻留时间功能的报文默认为时间触发的报文,简称TT帧或者TT报文,有FlowID字段;报文进入交换机并存储在输入端口缓存池的过程中,会提取出报文的FlowID字段和到达时间ArrivalTime发送给驻留时间查询表模块;驻留时间查表模块维持一张存储有驻留时间ResidenceTime和目的端口Oport的以FlowID为地址的表;当收到报文池发送过来的报文信息后会查表得到对应的驻留时间和目的端口,并计算合格时间EligibilityTime,之后该模块会将查表和计算结果发往传输选择模块;
步骤2:传输选择模块的应用,传输选择模块通过判断当前时间CurrentTime是否大于等于“报文的合格时间EligibilityTime-保护带长度ProtectBand”确定该报文是否有资格参与调度竞争,当同时有多个报文有资格参与调度竞争时,ISLIP调度器会选择优先级最大的;
步骤3:FIFO模块的应用,当报文调度完成后,会通过CrossBar发往目的端口的FIFO模块,FIFO模块实质是一个先进先出的队列;当FIFO模块存有报文数据时,说明FIFO中的数据还没有发送完毕,该模块会发送给传输选择模块一个反压信号,使得目的端口为该端口的报文不能参与调度竞争,即使是合格时间满足要求也不能被调度。
优选地,所述步骤1中合格时间计算公式为:
EligibilityTime=ArrivalTime+ResidenceTime。
优选地,所述驻留时间查询表模块包含三个部分,分别是实现查询请求缓存功能的寄存器组、请求选择电路以及一个驻留时间查找表。
优选地,所述步骤2中传输选择模块通过若干个寄存器存储帧的摘要信息组成,具体包括输出端口frame_port、帧合格时间frame_elig_time、帧优先级frame_upriority、帧达到次序frame_priority、存储空间占用。
优选地,所述步骤2中传输选择模块实质为一个存储报文摘要信息的优先级队列,每个队列对应一个优先级,TT报文默认拥有最高优先级。
优选地,所述步骤2中传输选择模块存储的报文摘要信息包括:优先级、合格时间、目的端口等。
优选地,所述步骤2中保护带长度是一个常数,大小为最长报文的发送时间,用于实现保护带机制,以保证TT报文的转发不会被其他报文阻塞。
优选地,所述步骤3中FIFO模块中缓存的是TT报文,FIFO模块会在当前时间CurrentTime大于等于报文的合格时间EligibilityTime时开始发送报文,而其他普通报文则是使用尽力而为的方式进行发送,这样一来就完成了保护带机制,使得TT报文能够在合格时间准时发出而不被其他报文堵塞。
3.有益效果
相比于现有技术,本发明的优点在于:
本发明中,着眼于驻留时间机制的硬件实现,给出了在交换机中的具体硬件实现方案,并提出了使用驻留时间机制的报文的调度方案,使用保护带机制来保证时间触发报文不被其他报文阻塞。
附图说明
图1为本发明提出的无需时间同步的时间触发的数据传输方法示意图;
图2为本发明提出的一种驻留时间机制的硬件实现方法的整体架构图;
图3为本发明提出的驻留时间查询表模块结构图;
图4为本发明提出的FIFO模块状态转移图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
实施例1:
参照图2,一种驻留时间机制的硬件实现方法,包括以下步骤:
步骤1:驻留时间查询表模块的应用,使用驻留时间功能的报文默认为时间触发的报文(以下简称TT帧或者TT报文),有FlowID字段。报文进入交换机并存储在输入端口缓存池的过程中,会提取出报文的FlowID字段和到达时间(ArrivalTime)发送给驻留时间查询表模块。驻留时间查表模块维持一张存储有驻留时间ResidenceTime和目的端口Oport的以FlowID为地址的表;当收到报文池发送过来的报文信息后会查表得到对应的驻留时间和目的端口,并计算合格时间(EligibilityTime)。合格时间计算公式为:EligibilityTime=ArrivalTime+ResidenceTime。之后该模块会将查表和计算结果发往传输选择模块;
步骤2:传输选择模块的应用,传输选择模块实质为一个存储报文摘要信息的优先级队列,每个队列对应一个优先级,TT报文默认拥有最高优先级。该模块存储的报文摘要信息包括:优先级、合格时间、目的端口等。该模块通过判断当前时间(CurrentTime)是否大于等于“报文的合格时间(EligibilityTime)-保护带长度(ProtectBand)”确定该报文是否有资格参与调度竞争。这里的保护带长度是一个常数,大小为最长报文的发送时间,用于实现保护带机制,以保证TT报文的转发不会被其他报文阻塞。当同时有多个报文有资格参与调度竞争时,ISLIP调度器会选择优先级最大的;
步骤3:FIFO模块的应用,当报文调度完成后,会通过CrossBar发往目的端口的FIFO模块,该模块实质是一个先进先出的队列;当FIFO模块存有报文数据时,说明FIFO中的数据还没有发送完毕,该模块会发送给传输选择模块一个反压信号,使得目的端口为该端口的报文不能参与调度竞争,即使是合格时间满足要求也不能被调度。FIFO模块中缓存的是TT报文,该模块会在当前时间(CurrentTime)大于等于报文的合格时间(EligibilityTime)时开始发送报文,而其他普通报文则是使用尽力而为的方式进行发送,这样一来就完成了保护带机制,使得TT报文能够在合格时间准时发出而不被其他报文堵塞。
本发明中,着眼于驻留时间机制的硬件实现,给出了在交换机中的具体硬件实现方案,并提出了使用驻留时间机制的报文的调度方案,使用保护带机制来保证时间触发报文不被其他报文阻塞。
实施例2:
其具有上述实施例的实施内容,其中,对于上述实施例的具体实施方式可参阅上述描述,此处的实施例不作重复详述;而在本申请实施例中,其与上述实施例的区别在于:
驻留时间查询表模块:如附图3所示,该模块包含三个部分,分别是实现查询请求缓存功能的寄存器组、请求选择电路以及一个驻留时间查找表。由于在该示例设计中多个端口共用一个驻留时间查询表,所以可能同时会有来自多个端口的查询请求,因此需要不断将这些请求用寄存器寄存并选出其中一个请求进行查表,选出后还需将已经满足的请求删除。各个部分的说明如下:
寄存器组:该部分寄存器数量等于交换机端口数量,每个端口对应一个寄存器。当帧的查询请求达到时,会被寄存到与其接收端口相对应的寄存器内,等待请求被满足后再清除对应寄存器内的请求。
请求选择电路:该部分通过组合逻辑实现,按照端口顺序优先选择靠前的端口对应的请求。
驻留时间查找表:以帧的FlowID为地址,不断接收选择出来的请求,读取表内数据,并计算合格时间,该部分的表结构如下表所示:
表1驻留时间查找表的表结构
位数 | 63-26 | 5-0 |
字段 | ResidenceTime | Oport |
实施例3:
其具有上述实施例的实施内容,其中,对于上述实施例的具体实施方式可参阅上述描述,此处的实施例不作重复详述;而在本申请实施例中,其与上述实施例的区别在于:
传输选择模块(Transmission_sellection):该模块通过若干个寄存器存储帧的摘要信息组成,具体包括输出端口(frame_port)、帧合格时间(frame_elig_time)、帧优先级(frame_upriority)、帧达到次序(frame_priority)、存储空间占用(frame_empty,某一位为1表示对应存储空间中的帧信息有效)。该部分寄存器组在收到帧信息有效信号(input_islip_valid)脉冲时存储帧信息,当收到ISLIP调度器有效信号脉冲后删除对应帧信息。
另外该模块在发送调度请求方面,对于TT报文,会将“合格时间(EligibilityTime)-保护带长度(ProtectBand)大于等于当前时间”且“目的端口无正在发送的帧”的调度请求发往ISLIP调度器;而对于普通报文,他们没有合格时间,采用尽力而为的方式将调度请求直接发给ISLIP调度器。在调度时,普通报文的优先级低于TT报文,ISLIP调度器会选择调度优先级最高的报文进行转发。
实施例4:
其具有上述实施例的实施内容,其中,对于上述实施例的具体实施方式可参阅上述描述,此处的实施例不作重复详述;而在本申请实施例中,其与上述实施例的区别在于:
FIFO模块:该模块实现了一个先进先出的队列(FIFO),所有的帧数据都要通过这个FIFO才能发出。附图4所示为该模块的状态转移图。各个状态说明如下:
状态1:Oport_busy信号置0,表示该输出端口没有帧数据,不限制传输选择模块的调度请求;这时,在帧数据到达时将FIFO写使能(wr_en)置1,开始写入帧数据;在输入有效信号(in_wr)为1时将状态转移为状态2,该信号置1表示帧数据到达。
状态2:Oport_busy信号置1,表示该输出端口有帧数据,限制传输选择模块的调度请求;在帧数据写完后将FIFO写使能(wr_en)置0,停止写入数据;同时通过随帧数据而来的合格时间(in_eligibility_time)判断是否为TT帧(只有TT帧的合格时间不为0),并控制FIFO读使能信号读完帧数据,将其发出;在FIFO空信号(fifo_empty)为1时将状态转移为状态2,该信号置1表示FIFO内的数据已经被读空。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (8)
1.一种驻留时间机制的硬件实现方法,其特征在于,包括以下步骤:
步骤1:驻留时间查询表模块的应用,使用驻留时间功能的报文默认为时间触发的报文,简称TT帧或者TT报文,有FlowID字段;报文进入交换机并存储在输入端口缓存池的过程中,会提取出报文的FlowID字段和到达时间ArrivalTime发送给驻留时间查询表模块;驻留时间查表模块维持一张存储有驻留时间ResidenceTime和目的端口Oport的以FlowID为地址的表;当收到报文池发送过来的报文信息后会查表得到对应的驻留时间和目的端口,并计算合格时间EligibilityTime,之后该模块会将查表和计算结果发往传输选择模块;
步骤2:传输选择模块的应用,传输选择模块通过判断当前时间CurrentTime是否大于等于“报文的合格时间EligibilityTime-保护带长度ProtectBand”确定该报文是否有资格参与调度竞争,当同时有多个报文有资格参与调度竞争时,ISLIP调度器会选择优先级最大的;
步骤3:FIFO模块的应用,当报文调度完成后,会通过CrossBar发往目的端口的FIFO模块,FIFO模块实质是一个先进先出的队列;当FIFO模块存有报文数据时,说明FIFO中的数据还没有发送完毕,该模块会发送给传输选择模块一个反压信号,使得目的端口为该端口的报文不能参与调度竞争,即使是合格时间满足要求也不能被调度。
2.根据权利要求1所述的一种驻留时间机制的硬件实现方法,其特征在于,所述步骤1中合格时间计算公式为:
EligibilityTime=ArrivalTime+ResidenceTime。
3.根据权利要求1所述的一种驻留时间机制的硬件实现方法,其特征在于,所述驻留时间查询表模块包含三个部分,分别是实现查询请求缓存功能的寄存器组、请求选择电路以及一个驻留时间查找表。
4.根据权利要求1所述的一种驻留时间机制的硬件实现方法,其特征在于,所述步骤2中传输选择模块通过若干个寄存器存储帧的摘要信息组成,具体包括输出端口frame_port、帧合格时间frame_elig_time、帧优先级frame_upriority、帧达到次序frame_priority、存储空间占用。
5.根据权利要求1所述的一种驻留时间机制的硬件实现方法,其特征在于,所述步骤2中传输选择模块实质为一个存储报文摘要信息的优先级队列,每个队列对应一个优先级,TT报文默认拥有最高优先级。
6.根据权利要求1所述的一种驻留时间机制的硬件实现方法,其特征在于,所述步骤2中传输选择模块存储的报文摘要信息包括:优先级、合格时间、目的端口等。
7.根据权利要求1所述的一种驻留时间机制的硬件实现方法,其特征在于,所述步骤2中保护带长度是一个常数,大小为最长报文的发送时间,用于实现保护带机制,以保证TT报文的转发不会被其他报文阻塞。
8.根据权利要求1所述的一种驻留时间机制的硬件实现方法,其特征在于,所述步骤3中FIFO模块中缓存的是TT报文,FIFO模块会在当前时间CurrentTime大于等于报文的合格时间EligibilityTime时开始发送报文,而其他普通报文则是使用尽力而为的方式进行发送,这样一来就完成了保护带机制,使得TT报文能够在合格时间准时发出而不被其他报文堵塞。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410023327.4A CN117834562A (zh) | 2024-01-08 | 2024-01-08 | 一种驻留时间机制的硬件实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410023327.4A CN117834562A (zh) | 2024-01-08 | 2024-01-08 | 一种驻留时间机制的硬件实现方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117834562A true CN117834562A (zh) | 2024-04-05 |
Family
ID=90515001
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410023327.4A Pending CN117834562A (zh) | 2024-01-08 | 2024-01-08 | 一种驻留时间机制的硬件实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117834562A (zh) |
-
2024
- 2024-01-08 CN CN202410023327.4A patent/CN117834562A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5546385A (en) | Flexible switching hub for a communication network | |
KR100334922B1 (ko) | 효율적인출력요구패킷스위치와방법 | |
JP2803262B2 (ja) | パケット・スイッチ | |
JP3859864B2 (ja) | キュー管理システム | |
US7742486B2 (en) | Network interconnect crosspoint switching architecture and method | |
US6658016B1 (en) | Packet switching fabric having a segmented ring with token based resource control protocol and output queuing control | |
US6791992B1 (en) | Earliest-deadline-first queuing cell switching architecture and method | |
JPH08293877A (ja) | 通信システム | |
US7142555B2 (en) | Method and apparatus for switching data using parallel switching elements | |
US20020131419A1 (en) | Packet switch apparatus and multicasting method | |
US7110405B2 (en) | Multicast cell buffer for network switch | |
US20070110052A1 (en) | System and method for the static routing of data packet streams in an interconnect network | |
US6941392B2 (en) | Buffer switch having descriptor cache and method thereof | |
US20040202163A1 (en) | Cell processing method and apparatus in an asynchronous transfer mode switch | |
EP1220497B1 (en) | Packet switch | |
JPH0471377B2 (zh) | ||
CN117834562A (zh) | 一种驻留时间机制的硬件实现方法 | |
Wang et al. | Efficient designs of optical LIFO buffer with switches and fiber delay lines | |
JP2752116B2 (ja) | 交換ノード | |
EP0969631A2 (en) | Packet switch system with simplified bus control | |
JPH0831877B2 (ja) | パケツトスイツチ | |
AU2599792A (en) | Method and apparatus for asynchronous transfer mode (atm) network | |
JP3099325B2 (ja) | クロスバスイッチ装置及びその制御方法 | |
JPH0974410A (ja) | 通信中継装置 | |
JP3036584B2 (ja) | Atmスイッチ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |