一种E1仿真实现方法
技术领域
本发明涉及网络仿真领域,一种E1仿真实现方法。
背景技术
伴随着IP网络的不断扩大,IP技术的发展和应用重点也已经由发展初期的“IP over Everything”阶段转向了“Everything over IP”阶段。基于分组网络的电路仿真服务在分组网络上提供了一种传输传统电路交换业务的方法,对于现代网络融合具有重要意义。
分组网络电路仿真设备(TDM Over Packet,简称TDMOP)是基于时分复用(Time Division Multiplex,简称TDM)和IP基础上发展的一项新技术,它通过一系列机制实现了时钟同步和信令传送功能,在分组网络上“透明”的传送TDM码流,无需对数据做任何解释或翻译。TDMOP技术以简单的方式解决了TDM终端设备与IP网络无缝连接的问题,为传统网络的改造提供了一套低成本的解决方案。分组网上TDM业务承载采用了电路仿真业务(Circuit Emulation Service,简称CES)二层业务承载技术,尽可能在分组网络中真实的仿真低速的TDM业务的基本行为与特征。
E1仿真业务实现方式是将TDM业务数据用特殊的电路仿真报文头进行封装,在特殊报文头中携带TDM业务流的帧格式信息、告警信息、信令信息以及同步定时信息。封装后的报文称为伪线(Pseudowire,简称PW)报文,在多协议标签交换(Multi-Protocol LabelSwitching,简称MPLS)等协议对PW报文进行承载,然后通过相应的包交换网络,到达PW出口后解封装,最后重建TDM电路交换业务流。
但是现有的E1仿真技术实现方法的缺点在于:
1)架构复杂,成本较大。
2)支持协议不够灵活,当标准升级时和新标准出现时维护麻烦。
3)时钟恢复主要采用软件实现,占用CPU资源较大,并容易受其他CPU中的其他应用的影响,导致时钟恢复性能降低。
4)上行发送E1数据包的调度算法不够灵活,在网络环境有变化时对时钟恢复的性能有影响。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种E1仿真实现方法,其架构简单、成本较低;可以进行升级;实现时钟恢复,降低对CPU性能要求,避免受到其他应用影响,提高时钟恢复性能。
为达到以上目的,本发明采取的技术方案是:一种E1仿真实现方法,包括如下步骤:
(1)协议封装方向,对接收到的数据进行串行化处理,产生用于差分时钟模式的实时传送协议值;
(2)对(1)中的TDM净荷组装成帧,将(1)中处理后的数据形成缓存数据包,并完成与缓存数据包相应的描述表,向下一步传输数据;
(3)对来自(2)的净荷进行附加包头的操作,根据配置产生控制字信息和实时传送协议信息,对协议进行封装;
(4)将(3)处理后的数据进行时钟域适配,完成以太网MAC处理,通过MII接口将以太网数据发出;
(5)协议解封装方向,将以太网数据接收缓存,完成MAC层处理,形成以太网数据包;
(6)对以太网数据包分类识别,提取净荷,统计状态;
(7)对(6)处理后的净荷码流,完成时钟恢复,并向外发出。
在上述技术方案的基础上,所述(1)中通过16路E1接口接收数据,且在每路上都产生用于差分时钟模式的实时传送协议值。
在上述技术方案的基础上,所述(2)中根据描述表中各帧尾产生的先后顺序,将相应通道的数据向下一步传输。
在上述技术方案的基础上,通过设置两缓存数据包之间的发送间隔,来匹配数据传送带宽。
在上述技术方案的基础上,所述(3)中包头的操作包括以太网目的地址和源地址的填充、以太网络类型的填充,多协议标签交换相关标识的产生。
在上述技术方案的基础上,所述(6)中还包括非匹配的数据包的丢弃、相关控制字的分析、序列号的提取。
在上述技术方案的基础上,所述(7)中可支持使用的恢复时钟支持线路包括:环回时钟恢复、系统时钟恢复、自适应时钟恢复、差分时钟恢复、本地晶振的自由震荡方式恢复。
本发明的有益效果在于:方法简单,降低成本低;时钟恢复算法通过硬件实现,降低对CPU性能需求,避免了和其他应用软件之间的彼此影响,提升时钟恢复性能;硬件时钟恢复配合软件的调度算法,容易适应新标准,可根据现实中网络环境的需求做出合适的选择。
附图说明
图1为本发明实施例E1仿真实现方法的流程框图;
图2为图1中每个步骤的实现流程图。
具体实施方式
以下结合附图对本发明的实施例作进一步详细说明。
如图1和图2所示,本发明提供的一种E1仿真实现方法,包括如下步骤:
(1)协议封装方向,通过16路E1接口接收数据,进行E1时钟与数据选择,对接收到的数据进行串行化处理,产生每路的用于差分时钟模式的实时传送协议(the real-time transport protocol,简称RTP)值,并随串行化的数据一起传输。
(2)主要处理净荷分通道组装和数据缓存。针对每个通道的配置,对来自(1)中的净荷组装成帧,将(1)中处理后的数据存入相应的缓存空间,形成缓存数据包,并完成与缓存数据包相应的描述表,根据描述表中各帧尾产生的先后顺序,将相应通道的数据向下一步传输。
(3)对来自(2)的净荷进行附加包头的操作,包头的操作包括以太网目的地址和源地址的填充、以太网络类型的填充,多协议标签交换(Multi-Protocol Label Switching,简称MPLS)相关标识的产生,并根据配置产生控制字信息和RTP信息,可根据以太网的最小帧长需求进行字节填充(在本地2M数据流有缺陷情况下,净荷可以按配置的要求被抑制),按协议要求将这些信息包头信息和净荷按顺序发送。
(4)将(3)处理后的数据进行时钟域适配,完成以太网MAC处理,本实例中通过100M的MII接口将以太网数据发出。
(5)协议解封装方向,本实施例从100M的MII接口将以太网数据接收缓存,完成MAC层处理,形成以太网数据包,将自目的地址开始的以太网数据包向下发出。
(6)对(5)发出的以太网数据包分类识别、提取净荷、统计状态,其中还包括非匹配的数据包的丢弃、相关控制字的分析、序列号的提取。
(7)对(6)处理后的净荷码流,完成2M时钟恢复,并根据恢复的时钟将2M码流从E1接口发送出去,包括时钟沿选择,可支持使用的恢复时钟支持线路包括:环回时钟恢复、系统时钟恢复、自适应时钟恢复、差分时钟恢复、本地晶振的自由震荡方式恢复。时钟处理时会将检测到的包丢失信息传递给发送包协议处理,以便它得到发送控制字中的来自硬件检测到的包丢失信息。
本实施例中,用来传输TDM净荷的基于以太网的MPLS基本封装格式如表1所示:
表1
表格表1的简要说明如下:
DMAC:以太网的目的MAC地址,6字节长。
SMAC:以太网的源MAC地址,6字节长。
ETH_TYPE:以太网类型字段,2字节长,此值由软件设置寄存器的缺省值为(0X8847),用来指示以太网类型为MPLS。
MPLS标签栈:每层4个字节(可选项),MPLS的格式如下
1.LABEL:20bit流标签。
2.exp:3bit exp,一般为COS。
3.S:1bit,标签栈底指示,MPLS可以嵌套,标识嵌套是否结束。
4.TTL:8bit TTL,用来指示生存时间。
本实施例中利用MPLS标签栈中的底层标签来设置伪线标签PW_LABLE以及相关比特。
CTRLWORD:4字节,其基本格式如下:
其中,L(比特4):设置为1时,指示TDM净荷无效。
R(比特5):比特置为1时,表示本地检测到远端丢包。
RSV and FRG(比特6-比特9):在本实施例中固定设置为0。
LEN(比特10-比特15):包长指示,当非结构化仿真(Structure-Agnostic Time Division Multiplexing(TDM)over Packet,简称SATOP)包长(即控制字+TDM净荷长度)小于64字节时候,该值为实际的SATOP包长度值;否则,该值为0。
Sequence number(比特16-比特31):序列号,每发一个包,序列号循环递增,对端设备可以用此检测是否丢包,以及对收到的包重新排序。序列号空间为16比特的无符号循环空间,其初始值应为随机值。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。