專利名稱:客戶端通信方法、裝置和系統的制作方法
技術領域:
本發明實施例涉及通信技術領域,特別涉及一種客戶端通信方法、裝置和系統。
背景技術:
超文本傳輸協議(HyperiText Transfer Protocol,以下簡稱HTTP)作為互聯網 的主流協議,用于實現服務器和客戶端之間的數據傳輸。隨著對等(Peer-to-Peer,以下簡 稱P2P)技術的應用越來越廣泛,互聯網中的客戶端對于通過HTTP直接進行通信的要求越 來越迫切。由于HTTP是基于客戶端/服務器(C/幻模式的通信協議,因此現有技術中,基于 HTTP僅能實現客戶端和服務器之間的通信,而無法實現客戶端之間的通信。
發明內容
本發明提供一種客戶端通信方法、裝置和系統,用以實現客戶端之間的通信。本發明實施例提供一種客戶端通信方法,包括接收第二客戶端發送的第一服務監聽請求,所述第一服務監聽請求包括第二客戶 端標識信息;向所述第二客戶端返回第一服務監聽響應,并將所述第一服務監聽響應維持住以
建立第一連接;接收第一客戶端發送的第一消息請求,所述第一消息請求包括第二客戶端標識信 息;根據所述第二客戶端標識信息將所述第一消息請求通過所述第一連接發送給所 述第二客戶端。本發明實施例提供一種客戶端通信裝置,包括接收模塊,用于接收第二客戶端發送的第一服務監聽請求,所述第一服務監聽請 求包括第二客戶端標識信息;以及接收第一客戶端發送的第一消息請求,所述第一消息請 求包括第二客戶端標識信息;服務監聽模塊,用于根據所述第一服務監聽請求將與所述第一監聽服務請求對應 的第一服務監聽響應發送給所述發送模塊,并將所述第一服務監聽響應維持住以建立第一 連接;發送模塊,用于向所述第二客戶端發送所述第一監聽服務請求對應的第一服務監 聽響應,根據所述第二客戶端標識信息將所述第一消息請求通過所述第一連接發送給所述
第二客戶端。本發明實施例提供一種客戶端通信系統,包括上述客戶端通信裝置、與所述客戶 端通信裝置連接的第一客戶端和第二客戶端;本發明實施例提供的客戶端通信方法、裝置和系統,根據接收到的第一客戶端發 送的第一消息請求中包括的第二客戶端標識信息將第一請求消息通過建立的第一連接發送給第二客戶端,以供第二客戶端根據第一消息請求生成第一響應消息,接收第二客戶端 返回的第一響應消息,并將該第一響應消息返回給第一客戶端,從而實現了客戶端之間的
ififn。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發 明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根 據這些附圖獲得其他的附圖。圖Ia為本發明實施例中提供的客戶端通信系統的結構示意圖;圖Ib為本發明實施例一提供的一種客戶端通信方法的流程圖;圖2為本發明實施例二提供的一種客戶端通信方法的流程圖;圖3為本發明實施例三提供的一種客戶端通信方法的流程圖;圖4為本發明實施例四提供的一種客戶端通信裝置的結構示意圖;圖5為本發明實施例五提供的一種客戶端通信裝置的結構示意圖。
具體實施例方式為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例 中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是 本發明一部分實施例,而不是全部的實施例。基于本發明中的實施例,本領域普通技術人員 在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。圖Ia為本發明實施例中提供的客戶端通信系統的結構示意圖,如圖Ia所示,該系 統包括客戶端通信裝置1、第一客戶端2和第二客戶端3,客戶端通信裝置1分別與第一客 戶端2和第二客戶端3連接。其中,客戶端通信裝置1可以采用由中央處理器(CPU)的設備、存儲器以及主板設 備,以及相應的軟件構成的計算機系統實現。第一客戶端2和第三客戶端3可以采用具有 中央處理器(CPU)的設備,存儲器以及主板設備,以及軟件程序的計算機等實現。本實施例提供的客戶端通信系統可用于實現客戶端之間的通信。圖Ib為本發明實施例一提供的一種客戶端通信方法的流程圖,如圖Ib所示,該方 法包括步驟101、建立第一連接。在一個具體實例中該建立第一連接可以為接收第二客戶端發送的第一服務監聽 請求,所述第一服務監聽請求包括第二客戶端標識信息;向所述第二客戶端返回第一服務 監聽響應,并將所述第一服務監聽響應維持住以建立第一連接;本實施例中的各步驟可以由客戶端通信裝置執行。在一個具體實例中該客戶端通 信裝置具體可以為P2P網關(peer to peer Gateway,簡稱P2P GW)。步驟102、接收第一客戶端發送的第一消息請求,該第一消息請求包括第二客戶端 標識信息,該第二客戶端標識信息用于標識第二客戶端。本發明實施例中,客戶端通信裝置與第一客戶端之間交互的各種消息是基于HTTP的,客戶端通信裝置與第二客戶端之間交互的各種消息是基于HTTP的。步驟103、根據第二客戶端標識信息將該第一消息請求通過所述建立的第一連接 發送給第二客戶端。以供第二客戶端根據第一請求消息生成第一響應消息。在另外的實例中該方法還可以進一步包括步驟104,將接收到的第二客戶端返回 的第一響應消息返回給第一客戶端。本實施例提供的客戶端通信方法,建立第一連接,根據接收到的第一客戶端發送 的第一消息請求中包括的第二客戶端標識信息將第一請求消息通過建立的第一連接發送 給第二客戶端,以供第二客戶端根據第一消息請求生成第一響應消息,接收第二客戶端返 回的第一響應消息,并將該第一響應消息返回給第一客戶端,從而實現了客戶端之間的通
fn °圖2為本發明實施例二提供的一種客戶端通信方法的流程圖,如圖2所示,該方法 包括步驟201、第二客戶端向客戶端通信裝置發送第一服務監聽請求,該第一服務監聽 請求包括第二客戶端標識信息,該第二客戶端標識信息用于標識第二客戶端。本實施例中,第二客戶端發送的第二服務監聽請求用于向客戶端通信裝置請求建 立第一連接。步驟202、客戶端通信裝置根據所述第一服務監聽請求向第二客戶端返回第一服 務監聽響應,并維持該第一服務監聽響應以建立第一連接。本實施例中,客戶端通信裝置接受第一服務監聽請求,可以記錄第二客戶端標識 信息,向第二客戶端返回第一服務監聽請求對應的第一服務監聽響應,并維持該第一服務 監聽響應,從而建立客戶端通信裝置與第二客戶端之間的第一連接。本實施例可以進一步包括記錄所述第二客戶端標識信息與所述第一服務監聽響 應的對應關系,以便于在下述步驟205中,根據所述第二客戶端標識信息查找該第二客戶 端標識信息對應的第一服務監聽響應,將所述第一消息請求通過所述第一服務監聽響應發 送給所述第二客戶端。進一步地,本實施例中,為維持該第一連接,客戶端通信裝置可以根據記錄的第二 客戶端標識信息或者根據所述第一服務監聽請求中包括的第二客戶端標識信息以設定時 間間隔向第二客戶端發送心跳請求。第二客戶端根據心跳請求維持該第一連接。若第二 客戶端在設定的超時時間內未接收到客戶端通信裝置發送的心跳請求,則可拆除該第一連 接。進一步地,本實施例中,若第二客戶端可主動拆除該第一連接,可向客戶端通信裝 置發送連接結束消息,以通知客戶端通信裝置該第一連接已拆除。步驟203、第一客戶端向客戶端通信裝置發送第一消息請求,該第一消息請求包括 第二客戶端標識信息。本實施例中,第一消息請求中包括的第二客戶端標識信息用于表示第一客戶端需 要向第二客戶端發送第一消息請求。步驟204、客戶端通信裝置根據第一消息請求建立第一會話,生成并記錄第一會話 標識,該第一會話標識用于標識第一會話。步驟205、客戶端通信裝置根據第二客戶端標識信息通過所述的第一連接將第一消息請求發送給第二客戶端,該第一消息請求包括第一會話標識。具體的可以是根據所述第二客戶端標識信息查找記錄的第二客戶端標識信息對 應的第一服務監聽響應,將所述第一消息請求通過所述第一服務監聽響應發送給所述第二 客戶端。步驟206、第二客戶端根據第一消息請求生成第一響應消息,并將第一響應消息返 回給客戶端通信裝置,該第一響應消息包括第一會話標識。步驟207、客戶端通信裝置根據第一會話標識將第一響應消息返回給第一客戶端。步驟208、客戶端通信裝置通過所述的第一連接向第二客戶端返回第一完成消息, 以通知第二客戶端向第一客戶端發送第一響應消息完成。本實施例中,在客戶端通信裝置向第二客戶端返回第一完成消息后,第一會話結 束。則進一步地,客戶端通信裝置刪除記錄的第一會話標識。本實施例提供的客戶端通信方法,第二客戶端與客戶端通信裝置建立第一連接, 客戶端通信裝置將接收到的第一客戶端發送的第一消息請求通過第一連接發送給第二客 戶端,并將第二客戶端返回的第一響應消息返回給第一客戶端,從而實現了客戶端與客戶 端之間的通信。圖3為本發明實施例三提供的一種客戶端通信方法的流程圖,如圖3所示,該方法 包括步驟301、第一客戶端向客戶端通信裝置發送第二服務監聽請求,該第二服務監聽 請求包括第一客戶端標識信息,該第一客戶端標識信息用于標識第一客戶端。步驟302、客戶端通信裝置根據所述第二服務監聽請求向第一客戶端返回第二服 務監聽響應,并維持所述第二服務監聽響應以建立第二連接。本實施例中,客戶端通信裝置接受第二服務監聽請求,可以記錄第一客戶端標識 信息,向第一客戶端返回第一服務監聽請求對應的第一服務監聽響應,并維持該第二服務 監聽響應,從而建立客戶端通信裝置與第一客戶端之間的第二連接。本實施例可以進一步包括記錄所述第一客戶端標識信息與所述第二服務監聽響 應的對應關系;以便于在下述步驟311中,根據所述第一客戶端標識信息查找該第一客戶 端標識信息對應的第二服務監聽響應,將所述第二消息請求通過所述第二服務監聽響應發 送給所述第一客戶端。進一步地,本實施例中,為維持該第二連接,客戶端通信裝置可根據所述第二服務 監聽請求中包括的第一客戶端標識信息以設定時間間隔向第一客戶端發送心跳請求。第一 客戶端根據心跳請求維持該第二連接。若第一客戶端在設定的超時時間內未接收到客戶端 通信裝置發送的心跳請求,則可拆除該第二連接。進一步地,本實施例中,若第一客戶端主動拆除該第二連接,可向客戶端通信裝置 發送連接結束消息,以通知客戶端通信裝置該第二連接已拆除。步驟303、第二客戶端向客戶端通信裝置發送第一服務監聽請求,該第一服務監聽 請求包括第二客戶端標識信息,該第二客戶端標識信息用于標識第二客戶端。本實施例中,第二客戶端發送的第二服務監聽請求用于向客戶端通信裝置請求建 立第一連接。步驟304、客戶端通信裝置記錄向第二客戶端返回第一服務監聽響應,并維持該第一服務監聽響應以建立第一連接。本實施例中,客戶端通信裝置接受第一服務監聽請求,可以記錄第二客戶端標識 信息,向第二客戶端返回第一服務監聽請求對應的第一服務監聽響應,并維持該第一服務 監聽響應,從而建立客戶端通信裝置與第二客戶端之間的第一連接。本實施例可以進一步包括記錄所述第二客戶端標識信息與所述第一服務監聽響 應的對應關系,以便于在下述步驟305中,根據所述第二客戶端標識信息查找該第二客戶 端標識信息對應的第一服務監聽響應,將所述第一消息請求通過所述第一服務監聽響應發 送給所述第二客戶端。步驟305、第一客戶端向客戶端通信裝置發送第一消息請求,該第一消息請求包括 第二客戶端標識信息。本實施例中,第一消息請求中包括的第二客戶端標識信息用于表示第一客戶端需 要向第二客戶端發送第一消息請求。步驟306、客戶端通信裝置根據第一消息請求建立第一會話,生成并記錄第一會話 標識,該第一會話標識用于標識第一會話。步驟307、客戶端通信裝置根據第二客戶端標識信息通過第一連接將第一消息請 求發送給第二客戶端,該第一消息請求包括第一會話標識。步驟308、第二客戶端根據第一消息請求生成第一響應消息,并將第一響應消息返 回給客戶端通信裝置,該第一響應消息包括第一會話標識。步驟309、客戶端通信裝置根據第一會話標識將第一響應消息返回給第一客戶端。步驟310、客戶端通信裝置通過第一連接向第二客戶端返回第一完成消息,以通知 第二客戶端向第一客戶端發送第一響應消息完成。本實施例中,在客戶端通信裝置向第二客戶端返回第一完成消息后,第一會話結 束。則進一步地,客戶端通信裝置刪除記錄的第一會話標識。步驟311、第二客戶端向客戶端通信裝置發送第二消息請求,該第二消息請求包括 第一客戶端標識信息。本實施例中,第二消息請求中包括的第一客戶端標識信息用于表示第二客戶端需 要向第一客戶端發送第二消息請求。步驟312、客戶端通信裝置根據第二消息請求建立第二會話,生成并記錄第二會話 標識,該第二會話標識用于標識第二會話。步驟313、客戶端通信裝置根據第一客戶端標識信息通過第二連接將第二消息請 求發送給第一客戶端,該第二消息請求包括第二會話標識。步驟314、第一客戶端根據第二消息請求生成第一響應消息,并將第一響應消息返 回給客戶端通信裝置,該第二響應消息包括第二會話標識。步驟315、客戶端通信裝置根據第二會話標識將第二響應消息返回給第二客戶端。步驟316、客戶端通信裝置通過第二連接向第一客戶端返回第二完成消息,以通知 第一客戶端向第二客戶端發送第二響應消息完成。本實施例中,在客戶端通信裝置向第一客戶端返回第二完成消息后,第二會話結 束。則進一步地,客戶端通信裝置刪除記錄的第二會話標識。本實施例與上述實施例二的區別在于本實施例中,第一客戶端與客戶端通信裝置建立第二連接,以使客戶端通信裝置可以通過建立的第二連接向第一客戶端發送第二消 息請求并通過第二連接向第一客戶端返回的第二完成消息。本實施例提供的客戶端通信方法,第二客戶端與客戶端通信裝置建立第一連接, 第一客戶端與客戶端通信裝置建立第二連接,將接收到的第一客戶端發送的第一消息請 求通過第一連接發送給第二客戶端,并將第二客戶端返回的第一響應消息返回給第一客戶 端,以及將接收到的第二客戶端發送的第二消息請求通過第二連接發送給第一客戶端,并 將第一客戶端返回的第二響應消息返回給第二客戶端,從而實現了客戶端之間的通信。本發明各實施例中,第一服務監聽請求和第二服務監聽請求可采用Listen. Req0 第一服務監聽響應和第二服務監聽響應可采用Listen. Rsp。第一消息請求和第二消息請求 可采用MsgSend. Req0第一響應消息和第二響應消息可采用MsgSend. Rsp0心跳請求可采 用HartBeat. Req0連接結束消息可采用CT. Req, CT. Rsp。圖4為本發明實施例四提供的一種客戶端通信裝置的結構示意圖,如圖4所示,該 裝置包括接收模塊11,發送模塊12,和服務監聽模塊14。接收模塊11,用于接收第二客戶端發送的第一服務監聽請求,所述第一服務監聽 請求包括第二客戶端標識信息;以及接收第一客戶端發送的第一消息請求,所述第一消息 請求包括第二客戶端標識信息;服務監聽模塊14,用于根據所述第一服務監聽請求將與所述第一監聽服務請求對 應的第一服務監聽響應發送給所述發送模塊,并將所述第一服務監聽響應維持住以建立第 一連接;發送模塊12,用于向所述第二客戶端發送所述第一監聽服務請求對應的第一服務 監聽響應,根據所述第二客戶端標識信息將所述第一消息請求通過所述第一連接發送給所 述第二客戶端。在另一實例中,所述接收模塊11,可以進一步用于接收所述第二客戶端根據所述 第一請求消息返回的第一響應消息;所述的發送模塊12進一步用于將接收模塊11接收到的所述第二客戶端返回的所 述第一響應消息返回給所述第一客戶端,以及通過所述的第一連接向所述第二客戶端返回 第一完成消息。本實施例提供的客戶端通信裝置可用于實現上述實施例一提供的客戶端通信方 法。本實施例提供的客戶端通信裝置,根據接收到的第一客戶端發送的第一消息請求 中包括的第二客戶端標識信息將第一請求消息通過建立的第一連接發送給第二客戶端,以 供第二客戶端根據第一消息請求生成第一響應消息,接收第二客戶端返回的第一響應消 息,并將該第一響應消息返回給第一客戶端,從而實現了客戶端之間的通信。圖5為本發明實施例五提供的一種客戶端通信裝置的結構示意圖,如圖5所示,在 該實施例中所述服務監聽模塊14進一步用于記錄所述第二客戶端標識信息與所述第一服 務監聽響應的對應關系;該裝置在上述實施例四的基礎上還包括消息路由模塊13,用于 根據所述第一請求消息中的第二客戶端標識信息向服務監聽模塊14查找該第二客戶端標 識信息對應的第一服務監聽響應,指示發送模塊12將所述第一消息請求通過所述第一服 務監聽響應發送給所述第二客戶端。
實際應用實例中,該客戶端通信裝置還可以在本實施例的基礎上進一步包括會話 建立模塊15,用于根據所述第一消息請求建立第一會話;記錄第一會話標識;所述第一會 話標識用于標識所述第一會話;向所述第二客戶端發送的第一請求消息中包括所述第一會 話標識;接收所述第二客戶端返回的第一響應消息中包括所述第一會話標識;所述消息路 由模塊13進一步用于根據所述第一響應消息中包括的所述第一會話標識指示發送模塊將 所述第一響應消息返回給所述第一客戶端。進一步地,在上述各客戶端通信裝置的實施例中,為維持該第一連接,所述服務監 聽模塊14還可根據記錄的第二客戶端標識信息或者根據所述第一服務監聽請求中包括的 第二客戶端標識信息指示發送模塊12以設定時間間隔向第二客戶端發送心跳請求,以供 第二客戶端根據該心跳請求維持該第一連接。若第二客戶端在設定的超時時間內未接收到 發送模塊12發送的心跳請求,則可拆除該第一連接。進一步地,本實施例中,若第二客戶端 可主動拆除該第一連接,可向接收模塊11發送連接結束消息,以通知客戶端通信裝置該第 一連接已拆除。則接收模塊11接收第二客戶端在拆除第一連接之后發送的連接結束消息。本實施例提供的客戶端通信方法可用于實現上述實施例二提供的客戶端通信裝 置。本實施例提供的客戶端通信裝置,第二客戶端與客戶端通信裝置建立第一連接, 客戶端通信裝置將接收到的第一客戶端發送的第一消息請求通過第一連接發送給第二客 戶端,并將第二客戶端通過第一連接返回的第一響應消息返回給第一客戶端,從而實現了 客戶端與客戶端之間的通信。如圖5所示,作為本發明的另一個實施例,在上述實施例五的基礎上,進一步地, 接收模塊11還可以用于接收第一客戶端發送的第二服務監聽請求,所述第二服務監聽請 求包括第一客戶端標識信息;以及接收第二客戶端發送的第二消息請求,所述第二消息請 求包括第一客戶端標識信息;服務監聽模塊14,用于根據所述第二服務監聽請求將與所述 第二監聽服務請求對應的第二服務監聽響應發送給所述發送模塊12,并將所述第二服務監 聽響應維持住以建立第二連接;發送模塊12,用于向所述第一客戶端發送所述第二監聽服 務請求對應的第二服務監聽響應,根據所述第一客戶端標識信息將所述第二消息請求通過 所述第二連接發送給所述第一客戶端。本實施例提供的客戶端通信方法可用于實現上述實施例三提供的客戶端通信裝置。本實施例提供的客戶端通信裝置,第二客戶端與客戶端通信裝置建立第一連接, 第一客戶端與客戶端通信裝置建立第二連接,將接收到的第一客戶端發送的第一消息請 求通過第一連接發送給第二客戶端,并將第二客戶端返回的第一響應消息返回給第一客戶 端,以及將接收到的第二客戶端發送的第二消息請求通過第二連接發送給第一客戶端,并 將第一客戶端返回的第二響應消息返回給第二客戶端,從而實現了客戶端之間的通信。需要說明的是,以上客戶端通信裝置的實施方式中,各功能模塊的劃分僅是舉例 說明,實際應用中可以根據需要,比如相應硬件的配置要求或者軟件的實現的便利考慮,而 將上述功能分配由不同的功能模塊完成,即將所述的客戶端通信裝置的內部結構劃分成不 同的功能模塊,以完成以上描述的全部或者部分功能。而且實際應用中,本實施例中的相應 的功能模塊可以是由相應的硬件實現,也可以由相應的硬件執行相應的軟件完成,例如,前述的發送模塊12,可以是具有執行前述發送功能的硬件,如發送器,也可以是能夠執行相應 計算機程序從而完成前述功能的一般處理器或者其他硬件設備。再如前述的接收模塊11, 可以是具有執行前述接收功能的硬件,如接收器,也可以是能夠執行相應計算機程序從而 完成前述功能的一般處理器或者其他硬件設備。本領域普通技術人員可以理解實現上述方法實施例的全部或部分步驟可以通過 程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序 在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括R0M、RAM、磁碟或者 光盤等各種可以存儲程序代碼的介質。最后應說明的是以上實施例僅用以說明本發明的技術方案,而非對其限制;盡 管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術人員應當理解其依然 可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替 換;而這些修改或者替換,并不使相應技術方案的本質脫離本發明各實施例技術方案的精 神和范圍。
權利要求
1.一種客戶端通信方法,其特征在于,包括接收第二客戶端發送的第一服務監聽請求,所述第一服務監聽請求包括第二客戶端標 識信息;向所述第二客戶端返回第一服務監聽響應,并將所述第一服務監聽響應維持住以建立 第一連接;接收第一客戶端發送的第一消息請求,所述第一消息請求包括第二客戶端標識信息; 根據所述第二客戶端標識信息將所述第一消息請求通過所述第一連接發送給所述第二客戶端。
2.根據權利要求1所述的方法,其特征在于,進一步包括接收所述第二客戶端根據所述第一請求消息返回的第一響應消息; 將所述第一響應消息返回給所述第一客戶端; 通過所述的第一連接向所述第二客戶端返回第一完成消息。
3.根據權利要求1或2所述的方法,其特征在于,所述將所述第一服務監聽響應維持住 以建立第一連接包括根據所述第一服務監聽請求中包括的第二客戶端標識信息以設定時間間隔向所述第 二客戶端發送心跳請求,以供所述第二客戶端根據所述心跳請求維持所述第一連接。
4.根據權利要求1或2所述的方法,其特征在于,在建立所述第一連接后進一步包括記 錄所述第二客戶端標識信息與所述第一服務監聽響應的對應關系;所述根據所述第二客戶端標識信息將所述第一消息請求通過所述第一連接發送給所 述第二客戶端包括根據所述第二客戶端標識信息查找該第二客戶端標識信息對應的第一服務監聽響應, 將所述第一消息請求通過所述第一服務監聽響應發送給所述第二客戶端。
5.根據權利要求2所述的方法,其特征在于,所述根據所述第二客戶端標識信息將所 述第一消息請求通過所述第一連接發送給所述第二客戶端之前還包括根據所述第一消息請求建立第一會話;記錄第一會話標識;所述第一會話標識用于標 識所述第一會話;向所述第二客戶端發送的第一請求消息中包括所述第一會話標識;接收 所述第二客戶端返回的第一響應消息中包括所述第一會話標識; 所述將所述第一響應消息返回給所述第一客戶端包括根據所述第一響應消息中包括的所述第一會話標識將所述第一響應消息返回給所述第一客戶端。
6.根據權利要求2所述的方法,其特征在于,所述第一消息請求采用“MsgSend.Req", 所述第一響應消息采用“MsgSend. Rsp”。
7.根據權利要求4所述的方法,其特征在于,所述第一服務監聽請求采用“Listen. Req”,所述第一服務監聽響應采用“Listen. Rsp”。
8.根據權利要求3所述的方法,其特征在于,所述心跳請求采用“HartBeat.Req”。
9.根據權利要求3所述的方法,其特征在于,進一步包括接收所述第一客戶端發送的第二服務監聽請求,所述第二服務監聽請求包括第一客戶 端標識信息;記錄所述第一客戶端標識信息;向所述第一客戶端返回第一服務監聽響應,并將所述第二服務監聽響應維持住以建立 第二連接;接收第二客戶端發送的第二消息請求,所述第二消息請求包括第一客戶端標識信息;根據所述第一客戶端標識信息將所述第二消息請求通過所述第二連接發送給所述第一客戶端。
10.根據權利要求9所述的方法,其特征在于,進一步包括接收所述第一客戶端根據所述第二請求消息返回的第二響應消息;將所述第二響應消息返回給所述第二客戶端;通過所述的第二連接向所述第一客戶端返回第二完成消息。
11.根據權利要求10所述的方法,其特征在于,所述將所述第二服務監聽響應維持住 以建立第二連接包括根據記錄的第一客戶端標識信息以設定時間間隔向所述第一客戶端發送心跳請求,以 供所述第一客戶端根據所述心跳請求維持所述第二連接。
12.—種客戶端通信裝置,其特征在于,包括接收模塊,用于接收第二客戶端發送的第一服務監聽請求,所述第一服務監聽請求包 括第二客戶端標識信息;以及接收第一客戶端發送的第一消息請求,所述第一消息請求包 括第二客戶端標識信息;服務監聽模塊,用于根據所述第一服務監聽請求將與所述第一監聽服務請求對應的 第一服務監聽響應發送給所述發送模塊,并將所述第一服務監聽響應維持住以建立第一連 接;發送模塊,用于向所述第二客戶端發送所述第一監聽服務請求對應的第一服務監聽響 應,根據所述第二客戶端標識信息將所述第一消息請求通過所述第一連接發送給所述第二 客戶端。
13.根據權利要求12所述的裝置,其特征在于,所述接收模塊,進一步用于接收所述第二客戶端根據所述第一請求消息返回的第一響 應消息;所述的發送模塊進一步用于將接收模塊接收到的所述第二客戶端返回的所述第一響 應消息返回給所述第一客戶端,以及通過所述的第一連接向所述第二客戶端返回第一完成 消息。
14.根據權利要求12所述的裝置,其特征在于,所述服務監聽模塊,進一步用于記錄所述第二客戶端標識信息與所述第一服務監聽響 應的對應關系;所述裝置進一步包括消息路由模塊,用于根據所述第一請求消息中的第二客戶端標識 信息向服務監聽模塊查找該第二客戶端標識信息對應的第一服務監聽響應,指示發送模塊 將所述第一消息請求通過所述第一服務監聽響應發送給所述第二客戶端。
15.根據權利要求14所述的裝置,其特征在于,所述裝置進一步包括會話建立模塊,用于根據所述第一消息請求建立第一會話;記錄 第一會話標識;所述第一會話標識用于標識所述第一會話;向所述第二客戶端發送的第一 請求消息中包括所述第一會話標識;接收所述第二客戶端返回的第一響應消息中包括所述第一會話標識;所述消息路由模塊進一步用于根據所述第一響應消息中包括的所述第一會話標識指 示發送模塊將所述第一響應消息返回給所述第一客戶端。
16.根據權利要求14所述的裝置,其特征在于,所述服務監聽模塊進一步用于根據所述第一服務監聽請求中包括的第二客戶端標識 信息指示發送模塊以設定時間間隔向所述第二客戶端發送心跳請求,以供所述第二客戶端 根據所述心跳請求維持所述第一連接。
17.一種客戶端通信系統,其特征在于,包括客戶端通信裝置、與所述客戶端通信裝 置連接的第一客戶端和第二客戶端;所述客戶端通信裝置采用權利要求12至16任一所述的客戶端通信裝置。
全文摘要
本發明公開了一種客戶端通信方法、裝置和系統。該方法包括接收第二客戶端發送的第一服務監聽請求,所述第一服務監聽請求包括第二客戶端標識信息;向所述第二客戶端返回第一服務監聽響應,并將所述第一服務監聽響應維持住以建立第一連接;接收第一客戶端發送的第一消息請求,所述第一消息請求包括第二客戶端標識信息;根據所述第二客戶端標識信息將所述第一消息請求通過所述第一連接發送給所述第二客戶端。從而實現了客戶端之間的通信。
文檔編號H04L29/08GK102143196SQ201010252438
公開日2011年8月3日 申請日期2010年8月4日 優先權日2010年8月4日
發明者羅光瑜 申請人:華為技術有限公司