專利名稱:一種進行負載均衡的多模移動終端及方法
技術領域:
本發(fā)明涉及移動通信領域,特別是涉及一種進行負載均衡的多模移動終端及方法。
背景技術:
無線局域網(Wireless Local Area Network,簡稱WLAN)的演化和成功展開產生了與3G移動蜂窩網絡如TD-SCDMA、WCDMA、CDMA2000等網絡融合在一起的需求,這種融合的主要目的是發(fā)展出新的移動數據網絡,使得在熱點地區(qū)能以非常高數據速率支持普遍存在的數據業(yè)務,同時減輕大量數據業(yè)務給3G移動網絡帶來的數據流量上的壓力。目前國內的三大電信運營商均發(fā)展了自己的無線局域網絡,在固網與移動融合已成為全球電信業(yè)發(fā)展趨勢的背景下,發(fā)展無線局域網和其他移動網絡融合,以支撐并開拓新型移動數據業(yè)務,是必然的選擇,另外家庭級別的無線局域網發(fā)展也相當迅速。終端不僅需要具備多種無線接入能力,也要考慮在無處不在的無線局域網絡環(huán)境下,終端如何將無線局域網的速度加上蜂窩網絡的速度融合共存,充分發(fā)揮終端多網絡接口的速度優(yōu)勢,以滿足用戶獲取更好的業(yè)務體驗的需求和目的。隨著智能終端業(yè)務的發(fā)展,多網絡接口智能終端越來越傾向于多個數據鏈路并發(fā),終端可以從不同數據鏈路收發(fā)數據報文,盡可能的發(fā)揮多數據鏈路的速度優(yōu)勢。但是目前智能終端系統(tǒng)的TCP/IP協議棧在設計時并沒有充分考慮到多網絡接口的充分支持,數據業(yè)務收發(fā)的數據報文在經過路由表進行路由選擇時,如果沒有匹配到指定路由,則都通過優(yōu)先級最高的默認路由。Internet數據業(yè)務在使用網絡接口收發(fā)報文時,都會使用系統(tǒng)TCP/IP協議棧提供的套接字(Socket)接口,進行連接建立、數據傳輸等操作。存在一些應用會先獲取IP地址,再通過綁定(bind)函數進行socket與本地IP地址的綁定,但使用此socket在傳輸數據時所使用的本地IP地址最終還是由IP協議棧中路由匹配得到的數據鏈路來決定。上述多網絡接口智能終端在多數據鏈路并發(fā)時,存在著不論負責連接的套接字有沒綁定本機IP地址,數據業(yè)務始終從優(yōu)先級最高的默認路由所匹配的數據鏈路上進行收發(fā)報文的問題,沒有充分發(fā)揮終端多網絡接口的速度優(yōu)勢。
發(fā)明內容
本發(fā)明要解決的技術問題是提供一種負載均衡的多模移動終端及方法,解決多模移動終端的多網絡接口不能得到充分利用的問題。為了解決上述技術問題,本發(fā)明提供了一種負載均衡的多模移動終端,其中,包括流量計算模塊、負載管理模塊和路由轉發(fā)模塊;所述流量計算模塊,用于計算所述多模移動終端所連接的各網絡數據鏈路的負載
信息;所述負載管理模塊,用于在新建套接字連接時,根據從所述流量計算模塊獲取所述各條網絡數據鏈路的負載信息確定負載最輕的網絡數據鏈路,將所述新建的套接字連接與此負載最輕的網絡數據鏈路對應的網絡接口綁定;所述路由轉發(fā)模塊,用于通過與所述新建的套接字連接綁定的網絡接口進行所述新建的套接字連接的數據收發(fā)。進一步地,上述移動終端還可以具有以下特點所述負載信息是指各條數據鏈路的數據傳輸速度以及網絡接口最大連接速度,負載最輕的數據鏈路是指數據傳輸速度與網絡接口最大連接速度的比值最小的網絡數據鏈路。進一步地,上述移動終端還可以具有以下特點所述網絡數據鏈路包括無線局域網數據鏈路和/或移動蜂窩網絡數據鏈路。進一步地,上述移動終端還可以具有以下特點所述負載管理模塊,還用于將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定;所述路由轉發(fā)模塊,還用于維持與所述新建的套接字連接綁定的網絡接口和所述本機IP地址的對應關系。進一步地,上述移動終端還可以具有以下特點所述負載管理模塊,還用于判斷與所述新建的套接字連接綁定的本機IP地址為無效地址時,或者不存在與所述新建的套接字連接綁定的本機IP地址時,將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定。為了解決上述技術問題,本發(fā)明提供了一種進行負載均衡的方法,其中,計算多模移動終端所連接的各網絡數據鏈路的負載信息;在新建套接字連接時,根據所述各條網絡數據鏈路的負載信息確定負載最輕的網絡數據鏈路,將所述新建的套接字連接與此負載最輕的網絡數據鏈路對應的網絡接口綁定;通過與所述新建的套接字連接綁定的網絡接口進行所述新建的套接字連接的數據收發(fā)。進一步地,上述方法還可以具有以下特點所述負載信息是指各條數據鏈路的數據傳輸速度以及網絡接口最大連接速度,負載最輕的數據鏈路是指數據傳輸速度與網絡接口最大連接速度的比值最小的網絡數據鏈路。進一步地,上述方法還可以具有以下特點所述網絡數據鏈路包括無線局域網數據鏈路和/或移動蜂窩網絡數據鏈路。進一步地,上述方法還可以具有以下特點所述多模移動終端將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定,維持與所述新建的套接字連接綁定的網絡接口和所述本機IP地址的對應關系。進一步地,上述方法還可以具有以下特點所述多模移動終端判斷與所述新建的套接字連接綁定的本機IP地址為無效地址時,或者不存在與所述新建的套接字連接綁定的本機IP地址時,將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定。本方案可以解決多模移動終端的多網絡接口不能得到充分利用的問題,在多模移動終端的多條網絡鏈路并發(fā)時,使各條鏈路數據流量負載均衡。
圖I是實施例中負載均衡方法的示意圖;圖2是實施例中負載均衡的多模移動終端的結構示意圖;圖3是實施例中負載均衡的多模移動終端在Android平臺實現的架構圖。
具體實施例方式本方案的多模移動終端是指固定移動融合(FMC Fix-Mobile Convergence)的移動終端。此類移動終端既可接入無線局域網,也可以接入CDMA lx、CDMA evdo、GSM/GPRS、 WCDMA、TD-SCDMA等蜂窩式移動網絡。此類移動終端可以在多條網絡鏈路同時工作,本方案中,通過在新建Socket連接時,將所述新建的socket連接與所述負載最輕的網絡接口綁定,達到多數據鏈路并發(fā)時,各條鏈路數據流量負載均衡的目的。如圖I所示進行負載均衡的方法包括計算多模移動終端所連接的各網絡數據鏈路的負載信息;在新建套接字連接時,根據所述各條網絡數據鏈路的負載信息確定負載最輕的網絡數據鏈路,將所述新建的套接字連接與此負載最輕的網絡數據鏈路對應的網絡接口綁定;通過與所述新建的套接字連接綁定的網絡接口進行所述新建的套接字連接的數據收發(fā)。所述負載信息是指各條數據鏈路的數據傳輸速度以及網絡接口最大連接速度,負載最輕的數據鏈路是指數據傳輸速度與網絡接口最大連接速度的比值最小的網絡數據鏈路。所述網絡數據鏈路包括無線局域網數據鏈路和/或移動蜂窩網絡數據鏈路。所述多模移動終端將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定,維持與所述新建的套接字連接綁定的網絡接口和所述本機IP地址的對應關系。所述多模移動終端判斷與所述新建的套接字連接綁定的本機IP地址為無效地址時,或者不存在與所述新建的套接字連接綁定的本機IP地址時,將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定。本方案中增加了流量計算模塊(201)、負載管理模塊(202)。如圖I所示,負載管理模塊與移動終端中的路由轉發(fā)模塊(203)相連。如圖3所示是新增模塊在Android平臺內的位置。流量計算模塊(201),用于計算所述多模移動終端所連接的各網絡數據鏈路的負載信息;負載管理模塊(202),用于在新建套接字連接時,根據從所述流量計算模塊獲取所述各條網絡數據鏈路的負載信息確定負載最輕的網絡數據鏈路,將所述新建的套接字連接與此負載最輕的網絡數據鏈路對應的網絡接口綁定;路由轉發(fā)模塊(203),用于通過與所述新建的套接字連接綁定的網絡接口進行所述新建的套接字連接的數據收發(fā)。所述負載信息是指各條數據鏈路的數據傳輸速度以及網絡接口最大連接速度,負載最輕的數據鏈路是指數據傳輸速度與網絡接口最大連接速度的比值最小的網絡數據鏈路。所述網絡數據鏈路包括無線局域網數據鏈路和/或移動蜂窩網絡數據鏈路。負載管理模塊(202)還用于將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定;路由轉發(fā)模塊(103)還用于維持與所述新建的套接字連接綁定的網絡接口和所述本機IP地址的對應關系。負載管理模塊(203)還用于判斷與所述新建的套接字連接綁定的本機IP地址為無效地址時,或者不存在與所述新建的套接字連接綁定的本機IP地址時,將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定。本方案中,負載均衡功能可以與鏈路優(yōu)選功能一樣,通過設置界面來啟用,并且兩者只能選其一。負載均衡功能實現的前提條件是蜂窩網絡PS鏈路和WLAN鏈路同時存在, 網絡應用程序可以通過任意一條鏈路進行網絡數據報文的收發(fā)處理。下面通過具體實施例詳細說明本發(fā)明。具體實施例一步驟I,在無線局域網環(huán)境下,UE開啟WLAN模塊,掃描AP列表,選擇可用的SSID, 進行連接,UE關聯到上述AP后,獲取IP地址等網絡配置。同時蜂窩網絡數據連接也存在, 兩條數據鏈路并發(fā),提示用戶已開啟負載均衡功能,可通過界面配置關閉此功能。步驟2, Internet-Capable 應用程序啟動。步驟3,調用套接字接口創(chuàng)建一個socket連接,獲取此套接字描述符socketfd。步驟4,負載管理模塊調用流量計算模塊接口函數,獲取當前蜂窩和WLAN兩條鏈路上傳輸數據流量的速率SI、S2(b/s),以及上述兩個網絡接口上最大理論連接速度 Smaxl、Smax2(b/s)。負載管理模塊計算上述兩個網絡接口的負載率Ldevl = Sl/Smaxl, Ldev2 = S2/Smax2,并比較得出較低負載率所對應的網絡接口 dev和本機IP地址。負載管理模塊調用bind函數將socketfd與上述本機IP地址綁定。步驟5,負載管理模塊將socketfd綁定到負載率低的網絡接口 dev上,調用函數 setsockopt完成此步驟。步驟6,Socketfd收發(fā)數據經過TCP/IP協議棧,進行路由表查找時,增加了一個查找鍵,將出口固定為dev,并保持dev和socketfd綁定的本機IP地址匹配。應用程序創(chuàng)建多個socket連接時,重復步驟3到步驟6。多個應用程序啟動時,重復步驟2到步驟6。具體實施例二步驟I,在無線局域網環(huán)境下,UE開啟WLAN模塊,掃描AP列表,選擇可用的SSID, 進行連接,UE關聯到上述AP后,獲取IP地址等網絡配置。同時蜂窩網絡數據連接也存在, 兩條數據鏈路并發(fā),提示用戶已開啟負載均衡功能,可通過界面配置關閉此功能。步驟2, Internet-Capable 應用程序啟動。步驟3,調用套接字接口創(chuàng)建一個socket連接,獲取此套接字描述符socketfd。步驟4,上述應用程序調用bind函數將socketfd與本地IP地址綁定。負載管理模塊檢查上述綁定的本地IP地址是否為有效地址,如果綁定的是有效鏈路IP地址,獲取此本地IP地址對應的網絡接口,并將socketfd與此網絡接口名綁定,在收發(fā)數據時將socket連接的數據在此網絡接口收發(fā);如果綁定的不是有效鏈路IP地址,執(zhí)行步驟5 ;步驟5,負載管理模塊調用流量計算模塊接口函數,獲取當前蜂窩和WLAN兩條鏈路上傳輸數據流量的速率SI、S2(b/s),以及上述兩個網絡接口上最大理論連接速度 Smaxl、Smax2(b/s)。負載管理模塊計算上述兩個網絡接口的負載率Ldevl = Sl/Smaxl, Ldev2 = S2/Smax2,并比較得出較低負載率所對應的網絡接口 dev和本機IP地址。負載管理模塊調用bind函數將socketfd與上述本機IP地址綁定。步驟6,負載管理模塊將socketfd綁定到負載率低的網絡接口 dev上,調用函數 setsockopt完成此步驟。步驟7,Socketfd收發(fā)數據經過TCP/IP協議棧,進行路由表查找時,增加了一個查找鍵,將外出設備固定為dev,并保持dev和socketfd綁定的本機IP地址匹配。應用程序創(chuàng)建多個socket連接時,重復步驟3到步驟7。多個應用程序啟動時,重復步驟2到步驟7。以Android雙模WLAN終端為例,在鏈路并發(fā)時,可以將新創(chuàng)建的socket連接將綁定到負載輕的網絡鏈路上,充分發(fā)揮雙模WLAN終端的優(yōu)勢,有效增加了雙模WLAN終端的實際傳輸速率和可以達到的最大網絡速率,達到本專利所要實現的目的。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中的特征可以相
互任意組合。當然,本發(fā)明還可有其他多種實施例,在不背離本發(fā)明精神及其實質的情況下,熟悉本領域的技術人員可根據本發(fā)明作出各種相應的改變和變形,但這些相應的改變和變形都應屬于本發(fā)明所附的權利要求的保護范圍。本領域普通技術人員可以理解上述方法中的全部或部分步驟可通過程序來指令相關硬件完成,所述程序可以存儲于計算機可讀存儲介質中,如只讀存儲器、磁盤或光盤等??蛇x地,上述實施例的全部或部分步驟也可以使用一個或多個集成電路來實現。相應地,上述實施例中的各模塊/單元可以采用硬件的形式實現,也可以采用軟件功能模塊的形式實現。本發(fā)明不限制于任何特定形式的硬件和軟件的結合。
權利要求
1.一種負載均衡的多模移動終端,其中,包括流量計算模塊、負載管理模塊和路由轉發(fā)模塊;所述流量計算模塊,用于計算所述多模移動終端所連接的各網絡數據鏈路的負載信所述負載管理模塊,用于在新建套接字連接時,根據從所述流量計算模塊獲取所述各條網絡數據鏈路的負載信息確定負載最輕的網絡數據鏈路,將所述新建的套接字連接與此負載最輕的網絡數據鏈路對應的網絡接口綁定;所述路由轉發(fā)模塊,用于通過與所述新建的套接字連接綁定的網絡接口進行所述新建的套接字連接的數據收發(fā)。
2.如權利要求I所述的移動終端,其特征在于,所述負載信息是指各條數據鏈路的數據傳輸速度以及網絡接口最大連接速度,負載最輕的數據鏈路是指數據傳輸速度與網絡接口最大連接速度的比值最小的網絡數據鏈路。
3.如權利要求I所述的移動終端,其特征在于,所述網絡數據鏈路包括無線局域網數據鏈路和/或移動蜂窩網絡數據鏈路。
4.如權利要求I所述的移動終端,其特征在于,所述負載管理模塊,還用于將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定;所述路由轉發(fā)模塊,還用于維持與所述新建的套接字連接綁定的網絡接口和所述本機 IP地址的對應關系。
5.如權利要求4所述的移動終端,其特征在于,所述負載管理模塊,還用于判斷與所述新建的套接字連接綁定的本機IP地址為無效地址時,或者不存在與所述新建的套接字連接綁定的本機IP地址時,將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定。
6.一種進行負載均衡的方法,其中,計算多模移動終端所連接的各網絡數據鏈路的負載信息;在新建套接字連接時,根據所述各條網絡數據鏈路的負載信息確定負載最輕的網絡數據鏈路,將所述新建的套接字連接與此負載最輕的網絡數據鏈路對應的網絡接口綁定;通過與所述新建的套接字連接綁定的網絡接口進行所述新建的套接字連接的數據收發(fā)。
7.如權利要求6所述的方法,其特征在于,所述負載信息是指各條數據鏈路的數據傳輸速度以及網絡接口最大連接速度,負載最輕的數據鏈路是指數據傳輸速度與網絡接口最大連接速度的比值最小的網絡數據鏈路。
8.如權利要求6所述的方法,其特征在于,所述網絡數據鏈路包括無線局域網數據鏈路和/或移動蜂窩網絡數據鏈路。
9.如權利要求6所述的方法,其特征在于,所述多模移動終端將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定,維持與所述新建的套接字連接綁定的網絡接口和所述本機IP地址的對應關系。
10.如權利要求9所述的方法,其特征在于,所述多模移動終端判斷與所述新建的套接字連接綁定的本機IP地址為無效地址時, 或者不存在與所述新建的套接字連接綁定的本機IP地址時,將所述新建的套接字連接與所述負載最輕的網絡數據鏈路對應的本機IP地址綁定。
全文摘要
本發(fā)明公開了一種進行負載均衡的多模移動終端及方法,計算多模移動終端所連接的各網絡數據鏈路的負載信息;在新建套接字連接時,根據所述各條網絡數據鏈路的負載信息確定負載最輕的網絡數據鏈路,將所述新建的套接字連接與此負載最輕的網絡數據鏈路對應的網絡接口綁定;通過與所述新建的套接字連接綁定的網絡接口進行所述新建的套接字連接的數據收發(fā)。本方案可以解決多模移動終端的多網絡接口不能得到充分利用的問題,在多模移動終端的多條網絡鏈路并發(fā)時,使各條鏈路數據流量負載均衡。
文檔編號H04W88/06GK102595502SQ201210023029
公開日2012年7月18日 申請日期2012年2月2日 優(yōu)先權日2012年2月2日
發(fā)明者李建勇 申請人:中興通訊股份有限公司