CN102395058B - 一种处理ODUk帧的方法及装置 - Google Patents
一种处理ODUk帧的方法及装置 Download PDFInfo
- Publication number
- CN102395058B CN102395058B CN201110331217.7A CN201110331217A CN102395058B CN 102395058 B CN102395058 B CN 102395058B CN 201110331217 A CN201110331217 A CN 201110331217A CN 102395058 B CN102395058 B CN 102395058B
- Authority
- CN
- China
- Prior art keywords
- data
- caching
- oduk
- read
- module
- 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
Landscapes
- Time-Division Multiplex Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种处理ODUk帧的方法及装置,该方法包括:检测ODUk帧,当检测到ODUk帧的帧头时,对所述ODUk帧进行解映射;将解映射出的数据分别进行缓存;根据缓存的数据是否达到预定数量来决定是否读取缓存的数据。通过本发明可以实现多个ODUk帧对齐,以正确恢复客户业务,从而有效的减少了设计的复杂度,提高效率,节省资源。
Description
技术领域
本发明涉及通讯领域,特别涉及一种OTN系统中处理ODUk帧的方法及装置。
背景技术
随着客户业务的种类和传输容量的不断增加,传输设备需要能够灵活的支持用户业务同时映射到多个低阶光通道数据单元(ODUk)帧,k可以定义为0、1、2、3...等的整数,用来满足业务传输容量的需要。
在系统的数据传输过程中,用户业务首先被按照高低字节映射到多个低阶ODUk帧,这些低阶ODUk是采用统一的帧格式,然后再映射到高阶ODUk中,由于经过不同的映射解映射路径,且各路径是相互独立的,那么最终承载客户业务的低阶ODUk由高阶ODUk解映射出来时会出现帧头没有对齐的现象。如果不将承载客户业务的低阶ODUk进行对齐,会导致无法恢复出客户业务。
G.709协议规定了不同时分复用的方式,以及可能的复用结构。光通路数据单元支路单元群(ODTUG2)映射到光通路净荷单元(OPU2)。通过时分复用的方式,j(j≤4)ODU2和16-4*jODU1的混合信号可以复用到ODTUG3。ODTUG3映射到OPU3。
图1显示了如何将4个ODU1信号复用到OPU2信号的示意图。ODU1信号具有扩展的帧定位开销,并且通过判决开销(JOH)异步映射到光通路数据支路单元1到2(ODTU12)。在信号映射到OPU2后,4个ODTU12信号时分复用到光通路数据单元支路单元群(ODTUG2)。
现有相关技术中没有提供多个ODUk帧对齐的方法。
发明内容
本发明要解决的技术问题是提供一种处理ODUk帧的方法及装置,以实现多个ODUk帧对齐。
为了解决上述技术问题,本发明提供了一种处理光通道数据单元(ODUk)帧的方法,包括:
检测ODUk帧,当检测到ODUk帧的帧头时,对所述ODUk帧进行解映射;
将解映射出的数据分别进行缓存;
根据缓存的数据是否达到预定数量来决定是否读取缓存的数据。
进一步地,上述方法还具有下面特点:所述根据缓存的数据是否达到预定数量来决定是否读取缓存的数据,包括:
若缓存的所有数据均达到预定数量,则读取所述缓存的数据。
进一步地,上述方法还具有下面特点:在所述读取所述缓存的数据的过程中,包括:
若判断所述缓存的数据中至少有一个小于预定数量,则停止读取数据。
进一步地,上述方法还具有下面特点:所述读取所述缓存的数据的过程中,包括:
判断读取的数据对应的帧头的位置是否一致,若一致,则将读取出的数据恢复成客户业务;若不一致,则清空所述缓存的数据。
进一步地,上述方法还具有下面特点:所述将解映射出的数据分别进行缓存是通过下面方式实现的:
使用先进先出堆栈或指针自增的随机存取存储器对解映射出的数据进行缓存。
为了解决上述问题,本发明还提供了一种处理光通道数据单元(ODUk)帧的装置,包括:解映射模块、写控制模块、缓存模块和读控制模块,其中,
所述解映射模块,用于检测ODUk帧,当检测到ODUk帧的帧头时,对所述ODUk帧进行解映射;
所述写控制模块,用于将解映射出的数据分别写入各自的缓存模块中;
所述读控制模块,用于根据所述缓存模块缓存的数据是否达到预定数量来决定是否读取缓存的数据。
进一步地,上述方法还具有下面特点:
所述读控制模块,具体用于若判断所述每个缓存模块缓存的数据均达到预定数量,则读取所述缓存的数据。
进一步地,上述方法还具有下面特点:
所述读控制模块,在所述读取所述缓存的数据的过程中还用于,若判断所述缓存模块中至少有一个缓存的数据小于预定数量,则停止读取数据。
进一步地,上述方法还具有下面特点:还包括恢复模块,
所述读控制模块,还用于判断读取的数据对应的帧头的位置是否一致,若一致,则触发所述恢复模块;若不一致,则清空所述缓存的数据;
所述恢复模块,用于将读取出的数据恢复成客户业务。
进一步地,上述方法还具有下面特点:所述缓存模块为:
先进先出堆栈或指针自增的随机存取存储器。
综上,本发明提供一种处理ODUk帧的方法及装置,可以实现多个ODUk帧对齐,以正确恢复客户业务,从而有效的减少了设计的复杂度,提高效率,节省资源。
附图说明
图1为现有技术中的将4个ODU1信号复用到OPU2信号的示意图;
图2为本发明实施例的一种处理ODUk帧的装置的示意图;
图3为本发明实施例的处理ODUk帧的方法的流程图;
图4是本发明实施例的OTN系统中处理多个ODUk帧的流程图;
图5是本发明实施例的控制缓存的读写的流程图。
具体实施方式
在系统的数据传输过程中,用户业务首先被按照高低字节映射到多个低阶ODUk帧,然后再映射到高阶ODUk中。由于经过不同的映射解映射路径,且各路径是相互独立的,那么最终承载客户业务的低阶ODUk由高阶ODUk解映射出来时会出现帧头没有对齐的现象。如果不将承载客户业务的低阶ODUk进行对齐,会导致无法恢复出客户业务。
为了实现对齐,需要寻找到一个对齐的起点,由于客户业务在映射到ODUk帧时是同时进行的,只要保证各个ODUk在映射时帧头是对齐的(ODUk是G.709中定义的帧结构,帧头是帧结构中用于表示帧的开始,当客户业务映射到多个ODUk时,只要这些ODUk的帧头是出现在同一时刻,即时间上是对齐的,那么任何一时刻客户业务的不同部分作为ODUk净荷映射到不同ODUk帧结构中的位置就能保持一致)那么在解映射利用帧头对齐就能保证恢复出来的客户业务是正确的。
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图2为本发明实施例的一种处理ODUk帧的装置的示意图,如图2所示,本实施例的装置包括:解映射模块、写控制模块、缓存模块和读控制模块,其中,
所述解映射模块,用于检测ODUk帧,当检测到ODUk帧的帧头时,对所述ODUk帧进行解映射;
所述写控制模块,用于将解映射出的数据分别写入各自的缓存模块中;
所述读控制模块,用于根据所述缓存模块存储的数据是否达到预定数量来决定是否读取缓存的数据。
本实施例的装置还包括恢复模块:
所述读控制模块,还用于判断读取的数据对应的帧头的位置是否一致,若一致,则触发所述恢复模块;若不一致,则清空所述缓存的数据。
所述恢复模块,用于将读取出的数据恢复成客户业务。
其中,所述读控制模块具体用于,若判断所述每个缓存模块存储的数据均达到预定数量,则读取所述缓存的数据。
所述读控制模块在所述读取所述缓存的数据的过程中还用于,若判断所述缓存模块中至少有一个缓存的数据小于预定数量,则停止读取数据。
其中,本实施例的所述缓存模块为:先进先出堆栈,或指针自增的随机存取存储器。
本发明实施例中使用先进先出堆栈(FIFO)或者指针自增的随机存取存储器(RAM)以实现多个ODUk帧的数据对齐,并可完成客户业务数据的恢复,不但实现多个ODUk帧的数据对齐,而且同时完成了ODUk的解映射,设计简洁,控制电路简单,有效的减少了设计的复杂度,提高效率,节省资源。
这种缓存装置的另一个特点是可以被清零或者复位,即存在一个控制开关,一旦这个开关被设置,则这个装置将回复到初始状态。这种开关将在多个缓存存入了数据却无法成功完成数据对齐操作时打开,将事先存入的无效数据清除,等待下一次的数据对齐操作。
本发明实施例还提供了一种可实现多个ODUk帧对齐的方法,所述方法包括:对多个承载客户业务的ODUk帧进行对齐,并对ODUk帧进行解映射,然后恢复客户业务。图3为本发明实施例的处理ODUk帧的方法的流程图,如图3所示,包括下面步骤:
S10、检测ODUk帧,当检测到ODUk帧的帧头时,对所述ODUk帧进行解映射;
S20、将解映射出的数据分别进行缓存;
S30、根据缓存的数据是否达到预定数量来决定是否读取缓存的数据。
为了对各个ODUk帧进行对齐,本实施例使用缓存将各个ODUk帧的数据保存下来,缓存的写操作根据各个ODUk帧的帧头来启动,并只在数据有效时写缓存。
当每个ODUk帧的缓存均为非空(即均达到预定数量)时,开始同时从缓存中读取数据,在读缓存的同时对各个缓存中找到的帧头进行对齐判断,并去掉帧头和开销部分,将净荷部分组装成客户业务,完成业务恢复。
当各个ODUk帧的缓存中有一个存储的数据没有达到预定数量时,停止从缓存中读取数据,直到每个ODUk帧的缓存的数据均达到预定数量再开始读取数据。
为了保证数据对齐,各个缓存的深度至少需要有一帧的大小。各个ODUk帧的缓存的读取操作的条件为各个缓存均为非空,即写入缓存的数据都大于一定数量。停止读数据的条件是根据各个缓存只要有一个出现几乎为空,即写入缓存的数据少于一定数量,这样能保证进行对齐时不会出现缓存读空和写满的现象。
图4是本发明实施例的OTN系统中处理多个ODUk帧的流程图,如图4所示,包括下面步骤:
步骤101、在进行对齐之前,首先要确定各个ODUk都定帧成功,即没有出现LOF(OTUk帧丢失)/LOM(OTUk复帧丢失)/OOF(OTUk帧失步)/OOM(OTUk复帧失步)。
步骤102、同时在确定完成后要对各个缓存做一次复位,即将缓存的数据清空;
步骤103、复位完成后,各个缓存等待各自ODUk的帧头;
步骤104、当帧头到来时开始启动写操作,并在数据有效时将数据写入缓存,然后可以同时执行步骤105和步骤106;
步骤105、判断是否有任意一个缓存是否出现满现象,若是,则转向步骤102,否则继续写数据,转向步骤104;
步骤106、判断各个缓存中数据个数是否达到一定数量(非空),若是,则转向步骤107,否则转向步骤104;
步骤107、开始从缓存中读取数据,当有任意一个缓存中数据的个数小于一定数量(几乎为空)时停止从缓存中读取数据。
由于缓存的深度为一帧,所以要求ODUk帧之间帧头的偏移最大不能超过一帧的帧长,如果出现则无法完成对齐操作。
步骤108、在从缓存中读出数据的同时对各个ODUk帧的帧头进行位置比较,如果帧头位置均一致,表示写入和读取控制均正常,能够正确恢复出客户业务,转向步骤109;如果帧头位置有不一致的,则转到步骤102;
步骤109、在判断帧头位置的同时可以对ODUk帧进行解映射,去掉帧头和开销,恢复出客户业务。
图5是本发明实施例的控制缓存的读写的流程图,如图5所示,包括下面步骤:
步骤201、对缓存进行复位;
步骤202、停止读所有的缓存;
步骤203、判断各个缓存存储的数据是否均达到预定数量,若是,则转向步骤204,否则转向步骤202;
步骤204、读取所有的缓存的数据;
步骤205、判断缓存中存储的数量是否有小于所述预定数量,若有,则转向步骤202,否则继续读取数据,转向步骤204。
本发明实施例的方法不需要复杂的控制电路,不需要用指针去计算各个ODUk帧的帧头之间的关系,通过各个缓存独立寻找各个ODUk帧的帧头来进行写缓存操作,并根据缓存的状态来同时读取各个缓存,完成ODUk帧的对齐正确恢复客户业务,从而有效的减少了设计的复杂度,提高效率,节省资源。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
以上仅为本发明的优选实施例,当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (6)
1.一种处理光通道数据单元(ODUk)帧的方法,包括:
检测各ODUk帧,当检测到ODUk帧的帧头时,对所述ODUk帧进行解映射;
将解映射出的数据分别写入对应的缓存;
根据缓存的数据是否达到预定数量来决定是否读取缓存的数据;当读取缓存中的ODUk数据时,对各个ODUk帧的帧头进行位置比较;
所述根据缓存的数据是否达到预定数量来决定是否读取缓存的数据,包括:
若各个ODUK帧的缓存的数据均达到预定数量,则同时读取所述缓存的数据;
所述读取所述缓存的数据的过程中,包括:
判断读取的数据对应的帧头的位置是否一致,若一致,则将读取出的数据恢复成客户业务;若不一致,则清空所述缓存的数据。
2.如权利要求1所述的方法,其特征在于:在所述读取所述缓存的数据的过程中,包括:
若判断所述缓存的数据中至少有一个小于预定数量,则停止读取数据。
3.如权利要求1-2任一项所述的方法,其特征在于:所述将解映射出的数据分别进行缓存是通过下面方式实现的:
使用先进先出堆栈或指针自增的随机存取存储器对解映射出的数据进行缓存。
4.一种处理光通道数据单元(ODUk)帧的装置,包括:解映射模块、写控制模块、缓存模块和读控制模块,其中,
所述解映射模块,用于检测ODUk帧,当检测到ODUk帧的帧头时,对所述ODUk帧进行解映射;
所述写控制模块,用于将解映射出的数据分别写入各自的缓存模块中;
所述读控制模块,用于根据所述缓存模块缓存的数据是否达到预定数量来决定是否读取缓存的数据;
当读取缓存中的ODUk数据时,对各个ODUk帧的帧头进行位置比较;
所述读控制模块,具体用于若判断所述每个缓存模块缓存的数据均达到预定数量,则同时读取所述缓存的数据;
还包括恢复模块,
所述读控制模块,还用于判断读取的数据对应的帧头的位置是否一致,若一致,则触发所述恢复模块;若不一致,则清空所述缓存的数据;
所述恢复模块,用于将读取出的数据恢复成客户业务。
5.如权利要求4所述的装置,其特征在于:
所述读控制模块,在所述读取所述缓存的数据的过程中还用于,若判断所述缓存模块中至少有一个缓存的数据小于预定数量,则停止读取数据。
6.如权利要求4-5任一项所述的装置,其特征在于:所述缓存模块为:
先进先出堆栈或指针自增的随机存取存储器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110331217.7A CN102395058B (zh) | 2011-10-27 | 2011-10-27 | 一种处理ODUk帧的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110331217.7A CN102395058B (zh) | 2011-10-27 | 2011-10-27 | 一种处理ODUk帧的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102395058A CN102395058A (zh) | 2012-03-28 |
CN102395058B true CN102395058B (zh) | 2018-03-23 |
Family
ID=45862254
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110331217.7A Active CN102395058B (zh) | 2011-10-27 | 2011-10-27 | 一种处理ODUk帧的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102395058B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105933244B (zh) * | 2016-04-14 | 2018-11-27 | 浪潮电子信息产业股份有限公司 | 一种通道对齐去偏斜的装置和方法 |
CN107547124B (zh) * | 2016-06-24 | 2021-06-15 | 中兴通讯股份有限公司 | 复位控制方法及装置 |
CN111082858B (zh) * | 2019-12-16 | 2021-03-02 | 烽火通信科技股份有限公司 | 一种基于uvm的高复用性开销仿真系统及方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7512150B2 (en) * | 2003-03-24 | 2009-03-31 | Applied Micro Circuits Corporation | 10 GbE LAN signal mapping to OTU2 signal |
CN100407699C (zh) * | 2005-04-01 | 2008-07-30 | 华为技术有限公司 | 信号拆分合并的方法及装置 |
CN101873517B (zh) * | 2009-04-24 | 2013-08-07 | 华为技术有限公司 | 光传送网的信号传送方法、设备及通信系统 |
CN101645749B (zh) * | 2009-09-04 | 2012-10-10 | 中兴通讯股份有限公司 | 光传送数据单元解映射装置及方法 |
CN101814968B (zh) * | 2010-03-16 | 2014-06-11 | 中兴通讯股份有限公司 | 实现帧头对齐和复帧归零的方法及装置 |
-
2011
- 2011-10-27 CN CN201110331217.7A patent/CN102395058B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN102395058A (zh) | 2012-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1865632B1 (en) | A method and apparatus for signal splitting and synthesizing | |
CN102395058B (zh) | 一种处理ODUk帧的方法及装置 | |
US20070269218A1 (en) | Method and system for transparent transport of optical channel transmission unit signals via an optical transport network | |
CN102281477B (zh) | 一种实现otn业务映射及解映射的方法和装置 | |
CN101141238A (zh) | 超帧帧同步的方法及装置 | |
CN103023613A (zh) | 一种对数据帧长度进行校验的方法及装置 | |
CN101374030B (zh) | 一种光传送网中的虚级联同步系统及方法 | |
CN101529806A (zh) | 用于对vcat/lcas成员进行去偏移的方法和设备 | |
CN110445730A (zh) | 基于WinPcap的网络数据实时采集存储方法和装置 | |
CN101645749B (zh) | 光传送数据单元解映射装置及方法 | |
CN101394335B (zh) | 一种同步数字交叉连接的自路由的方法及系统 | |
CN101951532B (zh) | Otn网络业务缺陷信息传输、获取方法及装置、系统 | |
JP4699913B2 (ja) | 無瞬断切り替え装置 | |
EP2320585A1 (en) | Method and apparatus for improving the effect of the synchronous digital hierarchy virtual concatenation delay compensation buffer | |
CN105515749B (zh) | 一种在异步映射过程中实现时钟透传的方法和系统 | |
CN213069802U (zh) | 非同源时钟数据传输系统 | |
US20040037182A1 (en) | Phase adjusting apparatus, phase adjusting method for use therein, and program for phase adjusting method | |
CN1467956A (zh) | 一种利用帧定位实现包方式数据高位宽到低位宽的格式转换方法 | |
CN101286873B (zh) | 一种以太网错误帧提取接口装置 | |
CN106972906B (zh) | 一种分组光传送网业务交换及映射系统和方法 | |
JP3183441B2 (ja) | 無瞬断切替方法 | |
CN104281546A (zh) | 无线通信装置及方法 | |
KR101048520B1 (ko) | 수신 데이터 복원 장치 및 방법 | |
JP4021566B2 (ja) | データメモリ装置及びデータメモリ制御方法 | |
CN102983929B (zh) | 一种混合粒度虚级联延时补偿的方法及装置 |
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 |