专利名称:Lcas动态无损切换数据带宽的时延补偿方法
技术领域:
本发明涉及一种LCAS动态无损切换数据带宽的时延补偿方法。
背景技术:
在SDH传输业务中,LCAS(Link Capacity Adjustment Scheme,链路容量调整方案)主要功能是利用SDH开销字节自定义控制帧结构,以带内方式控制所承载的数据业务带宽映射所需要的VC(Virtual Capacity,虚容器)的个数,并支持动态无损的带宽(即虚容器个数)切换。这里,对LCAS技术作以简单介绍。LCAS最初又称为VBA(Variable Bandwidth Allocation,可变带宽分配)技术。可以看出,LCAS技术具有带宽灵活和动态调整等特点,当用户带宽发生变化时,可以调整VCG(Virtual Concatenation Group,虚容组)中的Member(成员)个数,这一调整不会对用户的正常业务产生中断。此外,LCAS技术还提供一种容错机制当虚容组中的某成员失效,不会使整个虚容组失效,而是自动地将失效的成员从虚容组中剔除,剩下的正常成员继续传输业务;当失效的成员恢复后,系统自动将该失效成员加入虚容组。一般来说,LCAS技术对VCG调整有两个原因,分别为,链路状态发生变化当LCAS检测到网络上出现某Member失效时,自动减小VCG的容量;如果检测到失效的Member修复后,则自动地增加VCG的容量。这种容量调整对对每个Member来说,都是可行的。带宽配置发生变化LCAS的源端和目的端之间的控制机制,可根据实际开展的业务带宽需求调整VCG的容量,具体地根据业务流量和带宽来调整所用到的VCG容量。另外,VCG还有标识字段GID(Group Identification bit,组标识),其用来标识VCG,同一个VCG的所有成员GID相同。
同时,由于组网方式的不同,使同一VCG的各个VC的传输路径不同,则同一时刻在接收端接收到的VCG的各个VC可能存在时延差,导致不同VC的MFI值不相同,如果不对这些数据加以处理,就会导致数据的错乱,并且会影响LCAS协议动态无损的切换。现有的时延补偿方法由于不涉及LCAS带宽动态调整的协议,无法获取相应的MFI内容,只能通过人工配置时延参数,完成对带宽固定的VCG数据进行缓存,消除组网的时延。这样一来,不仅耗时大而且带宽的调整会导致切换时的数据丢失。
发明内容
针对LCAS动态无损切换数据带宽的时延补偿方法所存在的问题和不足,本发明的目的是提供一种可保证数据次序完整的LCAS动态无损切换数据带宽的时延补偿方法。
本发明是这样实现的一种LCAS动态无损切换数据带宽的时延补偿方法,其特征在于,该方法包括以下步骤a.每组VCG的数据按照VC的顺序存储在存储单元中;b.将每组VCG的MFI队列独立进行调整,调整步骤如下在有效的SQ的MFI队列的首位上寻找最大的MFI值,将小于该最大MFI值的队列内容从首位上删除,直至所有有效的SQ的MFI队列的首位的MFI值均相同;若系统中复帧定义为16个单帧,比较对齐的MFI队列的首位MFI值的低4位,若不为0000,则依次丢弃所有的SQ的MFI队列的内容,直到首位MFI值的低4bit均等于0000;c.处理调整后的MFI队列,并判断所有的有效SQ对应的VC下次出现的MFI值是否与当前的MFI值连续,如果不连续,则跳出该步骤,进入步骤b。
进一步地,所述无损切换数据带宽即带宽调整后在复帧的边界处执行切换动作。
进一步地,所述时延补偿是基于数据存储的方式进行的。
进一步地,所述存储单元具体为DDRSDRAM。
进一步地,所述VCG包含有16个MEMBER(成员),每个MEMBER由16个VC串行连接而成。
进一步地,所述存储单元按照VC在STM中的顺序号VC_NUM对DDRSDRAM的地址进行块分配,每个块内又以支持的VC数划分小块。
进一步地,所述小块存储容量大于VC容量。
本发明可采用FPGA实现之,再结合LCAS协议的要求,实现了一种可避免人工参与的自动消除组网时延差同时又支持LCAS动态切换数据带宽的时延补偿方法。该方法根据存储单元的容量大小可支持多组VCG,同时补偿的时延范围随着存储容量的大小而可调。
下面结合附图,对本发明作出详细描述。
图1为本发明的存储器地址分配示意图;图2为本发明的MFI队列初始状态示意图;图3为本发明的MFI队列对图1进行调整后的状态示意图;图4为本发明的MFI队列最终调整状态示意图;图5为本发明FPGA的结构示意图。
具体实施例方式本发明用FPGA结合LCAS协议的要求而实现的,本发明的虚容组(VCG)包含有16个成员(MEMBER),每个成员由16个虚容器(VC)串行连接而成。本发明的FPGA包括有STM数据流、存储单元、MFI队列、LCAS协议解析、下游解映射模块,(请樊工详细描述)本发明的步骤如下a.每组VCG的数据按照VC的顺序存储在存储单元中;b.将每组VCG的MFI队列独立进行调整,调整步骤如下在有效的SQ的MFI队列的首位上寻找最大的MFI值,将小于该最大MFI值的队列内容从首位上删除,直至所有有效的SQ的MFI队列的首位的MFI值均相同;若系统中复帧定义为16个单帧,则比较对齐的MFI队列的首位MFI值的低4位,若不为0000,则依次丢弃所有的SQ的MFI队列的内容,直到首位MFI值的低4bit均等于0000;c.处理调整后的MFI队列,并判断所有的有效SQ对应的VC下次出现的MFI值是否与当前的MFI值连续,如果不连续,则跳出该步骤,进入步骤b。
本发明在复帧操作中,若带宽调整,仅在复帧的边界处执行切换动作,并且是基于数据存储的方式进行的,按照VC在STM中的顺序号VC_NUM的地址对存储单元进行块分配,每个块内又以支持的VC数划分小块,其小块存储容量大于VC容量。
使用数据存储的方式消除网络延时是通信系统中最常使用的方法,在支持LCAS协议的SDH传输系统中,用于承载数据的单元均以VC为单位,VC虚容器的容量随映射类型不同而不同,本发明中以VC-4为例介绍使用DDRSDRAM作为存储单元的时延补偿方法。其他的VC或其他RAM的同样可应用于本发明。VC-4虚容器的容量为261×9Bytes,一般传送一个包括开销字节的VC-4需要耗时125us,本发明支持2.5G带宽的16个VC-4,如果要消除8ms网络时延差,需要存储器容量至少应该为(8ms/125us)×(261×9Bytes)×16≈2.4MB上述计算方法同样适合于其他类型的VC,消除不同类型VC虚容器时延与存储器容量的计算方法为(T/t)×B×N其中上式中T为待消除时延,t为对应虚容器的单位时延,B为虚容器的单位容量,N为当前支持的数据带宽对应的虚容器数。
本发明为了便于对存储器的读写访问,仍以VC-4为例,需按照VC-4在STM中的顺序号VC_NUM对DDRSDRAM的地址进行块分配,每个块内又以支持的虚容器数划分小块,为了便于地址管理,将每个小块容量划分为212字节,即4096字节,只要保证由于VC的容量小于该存储块的容量即可,即为261×9<4096,故剩余的部分空闲,如图1中的小方框部分所示。
MFI队列是在同一组VCG中具有相同SQ号的VC在LCAS定义的复帧中的位置标志,同一组VCG中的各个SQ对应的VC的MFI值在发送端相同且每发送一个VC自动加一,而在接收端由于网络延时的差异,各个VC对应的MFI值可能不同,为了使同一VCG的所有SQ中的VC的MFI对齐,首先要对VC与其对应的MFI值由LCAS协议处理模块作映射,并将映射后的MFI对应的VC的存储信息及有关的LCAS信息存入队列中,称该队列即为MFI队列,如图2所示,每个VCG组中每个SQ都对应一个MFI队列,VCG组中的VC具体是VC-4。
本发明中,存储器的功能仅仅是机械的按照VC-4的顺序存储数据,而所有的与LCAS有关的协议处理和MFI对齐调整及动态带宽调整功能均基于MFI队列完成。如图2所示,由于接收的有效SQ的MFI队列的首位MFI值不同,即SQ=0的MFI值为0,SQ=1的MFI值为4,SQ=2的MFI值为4,SQ=3的MFI值为1。如果直接发送该数据,就会造成下游数据的错乱,因此,必须对MFI队列进行调整才可发送之。
本发明的MFI对齐的调整算法具体如下a.对MFI队列调整的范围仅限于一个VCG内部,不同的VCG之间不作调整;b.在同一个VCG内有效的SQ的MFI队列首位内寻找最大的MFI值(即对应延时最小的路径),如图2所示,接收到的MFI队列的首位MFI值最大为4,将首位MFI值小于最大的MFI值的队列的首位MFI值丢弃,直到所有有效的SQ的MFI队列首位的MFI值皆相同(即等到通过最长的路径的VC-4到达),如图2所示,对齐的MFI队列的首位MFI值均为4;c.若系统中复帧定义为16个单帧,则比较对齐的MFI队列的MFI值的低4bit值,若不等于0000,则依次丢弃所有有效的SQ对应的MFI队列首位MFI值,直到首位MFI值的低4bit等于0000,即对齐是从复帧边界处开始。如图2所示,对齐并定界的MFI队列的首位MFI值均为0`;d.当每个VCG中所有有效的SQ的MFI队列中的首位MFI值都相同且低4bit值都为0000,则报告对齐且定界状态,并通知下游模块。
e.在MFI对齐且定界状态下,每处理完同一VCG所有的有效SQ对应的VC-4后判断下次出现的MFI值是否与当前的MFI值连续,如果不连续,则说明出现丢帧或其他故障,则马上跳出对齐且定界状态,重新进行对齐定界调整,即跳出该步骤,进入步骤b;并继续调整。
经过调整,本发明已经消除了网络路径带来的时延差,下面介绍如何在消除了网络延时后根据LCAS协议的控制无损的切换数据带宽的技术。
本发明的LCAS协议下的数据带宽即为在本发明中为同一VCG内有效的SQ的个数,有效的SQ被解释为当前正在使用的,承载着有效数据的VC通道。数据带宽的切换在本发明中意味着调整同一VCG内有效的SQ的个数。为了保证无损的切换数据带宽,本发明仅在LCAS处理模块在复帧的边界处执行切换动作,即在复帧的边界处改变SQ的有效状态。这样在每个复帧结束的边界,都重新向下游设备报告接下来的有效SQ的个数,以便下游模块作对应的调整。这样就保证了其无损切换。
如图5所示,本发明以FPGA作为验证平台,内部结构由STM数据流D、存储单元C、MFI队列M、LCAS协议解析L、下游解映射模块N构成。STM数据流D模块的数据以VC的顺序号为物理地址将每个VC承载的数据存入存储器,同时根据LCAS协议解析模块L提供的信息将每个VC的MFI值存入其所在的VCG的SQ中,下游解映射模块N在MFI队列已对齐且定界的状态下将数据从存储器中读出并完成后续的解映射功能。
权利要求
1.一种LCAS动态无损切换数据带宽的时延补偿方法,其特征在于,该方法包括以下步骤a.每组VCG的数据按照VC的顺序存储在存储单元中;b.将每组VCG的MFI队列独立进行调整,调整步骤如下在有效的SQ的MFI队列的首位上寻找最大的MFI值,将小于该最大MFI值的队列内容从首位上删除,直至所有有效的SQ的MFI队列的首位的MFI值均相同;若系统中复帧定义为16个单帧,比较对齐的MFI队列的首位MFI值的低4位,若不为0000,则依次丢弃所有的SQ的MFI队列的内容,直到首位MFI值的低4bit均等于0000c.处理调整后的MFI队列,并判断所有的有效SQ对应的VC下次出现的MFI值是否与当前的MFI值连续,如果不连续,则跳出该步骤,进入步骤b。
2.如权利要求1所述的LCAS动态无损切换数据带宽的时延补偿方法,其特征在于,所述无损切换数据带宽即带宽调整后在复帧的边界处执行切换动作。
3.如权利要求1所述的LCAS动态无损切换数据带宽的时延补偿方法,其特征在于,所述时延补偿是基于数据存储的方式进行的。
4.如权利要求1所述的LCAS动态无损切换数据带宽的时延补偿方法,其特征在于,所述存储单元具体为DDRSDRAM。
5.如权利要求1所述的LCAS动态无损切换数据带宽的时延补偿方法,其特征在于,所述VCG包含有16个MEMBER,每个MEMBER由16个VC串行连接而成。
6.如权利要求4所述的LCAS动态无损切换数据带宽的时延补偿方法,其特征在于,所述存储单元按照VC在STM中的顺序号VC_NUM对DDRSDRAM的地址进行块分配,每个块内又以支持的VC数划分小块。
7.如权利要求6所述的LCAS动态无损切换数据带宽的时延补偿方法,其特征在于,所述小块存储容量大于VC容量。
全文摘要
本发明公开了一种LCAS动态无损切换数据带宽的时延补偿方法,包括步骤a.每组VCG的数据按照VC的顺序存储在存储单元中;b.将每组VCG的MFI队列独立进行调整在有效的SQ的MFI队列的首位上寻找最大的MFI值,将小于该最大MFI值的队列内容从首位上删除,直至所有有效的SQ的首位的MFI值均相同;比较对齐的MFI队列的首位MFI值的低4位,若不为0000,则依次丢弃所有的SQ的MFI队列的内容,直到首位MFI值的低4bit均等于0000;c.处理调整后的MFI队列,并判断下次出现的MFI值是否与当前的MFI值连续,如果不连续,则跳出该步骤,进入步骤b。本发明实现了自动消除组网时延差。
文档编号H04L29/06GK1561074SQ20041003917
公开日2005年1月5日 申请日期2004年2月20日 优先权日2004年2月20日
发明者樊彧, 樊 申请人:港湾网络有限公司