專利名稱:一種通用協(xié)議進(jìn)程平滑重啟方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,特別涉及一種通用協(xié)議進(jìn)程平滑重啟方法和裝置。
背景技術(shù):
網(wǎng)絡(luò)是一個信息交換的場所,所有接入網(wǎng)絡(luò)的設(shè)備都可以通過彼此之間的物理連接進(jìn)行信息交互。但是,物理連接本身并不能信息交互,網(wǎng)絡(luò)中各設(shè)備之間還需要遵照的相同的協(xié)議規(guī)則,通過運行相同的協(xié)議實現(xiàn)彼此之間的信息交互。通常情況下,設(shè)備中會運行多種協(xié)議進(jìn)程,以實現(xiàn)不同的通信功能。其中,有一部分協(xié)議進(jìn)程需要在設(shè)備間進(jìn)行信息交互的過程中維持協(xié)議連接,如果該協(xié)議連接中斷,則相應(yīng)的業(yè)務(wù)也隨之中斷。因此,針對需要維持協(xié)議連接的協(xié)議進(jìn)程,本端設(shè)備會與其直連的對端設(shè)備建立該協(xié)議連接,并通過發(fā)送該協(xié)議的?;顖笪木S持該協(xié)議連接,這種情況下,一旦發(fā)生協(xié)議進(jìn)程重啟,在重啟完成之前,對端設(shè)備的協(xié)議進(jìn)程將無法收到本端設(shè)備發(fā)送的該協(xié)議的保活報文,從而導(dǎo)致對端設(shè)備的協(xié)議進(jìn)程認(rèn)為該連接超時將其老化,影響網(wǎng)絡(luò)穩(wěn)定,業(yè)務(wù)也因為協(xié)議進(jìn)程重啟而中斷。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供一種通用協(xié)議進(jìn)程平滑重啟方法,該方法能夠?qū)崿F(xiàn)通用協(xié)議進(jìn)程重啟過程中業(yè)務(wù)不中斷。為了達(dá)到上述目的,本發(fā)明提供了一種通用協(xié)議進(jìn)程平滑重啟方法,該方法包括重啟協(xié)議進(jìn)程前,接收來自協(xié)議的控制平面的代理發(fā)包請求,記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和協(xié)議的保活報文;在協(xié)議進(jìn)程重啟的過程中,按照所述報文發(fā)送間隔,周期性發(fā)送所述協(xié)議的?;顖笪?;完成協(xié)議進(jìn)程重啟后,接收來自協(xié)議的控制平面的停止代理發(fā)包請求,根據(jù)所述停止代理發(fā)包請求停止發(fā)送所述協(xié)議的保活報文,在停止發(fā)送所述協(xié)議的?;顖笪闹?, 協(xié)議的控制平面恢復(fù)所述協(xié)議進(jìn)程發(fā)送保活報文功能。本發(fā)明還提供了一種通用協(xié)議平滑重啟裝置,該裝置能夠?qū)崿F(xiàn)協(xié)議重啟過程中的業(yè)務(wù)不中斷,該裝置包括該裝置包括協(xié)議控制模塊、代理發(fā)包模塊;所述協(xié)議控制模塊,用于在重啟協(xié)議進(jìn)程前,向代理發(fā)包模塊發(fā)送代理發(fā)包請求; 用于在完成協(xié)議進(jìn)程重啟后,向代理發(fā)包模塊發(fā)送停止代理發(fā)包請求;用于在代理發(fā)包模塊停止發(fā)送所述協(xié)議的保活報文之后,恢復(fù)所述協(xié)議進(jìn)程發(fā)送?;顖笪墓δ埽凰龃戆l(fā)包模塊,用于接收到協(xié)議控制模塊發(fā)來的代理發(fā)包請求后,記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和協(xié)議的?;顖笪?,并在協(xié)議進(jìn)程重啟的過程中,按照所述報文發(fā)送間隔,周期性發(fā)送所述協(xié)議的?;顖笪?;用于接收到協(xié)議控制模塊發(fā)來的停止代理發(fā)包請求后,停止發(fā)送所述協(xié)議的?;顖笪?。
由上面的技術(shù)方案可知,本發(fā)明通過在協(xié)議進(jìn)程重啟前獲取協(xié)議的?;顖笪模⒃趨f(xié)議進(jìn)程重啟的過程中,代理發(fā)送該協(xié)議的?;顖笪?,從而保持與直連設(shè)備的協(xié)議連接, 當(dāng)協(xié)議進(jìn)程重啟完成后,再由協(xié)議進(jìn)程重新接管?;顖笪陌l(fā)送功能,從而實現(xiàn)協(xié)議進(jìn)程重啟過程中業(yè)務(wù)不中斷。
圖1為現(xiàn)有技術(shù)設(shè)備中協(xié)議進(jìn)程模塊的結(jié)構(gòu)示意圖;圖2是本發(fā)明實施例在設(shè)備中配置的代理發(fā)包模塊的結(jié)構(gòu)示意圖;圖3是本發(fā)明實施例通用協(xié)議進(jìn)程平滑重啟方法流程圖;圖4是本發(fā)明實施例通用協(xié)議進(jìn)程平滑重啟裝置的結(jié)構(gòu)示意圖。
具體實施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,下面結(jié)合附圖,并舉實施例,對本發(fā)明的技術(shù)方案進(jìn)行詳細(xì)說明。首先參見圖1,圖1為現(xiàn)有技術(shù)設(shè)備中協(xié)議進(jìn)程模塊的結(jié)構(gòu)示意圖,協(xié)議進(jìn)程模塊 110,包括運行在設(shè)備的控制平面的協(xié)議控制模塊111,以及運行在設(shè)備的數(shù)據(jù)平面的協(xié)議數(shù)據(jù)模塊112;其中,協(xié)議控制模塊111,也可以說是協(xié)議的控制平面,主要用于控制協(xié)議的運行,例如, 在協(xié)議進(jìn)程啟動時,協(xié)議控制模塊111首先啟動,獲取協(xié)議的各種相關(guān)配置信息,然后再根據(jù)協(xié)議的配置信息控制協(xié)議數(shù)據(jù)模塊112開始正常運行。協(xié)議控制模塊111可以獲取協(xié)議的各種當(dāng)前運行信息,例如協(xié)議的保活報文、報文發(fā)送間隔、以及當(dāng)前序列號等信息;協(xié)議數(shù)據(jù)模塊112,則主要用于根據(jù)協(xié)議規(guī)則執(zhí)行協(xié)議相關(guān)報文的發(fā)送和接收,例如,協(xié)議的?;顖笪牡慕邮蘸桶l(fā)送。在實際應(yīng)用中,協(xié)議進(jìn)程在正常運行過程中,通常會與其他直連設(shè)備建立協(xié)議連接,通過發(fā)送協(xié)議的?;顖笪膩砭S持與其他直連設(shè)備的協(xié)議連接。當(dāng)發(fā)生協(xié)議進(jìn)程重啟時, 本端設(shè)備無法發(fā)送協(xié)議?;顖笪?,其他直連設(shè)備的協(xié)議進(jìn)程會因為長時間未接收到本端設(shè)備發(fā)送的協(xié)議的保活報文,認(rèn)為本端設(shè)備出現(xiàn)異常,從而導(dǎo)致正常業(yè)務(wù)中斷。為了避免上述情況,可以采用代理發(fā)包的方式,在設(shè)備中配置一個代理發(fā)包模塊, 用于獲取協(xié)議的?;顖笪南嚓P(guān)信息,并在協(xié)議進(jìn)程重啟的過程中,代替協(xié)議進(jìn)程發(fā)送保活報文,使對端設(shè)備感知不到本端的協(xié)議進(jìn)程重啟情況。參見圖2,圖2是本發(fā)明實施例在設(shè)備中配置的代理發(fā)包模塊的結(jié)構(gòu)示意圖。代理發(fā)包模塊120,包括運行在設(shè)備的控制平面的代理控制模塊121,以及運行在設(shè)備的數(shù)據(jù)平面的代理數(shù)據(jù)模塊122,其中;協(xié)議控制模塊111在協(xié)議進(jìn)程重啟前,獲取協(xié)議的?;顖笪南嚓P(guān)信息,并發(fā)送到 代理控制模塊121 ;代理控制模塊121,用于接收來自協(xié)議控制模塊111的協(xié)議的?;顖笪南嚓P(guān)信息;代理數(shù)據(jù)模塊122,用于根據(jù)代理控制模塊121接收到的協(xié)議的保活報文相關(guān)信息,在協(xié)議進(jìn)程重啟的過程中,代理發(fā)送協(xié)議的?;顖笪?。之后,協(xié)議進(jìn)程模塊110重新啟動,在重新啟動過程中,代理發(fā)包模塊120中的代理數(shù)據(jù)模塊122開始代理協(xié)議進(jìn)程模塊110執(zhí)行協(xié)議的?;顖笪陌l(fā)送功能。當(dāng)協(xié)議進(jìn)程重 啟完成后,協(xié)議控制模塊111可以從代理發(fā)包模塊120中的代理控制模塊121獲取協(xié)議的?;顖笪南嚓P(guān)信息,例如當(dāng)前序列號,然后通知協(xié)議數(shù)據(jù)模塊112根據(jù)協(xié)議控制模塊111獲取的?;顖笪南嚓P(guān)信息,重新開始發(fā)送保活報文,恢復(fù)發(fā)送協(xié)議的?;顖笪墓δ?。這樣,在協(xié)議進(jìn)程重啟的過程中,由代理發(fā)包模塊120代理執(zhí)行?;顖笪陌l(fā)送功能,從而使對端設(shè)備感知不到本端設(shè)備的協(xié)議進(jìn)程重啟,因而,可以實現(xiàn)通用協(xié)議進(jìn)程重啟過程中業(yè)務(wù)不中斷?;谏鲜龉ぷ髟?,本發(fā)明提供了一種通用協(xié)議進(jìn)程平滑重啟方法,該方法能夠?qū)崿F(xiàn)通用協(xié)議進(jìn)程重啟過程中業(yè)務(wù)不中斷。參見圖3,圖3是本發(fā)明實施例通用協(xié)議進(jìn)程平滑重啟方法流程圖,包括以下步驟步驟301、重啟協(xié)議進(jìn)程前,接收來自協(xié)議的控制平面的代理發(fā)包請求,記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和協(xié)議的?;顖笪摹1緦嵤├?,在重啟協(xié)議進(jìn)程前獲知該協(xié)議的?;顖笪囊约皥笪陌l(fā)送間隔,用于在協(xié)議進(jìn)程重啟過程中,按照該報文發(fā)送間隔,發(fā)送該協(xié)議的?;顖笪?,從而使其他直連設(shè)備感知不到本端設(shè)備的協(xié)議進(jìn)程重啟,從而可以避免因協(xié)議進(jìn)程重啟而引起的業(yè)務(wù)中斷。協(xié)議的控制平面,也即上述的協(xié)議控制模塊111,主要用于控制協(xié)議的運行,可以獲取協(xié)議的?;顖笪暮桶l(fā)送該協(xié)議的?;顖笪牡膱笪陌l(fā)送間隔等協(xié)議的各種當(dāng)前運行信息,具體獲取方法屬于實現(xiàn)的問題。在重啟協(xié)議進(jìn)程前,協(xié)議的控制平面可以將獲取的協(xié)議的?;顖笪暮蛨笪陌l(fā)送間隔等協(xié)議相關(guān)信息攜帶在代理發(fā)包請求中發(fā)送到代理發(fā)包模塊; 代理發(fā)包模塊接收到來自協(xié)議的控制平面的代理發(fā)包請求后,可以根據(jù)代理發(fā)包請求中攜帶的協(xié)議相關(guān)信息,在協(xié)議進(jìn)程重啟過程中執(zhí)行代理發(fā)送協(xié)議的?;顖笪墓δ?。一般情況下,協(xié)議的?;顖笪牡膬?nèi)容是固定不變的,也有部分協(xié)議的?;顖笪陌蛄刑枺倚蛄刑栯S著發(fā)送?;顖笪牡拇螖?shù)遞增而遞增,而其他報文信息則保持不變。對于?;顖笪膬?nèi)容不變的協(xié)議,重啟協(xié)議進(jìn)程前,協(xié)議的控制平面發(fā)送的代理發(fā)包請求中,需要攜帶該發(fā)送該協(xié)議的?;顖笪牡膱笪陌l(fā)送間隔和該協(xié)議的?;顖笪?;代理發(fā)包模塊在接收到所述代理發(fā)包請求后,則需要記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和該協(xié)議的保活報文。對于保活報文中包含序列號的,所述代理發(fā)包請求中還需要攜帶該協(xié)議的?;顖笪牡漠?dāng)前序列號信息,所述序列號信息包括當(dāng)前序列號、序列號位置、序列號長度;這里,所述當(dāng)前序列號可以攜帶在代理發(fā)包請求中的所述協(xié)議的?;顖笪闹械乃鲂蛄刑栁恢锰?, 也可以與所述序列號位置、序列號長度等信息一樣直接攜帶在代理發(fā)包請求中。代理發(fā)包模塊則在記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和該協(xié)議的?;顖笪臅r,進(jìn)一步記錄該協(xié)議的保活報文的當(dāng)前序列號信息。步驟302、在協(xié)議進(jìn)程重啟的過程中,按照所述報文發(fā)送間隔,周期性發(fā)送所述協(xié)議的保活報文。本步驟中,協(xié)議進(jìn)程重啟過程中,代理發(fā)包模塊120代理發(fā)送該協(xié)議的?;顖笪摹?無論該協(xié)議的?;顖笪闹惺欠癜蛄刑枺枰杂涗浀脑搮f(xié)議的?;顖笪牡膱笪陌l(fā)送間隔為報文發(fā)送周期,每隔所述報文發(fā)送間隔發(fā)送該協(xié)議的?;顖笪摹H欢?,當(dāng)該協(xié)議的?;顖笪闹邪蛄刑枙r,每次發(fā)送該協(xié)議的?;顖笪臅r,還需要更新該協(xié)議的?;顖笪牡男蛄刑枺總€報文發(fā)送周期中發(fā)送的?;顖笪牡男蛄刑柖紤?yīng)該以前 一個報文發(fā)送周期中發(fā)送的保活報文的序列號為基礎(chǔ)遞增。因此,在每個報文發(fā)送周期中,發(fā)送該協(xié)議的保活報文之前,還進(jìn)一步包括將該協(xié)議的?;顖笪牡漠?dāng)前序列號信息中的當(dāng)前序列號加1得到新的當(dāng)前序列號,根據(jù)所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息中的序列號位置和序列號長度,將所述新的當(dāng)前序列號寫入到所述協(xié)議的保活報文中。在每個報文發(fā)送周期中,將該協(xié)議的?;顖笪牡漠?dāng)前序列號信息中的當(dāng)前序列號加1得到的新的當(dāng)前序列號成為當(dāng)前序列號信息中的當(dāng)前序列號,用于該報文發(fā)送周期中該協(xié)議的保活報文的序列號,并用于下一報文發(fā)送周期中發(fā)送該協(xié)議的?;顖笪臅r,在該新的當(dāng)前序列號的基礎(chǔ)上遞增。步驟303、完成協(xié)議進(jìn)程重啟后,接收來自協(xié)議的控制平面的停止代理發(fā)包請求, 根據(jù)所述停止代理發(fā)包請求停止發(fā)送所述協(xié)議的保活報文,在停止發(fā)送所述協(xié)議的保活報文之后,協(xié)議的控制平面恢復(fù)所述協(xié)議進(jìn)程發(fā)送?;顖笪墓δ?。協(xié)議進(jìn)程完成重啟后,該協(xié)議開始恢復(fù)工作,不再需要代理發(fā)包模塊120代理發(fā)送該協(xié)議的?;顖笪?,因此,協(xié)議的控制平面發(fā)送停止代理發(fā)包請求,并在代理發(fā)包模塊停止發(fā)送該協(xié)議的?;顖笪暮螅謴?fù)該協(xié)議進(jìn)程的?;顖笪陌l(fā)送功能,也即,恢復(fù)協(xié)議數(shù)據(jù)模塊的發(fā)送協(xié)議的保活報文功能。當(dāng)協(xié)議的保活報文中攜帶序列號時,協(xié)議進(jìn)程恢復(fù)工作后,需要根據(jù)當(dāng)前序列號信息,開始發(fā)送?;顖笪?。因此,步驟303中,所述停止發(fā)送所述協(xié)議的?;顖笪臅r,進(jìn)一步將所述協(xié)議的當(dāng)前序列號信息通知給協(xié)議的控制平面;協(xié)議的控制平面恢復(fù)所述協(xié)議進(jìn)程的?;顖笪陌l(fā)送功能之前,進(jìn)一步包括接收通知的該協(xié)議的?;顖笪牡漠?dāng)前序列號信息, 并設(shè)置為所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息。協(xié)議的控制平面根據(jù)接收到的通知的該協(xié)議的當(dāng)前序列號信息,控制該協(xié)議恢復(fù)發(fā)送保活報文。在實際應(yīng)用中,并非所有的協(xié)議進(jìn)程重啟時,都會引起業(yè)務(wù)中斷,例如,在分布式設(shè)備中,業(yè)務(wù)板中的部分協(xié)議的保活報文是由主控板發(fā)送的,對于此種協(xié)議,當(dāng)業(yè)務(wù)板中發(fā)生協(xié)議進(jìn)程重啟時,主控板仍然能夠正常發(fā)送該協(xié)議的保活報文,因此,不會引起業(yè)務(wù)中斷,進(jìn)而也不需要代理發(fā)送該協(xié)議的保活報文;另外,一些協(xié)議的?;顖笪牡膱笪陌l(fā)送間隔較長,而協(xié)議進(jìn)程重啟過程則只需要很短的時間,因此,通常情況下也不會引起業(yè)務(wù)中斷, 也不需要代理發(fā)送該協(xié)議的?;顖笪摹R虼?,本實施例中,還可以預(yù)先為每個在重啟時需要代理發(fā)送?;顖笪牡膮f(xié)議設(shè)置代理標(biāo)識;需要重啟協(xié)議進(jìn)程時,協(xié)議的控制平面在向代理發(fā)包模塊發(fā)送代理發(fā)包請求之前,進(jìn)一步包括判斷該協(xié)議是否有代理標(biāo)識,如果是,則發(fā)送代理發(fā)包請求,否則,不發(fā)送代理發(fā)包請求。協(xié)議的?;顖笪耐ǔJ菑墓潭ǖ慕涌诎l(fā)送,因此,圖1所示本發(fā)明實施例中,所述代理發(fā)包請求中還可以攜帶協(xié)議的?;顖笪牡某鼋涌冢霭l(fā)送協(xié)議的?;顖笪牡姆椒閷⑺鰠f(xié)議的?;顖笪膹拇戆l(fā)包請求中攜帶的出接口發(fā)送出去。上述實施例中,針對一個協(xié)議進(jìn)程的平滑重啟過程進(jìn)行了詳細(xì)說明。實際上,該實施例適用于每個重啟時需要設(shè)備代理發(fā)送?;顖笪囊跃S持協(xié)議連接的協(xié)議進(jìn)程??梢栽诖戆l(fā)包請求、停止代理發(fā)包請求中攜帶協(xié)議標(biāo)識,根據(jù)協(xié)議標(biāo)識區(qū)分針對每個協(xié)議的控制平面發(fā)送的代理發(fā)包請求和停止代理發(fā)包請求。當(dāng)多個協(xié)議進(jìn)程均發(fā)生重啟時,協(xié)議的控制平面針對每個協(xié)議發(fā)送代理發(fā)包請求,設(shè)備根據(jù)該協(xié)議的代理發(fā)包請求,代理發(fā)送該協(xié)議的?;顖笪?;當(dāng)接收到停止代理發(fā)包請求時,根據(jù)停止代理發(fā)包請求中的協(xié)議標(biāo)識,停止代理發(fā)送相應(yīng)協(xié)議的?;顖笪摹P枰f明的是,上述實施例,既適用于集中式設(shè)備,又適用于分布式設(shè)備。在集中式設(shè)備中,只包括一個業(yè)務(wù)板,因此,協(xié)議進(jìn)程模塊和代理發(fā)包模塊配置在同一業(yè)務(wù)板中。 而對于分布式設(shè)備,其中一般配置有多個主控板和多個接口板,多個主控板,負(fù)責(zé)系統(tǒng)整體調(diào)度運行,形成主備關(guān)系;業(yè)務(wù)板負(fù)責(zé)連接外部網(wǎng)絡(luò),完成具體的業(yè)務(wù)轉(zhuǎn)發(fā)功能。由于主控板之間形成了主備關(guān)系,因此,在正常情況下,總有一個主控板處于運行狀態(tài),因此,可以把代理發(fā)包模塊配置在主控板中,這種情況下,當(dāng)業(yè)務(wù)板重啟時,業(yè)務(wù)板中的所有協(xié)議進(jìn)程均可以由主控板中的代理發(fā)包模塊代理發(fā)送該協(xié)議的?;顖笪模瑥亩箻I(yè)務(wù)板重啟過程中的業(yè)務(wù)不中斷。另外,由于各業(yè) 務(wù)板是承載業(yè)務(wù)的實體,如果業(yè)務(wù)板中發(fā)生協(xié)議進(jìn)程重啟,若代理發(fā)送協(xié)議的?;顖笪牡墓δ芘渲迷谄渌麡I(yè)務(wù)板或主控板,則該配置了代理發(fā)送協(xié)議的?;顖笪墓δ艿臉I(yè)務(wù)板或主控板需要支持跨板發(fā)送能力,也即控制從發(fā)生協(xié)議重啟的業(yè)務(wù)板發(fā)送協(xié)議的?;顖笪牡哪芰?。本發(fā)明還提供了一種通用協(xié)議進(jìn)程平滑重啟裝置,該裝置能夠?qū)崿F(xiàn)通用協(xié)議重啟過程中的業(yè)務(wù)不中斷。參見圖4,圖4是本發(fā)明實施例通用協(xié)議進(jìn)程平滑重啟裝置的結(jié)構(gòu)示意圖,該裝置包括協(xié)議控制模塊401、代理發(fā)包模塊402 ;其中,協(xié)議控制模塊401,用于在重啟協(xié)議進(jìn)程前,向代理發(fā)包模塊402發(fā)送代理發(fā)包請求;用于在完成協(xié)議進(jìn)程重啟后,向代理發(fā)包模塊402發(fā)送停止代理發(fā)包請求;用于在代理發(fā)包模塊402停止發(fā)送所述協(xié)議的?;顖笪闹螅謴?fù)所述協(xié)議進(jìn)程發(fā)送?;顖笪墓δ?;代理發(fā)包模塊402,用于接收到協(xié)議控制模塊401發(fā)來的代理發(fā)包請求后,記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和所述協(xié)議的?;顖笪?,并在協(xié)議進(jìn)程重啟的過程中,按照所述報文發(fā)送間隔,周期性發(fā)送所述協(xié)議的?;顖笪?;用于接收到協(xié)議控制模塊 401發(fā)來的停止代理發(fā)包請求后,停止發(fā)送所述協(xié)議的保活報文。所述協(xié)議的?;顖笪臄y帶序列號;所述代理發(fā)包請求中還攜帶所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息;所述序列號信息包括當(dāng)前序列號、序列號的位置和序列號的長度;代理發(fā)包模塊402記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和所述協(xié)議的?;顖笪臅r,進(jìn)一步用于記錄該代理發(fā)包請求中攜帶的所述協(xié)議的?;顖笪牡漠?dāng)前序列
號信息;代理發(fā)包模塊402每周期發(fā)送所述協(xié)議的保活報文之前,進(jìn)一步用于將所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息中的當(dāng)前序列號加1得到新的當(dāng)前序列號,根據(jù)所述協(xié)議的保活報文的當(dāng)前序列號信息中的序列號位置和序列號長度,將所述新的當(dāng)前序列號寫入到所述協(xié)議的?;顖笪闹?。代理發(fā)包模塊402停止發(fā)送所述協(xié)議的保活報文時,進(jìn)一步將所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息通知協(xié)議控制模塊401 ;所述協(xié)議控制模塊401在恢復(fù)所述協(xié)議發(fā)送?;顖笪墓δ苤?,進(jìn)一步用于接收到代理發(fā)包模塊402通知的所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息,并設(shè)置為所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息。所述代理發(fā)包請求中還攜帶所述協(xié)議的?;顖笪牡某鼋涌?; 所述代理發(fā)包模塊402發(fā)送所述協(xié)議的?;顖笪臅r,用于將所述協(xié)議的?;顖笪膹乃鰠f(xié)議的?;顖笪牡某鼋涌诎l(fā)送。另外,當(dāng)該裝置應(yīng)用在集中式設(shè)備中時,代理發(fā)包模塊402配置在與協(xié)議控制模塊相同的業(yè)務(wù)板中;當(dāng)該裝置應(yīng)用在分布式設(shè)備中時,代理發(fā)包模塊402可以配置在主控板中,也可以配置在業(yè)務(wù)板中,當(dāng)配置在主控板中時,可以支持業(yè)務(wù)板重啟時的業(yè)務(wù)不中斷。以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。
權(quán)利要求
1.一種通用協(xié)議進(jìn)程平滑重啟方法,其特征在于,該方法包括重啟協(xié)議進(jìn)程前,接收來自協(xié)議的控制平面的代理發(fā)包請求,記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和所述協(xié)議的?;顖笪?;在協(xié)議進(jìn)程重啟的過程中,按照所述報文發(fā)送間隔,周期性發(fā)送所述協(xié)議的?;顖笪?;完成協(xié)議進(jìn)程重啟后,接收來自協(xié)議的控制平面的停止代理發(fā)包請求,根據(jù)所述停止代理發(fā)包請求停止發(fā)送所述協(xié)議的?;顖笪?,在停止發(fā)送所述協(xié)議的?;顖笪闹螅瑓f(xié)議的控制平面恢復(fù)所述協(xié)議進(jìn)程發(fā)送?;顖笪墓δ?。
2.如權(quán)利要求1所述的通用協(xié)議進(jìn)程平滑重啟方法,其特征在于,所述協(xié)議的?;顖笪臄y帶序列號;所述代理發(fā)包請求中還攜帶所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息;所述序列號信息包括當(dāng)前序列號、序列號位置和序列號長度;所述記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和所述協(xié)議的?;顖笪臅r,進(jìn)一步記錄該代理發(fā)包請求中攜帶的所述協(xié)議的?;顖笪牡男蛄刑栃畔?;每周期發(fā)送所述協(xié)議的?;顖笪闹?,進(jìn)一步包括將所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息中的當(dāng)前序列號加1得到新的當(dāng)前序列號,根據(jù)所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息中的序列號位置和序列號長度,將所述新的當(dāng)前序列號寫入到所述協(xié)議的?;顖笪闹?。
3.如權(quán)利要求2所述的通用協(xié)議進(jìn)程平滑重啟方法,其特征在于,所述停止發(fā)送所述協(xié)議的?;顖笪臅r,進(jìn)一步將所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息通知協(xié)議的控制平面;協(xié)議的控制平面恢復(fù)所述協(xié)議進(jìn)程發(fā)送?;顖笪墓δ苤?,進(jìn)一步包括接收通知的所述協(xié)議的保活報文的當(dāng)前序列號信息,并設(shè)置為所述協(xié)議的保活報文的當(dāng)前序列號信肩、ο
4.如權(quán)利要求1-3任一權(quán)項所述的通用協(xié)議進(jìn)程平滑重啟方法,其特征在于,所述代理發(fā)包請求中還攜帶所述協(xié)議的保活報文的出接口;發(fā)送所述協(xié)議的?;顖笪牡姆椒閷⑺鰠f(xié)議的?;顖笪膹乃鰠f(xié)議的?;顖笪牡某鼋涌诎l(fā)送。
5.一種通用協(xié)議進(jìn)程平滑重啟裝置,其特征在于,該裝置包括協(xié)議控制模塊、代理發(fā)包模塊;所述協(xié)議控制模塊,用于在重啟協(xié)議進(jìn)程前,向代理發(fā)包模塊發(fā)送代理發(fā)包請求;用于在完成協(xié)議進(jìn)程重啟后,向代理發(fā)包模塊發(fā)送停止代理發(fā)包請求;用于在代理發(fā)包模塊停止發(fā)送所述協(xié)議的?;顖笪闹?,恢復(fù)所述協(xié)議進(jìn)程發(fā)送保活報文功能;所述代理發(fā)包模塊,用于接收到協(xié)議控制模塊發(fā)來的代理發(fā)包請求后,記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和協(xié)議的?;顖笪?,并在協(xié)議進(jìn)程重啟的過程中,按照所述報文發(fā)送間隔,周期性發(fā)送所述協(xié)議的保活報文;用于接收到協(xié)議控制模塊發(fā)來的停止代理發(fā)包請求后,停止發(fā)送所述協(xié)議的?;顖笪?。
6.如權(quán)利要求5所述的通用協(xié)議進(jìn)程平滑重啟裝置,其特征在于,所述協(xié)議的?;顖笪臄y帶序列號;所述代理發(fā)包請求中還攜帶所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息;所述序列號信息包括當(dāng)前序列號、序列號位置和序列號長度;代理發(fā)包模塊記錄所述代理發(fā)包請求中攜帶的報文發(fā)送間隔和所述協(xié)議的?;顖笪臅r,進(jìn)一步用于記錄該代理發(fā)包請求中攜帶的所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息;代理發(fā)包模塊每周期發(fā)送所述協(xié)議的?;顖笪闹埃M(jìn)一步用于將所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息中的當(dāng)前序列號加1得到新的當(dāng)前序列號,根據(jù)所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息中的序列號位置和序列號長度,將所述新的當(dāng)前序列號寫入到所述協(xié)議的?;顖笪闹?。
7.如權(quán)利要求6所述的通用協(xié)議進(jìn)程平滑重啟裝置,其特征在于,代理發(fā)包模塊停止發(fā)送所述協(xié)議的保活報文時,進(jìn)一步將所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息通知協(xié)議控制模塊;所述協(xié)議控制模塊在恢復(fù)所述協(xié)議進(jìn)程發(fā)送保活報文功能之前,進(jìn)一步用于接收代理發(fā)包模塊通知的所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息,并設(shè)置為所述協(xié)議的?;顖笪牡漠?dāng)前序列號信息。
8.如權(quán)利要求5-7中任一權(quán)項所述的通用協(xié)議進(jìn)程平滑重啟裝置,其特征在于,所述代理發(fā)包請求中還攜帶所述協(xié)議的?;顖笪牡某鼋涌?;所述代理發(fā)包模塊發(fā)送所述協(xié)議的?;顖笪臅r,用于將所述協(xié)議的?;顖笪膹乃鰠f(xié)議的?;顖笪牡某鼋涌诎l(fā)送。
9.如權(quán)利要求8所述的通用協(xié)議進(jìn)程平滑重啟裝置,其特征在于,所述裝置應(yīng)用在分布式設(shè)備中;所述代理發(fā)包模塊配置在分布式設(shè)備的主控板中。
全文摘要
本發(fā)明提供了一種通用協(xié)議進(jìn)程平滑重啟方法和裝置,該方法包括在協(xié)議進(jìn)程重啟前獲取協(xié)議的?;顖笪?;在協(xié)議進(jìn)程重啟的過程中,代理發(fā)送該協(xié)議的?;顖笪?;當(dāng)協(xié)議進(jìn)程重啟完成后,重新接管保活報文發(fā)送功能。本發(fā)明能夠?qū)崿F(xiàn)協(xié)議進(jìn)程重啟過程中業(yè)務(wù)不中斷。
文檔編號H04L29/06GK102307194SQ20111024195
公開日2012年1月4日 申請日期2011年8月18日 優(yōu)先權(quán)日2011年8月18日
發(fā)明者徐鵬飛 申請人:杭州華三通信技術(shù)有限公司