一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)方法、系統(tǒng)和裝置制造方法
【專利摘要】本發(fā)明實(shí)施例公開(kāi)了一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)方法、系統(tǒng)和裝置。包括:按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素,根據(jù)接收到的被測(cè)節(jié)點(diǎn)返回的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值;根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài)。應(yīng)用本發(fā)明能夠提高節(jié)點(diǎn)狀態(tài)探測(cè)的準(zhǔn)確性。
【專利說(shuō)明】一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)方法、系統(tǒng)和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)【技術(shù)領(lǐng)域】,尤其涉及一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)方法、系統(tǒng)和裝置。
【背景技術(shù)】
[0002]分布式系統(tǒng)在當(dāng)前網(wǎng)絡(luò)中應(yīng)用較為廣泛,例如,內(nèi)容傳送網(wǎng)絡(luò)(Content DeliveryNetwork,CDN)系統(tǒng)就是一種典型的分布式系統(tǒng)。分布式系統(tǒng)包括大量的網(wǎng)絡(luò)節(jié)點(diǎn),在實(shí)際應(yīng)用中,常常需要監(jiān)控分布式系統(tǒng)中的各個(gè)網(wǎng)絡(luò)節(jié)點(diǎn),從而及時(shí)發(fā)現(xiàn)狀態(tài)異常的節(jié)點(diǎn),即發(fā)現(xiàn)異常節(jié)點(diǎn)。其中,引起網(wǎng)絡(luò)節(jié)點(diǎn)狀態(tài)異常的常見(jiàn)原因有網(wǎng)絡(luò)質(zhì)量異常和節(jié)點(diǎn)進(jìn)度狀態(tài)異常。目前,常用的探測(cè)異常節(jié)點(diǎn)的方法主要有兩種,其一是依據(jù)節(jié)點(diǎn)的網(wǎng)絡(luò)質(zhì)量探測(cè)異常節(jié)點(diǎn),其二是依據(jù)節(jié)點(diǎn)的進(jìn)度狀態(tài)探測(cè)異常節(jié)點(diǎn),下面分別進(jìn)行介紹。
[0003]當(dāng)各式各樣的數(shù)據(jù)在網(wǎng)絡(luò)介質(zhì)中通過(guò)TCP/IP等網(wǎng)絡(luò)協(xié)議進(jìn)行傳輸時(shí),如果信息量過(guò)大,則超額的網(wǎng)絡(luò)流量將導(dǎo)致網(wǎng)絡(luò)節(jié)點(diǎn)設(shè)備的處理速度變慢,進(jìn)而產(chǎn)生網(wǎng)絡(luò)時(shí)延。因此,衡量網(wǎng)絡(luò)質(zhì)量的一個(gè)典型指標(biāo)是網(wǎng)絡(luò)時(shí)延。
[0004]目前,依據(jù)網(wǎng)絡(luò)質(zhì)量探測(cè)分布式系統(tǒng)中的異常節(jié)點(diǎn)的典型方法為:向被測(cè)網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送因特網(wǎng)控制報(bào)文協(xié)議(Internet Control Message Protocol, ICMP)數(shù)據(jù)包,根據(jù)被測(cè)節(jié)點(diǎn)針對(duì)該ICMP數(shù)據(jù)包的返回信息,例如網(wǎng)絡(luò)時(shí)延,探測(cè)出節(jié)點(diǎn)的網(wǎng)絡(luò)質(zhì)量,進(jìn)而可以發(fā)現(xiàn)異常節(jié)點(diǎn)。
[0005]具體地,目前預(yù)先設(shè)置固定的網(wǎng)絡(luò)時(shí)延閾值,通過(guò)向被測(cè)網(wǎng)絡(luò)節(jié)點(diǎn)發(fā)送ICMP數(shù)據(jù)包,獲得被測(cè)節(jié)點(diǎn)的網(wǎng)絡(luò)時(shí)延,將該網(wǎng)絡(luò)時(shí)延與預(yù)設(shè)的閾值進(jìn)行比較,當(dāng)小于該閾值時(shí),判定被測(cè)節(jié)點(diǎn)為正常節(jié)點(diǎn),當(dāng)大于或等于該閾值時(shí),判定被測(cè)節(jié)點(diǎn)為異常節(jié)點(diǎn)。
[0006]由上述方案可見(jiàn),通過(guò)發(fā)送ICMP數(shù)據(jù)包并預(yù)先設(shè)置固定的網(wǎng)絡(luò)時(shí)延閾值,來(lái)探測(cè)分布式系統(tǒng)中的異常節(jié)點(diǎn)的方法,存在以下的不足:
[0007]現(xiàn)有技術(shù)中預(yù)先設(shè)置的閾值是固定的,不能適應(yīng)網(wǎng)絡(luò)情況的變化,因此,當(dāng)由于整個(gè)網(wǎng)絡(luò)的數(shù)據(jù)傳輸量過(guò)大等并非網(wǎng)絡(luò)節(jié)點(diǎn)本身的問(wèn)題,而導(dǎo)致網(wǎng)絡(luò)時(shí)延增加時(shí),將導(dǎo)致探測(cè)異常節(jié)點(diǎn)的準(zhǔn)確性降低。
[0008]例如,當(dāng)前有1000個(gè)節(jié)點(diǎn),在某一時(shí)刻,有999臺(tái)節(jié)點(diǎn)的網(wǎng)絡(luò)時(shí)延是10ms,最后一臺(tái)節(jié)點(diǎn)X的網(wǎng)絡(luò)時(shí)延是is。如果預(yù)先設(shè)置的檢測(cè)閥值是ls,則這時(shí)會(huì)上報(bào)最后一臺(tái)節(jié)點(diǎn)X異常,此時(shí)的檢測(cè)結(jié)果是正常的。
[0009]但是,如果有999臺(tái)節(jié)點(diǎn)因?yàn)槟撤N末知的原因,例如整個(gè)網(wǎng)絡(luò)的數(shù)據(jù)傳輸量過(guò)大等,其網(wǎng)絡(luò)時(shí)延都達(dá)到了 ls,最后一臺(tái)節(jié)點(diǎn)X的網(wǎng)絡(luò)時(shí)延達(dá)到了 10s,則會(huì)上報(bào)這1000節(jié)點(diǎn)均異常的告警,顯然,這種檢測(cè)結(jié)果并沒(méi)有將網(wǎng)絡(luò)質(zhì)量較差的真正異常節(jié)點(diǎn)X檢測(cè)出來(lái)。
[0010]因此,目前通過(guò)設(shè)置固定閾值來(lái)探測(cè)異常節(jié)點(diǎn)的方法,無(wú)法探測(cè)出被測(cè)節(jié)點(diǎn)在當(dāng)前網(wǎng)絡(luò)狀態(tài)下相對(duì)于其他網(wǎng)絡(luò)節(jié)點(diǎn)是否異常,異常節(jié)點(diǎn)探測(cè)的準(zhǔn)確性較低。
[0011]另外,在分布式系統(tǒng)中,常常會(huì)存在數(shù)據(jù)的分發(fā)路徑被約束的情況,例如,數(shù)據(jù)從源節(jié)點(diǎn)A發(fā)送到目標(biāo)節(jié)點(diǎn)C的過(guò)程中,雖然從節(jié)點(diǎn)A到節(jié)點(diǎn)C存在多條路徑,但是從源節(jié)點(diǎn)A發(fā)出的數(shù)據(jù)只能從其中的一條專門路徑到達(dá)節(jié)點(diǎn)C,而按照目前的協(xié)議,ICMP數(shù)據(jù)包不會(huì)受到路徑約束,也就是說(shuō),ICMP數(shù)據(jù)包可能采用與數(shù)據(jù)傳輸路徑不同的另一路徑達(dá)到節(jié)點(diǎn)C,由于ICMP所采用的路徑與數(shù)據(jù)傳輸路徑不同,因此,采用發(fā)送ICMP數(shù)據(jù)包的方法測(cè)得的網(wǎng)絡(luò)時(shí)延,也不能真實(shí)地反映數(shù)據(jù)傳輸時(shí)的網(wǎng)絡(luò)時(shí)延,因而異常節(jié)點(diǎn)的探測(cè)結(jié)果也不夠準(zhǔn)確。
[0012]衡量節(jié)點(diǎn)狀態(tài)的另一個(gè)典型指標(biāo)是節(jié)點(diǎn)處理數(shù)據(jù)的進(jìn)度狀態(tài),因此,也可以通過(guò)節(jié)點(diǎn)處理數(shù)據(jù)的進(jìn)度狀態(tài)檢測(cè)異常節(jié)點(diǎn)。目前,通過(guò)獲取節(jié)點(diǎn)的CPU使用率等指標(biāo),利用這些指標(biāo)的值來(lái)推斷節(jié)點(diǎn)的進(jìn)度狀態(tài)是否正常,進(jìn)而推斷節(jié)點(diǎn)是否是異常節(jié)點(diǎn)。然而,獲得節(jié)點(diǎn)的CPU使用率等指標(biāo),又存在著較多的系統(tǒng)調(diào)用和運(yùn)算開(kāi)銷,因此提高了檢測(cè)成本。
【發(fā)明內(nèi)容】
[0013]有鑒于此,本發(fā)明提供了一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)方法、系統(tǒng)和裝置,以便提聞節(jié)點(diǎn)狀態(tài)探測(cè)的準(zhǔn)確性。
[0014]本發(fā)明的技術(shù)方案具體是這樣實(shí)現(xiàn)的:
[0015]一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)方法,該方法包括:
[0016]按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素,接收被測(cè)節(jié)點(diǎn)在接收到該探測(cè)元素后返回的響應(yīng);
[0017]根據(jù)接收到的被測(cè)節(jié)點(diǎn)返回的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值;
[0018]根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài)。
[0019]一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)系統(tǒng),該系統(tǒng)包括探測(cè)裝置和多個(gè)被測(cè)節(jié)點(diǎn);
[0020]所述探測(cè)裝置,用于按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素,接收被測(cè)節(jié)點(diǎn)在接收到該探測(cè)元素后返回的響應(yīng),根據(jù)接收到的被測(cè)節(jié)點(diǎn)返回的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值,根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài);
[0021]每個(gè)被測(cè)節(jié)點(diǎn),用于接收所述探測(cè)裝置發(fā)來(lái)的探測(cè)元素,并在接收到該探測(cè)元素后向所述探測(cè)裝置返回響應(yīng)。
[0022]一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)裝置,該裝置包括探測(cè)序列發(fā)送模塊、響應(yīng)接收模塊、差值計(jì)算模塊和節(jié)點(diǎn)狀態(tài)判斷模塊;
[0023]所述探測(cè)序列發(fā)送模塊,用于按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素;
[0024]所述響應(yīng)接收模塊,用于接收被測(cè)節(jié)點(diǎn)在接收到探測(cè)元素后返回的響應(yīng);
[0025]所述差值計(jì)算模塊,用于根據(jù)所述響應(yīng)接收模塊接收到的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值;
[0026]所述節(jié)點(diǎn)狀態(tài)判斷模塊,用于根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài)。
[0027]由上述技術(shù)方案可見(jiàn),本發(fā)明中,按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素,根據(jù)多個(gè)被測(cè)節(jié)點(diǎn)在接收到探測(cè)元素后返回的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值,上述的平均值和差值都有其技術(shù)含義,基于其技術(shù)含義,可以根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài)。
[0028]其中,本發(fā)明中所指的某一節(jié)點(diǎn)的狀態(tài),是指該節(jié)點(diǎn)的節(jié)點(diǎn)質(zhì)量相對(duì)于其他節(jié)點(diǎn)的節(jié)點(diǎn)質(zhì)量而言,是否是異常狀態(tài),即是指節(jié)點(diǎn)質(zhì)量的相對(duì)狀態(tài)。如果某一節(jié)點(diǎn)的節(jié)點(diǎn)質(zhì)量異常,則說(shuō)明該節(jié)點(diǎn)的網(wǎng)絡(luò)狀態(tài)或處理能力等可能出現(xiàn)了問(wèn)題。
[0029]具體地,上述的平均值和差值具有如下的技術(shù)含義:時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值,能夠反映多個(gè)被測(cè)節(jié)點(diǎn)的平均質(zhì)量,或者說(shuō),多個(gè)被測(cè)節(jié)點(diǎn)中大部分被測(cè)節(jié)點(diǎn)的質(zhì)量,而所述差值,則能夠反映單個(gè)被測(cè)節(jié)點(diǎn)與平均質(zhì)量或者說(shuō)大部分被測(cè)節(jié)點(diǎn)的質(zhì)量之間的偏差,因此,通過(guò)該偏差所在的偏差范圍,能夠確定出被測(cè)節(jié)點(diǎn)的狀態(tài),例如確定出異常節(jié)點(diǎn)。
[0030]本發(fā)明中,所述差值是動(dòng)態(tài)獲得的,即需要根據(jù)在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值,以及在該時(shí)間段結(jié)束時(shí)單個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素值,來(lái)獲得所述差值,因此,所述差值能夠反映在當(dāng)前的整體網(wǎng)絡(luò)狀況下,各個(gè)被測(cè)節(jié)點(diǎn)之間的質(zhì)量差異,從而能夠較為準(zhǔn)確地測(cè)量出被測(cè)節(jié)點(diǎn)的相對(duì)狀態(tài),提高節(jié)點(diǎn)狀態(tài)探測(cè)的準(zhǔn)確性。
【專利附圖】
【附圖說(shuō)明】
[0031]圖1是本發(fā)明提供的分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)方法流程圖。
[0032]圖2是本發(fā)明提供的探測(cè)實(shí)例的第一示意圖。
[0033]圖3是本發(fā)明提供的探測(cè)實(shí)例的第二示意圖。
[0034]圖4是本發(fā)明提供的探測(cè)實(shí)例的第三示意圖。
[0035]圖5是本發(fā)明提供的探測(cè)實(shí)例的第四示意圖。
[0036]圖6是本發(fā)明提供的分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)系統(tǒng)組成示意圖。
[0037]圖7是本發(fā)明提供的分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)裝置結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0038]本發(fā)明通過(guò)向多個(gè)被測(cè)節(jié)點(diǎn)發(fā)送探測(cè)序列,根據(jù)多個(gè)被測(cè)節(jié)點(diǎn)返回的響應(yīng)情況,測(cè)量當(dāng)前的整體網(wǎng)絡(luò)狀況,根據(jù)單個(gè)被測(cè)節(jié)點(diǎn)返回的響應(yīng)情況與所述多個(gè)被測(cè)節(jié)點(diǎn)返回的響應(yīng)情況之間的差別,測(cè)量該單個(gè)被測(cè)節(jié)點(diǎn)在當(dāng)前整體網(wǎng)絡(luò)狀況下的相對(duì)狀態(tài),與現(xiàn)有技術(shù)中通過(guò)設(shè)置固定的閾值來(lái)探測(cè)異常節(jié)點(diǎn)相比,能夠提高節(jié)點(diǎn)狀態(tài)探測(cè)的準(zhǔn)確性。
[0039]圖1是本發(fā)明提供的分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)方法流程圖。
[0040]如圖1所示,該流程包括:
[0041]步驟101,按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素。[0042]步驟102,接收被測(cè)節(jié)點(diǎn)在接收到該探測(cè)元素后返回的響應(yīng)。
[0043]步驟103,根據(jù)接收到的被測(cè)節(jié)點(diǎn)返回的響應(yīng)計(jì)算差值。
[0044]本步驟中,計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值。
[0045]其中,所述差值能夠反映單個(gè)被測(cè)節(jié)點(diǎn)在當(dāng)前整體網(wǎng)絡(luò)狀況下的相對(duì)狀態(tài),例如,相對(duì)于其他大部分節(jié)點(diǎn)而言,該被測(cè)節(jié)點(diǎn)是否是異常節(jié)點(diǎn)。
[0046]步驟104,根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài)。
[0047]其中,不同的差值范圍對(duì)應(yīng)不同的節(jié)點(diǎn)狀態(tài)。所述差值范圍可以根據(jù)預(yù)設(shè)的用于劃分節(jié)點(diǎn)狀態(tài)的閾值確定。
[0048]其中,所述閾值的個(gè)數(shù)可以為I個(gè),則可以計(jì)算所述差值的絕對(duì)值是否大于所述閾值,如果是,則判定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)為異常節(jié)點(diǎn),否則,則可以判定該被測(cè)節(jié)點(diǎn)不是異常節(jié)點(diǎn)。
[0049]可見(jiàn),當(dāng)僅設(shè)置I個(gè)閾值時(shí),可以方便快捷地檢測(cè)出異常節(jié)點(diǎn)。
[0050]所述閾值的個(gè)數(shù)也可以為2個(gè)以上,以便對(duì)節(jié)點(diǎn)的狀態(tài)進(jìn)行細(xì)化。當(dāng)閾值的個(gè)數(shù)是2個(gè)以上時(shí),判斷異常節(jié)點(diǎn)的方法與閾值的個(gè)數(shù)為I個(gè)時(shí)類似,也是將差值的絕對(duì)值與閾值進(jìn)行比較,根據(jù)比較結(jié)果確定異常節(jié)點(diǎn)的狀態(tài),此處不贅述。
[0051]本發(fā)明中所述的探測(cè)序列,可以是多種形式,例如,可以是步長(zhǎng)恒定且有序的數(shù)字序列,例如等差數(shù)列(可以是步長(zhǎng)恒定的遞增數(shù)列,也可以是步長(zhǎng)恒定的遞減數(shù)列),也可以是步長(zhǎng)恒定且有序的字母序列,例如由a-z這種字母組成的26進(jìn)制序列。
[0052]其中,所述平均值可以是所述時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素對(duì)應(yīng)的序號(hào)的平均值,所述差值是在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素對(duì)應(yīng)的序號(hào)與所述平均值之間的差值。
[0053]為了便于計(jì)算差值,優(yōu)選地,被測(cè)節(jié)點(diǎn)在收到探測(cè)元素后返回的響應(yīng)就是該探測(cè)元素本身。
[0054]為了進(jìn)一步簡(jiǎn)化差值的計(jì)算,進(jìn)而加快節(jié)點(diǎn)網(wǎng)絡(luò)質(zhì)量的探測(cè)速度,優(yōu)選地,可以采用起點(diǎn)為1、且步長(zhǎng)為I的遞增數(shù)列作為探測(cè)序列,被測(cè)節(jié)點(diǎn)在收到探測(cè)元素后返回的響應(yīng)就是該探測(cè)元素本身,下面舉具體的例子進(jìn)行詳細(xì)介紹,具體請(qǐng)參見(jiàn)圖r圖5。
[0055]在圖2-圖5所示的例子中,假設(shè)在分布式系統(tǒng)中有服務(wù)器A和被測(cè)節(jié)點(diǎn)B、C、D。服務(wù)器A依次下發(fā)一個(gè)步長(zhǎng)恒定且有序的數(shù)字(圖2-圖5所示的例子中,依次下發(fā)以I為起點(diǎn)且步長(zhǎng)為I的遞增數(shù)列中的數(shù)字)給被測(cè)節(jié)點(diǎn)B、C、D。如果在服務(wù)器A向給被測(cè)節(jié)點(diǎn)發(fā)送數(shù)字或接收被測(cè)節(jié)點(diǎn)返回的響應(yīng)的過(guò)程中有問(wèn)題,則可直接判斷被測(cè)節(jié)點(diǎn)有異常,如果沒(méi)有問(wèn)題,則被測(cè)節(jié)點(diǎn)在收到服務(wù)器A發(fā)來(lái)的數(shù)字后,再直接將收到的數(shù)字回復(fù)給服務(wù)器A。服務(wù)器A只需要收集一段時(shí)間內(nèi)最后從被測(cè)節(jié)點(diǎn)B、C、D收到的數(shù)字并取平均值,再分別將在這一段時(shí)間內(nèi)收到的被測(cè)節(jié)點(diǎn)B、C、D最后返回的數(shù)字與該平均值相減,將相減所得結(jié)果取絕對(duì)值從而得到一個(gè)偏差。這個(gè)偏差表示了相應(yīng)被測(cè)節(jié)點(diǎn)在當(dāng)前網(wǎng)絡(luò)狀態(tài)下的相對(duì)狀態(tài),因此,利用這個(gè)偏差判斷被測(cè)節(jié)點(diǎn)是否是異常節(jié)點(diǎn),不會(huì)出現(xiàn)現(xiàn)有技術(shù)中根據(jù)固定的檢測(cè)閾值判斷異常節(jié)點(diǎn)時(shí)的誤報(bào)情況。
[0056]圖2是本發(fā)明提供的探測(cè)實(shí)例的第一示意圖。[0057]如圖2所示,在該探測(cè)實(shí)例中,服務(wù)器A將以數(shù)字I起始、且步長(zhǎng)為I的遞增數(shù)列中的各個(gè)元素,依次向每個(gè)被測(cè)節(jié)點(diǎn)B、C、D發(fā)送。
[0058]圖3是本發(fā)明提供的探測(cè)實(shí)例的第二示意圖。
[0059]如圖3所示,在該探測(cè)實(shí)例中,被測(cè)節(jié)點(diǎn)B、C、D在收到服務(wù)器A發(fā)來(lái)的數(shù)字后,需要直接將該數(shù)字返回給服務(wù)器A,由圖3可見(jiàn),這時(shí)的被測(cè)節(jié)點(diǎn)B、C完成了將數(shù)字I返回給服務(wù)器A的工作,但是被測(cè)節(jié)點(diǎn)D因?yàn)榫W(wǎng)絡(luò)質(zhì)量較差、或者處理能力有限等原因,導(dǎo)致沒(méi)有及時(shí)將數(shù)字I回復(fù)給服務(wù)器A。
[0060]圖4是本發(fā)明提供的探測(cè)實(shí)例的第三示意圖。
[0061]如圖4所示,在該探測(cè)實(shí)例中,服務(wù)器A已經(jīng)將數(shù)字1-10都依次發(fā)給了被測(cè)節(jié)點(diǎn)
B、C、D。
[0062]圖5是本發(fā)明提供的探測(cè)實(shí)例的第四示意圖。
[0063]如圖5所示,這時(shí)的被測(cè)節(jié)點(diǎn)B、C完成了將數(shù)字10返回給服務(wù)器A的工作,但是被測(cè)節(jié)點(diǎn)D因?yàn)榫W(wǎng)絡(luò)質(zhì)量較差、或者處理能力有限等原因,剛剛將之前沒(méi)有及時(shí)回復(fù)的數(shù)字I返回給服務(wù)器A。
[0064]在圖2-圖5的探測(cè)實(shí)例中,假設(shè)預(yù)設(shè)的閾值是5,則服務(wù)器A可以計(jì)算在圖2_圖5的時(shí)間段內(nèi),被測(cè)節(jié)點(diǎn)B、C、D最后返回的數(shù)字的平均值為(10+10+1)/3,即所述平均值為7,這時(shí),將被測(cè)節(jié)點(diǎn)B、C、D最后返回的數(shù)字與所述平均值7相減,將所得結(jié)果取絕對(duì)值后在于閾值5進(jìn)行判斷,會(huì)得出以下兩種情況:
[0065]對(duì)于被測(cè)節(jié)點(diǎn)B 和C,有I 10-7 I〈5,因此被測(cè)節(jié)點(diǎn)B和C的質(zhì)量較好。
[0066]對(duì)于被測(cè)節(jié)點(diǎn)D,有I 1-7 I >5,因此被測(cè)節(jié)點(diǎn)D的質(zhì)量較差,可以判定被測(cè)節(jié)點(diǎn)D為異常節(jié)點(diǎn)。
[0067]關(guān)于圖2-圖5所示探測(cè)實(shí)例,也可以歸結(jié)出以下的探測(cè)公式:
[0068]假設(shè)在一段時(shí)間t內(nèi),有η個(gè)被測(cè)節(jié)點(diǎn)最后返回的數(shù)字分別為S1、s2…sn,則有平均值:average= (sl+s2+...+sn) /n。我們根據(jù)實(shí)際的節(jié)點(diǎn)情況可以設(shè)定一個(gè)閾值threshold,被測(cè)節(jié)點(diǎn)i在時(shí)間段t內(nèi)最后返回的數(shù)字是si,則有:
[0069]當(dāng)I s1-average I〈threshold時(shí),表示被測(cè)節(jié)點(diǎn)i的質(zhì)量較好。
[0070]當(dāng)I s1-average I Hhreshold時(shí),表示被測(cè)節(jié)點(diǎn)i的質(zhì)量較差,為異常節(jié)點(diǎn)。
[0071]也可以依據(jù)實(shí)際的節(jié)點(diǎn)情況設(shè)定多個(gè)閥值,比如,可以設(shè)置兩個(gè)閾值:thresholdO、thresholdl 且 thresholdCKthresholdl,則有:
[0072]當(dāng)I s1-average I〈thresholdO時(shí),表示被測(cè)節(jié)點(diǎn)i質(zhì)量非常好。
[0073]當(dāng)I s1-average | >=threshold0& s1-average |〈thresholdl 時(shí),表不被測(cè)節(jié)點(diǎn) i 質(zhì)量一般。
[0074]當(dāng)I sn-average I >=thresholdl時(shí),表示被測(cè)節(jié)點(diǎn)i質(zhì)量不好。
[0075]依次類推可根據(jù)實(shí)際的需要設(shè)置多個(gè)閥值,此處不贅述。
[0076]另外,本發(fā)明所提供的技術(shù)方案可以在應(yīng)用層實(shí)現(xiàn),此時(shí),根據(jù)在一時(shí)間段內(nèi)最后向單個(gè)被測(cè)節(jié)點(diǎn)發(fā)送的探測(cè)元素、以及在該時(shí)間段結(jié)束時(shí)最后收到該單個(gè)被測(cè)節(jié)點(diǎn)返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素,也可以較為準(zhǔn)確地反映出該單個(gè)被測(cè)節(jié)點(diǎn)的進(jìn)度狀態(tài)。
[0077]例如,在圖2-圖5的探測(cè)實(shí)例中,也可以判斷出被測(cè)節(jié)點(diǎn)D的進(jìn)度狀態(tài)不正常。
[0078]可見(jiàn),本發(fā)明提供的探測(cè)方法能夠根據(jù)當(dāng)前被探測(cè)節(jié)點(diǎn)的整體質(zhì)量狀況與各個(gè)被探測(cè)節(jié)點(diǎn)的質(zhì)量狀況得出一個(gè)相對(duì)狀態(tài),而且,由于本發(fā)明是采用探測(cè)序列進(jìn)行探測(cè),該探測(cè)序列與普通的數(shù)據(jù)包所走的路徑相同,而發(fā)送ICMP包的路徑未必是實(shí)際的普通數(shù)據(jù)包所走的路徑,因此,與發(fā)送ICMP數(shù)據(jù)包相比,能夠提高探測(cè)準(zhǔn)確性。另外,由于本發(fā)明提供的方案不需要獲得節(jié)點(diǎn)的CPU使用率等指標(biāo),因此不需要系統(tǒng)調(diào)用,能夠減少運(yùn)算開(kāi)銷,從而降低了檢測(cè)成本。
[0079]根據(jù)本發(fā)明提供的上述方法,本發(fā)明還提供了相應(yīng)的系統(tǒng)和裝置,具體請(qǐng)參見(jiàn)圖6-圖 7。
[0080]圖6是本發(fā)明提供的分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)系統(tǒng)組成示意圖。
[0081]如圖6所示,該系統(tǒng)包括探測(cè)裝置601和多個(gè)被測(cè)節(jié)點(diǎn)602。
[0082]探測(cè)裝置601,用于按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)602依次發(fā)送探測(cè)序列中的探測(cè)元素,接收被測(cè)節(jié)點(diǎn)602在接收到該探測(cè)元素后返回的響應(yīng),根據(jù)接收到的被測(cè)節(jié)點(diǎn)602返回的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)602最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)602最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值,根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)602的狀態(tài)。
[0083]每個(gè)被測(cè)節(jié)點(diǎn)602,用于接收探測(cè)裝置601發(fā)來(lái)的探測(cè)元素,并在接收到該探測(cè)元素后向探測(cè)裝置601返回響應(yīng)。
[0084]其中,不同的差值范圍對(duì)應(yīng)不同的節(jié)點(diǎn)狀態(tài)。所述差值范圍可以根據(jù)預(yù)設(shè)的用于劃分節(jié)點(diǎn)狀態(tài)的閾值確定。
[0085]圖7是本發(fā)明提供的分布式系統(tǒng)中的節(jié)點(diǎn)網(wǎng)絡(luò)質(zhì)量探測(cè)裝置結(jié)構(gòu)圖。
[0086]如圖7所示,該裝置包括探測(cè)序列發(fā)送模塊701、響應(yīng)接收模塊702、差值計(jì)算模塊703和狀態(tài)判斷模塊704。
[0087]探測(cè)序列發(fā)送模塊701,用于按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素。
[0088]響應(yīng)接收模塊702,用于接收被測(cè)節(jié)點(diǎn)在接收到探測(cè)元素后返回的響應(yīng)。
[0089]差值計(jì)算模塊703,用于根據(jù)響應(yīng)接收模塊702接收到的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值。
[0090]狀態(tài)判斷模塊704,用于根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài)。
[0091]其中,不同的差值范圍對(duì)應(yīng)不同的節(jié)點(diǎn)狀態(tài)。所述差值范圍可以根據(jù)預(yù)設(shè)的用于劃分節(jié)點(diǎn)狀態(tài)的閾值確定。
[0092]其中,所述閾值的個(gè)數(shù)是I個(gè)或2個(gè)以上。當(dāng)所述閾值的個(gè)數(shù)是I個(gè)時(shí),所述狀態(tài)判斷模塊,用于計(jì)算所述差值的絕對(duì)值是否大于所述閾值,如果是,則判定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)為異常節(jié)點(diǎn)。
[0093]所述探測(cè)序列是步長(zhǎng)恒定且有序的序列。
[0094]所述探測(cè)序列具體可以為等差數(shù)列,例如具體可以是起點(diǎn)為1、且步長(zhǎng)為I的遞增數(shù)列。被測(cè)節(jié)點(diǎn)在接收到探測(cè)元素后返回的響應(yīng)可以是該探測(cè)元素。
[0095]其中,所述平均值可以是所述時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素對(duì)應(yīng)的序號(hào)的平均值,所述差值是在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素對(duì)應(yīng)的序號(hào)與所述平均值之間的差值。
[0096]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。
【權(quán)利要求】
1.一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)方法,其特征在于,該方法包括: 按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素,接收被測(cè)節(jié)點(diǎn)在接收到該探測(cè)元素后返回的響應(yīng); 根據(jù)接收到的被測(cè)節(jié)點(diǎn)返回的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值; 根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,不同的差值范圍對(duì)應(yīng)不同的節(jié)點(diǎn)狀態(tài),所述差值范圍根據(jù)預(yù)設(shè)的用于劃分節(jié)點(diǎn)狀態(tài)的閾值確定。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述閾值的個(gè)數(shù)為I個(gè)或2個(gè)以上。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述探測(cè)序列為步長(zhǎng)恒定且有序的序列。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述探測(cè)序列為等差數(shù)列,被測(cè)節(jié)點(diǎn)在接收到探測(cè)元素后返回的響應(yīng)是該探測(cè)元素。
6.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述平均值是該段時(shí)間結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素對(duì)應(yīng)的序號(hào)的平均值,所述差值是在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素對(duì)應(yīng)的序號(hào)與所述平均值之間的差值。
7.一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)系統(tǒng),其特征在于,該系統(tǒng)包括探測(cè)裝置和多個(gè)被測(cè)節(jié)點(diǎn); 所述探測(cè)裝置,用于按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素 ,接收被測(cè)節(jié)點(diǎn)在接收到該探測(cè)元素后返回的響應(yīng),根據(jù)接收到的被測(cè)節(jié)點(diǎn)返回的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值,根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài); 每個(gè)被測(cè)節(jié)點(diǎn),用于接收所述探測(cè)裝置發(fā)來(lái)的探測(cè)元素,并在接收到該探測(cè)元素后向所述探測(cè)裝置返回響應(yīng)。
8.一種分布式系統(tǒng)中的節(jié)點(diǎn)狀態(tài)探測(cè)裝置,其特征在于,該裝置包括探測(cè)序列發(fā)送模塊、響應(yīng)接收模塊、差值計(jì)算模塊和狀態(tài)判斷模塊; 所述探測(cè)序列發(fā)送模塊,用于按照探測(cè)序列中各個(gè)探測(cè)元素的排列順序,向每個(gè)被測(cè)節(jié)點(diǎn)依次發(fā)送探測(cè)序列中的探測(cè)元素; 所述響應(yīng)接收模塊,用于接收被測(cè)節(jié)點(diǎn)在接收到探測(cè)元素后返回的響應(yīng); 所述差值計(jì)算模塊,用于根據(jù)所述響應(yīng)接收模塊接收到的響應(yīng),計(jì)算在一時(shí)間段結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素的平均值、以及在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素與所述探測(cè)元素的平均值之間的差值; 所述狀態(tài)判斷模塊,用于根據(jù)所述差值所在的差值范圍,確定所述差值對(duì)應(yīng)的被測(cè)節(jié)點(diǎn)的狀態(tài)。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,不同的差值范圍對(duì)應(yīng)不同的節(jié)點(diǎn)狀態(tài),所述差值范圍根據(jù)預(yù)設(shè)的用于劃分節(jié)點(diǎn)狀態(tài)的閾值確定。
10.根據(jù)權(quán)利要求8或9所述的裝置,其特征在于,所述閾值的個(gè)數(shù)是I個(gè)或2個(gè)以上。
11.根據(jù)權(quán)利要求8所述的裝置,其特征在于, 所述探測(cè)序列為步長(zhǎng)恒定且有序的序列。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述探測(cè)序列為等差數(shù)列,被測(cè)節(jié)點(diǎn)在接收到探測(cè)元素后返回的響應(yīng)是該探測(cè)元素。
13.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述平均值是該段時(shí)間結(jié)束時(shí)多個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè)元素對(duì)應(yīng)的序號(hào)的平均值,所述差值是在該時(shí)間段結(jié)束時(shí)每個(gè)被測(cè)節(jié)點(diǎn)最后返回的響應(yīng)對(duì)應(yīng)的探測(cè) 元素對(duì)應(yīng)的序號(hào)與所述平均值之間的差值。
【文檔編號(hào)】H04L12/24GK103428011SQ201210151262
【公開(kāi)日】2013年12月4日 申請(qǐng)日期:2012年5月16日 優(yōu)先權(quán)日:2012年5月16日
【發(fā)明者】黃明生, 曾波 申請(qǐng)人:深圳市騰訊計(jì)算機(jī)系統(tǒng)有限公司