CN108462649A - 降低onu中拥塞状态下高优先级数据传输时延的方法和装置 - Google Patents
降低onu中拥塞状态下高优先级数据传输时延的方法和装置 Download PDFInfo
- Publication number
- CN108462649A CN108462649A CN201710091051.3A CN201710091051A CN108462649A CN 108462649 A CN108462649 A CN 108462649A CN 201710091051 A CN201710091051 A CN 201710091051A CN 108462649 A CN108462649 A CN 108462649A
- Authority
- CN
- China
- Prior art keywords
- cache
- data
- priority
- scheduling
- index
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000003287 optical effect Effects 0.000 claims abstract description 13
- 238000013507 mapping Methods 0.000 claims description 22
- 230000005540 biological transmission Effects 0.000 claims description 20
- 239000003550 marker Substances 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 20
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 5
- 230000010365 information processing Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 238000013467 fragmentation Methods 0.000 description 2
- 238000006062 fragmentation reaction Methods 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- 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
- H04L47/6215—Individual queue per QOS, rate or priority
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q11/0067—Provisions for optical access or distribution networks, e.g. Gigabit Ethernet Passive Optical Network (GE-PON), ATM-based Passive Optical Network (A-PON), PON-Ring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/0064—Arbitration, scheduling or medium access control aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/0001—Selecting arrangements for multiplex systems using optical switching
- H04Q11/0062—Network aspects
- H04Q2011/0088—Signalling aspects
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明实施例提供了一种降低光网络单元(ONU)中拥塞状态下高优先级数据传输时延的方法和装置,所述方法包括:依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;依据光线路终端(OLT)下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,计算本次调度的缓存索引;从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种降低光网络单元(ONU)中拥塞状态下高优先级数据传输时延的方法和装置。
背景技术
随着网络应用技术的发展,网络中传输的数据流量越来越多。为了保证网络应用的服务质量,网络设备中优先级和时延的保证是非常重要的。
对于光线路终端(OLT)来说,带宽控制是基于静态带宽分配(SBA)\动态带宽分配(DBA)机制的,比如:吉比特无源光网络(GPON)设备是基于传输容器(TransmissionContainer,TCONT)来进行分配带宽的,所述TCONT为GPON时分复用的一个调度时隙,在此时隙下,属于该时隙的数据才能被传输出去,逻辑链路标记(Logical Link Identifier,LLID)为EPON时分复用的一个调度时隙,原理同GPON。多TCONT/LLID的情况下,每个TCONT/LLID之间是轮询下发带宽的,为了保证此情况下达到线速性能,通常在流量管理(trafficmanagement,TM)出口模块需要比较大的缓存空间来存储整个数据包,以保证减少MAC组帧的开销,提高带宽利用率,防止因为等待整包的情况出现大量IDLE帧的发送。
可以看出,OLT的带宽分配方式是基于TCONT\LLID为单位的,不是以优先级队列为单位,TM出口模块内部的调度多是基于优先级队列的,中间缓存存放的是TM出口模块内部调度之后的数据。对于端到端的调度来看,有可能出现如下问题:首先,报文依次写入缓存,一旦低优先级的数据(报文)被调度之后,为了保证不出现错包和乱序,这时即使有高优先级的数据到来也不能立即被调度,需要等待,出现拥塞,如图1所示;另一方面,ONU的时隙调度特性导致下一次调度该报文需要等待一个时隙以上的间隔,从而导致高优先级数据的时延会被放大,影响服务质量,用户体验不佳。
发明内容
为解决现有存在的技术问题,本发明实施例提供一种降低ONU中拥塞状态下高优先级数据传输时延的方法和装置。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供一种降低ONU中拥塞状态下高优先级数据传输时延的方法,该方法包括:
依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;
依据OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,计算本次调度的缓存索引;
从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT。
上述方案中,所述从与所述缓存索引对应的缓存中读出数据时,该方法还包括:
记录当前所有缓存的状态以及本次的调度信息,以用于后续的数据调度;所述本次的调度信息至少包括:本次调度的数据和对应存储的缓存。
上述方案中,所述依据所述描述符信息,对应存储所述报文中的数据于缓存中,包括:
依据所述描述符信息中的TCONT\LLID ID以及数据的优先级ID为索引、存储所述报文中的数据,同一个TCONT\LLID ID对应的不同优先级的数据写入不同的缓存中;其中,所述数据的优先级越高对应的优先级ID越大。
上述方案中,所述依据OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,并基于绝对优先级(SP)调度方法计算本次调度的缓存索引,包括:
依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
基于预设的优先级调度规则中TCONT\LLID ID与数据优先级的映射表,从映射表中选取当前带宽信息中的TCONT\LLID ID对应的最高优先级的数据ID;
依据所述报文的描述符信息确定所述数据ID对应的优先级ID;
判断所述优先级ID对应的缓存的状态为非空状态时,确定所述缓存的索引为本次调度的缓存索引。
上述方案中,所述依据OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,并基于SP调度方法计算本次调度的缓存索引,包括:
依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
确定所述已确定的缓存中状态为非空的缓存;
依据预设的优先级调度规则,基于所述非空的缓存对应的缓存索引确定优先级ID最大的缓存索引为本次调度的缓存索引。
本发明实施例还提供一种降低ONU中拥塞状态下高优先级数据传输时延的装置,该装置包括:
缓存模块,用于依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;基于调度模块传输的本次调度的缓存索引从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT;
调度模块,用于依据OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,并基于SP调度方法计算本次调度的缓存索引,并发送给所述缓存模块。
上述方案中,所述调度模块从与所述缓存索引对应的缓存中读出数据时,
所述调度模块,还用于记录当前所有缓存的状态以及本次的调度信息,以用于后续的数据调度;所述本次的调度信息至少包括:本次调度的数据和对应存储的缓存。
上述方案中,所述缓存模块包括:
缓存单元,用于依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;
读取单元,用于基于调度模块传输的本次调度的缓存索引从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT。
上述方案中,所述缓存单元包括:
描述符缓存单元,用于缓存所述描述符信息;
数据缓存单元,用于依据所述描述符缓存单元存储的描述符信息中的TCONT\LLIDID以及数据的优先级ID为索引、存储所述报文中的数据,同一个TCONT\LLID ID对应的不同优先级的数据写入不同的缓存中;其中,所述数据的优先级越高对应的优先级ID越大。
上述方案中,所述调度模块包括:
第一缓存确定单元,用于依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
映射单元,用于基于预设的优先级调度规则中TCONT\LLID ID与数据优先级的映射表,从映射表中选取当前带宽信息中的TCONT\LLID ID对应的最高优先级的数据ID;
第一索引确定单元,用于依据所述报文的描述符信息确定所述数据ID对应的优先级ID;判断所述优先级ID对应的缓存的状态为非空状态时,确定所述缓存的索引为本次调度的缓存索引。
上述方案中,所述调度模块包括:
第二缓存确定单元,用于依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
状态确定单元,用于确定所述已确定的缓存中状态为非空的缓存;
第二索引确定单元,用于依据预设的优先级调度规则,基于所述非空的缓存对应的缓存索引确定优先级ID最大的缓存索引为本次调度的缓存索引。
本发明实施例提供的降低ONU中拥塞状态下高优先级数据传输时延的方法和装置,依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;依据OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,计算本次调度的缓存索引;从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT。本发明实施例可基于预设的优先级调度规则令优先级高的数据优先传输,优先级低的报文不通过,或者次之通过,有效降低了高优先级数据的时延,提高了用户的使用体验;同时,由于高优先级数据的时延得到明显降低(经过实测,时延从8ms减少到500us左右),相应减少了缓存资源的占用(不需大缓存存储拥塞的数据),降低系统运营成本。
附图说明
图1为现有技术中高优先级的数据产生延时的示意图;
图2为本发明场景实施例中所述降低ONU中拥塞状态下高优先级数据传输时延的装置结构示意图;
图3为本发明场景实施例中所述降低ONU中拥塞状态下高优先级数据传输时延的方法流程示意图;
图4为本发明场景实施例中所述出口数据缓存管理模块的结构示意图一;
图5为本发明场景实施例中所述出口数据缓存调度模块的结构示意图;
图6为本发明场景实施例中所述出口数据缓存管理模块的结构示意图二;
图7为本发明实施例所述降低ONU中拥塞状态下高优先级数据传输时延的方法实现流程图;
图8为本发明实施例所述降低ONU中拥塞状态下高优先级数据传输时延的装置结构示意图;
图9为本发明实施例所述缓存模块的结构示意图;
图10为本发明实施例所述缓存单元的结构示意图;
图11为本发明一实施例所述调度模块的结构示意图;
图12为本发明另一实施例所述调度模块的结构示意图。
具体实施方式
下面结合具体实施例对本发明进行详细描述。
本发明实施例提供了一种降低ONU中拥塞状态下高优先级数据传输时延的方法,如图7所示,该方法包括:
步骤701:依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;
步骤702:依据OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,计算本次调度的缓存索引;
步骤703:从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT。
这里,所述预设的优先级调度规则可以为:根据用户业务的需要预先配置的优先级调度规则,即:可任意设置需要优先调度的数据;或者,所述预设的优先级调度规则为:从所述缓存中存储数据的优先级中确定最高优先级的数据作为优先调度的数据。所述描述符信息可包括:从报文中解析所得的数据优先级、带宽信息(如TCONT\LLID ID等)、数据ID等等。
本发明实施例可基于预设的优先级调度规则令优先级高的数据优先传输,优先级低的报文不通过,或者次之通过,有效降低了高优先级数据的时延,提高了用户的使用体验;同时,由于高优先级数据的时延得到明显降低,相应减少了缓存资源的占用(不需大缓存存储拥塞的数据),降低系统运营成本。
本发明实施例中,所述从与所述缓存索引对应的缓存中读出数据时,该方法还包括:
记录当前所有缓存的状态以及本次的调度信息,以用于后续的数据调度;所述本次的调度信息至少包括:本次调度的数据和对应存储的缓存。
本发明实施例中,所述依据所述描述符信息,对应存储所述报文中的数据于缓存中,包括:
依据所述描述符信息中的TCONT\LLID ID以及数据的优先级ID为索引、存储所述报文中的数据,同一个TCONT\LLID ID对应的不同优先级的数据写入不同的缓存中;其中,所述数据的优先级越高对应的优先级ID越大。
实际应用时,可将所述描述符信息与所述数据分开存储,将描述符信息存储于描述符缓存中,将数据存储于数据缓存中,对于同一数据(队列)而言,数据缓存和描述符缓存的缓存索引相同。
一个实施例中,所述依据OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,并基于SP调度方法计算本次调度的缓存索引,包括:
依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
基于预设的优先级调度规则中TCONT\LLID ID与数据优先级的映射表,从映射表中选取当前带宽信息中的TCONT\LLID ID对应的最高优先级的数据ID;
依据所述报文的描述符信息确定所述数据ID对应的优先级ID;
判断所述优先级ID对应的缓存的状态为非空状态时,确定所述缓存的索引为本次调度的缓存索引。
另一个实施例中,所述依据OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,并基于SP调度方法计算本次调度的缓存索引,包括:
依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
确定所述已确定的缓存中状态为非空的缓存;
依据预设的优先级调度规则,基于所述非空的缓存对应的缓存索引确定优先级ID最大的缓存索引为本次调度的缓存索引。
可见,本发明实施例可以根据业务需要灵活设置优先发送的数据,也可依据报文中数据的优先级优先发送高优先级的数据,实现方法灵活,有效降低数据时延,尤其是拥塞情况下高优先级数据的时延时间,保证服务质量,提高用户体验。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行上文所述各个步骤的程序代码。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例还提供了一种降低ONU中拥塞状态下高优先级数据传输时延的装置,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”“单元”可以实现预定功能的软件和/或硬件的组合。如图8所示,该装置包括:
缓存模块81,用于依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;基于调度模块传输的本次调度的缓存索引从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT;
调度模块82,用于依据OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,并基于SP调度方法计算本次调度的缓存索引,并发送给所述缓存模块。
这里,所述预设的优先级调度规则可以为:根据用户业务的需要预先配置的优先级调度规则,即:可任意设置需要优先调度的数据;或者,所述预设的优先级调度规则为:从所述缓存中存储数据的优先级中确定最高优先级的数据作为优先调度的数据。所述描述符信息可包括:从报文中解析所得的数据优先级、带宽信息(如TCONT\LLID ID等)、数据ID等等。
本发明实施例可基于预设的优先级调度规则令优先级高的数据优先传输,优先级低的报文不通过,或者次之通过,有效降低了高优先级数据的时延,提高了用户的使用体验;同时,由于高优先级数据的时延得到明显降低,相应减少了缓存资源的占用(不需大缓存存储拥塞的数据),降低系统运营成本。
本发明实施例中,所述调度模块82从与所述缓存索引对应的缓存中读出数据时,
所述调度模块82,还用于记录当前所有缓存的状态以及本次的调度信息,以用于后续的数据调度;所述本次的调度信息至少包括:本次调度的数据和对应存储的缓存。
本发明实施例中,如图9所示,所述缓存模块81包括:
缓存单元811,用于依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;
读取单元812,用于基于调度模块传输的本次调度的缓存索引从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT。
本发明实施例中,如图10所示,所述缓存单元811包括:
描述符缓存单元8111,用于缓存所述描述符信息;
数据缓存单元8112,用于依据所述描述符缓存单元存储的描述符信息中的TCONT\LLID ID以及数据的优先级ID为索引、存储所述报文中的数据,同一个TCONT\LLID ID对应的不同优先级的数据写入不同的缓存中;其中,所述数据的优先级越高对应的优先级ID越大。
一个实施例中,如图11所述,所述调度模块82可包括:
第一缓存确定单元821,用于依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
映射单元822,用于基于预设的优先级调度规则中TCONT\LLID ID与数据优先级的映射表,从映射表中选取当前带宽信息中的TCONT\LLID ID对应的最高优先级的数据ID;
第一索引确定单元823,用于依据所述报文的描述符信息确定所述数据ID对应的优先级ID;判断所述优先级ID对应的缓存的状态为非空状态时,确定所述缓存的索引为本次调度的缓存索引。
另一个实施例中,如图12所述,所述调度模块82可包括:
第二缓存确定单元824,用于依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
状态确定单元825,用于确定所述已确定的缓存中状态为非空的缓存;
第二索引确定单元826,用于依据预设的优先级调度规则,基于所述非空的缓存对应的缓存索引确定优先级ID最大的缓存索引为本次调度的缓存索引。
可见,本发明实施例可以根据业务需要灵活设置优先发送的数据,也可依据报文中数据的优先级优先发送高优先级的数据,实现方法灵活,有效降低数据时延,尤其是拥塞情况下高优先级数据的时延时间,保证服务质量,提高用户体验。
下面结合具体实施例场景对本发明进行描述。
本实施例提供了另一种降低ONU中拥塞状态下高优先级数据传输时延的装置,包括以下模块:
内部流量管理模块A、数据缓存管理模块B(相当于所述缓存模块81)、数据调度管理模块C(相当于所述调度模块82)和带宽信息管理模块D(所述四个模块后续简称A、B、C、D);其中,
内部流量管理模块A,用于产生ONU内部报文的描述符信息送给数据缓存管理模块B;数据缓存管理模块B,用于根据描述符信息存储对应的数据内容,依次写入缓存;数据调度管理模块C,用于接收带宽信息管理模块D下发的带宽信息,同时根据软件配置的规则(预设的优先级调度规则),进行SP调度,计算本次调度缓存索引,提供给数据缓存管理模块B;数据缓存管理模块B根据此信息(所述本次调度缓存索引)从缓存读出数据提供给带宽信息管理模块D,完成一次完整的调度过程。
基于上述装置的调度方法可包括以下步骤:
第一步:A负责ONU内部的流量管理,其中包括限速,整形,调度等QOS功能,最后提供不同优先级的队列描述符信息给B;
此处为了能够使ONU能达到线速,需要采用预读描述符的方式进行缓存,即在OLT没有带宽下发的情况下,A预先调度一定数量的数据包写入B,保持B内的缓存读出时的连续性,仿真IDLE帧的产生,此时B内部缓存的索引为TCONT\LLID ID+优先级ID,即:相同的TCONT\LLID ID对应的不同优先级的数据包写入不同的缓存空间。
第二步:B上报给D当前缓存的状态,标示有哪些TCONT\LLID ID对应缓存存在有效数据(非空),可供读取,D根据当前OLT下发的带宽信息结合B上报的缓存状态,通知C本次可以调度的TCONT\LLID ID等信息;
第三步:C根据TCONT\LLID ID、预先配置的TCONT\LLID ID与数据优先级的映射关系,采用SP的方式结合当前TCONT\LLID ID下可供读取的队列状态(缓存状态),计算本次调度最高优先级队列ID来作为缓存的索引传送给B,B根据此调度信息索引读出相应数据给D,完成一次调度过程。
其中,C还要记录所有TCONT\LLID ID下面的所有优先级队列缓存的状态和当前调度信息,来保持包调度的完整性,以防止出现错包,乱序情况出现。
图2为实际应用时,所述降低ONU中拥塞状态下高优先级数据传输时延的装置结构示意图,如图2所示,该装置包括:描述符调度模块201;出口描述符缓存202;出口数据缓存管理模块203,出口数据缓存调度模块204,带宽信息处理模块205;其中,描述符调度模块201对应上述A,所述出口描述符缓存202和出口数据缓存管理模块203组成B,出口数据缓存调度模块204对应C,带宽信息处理模块205对应D;其中,
所述描述符调度模块201,提供可以调度的描述符给出口描述符缓存202,以进行描述符的缓存;
所述带宽信息处理模块205,提供当前调度的TCONT\LLID信息(TCONT\LLID ID)给出口数据缓存调度模块204;
所述分类配置模块207,提供预配置的优先级信息给出口数据缓存调度模块204;
所述出口数据缓存调度模块204,跟据出口数据缓存管理模块203提供的缓存大小和反压信息(即缓存状态),以及出口描述符缓存202提供的描述符缓存大小和对应的反压信息(即缓存状态),并结合TCONT\LLID信息和预配置的优先级信息,内部使用绝对优先级的方式输出当前调度的描述符地址给出口描述符缓存202和出口数据缓存管理模块203,并从出口描述符缓存202和出口数据缓存管理模块203中读出相应的描述符和数据送给带宽信息处理模块205。
图3为场景实施例中所述降低ONU中拥塞状态下高优先级数据传输时延的方法流程示意图,如图3所示,该方法包括:
S301:报文进入ONU;
S302:根据出口描述符缓存202的空满指示信号,判断是否可以写入描述符,并判断报文中是否有可以预先调度的描述符(报文中有非空队列),如果有非空队列,则进行S303;否则,继续判断(执行S302);
S303:将可以预先调度的队列的描述符写入对应的出口描述符缓存202,缓存的索引为:TCONT\LLID ID+PRI ID,即不同TCONT\LLID ID对应的优先级分开存储,这里面需要查表来指示哪一路缓存对应哪一个TCONT\LLID ID下面的哪一个优先级队列,TCONT的数量最大为32个,每个TCONT下最大8个优先级队列,缓存的资源可以灵活配置,映射表可以灵活选择几种固定的映射关系,也可以由上层软件配置;
S304:根据当前的带宽信息,即可以调度的TCONT\LLID ID,当前出口描述符缓存的对应该TCONT\LLID ID下面所有优先级队列的状态信息,当前保存的已经调度的TCONT\LLID ID和对应的优先级信息,以及当前可以调度的TCONT\LLID ID对应的数据缓存(出口数据缓存管理模块)的存储状态信息,进行一级SP调度,来确定本次调度的TCONT\LLID ID和对应的优先级(PRI)ID;
ONU在GPON模式下是基于分片调度的,即一段时间内,可以调度不同的TCONT下不同的分片,不一定把整包读完,为了保持包的完整性和连续性,需要维护一个当前所有队列的调度状态信息,如果当前TCONT下已经调度了一个优先级报文,则不能调度其他优先级的报文,防止乱序。此时,如果得到当前保存的TCONT\LLID ID+PRI ID,则执行S307;再通过S305将TCONT\LLID ID+PRI ID对应的剩余报文或者新报文调度出来,继续执行S306,供本次调度使用。
S305:根据描述符信息,将报文数据写入到后级模块(出口数据缓存管理模块203),进行分片处理;
S306:将报文存入当前TCONT\LLID+PRI ID下对应的出口缓存(FIFO,对应出口数据缓存管理模块203),FIFO大小可配置,需同时考虑最大分片长度的配置,缓存的索引为:TCONT\LLID ID+PRI ID,即不同TCONT\LLID ID对应的优先级队列分开存储,这里面需要维护一个当前缓存状态与对应TCONT\LLID ID+PRI ID的映射表,以供S304中进行判断;同时还要把每个TCONT\LLID ID下面所有的优先级队列状态转换成TCONT\LLID状态(即:把所有该TCONT\LLID ID下面所有优先级的队列状态汇聚在一起,采用或的形式反映为该TCONT\LLID ID总的可调度状态),反馈给无源光纤网络(PON)MAC;
S307:根据TCONT\LLID ID读取相应FIFO中的数据包;
此时读取TCONT\LLID ID下哪一个优先级的报文,是由上面S304经过SP调度之后决定的,对于PON MAC而言,接口时序不变,由ONU内部来处理。
S308:将读取的数据包传输给OLT,MAC模块提取出相应的带宽信息到出口数据缓存调度模块。
下面在对图2中各模块进行详细描述。
其中,分类配置模块207提供每个描述符对应的分类配置,此配置可以支持软件配置或者是硬件自动识别,如果软件配置有效,则有软件自行指定哪个TCONT/LLID ID下的哪一路缓存优先级最高,可以任意指定。每一路缓存用1bit表示,最多使用32x8=256bit寄存器来实现全部缓存对应的分类配置;也可以使用硬件自动根据描述符调度模块201产生的报文描述符中携带的信息进行自动识别,因为TM中描述符调度模块201在解析报文包头的时候,同时获取了该报文对应的差分服务代码点(dscp)值或者相关优先级信息,可以供后级模块进行调度使用。这样分类配置模块207可以灵活提供每一路缓存对应的优先级信息,灵活进行调度。
所述出口数据缓存管理模块203的一种结构详见图4,所示401为最小的缓存划分基本单元,包括一个地址生成模块403(ADDR_GEN),用于计算每次更新的地址;缓存控制模块404(FIFO_CTRL),用于根据读写使能产生空满信号;地址生成模块403的划分是由cfg_mode来决定开始地址和结束地址,而cfg_mode就是分类配置模块207中提到的灵活配置的模式;后面为双口1写1读的RAM402,用来存储数据,通过使用多个401模块产生不同的RAM读写地址,实现缓存共享与动态分割功能。
本发明实施例中,对于出口描述符缓存(202)和出口数据缓存管理模块(203)的实现方式是基于FIFO的,缓存的划分原则是基于TCONT\LLID ID+pri ID,即每个TCONT\LLIDID对应的所有pri ID的缓存FIFO分成一组,每一个pri ID对应一个FIFO,为了节省资源,在缓存数量保持不变的情况下,来灵活分配每个TCONT\LLID下pri的数量,可以根据TCONT\LLID的数量和PON模式,来动态划分这些缓存,在GPON模式下TCONT的数量最大是32,而EPON模式下,LLID数量最大是8,此时,假设缓存的数量是a,那么在GPON模式下支持的pri数量可以根据不同的TCONT配置数t而变化,每个TCONT下的FIFO数量为a/t,对于相同的缓存数量,每个LLID下面的FIFO数量为a/l,所示l为LLID的数量,即所有的TCONT和LLID共享缓存的方式来实现缓存的利用率最大化,这里pri的设计即可根据上面缓存的数量,TCONT和LLID的数量而选择支持的pri的数量,可以灵活配置成{8,4,2,1}的方式,这样缓存的划分方式可以用软件配置写表象的方式实现,即逻辑根据配置模式来动态划分缓存的大小。
其中,所述出口数据缓存调度模块204的结构详见图5,该模块是由映射模块501和调度模块502组成,为了考虑后面可扩展性和兼容性,假设N路状态信息对应N路缓存,按照上面的缓存划分,这N路信息每一个bit,代表一个TCONT\LLID下面的pri队列状态,为了支持最大M个pri队列,跟据配置,选择不同的映射关系,映射模块501把N路状态信息,映射成N*M路信息,保证每一个TCONT\LLID都有M路pri状态信息,这样后面的调度模块可以使用相同模块结构进行选择,又可以根据配置做到后面灵活扩展,由此得到的N*M路缓存状态信息,N*M路入口描述符状态信息,N*M路当前调度状态信息,按位相与后,最终得到参与调度模块502的入口信息,然后,每M路入口信息进行调度的原则是基于SP调度方式(即最高优先级的队列最开始调度,直到当前时刻没有该优先级的队列数据,接着调度次高优先级队列,依次类推),由N路子调度器,输出N路最终调度信息,然后进入MUX模块,根据PON MAC输入的当前调度读取单元,决定哪一路调度信息输出给缓存装置,读出数据。
另外,本场景实施例还提供了另一种出口数据缓存管理模块203的结构示意图,上述图4中的结构基于FIFO架构,本实施例基于链表管理的实现缓存架构,如图6所示,包括:链表控制模块601,地址管理模块602,链表指针储存模块603,数据内容储存模块604,其中,
601接收写入报文的描述符的同时向602提起空闲地址申请,602根据内部地址的空闲情况,分配一个空闲地址返回给601,同时把本次地址和下一跳地址写入603保存起来,601根据602返回的地址,把本次的数据包内容写入604进行保存;当601接收到读出的报文描述符,向602提起报文对应的地址申请,602根据头指针的内容,从603里面读出保存的下一跳地址,返回给601,601获得地址后,从604把报文读出。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (11)
1.一种降低光网络单元ONU中拥塞状态下高优先级数据传输时延的方法,其特征在于,该方法包括:
依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;
依据光线路终端OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,计算本次调度的缓存索引;
从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT。
2.根据权利要求1所述的方法,其特征在于,所述从与所述缓存索引对应的缓存中读出数据时,该方法还包括:
记录当前所有缓存的状态以及本次的调度信息,以用于后续的数据调度;所述本次的调度信息至少包括:本次调度的数据和对应存储的缓存。
3.根据权利要求1或2所述的方法,其特征在于,所述依据所述描述符信息,对应存储所述报文中的数据于缓存中,包括:
依据所述描述符信息中的传输容器TCONT\逻辑链路标记LLID ID以及数据的优先级ID为索引、存储所述报文中的数据,同一个TCONT\LLID ID对应的不同优先级的数据写入不同的缓存中;其中,所述数据的优先级越高对应的优先级ID越大。
4.根据权利要求3所述的方法,其特征在于,所述依据光线路终端OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,并基于绝对优先级SP调度方法计算本次调度的缓存索引,包括:
依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
基于预设的优先级调度规则中TCONT\LLID ID与数据优先级的映射表,从映射表中选取当前带宽信息中的TCONT\LLID ID对应的最高优先级的数据ID;
依据所述报文的描述符信息确定所述数据ID对应的优先级ID;
判断所述优先级ID对应的缓存的状态为非空状态时,确定所述缓存的索引为本次调度的缓存索引。
5.根据权利要求3所述的方法,其特征在于,所述依据光线路终端OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,并基于绝对优先级SP调度方法计算本次调度的缓存索引,包括:
依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
确定所述已确定的缓存中状态为非空的缓存;
依据预设的优先级调度规则,基于所述非空的缓存对应的缓存索引确定优先级ID最大的缓存索引为本次调度的缓存索引。
6.一种降低光网络单元ONU中拥塞状态下高优先级数据传输时延的装置,其特征在于,该装置包括:
缓存模块,用于依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;基于调度模块传输的本次调度的缓存索引从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT;
调度模块,用于依据光线路终端OLT下发的当前的带宽信息、预设的优先级调度规则以及所述带宽信息对应的缓存的状态,并基于绝对优先级SP调度方法计算本次调度的缓存索引,并发送给所述缓存模块。
7.根据权利要求6所述的装置,其特征在于,所述调度模块从与所述缓存索引对应的缓存中读出数据时,
所述调度模块,还用于记录当前所有缓存的状态以及本次的调度信息,以用于后续的数据调度;所述本次的调度信息至少包括:本次调度的数据和对应存储的缓存。
8.根据权利要求6或7所述的装置,其特征在于,所述缓存模块包括:
缓存单元,用于依据从报文中解析所得的报文的描述符信息,对应存储所述报文中的数据于缓存中;
读取单元,用于基于调度模块传输的本次调度的缓存索引从与所述缓存索引对应的缓存中读出数据,并最终传输给所述OLT。
9.根据权利要求8所述的装置,其特征在于,所述缓存单元包括:
描述符缓存单元,用于缓存所述描述符信息;
数据缓存单元,用于依据所述描述符缓存单元存储的描述符信息中的传输容器TCONT\逻辑链路标记LLID ID以及数据的优先级ID为索引、存储所述报文中的数据,同一个TCONT\LLID ID对应的不同优先级的数据写入不同的缓存中;其中,所述数据的优先级越高对应的优先级ID越大。
10.根据权利要求9所述的装置,其特征在于,所述调度模块包括:
第一缓存确定单元,用于依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
映射单元,用于基于预设的优先级调度规则中TCONT\LLID ID与数据优先级的映射表,从映射表中选取当前带宽信息中的TCONT\LLID ID对应的最高优先级的数据ID;
第一索引确定单元,用于依据所述报文的描述符信息确定所述数据ID对应的优先级ID;判断所述优先级ID对应的缓存的状态为非空状态时,确定所述缓存的索引为本次调度的缓存索引。
11.根据权利要求9所述的装置,其特征在于,所述调度模块包括:
第二缓存确定单元,用于依据所述当前的带宽信息中的TCONT\LLID ID和所述缓存的索引确定本次调度的缓存;
状态确定单元,用于确定所述已确定的缓存中状态为非空的缓存;
第二索引确定单元,用于依据预设的优先级调度规则,基于所述非空的缓存对应的缓存索引确定优先级ID最大的缓存索引为本次调度的缓存索引。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710091051.3A CN108462649B (zh) | 2017-02-20 | 2017-02-20 | 降低onu中拥塞状态下高优先级数据传输时延的方法和装置 |
PCT/CN2017/097325 WO2018149102A1 (zh) | 2017-02-20 | 2017-08-14 | 一种降低高优先级数据传输时延的方法和装置、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710091051.3A CN108462649B (zh) | 2017-02-20 | 2017-02-20 | 降低onu中拥塞状态下高优先级数据传输时延的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108462649A true CN108462649A (zh) | 2018-08-28 |
CN108462649B CN108462649B (zh) | 2020-07-07 |
Family
ID=63170030
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710091051.3A Active CN108462649B (zh) | 2017-02-20 | 2017-02-20 | 降低onu中拥塞状态下高优先级数据传输时延的方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108462649B (zh) |
WO (1) | WO2018149102A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114553781A (zh) * | 2021-12-23 | 2022-05-27 | 北京秒如科技有限公司 | 一种高效传输层多路径汇聚方法及系统 |
CN117675720A (zh) * | 2024-01-31 | 2024-03-08 | 井芯微电子技术(天津)有限公司 | 消息报文传输方法、装置、电子设备和存储介质 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112804162B (zh) * | 2019-11-13 | 2024-04-09 | 深圳市中兴微电子技术有限公司 | 一种调度方法、装置、终端设备和存储介质 |
WO2024007334A1 (en) * | 2022-07-08 | 2024-01-11 | Huawei Technologies Co., Ltd. | A device and methodology for hybrid scheduling using strict priority and packet urgentness |
CN117499351A (zh) * | 2022-07-26 | 2024-02-02 | 华为技术有限公司 | 报文转发装置及方法、通信芯片及网络设备 |
CN118672807A (zh) * | 2024-08-21 | 2024-09-20 | 格创通信(浙江)有限公司 | 一种报文分类缓存调度方法、装置、芯片及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035389A (zh) * | 2006-03-08 | 2007-09-12 | 上海交通大学 | 在无源光网络的远端设备内进行带宽分配的系统和方法 |
CN101079801A (zh) * | 2006-05-25 | 2007-11-28 | 华为技术有限公司 | 吉比特无源光网络系统中传输上行控制报文的方法 |
CN101754057A (zh) * | 2009-12-11 | 2010-06-23 | 杭州钦钺科技有限公司 | 一种应用于epon终端系统基于绝对优先级的数据调度方法 |
CN103905932A (zh) * | 2014-04-23 | 2014-07-02 | 河北工程大学 | 一种基于NC和QoS感知的服务互通以太网无源光网络系统 |
US9059946B2 (en) * | 2005-09-29 | 2015-06-16 | Broadcom Corporation | Passive optical network (PON) packet processor |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101022677B (zh) * | 2006-02-16 | 2011-03-30 | 华为技术有限公司 | 一种动态业务流分类和映射方法和光网络终端及光接入网 |
CN101662417B (zh) * | 2008-08-26 | 2011-12-21 | 华为技术有限公司 | 多业务适配和承载的方法及设备 |
JP2014011666A (ja) * | 2012-06-29 | 2014-01-20 | Nippon Telegr & Teleph Corp <Ntt> | 上りデータの帯域割当方法及び通信装置 |
-
2017
- 2017-02-20 CN CN201710091051.3A patent/CN108462649B/zh active Active
- 2017-08-14 WO PCT/CN2017/097325 patent/WO2018149102A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9059946B2 (en) * | 2005-09-29 | 2015-06-16 | Broadcom Corporation | Passive optical network (PON) packet processor |
CN101035389A (zh) * | 2006-03-08 | 2007-09-12 | 上海交通大学 | 在无源光网络的远端设备内进行带宽分配的系统和方法 |
CN101079801A (zh) * | 2006-05-25 | 2007-11-28 | 华为技术有限公司 | 吉比特无源光网络系统中传输上行控制报文的方法 |
CN101754057A (zh) * | 2009-12-11 | 2010-06-23 | 杭州钦钺科技有限公司 | 一种应用于epon终端系统基于绝对优先级的数据调度方法 |
CN103905932A (zh) * | 2014-04-23 | 2014-07-02 | 河北工程大学 | 一种基于NC和QoS感知的服务互通以太网无源光网络系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114553781A (zh) * | 2021-12-23 | 2022-05-27 | 北京秒如科技有限公司 | 一种高效传输层多路径汇聚方法及系统 |
CN117675720A (zh) * | 2024-01-31 | 2024-03-08 | 井芯微电子技术(天津)有限公司 | 消息报文传输方法、装置、电子设备和存储介质 |
CN117675720B (zh) * | 2024-01-31 | 2024-05-31 | 井芯微电子技术(天津)有限公司 | 消息报文传输方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108462649B (zh) | 2020-07-07 |
WO2018149102A1 (zh) | 2018-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108462649B (zh) | 降低onu中拥塞状态下高优先级数据传输时延的方法和装置 | |
CN102045258B (zh) | 数据缓存管理方法及装置 | |
KR101607180B1 (ko) | 패킷 재조립 및 재배열 방법, 장치 및 시스템 | |
CN102549552B (zh) | 用于处理流感知网络节点中的数据分组的方法 | |
US8155134B2 (en) | System-on-chip communication manager | |
US6414961B1 (en) | ATM switching with virtual circuit FIFO buffers | |
US20080063004A1 (en) | Buffer allocation method for multi-class traffic with dynamic spare buffering | |
CN103647726A (zh) | 一种报文调度方法及装置 | |
US9063841B1 (en) | External memory management in a network device | |
KR20210065393A (ko) | 수동형 광 네트워크의 통합형 동적 대역 할당 방법 및 장치 | |
CN118509399A (zh) | 一种报文处理方法、装置、电子设备及存储介质 | |
CN103685062A (zh) | 缓存管理方法及装置 | |
CN101594201B (zh) | 链式队列管理结构整合错误数据过滤的方法 | |
CN116955247B (zh) | 一种缓存描述符管理装置及其方法、介质、芯片 | |
CN1965550A (zh) | 处理完整数据突发的方法和装置 | |
CN117793583A (zh) | 报文转发方法、装置、电子设备及计算机可读存储介质 | |
CN116893983A (zh) | 数据缓存方法、设备及介质 | |
WO2019095942A1 (zh) | 一种数据传输方法及通信设备 | |
CN107911317B (zh) | 一种报文调度方法及装置 | |
CN117499351A (zh) | 报文转发装置及方法、通信芯片及网络设备 | |
US9338219B2 (en) | Direct push operations and gather operations | |
CN109450817A (zh) | 时间触发以太网多业务消息发送的混合调度方法 | |
CN113485749A (zh) | 一种数据管控系统及数据管控方法 | |
JP3981627B2 (ja) | Atm−ponスレーブ装置及びその装置の送受信方法 | |
JP2000299686A (ja) | スケジューリング装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |