專利名稱:網(wǎng)絡設備的地理位置映射的制作方法
網(wǎng)絡設備的地理位置映射背景諸如電子商務、媒體市場、信息供應商等因特網(wǎng)服務運營商因了解其用戶的地理位置而獲益。地理位置(geolocation)信息可用于提供位置專用內容、執(zhí)行網(wǎng)絡負載平衡或提供人口統(tǒng)計信息。位置專用內容可包括提供本地天氣信息、通過提供語言和/或國家專用界面來使內容本地化、基于位置提供選擇性訪問等。地理位置可通過將數(shù)據(jù)通信路由到在地理上更接近用戶的服務器來協(xié)助網(wǎng)絡負載平衡。用戶位置的人口統(tǒng)計信息可用于營銷和規(guī)劃目的?,F(xiàn)有的地理位置服務遭受差錯、維護、性能和可靠性問題,尤其在具有快速增長的網(wǎng)絡的地區(qū)中。在具有快速增長的網(wǎng)絡的地區(qū)中,給定互聯(lián)網(wǎng)的分布式和高度變化的性質, 使用三角測量的基于延遲的地理位置方法是不準確的。基于延遲的系統(tǒng)依賴于這樣一種假設,即網(wǎng)絡延遲與客戶機同界標之間的距離之間存在線性相關。這些延遲然后被用于三角測量客戶機的大致位置??蛻魴C可以是任何用戶、服務器或連接到網(wǎng)絡的其它網(wǎng)絡設備。界標是具有用作基準點的已知地理位置的任何網(wǎng)絡設備。在富連接的互聯(lián)網(wǎng)地區(qū)(RCIR),如北美和西歐,關于延遲與距離之間的高度相關的假設可為三角測量方法提供有用的數(shù)據(jù)。然而,在適度連接的互聯(lián)網(wǎng)地區(qū)(MCIR),如發(fā)展中國家,這一假設不成立,且相關性不再有效。導致的因素包括網(wǎng)絡擁塞、繞行路徑、適度的自治系統(tǒng)(AS)間連接等。因此,在MCIR中,客戶機和界標之間的延遲不與客戶機與界標之間的物理距離充分相關以允許提供可用的準確的基于三角測量的地理位置。概述如上所述,具有快速增長的網(wǎng)絡的地區(qū)尤其易于遭受差錯、維護、性能和可靠性問題。本發(fā)明描述了使用最近-最短(“CS”)規(guī)則為MCHR或RCHR中的客戶機提供地理位置信息。CS規(guī)則使用最短延遲源自最近物理距離的觀察結果。在一個方面中,協(xié)調服務器維護界標服務器的列表。界標服務器具有已知的地理位置并已知在過去曾響應過探測。界標不必由協(xié)調服務器主動維護或管理,甚至不必由擁有協(xié)調服務器的同一實體維護或管理,且因此被認為是被動的。網(wǎng)絡客戶機(“客戶機”)可執(zhí)行應用、腳本或建立同協(xié)調服務器的通信的其它過程。協(xié)調服務器通過分析客戶機的網(wǎng)絡地址來確定客戶機所位于的大致地區(qū),并向客戶機提供該地區(qū)中的區(qū)域界標的列表??蛻魴C然后探測區(qū)域界標服務器,并將延遲結果發(fā)回給協(xié)調服務器。協(xié)調服務器然后使用CS規(guī)則來確定客戶機所位于的地區(qū)中的區(qū)域,并提供所確定的區(qū)域內的城市服務器的列表。協(xié)調服務器向客戶機體提供城市服務器,客戶機然后探測城市服務器。增加所探測的界標的數(shù)量可增加準確性。探測結果被發(fā)送到協(xié)調服務器,協(xié)調服務器然后使用按CS規(guī)則解釋的延遲信息來確定客戶機的地理位置。在探測時使用CS規(guī)則將在MCHR中提供比基于延遲的三角測量更好的準確性,因為連網(wǎng)延遲不被轉換成錯誤的物理距離測量。
附圖簡述參考附圖來描述本發(fā)明。在附圖中,最左邊的附圖標記數(shù)字標識該附圖標記首次出現(xiàn)的附圖。在不同附圖中使用相同的附圖標記指示相似或相同的項。
圖1是具有界標服務器和從客戶機收集探測數(shù)據(jù)來確定地理位置的協(xié)調服務器的說明性網(wǎng)絡的示意圖。圖2是使用最近-最短規(guī)則來確定地理位置的說明性過程的流程圖。圖3是示出服務器和相對距離來說明最近-最短規(guī)則的說明性網(wǎng)絡的示意圖。圖4是說明性協(xié)調服務器的示意圖。圖5是構建預期界標服務器列表的說明性過程的流程圖。圖6是測試預期界標服務器的說明性過程的流程圖。圖7是為客戶機選擇區(qū)域界標服務器的說明性過程的流程圖。圖8是為客戶機選擇城市級界標服務器的說明性過程的流程圖。圖9是客戶機探測的說明性過程的流程圖。圖10是結合客戶機探測的協(xié)調服務器活動的說明性過程的流程圖。圖11示出了客戶機、應用服務器、協(xié)調服務器和界標服務器之間的說明性信息流和交互。詳細描述圖1是涵蓋地區(qū)100的說明性網(wǎng)絡的示意圖。地區(qū)是較大的地理區(qū)域,例如洲、國家、半球等??蛻魴C102位于中心城市104內?!爸行某鞘小北徽J為是區(qū)域的中心。中心城市可以是地理中心、就網(wǎng)絡延遲觀點而言的中心、或兩者的組合。中心城市104的地理邊界內有界標服務器106A、106B和106C。中心城市104位于地理區(qū)域108內。位于區(qū)域108內的還有城市110和112。位于城市110中的有界標服務器114。還示出位于區(qū)域118內的中心城市116。中心城市116內的有界標服務器120A、 120B和120C。城市122也位于區(qū)域118內。在所示示例中,區(qū)域108和118兩者均位于地區(qū)100內。協(xié)調服務器IM和應用服務器1 被示為位于區(qū)域108和118外。然而,協(xié)調服務器IM和應用服務器1 可位于相同或不同位置,且可以位于區(qū)域或城市內。為確定客戶機的地理位置,協(xié)調服務器首先基于來自客戶機102的網(wǎng)絡地址確定地區(qū)。協(xié)調服務器124向客戶機102提供地區(qū)中一個或多個區(qū)域內的界標服務器的列表。 在所示示例中,客戶機102探測128A區(qū)域118中的區(qū)域界標服務器120A,然后探測128B 位于區(qū)域108中的區(qū)域界標服務器106A。將探測延遲結果提供130給協(xié)調服務器124,后者使用CS規(guī)則來確定區(qū)域。即,將具有最短通信延遲的區(qū)域級界標服務器確定為離客戶機 102最近。重要的不是延遲的絕對值本身,而是延遲結果的相對排名。協(xié)調服務器IM然后可向客戶機102提供所確定的區(qū)域內的城市級界標服務器的列表以供探測??蛻魴C102 然后可探測132A城市界標服務器106C,然后探測132B位于城市110內的界標服務器114。 將探測延遲結果提供130給協(xié)調服務器124,后者然后再次使用CS規(guī)則來確定134客戶機的地理位置。在此階段,將具有最短通信延遲的城市級界標服務器確定為離客戶機102最近。實際上,在某些實現(xiàn)中,客戶機102可被確定為位于具有最短延遲的城市級界標服務器所處的城市中。
協(xié)調服務器IM然后可將地理位置信息提供給應用服務器126,后者然后可供應適合于客戶機102的位置的內容136。圖2是使用最近-最短規(guī)則來確定地理位置的說明性過程的流程圖。在202,客戶機通過探測界標服務器而產(chǎn)生探測結果來測量在客戶機和一個或多個界標服務器之間發(fā)送的數(shù)據(jù)的時間延遲。探測可包括因特網(wǎng)控制消息協(xié)議(ICMP)分組、超文本傳輸協(xié)議/ Get (HTTP/Get (取得)請求)或引起來自界標服務器的響應的其他詢問。HTTP/Get提供相對易于在諸如Jav必cript 和ECMAkript等腳本語言中實現(xiàn)的優(yōu)點,且與ICMP相比可提供更好的響應。時間延遲可以是往返或單程的。一般而言,增加所探測的界標服務器的數(shù)量導致得到的地理位置的準確性增加。 在204,基于延遲的大小對探測結果排序,從而產(chǎn)生經(jīng)排序的測量。例如,結果可被排序成具有最小延遲大小的探測結果具有的排名為0。在206,選擇最低的N個經(jīng)排序的測量。N可以是任何預定的閾值。例如,如果進行了一百次探測,則N可以是五。因此,將選擇具有最低延遲的五個探測結果。在208,將N個最低延遲測量與產(chǎn)生那些最低延遲測量的界標服務器的地理位置進行比較。最近-最短規(guī)則假定地理上最近的界標服務器將具有響應于客戶機的最短延遲時間。因此,客戶機的位置例如被估計為與具有最低延遲時間的探測結果測量處于同一城市中。圖3是示出服務器和相對距離來說明最近-最短規(guī)則的說明性網(wǎng)絡300的示意圖。區(qū)域302內駐留有城市304。區(qū)域和城市可以是任何方便界定的地理區(qū)域,例如諸如州或省的政治子劃分、統(tǒng)計調查區(qū)域等。區(qū)域和城市位于地區(qū)內。城市304中有客戶機306。客戶機306經(jīng)由具有延遲“D”為1的鏈路308連接到局域網(wǎng)(LAN)交換機310。為此說明的目的,“D”指的是例如以毫秒(ms)為單位測量的時間延遲。服務器312也位于城市304內,并經(jīng)由也具有為1的延遲的鏈路314連接到LAN 交換機310。這些延遲通常是短的,因為客戶機306和服務器312位于同一物理子網(wǎng)上,且與LAN交換機310直接通信。LAN交換機310經(jīng)由具有延遲為200的鏈路316連接到也位于城市304內的路由器318。也位于城市304內的服務器320經(jīng)由具有延遲為50的鏈路322連接到路由器318。城市304中的路由器318跨過高山3 經(jīng)由具有延遲為900的鏈路3M連接到位于城市330內的服務器328,城市330也位于區(qū)域302內。城市304中的路由器318還越過大海3;34經(jīng)由具有延遲為11,000的鏈路332連接到路由器336。路由器336位于在區(qū)域340內部的城市338內。在城市338內,路由器 336經(jīng)由具有延遲為50的鏈路342連接到客戶機344。在城市338內,路由器336還經(jīng)由具有延遲為100的鏈路346連接到服務器348。網(wǎng)絡中各個節(jié)點之間的延遲的求和闡釋了最短-最近規(guī)則。表1示出了客戶機 306與網(wǎng)絡中各點之間的單程延遲的求和。
起始區(qū)域城市目的地區(qū)域城市延遲和(單程)3063023043123023042
權利要求
1.一種確定網(wǎng)絡客戶機的地理位置的方法,所述方法包括 在協(xié)調服務器接收來自網(wǎng)絡客戶機的請求;以及在所述協(xié)調服務器使用由所述網(wǎng)絡客戶機收集的探測信息確定所述網(wǎng)絡客戶機的地理位置。
2.如權利要求1所述的方法,其特征在于,所述探測信息包括所述網(wǎng)絡客戶機與界標服務器之間的通信的延遲數(shù)據(jù)。
3.如權利要求1至2中任一項所述的方法,其特征在于,在互聯(lián)網(wǎng)瀏覽器內執(zhí)行的腳本發(fā)起探測來收集所述探測信息。
4.如權利要求1至3中任一項所述的方法,其特征在于,所述探測信息是使用由所述網(wǎng)絡客戶機發(fā)起的超文本傳輸協(xié)議/Get (HTTP/Get)請求或因特網(wǎng)控制消息協(xié)議(ICMP)請求來收集的。
5.如權利要求1至4中任一項所述的方法,其特征在于,所述確定還包括按照所述網(wǎng)絡客戶機與所述界標服務器之間的通信的延遲的大小對來自多個探測的探測信息進行排序。
6.如權利要求1至5中任一項所述的方法,其特征在于,確定地理位置包括 基于所述網(wǎng)絡客戶機的網(wǎng)絡地址確定地區(qū);探測第一組界標服務器以確定所述地區(qū)內的地理區(qū)域;以及探測位于所述地理區(qū)域內的的第二組界標服務器以確定城市。
7.如權利要求6所述的方法,其特征在于,位于所確定的地區(qū)中的第一組界標服務器是從位于所確定的地區(qū)中的可用界標服務器列表中隨機選擇的,且第二組界標服務器是從位于所確定的地理區(qū)域內的可用界標服務器列表中隨機選擇的。
8.如權利要求6至7中任一項所述的方法,其特征在于,所述界標服務器是被動的。
9.如權利要求1至8中任一項所述的方法,其特征在于,所述方法被存儲在計算機可讀存儲介質上。
10.一種用于確定網(wǎng)絡客戶機的地理位置的系統(tǒng),所述系統(tǒng)包括連接到網(wǎng)絡并被配置成將探測模塊遞送給網(wǎng)絡上的客戶機的應用服務器,所述探測模塊被配置成在所述客戶機上執(zhí)行、詢問一個或多個界標服務器并收集延遲數(shù)據(jù);以及連接到網(wǎng)絡并被配置成使用從所述探測模塊接收到的延遲數(shù)據(jù)來確定所述客戶機的地理位置的協(xié)調服務器。
11.如權利要求10所述的系統(tǒng),其特征在于,所述探測模塊包括被配置成在互聯(lián)網(wǎng)瀏覽器內執(zhí)行的腳本。
12.如權利要求10至11中任一項所述的系統(tǒng),其特征在于,所述延遲數(shù)據(jù)是使用由所述探測模塊發(fā)起的超文本傳輸協(xié)議/Get (HTTP/Get)請求或因特網(wǎng)控制消息協(xié)議(ICMP)請求來收集的。
13.如權利要求10至12中任一項所述的系統(tǒng),其特征在于,確定地理位置還包括按照所述網(wǎng)絡客戶機與所述界標服務器之間的延遲的大小對來自多個詢問的延遲數(shù)據(jù)進行排序。
14.如權利要求10至13中任一項所述的系統(tǒng),其特征在于,所述協(xié)調服務器被配置成通過以下步驟確定所述網(wǎng)絡客戶機的地理位置基于所述網(wǎng)絡客戶機的網(wǎng)絡地址確定所述客戶機所位于的地區(qū);配置所述探測模塊來探測所述地區(qū)中的第一組界標服務器以確定所述網(wǎng)絡客戶機所位于的地理區(qū)域;以及配置所述探測模塊來探測所述地理區(qū)域中的第二組界標服務器以確定所述網(wǎng)絡客戶機所位于的城市。
15.如權利要求14所述的系統(tǒng),其特征在于,確定地區(qū)包括將所述網(wǎng)絡客戶機的網(wǎng)絡地址與已知網(wǎng)絡地址范圍的數(shù)據(jù)庫進行比較,所述數(shù)據(jù)庫包括對應于每一地址范圍的一個或多個地區(qū)。
全文摘要
使用從用作界標的互聯(lián)網(wǎng)服務器的響應延遲時間來確定網(wǎng)絡設備的地理位置。協(xié)調服務器向客戶機提供具有已知地理位置的區(qū)域界標服務器(ALS)的列表??蛻魴C探測ALS,測量響應延遲,并將結果提供給協(xié)調服務器。協(xié)調服務器然后向客戶機提供區(qū)域內附加城市界標服務器(CLS)的列表??蛻魴C探測CLS,并將結果提供給協(xié)調服務器,后者然后確定客戶機的地理位置。
文檔編號H04L29/02GK102246463SQ200980151579
公開日2011年11月16日 申請日期2009年11月20日 優(yōu)先權日2008年12月16日
發(fā)明者C·郭, D·李, Y·劉, Y·張 申請人:微軟公司