一種p2p連接方法、服務器、終端以及一種通信系統(tǒng)的制作方法
【技術領域】
[0001 ] 本發(fā)明涉及通信領域,尤其涉及一種P2P連接方法、一種P2P連接服務器、一種P2P連接終端以及一種通信系統(tǒng)。
【背景技術】
[0002]隨著互聯(lián)網(wǎng)的飛速發(fā)展和用戶對于多媒體信息需求的不斷增加,尤其是當用戶數(shù)量逐漸增多時,傳統(tǒng)的用戶端/服務器(Client/Server,C/S)模式的服務模式已經(jīng)漸漸不能滿足用戶終端對于獲取媒體信息的需求了。
[0003]如圖1所示,傳統(tǒng)C/S模式的系統(tǒng)架構(gòu)由互聯(lián)網(wǎng)協(xié)議控制(Internet ProtocolControl, IPC)站點、服務器以及用戶終端三部分組成,其中每個用戶終端均與服務器建立單獨的通信通道,用戶終端通過服務器從IPC站點獲取數(shù)據(jù)資源。因此當用戶終端的數(shù)量急劇增加時,用戶終端點播的視頻總量隨之增多,觀看視頻的用戶越多,網(wǎng)絡上冗余的數(shù)據(jù)就越多,因此服務器的負載也會急劇增加。服務器的可用資源,如:中央處理器(CentralProcessing Unit, CPU),內(nèi)存,特別是帶寬資源,已經(jīng)成為系統(tǒng)的瓶頸。當服務器的服務能力達到上限時,將不能為新加入的用戶提供服務,系統(tǒng)的規(guī)模也受到了限制。
[0004]端對端(Peer to Peer,P2P)技術的出現(xiàn)優(yōu)化了傳統(tǒng)的C/S模式的服務模式。P2P的一個重要特點是改變互聯(lián)網(wǎng)現(xiàn)在的以大網(wǎng)站為中心的狀態(tài)、重返〃非中心化",并把權力交還給用戶。P2P技術允許用戶終端之間建立P2P連接,這樣建立P2P連接的用戶終端便可以互相溝通,達到交換信息、資源共享的目的。但在基于P2P模式的流媒體傳輸系統(tǒng)架構(gòu)中,用戶終端之間的信息交流不是直接進行的,需要有位于中心的服務器來協(xié)調(diào)。
[0005]如圖2所示,在基于P2P模式的流媒體傳輸系統(tǒng)架構(gòu)中,用戶終端除了可以通過流媒體服務器從IPC站點獲取流媒體的數(shù)據(jù)外,還可以與其他用戶終端建立P2P連接,進而和其他用戶終端進行數(shù)據(jù)的上傳和下載,以達到用戶終端之間信息交換、數(shù)據(jù)資源共享的目的;每個用戶終端既充當用戶端又充當服務器,享用其他用戶終端提供的數(shù)據(jù)資源的同時也為其它用戶終端提供數(shù)據(jù)資源。目前服務器在基于P2P模式的流媒體傳輸系統(tǒng)架構(gòu)中只充當輔助作用,服務器為用戶終端選擇用于建立P2P連接的其他用戶終端,但服務器在為用戶終端選擇用于建立P2P連接的其他用戶終端時,該選擇是隨機進行的,沒有一定的規(guī)貝U,使得用戶終端不能選擇到最適合的用于建立P2P連接的其他用戶終端,使系統(tǒng)利用率降低。
[0006]綜上所述,目前基于P2P模式的流媒體傳輸系統(tǒng)并沒有從根本上解決傳統(tǒng)C/S模式的服務模式中存在的問題,服務器在為用戶終端選擇用于建立P2P連接的其他用戶終端時,該選擇是隨機進行的,不能為該用戶終端選擇到最適合的用于建立P2P連接的其他用戶終端,使得用戶終端之間不能很好地進行信息交換、數(shù)據(jù)資源的共享,進而使得網(wǎng)絡上冗余的數(shù)據(jù)增多,服務器的負載增大,系統(tǒng)成本高、利用率低。
【發(fā)明內(nèi)容】
[0007]本發(fā)明提供一種P2P連接方法、一種P2P連接服務器、一種P2P連接終端以及一種通信系統(tǒng),用于實現(xiàn)服務器更好的為用戶終端選擇用于建立P2P連接的其他用戶終端,以達到用戶終端之間數(shù)據(jù)資源共享的目的,降低系統(tǒng)成本,提高系統(tǒng)利用率,提高數(shù)據(jù)傳輸速率。
[0008]本發(fā)明實施例提供一種P2P連接方法,該方法包括:
[0009]服務器接收第一終端發(fā)送的請求服務器為該第一終端選擇建立P2P連接的終端的消息;
[0010]服務器根據(jù)本地接收并記錄的該第一終端的運營商信息以及其他終端的運營商信息為該第一終端選擇第二終端,并將所選擇的第二終端的信息通知該第一終端。
[0011]通過上述方法,第一終端便可以與服務器為其選擇的第二終端建立P2P連接,使得第一終端與第二終端之間進行數(shù)據(jù)資源共享,降低系統(tǒng)成本,提高系統(tǒng)利用率,提高數(shù)據(jù)傳輸速率。
[0012]較佳地,服務器根據(jù)本地接收并記錄的該第一終端的運營商信息以及其他終端的運營商信息為該第一終端選擇第二終端,包括:
[0013]服務器根據(jù)本地接收并記錄的該第一終端的運營商信息以及其他終端的運營商信息,從其他終端中選擇與所述第一終端所屬的運營商為同一運營商的第二終端。
[0014]這樣服務器便可以根據(jù)第一終端的運營商信息以及其他終端的運營商信息為該第一終端選擇P2P連接的第二終端。
[0015]較佳地,該方法還包括:
[0016]服務器接收并記錄第一終端上報的終端類型信息、地理位置信息和/或當前播放的媒體流的播放進度信息。
[0017]這樣服務器便可以根據(jù)第一終端的運營商信息、該第一終端的其他信息、以及其他終端的信息為該第一終端選擇P2P連接的第二終端。
[0018]較佳地,服務器根據(jù)本地接收并記錄的該第一終端的運營商信息以及其他終端的運營商信息為該第一終端選擇第二終端,包括:
[0019]服務器根據(jù)第一終端的運營商信息以及其他終端的運營商信息,確定多個第二終端;
[0020]當?shù)谝唤K端為移動終端時,服務器從所述多個第二終端中選擇非移動終端類型的第二終端;當?shù)谝唤K端為非移動終端類型的終端時,服務器從所述多個第二終端中選擇非移動終端類型的第二終端;或者,
[0021]服務器從所述多個第二終端中選擇地理位置與該第一終端的地理位置在同一行政區(qū)域的第二終端;或者,
[0022]服務器從所述多個第二終端中選擇與第一終端當前播放同一媒體流,并且當前播放的媒體流的播放進度與所述第一終端當前播放該同一媒體流的播放進度存在差值的第二終端。
[0023]這樣服務器根據(jù)第一終端的信息、以及其他終端的信息為該第一終端選擇P2P連接的第二終端。
[0024]本發(fā)明實施例提供一種P2P連接方法,該方法包括:
[0025]第一終端向服務器發(fā)送請求服務器為該第一終端選擇建立P2P連接的終端的消息;
[0026]第一終端接收服務器通知,并根據(jù)所述通知確定該服務器選擇的用于與第一終端建立P2P連接的第二終端,其中,第二終端是服務器根據(jù)第一終端以及所述第二終端的運營商信息確定的。
[0027]通過上述方法,第一終端便可以與服務器為其選擇的第二終端建立P2P連接,使得第一終端與第二終端之間進行數(shù)據(jù)資源共享,降低系統(tǒng)成本,提高系統(tǒng)利用率,提高數(shù)據(jù)傳輸速率。
[0028]較佳地,第二終端的運營商信息與所述第一終端的運營商信息相同。
[0029]這樣服務器根據(jù)第一終端的運營商信息以及其他終端的運營商信息為該第一終端選擇P2P連接的第二終端。
[0030]較佳地,該方法還包括:
[0031]第一終端向服務器上報該第一終端的終端類型信息、地理位置信息和/或當前播放的媒體流的播放進度信息。
[0032]這樣服務器便可以根據(jù)第一終端的運營商信息、該第一終端的其他信息、以及其他終端的信息為該第一終端選擇P2P連接的第二終端。
[0033]本發(fā)明實施例提供一種P2P連接服務器,該服務器包括:
[0034]接收請求單元,用于接收第一終端發(fā)送的請求服務器為該第一終端選擇建立P2P連接的終端的消息;
[0035]請求處理單元,用于根據(jù)本地接收并記錄的該第一終端的運營商信息以及其他終端的運營商信息為該第一終端選擇第二終端,并將所選擇的第二終端的信息通知該第一終端。
[0036]較佳地,請求處理單元在根據(jù)本地接收并記錄的該第一終端的運營商信息以及其他終端的運營商信息為該第一終端選擇第二終端時,具體用于:
[0037]請求處理單元根據(jù)本地接收并記錄的該第一終端的運營商信息以及其他終端的運營商信息,從其他終端中選擇與第一終端所屬的運營商為同一運營商的第二終端。
[0038]這樣請求處理單元便可以根據(jù)第一終端的運營商信息以及其他終端的運營商信息為該第一終端選擇P2P連接的第二終端。
[0039]較佳地,接收請求單元還用于:
[0040]接收并記錄第一終端上報的終端類型信息、地理位置信息和/或當前播放的媒體流的播放進度信息。
[0041]這樣請求處理單元便可以根據(jù)第一終端的運營商信息、該第一終端的其他信息、以及其他終端的信息為該第一終端選擇第二終端。
[0042]較佳地,請求處理單元在根據(jù)本地接收并記錄的該第一終端的運營商信息以及其他終端的運營商信息為該第一終端選擇P2P連接的第二終端時,具體用于:
[0043]請求處理單元根據(jù)第一終端的運營商信息以及其他終端的運營商信息,確定多個第二終端;
[0044]當?shù)谝唤K端為移動終端時,請求處理單元從所述多個第二終端中選擇非移動終端類型的第二終端;當?shù)谝唤K端為非移動終端類型的終端時,請求處理單元從所述多個第二終端中選擇非移動終端類型的第二終端;或者,
[0045]接收請求單元從所述多個第二終端中選擇地理位置與該第一終端的地理位置在同一行政區(qū)域的第二終端;或者,
[0046]接收請求單元從所述多個第二終端中選擇與第一終端當前播放同一媒體流,并且當前播放的媒體流的播放進度與所述