專利名稱:通信系統(tǒng)中發(fā)送握手報文的方法及裝置的制作方法
技術領域:
本發(fā)明涉及網(wǎng)絡通信領域,尤其涉及一種通信系統(tǒng)中發(fā)送握手報文的方法及裝置。
背景技術:
在目前的網(wǎng)絡通信系統(tǒng)中,PPP(點對點)協(xié)議是TCP/IP(傳輸控制協(xié)議/網(wǎng)間協(xié)議)協(xié)議棧中數(shù)據(jù)鏈路層的協(xié)議,它提供一種標準的通信方式,即在點對點的鏈路上傳輸網(wǎng)絡層協(xié)議的數(shù)據(jù)報文,是目前實際生活中寬帶網(wǎng)絡接入方式中最主要的通信方式之一。PPP協(xié)議主要由兩類協(xié)議組成LCP(鏈路控制協(xié)議族)和NCP(網(wǎng)絡層控制協(xié)議族),鏈路控制協(xié)議主要用于建立,拆除和監(jiān)控數(shù)據(jù)鏈路,網(wǎng)絡層控制協(xié)議族主要用于協(xié)商在該數(shù)據(jù)鏈路上所傳輸?shù)臄?shù)據(jù)包的格式與類型。
PPP協(xié)議還提供了用于網(wǎng)絡安全方面的驗證協(xié)議族PAP(口令驗證協(xié)議)和CHAP(挑戰(zhàn)握手驗證協(xié)議)。PPP協(xié)議由于能夠提供驗證功能,協(xié)議內容和功能容易被擴充,且又支持同步傳輸模式和異步傳輸模式。因此,該協(xié)議獲得較為廣泛的應用,并且又產(chǎn)生了PPPoE(在以太網(wǎng)上建立點對點連接)、PPPoA(在異步傳輸模式上點對點連接)等許多擴展協(xié)議。
在應用PPP協(xié)議建立點對點的鏈路通信過程中,首先,在PPP協(xié)議鏈路的兩端必須發(fā)送LCP數(shù)據(jù)包進行數(shù)據(jù)鏈路的測試和配置,等到鏈路完全建立起來之后,才進行驗證。然后,采用PPP協(xié)議發(fā)送NCP數(shù)據(jù)包選擇并配置一個或多個網(wǎng)絡層協(xié)議,當所選擇的網(wǎng)絡層協(xié)議配置成功之后,每個網(wǎng)絡層發(fā)送的數(shù)據(jù)包就可以在鏈路上傳送了,直到有明確的LCP或NCP數(shù)據(jù)包具有斷開鏈路請求信息或某些外來的事件發(fā)生而使鏈路斷開,例如定時器超時或網(wǎng)絡管理員干涉,否則,鏈路將一直保持為已建立的連接狀態(tài)。
在現(xiàn)有技術中,當PPP協(xié)議鏈路建立起來以后,鏈路的兩端會定時發(fā)起用于握手的Hello報文,來維持和檢測鏈路的狀態(tài)。報文的接收端在收到握手報文后,必須給予應答。發(fā)送方在發(fā)送握手報文后會相應地設定一個等待時間,在該時間內收到回應報文則認為鏈路正常,若超過此時間仍未收到握手報文的回應,則認為由于某種原因鏈路已經(jīng)不正常,如對端用戶下線,物理連接中斷等,然后會通知本地發(fā)送端進行鏈路拆除等工作。除PPP協(xié)議外,其他協(xié)議如ARP協(xié)議等,在通信中也存在相同或者類似的通過這種握手機制來檢測通信鏈路相應狀態(tài)的情況。
但是,現(xiàn)有技術在實際應用的過程中,PPP協(xié)議以及其他一些協(xié)議等,都存在著一些缺陷,其中有數(shù)據(jù)鏈路層協(xié)議本身并不能保證發(fā)送報文的可靠性,所以發(fā)送的握手報文可能會在發(fā)送的過程中丟失,導致對端無法收到握手報文,當然也導致無法給發(fā)送方回應。
由于這個缺陷,在鏈路建立完成以后的時間中,即使鏈路沒有故障,但超過發(fā)送方設定的等待時間后,數(shù)據(jù)鏈路仍將會被拆除,這樣會影響到正常的通信。尤其是當有用戶在線時,若出現(xiàn)了握手報文丟失的情況,則發(fā)送方會認為鏈路已經(jīng)不正常,會強行拆除鏈路,導致用戶在正常情況下被強制下線。
另外,在現(xiàn)有技術中,這些協(xié)議由于沒有考慮到當前鏈路的狀態(tài),不必要地頻繁發(fā)送握手報文,會給正常狀態(tài)下的鏈路帶來了無謂的開銷,加重了鏈路的負荷。
發(fā)明內容
鑒于上述現(xiàn)有技術所存在的問題,本發(fā)明提供了一種通信系統(tǒng)中發(fā)送握手報文的方法,減輕握手報文丟失所造成用戶下線問題,同時也解決了在鏈路正常的時候還頻繁發(fā)送握手報文的問題,避免由于頻繁發(fā)送握手報文而帶來無謂網(wǎng)絡系統(tǒng)的繁忙,以及有可能影響到網(wǎng)絡系統(tǒng)性能。
本發(fā)明的目的是通過以下技術方案實現(xiàn)的本發(fā)明提供了一種通信系統(tǒng)中發(fā)送握手報文的方法,包括A、在通信鏈路的實體上或者實體之間監(jiān)測預定時間段內通信鏈路上的數(shù)據(jù)流量;B、依據(jù)監(jiān)測的通信鏈路中數(shù)據(jù)流量變化情況確定發(fā)送握手報文方式;C、根據(jù)確定的發(fā)送握手報文方式發(fā)送握手報文。
所述的步驟B包括B1、當通信鏈路上的數(shù)據(jù)流量發(fā)生變化時,則認為通信鏈路的工作正常,并采用減少發(fā)送握手報文方式;B2、當通信鏈路上的數(shù)據(jù)流量沒有變化時,采用增加發(fā)送握手報文方式。
所述的減少發(fā)送握手報文方式包括減少發(fā)送握手報文方式可以是不發(fā)送握手報文,或者是發(fā)送頻率與通信鏈路上數(shù)據(jù)流量的變化大小成反比例關系,或者是發(fā)送握手報文后無需設置等待回應的時間。
所述的步驟B1包括當采用減少發(fā)送握手報文方式時,如果接收方收到發(fā)送方發(fā)送的握手報文,則接收方向發(fā)送方發(fā)送握手報文回應,發(fā)送方在收到握手回應報文后,取消設定的回應等待時間。
所述的步驟B2包括B21、啟動一個設定的回應等待時間,如果系統(tǒng)等待的時間超過回應等待時間,則執(zhí)行B23,如果沒有,則執(zhí)行B22;B22、在回應等待時間內,采用增加發(fā)送握手報文方式,若收到對端的握手回應報文,則該通信鏈路的工作狀態(tài)正常;B23、若超過等待時間后,仍沒收到應答報文,則該通信鏈路狀態(tài)已不正常,通知本端拆除該通信鏈路。
所述的增加發(fā)送握手報文方式包括增加發(fā)送握手報文方式可以是增加每次所發(fā)送握手報文的數(shù)量或者是縮短發(fā)送握手報文的時間間隔。
所述的增加發(fā)送握手報文方式包括增加發(fā)送握手報文方式的發(fā)送頻率與通信鏈路上數(shù)據(jù)流量的變化大小成反比例關系。
本發(fā)明還提供了一種通信系統(tǒng)中發(fā)送握手報文的裝置,包括流量監(jiān)測單元用于監(jiān)測通信鏈路上預定時間周期內的數(shù)據(jù)流量;發(fā)送方式處理單元用于根據(jù)監(jiān)測的通信鏈路的數(shù)據(jù)流量變化情況確定發(fā)送握手報文的頻率;握手報文發(fā)送單元根據(jù)確定的頻率發(fā)送握手報文。
所述的裝置還包括定時器若需要提高握手報文發(fā)送的頻率,則在發(fā)送握手報文后啟動定時器,當接收到握手報文的響應報文時停止計時,當超時時,觸發(fā)鏈路拆除模塊;鏈路拆除模塊用于根據(jù)定時器的觸發(fā)進行通信鏈路的拆除操作。
由上述本發(fā)明提供的技術方案可以看出,本發(fā)明依據(jù)根據(jù)鏈路的數(shù)據(jù)流量變化,調整發(fā)送握手報文的方式。當鏈路中的數(shù)據(jù)流量多少有變化時,減少握手報文發(fā)送的頻率;當鏈路的數(shù)據(jù)流量在一段時間沒有變化時,則增加握手報文發(fā)送的頻率,使握手報文發(fā)送的頻率與鏈路的數(shù)據(jù)流量的大小成反比。這樣可以減少握手報文丟失所造成用戶下線問題,以及解決鏈路正常時,頻繁發(fā)送握手報文帶來無謂網(wǎng)絡開銷。
圖1為PPP協(xié)議建立的點對點連接示意圖;圖2為通過檢測數(shù)據(jù)流量來控制發(fā)送報文頻率的流程圖;圖3為本發(fā)明所述的裝置的結構示意圖。
具體實施例方式
本發(fā)明的方案是根據(jù)一段時間內鏈路上數(shù)據(jù)流量的變化情況,動態(tài)調整發(fā)送握手報文頻率,即當鏈路上有數(shù)據(jù)流量變化時,不發(fā)送或少發(fā)送握手報文,或者發(fā)送后無需設置等待回應的時間。當鏈路上一段時間內的數(shù)據(jù)流量沒有變化時,此時,鏈路有可能已發(fā)生故障,增加發(fā)送握手報文的頻率,并按照現(xiàn)有的技術處理報文的發(fā)送和應答,同時啟動一個超時的等待時間,在等待時間內使發(fā)送握手報文的頻率與鏈路上數(shù)據(jù)流量的變化大小成反比例趨勢,并判斷鏈路有無可能發(fā)生故障。
下面以具體的例子描述實現(xiàn)方案,在通信網(wǎng)絡鏈路中使用本發(fā)明的方案進行通信,假設在通信網(wǎng)絡鏈路中存在如圖1所示的Host(主機)A與Host B之間建立已建立點對點的連接,設定Host A為發(fā)送設備,Host B設為接收設備,反之也可以。下面將僅以Host A向Host B發(fā)送握手報文為例,對利用本發(fā)明對發(fā)送握手報文進行處理的過程進行說明。
本發(fā)明所述的方法的具體實現(xiàn)方式如圖2所示,包括以下步驟步驟21檢測一段時間內網(wǎng)絡鏈路上的數(shù)據(jù)流量的變化情況,如果數(shù)據(jù)流量有變化,執(zhí)行步驟22,否則,執(zhí)行步驟23。
具體為在Host A與Host B兩端之間的鏈路中,可以是在按一定的單位時間,在一個時間周期內對鏈路的數(shù)據(jù)進行檢測,比較數(shù)據(jù)前后檢測的結果大小來判斷數(shù)據(jù)流量的變化,或者是在一段時間內的開始和結束時刻的流量大小的比較,來判斷Host A向Host B發(fā)送數(shù)據(jù)數(shù)量有無增加或減少的變化。
步驟22數(shù)據(jù)流量發(fā)生變化,則認為該鏈路上通信工作正常,可以采用減少發(fā)送握手報文方式。并執(zhí)行步驟21,返回到開始,繼續(xù)檢測數(shù)據(jù)流量的變化。
當在Host A和Host B之間由于數(shù)據(jù)流量的發(fā)生了變化時,則確定它們之間一直存在數(shù)據(jù)通信,認為該鏈路上通信工作正常。即當Host A向Host B發(fā)送數(shù)據(jù),而Host B也在接收該數(shù)據(jù)。Host A依據(jù)數(shù)據(jù)流量的變化來確定采用減少發(fā)送握手報文方式,向Host B發(fā)送握手報文。該方式可以是Host A不向Host B發(fā)送握手報文,或者是Host A向Host B發(fā)送握手報文頻率與通信鏈路上數(shù)據(jù)流量的變化大小成反比例關系,或者是Host A向Host B發(fā)送握手報文后無需設置等待Host B回應的時間。在Host A向Host B發(fā)送數(shù)據(jù)期間若接收到對方Host B發(fā)送的報文,按照現(xiàn)有的技術向發(fā)送方Host B發(fā)送回應報文。該發(fā)送報文方式可以減少鏈路的負載,增加鏈路上數(shù)據(jù)報文的帶寬。
步驟23當鏈路上的數(shù)據(jù)流量沒有變化時,則認為鏈路可能存在問題,采用增加發(fā)送握手報文方式來確定鏈路狀態(tài)。
當Host A和Host B之間存在數(shù)據(jù)通信流量保持固定不變,Host A向對端Host B發(fā)送數(shù)據(jù),等待對端Host B接收到該數(shù)據(jù),而對端沒有相應的回應報文,則Host A和Host B之間鏈路有可能發(fā)生故障,為此,需要增加發(fā)送從Host A到Host B握手報文的頻率來確認它們之間鏈路狀態(tài)。
具體的可采用增加Host A發(fā)送握手報文的方式,該方式可以是增加每次所發(fā)送握手報文的數(shù)量或者是縮短發(fā)送握手報文的時間間隔,發(fā)送握手報文的頻率應該與鏈路上流量的變化大小對應成反比例趨勢。通過該發(fā)送報文方式可以確定鏈路的狀況,告知用戶和系統(tǒng),避免了無效的等待,可以節(jié)省時間和系統(tǒng)的資源。
步驟24依據(jù)在預先設定的等待時間期間是否接收到回應報文來判斷鏈路的狀況,即判斷在設置的時間段內是否收到回應報文,若超過等待時間后,仍沒收到應答報文,則執(zhí)行步驟25;在回應超時等待時間內,如果收到對方的握手回應報文,則執(zhí)行步驟26。
具體過程中可在數(shù)據(jù)發(fā)送端,如Host A處,預先設定一個回應超時等待時間,該時間可以依據(jù)整個系統(tǒng)工作狀況來確定,可以是一般通信正常情況下,等待回應的時間,也可以依據(jù)數(shù)據(jù)量的大小或者鏈路的情況等具體的條件,該條件也可以依據(jù)需要自行設定。啟動該等待時間,依據(jù)該時間來判斷Host A和Host B之間鏈路狀態(tài)。若數(shù)據(jù)發(fā)送端Host A等待接收端Host B發(fā)送回應報文的時間超過預先設定回應等待時間后,Host A仍沒收到Host B發(fā)送的應答報文,則執(zhí)行步驟25;若Host A等待Host B發(fā)送的回應報文的時間在回應超時等待時間限制內,Host A收到對方Host B發(fā)送的回應報文,則執(zhí)行步驟26。
步驟25在預先設定回應等待時間內沒收到對方的握手報文,則認為鏈路狀態(tài)已不正常,釋放該鏈路的資源。
該鏈路狀況有可能是接收端Host B已經(jīng)下線了而數(shù)據(jù)發(fā)送端Host A沒有及時得到通知,或者是鏈路中的某環(huán)節(jié)工作不正常而使數(shù)據(jù)不能轉發(fā),又或者是鏈路中數(shù)據(jù)流量嚴重超負不能正常工作。總之,Host A和Host B之間鏈路出現(xiàn)了故障影響到正常的通信,則系統(tǒng)通知本發(fā)送端Host A拆除該Host A和Host B之間的鏈路,釋放該鏈路的資源,可以重新建立兩端的通信。
步驟26收到對方的握手回應報文,認為鏈路狀態(tài)正常,則按照現(xiàn)有的技術停止設定的等待時間,并且采用減少發(fā)送握手報文方式,執(zhí)行步驟21。
具體過程為本發(fā)送端Host A收到對方接收端Host B發(fā)送的回應握手報文,則認為Host A和Host B之間鏈路狀態(tài)正常,并且本端Host A向對端HostB發(fā)送握手報文的方式采用減少發(fā)送握手報文方式,返回到開始,繼續(xù)檢測Host A和Host B之間數(shù)據(jù)流量的變化情況。
本發(fā)明還提供了一種通信系統(tǒng)中發(fā)送握手報文的裝置,所述的裝置可以設置于通信系統(tǒng)中的通信實體中,如圖3所示,具體包括以下組成單元流量監(jiān)測單元用于監(jiān)測通信鏈路上預定時間周期內的數(shù)據(jù)流量;發(fā)送方式處理單元用于根據(jù)監(jiān)測的通信鏈路的數(shù)據(jù)流量變化情況確定發(fā)送握手報文的頻率;握手報文發(fā)送單元根據(jù)確定的頻率發(fā)送握手報文。
本發(fā)明所述的裝置還包括定時器若需要提高握手報文發(fā)送的頻率,則在發(fā)送握手報文后啟動定時器,當接收到握手報文的響應報文時停止計時,當超時時,觸發(fā)鏈路拆除模塊;鏈路拆除模塊用于根據(jù)定時器的觸發(fā)進行通信鏈路的拆除操作。
綜上所述,本發(fā)明利用實時檢測鏈路流量的變化,來動態(tài)調整發(fā)送握手報文的方式,改善了目前的技術不足。流量有變化時,鏈路通信工作狀態(tài)正常,在保證通信正常情況下,少發(fā)送報文,減少鏈路中數(shù)據(jù)流量。流量不變化時,鏈路通信工作狀態(tài)可能不正常情況下,多發(fā)送報文來驗證接收端,處理該異常情況。綜上所述,本發(fā)明利用實時檢測鏈路流量的變化,來動態(tài)調整發(fā)送握手報文的方式,改善了目前的技術不足。流量有變化時,鏈路通信工作狀態(tài)正常,在保證通信正常情況下,少發(fā)送報文,減少鏈路中數(shù)據(jù)流量。流量不變化時,鏈路通信工作狀態(tài)可能不正常情況下,多發(fā)送報文來驗證接收端,處理該異常情況。
以上所述,僅為本發(fā)明較佳的具體實施方式
,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到的變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應該以權利要求的保護范圍為準。
權利要求
1.一種通信系統(tǒng)中發(fā)送握手報文的方法,其特征在于,包括A、在通信鏈路的實體上或者實體之間監(jiān)測預定時間段內通信鏈路上的數(shù)據(jù)流量;B、依據(jù)監(jiān)測的通信鏈路中數(shù)據(jù)流量變化情況確定發(fā)送握手報文方式;C、根據(jù)確定的發(fā)送握手報文方式發(fā)送握手報文。
2.根據(jù)權利要求1所述的通信系統(tǒng)中發(fā)送握手報文的方法,其特征在于,所述的步驟B包括B1、當通信鏈路上的數(shù)據(jù)流量發(fā)生變化時,則認為通信鏈路的工作正常,并采用減少發(fā)送握手報文方式;B2、當通信鏈路上的數(shù)據(jù)流量沒有變化時,采用增加發(fā)送握手報文方式。
3.根據(jù)權利要求2所述的通信系統(tǒng)中發(fā)送握手報文的方法,其特征在于,所述的減少發(fā)送握手報文方式包括減少發(fā)送握手報文方式可以是不發(fā)送握手報文,或者是發(fā)送頻率與通信鏈路上數(shù)據(jù)流量的變化大小成反比例關系,或者是發(fā)送握手報文后無需設置等待回應的時間。
4.根據(jù)權利要求2或3所述的通信系統(tǒng)中發(fā)送握手報文的方法,其特征在于,所述的步驟B1包括當采用減少發(fā)送握手報文方式時,如果接收方收到發(fā)送方發(fā)送的握手報文,則接收方向發(fā)送方發(fā)送握手報文回應,發(fā)送方在收到握手回應報文后,取消設定的回應等待時間。
5.根據(jù)權利要求2所述的通信系統(tǒng)中發(fā)送握手報文的方法,其特征在于,所述的步驟B2包括B21、啟動一個設定的回應等待時間,如果系統(tǒng)等待的時間超過回應等待時間,則執(zhí)行B23,如果沒有,則執(zhí)行B22;B22、在回應等待時間內,采用增加發(fā)送握手報文方式,若收到對端的握手回應報文,則該通信鏈路的工作狀態(tài)正常;B23、若超過等待時間后,仍沒收到應答報文,則該通信鏈路狀態(tài)已不正常,通知本端拆除該通信鏈路。
6.根據(jù)權利要求2或5所述的通信系統(tǒng)中發(fā)送握手報文的方法,其特征在于,所述的增加發(fā)送握手報文方式包括增加發(fā)送握手報文方式可以是增加每次所發(fā)送握手報文的數(shù)量或者是縮短發(fā)送握手報文的時間間隔。
7.根據(jù)權利要求2或5所述的通信系統(tǒng)中發(fā)送握手報文的方法,其特征在于,所述的增加發(fā)送握手報文方式包括增加發(fā)送握手報文方式的發(fā)送頻率與通信鏈路上數(shù)據(jù)流量的變化大小成反比例關系。
8.一種通信系統(tǒng)中發(fā)送握手報文的裝置,其特征在于,包括流量監(jiān)測單元用于監(jiān)測通信鏈路上預定時間周期內的數(shù)據(jù)流量;發(fā)送方式處理單元用于根據(jù)監(jiān)測的通信鏈路的數(shù)據(jù)流量變化情況確定發(fā)送握手報文的頻率;握手報文發(fā)送單元根據(jù)確定的頻率發(fā)送握手報文。
9.根據(jù)權利要求8所述的通信系統(tǒng)中發(fā)送握手報文的裝置,其特征在于,所述的裝置還包括定時器若需要提高握手報文發(fā)送的頻率,則在發(fā)送握手報文后啟動定時器,當接收到握手報文的響應報文時停止計時,當超時時,觸發(fā)鏈路拆除模塊;鏈路拆除模塊用于根據(jù)定時器的觸發(fā)進行通信鏈路的拆除操作。
全文摘要
本發(fā)明涉及一種通信系統(tǒng)中發(fā)送握手報文的方法。本發(fā)明主要包括首先,檢測網(wǎng)絡鏈路中一段時間內數(shù)據(jù)流量大小的變化。之后,依據(jù)數(shù)據(jù)流量的有無變化來判斷鏈路的狀況,確定PPP握手報文發(fā)送的方式,如果數(shù)據(jù)流量有變化,則認為鏈路工作狀況正常,減少握手報文的發(fā)送,如果數(shù)據(jù)流量沒有變化,則工作可能不正常,通過增加握手報文的發(fā)送來進一步來判斷工作狀態(tài)。因此,本發(fā)明可有效地解決了有用戶在線情況下,由于握手報文丟失而導致的用戶下線問題,同時減少了在鏈路狀況良好時,過多的發(fā)送握手報文所帶來的無謂的網(wǎng)絡開銷。
文檔編號H04L12/56GK1956444SQ20051011450
公開日2007年5月2日 申請日期2005年10月24日 優(yōu)先權日2005年10月24日
發(fā)明者夏開軍, 張軼炯 申請人:華為技術有限公司