專利名稱:網(wǎng)絡(luò)通信狀況探測(cè)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)檢測(cè)技術(shù),特別是指網(wǎng)絡(luò)通信狀況探測(cè)方法。
背景技術(shù):
在游戲用戶進(jìn)行在線對(duì)戰(zhàn)類游戲或其它多人參與游戲的過程中,往往需要獲知自身客戶端與對(duì)方游戲客戶端之間的網(wǎng)絡(luò)通信狀況。例如,當(dāng)游戲用戶在游戲過程中經(jīng)過長(zhǎng)時(shí)間等待仍未得到對(duì)方游戲玩家的回應(yīng)時(shí),往往需要獲知對(duì)方游戲玩家當(dāng)前是否仍然在線以及如果在線的話,自身客戶端與對(duì)方游戲玩家客戶端之間的網(wǎng)絡(luò)連接速度等信息,從而控制游戲決策。另外,對(duì)于多人參與的網(wǎng)絡(luò)競(jìng)技答題類游戲來說,有些情況下,測(cè)試方需要知道被測(cè)試者的答題反映速度。這時(shí),測(cè)試方通常采取的方法是分別記錄向被測(cè)試者發(fā)送題目的時(shí)間和接收到被測(cè)試者提交答案的時(shí)間,然后計(jì)算接收到答案的時(shí)間與發(fā)送題目時(shí)間的時(shí)間差,最后直接根據(jù)計(jì)算得到的結(jié)果衡量被測(cè)試者的答題反映速度。但由于被測(cè)試者所處網(wǎng)絡(luò)環(huán)境的復(fù)雜性,以致被測(cè)試者的答題時(shí)間不可避免地會(huì)受到網(wǎng)絡(luò)狀況的影響。例如,當(dāng)被測(cè)試者A的網(wǎng)速比較低時(shí),一方面,使得題目由測(cè)試方傳輸至A的時(shí)間比較長(zhǎng),導(dǎo)致A接收到題目的時(shí)間比較滯后;另一方面,答案由A所在終端傳輸至測(cè)試方的時(shí)間也會(huì)相應(yīng)地比較長(zhǎng),導(dǎo)致測(cè)試方接收到答案的時(shí)間比較滯后,上述兩方面滯后一并導(dǎo)致測(cè)試方計(jì)算出的時(shí)間差比較長(zhǎng),最終得出A的反映速度比較慢的結(jié)論。顯然,測(cè)試方如果不事先獲知被測(cè)試者的網(wǎng)絡(luò)狀況是不太可能獲取到有關(guān)被測(cè)試者反映速度的準(zhǔn)確結(jié)果的。
由上述兩個(gè)具體實(shí)例不難看出實(shí)時(shí)獲取網(wǎng)絡(luò)通信狀況的必要性和重要性,然而針對(duì)上述問題目前還沒有相應(yīng)的解決方案。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的主要目的在于提供兩種網(wǎng)絡(luò)通信狀況探測(cè)方法,實(shí)現(xiàn)連接至服務(wù)端的客戶端探測(cè)自身至目的客戶端之間網(wǎng)絡(luò)通信狀況的目的。
本發(fā)明提供的一種網(wǎng)絡(luò)通信狀況探測(cè)方法,該網(wǎng)絡(luò)至少包括服務(wù)端和一個(gè)以上連接至該服務(wù)端的客戶端,該方法在服務(wù)端預(yù)先保存所有客戶端的位置信息,探測(cè)網(wǎng)絡(luò)通信狀況的過程包括如下步驟a、發(fā)起客戶端向服務(wù)端發(fā)送獲取自身至目的客戶端網(wǎng)絡(luò)通信狀況的探測(cè)請(qǐng)求;b、服務(wù)端接收到該探測(cè)請(qǐng)求后,根據(jù)保存的目的客戶端位置信息向目的客戶端發(fā)送探測(cè)請(qǐng)求;目的客戶端接收到該探測(cè)請(qǐng)求后,向服務(wù)端返回探測(cè)響應(yīng);c、服務(wù)端接收到該探測(cè)響應(yīng)后,根據(jù)保存的發(fā)起客戶端位置信息向發(fā)起客戶端返回探測(cè)響應(yīng);發(fā)起客戶端根據(jù)接收到的探測(cè)響應(yīng)得到自身至目的客戶端的網(wǎng)絡(luò)通信狀況。
在上述方法的步驟a中,所述發(fā)起客戶端發(fā)送探測(cè)請(qǐng)求的方式為發(fā)起客戶端向服務(wù)端發(fā)送攜帶目的客戶端標(biāo)識(shí)的探測(cè)請(qǐng)求;所述步驟b進(jìn)一步包括服務(wù)端從接收到的探測(cè)請(qǐng)求中獲取攜帶的目的客戶端標(biāo)識(shí),并從自身保存的客戶端位置信息中查找與所述目的客戶端標(biāo)識(shí)對(duì)應(yīng)的位置信息,然后執(zhí)行步驟b中所述向目的客戶端發(fā)送探測(cè)請(qǐng)求的步驟;所述步驟c進(jìn)一步包括服務(wù)端從接收到的探測(cè)響應(yīng)中獲取攜帶的發(fā)起客戶端標(biāo)識(shí),并從自身保存的客戶端位置信息中查找與所述發(fā)起客戶端標(biāo)識(shí)對(duì)應(yīng)的位置信息,然后執(zhí)行步驟c中所述向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟。
在上述方法的步驟b中,所述服務(wù)端向目的客戶端發(fā)送探測(cè)請(qǐng)求的步驟包括服務(wù)端將接收到的探測(cè)請(qǐng)求中的目的客戶端標(biāo)識(shí)替換為發(fā)送該探測(cè)請(qǐng)求的發(fā)起客戶端標(biāo)識(shí),然后生成新的探測(cè)請(qǐng)求發(fā)送至目的客戶端;所述目的客戶端向服務(wù)端返回探測(cè)響應(yīng)的步驟包括目的客戶端從接收到的探測(cè)請(qǐng)求中獲取攜帶的發(fā)起客戶端標(biāo)識(shí),并生成包含該發(fā)起客戶端標(biāo)識(shí)的探測(cè)響應(yīng),然后將該探測(cè)響應(yīng)返回至服務(wù)端;步驟c中,所述服務(wù)端向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟包括服務(wù)端將接收到的探測(cè)響應(yīng)中的發(fā)起客戶端標(biāo)識(shí)替換為發(fā)送該響應(yīng)的目的客戶端標(biāo)識(shí),然后生成新的探測(cè)響應(yīng)返回至發(fā)起客戶端;步驟c中,所述根據(jù)探測(cè)響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟包括當(dāng)發(fā)起客戶端接收到服務(wù)端返回的探測(cè)響應(yīng)時(shí),從該響應(yīng)中獲取攜帶的目的客戶端標(biāo)識(shí),得到自身至相應(yīng)目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)。
在上述方法的步驟a中,在所述探測(cè)請(qǐng)求中進(jìn)一步包括發(fā)起客戶端標(biāo)識(shí);步驟b中,所述服務(wù)端向目的客戶端發(fā)送探測(cè)請(qǐng)求的步驟包括服務(wù)端向目的客戶端轉(zhuǎn)發(fā)接收自發(fā)起客戶端的探測(cè)請(qǐng)求;所述目的客戶端向服務(wù)端返回探測(cè)響應(yīng)的步驟包括目的客戶端從接收到的探測(cè)請(qǐng)求中獲取攜帶的發(fā)起客戶端標(biāo)識(shí)和目的客戶端標(biāo)識(shí),然后生成包含該發(fā)起客戶端標(biāo)識(shí)和目的客戶端標(biāo)識(shí)的探測(cè)響應(yīng)返回至服務(wù)端;步驟c中,所述服務(wù)端向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟包括服務(wù)端向發(fā)起客戶端轉(zhuǎn)發(fā)接收自目的客戶端的探測(cè)響應(yīng);所述根據(jù)探測(cè)響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟包括當(dāng)發(fā)起客戶端接收到服務(wù)端返回的探測(cè)響應(yīng)時(shí),從該響應(yīng)中獲取攜帶的目的客戶端標(biāo)識(shí),得到自身至相應(yīng)目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)。
在上述方法中,所述步驟a進(jìn)一步包括發(fā)起客戶端獲取向服務(wù)端發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1,然后在所述探測(cè)請(qǐng)求中進(jìn)一步包括記錄該系統(tǒng)時(shí)間t1的時(shí)間戳;步驟b中,所述目的客戶端向服務(wù)端返回探測(cè)響應(yīng)的步驟進(jìn)一步包括目的客戶端從接收到的探測(cè)請(qǐng)求中獲取攜帶的時(shí)間戳,并在發(fā)送至服務(wù)端的探測(cè)響應(yīng)中攜帶該時(shí)間戳;步驟c中,所述根據(jù)探測(cè)響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括發(fā)起客戶端記錄接收到探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取時(shí)間戳所記錄的系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t2與所述系統(tǒng)時(shí)間t1的差,得到自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
在上述方法的步驟a中,在所述探測(cè)請(qǐng)求中進(jìn)一步包括該探測(cè)請(qǐng)求的消息序列號(hào);且所述步驟a進(jìn)一步包括發(fā)起客戶端獲取向服務(wù)端發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1,并將該探測(cè)請(qǐng)求的消息序列號(hào)與系統(tǒng)時(shí)間t1對(duì)應(yīng)保存;步驟b中,所述目的客戶端向服務(wù)端返回探測(cè)響應(yīng)的步驟進(jìn)一步包括目的客戶端從接收到的探測(cè)請(qǐng)求中獲取攜帶的消息序列號(hào),并在返回至服務(wù)端的探測(cè)響應(yīng)中攜帶該消息序列號(hào);步驟c中,所述根據(jù)探測(cè)響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括當(dāng)發(fā)起客戶端接收到服務(wù)端返回的探測(cè)響應(yīng)時(shí),記錄接收到該探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并獲取該響應(yīng)中攜帶的消息序列號(hào),然后查找保存的與該消息序列號(hào)對(duì)應(yīng)的系統(tǒng)時(shí)間t1,最后計(jì)算所述系統(tǒng)時(shí)間t2與所述系統(tǒng)時(shí)間t1的差,得到自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
在上述方法中,所述步驟b進(jìn)一步包括當(dāng)服務(wù)端接收到來自發(fā)起客戶端的探測(cè)請(qǐng)求后,向發(fā)起客戶端返回接收響應(yīng);發(fā)起客戶端根據(jù)接收到的接收響應(yīng)得到自身至服務(wù)端的網(wǎng)絡(luò)通信狀況。
在上述方法的步驟b中,所述發(fā)起客戶端根據(jù)接收響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟包括當(dāng)發(fā)起客戶端接收到服務(wù)端返回的接收響應(yīng)時(shí),則判定自身至服務(wù)端間的網(wǎng)絡(luò)處于連接狀態(tài)。
在上述方法中,所述步驟a進(jìn)一步包括發(fā)起客戶端獲取向服務(wù)端發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1,并在所述探測(cè)請(qǐng)求中進(jìn)一步包括記錄該系統(tǒng)時(shí)間t1的時(shí)間戳;步驟b中,所述服務(wù)端向發(fā)起客戶端返回接收響應(yīng)的步驟包括服務(wù)端從接收到的探測(cè)請(qǐng)求中獲取攜帶的時(shí)間戳,并在發(fā)送至發(fā)起客戶端的接收響應(yīng)中攜帶該時(shí)間戳;且所述發(fā)起客戶端根據(jù)接收響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括發(fā)起客戶端獲取接收到接收響應(yīng)時(shí)的系統(tǒng)時(shí)間t3,并從接收到的接收響應(yīng)中獲取時(shí)間戳所記錄的系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t3與所述系統(tǒng)時(shí)間t1的差,得到自身至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間。
在上述方法中,在步驟a所述的探測(cè)請(qǐng)求中進(jìn)一步包括該探測(cè)請(qǐng)求的消息序列號(hào);且所述步驟a進(jìn)一步包括發(fā)起客戶端獲取向服務(wù)端發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1,并將該探測(cè)請(qǐng)求的消息序列號(hào)與系統(tǒng)時(shí)間t1對(duì)應(yīng)保存;所述步驟b進(jìn)一步包括服務(wù)端接收到來自發(fā)起客戶端的探測(cè)請(qǐng)求后,從該探測(cè)請(qǐng)求中獲取攜帶的消息序列號(hào),并在返回至發(fā)起客戶端的接收響應(yīng)中包含該消息序列號(hào);當(dāng)發(fā)起客戶端接收到服務(wù)端返回的接收響應(yīng)時(shí),記錄接收到接收響應(yīng)時(shí)的系統(tǒng)時(shí)間t3,然后從接收到的接收響應(yīng)中獲取攜帶的消息序列號(hào),并查找保存的與該消息序列號(hào)對(duì)應(yīng)的系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t3與所述系統(tǒng)時(shí)間t1的差,得到自身至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間。
本發(fā)明提供的另一種網(wǎng)絡(luò)通信狀況探測(cè)方法,該網(wǎng)絡(luò)至少包括服務(wù)端和一個(gè)以上連接至該服務(wù)端的客戶端,該方法在服務(wù)端預(yù)先保存所有客戶端的位置信息,且服務(wù)端根據(jù)保存的客戶端位置信息獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信狀況;探測(cè)網(wǎng)絡(luò)通信狀況的過程包括如下步驟A、發(fā)起客戶端向服務(wù)端發(fā)送獲取自身至目的客戶端網(wǎng)絡(luò)通信狀況的探測(cè)請(qǐng)求;B、服務(wù)端接收到來自發(fā)起客戶端的探測(cè)請(qǐng)求后,獲取保存的自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況,然后根據(jù)獲取的網(wǎng)絡(luò)通信狀況向該發(fā)起客戶端返回探測(cè)響應(yīng);C、發(fā)起客戶端根據(jù)接收到的探測(cè)響應(yīng)得到自身至目的客戶端的網(wǎng)絡(luò)通信狀況。
在上述方法的步驟A中,所述發(fā)起客戶端發(fā)送探測(cè)請(qǐng)求的方式為發(fā)起客戶端向服務(wù)端發(fā)送攜帶目的客戶端標(biāo)識(shí)的探測(cè)請(qǐng)求;步驟B中,所述服務(wù)端獲取保存的自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況的方式為服務(wù)端從接收到的探測(cè)請(qǐng)求中獲取攜帶的目的客戶端標(biāo)識(shí),然后查找自身保存的與所述目的客戶端標(biāo)識(shí)對(duì)應(yīng)的網(wǎng)絡(luò)通信狀況。
在上述方法中,所述服務(wù)端獲取自身至所有客戶端的網(wǎng)絡(luò)通信狀況的方式為服務(wù)端預(yù)先保存所有客戶端的位置信息,然后根據(jù)保存的位置信息按照設(shè)定的時(shí)間間隔向客戶端發(fā)送探測(cè)請(qǐng)求,并根據(jù)客戶端返回的探測(cè)響應(yīng)得到自身至相應(yīng)客戶端的網(wǎng)絡(luò)通信狀況。
在上述方法的步驟B中,所述向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟包括服務(wù)端直接向發(fā)起客戶端返回包含自身至相應(yīng)目的客戶端網(wǎng)絡(luò)通信狀況的探測(cè)響應(yīng);所述步驟C包括發(fā)起客戶端接收到探測(cè)響應(yīng)后,當(dāng)根據(jù)該響應(yīng)中所攜帶的網(wǎng)絡(luò)通信狀況判定服務(wù)端至目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)時(shí),則判定自身至目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài);否則,判定自身至目的客戶端的網(wǎng)絡(luò)處于中斷狀態(tài)。
在上述方法中,所述服務(wù)端獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括服務(wù)端獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信時(shí)間;步驟B中,所述服務(wù)端獲取網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括服務(wù)端查找保存的自身至探測(cè)請(qǐng)求中所攜帶目的客戶端標(biāo)識(shí)所對(duì)應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間T1,以及自身至該發(fā)起客戶端的網(wǎng)絡(luò)通信時(shí)間T2;且所述向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟進(jìn)一步包括在返回至發(fā)起客戶端的探測(cè)響應(yīng)中包括所述網(wǎng)絡(luò)通信時(shí)間T1和網(wǎng)絡(luò)通信時(shí)間T2;所述步驟C進(jìn)一步包括發(fā)起客戶端接收到該探測(cè)響應(yīng)后,計(jì)算所述網(wǎng)絡(luò)通信時(shí)間T1和網(wǎng)絡(luò)通信時(shí)間T2的和,得到自身至目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
在上述方法中,所述服務(wù)端獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括服務(wù)端獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信時(shí)間;步驟B中,所述服務(wù)端獲取網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括服務(wù)端查找保存的自身至探測(cè)請(qǐng)求中所攜帶目的客戶端標(biāo)識(shí)所對(duì)應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間T1,以及自身至該發(fā)起客戶端的網(wǎng)絡(luò)通信時(shí)間T2,并計(jì)算查找到的所述網(wǎng)絡(luò)通信時(shí)間T1和網(wǎng)絡(luò)通信時(shí)間T2的和,然后在返回至發(fā)起客戶端的探測(cè)響應(yīng)中包含該計(jì)算結(jié)果;所述步驟C進(jìn)一步包括發(fā)起客戶端從接收到探測(cè)響應(yīng)中獲取所述計(jì)算結(jié)果,得到自身至目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
在上述方法中,所述服務(wù)端獲取自身至所有客戶端的網(wǎng)絡(luò)通信時(shí)間的方式為服務(wù)端預(yù)先保存所有客戶端的位置信息,然后根據(jù)保存的位置信息按照設(shè)定的時(shí)間間隔向所有客戶端發(fā)送探測(cè)請(qǐng)求,并在該探測(cè)請(qǐng)求中攜帶發(fā)送該探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1;當(dāng)服務(wù)端接收到客戶端返回的攜帶該系統(tǒng)時(shí)間t1的探測(cè)響應(yīng)時(shí),記錄接收到該探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t2與系統(tǒng)時(shí)間t1的差,得到服務(wù)端至相應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間;或者,服務(wù)端保存發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1;然后當(dāng)服務(wù)端接收到客戶端返回的攜帶該系統(tǒng)時(shí)間t1的探測(cè)響應(yīng)時(shí),記錄接收到該探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t2與系統(tǒng)時(shí)間t1的差,得到服務(wù)端至相應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間。
綜上所述,本發(fā)明基于包括服務(wù)端和一個(gè)以上連接至該服務(wù)端的客戶端的網(wǎng)絡(luò)結(jié)構(gòu),提供了兩種網(wǎng)絡(luò)通信狀況探測(cè)方法。其中一種探測(cè)方法為由服務(wù)端預(yù)先保存所有客戶端的位置信息;當(dāng)服務(wù)端接收到發(fā)起客戶端的探測(cè)請(qǐng)求后,向目的客戶端發(fā)送探測(cè)請(qǐng)求,并在接收到目的客戶端返回的探測(cè)響應(yīng)后,向發(fā)起客戶端返回探測(cè)響應(yīng),然后由發(fā)起客戶端根據(jù)接收到的探測(cè)響應(yīng)得到自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況,實(shí)現(xiàn)了發(fā)起客戶端探測(cè)自身至目的客戶端網(wǎng)絡(luò)通信狀況的目的。
上述探測(cè)方法采取服務(wù)端接收到發(fā)起客戶端的探測(cè)請(qǐng)求后,與目的客戶端進(jìn)行交互,因此屬于后獲取網(wǎng)絡(luò)通信狀況的方法。除此之外,本發(fā)明也可采取先獲取網(wǎng)絡(luò)通信狀況的方法,即另一種網(wǎng)絡(luò)通信狀況探測(cè)方法,該方法采取預(yù)先由服務(wù)端主動(dòng)與目的客戶端交互,獲取并保存服務(wù)端至目的客戶端的網(wǎng)絡(luò)通信狀況;當(dāng)服務(wù)端接收到發(fā)起客戶端的探測(cè)請(qǐng)求后,直接根據(jù)保存的自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況,向發(fā)起客戶端返回探測(cè)響應(yīng),從而同樣實(shí)現(xiàn)了發(fā)起客戶端獲取自身至目的客戶端網(wǎng)絡(luò)通信狀況信息的目的。
而且,本發(fā)明基于上述兩種探測(cè)方法不僅提供了由發(fā)起客戶端探測(cè)自身至目的客戶端之間的網(wǎng)絡(luò)是否處于連接狀態(tài)的步驟,還在此基礎(chǔ)上進(jìn)一步提供了探測(cè)網(wǎng)絡(luò)通信時(shí)間的步驟,以及發(fā)起客戶端探測(cè)自身至服務(wù)端網(wǎng)絡(luò)通信狀況的步驟,從而進(jìn)一步豐富了探測(cè)網(wǎng)絡(luò)通信狀況的內(nèi)容,真正意義上實(shí)現(xiàn)了探測(cè)網(wǎng)絡(luò)通信狀況的目的。
圖1為本發(fā)明方法適用的網(wǎng)絡(luò)結(jié)構(gòu)示意圖。
圖2為本發(fā)明第一實(shí)施例的網(wǎng)絡(luò)通信狀況探測(cè)方法流程圖。
圖3為本發(fā)明第二實(shí)施例的網(wǎng)絡(luò)通信狀況探測(cè)方法流程圖。
圖4為本發(fā)明第三實(shí)施例的網(wǎng)絡(luò)通信狀況探測(cè)方法流程圖。
圖5為本發(fā)明第四實(shí)施例的網(wǎng)絡(luò)通信狀況探測(cè)方法流程圖。
圖6為本發(fā)明第五實(shí)施例的網(wǎng)絡(luò)通信狀況探測(cè)方法流程圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步的詳細(xì)描述。
本發(fā)明提供了兩種探測(cè)網(wǎng)絡(luò)通信狀況的方法,這兩種方法適用的網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示,即網(wǎng)絡(luò)中至少包括一個(gè)服務(wù)端以及一個(gè)以上連接至該服務(wù)端的客戶端。本發(fā)明所探測(cè)的網(wǎng)絡(luò)通信狀況可以為網(wǎng)絡(luò)連接/中斷狀態(tài);或者基于上述網(wǎng)絡(luò)處于連接狀態(tài)時(shí)的網(wǎng)絡(luò)通信時(shí)間。
本發(fā)明的一種網(wǎng)絡(luò)通信狀況探測(cè)方法的核心思想是在服務(wù)端預(yù)先保存所有客戶端的位置信息;當(dāng)服務(wù)端接收到發(fā)起客戶端發(fā)送的獲取自身至目的客戶端網(wǎng)絡(luò)通信狀況的探測(cè)請(qǐng)求(NetCheckReq)時(shí),獲取保存的目的客戶端位置信息,然后根據(jù)該位置信息向目的客戶端發(fā)送包含發(fā)起客戶端信息的探測(cè)請(qǐng)求;目的客戶端接收到該探測(cè)請(qǐng)求后,向服務(wù)端返回包含發(fā)起客戶端信息的探測(cè)響應(yīng)(NetCheckResp);服務(wù)端接收到該探測(cè)響應(yīng)后,獲取保存的該發(fā)起客戶端位置信息,并根據(jù)該位置信息向該發(fā)起客戶端返回探測(cè)響應(yīng);發(fā)起客戶端根據(jù)接收到的探測(cè)響應(yīng)得到自身至目的客戶端的網(wǎng)絡(luò)通信狀況。由上述過程可以看出,服務(wù)端是在接收到發(fā)起客戶端的探測(cè)請(qǐng)求后,才發(fā)起與目的客戶端的交互過程的,因此屬于后獲取網(wǎng)絡(luò)通信狀況的方法。
本發(fā)明的另一種網(wǎng)絡(luò)通信狀況探測(cè)方法的核心思想是服務(wù)端主動(dòng)獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信狀況信息;當(dāng)服務(wù)端接收到來自發(fā)起客戶端的獲取自身至目的客戶端網(wǎng)絡(luò)通信狀況的探測(cè)請(qǐng)求時(shí),獲取保存的自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況,然后根據(jù)查找到的網(wǎng)絡(luò)通信狀況向該發(fā)起客戶端返回探測(cè)響應(yīng);發(fā)起客戶端根據(jù)接收到的探測(cè)響應(yīng)得到自身至目的客戶端的網(wǎng)絡(luò)通信狀況。由上述過程可以看出,服務(wù)端是在接收到發(fā)起客戶端的探測(cè)請(qǐng)求之前,主動(dòng)獲取自身至目的客戶端的網(wǎng)絡(luò)通信狀況的,因此屬于先獲取網(wǎng)絡(luò)通信狀況的方法。
下面通過第一至第四實(shí)施例詳細(xì)說明本發(fā)明的第一種網(wǎng)絡(luò)通信狀況探測(cè)方法,即后探測(cè)網(wǎng)絡(luò)通信狀況的方法。在第一至第四實(shí)施例中,預(yù)先在服務(wù)端保存客戶端位置信息,該位置信息包括客戶端的通信地址,如網(wǎng)際協(xié)議(IP)地址等,以下對(duì)這四個(gè)實(shí)施例的探測(cè)網(wǎng)絡(luò)通信狀況的過程分別進(jìn)行詳細(xì)說明。
第一實(shí)施例在本實(shí)施例中,采取在由發(fā)起客戶端發(fā)送的探測(cè)請(qǐng)求中僅包含目的客戶端標(biāo)識(shí)(descUserID),然后通過服務(wù)端將接收到的探測(cè)請(qǐng)求中攜帶的目的客戶端標(biāo)識(shí)轉(zhuǎn)換為發(fā)起客戶端標(biāo)識(shí)(srcUserID)的方式實(shí)現(xiàn)消息傳遞,最終使得發(fā)起客戶端獲得自身至目的客戶端的網(wǎng)絡(luò)連接狀況。本實(shí)施例探測(cè)流程如圖2所示,具體包括如下步驟步驟201發(fā)起客戶端向服務(wù)端發(fā)送包含目的客戶端標(biāo)識(shí)的探測(cè)請(qǐng)求。
其中,客戶端標(biāo)識(shí)為客戶端的唯一標(biāo)識(shí),如User1或User2等。
步驟202服務(wù)端接收到該探測(cè)請(qǐng)求后,從該探測(cè)請(qǐng)求中獲取目的客戶端標(biāo)識(shí)User2,然后查找保存的與該目的客戶端標(biāo)識(shí)User2對(duì)應(yīng)的位置信息,并用發(fā)送該探測(cè)請(qǐng)求的發(fā)起客戶端標(biāo)識(shí)User1替換原探測(cè)請(qǐng)求中攜帶的目的客戶端標(biāo)識(shí)User2,生成新的包含發(fā)起客戶端標(biāo)識(shí)User1的探測(cè)請(qǐng)求發(fā)送至目的客戶端。
步驟203目的客戶端接收到該探測(cè)請(qǐng)求后,從該探測(cè)請(qǐng)求中獲取攜帶的發(fā)起客戶端標(biāo)識(shí)User1,然后生成包含該發(fā)起客戶端標(biāo)識(shí)User1的探測(cè)響應(yīng)發(fā)送至服務(wù)端。
步驟204服務(wù)端接收到該探測(cè)響應(yīng)后,根據(jù)請(qǐng)求中所包含的發(fā)起客戶端標(biāo)識(shí)User1獲取保存的發(fā)起客戶端位置信息,并將接收到的探測(cè)響應(yīng)中的發(fā)起客戶端標(biāo)識(shí)User1替換為發(fā)送該探測(cè)響應(yīng)的目的客戶端標(biāo)識(shí)User2,然后生成新的包含目的客戶端標(biāo)識(shí)User2的探測(cè)響應(yīng),并根據(jù)獲取的位置信息向該發(fā)起客戶端返回該探測(cè)響應(yīng)。
步驟205發(fā)起客戶端接收到該探測(cè)響應(yīng)后,從中獲取攜帶的目的客戶端標(biāo)識(shí)User2,得到自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況。
其中,發(fā)起客戶端得到自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況具體是指當(dāng)發(fā)起客戶端接收到服務(wù)端返回的探測(cè)響應(yīng)后,獲取該響應(yīng)中攜帶的目的客戶端標(biāo)識(shí),從而判定自身至相應(yīng)目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)。
上述實(shí)施例采取由服務(wù)端對(duì)接收到的探測(cè)請(qǐng)求中所包含的客戶端標(biāo)識(shí)進(jìn)行轉(zhuǎn)換,從而實(shí)現(xiàn)探測(cè)請(qǐng)求以及探測(cè)響應(yīng)在發(fā)起客戶端和目的客戶端之間的傳遞,最終實(shí)現(xiàn)發(fā)起客戶端獲取自身至目的客戶端網(wǎng)絡(luò)連接狀況的目的。本發(fā)明也可采取由發(fā)起客戶端在發(fā)送的探測(cè)請(qǐng)求中同時(shí)包括自身標(biāo)識(shí)和目的客戶端標(biāo)識(shí)的方式,從而避免服務(wù)端對(duì)消息中攜帶的客戶端標(biāo)識(shí)進(jìn)行轉(zhuǎn)換的操作,下面通過第二實(shí)施例詳細(xì)說明。
第二實(shí)施例本實(shí)施例探測(cè)流程如圖3所示,具體包括如下步驟步驟301發(fā)起客戶端向服務(wù)端發(fā)送攜帶發(fā)起客戶端標(biāo)識(shí)User1和目的客戶端標(biāo)識(shí)User2的探測(cè)請(qǐng)求。
步驟302服務(wù)端接收到該探測(cè)請(qǐng)求后,對(duì)該探測(cè)請(qǐng)求進(jìn)行解析,從中獲取目的客戶端標(biāo)識(shí)User2,然后從自身保存的用戶位置信息中查找與該目的客戶端標(biāo)識(shí)User2對(duì)應(yīng)的位置信息,最后根據(jù)查找到的用戶位置信息將該接收到的探測(cè)請(qǐng)求發(fā)送至目的客戶端。
步驟303目的客戶端接收到該探測(cè)請(qǐng)求后,對(duì)該探測(cè)請(qǐng)求進(jìn)行解析,從中獲取發(fā)起客戶端標(biāo)識(shí)User1和目的客戶端標(biāo)識(shí)User2,生成攜帶發(fā)起客戶端標(biāo)識(shí)User1和目的客戶端標(biāo)識(shí)User2的探測(cè)響應(yīng),并將生成的探測(cè)響應(yīng)發(fā)送至服務(wù)端。
步驟304服務(wù)端對(duì)接收到探測(cè)響應(yīng)進(jìn)行解析,從中獲取發(fā)起客戶端標(biāo)識(shí)User1,然后從自身保存的用戶位置信息中查找與發(fā)起客戶端標(biāo)識(shí)User1對(duì)應(yīng)的用戶位置信息,最后根據(jù)查找到的用戶位置信息將接收到的探測(cè)響應(yīng)返回至發(fā)起客戶端。
步驟305發(fā)起客戶端接收到該探測(cè)響應(yīng)后,從中獲取目的客戶端標(biāo)識(shí)User2,得到自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況,即判定發(fā)起客戶端自身至相應(yīng)目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)。
上述兩個(gè)實(shí)施例分別說明了探測(cè)網(wǎng)絡(luò)連接狀況的兩種方式,除此之外,本發(fā)明還可以進(jìn)一步探測(cè)由發(fā)起客戶端至目的客戶端的網(wǎng)絡(luò)通信時(shí)間。下面通過第三實(shí)施例和第四實(shí)施例進(jìn)行詳細(xì)說明。
第三實(shí)施例在本實(shí)施例中,采取由發(fā)起客戶端在發(fā)送的探測(cè)請(qǐng)求中攜帶發(fā)送該探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間,然后由目的客戶端將該系統(tǒng)時(shí)間由接收到的探測(cè)請(qǐng)求中傳遞至探測(cè)響應(yīng)中,并返回至發(fā)起客戶端,從而使得發(fā)起客戶端可以通過計(jì)算接收到探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間與探測(cè)響應(yīng)中所攜帶的發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間的差,得到自身至目的客戶端的網(wǎng)絡(luò)通信時(shí)間,本實(shí)施例探測(cè)流程如圖4所示,具體包括如下步驟步驟401發(fā)起客戶端首先獲取自身的當(dāng)前系統(tǒng)時(shí)間(SystemTime),如t1,然后生成攜帶發(fā)起客戶端標(biāo)識(shí)User1、目的客戶端標(biāo)識(shí)User2以及記錄獲取的系統(tǒng)時(shí)間t1的時(shí)間戳(TimeStamp)的探測(cè)請(qǐng)求,然后將生成的探測(cè)請(qǐng)求發(fā)送至服務(wù)端。
步驟402與上述步驟302相同,此處不再贅述。
步驟403目的客戶端接收到該探測(cè)請(qǐng)求后,從該探測(cè)請(qǐng)求中獲取發(fā)起客戶端標(biāo)識(shí)User1、目的客戶端標(biāo)識(shí)User2和時(shí)間戳,然后生成探測(cè)響應(yīng),并在消息中攜帶該解析得到的發(fā)起客戶端標(biāo)識(shí)User1、目的客戶端標(biāo)識(shí)User2和時(shí)間戳,最后將生成的探測(cè)響應(yīng)返回至服務(wù)端。
步驟404與上述步驟304相同。
步驟405當(dāng)發(fā)起客戶端接收到探測(cè)響應(yīng)時(shí),獲取接收到探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取包含的時(shí)間戳,然后計(jì)算獲取的系統(tǒng)時(shí)間t2與時(shí)間戳記錄的系統(tǒng)時(shí)間t1的差,最終得到自身至目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
在上述第三實(shí)施例中,通過計(jì)算接收到探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間與發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間的時(shí)間差的方式實(shí)現(xiàn)發(fā)起客戶端獲取自身至目的客戶端間網(wǎng)絡(luò)通信時(shí)間的目的。除此之外,本發(fā)明還可以采取另一種方式得到上述時(shí)間差,即由發(fā)起客戶端分別記錄發(fā)送探測(cè)請(qǐng)求和接收到相應(yīng)探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間,然后計(jì)算二者之差,從而得到自身至目的客戶端的網(wǎng)絡(luò)通信時(shí)間。下面通過本發(fā)明的第四實(shí)施例進(jìn)行詳細(xì)說明。
第四實(shí)施例本實(shí)施例探測(cè)流程如圖5所示,具體包括如下步驟步驟501發(fā)起客戶端向服務(wù)端發(fā)送攜帶發(fā)起客戶端標(biāo)識(shí)User1、目的客戶端標(biāo)識(shí)User2以及唯一標(biāo)識(shí)該探測(cè)請(qǐng)求的消息序列號(hào)(SequenceID)的探測(cè)請(qǐng)求,并在自身保存該消息序列號(hào)和發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1,使得保存的消息序列號(hào)與系統(tǒng)時(shí)間t1相對(duì)應(yīng)。
其中,由于發(fā)起客戶端需要對(duì)發(fā)送的探測(cè)請(qǐng)求和接收到的探測(cè)響應(yīng)進(jìn)行匹配,因此本實(shí)施例中還需要進(jìn)一步采取由發(fā)起客戶端在發(fā)送的探測(cè)請(qǐng)求中攜帶消息序列號(hào)。
步驟502與步驟302完全相同,此處不再贅述。
步驟503目的客戶端接收到服務(wù)端發(fā)送的探測(cè)請(qǐng)求后,對(duì)該探測(cè)請(qǐng)求進(jìn)行解析,從中獲取發(fā)起客戶端標(biāo)識(shí)User1、目的客戶端標(biāo)識(shí)User2以及消息序列號(hào),然后生成攜帶該發(fā)起客戶端標(biāo)識(shí)User1、目的客戶端標(biāo)識(shí)User2和消息序列號(hào)的探測(cè)響應(yīng),最后將生成的探測(cè)響應(yīng)發(fā)送至服務(wù)端。
步驟504與步驟304完全相同,此處不再贅述。
步驟505當(dāng)發(fā)起客戶端接收到服務(wù)端返回的探測(cè)響應(yīng)時(shí),記錄接收到該探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取攜帶的消息序列號(hào),然后查找保存的與該消息序列號(hào)對(duì)應(yīng)的系統(tǒng)時(shí)間t1,最后計(jì)算接收到探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2與發(fā)送該探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1的差,計(jì)算得到的結(jié)果就是由發(fā)起客戶端至目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
在本實(shí)施例中,采取在探測(cè)請(qǐng)求中攜帶消息序列號(hào),并在發(fā)起客戶端保存該消息序列號(hào)的方式實(shí)現(xiàn)了在發(fā)起客戶端,探測(cè)請(qǐng)求與探測(cè)響應(yīng)消息的匹配,然而本發(fā)明并不局限于此,還可以采取其它方式來實(shí)現(xiàn)上述消息匹配。
上述第三實(shí)施例和第四實(shí)施例都是基于上述第二實(shí)施例所述的在探測(cè)請(qǐng)求中同時(shí)攜帶發(fā)起客戶端標(biāo)識(shí)和目的客戶端標(biāo)識(shí)的情況獲取網(wǎng)絡(luò)通信時(shí)間的。顯然,本發(fā)明也可以針對(duì)上述第一實(shí)施例中所述的僅在探測(cè)請(qǐng)求中攜帶目的客戶端標(biāo)識(shí)的情況獲取發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1以及接收到探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并采用上述第三實(shí)施例或第四實(shí)施例所述的方式計(jì)算時(shí)間差,從而最終得到發(fā)起客戶端至目的客戶端的網(wǎng)絡(luò)通信時(shí)間,由于具體執(zhí)行過程與上述第三實(shí)施例或第四實(shí)施例所述的相關(guān)步驟基本相同,因此這里不再重復(fù)。
以上說明了本發(fā)明發(fā)起客戶端探測(cè)自身至目的客戶端間網(wǎng)絡(luò)連接狀況以及網(wǎng)絡(luò)通信時(shí)間的優(yōu)選實(shí)施例。除此之外,本發(fā)明還可以在上述探測(cè)發(fā)起客戶端至目的客戶端間網(wǎng)絡(luò)通信狀況的基礎(chǔ)上進(jìn)一步探測(cè)由發(fā)起客戶端至服務(wù)端之間的網(wǎng)絡(luò)連接狀況和網(wǎng)絡(luò)通信時(shí)間。下面同樣基于上述第二實(shí)施例所述的在探測(cè)請(qǐng)求中同時(shí)攜帶發(fā)起客戶端標(biāo)識(shí)和目的客戶端標(biāo)識(shí)的情況,說明獲取由發(fā)起客戶端至服務(wù)端網(wǎng)絡(luò)連接狀況的方法,并基于上述第三實(shí)施例說明發(fā)起客戶端探測(cè)自身至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間的方法。
首先,獲取由發(fā)起客戶端至服務(wù)端的網(wǎng)絡(luò)連接狀況這時(shí),需要在上述步驟302中進(jìn)一步包括當(dāng)服務(wù)端接收到發(fā)起客戶端的探測(cè)請(qǐng)求后,向發(fā)起客戶端返回接收響應(yīng)(RecvResp);發(fā)起客戶端根據(jù)該接收響應(yīng)得到自身至服務(wù)端的網(wǎng)絡(luò)連接狀況。
其中,上述發(fā)起客戶端根據(jù)接收響應(yīng)得到自身至服務(wù)端網(wǎng)絡(luò)連接狀況的具體執(zhí)行方式為發(fā)起客戶端根據(jù)是否接收到服務(wù)端返回的接收響應(yīng)判斷自身至服務(wù)端之間的網(wǎng)絡(luò)是否處于連接狀態(tài),即當(dāng)發(fā)起客戶端接收到服務(wù)端返回的接收響應(yīng)時(shí),則判定自身至服務(wù)端間的網(wǎng)絡(luò)處于連接狀態(tài);而當(dāng)發(fā)起客戶端沒有接收到服務(wù)端返回的接收響應(yīng)時(shí),則判定自身至服務(wù)端間的網(wǎng)絡(luò)處于中斷狀態(tài)。
上述獲取由發(fā)起客戶端至服務(wù)端的網(wǎng)絡(luò)連接狀況的方法對(duì)于其它實(shí)施例也同樣適用,這里不再重復(fù)。
下面基于上述第三實(shí)施例說明發(fā)起客戶端探測(cè)自身至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間的方法。
此時(shí),需要在上述步驟402中進(jìn)一步包括當(dāng)服務(wù)端接收到來自發(fā)起客戶端的探測(cè)請(qǐng)求后,對(duì)該探測(cè)請(qǐng)求進(jìn)行解析,從中獲取發(fā)起客戶端標(biāo)識(shí)User1、目的客戶端標(biāo)識(shí)User2和時(shí)間戳,然后生成攜帶發(fā)起客戶端標(biāo)識(shí)User1、目的客戶端標(biāo)識(shí)User2和時(shí)間戳的接收響應(yīng),并將該接收響應(yīng)發(fā)送至該發(fā)起客戶端;發(fā)起客戶端接收到該接收響應(yīng)時(shí),記錄接收到該接收響應(yīng)的系統(tǒng)時(shí)間t3,并從接收到的探測(cè)響應(yīng)中獲取消息序列號(hào),然后查找保存的與該消息序列號(hào)對(duì)應(yīng)的系統(tǒng)時(shí)間t1,最后計(jì)算接收到該接收響應(yīng)的系統(tǒng)時(shí)間t3與發(fā)送該探測(cè)請(qǐng)求的系統(tǒng)時(shí)間t1的差,計(jì)算所得的結(jié)果就是由發(fā)起客戶端至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間。
當(dāng)然本發(fā)明也可采取上述第四實(shí)施例所述的方式獲取由發(fā)起客戶端至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間。
具體來說,就是在上述第四實(shí)施例的步驟502中進(jìn)一步包括當(dāng)服務(wù)端接收到發(fā)起客戶端發(fā)送的探測(cè)請(qǐng)求后,對(duì)該探測(cè)請(qǐng)求進(jìn)行解析,從中獲取消息序列號(hào),然后生成攜帶該消息序列號(hào)的接收響應(yīng)發(fā)送至發(fā)起客戶端;發(fā)起客戶端記錄接收到該接收響應(yīng)時(shí)自身的系統(tǒng)時(shí)間t3,并從接收到的接收響應(yīng)中獲取消息序列號(hào),然后查找保存的與該消息序列號(hào)對(duì)應(yīng)的系統(tǒng)時(shí)間t1,最后計(jì)算接收到接收響應(yīng)時(shí)的系統(tǒng)時(shí)間t3與發(fā)送該探測(cè)請(qǐng)求的系統(tǒng)時(shí)間t1的差,計(jì)算得到的結(jié)果就是由發(fā)起客戶端至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間。
上述獲取由發(fā)起客戶端至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間的兩種方法也同樣適用于其它實(shí)施例,具體執(zhí)行過程基本相同,此處不再重復(fù)描述。
以上通過第一至第四實(shí)施例說明了本發(fā)明的一種網(wǎng)絡(luò)通信狀況探測(cè)方法,下面詳細(xì)說明本發(fā)明的另一種網(wǎng)絡(luò)通信狀況探測(cè)方法,具體請(qǐng)參見下述第五實(shí)施例。
第五實(shí)施例在本實(shí)施例中,同樣需要預(yù)先在服務(wù)端保存所有客戶端的位置信息,本實(shí)施例探測(cè)網(wǎng)絡(luò)通信狀況的流程如圖6所示,包括如下步驟步驟601服務(wù)端預(yù)先根據(jù)保存的用戶位置信息按照設(shè)定的時(shí)間間隔向各目的客戶端發(fā)送探測(cè)請(qǐng)求。
在本步驟中,由于服務(wù)端需要預(yù)先獲取自身至網(wǎng)絡(luò)中所有客戶端的網(wǎng)絡(luò)通信狀況信息,因此,一方面對(duì)于服務(wù)端來說,網(wǎng)絡(luò)中的所有客戶端均為目的客戶端;另一方面,為了與上述幾個(gè)實(shí)施例統(tǒng)一,將服務(wù)端預(yù)先發(fā)送探測(cè)請(qǐng)求的客戶端稱為目的客戶端。
步驟602目的客戶端接收到服務(wù)端的探測(cè)請(qǐng)求后,向服務(wù)端返回探測(cè)響應(yīng)。
步驟603服務(wù)端根據(jù)接收到的探測(cè)響應(yīng),獲取并保存自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況信息。
上述步驟601至步驟603說明了服務(wù)端預(yù)先主動(dòng)獲取自身至網(wǎng)絡(luò)中所有客戶端的網(wǎng)絡(luò)通信狀況的過程,且上述步驟中采取的是由服務(wù)端向客戶端發(fā)送探測(cè)請(qǐng)求,然后根據(jù)各客戶端返回的探測(cè)響應(yīng)獲取自身至相應(yīng)客戶端的網(wǎng)絡(luò)通信狀況的方式。除此之外,本發(fā)明也可采取由服務(wù)端根據(jù)保存的各客戶端的IP地址向各客戶端發(fā)送IP協(xié)議層鏈路通斷檢測(cè)(Ping)信令的方式實(shí)現(xiàn),而且當(dāng)客戶端與服務(wù)端斷開連接時(shí),服務(wù)端則將該客戶端刪除。
步驟604發(fā)起客戶端向服務(wù)端發(fā)送攜帶目的客戶端標(biāo)識(shí)User2的探測(cè)請(qǐng)求。
步驟605當(dāng)服務(wù)端接收到來自發(fā)起客戶端的探測(cè)請(qǐng)求時(shí),查找保存的自身至該請(qǐng)求中所攜帶目的客戶端標(biāo)識(shí)User2所對(duì)應(yīng)客戶端的網(wǎng)絡(luò)通信狀況,然后根據(jù)查找到的網(wǎng)絡(luò)通信狀況向該發(fā)起客戶端返回?cái)y帶相應(yīng)目的客戶端標(biāo)識(shí)User2的探測(cè)響應(yīng)。
步驟606發(fā)起客戶端根據(jù)接收到的探測(cè)響應(yīng)得到自身至目的客戶端的網(wǎng)絡(luò)通信狀況。
在本實(shí)施例中,所述網(wǎng)絡(luò)通信狀況同樣包括網(wǎng)絡(luò)連接狀況;或者基于網(wǎng)絡(luò)處于連接狀態(tài)時(shí)的網(wǎng)絡(luò)通信時(shí)間。
首先,對(duì)于網(wǎng)絡(luò)連接狀況來說,在上述步驟605中,所述根據(jù)查找到的網(wǎng)絡(luò)通信狀況向該發(fā)起客戶端返回探測(cè)響應(yīng)的步驟包括服務(wù)端首先獲取保存的自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況,判斷自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)是否處于連接狀態(tài),如果是,則向發(fā)起客戶端返回包含自身至相應(yīng)目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)的探測(cè)響應(yīng);否則,返回自身至相應(yīng)目的客戶端間的網(wǎng)絡(luò)處于中斷狀態(tài)的探測(cè)響應(yīng),并且在返回的探測(cè)響應(yīng)中攜帶目的客戶端標(biāo)識(shí)。而在上述步驟606中,則執(zhí)行發(fā)起客戶端接收到該探測(cè)響應(yīng)后,當(dāng)根據(jù)該響應(yīng)中所攜帶的網(wǎng)絡(luò)通信狀況判定服務(wù)端至目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)時(shí),則判定自身至目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)。
其次,當(dāng)網(wǎng)絡(luò)通信狀況進(jìn)一步包括基于網(wǎng)絡(luò)處于連接狀態(tài)時(shí)的網(wǎng)絡(luò)通信時(shí)間時(shí),則在上述第五實(shí)施例中,服務(wù)端還需要進(jìn)一步按照設(shè)定的時(shí)間間隔獲取并保存自身至各客戶端的網(wǎng)絡(luò)通信時(shí)間。而在上述步驟605中,所述服務(wù)端查找網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括服務(wù)端查找保存的自身至探測(cè)請(qǐng)求中所攜帶目的客戶端標(biāo)識(shí)User2所對(duì)應(yīng)目的客戶端的網(wǎng)絡(luò)通信時(shí)間T1,以及自身至該發(fā)起客戶端的網(wǎng)絡(luò)通信時(shí)間T2;而且在返回至發(fā)起客戶端的探測(cè)響應(yīng)中進(jìn)一步包括該查找到的網(wǎng)絡(luò)通信時(shí)間T1和網(wǎng)絡(luò)通信時(shí)間T2。并且在上述步驟606中進(jìn)一步包括發(fā)起客戶端接收到該探測(cè)響應(yīng)后,計(jì)算所述網(wǎng)絡(luò)通信時(shí)間T1和網(wǎng)絡(luò)通信時(shí)間T2的和,從而得到自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
另外,在上述步驟605中,當(dāng)服務(wù)端查找到保存的自身至探測(cè)請(qǐng)求中所攜帶目的客戶端標(biāo)識(shí)所對(duì)應(yīng)的目的客戶端的網(wǎng)絡(luò)通信時(shí)間T1,以及自身至該發(fā)起客戶端的網(wǎng)絡(luò)通信時(shí)間T2之后,還可以采取由服務(wù)端進(jìn)一步計(jì)算出所述網(wǎng)絡(luò)通信時(shí)間T1和網(wǎng)絡(luò)通信時(shí)間T2的和,然后在返回至發(fā)起客戶端的探測(cè)響應(yīng)中直接包含該計(jì)算結(jié)果的方式。這樣,在上述步驟606中,發(fā)起客戶端只需從接收到探測(cè)響應(yīng)中獲取所述網(wǎng)絡(luò)通信時(shí)間T1與網(wǎng)絡(luò)通信時(shí)間T2的和,即可得到自身至目的客戶端的網(wǎng)絡(luò)通信時(shí)間,從而減輕了發(fā)起客戶端的負(fù)擔(dān)。
而且,對(duì)于上述網(wǎng)絡(luò)通信時(shí)間的獲取同樣可以采取本發(fā)明第三實(shí)施例或第四實(shí)施例中所述的方法。即按照第三實(shí)施例所述的方法,在服務(wù)端發(fā)送至各客戶端的探測(cè)請(qǐng)求中攜帶發(fā)送該探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1;當(dāng)服務(wù)端接收到客戶端返回的攜帶系統(tǒng)時(shí)間t1的探測(cè)響應(yīng)時(shí),記錄接收到探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t2與系統(tǒng)時(shí)間t1的差,得到服務(wù)端至相應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間。也可以采取第四實(shí)施例所述的方法,即在服務(wù)端保存發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1;然后當(dāng)服務(wù)端接收到客戶端返回的攜帶該系統(tǒng)時(shí)間t1的探測(cè)響應(yīng)時(shí),記錄接收到探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t2與系統(tǒng)時(shí)間t1的差,得到服務(wù)端至相應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間。當(dāng)然,上述在探測(cè)請(qǐng)求或探測(cè)響應(yīng)中攜帶系統(tǒng)時(shí)間的方式可以采取如上所述的時(shí)間戳的方式。而且當(dāng)采用后一種方式獲取時(shí)間差時(shí),同樣需要考慮探測(cè)請(qǐng)求與探測(cè)響應(yīng)的匹配問題,具體執(zhí)行步驟可以采取與上述第四實(shí)施例中所述相同的方法,即在發(fā)送的探測(cè)請(qǐng)求中攜帶消息序列號(hào),并保存消息序列號(hào)與發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間的方式,從而最終在發(fā)起客戶端實(shí)現(xiàn)發(fā)出的探測(cè)請(qǐng)求與接收到的探測(cè)響應(yīng)的匹配。
以上說明了本發(fā)明的客戶端探測(cè)網(wǎng)絡(luò)通信狀況的方法,本發(fā)明方法可以適用于任何由服務(wù)端以及多個(gè)連接至該服務(wù)端的客戶端組成的網(wǎng)絡(luò),如在線游戲系統(tǒng)等。
總之,以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用于限定本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種網(wǎng)絡(luò)通信狀況探測(cè)方法,該網(wǎng)絡(luò)至少包括服務(wù)端和一個(gè)以上連接至該服務(wù)端的客戶端,其特征在于,該方法在服務(wù)端預(yù)先保存所有客戶端的位置信息,探測(cè)網(wǎng)絡(luò)通信狀況的過程包括如下步驟a、發(fā)起客戶端向服務(wù)端發(fā)送獲取自身至目的客戶端網(wǎng)絡(luò)通信狀況的探測(cè)請(qǐng)求;b、服務(wù)端接收到該探測(cè)請(qǐng)求后,根據(jù)保存的目的客戶端位置信息向目的客戶端發(fā)送探測(cè)請(qǐng)求;目的客戶端接收到該探測(cè)請(qǐng)求后,向服務(wù)端返回探測(cè)響應(yīng);c、服務(wù)端接收到該探測(cè)響應(yīng)后,根據(jù)保存的發(fā)起客戶端位置信息向發(fā)起客戶端返回探測(cè)響應(yīng);發(fā)起客戶端根據(jù)接收到的探測(cè)響應(yīng)得到自身至目的客戶端的網(wǎng)絡(luò)通信狀況。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,步驟a中,所述發(fā)起客戶端發(fā)送探測(cè)請(qǐng)求的方式為發(fā)起客戶端向服務(wù)端發(fā)送攜帶目的客戶端標(biāo)識(shí)的探測(cè)請(qǐng)求;所述步驟b進(jìn)一步包括服務(wù)端從接收到的探測(cè)請(qǐng)求中獲取攜帶的目的客戶端標(biāo)識(shí),并從自身保存的客戶端位置信息中查找與所述目的客戶端標(biāo)識(shí)對(duì)應(yīng)的位置信息,然后執(zhí)行步驟b中所述向目的客戶端發(fā)送探測(cè)請(qǐng)求的步驟;所述步驟c進(jìn)一步包括服務(wù)端從接收到的探測(cè)響應(yīng)中獲取攜帶的發(fā)起客戶端標(biāo)識(shí),并從自身保存的客戶端位置信息中查找與所述發(fā)起客戶端標(biāo)識(shí)對(duì)應(yīng)的位置信息,然后執(zhí)行步驟c中所述向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟b中,所述服務(wù)端向目的客戶端發(fā)送探測(cè)請(qǐng)求的步驟包括服務(wù)端將接收到的探測(cè)請(qǐng)求中的目的客戶端標(biāo)識(shí)替換為發(fā)送該探測(cè)請(qǐng)求的發(fā)起客戶端標(biāo)識(shí),然后生成新的探測(cè)請(qǐng)求發(fā)送至目的客戶端;所述目的客戶端向服務(wù)端返回探測(cè)響應(yīng)的步驟包括目的客戶端從接收到的探測(cè)請(qǐng)求中獲取攜帶的發(fā)起客戶端標(biāo)識(shí),并生成包含該發(fā)起客戶端標(biāo)識(shí)的探測(cè)響應(yīng),然后將該探測(cè)響應(yīng)返回至服務(wù)端;步驟c中,所述服務(wù)端向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟包括服務(wù)端將接收到的探測(cè)響應(yīng)中的發(fā)起客戶端標(biāo)識(shí)替換為發(fā)送該響應(yīng)的目的客戶端標(biāo)識(shí),然后生成新的探測(cè)響應(yīng)返回至發(fā)起客戶端;步驟c中,所述根據(jù)探測(cè)響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟包括當(dāng)發(fā)起客戶端接收到服務(wù)端返回的探測(cè)響應(yīng)時(shí),從該響應(yīng)中獲取攜帶的目的客戶端標(biāo)識(shí),得到自身至相應(yīng)目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟a中,在所述探測(cè)請(qǐng)求中進(jìn)一步包括發(fā)起客戶端標(biāo)識(shí);步驟b中,所述服務(wù)端向目的客戶端發(fā)送探測(cè)請(qǐng)求的步驟包括服務(wù)端向目的客戶端轉(zhuǎn)發(fā)接收自發(fā)起客戶端的探測(cè)請(qǐng)求;所述目的客戶端向服務(wù)端返回探測(cè)響應(yīng)的步驟包括目的客戶端從接收到的探測(cè)請(qǐng)求中獲取攜帶的發(fā)起客戶端標(biāo)識(shí)和目的客戶端標(biāo)識(shí),然后生成包含該發(fā)起客戶端標(biāo)識(shí)和目的客戶端標(biāo)識(shí)的探測(cè)響應(yīng)返回至服務(wù)端;步驟c中,所述服務(wù)端向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟包括服務(wù)端向發(fā)起客戶端轉(zhuǎn)發(fā)接收自目的客戶端的探測(cè)響應(yīng);所述根據(jù)探測(cè)響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟包括當(dāng)發(fā)起客戶端接收到服務(wù)端返回的探測(cè)響應(yīng)時(shí),從該響應(yīng)中獲取攜帶的目的客戶端標(biāo)識(shí),得到自身至相應(yīng)目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)。
5.根據(jù)權(quán)利要求1至4中任意一項(xiàng)所述的方法,其特征在于,所述步驟a進(jìn)一步包括發(fā)起客戶端獲取向服務(wù)端發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1,然后在所述探測(cè)請(qǐng)求中進(jìn)一步包括記錄該系統(tǒng)時(shí)間t1的時(shí)間戳;步驟b中,所述目的客戶端向服務(wù)端返回探測(cè)響應(yīng)的步驟進(jìn)一步包括目的客戶端從接收到的探測(cè)請(qǐng)求中獲取攜帶的時(shí)間戳,并在發(fā)送至服務(wù)端的探測(cè)響應(yīng)中攜帶該時(shí)間戳;步驟c中,所述根據(jù)探測(cè)響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括發(fā)起客戶端記錄接收到探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取時(shí)間戳所記錄的系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t2與所述系統(tǒng)時(shí)間t1的差,得到自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
6.根據(jù)權(quán)利要求1至4中任意一項(xiàng)所述的方法,其特征在于,步驟a中,在所述探測(cè)請(qǐng)求中進(jìn)一步包括該探測(cè)請(qǐng)求的消息序列號(hào);且所述步驟a進(jìn)一步包括發(fā)起客戶端獲取向服務(wù)端發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1,并將該探測(cè)請(qǐng)求的消息序列號(hào)與系統(tǒng)時(shí)間t1對(duì)應(yīng)保存;步驟b中,所述目的客戶端向服務(wù)端返回探測(cè)響應(yīng)的步驟進(jìn)一步包括目的客戶端從接收到的探測(cè)請(qǐng)求中獲取攜帶的消息序列號(hào),并在返回至服務(wù)端的探測(cè)響應(yīng)中攜帶該消息序列號(hào);步驟c中,所述根據(jù)探測(cè)響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括當(dāng)發(fā)起客戶端接收到服務(wù)端返回的探測(cè)響應(yīng)時(shí),記錄接收到該探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并獲取該響應(yīng)中攜帶的消息序列號(hào),然后查找保存的與該消息序列號(hào)對(duì)應(yīng)的系統(tǒng)時(shí)間t1,最后計(jì)算所述系統(tǒng)時(shí)間t2與所述系統(tǒng)時(shí)間t1的差,得到自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
7.根據(jù)權(quán)利要求1至4中任意一項(xiàng)所述的方法,其特征在于,所述步驟b進(jìn)一步包括當(dāng)服務(wù)端接收到來自發(fā)起客戶端的探測(cè)請(qǐng)求后,向發(fā)起客戶端返回接收響應(yīng);發(fā)起客戶端根據(jù)接收到的接收響應(yīng)得到自身至服務(wù)端的網(wǎng)絡(luò)通信狀況。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,步驟b中,所述發(fā)起客戶端根據(jù)接收響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟包括當(dāng)發(fā)起客戶端接收到服務(wù)端返回的接收響應(yīng)時(shí),則判定自身至服務(wù)端間的網(wǎng)絡(luò)處于連接狀態(tài)。
9.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述步驟a進(jìn)一步包括發(fā)起客戶端獲取向服務(wù)端發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1,并在所述探測(cè)請(qǐng)求中進(jìn)一步包括記錄該系統(tǒng)時(shí)間t1的時(shí)間戳;步驟b中,所述服務(wù)端向發(fā)起客戶端返回接收響應(yīng)的步驟包括服務(wù)端從接收到的探測(cè)請(qǐng)求中獲取攜帶的時(shí)間戳,并在發(fā)送至發(fā)起客戶端的接收響應(yīng)中攜帶該時(shí)間戳;且所述發(fā)起客戶端根據(jù)接收響應(yīng)得到網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括發(fā)起客戶端獲取接收到接收響應(yīng)時(shí)的系統(tǒng)時(shí)間t3,并從接收到的接收響應(yīng)中獲取時(shí)間戳所記錄的系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t3與所述系統(tǒng)時(shí)間t1的差,得到自身至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間。
10.根據(jù)權(quán)利要求7所述的方法,其特征在于,在步驟a所述的探測(cè)請(qǐng)求中進(jìn)一步包括該探測(cè)請(qǐng)求的消息序列號(hào);且所述步驟a進(jìn)一步包括發(fā)起客戶端獲取向服務(wù)端發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1,并將該探測(cè)請(qǐng)求的消息序列號(hào)與系統(tǒng)時(shí)間t1對(duì)應(yīng)保存;所述步驟b進(jìn)一步包括服務(wù)端接收到來自發(fā)起客戶端的探測(cè)請(qǐng)求后,從該探測(cè)請(qǐng)求中獲取攜帶的消息序列號(hào),并在返回至發(fā)起客戶端的接收響應(yīng)中包含該消息序列號(hào);當(dāng)發(fā)起客戶端接收到服務(wù)端返回的接收響應(yīng)時(shí),記錄接收到接收響應(yīng)時(shí)的系統(tǒng)時(shí)間t3,然后從接收到的接收響應(yīng)中獲取攜帶的消息序列號(hào),并查找保存的與該消息序列號(hào)對(duì)應(yīng)的系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t3與所述系統(tǒng)時(shí)間t1的差,得到自身至服務(wù)端的網(wǎng)絡(luò)通信時(shí)間。
11.一種網(wǎng)絡(luò)通信狀況探測(cè)方法,該網(wǎng)絡(luò)至少包括服務(wù)端和一個(gè)以上連接至該服務(wù)端的客戶端,其特征在于,該方法在服務(wù)端預(yù)先保存所有客戶端的位置信息,且服務(wù)端根據(jù)保存的客戶端位置信息獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信狀況;探測(cè)網(wǎng)絡(luò)通信狀況的過程包括如下步驟A、發(fā)起客戶端向服務(wù)端發(fā)送獲取自身至目的客戶端網(wǎng)絡(luò)通信狀況的探測(cè)請(qǐng)求;B、服務(wù)端接收到來自發(fā)起客戶端的探測(cè)請(qǐng)求后,獲取保存的自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況,然后根據(jù)獲取的網(wǎng)絡(luò)通信狀況向該發(fā)起客戶端返回探測(cè)響應(yīng);C、發(fā)起客戶端根據(jù)接收到的探測(cè)響應(yīng)得到自身至目的客戶端的網(wǎng)絡(luò)通信狀況。
12.根據(jù)權(quán)利要求11所述的方法,其特征在于,步驟A中,所述發(fā)起客戶端發(fā)送探測(cè)請(qǐng)求的方式為發(fā)起客戶端向服務(wù)端發(fā)送攜帶目的客戶端標(biāo)識(shí)的探測(cè)請(qǐng)求;步驟B中,所述服務(wù)端獲取保存的自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況的方式為服務(wù)端從接收到的探測(cè)請(qǐng)求中獲取攜帶的目的客戶端標(biāo)識(shí),然后查找自身保存的與所述目的客戶端標(biāo)識(shí)對(duì)應(yīng)的網(wǎng)絡(luò)通信狀況。
13.根據(jù)權(quán)利要求11所述的方法,其特征在于,該方法中,所述服務(wù)端獲取自身至所有客戶端的網(wǎng)絡(luò)通信狀況的方式為服務(wù)端預(yù)先保存所有客戶端的位置信息,然后根據(jù)保存的位置信息按照設(shè)定的時(shí)間間隔向客戶端發(fā)送探測(cè)請(qǐng)求,并根據(jù)客戶端返回的探測(cè)響應(yīng)得到自身至相應(yīng)客戶端的網(wǎng)絡(luò)通信狀況。
14.根據(jù)權(quán)利要求11至13中任意一項(xiàng)所述的方法,其特征在于,步驟B中,所述向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟包括服務(wù)端直接向發(fā)起客戶端返回包含自身至相應(yīng)目的客戶端網(wǎng)絡(luò)通信狀況的探測(cè)響應(yīng);所述步驟C包括發(fā)起客戶端接收到探測(cè)響應(yīng)后,當(dāng)根據(jù)該響應(yīng)中所攜帶的網(wǎng)絡(luò)通信狀況判定服務(wù)端至目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài)時(shí),則判定自身至目的客戶端間的網(wǎng)絡(luò)處于連接狀態(tài);否則,判定自身至目的客戶端的網(wǎng)絡(luò)處于中斷狀態(tài)。
15.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述服務(wù)端獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括服務(wù)端獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信時(shí)間;步驟B中,所述服務(wù)端獲取網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括服務(wù)端查找保存的自身至探測(cè)請(qǐng)求中所攜帶目的客戶端標(biāo)識(shí)所對(duì)應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間T1,以及自身至該發(fā)起客戶端的網(wǎng)絡(luò)通信時(shí)間T2;且所述向發(fā)起客戶端返回探測(cè)響應(yīng)的步驟進(jìn)一步包括在返回至發(fā)起客戶端的探測(cè)響應(yīng)中包括所述網(wǎng)絡(luò)通信時(shí)間T1和網(wǎng)絡(luò)通信時(shí)間T2;所述步驟C進(jìn)一步包括發(fā)起客戶端接收到該探測(cè)響應(yīng)后,計(jì)算所述網(wǎng)絡(luò)通信時(shí)間T1和網(wǎng)絡(luò)通信時(shí)間T2的和,得到自身至目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
16.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述服務(wù)端獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括服務(wù)端獲取并保存自身至所有客戶端的網(wǎng)絡(luò)通信時(shí)間;步驟B中,所述服務(wù)端獲取網(wǎng)絡(luò)通信狀況的步驟進(jìn)一步包括服務(wù)端查找保存的自身至探測(cè)請(qǐng)求中所攜帶目的客戶端標(biāo)識(shí)所對(duì)應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間T1,以及自身至該發(fā)起客戶端的網(wǎng)絡(luò)通信時(shí)間T2,并計(jì)算查找到的所述網(wǎng)絡(luò)通信時(shí)間T1和網(wǎng)絡(luò)通信時(shí)間T2的和,然后在返回至發(fā)起客戶端的探測(cè)響應(yīng)中包含該計(jì)算結(jié)果;所述步驟C進(jìn)一步包括發(fā)起客戶端從接收到探測(cè)響應(yīng)中獲取所述計(jì)算結(jié)果,得到自身至目的客戶端的網(wǎng)絡(luò)通信時(shí)間。
17.根據(jù)權(quán)利要求15或16所述的方法,其特征在于,所述服務(wù)端獲取自身至所有客戶端的網(wǎng)絡(luò)通信時(shí)間的方式為服務(wù)端預(yù)先保存所有客戶端的位置信息,然后根據(jù)保存的位置信息按照設(shè)定的時(shí)間間隔向所有客戶端發(fā)送探測(cè)請(qǐng)求,并在該探測(cè)請(qǐng)求中攜帶發(fā)送該探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1;當(dāng)服務(wù)端接收到客戶端返回的攜帶該系統(tǒng)時(shí)間t1的探測(cè)響應(yīng)時(shí),記錄接收到該探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t2與系統(tǒng)時(shí)間t1的差,得到服務(wù)端至相應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間;或者,服務(wù)端保存發(fā)送探測(cè)請(qǐng)求時(shí)的系統(tǒng)時(shí)間t1;然后當(dāng)服務(wù)端接收到客戶端返回的攜帶該系統(tǒng)時(shí)間t1的探測(cè)響應(yīng)時(shí),記錄接收到該探測(cè)響應(yīng)時(shí)的系統(tǒng)時(shí)間t2,并從接收到的探測(cè)響應(yīng)中獲取系統(tǒng)時(shí)間t1,然后計(jì)算所述系統(tǒng)時(shí)間t2與系統(tǒng)時(shí)間t1的差,得到服務(wù)端至相應(yīng)客戶端的網(wǎng)絡(luò)通信時(shí)間。
全文摘要
本發(fā)明公開了兩種網(wǎng)絡(luò)通信狀況探測(cè)方法,其中一種為服務(wù)端預(yù)先保存客戶端位置信息,當(dāng)服務(wù)端接收到發(fā)起客戶端的探測(cè)請(qǐng)求后,向目的客戶端發(fā)送探測(cè)請(qǐng)求,并在收到目的客戶端的探測(cè)響應(yīng)后,向發(fā)起客戶端返回探測(cè)響應(yīng),從而實(shí)現(xiàn)發(fā)起客戶端探測(cè)自身至目的客戶端網(wǎng)絡(luò)通信狀況的目的。另一種為服務(wù)端預(yù)先主動(dòng)與目的客戶端交互獲取并保存自身至目的客戶端的網(wǎng)絡(luò)通信狀況;當(dāng)服務(wù)端收到發(fā)起客戶端的探測(cè)請(qǐng)求后,直接根據(jù)保存的自身至相應(yīng)目的客戶端的網(wǎng)絡(luò)通信狀況,向發(fā)起客戶端返回探測(cè)響應(yīng),從而實(shí)現(xiàn)發(fā)起客戶端獲取自身至目的客戶端網(wǎng)絡(luò)通信狀況的目的。而且本發(fā)明還提供了探測(cè)網(wǎng)絡(luò)通信時(shí)間的步驟,豐富了探測(cè)內(nèi)容,真正實(shí)現(xiàn)了探測(cè)目的。
文檔編號(hào)H04L12/24GK1794667SQ20051008999
公開日2006年6月28日 申請(qǐng)日期2005年8月9日 優(yōu)先權(quán)日2005年8月9日
發(fā)明者齊泉, 劉乾, 鐘杰萍, 焦敬敏 申請(qǐng)人:華為技術(shù)有限公司