发明内容
有鉴于此,本发明提供了一种选择同步时钟源的方法,能够有效地避免时钟成环。
本发明还提供了一种选择同步时钟源的装置,能够有效地避免时钟成环。
为了达到上述目的,本发明提出的技术方案为:
一种选择同步时钟源的方法,该方法包括:
将同步状态信息SSM进行扩展,使之成为包含时钟源ID和时钟优先级的SSM、以及包含所述时钟源ID和传递所述SSM经过的节点数的SSM;
各网元根据SSM中的时钟源ID和时钟优先级确定包含该SSM的时钟源为当前同步时钟源或备选同步时钟源后,再根据所述时钟源ID对应的传递所述SSM经过的节点数确定出包含该SSM的时钟源是否为最终同步时钟源。
所述将SSM进行扩展,使之成为包含时钟源ID和时钟优先级的SSM、以及包含所述时钟源ID和传递所述SSM经过的节点数的SSM包括:
将SSM的S1时隙的第1位扩展为0或1;
当所述S1时隙的第1位为0或1时,将所述S 1时隙的第2-8位分别扩展为时钟源ID和时钟优先级、或时钟源ID和传递所述SSM经过的节点数。
所述各网元根据SSM中的时钟源ID和时钟优先级确定包含该SSM的时钟源为当前同步时钟源或备选同步时钟源包括:
网元判断出接收到的SSM中的时钟源ID不为网元自身时,进一步根据所述时钟源ID确定为当前同步时钟源时,将该SSM转发到下一网元,并向上一网元回送时钟优先级为最低优先级的SSM消息;
当不为当前同步时钟源时,进一步判断该SSM的优先级是否高于当前同步时钟源的优先级,如果高于,将该SSM转发到下一网元,并向上一网元回送时钟优先级为最低优先级的SSM消息,如果不高于且该SSM的优先级等于当前同步时钟源的优先级,则将该SSM消息的时钟源确定为备选同步时钟源。
所述根据所述时钟源ID对应的传递所述SSM经过的节点数确定出包含该SSM的时钟源是否为最终同步时钟源包括:
当包含传递所述SSM经过的节点数的SSM中的时钟源ID确定为当前同步时钟源时,直接将当前同步时钟源确定为最终同步时钟源,并当该SSM经过的节点数少于当前同步时钟源经过的节点数时,将接收该SSM的端口作为最终同步时钟源的端口;
当包含传递所述SSM经过的节点数的SSM中的时钟源ID确定为备选同步时钟源时,判断该SSM经过的节点数是否少于当前同步时钟源经过的节点数,如果是,则将该SSM所在的时钟源作为最终同步时钟源,并将当前时钟源作为备份时钟源。
一种选择同步时钟源的装置,该装置包括扩展单元和确定单元,其中,
所述扩展单元,用于将同步状态信息SSM进行扩展,使之成为包含时钟源ID和时钟优先级的SSM、以及包含所述时钟源ID和传递所述SSM经过的节点数的SSM;
所述确定单元,用于根据所述扩展单元扩展后的SSM中的时钟源ID和时钟优先级确定包含该SSM的时钟源为当前同步时钟源或备选同步时钟源后,再根据所述扩展单元扩展后的所述时钟源ID对应的传递所述SSM经过的节点数确定出包含该SSM的时钟源是否为最终同步时钟源。
所述扩展单元包括第一扩展子单元和第二扩展子单元,其中,
所述第一扩展子单元,用于将SSM的S1时隙的第1位扩展为0或1;
所述第二扩展子单元,用于当所述第一扩展子单元将S1时隙的第1位扩展为0或1时,将所述S1时隙的第2-8位分别扩展为时钟源ID和时钟优先级、或时钟源ID和传递所述SSM经过的节点数。
所述确定单元包括第一确定单元和第二确定单元,其中,
所述第一确定单元,用于根据SSM中的时钟源ID和时钟优先级确定包含该SSM的时钟源为当前同步时钟源或备选同步时钟源;
所述第二确定单元,用于根据所述第一确定单元确定出为当前同步时钟源或备选同步时钟源的时钟源ID对应的传递所述SSM经过的节点数,确定出包含该SSM的时钟源是否为最终同步时钟源。
所述第一确定单元包括第一确定子单元和第二确定子单元,其中,
所述第一确定子单元,用于判断出接收到的SSM中的时钟源ID不为网元自身时,进一步根据所述时钟源ID确定为当前同步时钟源时,将该SSM转发到下一网元,并向上一网元回送时钟优先级为最低优先级的SSM消息;
所述第二确定子单元,用于当不为当前同步时钟源时,进一步判断该SSM的优先级是否高于当前同步时钟源的优先级,如果高于,将该SSM转发到下一网元,并向上一网元回送时钟优先级为最低优先级的SSM消息,如果不高于且该SSM的优先级等于当前同步时钟源的优先级,则将该SSM消息的时钟源确定为备选同步时钟源。
所述第二确定单元包括第三确定子单元和第四确定子单元,其中,
所述第三确定子单元,用于当包含传递所述SSM经过的节点数的SSM中的时钟源ID被第一确定子单元确定为当前同步时钟源时,直接将当前同步时钟源确定为最终同步时钟源,并当该SSM经过的节点数少于当前同步时钟源经过的节点数时,将接收该SSM的端口作为最终同步时钟源的端口;
所述第四确定子单元,用于当包含传递所述SSM经过的节点数的SSM中的时钟源ID被第二确定子单元确定为备选同步时钟源时,判断该SSM经过的节点数是否少于当前同步时钟源经过的节点数,如果是,则将该SSM所在的时钟源作为最终同步时钟源,并将当前时钟源作为备份时钟源。
综上所述,本发明所采用的选择同步时钟源方法和装置,是通过对SSM消息扩展为两种格式的消息,即包含时钟源ID和时钟优先级、以及包含所述时钟源ID和传递所述SSM经过的节点数,当网元接收到包含时钟源ID和时钟优先级的SSM时,能够确定出该SSM所在的时钟源是否为当前同步时钟源或备选同步时钟源,当为当前同步时钟源或备选同步时钟源、并再次接收到该时钟源ID的SSM,且该消息为包含传递所述SSM经过的节点数时,能够确定出最终同步时钟源。由于本发明方法是通过时钟源ID、时钟优先级和传递所述SSM经过的节点数来共同确定最终同步时钟源的,因而不仅能够提供出包含时钟源ID、时钟质量和时钟源跳数的完整的时钟源信息,而且还从根本上避免了时钟成环;进一步地,当存在多条时钟路径时,保证能够选择最短路径。
具体实施方式
为了解决本发明提出的技术问题,本发明所述方案的具体实现包括:
将SSM进行扩展,使之成为包含时钟源ID和时钟优先级的SSM、以及包含所述时钟源ID和传递所述SSM经过的节点数的SSM;各网元根据SSM中的时钟源ID和时钟优先级确定包含该SSM的时钟源为当前同步时钟源或备选同步时钟源后,再根据所述时钟源ID对应的传递所述SSM经过的节点数确定出包含该SSM的时钟源是否为最终同步时钟源。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
图2为本发明选择同步时钟源方法的工作流程图。如图2所示,该流程包括:
步骤201:将SSM进行扩展,使之成为包含时钟源ID和时钟优先级的SSM、以及包含所述时钟源ID和传递所述SSM经过的节点数的SSM。
本步骤中,所述将SSM进行扩展,使之成为包含时钟源ID和时钟优先级的SSM、以及包含所述时钟源ID和传递所述SSM经过的节点数的SSM包括:
将SSM的S1时隙的第1位扩展为0或1;
当所述S1时隙的第1位为0或1时,将所述S1时隙的第2-8位分别扩展为时钟源ID和时钟优先级、或时钟源ID和传递所述SSM经过的节点数。
具体可以为:将所述S1时隙的第1位扩展为0,将所述S1时隙的第2-4位表示为时钟源ID、第5-8位表示为时钟优先级;将所述S1时隙的第1位扩展为1,将所述S1时隙的第2-4位表示为时钟源ID、第5-8位表示为传递所述SSM经过的节点数,以及,将所述S1时隙的第1位扩展为0,将所述S1时隙的第2-3位表示为时钟源ID、第5-8位表示为时钟优先级、第4位保留;将所述S1时隙的第1位扩展为1,将所述S1时隙的第2-3位表示为时钟源ID、第4-8位表示为传递所述SSM经过的节点数。
需要说明的是,上述扩展方式仅仅是举例说明,实际中还可采用其他的扩展方式,只要扩展的位数能够满足同步网络的需求即可。
步骤202:各网元根据SSM中的时钟源ID和时钟优先级确定包含该SSM的时钟源为当前同步时钟源或备选同步时钟源后,再根据所述时钟源ID对应的传递所述SSM经过的节点数确定出包含该SSM的时钟源是否为最终同步时钟源。
在本步骤中,所述各网元根据SSM中的时钟源ID和时钟优先级确定包含该SSM的时钟源为当前同步时钟源或备选同步时钟源包括:
网元判断出接收到的SSM中的时钟源ID不为网元自身时,进一步根据所述时钟源ID确定为当前同步时钟源时,将该SSM转发到下一网元,并向上一网元回送时钟优先级为最低优先级的SSM消息;
当不为当前同步时钟源时,进一步判断该SSM的优先级是否高于当前同步时钟源的优先级,如果高于,将该SSM转发到下一网元,并向上一网元回送时钟优先级为最低优先级的SSM消息,如果不高于且该SSM的优先级等于当前同步时钟源的优先级,则将该SSM消息的时钟源确定为备选同步时钟源。
所述根据所述时钟源ID对应的传递所述SSM经过的节点数确定出包含该SSM的时钟源是否为最终同步时钟源包括:
当包含传递所述SSM经过的节点数的SSM中的时钟源ID确定为当前同步时钟源时,直接将当前同步时钟源确定为最终同步时钟源,并当该SSM经过的节点数少于当前同步时钟源经过的节点数时,将接收该SSM的端口作为最终同步时钟源的端口;
当包含传递所述SSM经过的节点数的SSM中的时钟源ID确定为备选同步时钟源时,判断该SSM经过的节点数是否少于当前同步时钟源经过的节点数,如果是,则将该SSM所在的时钟源作为最终同步时钟源,并将当前时钟源作为备份时钟源。
具体地,当所述S 1时隙的第1位为0,将所述S1时隙的第2-8位扩展为时钟源ID和时钟优先级;当所述S 1时隙的第1位为1,将所述S 1时隙的第2-8位扩展为时钟源ID和传递所述SSM经过的节点数时,本步骤的具体操作可以为:
当被同步网元收到S 1第1位为0的SSM时,进行如下处理:
判断时钟源ID是否为被同步网元自身,如果是,则说明时钟同步环,丢弃这个同步消息,并将业务端口置为无效时钟同步源;如不是,则判断是否为当前同步时钟源,如果是当前同步时钟源,则向同步路径其它端口转发SSM,并反向回送时钟源优先级为0xf的扩展SSM,如果不是当前同步时钟源,则比较SSM的优先级与当前同步时钟源的优先级,如果高于当前同步时钟源优先级,将跟随时钟切换到本业务端口(从本业务端口恢复线路时钟作为网元的业务工作时钟),同时向时钟同步路径其它端口转发SSM,并并反向回送时钟源优先级为0xf的扩展SSM,如果不高于,且SSM的优先级与当前同步时钟源的优先级相同,则将本业务口置为备选同步时钟源(备选同步时钟源可以为多个),SSM停此转发,如果小于当前同步时钟源,丢弃该SSM。
被同步网元收到S1第1位为1的SSM时,进行如下处理:
通过时钟源ID判断是否是当前同步时钟源或是备选同步时钟源,如果都不是,丢弃此时钟源消息;否则,判断是否为当前同步时钟源,如果不是当前同步时钟源,比较当前同步时钟源记录的跳数,如果相等,或当前同步时钟源跳数较少,保留现有状态,并记录备份时钟源跳数,停止对应SSM转发,如果SSM消息时钟源跳数少,则切换时钟源,原当前同步时钟源改为备份同步时钟源,并在同步路径上转发SSM(跳数加1);如果是当前同步时钟源,比较当前同步时钟源跳数与SSM跳数,如果SSM中的跳数少,更改跟随时钟源端口,并在同步路径上转发SSM(跳数加1),否则丢弃此SSM。
至此,即完成了本发明选择同步时钟源方法的整个工作流程。
基于上述方法,图3给出了本发明选择同步时钟源装置的结构示意图,如图3所示,该装置包括扩展单元31和确定单元32,其中,
所述扩展单元31,用于将同步状态信息SSM进行扩展,使之成为包含时钟源ID和时钟优先级的SSM、以及包含所述时钟源ID和传递所述SSM经过的节点数的SSM。
进一步地,所述扩展单元31包括第一扩展子单元311和第二扩展子单元312,其中,
所述第一扩展子单元311,用于将SSM的S1时隙的第1位扩展为0或1;
所述第二扩展子单元312,用于当所述第一扩展子单元311将S1时隙的第1位扩展为0或1时,将所述S1时隙的第2-8位分别扩展为时钟源ID和时钟优先级、或时钟源ID和传递所述SSM经过的节点数。
所述确定单元32,用于根据所述扩展单元31扩展后的SSM中的时钟源ID和时钟优先级确定包含该SSM的时钟源为当前同步时钟源或备选同步时钟源后,再根据所述扩展单元扩展后的所述时钟源ID对应的传递所述SSM经过的节点数确定出包含该SSM的时钟源是否为最终同步时钟源。
且所述确定单元32又可包括第一确定单元321和第二确定单元322,其中,
所述第一确定单元321,用于根据SSM中的时钟源ID和时钟优先级确定包含该SSM的时钟源为当前同步时钟源或备选同步时钟源;
所述第二确定单元322,用于根据所述第一确定单元321确定出为当前同步时钟源或备选同步时钟源的时钟源ID对应的传递所述SSM经过的节点数,确定出包含该SSM的时钟源是否为最终同步时钟源。
进一步地,所述第一确定单元321包括第一确定子单元3211和第二确定子单元3212,所述第二确定单元322包括第三确定子单元3221和第四确定子单元3222,其中,
所述第一确定子单元3211,用于判断出接收到的SSM中的时钟源ID不为网元自身时,进一步根据所述时钟源ID确定为当前同步时钟源时,将该SSM转发到下一网元,并向上一网元回送时钟优先级为最低优先级的SSM消息;
所述第二确定子单元3212,用于当不为当前同步时钟源时,进一步判断该SSM的优先级是否高于当前同步时钟源的优先级,如果高于,将该SSM转发到下一网元,并向上一网元回送时钟优先级为最低优先级的SSM消息,如果不高于且该SSM的优先级等于当前同步时钟源的优先级,则将该SSM消息的时钟源确定为备选同步时钟源;
所述第三确定子单元3221,用于当包含传递所述SSM经过的节点数的SSM中的时钟源ID被第一确定子单元3211确定为当前同步时钟源时,直接将当前同步时钟源确定为最终同步时钟源,并当该SSM经过的节点数少于当前同步时钟源经过的节点数时,将接收该SSM的端口作为最终同步时钟源的端口;
所述第四确定子单元3222,用于当包含传递所述SSM经过的节点数的SSM中的时钟源ID被第二确定子单元3212确定为备选同步时钟源时,判断该SSM经过的节点数是否少于当前同步时钟源经过的节点数,如果是,则将该SSM所在的时钟源作为最终同步时钟源,并将当前时钟源作为备份时钟源。
至此,即得到了本发明所采用的选择同步时钟源装置。图3所述装置的具体工作流程可参见图2,这里不再赘述。
以下以图1所示网络结构来举例说明本发明实施例的具体实现,如下:
对外时钟源1的处理:
首先,外时钟源接入网元A发送S1时隙的第1位扩展为0的SSM,通过联接线路,同时向其他网元发送S1时隙第1位为0的SSM,被同步网元接收到该SSM后,如果SSM中的时钟源ID是当前同步时钟源或备选同步时钟源,反向发送S1时隙的第1位扩展为0的SSM,QL为0xf,然后向其它线路发送收到的S1时隙的第1位扩展为0的SSM;如果SSM描述的时钟优先级高于当前同步时钟源,同步时钟源锁定为SSM中的时钟源,原当前同步时钟源降为备选同步时钟源,原备选同步时钟源被淘汰,再反向发送S1时隙的第1位扩展为0的SSM,QL为0xf,然后向其它线路发送收到的S 1时隙的第1位扩展为0的SSM;如果新收到的SSM时钟优先级高于备选同步时钟源,使用当前同步时钟源替换备选同步时钟源,再反向发送S1时隙的第1位扩展为0的SSM,QL为0xf,然后向其它线路发送收到的S1时隙的第1位扩展为0的SSM;如果SSM时钟优先级与备选同步时钟源一致,保留这次SSM(非当前同步时钟源),等待收到S 1时隙的第1位扩展为1的SSM后,比较跳数,决定是否替代现有的当前同步时钟源或备选同步时钟源,如图1中的B,C,D,E,F。
当各网元接收处理完S 1时隙的第1位扩展为0的SSM消息后,即可获得如表1所示数据:
表1
然后,外时钟源接入网元A发送S 1时隙的第1位扩展为1的SSM(在发送S1时隙的第1位扩展为0的SSM后,下一次的S1时隙发送S1时隙的第1位扩展为1的SSM,这两种SSM交替发送),被同步网元接收到该SSM后,获取时钟源ID,如果不是当前同步时钟源或备选同步时钟源,则丢弃这个SSM(因为时钟前一步质量否断不合格);当收到的SSM的时钟源ID就是当前同步时钟源时,比较时钟源跳数,如果SSM描述跳数小时,将收到SSM的端口作为当前同步时钟源端口,并锁定它,同时更新时钟源跳数记录,然后将该SSM的跳数加1,排除源端口向其它设备发送;当收到的SSM的时钟源ID就是当前同步时钟源时,比较时钟源跳数,如果相同,将该SSM的跳数加1,排除源端口向其它设备发送;当收到的SSM的时钟源ID就是当前同步时钟源时,比较时钟源跳数,如果SSM描述跳数更大,这次的SSM不进行任何处理;当收到的SSM的时钟源ID就是当前同步时钟源时,比较时钟源跳数,如果SSM描述跳数小时,将收到SSM的端口作为备选同步时钟源端口,并更新时钟源跳数记录,然后将该SSM的跳数加1,排除源端口向其它设备发送;当收到的SSM的时钟源ID就是当前同步时钟源时,比较时钟源跳数,如果相同,将该SSM的跳数加1,排除源端口向其它设备发送;当收到的SSM的时钟源ID就是当前同步时钟源时,比较时跳数,如果SSM跳数更大,不进行任何处理;当收到的SSM的时钟源ID就是备选同步时钟源且质量且时钟优先级与当前同步时钟源相同时,比较时钟源跳数,如果SSM跳数小,以这次收到SSM的端口作为当前同步时钟源,原当前同步时钟源降为备选同步时钟源,然后将该SSM的跳数加1,排除源端口向其它设备发送;当收到的SSM的时钟源ID就是备选同步时钟源且时钟优先级与备选同步时钟源相同时,比较时钟源跳数,如果SSM跳数小,以这次收到SSM的端口作为备选同步时钟源,原备选同步时钟源被淘汰(可作为非备选同步时钟源保留记录),然后将该SSM的跳数加1,排除源端口向其它设备发送。在经过了上述处理后,即可得到如表2所示的数据:
表2
对外时钟源2的处理,基于与处理外时钟源1同样的原理,对外时钟源2处理后,可得到如下表3中的数据:
表3
DeviceID |
ClkID_Main |
QL_Main |
Hops_Main |
ClkID_Backup |
QL_Backup |
Hops_Backup |
A |
1 |
0x02 |
0x0 |
2 |
0x04 |
0x3 |
B |
1 |
0x02 |
0x1 |
2 |
0x04 |
0x2 |
C |
1 |
0x02 |
0x2 |
2 |
0x04 |
0x1 |
D |
1 |
0x02 |
0x3 |
2 |
0x04 |
0x0 |
E |
1 |
0x02 |
0x2 |
2 |
0x04 |
0x1 |
F |
1 |
0x02 |
0x1 |
2 |
0x04 |
0x2 |
当外时钟源1失效,外时钟源2升级成当前同步时钟源,各网元进行当前同步时钟源切换,时钟源状态信息更新如下表4所示:
表4
当外时钟源2也失效时,网元D进入保持状态,并向外发送时钟优先级为0x0B的(同步设备定时源(SETS)信号)SSM,这时各网元不再将外时钟源2作为当前同步时钟源,此时,同步数据可参见表5:
表5
由于网元D不能够接收到描述自身时钟源ID的SSM,且各网元在时钟优先级相同的情况下,按最短路径选择源,也就不会出现同步时钟环,即有效防止了同步路径过长导致的同步信号劣化。
总之,本发明所采用的选择同步时钟源方法和装置,通过将SSM扩展为两种格式的消息,即包含时钟源ID和时钟优先级、或包含所述时钟源ID和传递所述SSM经过的节点数,当网元接收到包含时钟源ID和时钟优先级的SSM时,能够确定出该SSM所在的时钟源是否为当前同步时钟源或备选同步时钟源,当为当前同步时钟源或备选同步时钟源、并再次接收到该时钟源ID的SSM,且该消息为包含传递所述SSM经过的节点数时,能够确定出最终同步时钟源。由于本发明方法是通过时钟源ID、时钟优先级和传递所述SSM经过的节点数来共同确定最终同步时钟源的,因而不仅能够提供出包含时钟源ID、时钟质量和时钟源跳数的完整的时钟源信息,而且还从根本上避免了时钟成环;进一步地,当存在多条时钟路径时,保证能够选择最短路径。
此外,本发明方法是通过仅对时隙S1扩展来实现的,而同步时隙S1仅在E1或T1等基本帧中就能够传输,而无需使用SDH复帧其它时隙,从而使得本发明仅通过E1或T1等基本帧的传输就能够实现。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。