专利名称:Pon系统中olt通信模块及olt间通信实现方法
技术领域:
本发明涉及PON(Passive Optical Network,无源光纤网络)接入系统领域,具体来讲是一种PON系统中OLT (Optical Line Terminal,光线路终端)通信模块及OLT间通信实现方法。
背景技术:
主备保护一直是OLT设备提供业务可靠性方面的一项重要的技术手段,主备保护中最为重要的技术环节就是,即备盘要实时同步主盘中的配置信息。目前,工程上出现了一种OLT间的PON保护的应用场景,即一台备用OLT能够同时 保护多台其他0LT,这种应用较传统的保护方式增加了一些配置同步和主备OLT通信的机制,因此要求在两台OLT之间建立供OLT通信的通道,来实现OLT间的PON保护配置的同步。配置同步功能的实现需要设计一套完善的主备通信机制和通信协议。但是,传统的主备保护,都是在同一端OLT内部主备盘之间进行的,这种通信通道建立在同一端OLT内的主备盘之间,建立通信的端点相对单一,有很大的局限性,因此不能满足上述两台OLT之间的配置交互。另外,随着PON设备的大量工程应用和应用场景的多样性,这种简单而单一的通信通道已经不能满足工程应用的需求,极大地限制了 PON设备的业务拓展。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种PON系统中OLT通信模块及OLT间通信实现方法,在OLT通信模块中建立发包缓存和收包缓存,能够供任意OLT之间建立实时通信的通道,该通道的建立使得主备盘的配置同步,提高了 PON设备的可用性。为达到以上目的,本发明提供一种PON接入系统中OLT通信模块,包括配置管理子模块,用于维护用户配置的对端标识和IP的对应关系;主任务收发包模块,用于发包和收包,包括发包缓存和收包缓存,二者分别与发包接口和收包接口相连;看门狗定时器,通过管道定时发送心跳包请求给主任务收发包模块;判死定时器,用于判断心跳包发送后,是否收到对端回应。在上述技术方案的基础上,所述发包接口和收包接口分别通过发包套接字和收包套接字与另外的OLT进行通信。本发明还提供一种基于所述OLT通信模块的OLT间通信实现方法,SI.对配置管理子模块配置管理IP,配置管理子模块内建立收包套接字和发包套接字,同时创建一个进行收发包主任务通信的管道,初始化发包缓存和收包缓存,开启看门狗定时器,定时通过管道发送心跳包请求;S2.看门狗定时器发送三次请求完成后,启动判死定时器轮询所有对端OLT的状态;同时,配置管理子模块判断是收包还是发包,若为收包,则将对端OLT状态修改为在线,将包收取到收包缓存,根据收包类型进行处理后,进入下一个循环;若为发包,根据不同发包类型发包至对应IP的对端0LT,释放发出空间后,进入下一个循环。在上述技术方案的基础上,所述SI中,用户通过网元管理系统或命令行界面,配置需要进行通信的OLT的管理IP到配置管理子模块。在上述技术方案的基础上,所述SI中,将收包套接字绑定到所述管理IP和用户数据报协议端口上,所述管道用于上层应用程序和看门口定时器分别与本OLT通信模块的收发包主任务进行通信。在上述技术方案的基础上,所述看门狗定时器采用的定时间隔根据设备和应用场景进行调节。在上述技术方案的基础上,所述看门狗定时器每隔30秒通过管道连续发送三次心跳包请求,通知主任务发送心跳包,同时将对端OLT状态修改为探测态,三次请求完成之后,启动判死定时器。在上述技术方案的基础上,所述判死定时器在5秒之后轮询所有对端OLT的状态,如果状态不是在线,表示没有收到对端OLT的心跳响应包,则将对端OLT状态修改为掉线,同时向网兀管理系统上报告警。在上述技术方案的基础上,所述S2中,若为收包,如果收到的为通信包,则根据该包的类型找到之前在配置管理子模块注册好的处理钩子函数,逐个处理;如果收到的为心跳包,将对端OLT的IP写入到该心跳包中,同时调用预先注册好的心跳响应函数处理并发送心跳响应包;如果收到的为心跳响应包,将对端OLT状态修改为在线。在上述技术方案的基础上,所述S2中,若为发包,如果发送的为通信包,找到对端OLT的IP地址,通过发送套接字将通信包发送到对应的对端OLT ;如果发送的为心跳包,根据预先设计好的格式组织心跳包,同时查找配置管理子模块中记录的所有对端OLT的IP,将心跳发送到所有记录的对端OLT ;如果发送的为心跳响应包,根据收到对端OLT发送心跳包的IP,向对端OLT发送心跳响应包。本发明的有益效果在于本发明一种PON系统中OLT通信模块及OLT间通信实现方法,不同OLT之间通过网络管理IP建立基于UDP(User DataGram Protocol,用户数据报协议)协议的socket套接字提供通道,实现不同OLT之间配置同步。
图I为本发明实施例PON系统中OLT通信模块的总体框图;图2为本发明实施例OLT通信模块初始化流程图;图3为本发明实施例主任务收发包流程具体实施例方式以下结合附图及实施例对本发明作进一步详细说明。如图I所示,本发明PON系统中OLT通信模块,其包括配置管理子模块、主任务收发包模块、看门狗定时器和判死定时器,其中配置管理子模块负责维护用户配置的对端OLT标识和IP的对应关系,以供主任务收发包模块在发包时查询。主任务收发包模块包括发包缓存和收包缓存,发包缓存用于存放待发送的包,收包缓存用于存放收到的包,二者分别与发包接口和收包接口相连,发包接口指的是发包接口函数,该函数从发包缓存中读取待发送的包,同时调用sendto函数通过发包socket (套接字)将包发送到对应的对端。所述收包接口指的是收包接口函数,该函数调用recvfrom通过收包socket收取对端发送过来的、包并填入收包缓存。所述发包接口和收包接口分别通过发包socket和收包socket与另外的OLT进行通信。所述看门狗定时器与主任务收发包模块之间具有管道,看门狗定时器通过管道定时发送心跳包请求给主任务收发包模块,通知主任务收发包模块发送心跳包。所述判死定时器,用于判断心跳包发送后,是否收到对端OLT回应。本发明基于PON系统中OLT通信模块的OLT间通信实现方法,其包括如下步骤SI.对配置管理子模块配置管理IP,配置管理子模块内建立收包套接字和发包套接字,同时创建一个进行收发包主任务通信的管道,开辟发包缓存和收包缓存,开启看门狗定时器,定时通过管道发送心跳包请求,这个过程为OLT通信模块初始化过程。如图2所示,为本发明实施例OLT通信模块初始化流程图,其具体步骤为Sll.用户通过 EMS (Element Manage System,网兀管理系统)或者 CLI (CommandLine Interface,命令行界面)配置需要进行通信的OLT的管理IP到配置管理子模块。配置管理子模块负责维护用户配置对端OLT的IP和对端OLT标识对应表,所述对应表主要反映对端OLT和对端OLT的IP的对应关系,为之后的发包任务提供检索依据。S12.在本端OLT主控盘上建立两个基于UDP (User DataGram Protocol,用户数据报协议)的socket,分别用于收包和发包,即建立收包socket和发包socket,并将收包socket绑定到自己的管理IP和预先设计好的UDP端口上。同时创建一个用于上层应用程序和看门口定时器分别与本OLT通信模块的收发包主任务进行通信的管道。S13.在配置管理子模块内初始化发包缓存和收包缓存。S14.启动配置管理子模块的收发包主任务。S15.启动看门狗定时器,定时通过管道发送心跳包请求通知主任务发送心跳包,所述看门狗定时器采用的定时间隔根据具体的设备和应用场景进行调节,本实施例中,采用的定时间隔为30秒。S2.看门狗定时器发送三次请求完成后,启动判死定时器轮询所有对端OLT的状态。本实施例中,看门狗定时器通过管道每隔30秒发送一次心跳包请求,连续三次请求完成后,启动判死定时器,该定时器在5秒之后,轮询所有对端OLT状态,如果对端OLT的状态不是online (在线),表示没有收到对端OLT的心跳响应包,则将对端OLT状态修改为offline (掉线),同时向EMS上报告警。同时,配置管理子模块判断是收包还是发包,若为收包,则将对端OLT状态修改为在线,将包收取到收包缓存,根据收包类型进行处理后,进入下一个循环;若为发包,根据不同发包类型发包至对应IP的对端0LT,释放发出空间后,进入下一个循环。
具体流程如图3所示,为本发明实施例主任务收发包流程图,其步骤如下S200.配置管理子模块的收发包主任务通过select操作,轮询收包socket和管道,如果判断收包socket有来自通信对端OLT的包,即收包,进入S210 ;如果判断有发包请求,即发包,进入S220。S210.将对端OLT状态修改为online,同时调用recvfrom函数,将包收取到收包缓存中。S211.根据包类型进行处理,如果收到的为通信包,进入S212 ;如果收到的为心跳包,进入S213 ;如果收到的为心跳响应包,进入S214。S212.根据该通信包的类型找到之前在配置管理子模块注册好的处理钩子函数,逐个处理,处理完的缓冲区释放内存空间,进入S215。S213.对端OLT的IP写入到该心跳包中,这样做是为了在发送心跳响应包时能够确定对端OLT的IP,同时调用预先注册好的心跳响应函数处理并向心跳包中指定的IP发送心跳响应包,进入S215。S214.由于已经将对端OLT状态修改为online,则此处不做其他处理,进入S215。S215.进入下一循环,返回开始。S220.遍历发包缓存,判断发包类型,如果发送的为通信包,进入S221 ;如果发送的为心跳包,进入S222 ;如果发送的为心跳响应包,进入S223。S221.读出该通信包中对端OLT标识,通过查找配置管理子模块中维护的对端OLT 标识和IP对应表,找到对端OLT的IP地址,调用sendto函数通过发送socket将通信包发送到对应的对端0LT,释放发出空间,进入S215。S222.此处的心跳包请求,来源于上述看门狗定时器定时发送的心跳请求消息,根据预先设计好的格式组织心跳包(心跳包只有包类型,没有净荷),同时查找配置管理子模块中记录的所有对端OLT的IP,将心跳发送到所有记录的对端0LT,释放发出空间,进入S215。S223.根据收到对端OLT发送心跳包的IP,向对端OLT发送心跳响应包,释放发出空间,进入S215。本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。
权利要求
1.一种PON接入系统中OLT通信模块,其特征在于,包括 配置管理子模块,用于维护用户配置的对端标识和IP的对应关系; 主任务收发包模块,用于发包和收包,包括发包缓存和收包缓存,二者分别与发包接口和收包接口相连; 看门狗定时器,通过管道定时发送心跳包请求给主任务收发包模块; 判死定时器,用于判断心跳包发送后,是否收到对端回应。
2.如权利要求I所述的PON接入系统中OLT通信模块,其特征在于所述发包接口和收包接口分别通过发包套接字和收包套接字与另外的OLT进行通信。
3.一种基于权利要求I中OLT通信模块的OLT间通信实现方法,其特征在于,包括步骤 51.对配置管理子模块配置管理IP,配置管理子模块内建立收包套接字和发包套接字,同时创建一个进行收发包主任务通信的管道,初始化发包缓存和收包缓存,开启看门狗定时器,定时通过管道发送心跳包请求; 52.看门狗定时器发送三次请求完成后,启动判死定时器轮询所有对端OLT的状态; 同时,配置管理子模块判断是收包还是发包,若为收包,则将对端OLT状态修改为在线,将包收取到收包缓存,根据收包类型进行处理后,进入下一个循环;若为发包,根据不同发包类型发包至对应IP的对端0LT,释放发出空间后,进入下一个循环。
4.如权利要求3所述的OLT间通信实现方法,其特征在于所述SI中,用户通过网元管理系统或命令行界面,配置需要进行通信的OLT的管理IP到配置管理子模块。
5.如权利要求3所述的OLT间通信实现方法,其特征在于所述SI中,将收包套接字绑定到所述管理IP和用户数据报协议端口上,所述管道用于上层应用程序和看门口定时器分别与本OLT通信模块的收发包主任务进行通信。
6.如权利要求3所述的OLT间通信实现方法,其特征在于所述看门狗定时器采用的定时间隔根据设备和应用场景进行调节。
7.如权利要求6所述的OLT间通信实现方法,其特征在于所述看门狗定时器每隔30秒通过管道连续发送三次心跳包请求,通知主任务发送心跳包,同时将对端OLT状态修改为探测态,三次请求完成之后,启动判死定时器。
8.如权利要求7所述的OLT间通信实现方法,其特征在于所述判死定时器在5秒之后轮询所有对端OLT的状态,如果状态不是在线,表示没有收到对端OLT的心跳响应包,则将对端OLT状态修改为掉线,同时向网元管理系统上报告警。
9.如权利要求3所述的OLT间通信实现方法,其特征在于所述S2中,若为收包,如果收到的为通信包,则根据该包的类型找到之前在配置管理子模块注册好的处理钩子函数,逐个处理;如果收到的为心跳包,将对端OLT的IP写入到该心跳包中,同时调用预先注册好的心跳响应函数处理并发送心跳响应包;如果收到的为心跳响应包,将对端OLT状态修改为在线。
10.如权利要求3所述的OLT间通信实现方法,其特征在于所述S2中,若为发包,如果发送的为通信包,找到对端OLT的IP地址,通过发送套接字将通信包发送到对应的对端OLT ;如果发送的为心跳包,根据预先设计好的格式组织心跳包,同时查找配置管理子模块中记录的所有对端OLT的IP,将心跳发送到所有记录的对端OLT ;如果发送的为心跳响应包,根据收到对端OLT发送心跳包的IP,向对端O LT发送心跳响应包。
全文摘要
本发明PON系统中OLT通信模块及OLT间通信实现方法,其中,配置管理子模块负责维护用户配置的对端OLT标识和IP的对应关系;主任务收发包模块包括发包缓存和收包缓存,二者分别与发包接口和收包接口相连,发包接口和收包接口分别通过发包socket和收包socket与另外的OLT进行通信;看门狗定时器通过管道定时发送心跳包请求给主任务收发包模块,通知主任务收发包模块发送心跳包;判死定时器,用于判断心跳包发送后,是否收到对端OLT回应。本发明能够供任意OLT之间建立实时通信的通道,该通道的建立使得主备盘的配置同步,提高了PON设备的可用性。
文档编号H04L29/06GK102739443SQ20121018898
公开日2012年10月17日 申请日期2012年6月11日 优先权日2012年6月11日
发明者李伟芳, 艾滨, 陈志欣 申请人:烽火通信科技股份有限公司