專利名稱:Pon系統(tǒng)中olt通信模塊及olt間通信實(shí)現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及PON(Passive Optical Network,無(wú)源光纖網(wǎng)絡(luò))接入系統(tǒng)領(lǐng)域,具體來(lái)講是一種PON系統(tǒng)中OLT (Optical Line Terminal,光線路終端)通信模塊及OLT間通信實(shí)現(xiàn)方法。
背景技術(shù):
主備保護(hù)一直是OLT設(shè)備提供業(yè)務(wù)可靠性方面的一項(xiàng)重要的技術(shù)手段,主備保護(hù)中最為重要的技術(shù)環(huán)節(jié)就是,即備盤要實(shí)時(shí)同步主盤中的配置信息。目前,工程上出現(xiàn)了一種OLT間的PON保護(hù)的應(yīng)用場(chǎng)景,即一臺(tái)備用OLT能夠同時(shí) 保護(hù)多臺(tái)其他0LT,這種應(yīng)用較傳統(tǒng)的保護(hù)方式增加了一些配置同步和主備OLT通信的機(jī)制,因此要求在兩臺(tái)OLT之間建立供OLT通信的通道,來(lái)實(shí)現(xiàn)OLT間的PON保護(hù)配置的同步。配置同步功能的實(shí)現(xiàn)需要設(shè)計(jì)一套完善的主備通信機(jī)制和通信協(xié)議。但是,傳統(tǒng)的主備保護(hù),都是在同一端OLT內(nèi)部主備盤之間進(jìn)行的,這種通信通道建立在同一端OLT內(nèi)的主備盤之間,建立通信的端點(diǎn)相對(duì)單一,有很大的局限性,因此不能滿足上述兩臺(tái)OLT之間的配置交互。另外,隨著PON設(shè)備的大量工程應(yīng)用和應(yīng)用場(chǎng)景的多樣性,這種簡(jiǎn)單而單一的通信通道已經(jīng)不能滿足工程應(yīng)用的需求,極大地限制了 PON設(shè)備的業(yè)務(wù)拓展。
發(fā)明內(nèi)容
針對(duì)現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明的目的在于提供一種PON系統(tǒng)中OLT通信模塊及OLT間通信實(shí)現(xiàn)方法,在OLT通信模塊中建立發(fā)包緩存和收包緩存,能夠供任意OLT之間建立實(shí)時(shí)通信的通道,該通道的建立使得主備盤的配置同步,提高了 PON設(shè)備的可用性。為達(dá)到以上目的,本發(fā)明提供一種PON接入系統(tǒng)中OLT通信模塊,包括配置管理子模塊,用于維護(hù)用戶配置的對(duì)端標(biāo)識(shí)和IP的對(duì)應(yīng)關(guān)系;主任務(wù)收發(fā)包模塊,用于發(fā)包和收包,包括發(fā)包緩存和收包緩存,二者分別與發(fā)包接口和收包接口相連;看門狗定時(shí)器,通過(guò)管道定時(shí)發(fā)送心跳包請(qǐng)求給主任務(wù)收發(fā)包模塊;判死定時(shí)器,用于判斷心跳包發(fā)送后,是否收到對(duì)端回應(yīng)。在上述技術(shù)方案的基礎(chǔ)上,所述發(fā)包接口和收包接口分別通過(guò)發(fā)包套接字和收包套接字與另外的OLT進(jìn)行通信。本發(fā)明還提供一種基于所述OLT通信模塊的OLT間通信實(shí)現(xiàn)方法,SI.對(duì)配置管理子模塊配置管理IP,配置管理子模塊內(nèi)建立收包套接字和發(fā)包套接字,同時(shí)創(chuàng)建一個(gè)進(jìn)行收發(fā)包主任務(wù)通信的管道,初始化發(fā)包緩存和收包緩存,開啟看門狗定時(shí)器,定時(shí)通過(guò)管道發(fā)送心跳包請(qǐng)求;S2.看門狗定時(shí)器發(fā)送三次請(qǐng)求完成后,啟動(dòng)判死定時(shí)器輪詢所有對(duì)端OLT的狀態(tài);同時(shí),配置管理子模塊判斷是收包還是發(fā)包,若為收包,則將對(duì)端OLT狀態(tài)修改為在線,將包收取到收包緩存,根據(jù)收包類型進(jìn)行處理后,進(jìn)入下一個(gè)循環(huán);若為發(fā)包,根據(jù)不同發(fā)包類型發(fā)包至對(duì)應(yīng)IP的對(duì)端0LT,釋放發(fā)出空間后,進(jìn)入下一個(gè)循環(huán)。在上述技術(shù)方案的基礎(chǔ)上,所述SI中,用戶通過(guò)網(wǎng)元管理系統(tǒng)或命令行界面,配置需要進(jìn)行通信的OLT的管理IP到配置管理子模塊。在上述技術(shù)方案的基礎(chǔ)上,所述SI中,將收包套接字綁定到所述管理IP和用戶數(shù)據(jù)報(bào)協(xié)議端口上,所述管道用于上層應(yīng)用程序和看門口定時(shí)器分別與本OLT通信模塊的收發(fā)包主任務(wù)進(jìn)行通信。在上述技術(shù)方案的基礎(chǔ)上,所述看門狗定時(shí)器采用的定時(shí)間隔根據(jù)設(shè)備和應(yīng)用場(chǎng)景進(jìn)行調(diào)節(jié)。在上述技術(shù)方案的基礎(chǔ)上,所述看門狗定時(shí)器每隔30秒通過(guò)管道連續(xù)發(fā)送三次心跳包請(qǐng)求,通知主任務(wù)發(fā)送心跳包,同時(shí)將對(duì)端OLT狀態(tài)修改為探測(cè)態(tài),三次請(qǐng)求完成之后,啟動(dòng)判死定時(shí)器。在上述技術(shù)方案的基礎(chǔ)上,所述判死定時(shí)器在5秒之后輪詢所有對(duì)端OLT的狀態(tài),如果狀態(tài)不是在線,表示沒(méi)有收到對(duì)端OLT的心跳響應(yīng)包,則將對(duì)端OLT狀態(tài)修改為掉線,同時(shí)向網(wǎng)兀管理系統(tǒng)上報(bào)告警。在上述技術(shù)方案的基礎(chǔ)上,所述S2中,若為收包,如果收到的為通信包,則根據(jù)該包的類型找到之前在配置管理子模塊注冊(cè)好的處理鉤子函數(shù),逐個(gè)處理;如果收到的為心跳包,將對(duì)端OLT的IP寫入到該心跳包中,同時(shí)調(diào)用預(yù)先注冊(cè)好的心跳響應(yīng)函數(shù)處理并發(fā)送心跳響應(yīng)包;如果收到的為心跳響應(yīng)包,將對(duì)端OLT狀態(tài)修改為在線。在上述技術(shù)方案的基礎(chǔ)上,所述S2中,若為發(fā)包,如果發(fā)送的為通信包,找到對(duì)端OLT的IP地址,通過(guò)發(fā)送套接字將通信包發(fā)送到對(duì)應(yīng)的對(duì)端OLT ;如果發(fā)送的為心跳包,根據(jù)預(yù)先設(shè)計(jì)好的格式組織心跳包,同時(shí)查找配置管理子模塊中記錄的所有對(duì)端OLT的IP,將心跳發(fā)送到所有記錄的對(duì)端OLT ;如果發(fā)送的為心跳響應(yīng)包,根據(jù)收到對(duì)端OLT發(fā)送心跳包的IP,向?qū)Χ薕LT發(fā)送心跳響應(yīng)包。本發(fā)明的有益效果在于本發(fā)明一種PON系統(tǒng)中OLT通信模塊及OLT間通信實(shí)現(xiàn)方法,不同OLT之間通過(guò)網(wǎng)絡(luò)管理IP建立基于UDP(User DataGram Protocol,用戶數(shù)據(jù)報(bào)協(xié)議)協(xié)議的socket套接字提供通道,實(shí)現(xiàn)不同OLT之間配置同步。
圖I為本發(fā)明實(shí)施例PON系統(tǒng)中OLT通信模塊的總體框圖;圖2為本發(fā)明實(shí)施例OLT通信模塊初始化流程圖;圖3為本發(fā)明實(shí)施例主任務(wù)收發(fā)包流程具體實(shí)施例方式以下結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。如圖I所示,本發(fā)明PON系統(tǒng)中OLT通信模塊,其包括配置管理子模塊、主任務(wù)收發(fā)包模塊、看門狗定時(shí)器和判死定時(shí)器,其中配置管理子模塊負(fù)責(zé)維護(hù)用戶配置的對(duì)端OLT標(biāo)識(shí)和IP的對(duì)應(yīng)關(guān)系,以供主任務(wù)收發(fā)包模塊在發(fā)包時(shí)查詢。主任務(wù)收發(fā)包模塊包括發(fā)包緩存和收包緩存,發(fā)包緩存用于存放待發(fā)送的包,收包緩存用于存放收到的包,二者分別與發(fā)包接口和收包接口相連,發(fā)包接口指的是發(fā)包接口函數(shù),該函數(shù)從發(fā)包緩存中讀取待發(fā)送的包,同時(shí)調(diào)用sendto函數(shù)通過(guò)發(fā)包socket (套接字)將包發(fā)送到對(duì)應(yīng)的對(duì)端。所述收包接口指的是收包接口函數(shù),該函數(shù)調(diào)用recvfrom通過(guò)收包socket收取對(duì)端發(fā)送過(guò)來(lái)的、包并填入收包緩存。所述發(fā)包接口和收包接口分別通過(guò)發(fā)包socket和收包socket與另外的OLT進(jìn)行通信。所述看門狗定時(shí)器與主任務(wù)收發(fā)包模塊之間具有管道,看門狗定時(shí)器通過(guò)管道定時(shí)發(fā)送心跳包請(qǐng)求給主任務(wù)收發(fā)包模塊,通知主任務(wù)收發(fā)包模塊發(fā)送心跳包。所述判死定時(shí)器,用于判斷心跳包發(fā)送后,是否收到對(duì)端OLT回應(yīng)。本發(fā)明基于PON系統(tǒng)中OLT通信模塊的OLT間通信實(shí)現(xiàn)方法,其包括如下步驟SI.對(duì)配置管理子模塊配置管理IP,配置管理子模塊內(nèi)建立收包套接字和發(fā)包套接字,同時(shí)創(chuàng)建一個(gè)進(jìn)行收發(fā)包主任務(wù)通信的管道,開辟發(fā)包緩存和收包緩存,開啟看門狗定時(shí)器,定時(shí)通過(guò)管道發(fā)送心跳包請(qǐng)求,這個(gè)過(guò)程為OLT通信模塊初始化過(guò)程。如圖2所示,為本發(fā)明實(shí)施例OLT通信模塊初始化流程圖,其具體步驟為Sll.用戶通過(guò) EMS (Element Manage System,網(wǎng)兀管理系統(tǒng))或者 CLI (CommandLine Interface,命令行界面)配置需要進(jìn)行通信的OLT的管理IP到配置管理子模塊。配置管理子模塊負(fù)責(zé)維護(hù)用戶配置對(duì)端OLT的IP和對(duì)端OLT標(biāo)識(shí)對(duì)應(yīng)表,所述對(duì)應(yīng)表主要反映對(duì)端OLT和對(duì)端OLT的IP的對(duì)應(yīng)關(guān)系,為之后的發(fā)包任務(wù)提供檢索依據(jù)。S12.在本端OLT主控盤上建立兩個(gè)基于UDP (User DataGram Protocol,用戶數(shù)據(jù)報(bào)協(xié)議)的socket,分別用于收包和發(fā)包,即建立收包socket和發(fā)包socket,并將收包socket綁定到自己的管理IP和預(yù)先設(shè)計(jì)好的UDP端口上。同時(shí)創(chuàng)建一個(gè)用于上層應(yīng)用程序和看門口定時(shí)器分別與本OLT通信模塊的收發(fā)包主任務(wù)進(jìn)行通信的管道。S13.在配置管理子模塊內(nèi)初始化發(fā)包緩存和收包緩存。S14.啟動(dòng)配置管理子模塊的收發(fā)包主任務(wù)。S15.啟動(dòng)看門狗定時(shí)器,定時(shí)通過(guò)管道發(fā)送心跳包請(qǐng)求通知主任務(wù)發(fā)送心跳包,所述看門狗定時(shí)器采用的定時(shí)間隔根據(jù)具體的設(shè)備和應(yīng)用場(chǎng)景進(jìn)行調(diào)節(jié),本實(shí)施例中,采用的定時(shí)間隔為30秒。S2.看門狗定時(shí)器發(fā)送三次請(qǐng)求完成后,啟動(dòng)判死定時(shí)器輪詢所有對(duì)端OLT的狀態(tài)。本實(shí)施例中,看門狗定時(shí)器通過(guò)管道每隔30秒發(fā)送一次心跳包請(qǐng)求,連續(xù)三次請(qǐng)求完成后,啟動(dòng)判死定時(shí)器,該定時(shí)器在5秒之后,輪詢所有對(duì)端OLT狀態(tài),如果對(duì)端OLT的狀態(tài)不是online (在線),表示沒(méi)有收到對(duì)端OLT的心跳響應(yīng)包,則將對(duì)端OLT狀態(tài)修改為offline (掉線),同時(shí)向EMS上報(bào)告警。同時(shí),配置管理子模塊判斷是收包還是發(fā)包,若為收包,則將對(duì)端OLT狀態(tài)修改為在線,將包收取到收包緩存,根據(jù)收包類型進(jìn)行處理后,進(jìn)入下一個(gè)循環(huán);若為發(fā)包,根據(jù)不同發(fā)包類型發(fā)包至對(duì)應(yīng)IP的對(duì)端0LT,釋放發(fā)出空間后,進(jìn)入下一個(gè)循環(huán)。
具體流程如圖3所示,為本發(fā)明實(shí)施例主任務(wù)收發(fā)包流程圖,其步驟如下S200.配置管理子模塊的收發(fā)包主任務(wù)通過(guò)select操作,輪詢收包socket和管道,如果判斷收包socket有來(lái)自通信對(duì)端OLT的包,即收包,進(jìn)入S210 ;如果判斷有發(fā)包請(qǐng)求,即發(fā)包,進(jìn)入S220。S210.將對(duì)端OLT狀態(tài)修改為online,同時(shí)調(diào)用recvfrom函數(shù),將包收取到收包緩存中。S211.根據(jù)包類型進(jìn)行處理,如果收到的為通信包,進(jìn)入S212 ;如果收到的為心跳包,進(jìn)入S213 ;如果收到的為心跳響應(yīng)包,進(jìn)入S214。S212.根據(jù)該通信包的類型找到之前在配置管理子模塊注冊(cè)好的處理鉤子函數(shù),逐個(gè)處理,處理完的緩沖區(qū)釋放內(nèi)存空間,進(jìn)入S215。S213.對(duì)端OLT的IP寫入到該心跳包中,這樣做是為了在發(fā)送心跳響應(yīng)包時(shí)能夠確定對(duì)端OLT的IP,同時(shí)調(diào)用預(yù)先注冊(cè)好的心跳響應(yīng)函數(shù)處理并向心跳包中指定的IP發(fā)送心跳響應(yīng)包,進(jìn)入S215。S214.由于已經(jīng)將對(duì)端OLT狀態(tài)修改為online,則此處不做其他處理,進(jìn)入S215。S215.進(jìn)入下一循環(huán),返回開始。S220.遍歷發(fā)包緩存,判斷發(fā)包類型,如果發(fā)送的為通信包,進(jìn)入S221 ;如果發(fā)送的為心跳包,進(jìn)入S222 ;如果發(fā)送的為心跳響應(yīng)包,進(jìn)入S223。S221.讀出該通信包中對(duì)端OLT標(biāo)識(shí),通過(guò)查找配置管理子模塊中維護(hù)的對(duì)端OLT 標(biāo)識(shí)和IP對(duì)應(yīng)表,找到對(duì)端OLT的IP地址,調(diào)用sendto函數(shù)通過(guò)發(fā)送socket將通信包發(fā)送到對(duì)應(yīng)的對(duì)端0LT,釋放發(fā)出空間,進(jìn)入S215。S222.此處的心跳包請(qǐng)求,來(lái)源于上述看門狗定時(shí)器定時(shí)發(fā)送的心跳請(qǐng)求消息,根據(jù)預(yù)先設(shè)計(jì)好的格式組織心跳包(心跳包只有包類型,沒(méi)有凈荷),同時(shí)查找配置管理子模塊中記錄的所有對(duì)端OLT的IP,將心跳發(fā)送到所有記錄的對(duì)端0LT,釋放發(fā)出空間,進(jìn)入S215。S223.根據(jù)收到對(duì)端OLT發(fā)送心跳包的IP,向?qū)Χ薕LT發(fā)送心跳響應(yīng)包,釋放發(fā)出空間,進(jìn)入S215。本發(fā)明不局限于上述實(shí)施方式,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也視為本發(fā)明的保護(hù)范圍之內(nèi)。本說(shuō)明書中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知的現(xiàn)有技術(shù)。
權(quán)利要求
1.一種PON接入系統(tǒng)中OLT通信模塊,其特征在于,包括 配置管理子模塊,用于維護(hù)用戶配置的對(duì)端標(biāo)識(shí)和IP的對(duì)應(yīng)關(guān)系; 主任務(wù)收發(fā)包模塊,用于發(fā)包和收包,包括發(fā)包緩存和收包緩存,二者分別與發(fā)包接口和收包接口相連; 看門狗定時(shí)器,通過(guò)管道定時(shí)發(fā)送心跳包請(qǐng)求給主任務(wù)收發(fā)包模塊; 判死定時(shí)器,用于判斷心跳包發(fā)送后,是否收到對(duì)端回應(yīng)。
2.如權(quán)利要求I所述的PON接入系統(tǒng)中OLT通信模塊,其特征在于所述發(fā)包接口和收包接口分別通過(guò)發(fā)包套接字和收包套接字與另外的OLT進(jìn)行通信。
3.一種基于權(quán)利要求I中OLT通信模塊的OLT間通信實(shí)現(xiàn)方法,其特征在于,包括步驟 51.對(duì)配置管理子模塊配置管理IP,配置管理子模塊內(nèi)建立收包套接字和發(fā)包套接字,同時(shí)創(chuàng)建一個(gè)進(jìn)行收發(fā)包主任務(wù)通信的管道,初始化發(fā)包緩存和收包緩存,開啟看門狗定時(shí)器,定時(shí)通過(guò)管道發(fā)送心跳包請(qǐng)求; 52.看門狗定時(shí)器發(fā)送三次請(qǐng)求完成后,啟動(dòng)判死定時(shí)器輪詢所有對(duì)端OLT的狀態(tài); 同時(shí),配置管理子模塊判斷是收包還是發(fā)包,若為收包,則將對(duì)端OLT狀態(tài)修改為在線,將包收取到收包緩存,根據(jù)收包類型進(jìn)行處理后,進(jìn)入下一個(gè)循環(huán);若為發(fā)包,根據(jù)不同發(fā)包類型發(fā)包至對(duì)應(yīng)IP的對(duì)端0LT,釋放發(fā)出空間后,進(jìn)入下一個(gè)循環(huán)。
4.如權(quán)利要求3所述的OLT間通信實(shí)現(xiàn)方法,其特征在于所述SI中,用戶通過(guò)網(wǎng)元管理系統(tǒng)或命令行界面,配置需要進(jìn)行通信的OLT的管理IP到配置管理子模塊。
5.如權(quán)利要求3所述的OLT間通信實(shí)現(xiàn)方法,其特征在于所述SI中,將收包套接字綁定到所述管理IP和用戶數(shù)據(jù)報(bào)協(xié)議端口上,所述管道用于上層應(yīng)用程序和看門口定時(shí)器分別與本OLT通信模塊的收發(fā)包主任務(wù)進(jìn)行通信。
6.如權(quán)利要求3所述的OLT間通信實(shí)現(xiàn)方法,其特征在于所述看門狗定時(shí)器采用的定時(shí)間隔根據(jù)設(shè)備和應(yīng)用場(chǎng)景進(jìn)行調(diào)節(jié)。
7.如權(quán)利要求6所述的OLT間通信實(shí)現(xiàn)方法,其特征在于所述看門狗定時(shí)器每隔30秒通過(guò)管道連續(xù)發(fā)送三次心跳包請(qǐng)求,通知主任務(wù)發(fā)送心跳包,同時(shí)將對(duì)端OLT狀態(tài)修改為探測(cè)態(tài),三次請(qǐng)求完成之后,啟動(dòng)判死定時(shí)器。
8.如權(quán)利要求7所述的OLT間通信實(shí)現(xiàn)方法,其特征在于所述判死定時(shí)器在5秒之后輪詢所有對(duì)端OLT的狀態(tài),如果狀態(tài)不是在線,表示沒(méi)有收到對(duì)端OLT的心跳響應(yīng)包,則將對(duì)端OLT狀態(tài)修改為掉線,同時(shí)向網(wǎng)元管理系統(tǒng)上報(bào)告警。
9.如權(quán)利要求3所述的OLT間通信實(shí)現(xiàn)方法,其特征在于所述S2中,若為收包,如果收到的為通信包,則根據(jù)該包的類型找到之前在配置管理子模塊注冊(cè)好的處理鉤子函數(shù),逐個(gè)處理;如果收到的為心跳包,將對(duì)端OLT的IP寫入到該心跳包中,同時(shí)調(diào)用預(yù)先注冊(cè)好的心跳響應(yīng)函數(shù)處理并發(fā)送心跳響應(yīng)包;如果收到的為心跳響應(yīng)包,將對(duì)端OLT狀態(tài)修改為在線。
10.如權(quán)利要求3所述的OLT間通信實(shí)現(xiàn)方法,其特征在于所述S2中,若為發(fā)包,如果發(fā)送的為通信包,找到對(duì)端OLT的IP地址,通過(guò)發(fā)送套接字將通信包發(fā)送到對(duì)應(yīng)的對(duì)端OLT ;如果發(fā)送的為心跳包,根據(jù)預(yù)先設(shè)計(jì)好的格式組織心跳包,同時(shí)查找配置管理子模塊中記錄的所有對(duì)端OLT的IP,將心跳發(fā)送到所有記錄的對(duì)端OLT ;如果發(fā)送的為心跳響應(yīng)包,根據(jù)收到對(duì)端OLT發(fā)送心跳包的IP,向?qū)Χ薕 LT發(fā)送心跳響應(yīng)包。
全文摘要
本發(fā)明PON系統(tǒng)中OLT通信模塊及OLT間通信實(shí)現(xiàn)方法,其中,配置管理子模塊負(fù)責(zé)維護(hù)用戶配置的對(duì)端OLT標(biāo)識(shí)和IP的對(duì)應(yīng)關(guān)系;主任務(wù)收發(fā)包模塊包括發(fā)包緩存和收包緩存,二者分別與發(fā)包接口和收包接口相連,發(fā)包接口和收包接口分別通過(guò)發(fā)包socket和收包socket與另外的OLT進(jìn)行通信;看門狗定時(shí)器通過(guò)管道定時(shí)發(fā)送心跳包請(qǐng)求給主任務(wù)收發(fā)包模塊,通知主任務(wù)收發(fā)包模塊發(fā)送心跳包;判死定時(shí)器,用于判斷心跳包發(fā)送后,是否收到對(duì)端OLT回應(yīng)。本發(fā)明能夠供任意OLT之間建立實(shí)時(shí)通信的通道,該通道的建立使得主備盤的配置同步,提高了PON設(shè)備的可用性。
文檔編號(hào)H04L29/06GK102739443SQ20121018898
公開日2012年10月17日 申請(qǐng)日期2012年6月11日 優(yōu)先權(quán)日2012年6月11日
發(fā)明者李偉芳, 艾濱, 陳志欣 申請(qǐng)人:烽火通信科技股份有限公司