專利名稱:端對端業務的本地化的制作方法
技術領域:
本發明的領域涉及端對端文件共享網絡以及用于本地化端對端業務的方法。
背景技術:
ー些版本的端對端文件共享網絡依賴于網元的集中式計算機或網絡來列出網絡中所有可用的內容。其他的端到端文件共享網絡并不依賴于集中式組件列出網絡上所有可用的內容。相反,由于內容本身是分布式的,目錄也是分布的。用于遞送關于所有參與客戶端的目錄數據庫的技術有時被稱為分布式哈希表(DHT)。無論網絡是集中式類型的網絡還是使用DHT的網絡,多個端將內容從ー個端下載到另ー個端而不考慮從其共享內容的端的位置。結果,如果一端請求包含在另ー個端的計算機上的文件,包含文件的計算機可能位置遠離于請求文件的端,這不僅導致文件傳輸延遲,而且増加成本,因為多個端之間的鏈路必須經過ー個或多個因特網服務提供商(ISP)。因此,此類端對端類型的連接可以創建將ISP鏈接在一起的傳輸鏈路上的大量業務,由此增加網絡運營商的開銷。例如,假設存在ー個流行的內容文件并且全世界有10000個用戶在它們的計算機上具有該文件。假設那10000個用戶中的50個用戶可以位于給定的ISP “A”內。假設ISP“A”內的ー個端對該流行的文件感興趣并且請求針對從其下載文件的50個隨機端的目錄,要么集中式的目錄,要么DHT型目錄。在此類的實例中,存在O. 5%的機會找到ISP“A”內的單個端。如果具有該文件的50個端被隨機地標識為請求的端,所有的50個端將位于ISP “A”內,則機會接近于零。在此類的場景中,盡管在與請求文件的端相同的ISP內存在足夠數量的端,端將最終從位于請求端的ISP外部的端接收文件的機會仍存在。這需要ISP間的傳輸鏈路上的不必要業務。
發明內容
本發明的實施方式涉及用于處理端到端請求的方法和設備。在一個實施方式中,該方法包括在網元處將端信息存儲在用于多個端的每個端的數據庫中。端信息指示與端關聯的至少ー個ISP和由該端所包含的內容。該方法進ー步包括從請求方接收針對內容的請求,并且基于與請求方關聯的ISP和存儲的端信息向內容請求方發送響應。另ー個實施方式包括一種計算機,該計算機具有微處理器、操作地連接到該微處理器的數據庫以及到因特網的連接,該連接配置成操作地將微處理器和數據庫連接到因特網。進一歩,該計算機配置成將端信息存儲在用于多個端的每個端的數據庫中。端信息指示與端關聯的至少ー個ISP和由該端所包含的內容。該計算機進ー步配置成從請求方接收針對內容的請求,并且基于與請求方關聯的ISP和存儲的端信息向內容請求方發送響應。另ー個實施方式包括一種用于處理端到端請求的方法,包括檢測針對內容的請求。該方法進ー步包括確定與請求方關聯的ISP,確定與請求方關聯的ISP是否是有關的ISP,如果與請求方關聯的ISP不是有關的ISP,則阻止對與有關的ISP關聯的端的請求。該方法進ー步包括如果與請求方關聯的ISP不是有關的ISP,則通過發送關于具有請求的內容并且不與有關的ISP關聯的端的信息來對該請求做出響應。
從下面給出的詳細描述和附圖,可以更為全面地理解本發明,而這些詳細描述和附圖僅用于示例的目的,并且因此不限制本發明。圖I是根據本發明ー個實施方式的具有集中式組件的端對端文件共享網絡的示意圖。圖2是根據本發明ー個實施方式的使用DHT的端到端文件共享網絡的示意圖。
圖3是根據本發明ー個實施方式的文件共享網絡的示意圖,其示出與文件共享網絡通信的計算機的各種組件。圖4圖示出根據ー個實施方式的用于響應于由網絡中的ー個端的內容通告,收集數據庫中的端信息的方法的流程圖。圖5圖示出根據ー個實施方式的用于處理針對內容的請求的方法的流程圖。圖6是代表文件共享網絡中通過端的內容通告和請求的示意圖。
具體實施例方式現在將參考其中圖示出ー些示例實施方式的附圖來更為全面地描述各種示例實施方式。在更為詳細地描述示例實施方式前,注意到ー些示例實施方式被描述為繪制為流程圖的過程或方法。盡管流程圖將操作描述為順序的過程,許多操作可以并行地、并發的或同時執行。此外,操作的順序可以被重新安排。當它們的操作完成吋,這些過程可以被終止,但也可以具有不包括在附圖中的附加步驟。過程可以對應于方法、功能、過程、例程、子程序
坐寸ο下面所討論的方法(其中一些通過流程圖示出)可以通過硬件、軟件、固件、中間件、微代碼、硬件描述語言或其任意組合來實現。當實現在軟件、固件、中間件或微代碼中時,執行必要任務的程序代碼或代碼段可以存儲在例如存儲器介質的機器或計算機可讀介質中。處理器可以執行必要的任務。這里所公開的特定結構和功能細節僅僅是說明性的,目的在于描述本發明的示例實施方式。然而,本發明可以以許多種替代的形式來體現并且不應該被理解為僅限于這里所描述的實施方式。相應地,盡管本發明的示例實施方式支持各種修改和替代形式,其實施方式通過附圖中的例子示出,并且將在此詳細示出。然而,應該理解的是沒有意圖將本發明的示例實施方式限于這里公開的特定形式,而相反的是,本發明的示例實施方式將覆蓋落入到本發明范圍內的所有修改、等同方案和替代方案。如這里所用,術語“和/或”包括關聯列出項的ー個或多個的任意和所有的組合。這里所使用的術語僅用于描述特定的實施方式的目的并且不g在限制本發明的示例實施方式。如這里所使用 的,単數形式“ー個”、“ー種”和“該”g在也包括復數的形式,除非上下文明確相反地指出。將進一歩理解到當在其中使用吋,術語“包括”和/或“包含”指定所述特征、整體、步驟、操作、元素和/或組件的存在,但不排除存在或添加其一個或多個其他特征、整體、步驟、操作、元素、組件和/或組。應該注意到在一些替代的實現中,所指出的功能/動作可以不按照附圖中所指出的順序發生。例如,連續示出的兩個附圖事實上可以基本上并發的或者有時按相反的順序執行,這取決于所涉及的功能/動作。除非相反地定義,這里所使用的所有術語(包括技術性的和科學性的術語)具有與示例實施方式所屬于的技術領域的普通技術人員所公知的相同含義。將進一歩理解在例如常用的詞典中定義的那些術語應該被解釋為具有與它們在相關領域的背景中的含義ー致的含義,并且除非在此明確地定義,它們將不被理想化地或過度形式上解釋。本發明的多個部分和相應的詳細描述按照對計算機存儲器內的數據比特的軟件、或者算法以及符號表示的操作進行介紹。這些描述和表示是這樣的,通過它們,本領域中的技術人員將他們的工作的實質有效地傳達給本領域中的其他技術人員。如這里所使用的術語“算法”,并且如其通常所使用的,被理解為導致期望結果的自相一致的步驟序列。該步驟是那些需要對物理量的物理控制的步驟。通常盡管不是必要的,這些量采取光的、電的或電磁信號的形式,其能夠被存儲、傳輸、組合、比較以及否則被控制。已經證明有時主要出于常用的原因將這些信號稱為比特、值、元素、符號、字符、術語、編號等是方便的。在下面的描述中,將參考操作的動作和符號性表示(例如,以流程圖的方式)來描述示例性實施方式,這些操作可以實現為程序模塊或功能性過程,包括例程、程序、對象、組件、數據結構等,它們執行特定的任務或實現特定的抽象數據類型并且可以使用在現有的網元或控制節點(例如,位于基站或節點B處的調度器)處的現有硬件來實現。此類的現有硬件可以包括ー個或多個中央處理單元(CPU)、數字信號處理器(DSP)、專用集成電路、現場可編程門陣列(FPGA)計算機等。然而,應該記住的是所有的這些和類似的術語將與合適的物理量關聯并且僅僅是應用于這些量的合適標簽。除非明確地相反指出,或者從討論中明顯看出,例如“處理”、或“計算”或“運算”或“確定”或“顯示”或類似的術語表示計算機系統或類似電子計算設備的動作和處理,該計算機系統或類似的電子計算設備操控和將表示為計算機系統的寄存器和存儲器內的物理、電子量所表示的數據轉換成計算機系統存儲器或寄存器或其他此類信息存儲器、傳輸或顯示設備內的類似表示為物理量的其他數據。通篇將結合指代類似部分的類似編號來描述示例實施方式。圖I示出集中式端到端系統10的示意圖。集中式的端到端系統10包括計算機12 (其也可以被稱為端12)和中央計算機14。端12經由連接16連接到中央計算機14。連接16可以是任意合適的連接,例如無線連接、因特網連接、以太網連接或任意合適連接硬件或方法的組合。盡管已經列出了若干個例子,根據本發明的實施方式并不限于所列出的那些例子。盡管端到端系統10僅示出四個端12和單個的中央計算機14,應該理解的是端到端系統并不限于所示出的端12的數目和單個中央計算機14的中央網絡組件。事實上,端到端系統10可以包括許多更多的端12并且許多計算機、服務器或其他組件可以完成所示出的中央計算機14的任務。在如圖I中所示出的集中式端到端系統10中,當端12請求內容或文件時,請求經由連接16發送到集中式計算機14。發送請求在端到端網絡中是公知的。可以根據本發明以任意合適的方式來完成請求的發送。集中式計算機14確定什么端12具有請求的內容并且可以以關于什么端12具有請求的內容的信息來對請求做出響應。集中式計算機14可以標識具有所請求的內容的若干個端12并且以關于多個標識的端12的信息來做出響應。一旦端12或多個端12被標識,則請求的端接著可以從標識的端之一接收所請求的文件。根據本發明的一些實施方式,集中式計算機14可以確定多個端12中的哪些端12可能包含被請求的內容并且應該對請求的端標識,以便減小通過傳輸鏈路進行傳輸的大數據量。可以做出這些判定以本地化端到端業務。該確定將在下面稍后更為詳細地描述。圖2是根據本發明的另ー個實施方式的端到端18的示意圖。在圖2所示的端到 端網絡18中,并沒有中央計算機14。盡管沒有示出,應該理解為端40通過連接彼此連接。圖2示出端到端文件共享網絡18。圖2的網絡18并不依賴于集中式組件14來列出網絡內容,但是使用分布式哈希表(DHT) 19來向所有的參與客戶端遞送目錄數據庫。DHT19在圖2中示為將網絡18的所有方面連接在一起的虛線。文件共享網絡18包括第一因特網服務提供商(ISP) 24和第二 ISP 26。在ISP 24內是各種客戶端,其也可以被稱為端或用戶40。通過在參考編號后添加字母,各種端或用戶將與相同的ISP上的其他端相區別。第二 ISP 26也示出具有各種端42。第一 ISP 24和第二 ISP 26經由對端鏈接連接在一起。可能的是ISP 24和ISP 26彼此經常通信并且因此,對端鏈接28可以具有更高的容量或者能夠以比常用的傳輸鏈路更低的成本操作,該常用的傳輸鏈路將ISP 24與ー個ISP鏈接,而并沒有協議或專用的連接。例如,兩個ISP可以簽訂協議給予對方優選的處理并且將對方標識為優選的ISP。此類的協議可以允許減小來自于與彼此通信的每個ISP的端關聯的計費。在圖2中示出整個因特網22。ISP 24可以通過傳輸鏈路30連接到整個因特網。傳輸鏈路30也可以將ISP 26連接到整個因特網22。位于整個因特網22上的端通過參考編號44標識出。類似于端40和42,整個因特網22上的端44與至少ー個ISP關聯。然而,并未示出與整個因特網22上的端44關聯的ISP。由于在與不同的ISP 24和26關聯的端40、42、44之間共享文件所需的資源量(例如,對端鏈路28或傳輸鏈路30),無論何時,可能優選的是令特定的ISP內的端彼此之間共享文件而非在位于不同的ISP上的端之間共享文件。箭頭32示出文件共享的ー種優選方式,其中端40a、40b和40d彼此之間共享文件。所有的端40a、40b和40d位于ISP 24上。可能還發展ー些情形,其中位于ISP 24內的端40請求不為也位于ISP 24上的任意端所包含的文件。因此,為了獲得所請求的內容,端40必須從位于ISP 26或整個因特網22內的用戶獲得內容。ISP 24和ISP 26具有連接它們的對端鏈接28。對端鏈接28工作起來可能不太貴和/或在ISP 24和ISP 26的運營商之間可能存在協調。因此,相比較于從位于整個因特網22上的端44接收內容,可能期望的是當端40d并不接收來自于其自身的ISP 24上的端40a或40b的內容時,令位于ISP 24上的端40d接收來自于ISP 26上的端42的內容。箭頭34示出端42d從位于ISP 26上的端42接收內容。在最不為優選的情形中,端40d正在請求從ISP 24或ISP 26中的任意用戶或端不可獲得的內容。因此,為了滿足對于內容的該請求,使用傳輸鏈路30以便從位于整個因特網22上的用戶44獲得內容。箭頭36圖示出該最不優選的情形,其中端40d經由傳輸鏈路從整個因特網22上的端44獲得內容。圖3是圖示出各種ISP 24、26、整個因特網22和網絡組件(其也可以稱為計算機或網元)的示意圖。網元45可以是如上參考圖I示出和描述的集中式組件14的一部分。在其他的端到端文件共享網絡中,此類的文件共享網絡18不具有集中式計算機14,而是使用DHT 19,計算機或網元45可以在整個文件共享網絡中分布。替代地,網元45可以僅僅與各種ISP 24和26連接,并且經由連接46與整個因特網22連接。
在根據本發明的一些實施方式中,網元45在ー個或各種位置處以計算機農場聚集。如圖3中所示,網元45可以包括ー個或多個微處理器48,其經由連接50連接到數據庫52。在配置成通過深度分組檢測(DPI)監視端到端通信的系統中,網元45可以包括(DPI)硬件60。DPI硬件60可以是用于執行DPI的任意已知和可獲得的硬件。網元45也可以經由連接55操作地連接到另ー個數據庫53。數據庫53是可以捜索的并且能夠向網元45提供信息,例如什么ISP與給定的端關聯,如下面更為詳細地描述。在本發明的一些實施方式中,網元45可以是連接到網絡的已經現存的系統組件。現有的網元45可以被編程以執行這里所描述的功能。例如,具有集中式計算機14(如圖I中所示)的網絡10可以被編程以執行這里所描述的功能。不使用集中式計算機14的另外其他網絡18也可以具有編程成執行這里所描述的功能的現有網絡組件。在其他的實施方式中,網元45可以被添加到網絡(而非現有的網絡組件)并且配置成執行這里所描述的功倉^:。現在將參考圖4和5中示出的流程圖描述通過根據本發明的實施方式的網絡的各種組件執行的功能和步驟。圖4圖示出根據ー個實施方式的用于收集數據庫中的端信息的方法的流程圖。在步驟S102處,網元45檢測由與ISP 24、26或整個因特網44關聯的端40、42或44所做出的內容通告。通告內容在端到端文件共享網絡中是公知的。例如,端可以被配置成周期性地向網絡發送端包含并且愿意共享的內容的消息。端可以發送的信息也可以包括端的ID或地址。網元45(參見圖3)可以收集信息和監視通告并且請求內容的ー種方式是通過關于端具有請求的內容的消息的DPI。另外,網絡運營商也可以使用邏輯DPI。邏輯DPI的一個例子在下面的文章中解釋Moritz Steiner, Structure and Algorithmsfor peer-to-peer Cooperation,博士論文,Eurecom 和曼海姆大學,2008,以及 Steiner>En-Najjary 以及 Biersack Exploiting KAD Possible Uses and Misuses, ComputerCommunication Review, 37 (5), 2007年10月,頁65-69。這些文章通過參考其整體援引在此。邏輯DPI將允許網元45察看和攔截DHT中的所有消息,獨立于發送或接收客戶端(端40、42和44)接入因特網的方式。技術可以允許網元45針對連接到網絡的任意ISP本地化業務(通過為具有優選的ISP的端提供信息),而不需要物理地存在于令業務本地化的ISP 中在步驟S 104中,確定與通告端關聯的ISP。如上所述,內容的通告將包含端的ID或地址。如果端的ID或者地址是已知的,可以輕易地知道與端ID或地址關聯的ISP。可獲得可捜索的商業數據庫,其將指示什么ISP與給定的端ID或地址關聯。此類的數據庫53(如圖3中所示)可以用于檢測什么ISP與給定的端關聯。一旦已經確定通告端的ISP,在步驟S105處,網元45確定通告端的ISP是否是有關的ISP。有關的ISP是網絡運營商特別感興趣的ISP。可以通過網絡運營商來選擇有關的ISP。網絡運營商可以選擇多于ー個的ISP為多個有關的ISP。例如,網絡運營商可能想減小使用各種ISP之間的某些鏈路,將業務偏移到保持在特定的ISP內,或者減小進入或出自特定ISP的業務。其中網絡運營商想操控業務穿過的ISP可以考慮為有關的ISP。為了確定通告者是否與有關的ISP關聯,網元可以將通告者的標識的ISP與有關的ISP的列表進行比較,該有關的ISP的列表可以存儲在単獨的數據庫中或者由網絡運營商所編程的一組規則來確定。如果通告端的ISP不是有關的ISP,則在步驟S106處,網元45將關于通告端的數據保存在數據庫52中。在步驟S106中,例如端的地址、被通告的內容、以及與端關聯的ISP的信息可以被保存。例如,數據庫52可以以下表I所示出的那樣組織。應該理解的是這里所做的描述是通過例子做出的。數據庫可以通過根據本發明的任意數目的不同技術來組織。
權利要求
1.一種處理端到端請求的方法,包括 在網元(45)處將端信息存儲(S106)在用于多個端(40,42,44)的每個端(40,42,44)的數據庫(52)中,所述端信息指示與端(40,42,44)關聯的至少ー個ISP (24,26)和由該端(40,42,44)所包含的內容; 從請求方(40d)接收(SI 12)針對內容的請求;以及 基干與所述請求方(40d)關聯的ISP(24)和存儲的端信息向所述內容請求方(40d)發送(S118, S120, S134)響應。
2.根據權利要求I所述的方法,其中作為所述響應的一部分,如果找到端(40a,40b)在所述數據庫(52)中包含請求的內容,則所述網元(45)向所述請求方(40d)標識(S134)端(40a,40b),標識的端(40a,40b)與ISP(24)關聯,該ISP是同與所述請求方(40d)關聯的ISP (24)相同的 ISP。
3.根據權利要求2所述的方法,其中作為所述響應的一部分,如果找到的端(42)在數據庫(52)中包含請求的內容并且具有同與所述請求方(40d)關聯的ISP(24)相同的ISP (24)的標識的端(40a,40b)的數目低于閾值數目,則網元(45)向所述請求方(40d)標識(S128)與ISP(26)關聯的端(42),該ISP(26)是不同干與所述請求方(40d)關聯的ISP (24)的ISP (26),并且與標識的端(42)關聯的ISP (26)和與所述請求方(40d)關聯的ISP(24)具有利益關系。
4.根據權利要求I所述的方法,進ー步包括 阻止與有關的ISP(24,26)關聯的端(40a,40b)進行的內容的通告。
5.根據權利要求I所述的方法,進ー步包括 監視(S102,S104)來自于端(40a,40b)的關于通告端(40a,40b)具有什么內容的通告;以及 將關于所述通告端(40a,40b)、所述內容以及所述通告端(40a,40b)的ISP(24)的數據保存(S106)在所述數據庫(52)中。
6.一種用于處理端到端請求的方法,包括 檢測針對內容的請求(SI 12); 確定與請求方(40d)關聯的ISP (24) (SI 14); 確定與所述請求方(40d)關聯的ISP (24)是否是有關的ISP (24,26) (SI 16); 如果與所述請求方(40d)關聯的ISP (24)不是有關的ISP (24,26),則阻止對與有關的ISP (24,26)關聯的端(40,42)的請求(SI 17);以及 如果與所述請求方(40d)關聯的ISP不是有關的ISP (24,26),則通過發送關于具有請求的內容并且不與有關的ISP(24,26)關聯的端(44)的信息來響應所述請求。
7.根據權利要求6所述的方法,如果與所述請求方(40d)關聯的ISP(24)是有關的ISP (24,26),則進ー步包括 標識數據庫(52)中具有請求的內容和與有關的ISP(24,26)關聯的端(40,42)(S120); 確定在所述標識步驟中標識的端(40,42)的數目是否高于閾值數目(S126); 如果在所述標識步驟中標識的端(40,42)的數目高于閾值數目,則阻止所述請求去往預期目的地(S132);以及以關于在所述標識步驟中標識的端(40,42)的信息做出響應(S134)。
8.根據權利要求7所述的方法,進ー步包括 優先級排序在所述標識步驟中標識的端(40,42) (S122)。
9.根據權利要求8所述的方法,進ー步包括 如果在所述標識步驟中標識的端(40,42)的數目超出所述閾值數目,則發送關于在所述標識步驟中標識的最高優先級端(40,42)的閾值數目的信息(S134)。
10.根據權利要求7所述的方法,如果在所述標識步驟中標識的端(40,42)的數目低于所述閾值數目,則進一歩包括 攔截對于請求的響應(SI28); 通過添加關于在所述標識步驟中標識的端(40,42)的信息,并且從所述響應移除關于不與有關的ISP (24,26)關聯的端(44)的信息來修改所述響應(S128);以及發送修改的響應(SI30)。
全文摘要
提供一種用于處理端到端請求的方法。該方法可以包括在網元(45)處將端信息存儲(S106)在用于多個端(40,42,44)的每個端(40,42,44)的數據庫(52)中,所述端信息指示與端(40,42,44)關聯的至少一個ISP(24,26)和由該端(40,42,44)所包含的內容;從請求方(40d)接收(S112)針對內容的請求;以及基于與所述請求方(40d)關聯的ISP(24)和存儲的端信息向所述內容請求方(40d)發送(S118,S128,S134)響應。
文檔編號H04L29/08GK102668512SQ201080057590
公開日2012年9月12日 申請日期2010年12月1日 優先權日2009年12月17日
發明者I·里瑪克, M·M·斯泰納, V·希爾特 申請人:阿爾卡特朗訊