專利名稱:一種移動網絡中即時通訊的路由方法
技術領域:
本發明屬于移動通訊技術領域,尤其涉及一種移動網絡中即時通訊的路由方法。
背景技術:
即時通訊(IM)系統是通過網絡進行實時消息傳遞的系統。利用該系統,可以通過互聯網實現不同IM通訊客戶端之間的實時通訊,從而能夠實現在發送端和接收端之間進行包括文本、聲音、圖片、視頻在內的數據傳輸,該種即時通訊在以互聯網為代表的計算機網絡中已經發展的比較完善。隨著例如通用分組無線系統(GPRS)和碼分多址系統(CDMA)等移動網絡的傳輸速度和移動終端處理能力的不斷發展,并且由于移動終端不可比擬的靈活性和便利性,IM通訊系統正在逐漸向移動網絡平臺進行移植,以實現基于移動網絡平臺進行IM通訊。
在進行IM通訊的過程中,涉及到IM通訊的路由策略問題。該IM通訊路由策略指的是IM通訊系統中不同客戶端之間進行IM通訊時在網絡中傳遞即時消息的傳遞方式,該策略直接影響到IM通訊的效率和安全。
在現有技術中,IM通訊一般均為轉發通訊方式,該種通訊方式采用服務器中轉的路由策略,參見圖1,采用該種路由策略,IM通訊系統通過服務器中轉實現即時消息的傳送發送方和接收方需要登陸IM通訊服務器,發送方在向接收方發送即時消息時,首先將該即時消息發送至IM通訊服務器,然后由該服務器將該即時消息轉發至接收方,從而通過IM通訊服務器的中轉實現發送方和接收方之間的IM通訊;其中,發送方和接收方可以分別為個人電腦(PC)終端或移動終端設備。
采用現有技術中的這種轉發通訊方式,雖然能夠在移動網絡上實現IM通訊,但是具有如下缺點1、此種轉發通訊方式由于需要通過服務器轉發即時消息,因此,其IM通訊能力受到IM通訊服務器自身通訊能力的限制,在海量用戶通訊時,會造成十分明顯的瓶頸效應,即時消息的延時也會因此而增大;2、此種轉發通訊方式是一種靜態路由策略,不能根據移動網絡傳輸特性動態調整即時消息路由策略,從而不利于提高IM通訊的服務質量。
發明內容
有鑒于此,本發明的主要目的在于提供一種移動網絡中即時通訊的路由方法,能夠避免IM通訊服務器自身通訊能力對IM通訊的限制,并能實現根據移動網絡傳輸特性動態調整即時消息路由策略。
為實現上述目的,本發明提供了一種移動網絡中即時通訊的路由方法,該方法包括步驟A獲取預先配置的即時通訊的路由策略,根據該路由策略判斷是否采用轉發通訊方式,如果是,則執行步驟B,否則,執行步驟C;步驟B即時通訊的發送方和接收方之間通過轉發通訊方式實現即時通訊消息的路由,然后結束本流程;步驟C進行直接通訊測試,如果測試通過,則即時通訊的發送方和接收方之間通過直接通訊方式實現即時通訊消息的路由,否則,通過轉發通訊方式實現即時通訊消息的路由。
其中,所述即時通訊的發送方和接收方之間通過直接通訊方式實現即時通訊的路由包括發送方將即時通訊消息直接發送至接收方。
其中,所述即時通訊的發送方和接收方之間通過轉發通訊方式實現即時通訊的路由包括發送方將即時通訊消息發送至服務器,服務器再將該即時通訊消息轉發至接收方。
其中,步驟C所述直接通訊測試包括向即時通訊的接收方發送檢測數據,判斷是否收到接收方的響應消息,如果是,則測試通過,否則,測試不通過。
其中,所述向即時通訊的接收方發送檢測數據進一步包括啟動定時,如果沒有收到響應消息進一步包括判斷定時是否超時,如果不是,則返回所述判斷是否收到接收方的響應消息,否則,測試不通過。
其中,在步驟A之前,該方法進一步包括獲取接收方的狀態信息,根據該信息判斷接收方是否在線,如果是,則向接收方發送激活請求,接收方收到該請求后實現在線。
其中,服務器獲取接收方的狀態信息,并根據該信息判斷接收方是否在線,如果是,則服務器向接收方發送激活請求,接收方實現在線后進一步包括將接收方在線的狀態信息返回給服務器,服務器更新該接收方的狀態信息。
其中,該方法進一步包括修改所述即時通訊的路由策略并保存。
其中,所述通過直接通訊方式實現即時通訊消息的路由進一步包括判斷是否出現數據發送超時,如果是,則轉入轉發通訊方式,通過轉發通訊方式實現即時通訊消息的路由。
可見,本發明具有如下有益效果1、由于采用直接通訊方式和轉發通訊方式來實現即時消息的路由,因此,可以很好的避免轉發即時消息的服務器自身通訊能力對于即時通訊能力的影響,在類似移動網絡等網絡帶寬有限的環境下,能夠有效地減少帶寬的占用,提高移動網絡中即時通訊的效率;2、由于本發明能夠根據網絡狀況或者使用者的靈活設定來進行即時消息的路由,因此,能夠對即時消息的傳輸方式進行動態調整,有利于提高即時通訊的服務質量,從而利于即時通訊在移動網絡的迅速推廣使用。
圖1為轉發通訊方式的通訊模型示意圖。
圖2為本發明的路由策略模型示意圖。
圖3為實現本發明的流程圖。
圖4為實現直接通訊測試的流程圖。
圖5為服務器激活接收方的流程圖。
圖6為接收方在線情況下直接通訊方式的時序圖。
圖7為接收方不在線情況下直接通訊方式的時序圖。
圖8為接收方在線情況下轉發通訊方式的時序圖。
圖9為接收方不在線情況下轉發通訊方式的時序圖。
具體實施例方式
本發明為一種移動網絡中即時通訊的路由方法,采用該方法,在進行即時通訊時,能夠從轉發通訊方式和直接通訊方式中選擇一種合適的通訊方式實現即時消息路由,從而能夠避免由于服務器轉發即時消息而帶來的瓶頸效應,另外,該方法還能夠根據網絡傳輸特性動態調整即時消息路由策略,從而增加即時消息路由的靈活性。
下面結合附圖對本發明進行詳細描述。
在本發明中,在原有的轉發通訊方式這一路由策略的基礎上,新引入直接通訊方式的路由策略,該種直接通訊方式在發送方和接收方建立通訊關系后,通訊數據直接由發送方發送到接收方,而不再經過服務器;引入該直接通訊方式的路由策略之后,參見圖2,在即時通訊的發送方和接收方之間有兩條通路可供選擇一種是如圖所示4、5、6這樣的消息通路,利用該通路,即時消息從發送方首先發送到服務器,然后由服務器轉發至接收方,此種通路對應于轉發通訊的路由策略;另一種是如圖所示1、2、3這樣的消息通路,利用該通路,即時消息從發送方直接發送到接收方,而不再經過服務器轉發,此種通路對應于直接通訊的路由策略。
在本發明中,發送方和接收方的用戶如果要進行即時通訊,則必須登錄服務器,對于使用移動終端的用戶,其移動終端通過例如GPRS和CDMA1X這樣的移動網絡登錄服務器,對于使用PC的用戶,PC通過計算機網絡通訊技術登錄服務器。登錄服務器之后,服務器會將該用戶的登錄信息記錄在服務器中,以便進行即時通訊,其中,該信息至少包括用戶在線狀態信息以及用戶登錄的網際協議(IP)地址。服務器通過用戶狀態信息庫保存用戶的登錄信息,該信息庫采用關系數據庫實現。用戶登錄后,通過數據庫查詢獲取接收方的信息,當狀態信息庫發生變化時,服務器將變化的信息發送給相應客戶端;在該信息庫中,至少保存有如下信息用戶登錄名,用于唯一識別用戶;用戶在線狀態,用戶判斷是否啟動喚醒功能;用戶登錄IP地址,用于進行直接或轉發消息通訊。
在本發明中,用于轉發即時消息的服務器則需要具有數據轉發功能,能夠將發送方發送的消息不加修改地復制到一個或者多個接收方,實現數據轉發。
以下所述本發明的具體實施例,均是在上述技術的基礎上進行的。
下面對采用了上述兩種路由策略的本發明的具體實現進行詳細描述。
參見圖3,實現本發明需要以下步驟步驟301獲取接收方的狀態信息,該狀態信息至少包括接收方是否在線的信息;其中,該狀態信息可以從服務器中保存的用戶信息中得到;步驟302根據步驟30 1中得到的接收方的狀態信息,判斷接收方是否在線,如果是,則執行步驟303及其后續步驟,否則,執行步驟309,請求服務器激活接收方,以使得接收方自動上線或手工上線,然后再返回步驟301;
步驟303獲取發送方靜態配置的路由策略;其中,該靜態路由策略可以為使用者通過終端指定的默認路由策略,也可以為在實際使用過程中使用者根據需要進行更改后的新的路由策略;步驟304根據所獲取的靜態配置的路由策略,判斷該路由策略是否為轉發通訊的路由策略,如果是,則執行步驟308,按照轉發通訊方式實現即時通訊消息的路由;否則,執行步驟305及其后續步驟;步驟305~步驟306進行直接通訊測試,以判斷當前是否能夠實現直接通訊,如果該測試通過,則執行步驟307,按照直接通訊方式實現即時通訊消息的路由;否則,執行步驟308,按照轉發通訊方式實現即時通訊消息的路由。
其中,上述步驟中,按照直接通訊方式實現即時通訊消息的路由為發送方和接收方之間直接進行即時消息的發送和接收,無需服務器轉發即時消息;在上述步驟中,按照轉發通訊方式實現即時通訊消息的路由為發送方先將即時消息發送至服務器,服務器再將該消息轉發至接收方,整個即時消息的通訊過程需要服務器參與。
在本發明實施例中,如上所述進行即時消息轉發的服務器與用戶所登錄的服務器為一個服務器,在本發明其它實施例中,也可采用不同的服務器分別作為進行即時消息轉發的服務器以及用戶登錄的服務器,并不影響本發明的實現。
在本發明實施例中,在通過直接通訊方式實現即時消息路由的過程中,如果出現由于包括連接中斷在內的原因而使得數據發送超時的情況,則轉入轉發通訊方式,以轉發通訊方式實現即時消息的路由。
下面對步驟305中所述直接通訊測試的具體實現進行詳細介紹,參見圖4,實現該測試具體需要以下步驟步驟401~步驟402發送方向接收方發送檢測數據,并啟動定時;
步驟403發送方判斷是否收到接收方返回的響應消息,如果是,則判斷得到測試通過,結束所述直接通訊的測試過程,并且,參照圖3所示,按照直接通訊方式實現即時消息的路由;否則,執行步驟404;步驟404判斷定時是否超時,如果不是,則返回步驟403,繼續判斷是否收到接收方的響應消息,如果是,則判斷得到測試沒有通過,結束所述直接通訊的測試過程,并且,參照圖3所示,按照轉發通訊方式實現即時消息的路由。
在步驟309中,請求服務器激活接收方,服務器在接收到該請求后,參見圖5,通過以下步驟實現激活接收方步驟501~步驟502服務器收到激活請求,然后發送激活通知消息至接收方;步驟503接收方收到激活通知消息后,進行上線操作,然后判斷接收方是否已經在線,如果是,則執行步驟504,否則,返回本步驟,直至接收方在線;步驟504向發送方發送狀態更新消息,向發送方通知接收方已經在線。
下面結合時序圖,對本發明采用直接通訊方式和轉發通訊方式進行即時通訊路由進行描述。
圖6和圖7為直接通訊方式的時序圖圖6所示為接收方在線情況下,采用直接通訊方式進行即時消息路由的時序圖,發送方和接收方均通過登錄服務器實現在線后,發送方從服務器獲取接收方在線的狀態信息,然后,發送方和接收方之間進行通訊測試,如果通訊測試通過,則發送方和接收方之間直接進行數據發送過程;圖7所示為接收方不在線情況下,采用直接通訊方式進行即時消息路由的時序圖,發送方已經通過登錄服務器實現在線,而接收方并未通過登錄服務器在線,發送方從服務器獲取接收方不在線的狀態信息,然后通過服務器向接收方發送激活通知,接收方收到該通知后,登錄服務器以實現在線,然后,發送方和接收方之間進行通訊測試,如果通訊測試通過,則發送方和接收方之間直接進行數據發送過程;圖8和圖9為轉發通訊方式的時序圖圖8所示為接收方在線情況下,采用轉發通訊方式進行即時消息路由的時序圖,發送方和接收方均通過登錄服務器實現在線后,發送方直接將數據發送至服務器,服務器收到數據后,直接將數據轉發至接收方;圖9所示為接收方不在線情況下,采用轉發通訊方式進行即時消息路由的時序圖,發送方通過登錄服務器實現在線,然后,發送方將數據發送至服務器,服務器判斷得到接收方不在線,向接收方發送激活通知,接收方收到該通知后登錄服務器以實現在線,并暫存數據直至接收方在線后,將該數據再轉發至接收方。
以上所述僅為本發明的較佳實施例而已,并不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護范圍之內。
權利要求
1.一種移動網絡中即時通訊的路由方法,其特征在于,該方法包括步驟A獲取預先配置的即時通訊的路由策略,根據該路由策略判斷是否采用轉發通訊方式,如果是,則執行步驟B,否則,執行步驟C;步驟B即時通訊的發送方和接收方之間通過轉發通訊方式實現即時通訊消息的路由,然后結束本流程;步驟C進行直接通訊測試,如果測試通過,則即時通訊的發送方和接收方之間通過直接通訊方式實現即時通訊消息的路由,否則,通過轉發通訊方式實現即時通訊消息的路由。
2.根據權利要求1所述的方法,其特征在于,所述即時通訊的發送方和接收方之間通過直接通訊方式實現即時通訊的路由包括發送方將即時通訊消息直接發送至接收方。
3.根據權利要求1所述的方法,其特征在于,所述即時通訊的發送方和接收方之間通過轉發通訊方式實現即時通訊的路由包括發送方將即時通訊消息發送至服務器,服務器再將該即時通訊消息轉發至接收方。
4.根據權利要求1所述的方法,其特征在于,步驟C所述直接通訊測試包括向即時通訊的接收方發送檢測數據,判斷是否收到接收方的響應消息,如果是,則測試通過,否則,測試不通過。
5.根據權利要求4所述的方法,其特征在于,所述向即時通訊的接收方發送檢測數據進一步包括啟動定時,如果沒有收到響應消息進一步包括判斷定時是否超時,如果不是,則返回所述判斷是否收到接收方的響應消息,否則,測試不通過。
6.根據權利要求1所述的方法,其特征在于,在步驟A之前,該方法進一步包括獲取接收方的狀態信息,根據該信息判斷接收方是否在線,如果是,則向接收方發送激活請求,接收方收到該請求后實現在線。
7.根據權利要求6所述的方法,其特征在于,服務器獲取接收方的狀態信息,并根據該信息判斷接收方是否在線,如果是,則服務器向接收方發送激活請求,接收方實現在線后進一步包括將接收方在線的狀態信息返回給服務器,服務器更新該接收方的狀態信息。
8.根據權利要求1所述的方法,其特征在于,該方法進一步包括修改所述即時通訊的路由策略并保存。
9.根據權利要求1所述的方法,其特征在于,所述通過直接通訊方式實現即時通訊消息的路由進一步包括判斷是否出現數據發送超時,如果是,則轉入轉發通訊方式,通過轉發通訊方式實現即時通訊消息的路由。
全文摘要
本發明為一種移動網絡中即時通訊的路由方法,該方法包括步驟A獲取預先配置的即時通訊的路由策略,根據該路由策略判斷是否采用轉發通訊方式,如果是,則執行步驟B,否則,執行步驟C;步驟B即時通訊的發送方和接收方之間通過轉發通訊方式實現即時通訊消息的路由,然后結束本流程;步驟C進行直接通訊測試,如果測試通過,則即時通訊的發送方和接收方之間通過直接通訊方式實現即時通訊消息的路由,否則,通過轉發通訊方式實現即時通訊消息的路由。采用該方法,能夠避免由于服務器轉發即時消息而帶來的瓶頸效應,另外,該方法還能夠根據網絡傳輸特性動態調整即時消息路由策略,從而增加即時消息路由的靈活性。
文檔編號H04L29/02GK1719811SQ20041006970
公開日2006年1月11日 申請日期2004年7月9日 優先權日2004年7月9日
發明者段雪峰, 田邊 申請人:騰訊科技(深圳)有限公司