TW201448546A - 用於資料分佈的網路路由修改 - Google Patents

用於資料分佈的網路路由修改 Download PDF

Info

Publication number
TW201448546A
TW201448546A TW103106790A TW103106790A TW201448546A TW 201448546 A TW201448546 A TW 201448546A TW 103106790 A TW103106790 A TW 103106790A TW 103106790 A TW103106790 A TW 103106790A TW 201448546 A TW201448546 A TW 201448546A
Authority
TW
Taiwan
Prior art keywords
data
computing device
identified
copy
computing devices
Prior art date
Application number
TW103106790A
Other languages
English (en)
Inventor
David A Maltz
Iii David T Harper
Douglas Christopher Burger
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of TW201448546A publication Critical patent/TW201448546A/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/252Store and forward routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/124Shortest path evaluation using a combination of metrics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

藉由最小化經由網路之高代價部分傳輸的資料之複本數目來最佳化此資料之多個複本至其他計算裝置之傳輸。使用儲存與轉發方法僅將單個複本經由高代價部分傳輸及該等資料接著分叉成導向多個目標計算裝置的多個複本。若適合,則並非所欲目標的計算裝置可受徵作為中間計算裝置,以最小化經由高代價部分傳輸的資料之複本。另外,可藉由以下兩種方式對不能容忍無序傳遞的資料進行調適:藉由使用適應性協定以避免使用一些機制,該等機制可能會導致不能容忍無序傳遞的資料之無序傳遞;及藉由使用在資料聚合點處的封包分類重新對資料排序。可使用不同協定設置以跨網路之不同部分傳輸資料。

Description

用於資料分佈的網路路由修改
本發明係關於用於資料分佈的網路路由修改。
現代伺服器計算裝置通常係以促進有限空間(諸如機架)內多個此類伺服器計算裝置之安裝與維護的方式實體配置。伺服器計算裝置之多個機架可又被容納於專屬設備中,該專用設備通常稱為「資料中心」。此類資料中心提供規模效益且通常用於主管提供各種服務及功能的實體伺服器計算裝置。舉例而言,可經由無所不在的網際網路及全球資訊網存取之眾多服務及功能係藉由資料中心內的伺服器計算裝置支援。可存取性可限於公司、大學或研究企業內部網路之其他服務及功能同樣藉由資料中心內的伺服器計算裝置支援。
通常,為了維持可靠性,在單獨實體定位及彼此分離的多個資料中心內保存資料之冗餘複本。此多個資料中心可遍及單一國家或在全世界分佈。另外,若其他資料集的各部分在多個不同資料中心內單獨保存且彼此分離,而該等資 料中心又可遍及單一國家或在全世界分佈,則此類資料集可足夠大使得更加經濟且更加可靠。
然而,有效的資料處理通常需要資料被儲存在電腦可讀取儲存媒體上,該等儲存媒體實體靠近執行此類資料處理的伺服器計算裝置之處理單元。因此,資料處理可通常需要將大量資料自儲存此類資料的資料中心複製到可執行此類處理的資料中心。或者或另外,資料處理可通常需要將大量資料自處理此類資料(通常用於產生新的或修改資料集)的資料中心複製到可儲存此類資料的資料中心。此類資料之處理可直接影響向成千上萬乃至數百萬使用者提供服務,或甚至可藉由提供該等服務觸發此類資料之處理。因此,為了使得此類使用者能夠更加有效率且能夠避免激怒使用者,通常理想的是,儘可能快速且有效率地執行此類資料之處理。然而,在資料中心之間複製資料所需的時間,包括聚集資料以用於處理、隨後解聚資料以用於儲存,以及資料之其他交換或傳送通常係可如何快速且有效率地執行此處理的限制因素。
在一實施例中,當計算裝置設法將資料之多個複本傳輸至位於至少兩個全異位置處的計算裝置時,可藉由使用儲存與轉發方法將資料之此等多個複本傳輸至多個不同位置以實現效率。
在另一實施例中,控制器可辨識多個潛在路由,可藉由該等路由將資料自一計算裝置傳輸至在至少兩個全異位 置處的多個其他計算裝置。可藉由最小化經由網路之高代價部分傳輸的此類資料之複本數目最佳化此路由,該最小化藉由使用儲存與轉發方法僅將資料之單個複本自網路之高代價部分之一側上的發送計算裝置傳輸至網路之高代價部分之相對側上的目標計算裝置,及隨後將該等資料在彼目標計算裝置上分叉成進一步複本以轉送至進一步目標計算裝置而達成。
在又一實施例中,控制器可辨識計算裝置,儘管該等計算裝置並非發送計算裝置的所欲目標,但該等計算裝置可受徵在儲存與轉發方法中使用以最小化經由網路之高代價部分傳輸的資料之複本數目。此受徵中間計算裝置可接收及儲存資料之單個複本,且可隨後將資料在彼受徵中間計算裝置上分叉成多個複本及由此傳輸至多個所欲目標計算裝置上。
在又一實施例中,可對不能容忍無序傳遞的資料進行調適。可使用適應性協定,若正經傳輸之資料不能容忍此無序傳遞,則藉該等適應性協定避免可導致無序傳遞的機制。或者或另外,在資料聚合點處的內建式封包分類可重新對資料排序以最小化無序傳遞之風險。
在又一實施例中,可使用不同協定設置以儲存與轉發方法跨網路之不同部分傳輸資料之複本。適合於跨網路之高代價部分傳輸的資料之單個複本的協定設置可與適合於跨網路之有效率部分傳輸的資料之多個複本的協定設置不同。協定設置亦可取決於資料之類型及數量變化。
提供本【發明內容】以用簡化形式引入一系列概念,並將在下文【實施方式】中進一步描述該等概念。本【發明內容】既不意欲辨識所主張之標的之關鍵特徵或基本特徵,亦不意欲用於限制所主張之標的之範疇。
額外特徵及優勢將自參閱隨附圖式進行的以下詳細描述變得顯而易見。
100‧‧‧系統
101‧‧‧網路
111‧‧‧計算裝置
112‧‧‧計算裝置
113‧‧‧計算裝置
114‧‧‧計算裝置
121‧‧‧資料中心
122‧‧‧資料中心
123‧‧‧資料中心
124‧‧‧資料中心
131‧‧‧節點
132‧‧‧節點
133‧‧‧節點
134‧‧‧節點
135‧‧‧節點
136‧‧‧節點
141‧‧‧區段
142‧‧‧區段
143‧‧‧區段
144‧‧‧區段
145‧‧‧區段
146‧‧‧區段
147‧‧‧區段
162‧‧‧路徑
163‧‧‧路徑
164‧‧‧路徑
170‧‧‧實體障礙
181‧‧‧資料複本
182‧‧‧資料複本
183‧‧‧資料複本
191‧‧‧路由
192‧‧‧路由
193‧‧‧路由
200‧‧‧系統
210‧‧‧代價資訊
220‧‧‧路由資訊
231‧‧‧路由
232‧‧‧路由
233‧‧‧路由
250‧‧‧控制器
281‧‧‧資料
282‧‧‧資料
283‧‧‧資料
300‧‧‧系統
320‧‧‧徵召動作
330‧‧‧路由
331‧‧‧路由
332‧‧‧路由
333‧‧‧路由
350‧‧‧資料中心
351‧‧‧中間計算裝置
380‧‧‧資料
381‧‧‧資料
390‧‧‧刪除動作
400‧‧‧流程圖
410‧‧‧步驟
415‧‧‧步驟
420‧‧‧步驟
425‧‧‧步驟
430‧‧‧步驟
435‧‧‧步驟
440‧‧‧步驟
445‧‧‧步驟
450‧‧‧步驟
455‧‧‧步驟
460‧‧‧步驟
465‧‧‧步驟
500‧‧‧計算裝置
520‧‧‧中央處理單元
521‧‧‧系統匯流排
530‧‧‧系統記憶體
531‧‧‧唯讀記憶體
532‧‧‧隨機存取記憶體
533‧‧‧基本輸入/輸出系統
534‧‧‧作業系統
535‧‧‧程式模組
536‧‧‧程式資料
540‧‧‧介面
541‧‧‧硬碟機
544‧‧‧作業系統
545‧‧‧程式模組
546‧‧‧程式資料
570‧‧‧網路介面
571‧‧‧通用網路連接
590‧‧‧網路
當結合隨附圖式時,可更好地理解以下詳細描述,在該等圖式中:
第1圖係將資料之多個複本傳輸至多個不同目標之示例性先前技術系統之方塊圖;第2圖係使用儲存與轉發方法將資料之多個複本傳輸至多個不同目標之示例性路由修改之方塊圖。
第3圖係使用儲存與轉發方法將資料之多個複本傳輸至多個不同目標之另一示例性路由修改之方塊圖。
第4圖係將資料之多個複本傳輸至多個不同目標之示例性路由修改之流程圖;以及第5圖係圖示一示例性通用計算裝置之方塊圖。
以下描述係關於使用儲存與轉發方法修改路由,藉由該路由將資料之多個複本發送至至少兩個不同實體位置處的多個不同目標計算裝置。控制器可辨識多個潛在路由,藉由該等路由可將資料自一計算裝置傳輸至多個其他計算裝置及隨後可藉由最小化經由網路之高代價部分傳輸的此類資料 之複本數目最佳化此路由。可使用儲存與轉發方法僅將資料之單個複本自網路之高代價部分之一側上的發送計算裝置傳輸至網路之高代價部分之相對側上的目標計算裝置,及隨後將該等資料在彼目標計算裝置上分叉成進一步複本以轉送至進一步目標計算裝置。並非所欲目標的計算裝置可受徵作為中間計算裝置使用以最小化經由網路之高代價部分傳輸的資料之複本數目。此類受徵中間計算裝置可接收及儲存資料之單個複本,且可隨後將資料在此類受徵中間計算裝置上分叉成多個複本及由此傳輸至多個所欲目標計算裝置上。另外,可藉由以下兩種方式對不能容忍無序傳遞的資料進行調適:藉由使用可避免使用一些機制之適應性協定,該等機制可導致不能容忍此無序傳遞的資料之無序傳遞;及藉由使用在資料聚合點處的封包分類重新對資料排序以最小化無序傳遞之可能性。可使用不同協定設置以跨網路之不同部分傳輸資料之複本。協定設置亦可取決於資料之類型及數量而變化。
本文所描述之技術引用特定類型的網路環境及情境。詳言之,將在伺服器計算裝置之間的資料中心內部通訊之情境內提供下文描述。然而,此類引用嚴格來說為示例性且為了清晰描述及呈現及為了便於理解作出此類引用。甚至,本文所描述之技術同等可用而無需修改,以最佳化任何網路傳輸,該等網路傳輸包括(例如)藉由客戶端計算裝置上執行的應用程式分佈資料、藉由專屬網路裝備分佈資料及藉由專用計算裝置(諸如(例如)數位視訊記錄器及數位媒體與內容共享裝置)分佈資料。
另外,本文引用「高代價」網路區段。如本文所使用的,應用於網路區段的術語「高代價」意謂由於成本、網路擁塞、關於資料量或所傳輸之資料類型的規則、關於資料傳輸之來源、目標或本質的限制或其他約束造成的資料傳輸困難。因此,如本文所使用的,擁塞網路區段係「高代價」網路區段,即便是針對經由此網路區段的資料傳輸不收取費用,因為僅僅是此網路區段中存在擁塞便可導致經由此區段傳輸資料比該區段不擁塞時傳輸資料困難得多。
儘管並不需要,但是將在正由計算裝置執行之電腦可執行指令(諸如程式模組)之一般情境中提供下文描述之態樣。更特定言之,除非另有指示,否則描述之態樣將引用藉由一或更多個計算裝置或週邊執行的動作及操作之符號表示。因此,應將理解,有時稱為「正經電腦執行」的此類動作與操作包括以結構形式表示資料的電訊號之處理單元的操縱。此操縱轉化資料或在記憶體中的位置處保存資料,此舉以熟習此項技術者較好理解的方式重新配置或另外改變計算裝置或週邊之操作。保存資料所在的資料結構係實體位置,該等實體位置具有由資料之格式化所界定的特定特性。
大體而言,程式模組包括常式、程式、物件、組件、資料結構及類似者,該等程式模組執行特定任務或實施特定抽象資料類型。此外,熟習此項技術者應將瞭解,計算裝置不一定限於習知伺服器計算機架或習知個人電腦,且包括其他計算配置,包括手持裝置、多處理器系統、基於微處理器或可程式化消費者電子設備、網路PC、迷你電腦、主機電腦 及類似配置。類似地,計算裝置不一定限於獨立計算裝置,因為亦可在經由通訊網路連接的分佈計算環境中實施該等機制。在分佈計算環境中,可在本端及遠端記憶體儲存裝置兩者中定位程式模組。
參考第1圖,圖示示例性系統100,該示例性系統包含多個計算裝置(諸如計算裝置111、112、113及114),該等計算裝置可被實體定位在一或更多個實體全異資料中心(諸如資料中心121、122、123及124)內。可將計算裝置111、112、113及114以及資料中心121、122、123及124內的其他類似計算裝置網路連接在一起作為網路101的一部分,從而使得在兩個或更多個計算裝置之間能夠傳輸及共享電腦可讀取資料。下文出於描述之目的,可經由具有實體節點131、132、133、134、135及136以及區段141、142、143、144、145、146及147的實體網路基礎架構將資料中心121、122、123及124網路連接在一起。如圖所示,可靠近節點131定位資料中心121之計算裝置(諸如示例性計算裝置111),以使得可藉由節點131將導向資料中心121之計算裝置的通訊路由至資料中心121,同時用將忽略資料中心121之計算裝置的方式可使正沿網路101傳輸之其他通訊路由穿過節點131及到達其他目標。類似地,可靠近節點132定位資料中心122,可靠近節點133定位資料中心123,及可靠近節點134定位資料中心124。
在計算裝置(諸如示例性計算裝置111)之一或更多個處理單元上執行的電腦可執行指令可設法將資料傳輸至 其他計算裝置,包括跨網路(諸如示例性網路101)傳輸資料。舉例而言,計算裝置111可具有設法分佈至計算裝置112、113及114的資料。從在計算裝置111上執行的電腦可執行指令之透視圖看出,可存在不同網路通訊路徑162、163及164,該等路徑可直接將計算裝置111連接至計算裝置112、113及114。網路101之實體實境可因(例如)實體障礙(諸如實體障礙170)、成本、現有基礎架構及可影響(例如)位於全異位置中的資料中心之間的實體網路互連之位置及佈局的其他類似因素而大不相同。第1圖之系統100示例性圖示形成網路101的實體互連之間的差異,來自計算裝置111上所執行(例如)過程之透視圖中的網路之感知,及此類差異可如何導致低效網路傳輸。
詳言之,為了自資料中心121內的計算裝置111傳輸資料至資料中心122內的計算裝置112,可將資料沿自節點131至節點135的區段141傳輸,及隨後可沿自節點135至節點132的區段142傳輸,在節點132處可將資料傳送至資料中心122,及最終傳送至計算裝置112。類似地,為了自計算裝置111傳輸資料至資料中心123內的計算裝置113,可將資料再次自節點131沿區段141路由直至到達節點135,及隨後可沿區段143及147路由,如第1圖之系統100所示。且為了自計算裝置111傳輸資料至資料中心123內的計算裝置114,可將資料再次沿區段141路由,及隨後可沿區段143及146路由。熟習此項技術者將認識到,其他路由同等可適用。
但是,若計算裝置111設法發送資料之複本至計算 裝置112、113及114中之各者,則在計算裝置111上執行的電腦可執行指令可察覺到應傳輸此資料之三個不同複本(亦即,資料複本181、182及183),因為自彼等電腦可執行指令之有利點將分別沿不同網路路徑(亦即,察覺之網路路徑162、163及164)各自傳輸資料181、182及183之複本。因此,當在計算裝置111上執行的電腦可執行指令將資料181、182及183之複本分別傳輸至計算裝置112、113及114時,彼等資料之三個不同複本(亦即,複本181、182及183)將藉由計算裝置111發送。然而,如前文所指示的,實體上,將沿區段141傳輸彼等複本中之各者。更特定言之,且如第1圖之系統100所圖示,資料181之複本之路由191可沿區段141,路由192及路由193同樣可沿該區段,路由192可用於將資料182之複本傳輸至計算裝置113,路由193可用於將資料183之複本傳輸至計算裝置114。因此,可看出,自計算裝置111至計算裝置112、113及114的資料分佈可不成比例地負載區段141,因為可沿區段141各自傳輸資料之三個複本(亦即,複本181、182及183)。若藉由計算裝置111所傳輸的資料係大型資料集,則區段141可最終不得不容納兆位元組之冗餘資料。
因此,在一實施例中,可使用儲存與轉發方法以避免跨網路區段多重傳輸相同資料。若網路之辨識區段正經歷擁塞或者因可經由此類高代價區段傳遞資料之單個複本而為「高代價」(如彼術語在本文中所明確界定及使用),則此最佳化可尤其有用。因此,可高出數個量級效率地完成此資 料之總體分佈,因為高代價網路區段在如何有效率地完成資料之此分佈中為限制因素,且經由使用儲存與轉發方法,與發送多個複本相比,跨高代價區段僅發送資料之單個複本可產生可大出數個量級的總體效率,當正在分佈資料之眾多複本時尤其如此。
轉至第2圖,圖中所示之系統200圖示示例性網路101,該示例性網路原先圖示於第1圖中,但不同之處在於可經由使用儲存與轉發方法最佳化資料之多個複本藉由計算裝置111至計算裝置112、113及114中之各者的分佈。詳言之,且在一實施例中,控制器250可監測網路101及可由此接收代價資訊210。此代價資訊210可辨識當前可為高代價的網路101之區段。舉例而言,在一實施例中,代價資訊210可為擁塞資訊,該擁塞資訊可藉由控制器250諸如以下文將詳細描述之方式獲得。在其他實施例中,代價資訊210可為指示代價的其他資訊,諸如應用於各種區段的限制、用於決定跨各種區段傳輸資料之成本的成本表及其他類似資訊。
舉例而言,在一實施例中,代價資訊210可由藉由控制器經由流言協定獲得之擁塞資訊組成,藉由該流言協定,控制器監測現有及沿網路101行進中的通訊及由此衍生擁塞資訊。或替代地,沿網路101通訊的各種計算裝置可自現有及行進中的通訊衍生擁塞資訊,及可隨後將此衍生擁塞資訊提供至控制器250,該衍生擁塞資訊可為代價資訊210形式。更特定言之,且作為一實例,若計算裝置111與其他計算裝置112、113及114中之任一者之間的通訊因在所預期 之後接收的封包而需要反復重傳,但計算裝置112、113及114之間的通訊未展示任何此類徵兆,則可決定沿區段141存在擁塞,因為此區段係唯一與計算裝置111通訊的區段。
在一替代實施例中,可藉由控制器250經由更加明確之手段獲得代價資訊210。舉例而言,控制器250可週期性指示一計算裝置將探測器封包傳輸至其他計算裝置。從藉由傳輸此類探測器封包獲得的資料中,控制器250可衍生擁塞資訊,該擁塞資訊可為代價資訊210之一種形式。在又一替代中,網路101之計算裝置可主動傳輸探測器封包且報告結果至控制器250。
儘管將控制器250圖示為單個實體,但是本文所描述之機制同樣適用於實施作為兩個或更多個計算裝置上執行之分佈過程的控制器250,該等計算裝置可為網路101的一部分。作為又一替代,可將控制器250實施為一系列層級過程,藉此較低水平控制器可與網路101之特定部分相關聯,且較高水平控制器可控制此類較低水平控制器及可藉此接收關於整個網路101的資訊。
在一實施例中,控制器250可產生路由資訊220,可藉由該路由資訊分佈資料以便最小化跨高代價區段(諸如高代價區段141)之資料傳輸,在第2圖中以灰色陰影圖示高代價區段141以便輪廓分明地圖示其為高代價區段。詳言之,在一實施例中,在計算裝置(諸如計算裝置111)上執行的電腦可執行指令可與控制器250通訊以通知控制器250以下資訊:計算裝置111設法將資料分佈至(例如)計算裝置112、 113及114中之各者。作為回應,控制器250可產生路由資訊220,可藉由該路由資訊將資料281之單個複本自計算裝置111經由路由231傳輸至計算裝置112,如第2圖圖示。從第2圖之系統200可看出,由控制器250所提供的路由資訊220可提供資料281之複本可為沿高代價區段141傳輸的資料之唯一複本,如路由231所圖示。
一旦資料281之複本由計算裝置112接收,計算裝置112便可保留資料281之此複本,因為計算裝置112可已為此資料之所欲目標。另外,可由計算裝置112產生資料281之進一步複本,以傳輸至此資料之其他所欲接收器。舉例而言,且如第2圖之系統200所示,可在計算裝置112中產生資料282及資料283之複本,及可隨後將該等複本自計算裝置112傳輸至其他目標計算裝置(諸如計算裝置113及114)。詳言之,可將資料282之複本自計算裝置112沿路由232傳輸至計算裝置113,路由232亦可為由控制器250提供之路由資訊220的一部分。類似地,可將資料283之複本自計算裝置112沿路由233傳輸至計算裝置114,路由233亦可為由控制器250提供之路由資訊220的一部分。以此方式,由控制器250提供之路由資訊220可提供沿高代價區段141傳輸資料281之僅單個複本,而非經由高代價區段141傳輸資料281、282及283之複本中之各者,直至該單個複本到達目標計算裝置112,如路由231所圖示。在已經由高代價區段141傳輸資料281之一個複本後,可接著產生及進一步傳輸後續複本。
可看出,藉由使用儲存與轉發方法,可藉由控制器250傳播之路由資訊220可經由高代價網路區段141僅傳遞資料281之單個複本,隨後可將資料「分叉」至其餘目標計算裝置(亦即,計算裝置113及114)。如本文所使用的,術語「分叉」意謂將資料複製成兩個或更多個複本以意欲用於將此類複本中之各者發送至不同目標。因此,儲存與轉發方法使得能夠在高代價區段141後發生資料之分叉,從而提高完成自計算裝置111至計算裝置112、113及114的資料總體分佈之效率。更特定言之,由於經由高代價區段141的資料傳輸可已為資料之此分佈之總體效率的限制因素,針對路由(諸如路由231、232及233)提供的路由資訊220可在本實例中將經由高代價區段141傳輸的資料量減少三分之一。若更大數目之資料複本待分佈,則所得效率增幅可相應更大。類似地,若超過一個網路區段為高代價,則所得效率增幅可同樣更大。
使用儲存與轉發方法(諸如第2圖之系統200所圖示之彼方法)之另一潛在優勢在於資料通常將以較短路徑移動。更特定言之,且參考第1圖之系統100與第2圖之系統200之間的比較,第1圖之系統100中的資料183之複本之傳輸可如路由193所圖示沿區段141、143及146移動。與之相比,可利用僅可沿區段145移動的路由233完成第2圖之系統200中的資料283之複本之傳輸,資料283之複本傳輸到的計算裝置與第1圖之系統100中資料183之複本傳輸到的計算裝置相同。因此,藉由使用儲存與轉發方法,諸如當與 第1圖之系統100中傳輸資料183之複本的路徑相比時,可實質上減少傳輸資料283之複本的路徑。此減少的路徑長度可提供沿此類路徑發送資料之更少的往返時間,且因此可更加迅速地發現諸如擁塞之因素。更特定言之,若沿第1圖所示之路由193的往返時間比沿第2圖所示之路由233的往返時間長出五倍,且在決定沿路徑存在擁塞前需要損失最小數目之封包及報告傳遞故障,則較短往返時間可使得傳遞故障報告快五倍到達,且因此可快五倍決定沿路徑之擁塞。
在一實施例中,可連續更新由控制器250所提供的路由資訊220。舉例而言,路由資訊220可指示可將資料281之複本自發起計算裝置111經由其他路由231發送至所欲目標計算裝置112,且接著可將資料282之複本自計算裝置112沿路由232發送至另一所欲計算裝置(亦即,計算裝置113)。然而,繼續參考上述實例,一旦資料281到達計算裝置112及在該計算裝置中分叉產生資料282之複本,便可藉由控制器250接收新的代價資訊210,該資訊可指示(例如)區段144現亦為高代價。藉由為自計算裝置112至計算裝置113的資料提供避開區段144的更新路由(諸如(例如)沿區段142、143及147移動之路由或沿區段145、146及147移動之路由),控制器250隨後可更新資料複本之分佈中間的路由資訊220。
為了進一步最佳化資料複本至多個目標裝置之傳輸,可針對資料之全異傳輸使用不同的協定設置。舉例而言,可利用可適合於(例如)區段141可正經歷之彼網路擁塞的 協定設置執行資料281之複本自計算裝置111沿路由231傳輸至計算裝置112。反之,可利用適合於以有效率區段(諸如未經歷擁塞的區段)有效率地傳送資料的協定設置執行資料283之複本自計算裝置112傳輸至計算裝置114。舉例而言,可利用指定擁塞提供者的錯誤控制協定設置執行資料283之複本沿路由233傳輸,該等協定設置可忽視至少一些封包損失及繼續以較高速率傳輸資料,因為藉由(例如)已預知區段145並未擁塞,可預先決定沿路由233的察覺損失不可能為擁塞之結果,且因此在經歷此損失的程度上,執行對此損失的典型回應(諸如(例如)藉由節流資料283之複本之傳輸)可只是導致低效率而沒有任何伴隨益處。
在一實施例中,為了決定是否應應用儲存與轉發方法,可預先決定因應用此方法所得之潛在效率增益。更特定言之,在一實施例中,在使用儲存與轉發路由前,可在用於將資料之多個複本自發起計算裝置(諸如(例如)計算裝置111)傳輸至所欲接收計算裝置(諸如(例如)計算裝置112、113及114)中之各者的時間量及資源與用於僅將資料之單個複本傳輸至所欲接收計算裝置中之一者、在該計算裝置上儲存此複本、在該計算裝置上分叉資料之其他複本及隨後將彼等其他複本轉發至其他接收計算裝置上的時間量及資源之間做出比較。若此比較顯示儲存與轉發方法不可產出任何效率,則在一實施例中不需要使用基於此儲存與轉發方法的路由。
熟習此項技術者將認識到,在使用儲存與轉發方法 時,潛在存在在網路上不相等傳輸及無序到達的資料之個別區段。在一實施例中,使用儲存與轉發方法(其中資料可被無序傳遞)傳輸資料所使用之協定可為適應性的,以防止當待傳輸之資料(諸如(例如)流動視訊或音訊資料)不能容忍無序傳遞時使用儲存與轉發方法。在另一實施例中,可藉由儲存及隨後轉發此資料的中間計算裝置提供封包分類。舉例而言,在第2圖之示例性系統200中,計算裝置112可分類資料281之複本之封包,該等封包在計算裝置112試圖分叉此資料及將此類複本(亦即,資料282及283之複本)分別傳輸至計算裝置113及114前接收。
在第2圖之示例性系統200中,用於儲存資料之複本、將資料分叉成複本及隨後將該等複本轉發至其他計算裝置中的中間計算裝置本身為資料之所欲目標。然而,在其他實施例中,若此情況將導致更高效率,則並非資料之所欲目標的計算裝置可受徵在儲存與轉發方法中使用。舉例而言,在第2圖之示例性系統200中,自發起計算裝置111至接收計算裝置113的資料之傳輸採取相當迂回的路由。詳言之,最初可將此資料跨區段141及142傳輸至計算裝置112,資料可儲存在該計算裝置上,及隨後可接著將另一複本跨區段144及147傳輸至計算裝置113。若使用節點135附近的計算裝置,而不是在計算裝置112上儲存及轉發資料,則導向計算裝置113的資料可自發起計算裝置111移動較短路徑(亦即,包含區段141、143及147的路徑)。相比之下,仍可保留使用第2圖之系統200之儲存與轉發方法(亦即,跨高代價區 段141僅傳輸資料之單個複本)獲得之其他效率。
因此,在一實施例中,控制器250或其他類似機制可徵召計算裝置充當儲存與轉發方法中的中間計算裝置。舉例而言,且參考第3圖之示例性系統300,可辨識節點135附近的資料中心350,及可從資料中心350內的計算裝置中選擇計算裝置(諸如示例性計算裝置351)充當儲存與轉發計算裝置。在此實施例中,徵召動作320為可由控制器250產生之路由資訊220的一部分。
在徵召計算裝置351的情況下,仍可沿區段141傳輸資料之單個複本(亦即,資料380之複本),如路由330所圖示。因此,關於跨高代價區段141僅傳輸資料之單個複本,第3圖之示例性系統300仍可提供與上文詳細描述的第2圖之示例性系統200相同的優勢。第3圖之示例性系統300之路由330可將資料380之複本自發起計算裝置111提供至受徵中間計算裝置351。接著,在受徵中間計算裝置351上,可將資料380之複本分叉成資料381、382及383之多個複本,隨後藉由受徵中間計算裝置351將該等複本分別傳輸至所欲目標計算裝置(亦即計算裝置112、113及114)。
更特定言之,且參考第3圖之示例性系統300,受徵中間計算裝置351可將資料381之複本經由路由331傳輸至所欲目標計算裝置112。類似地,受徵中間計算裝置351可將資料382之複本經由路由332傳輸至所欲目標計算裝置113及可將資料383之複本經由路由333傳輸至所欲目標計算裝置114。從第3圖之示例性系統300與第2圖所示的示例性 系統200之比較中可看出,使用受徵中間計算裝置351的第3圖之示例性系統300之一額外優勢可在於,資料由發起計算裝置111提供至所欲目標計算裝置113所採取的路徑(亦即,沿區段141、143及147的路徑)可比第2圖之示例性系統200之相似路徑更短。
在一實施例中,由於中間計算裝置351為不意欲保存資料之複本的受徵中間計算裝置,一旦資料381、382及383之分叉的複本藉由受徵中間計算裝置351適當傳輸,該中間計算裝置接收的資料380之複本便可被刪除,如刪除動作390所圖示。
轉至第4圖,該圖所示之示例性流程圖400圖示一系列示例性步驟,可藉由該等步驟實施上述儲存與轉發方法。詳言之,在步驟410處,可接收一指示,該指示為發起計算裝置設法將資料分佈至兩個或更多個所欲目標計算裝置。接著,在步驟415處,可辨識此計算裝置與所欲目標計算裝置之間的潛在網路路徑及路由。在步驟420處,可辨識沿彼等潛在路徑的高代價區段。如前文所指示的,可以眾多方式執行高代價區段之辨識且該辨識可基於各種資訊之集合。舉例而言,在一實施例中,可使用擁塞資訊決定高代價區段。可諸如經由流言協定主動獲得此擁塞資訊或諸如藉由傳輸探測器封包反應性獲得此擁塞資訊。接著,且作為初始決定,在步驟425處,可作出關於是否可利用在步驟420處辨識的潛在路徑中之不同路由簡單避免已辨識之高代價區段的決定。在步驟425處,若決定可利用替代路由避免高代價 區段,則可在步驟450處產生此替代路由。
然而,在步驟425處,若決定不可全部避免高代價區段,則在步驟430處可產生後續決定,該後續決定關於是否可藉由僅將資料之單個複本自發起計算裝置經由此類區段傳輸至此類區段之另一側上的計算裝置來最小化經由此類高代價區段的資料之傳輸。如前文所指示的,在步驟430處,該決定之一態樣可包括不但決定經由高代價區段的資料之傳輸之此最小化是否可能,而且決定此最小化是否將實際導致更有效率的資料之分佈。
在步驟430處,若決定經由使用儲存與轉發方法可最小化經由一或更多個高代價區段傳輸的資料量及決定此類方法將導致資料更有效率之分佈,則處理可行進至步驟445處,在步驟445處可產生儲存與轉發路由以使得僅將資料之一個複本發送至中間計算裝置,但該中間計算裝置並非步驟410處所指示的目標計算裝置中的所欲目標計算裝置,及隨後在彼中間目標計算裝置上將資料分叉成資料之多個進一步複本,可隨後將該等複本自彼中間目標計算裝置路由至其他所欲目標計算裝置。
在一實施例中,在步驟430處,可基於步驟410處辨識的所欲目標計算裝置作出決定。因此,在步驟435處,可作出後續決定,以決定若可將任何可用計算裝置徵召充當中間計算裝置則是否已在步驟430處實現替代決定。在步驟435處,若決定為甚至使用受徵中間計算裝置仍不存在儲存與轉發路由,該路由可最小化經由高代價區段的資料之傳輸以 使得實現資料之總體更有效率的分佈,則可使用傳統路由方法及導向最佳化路由的相關處理可結束於步驟465處。
反之,在步驟435處,若辨識一或更多個潛在可徵召計算裝置,該等潛在可徵召計算裝置可使得儲存與轉發方法能夠使用以最小化經由高代價區段傳輸的資料量,則處理可行進至步驟440處,在步驟440處將此類可徵召計算裝置中之至少一者徵召及使用作為中間目標以接收及儲存資料之複本,將資料分叉成多個複本,及將此等多個複本傳輸至多個所欲目標。執行隨後可行進至步驟445處,如上文所詳細描述。
在執行步驟445或450之任一者後,處理可行進至步驟455處,在步驟455處可將在步驟445或450中之任一者處產生的路由的一部分提供至資料之當前位置。更特定言之,在步驟455處提供的路由可使得當前儲存資料之複本的計算裝置能夠將資料之一或更多個後續複本傳輸至其他計算裝置。在步驟460處,可作出關於資料之複本傳輸到的彼等其他計算裝置是否係所欲目標計算裝置或係更進一步的中間計算裝置的決定。若為後者,則處理可返回至步驟415處及根據上文描述行進。若為前者,則相關處理可結束於步驟465處。
轉至第5圖,該圖圖示一示例性計算裝置,該示例性計算裝置代表上文詳細描述其操作的彼等計算裝置。示例性計算裝置500可包括(但不限於)一或更多個中央處理單元(central processing unit;CPU)520、系統記憶體530及系統 匯流排521,該系統匯流排將包括系統記憶體在內的各種系統組件耦接至處理單元520。系統匯流排521可為若干類型的匯流排結構中之任一者,該等匯流排結構包括記憶體匯流排或記憶體控制器、週邊匯流排及使用各種匯流排架構中之任一者之區域匯流排。取決於特定的實體實施例,可諸如在單個晶片上實體協同定位CPU 520、系統記憶體530及計算裝置500之其他組件中的一或更多者。在此情況中,系統匯流排521中的一些或全部可僅為單個晶片結構內的通訊路徑且第5圖中的圖示可僅為出於說明之目的之符號便利。
計算裝置500通常亦包括電腦可讀取媒體,該電腦可讀取媒體可包括可藉由計算裝置500存取之任何可用媒體。舉例而言(而非限制),電腦可讀取媒體可包含電腦儲存媒體及通訊媒體。電腦儲存媒體包括以任何方法或技術實施用於儲存資訊(諸如電腦可讀取指令、資料結構、程式模組或其他資料)的媒體。電腦儲存媒體包括(但不限於):RAM、ROM、EEPROM、快閃記憶體或其他記憶體技術;CD-ROM、數位多功能光碟(digital versatile disk;DVD)或其他光碟儲存器;磁帶盒、磁帶、磁碟儲存器或其他磁性儲存裝置;或可用於儲存所欲資訊且可由計算裝置500存取之任何其他媒體。然而,電腦儲存媒體不包括通訊媒體。通訊媒體通常體現為電腦可讀取指令、資料結構、程式模組或諸如載波或其他傳輸機構之調變資料訊號中的其他資料,且包括任何資訊傳遞媒體。舉例而言(而非限制),通訊媒體包括有線媒體(諸如有線網路或直接有線連接)及無線媒體(諸如 聲學、RF、紅外線及其他無線媒體)。任何上述者之組合亦應包括在電腦可讀取媒體之範疇內。
系統記憶體530包括以揮發性及/或非揮發性記憶體形式呈現之電腦儲存媒體,該等記憶體諸如唯讀記憶體(read only memory;ROM)531及隨機存取記憶體(random access memory;RAM)532。含有基本常式的基本輸入/輸出系統533(basic input/output system;BIOS)通常儲存於ROM 531中,該等常式諸如在啟動期間幫助在計算裝置500內部的元件之間轉移資訊。RAM 532通常含有資料及/或程式模組,該等資料及/或模組可立即被處理單元520存取及/或正由處理單元520操作。舉例而言(而非限制),第5圖圖示作業系統534、其他程式模組535及程式資料536。
當使用通訊媒體時,可在網路環境中經由至一或更多個遠端電腦的邏輯連接操作計算裝置500。第5圖中所描述之邏輯連接係至網路590的通用網路連接571,該網路可為區域網路(local area network;LAN)、諸如網際網路之廣域網路(wide area network;WAN)或其他網路。將計算裝置500經由網路介面或適配器570連接至通用網路連接571,該網路介面或適配器570又連接至系統匯流排521。在網路環境中,可將相對於計算裝置500描述的程式模組或程式模組之部分或週邊儲存於一或更多個其他計算裝置的記憶體中,經由通用網路連接571將該等計算裝置通訊耦接至計算裝置500。應將瞭解,圖示之網路連接為示例性的,且可使用在計算裝置之間建立通訊鏈路之其他手段。
計算裝置500亦可包括其他可移除/不可移除、揮發性/非揮發性電腦儲存媒體。僅舉例而言,第5圖圖示從不可移除非揮發性媒體讀取或向不可移除非揮發性媒體寫入的硬碟機541。可用於示例性計算裝置之其他可移除/不可移除、揮發性/非揮發性電腦儲存媒體包括(但不限於)磁帶盒、快閃記憶體卡、數位多功能光碟、數位視訊磁帶、固態RAM、固態ROM及類似者。通常經由不可移除記憶體介面(諸如介面540)將硬碟機541連接至系統匯流排521。
上文所論述且在第5圖中圖示之驅動器及關聯電腦儲存媒體為計算裝置500提供電腦可讀取指令、資料結構、程式模組及其他資料之儲存。在第5圖中,例如,將硬碟機541圖示為儲存作業系統544、其他程式模組545及程式資料546。應注意,該等組件可與作業系統534、其他程式模組535及程式資料536相同或不同。此處對作業系統544、其他程式模組545及程式資料546給予不同標號,以說明上述者至少為不同複本。
從上文描述中可看出,已呈現修改分佈資料之多個複本之路由的機制。其中,鑒於本文所描述之標的之眾多可能的變化,發明者主張本發明之所有此類實施例可歸入以下申請專利範圍及申請專利範圍之等效物的範疇內。
100‧‧‧系統
101‧‧‧網路
111‧‧‧計算裝置
112‧‧‧計算裝置
113‧‧‧計算裝置
114‧‧‧計算裝置
121‧‧‧資料中心
122‧‧‧資料中心
123‧‧‧資料中心
124‧‧‧資料中心
131‧‧‧節點
132‧‧‧節點
133‧‧‧節點
134‧‧‧節點
135‧‧‧節點
136‧‧‧節點
141‧‧‧區段
142‧‧‧區段
143‧‧‧區段
144‧‧‧區段
145‧‧‧區段
146‧‧‧區段
147‧‧‧區段
182‧‧‧資料
183‧‧‧資料
210‧‧‧代價資訊
220‧‧‧路由資訊
300‧‧‧系統
320‧‧‧徵召動作
330‧‧‧路由
331‧‧‧路由
332‧‧‧路由
333‧‧‧路由
350‧‧‧資料中心
351‧‧‧中間計算裝置
380‧‧‧資料
381‧‧‧資料
390‧‧‧刪除動作

Claims (20)

  1. 一種將資料分佈至多個計算裝置之方法,該方法包含以下步驟:辨識一來源計算裝置,該來源計算裝置包含該等資料及至少兩個所欲目標計算裝置,該等資料之複本將分佈至該等目標計算裝置上;辨識至少一個高代價網路區段,該高代價網路區段為該來源計算裝置與該等至少兩個所欲目標計算裝置中之一第一者之間的一第一網路路徑及該來源計算裝置與該等至少兩個所欲目標計算裝置中之一第二者之間的一第二網路路徑兩者的一部分,以使得將沿該已辨識之高代價網路區段單獨傳輸導向該第一所欲目標計算裝置的該等資料之一第一複本及導向該第二所欲目標計算裝置的該等資料之一第二複本兩者;辨識一中間計算裝置,以使得自該來源計算裝置傳輸至該中間計算裝置的資料將沿該已辨識之高代價網路區段傳輸,但自該中間計算裝置傳輸至該等至少兩個所欲目標計算裝置中之多者的資料將避免沿該已辨識之網路區段傳輸;以及產生一儲存與轉發路由,該產生路由之步驟包含以下步驟:將該等資料之一複本自該來源計算裝置經由該已辨識之高代價網路區段傳輸至該已辨識之中間計算裝置;在該中間計算裝置上儲存該等資料之該傳輸複本;在該中間計算裝置上將該等資料之該複本分叉成該等資料之多個複本;以及將 該等資料之該等分叉的多個複本中之各者自該中間計算裝置傳輸至該等至少兩個所欲目標計算裝置中之多者。
  2. 如請求項1所述之方法,其中該已辨識之中間計算裝置係該等至少兩個所欲目標計算裝置中之一者。
  3. 如請求項1所述之方法,其中該已辨識之中間計算裝置並非該等至少兩個所欲目標計算裝置中之一者,該方法進一步包含以下步驟:徵召該已辨識之中間計算裝置以便:暫時儲存該等資料之該傳輸複本;將該等資料之該傳輸複本分叉成該等資料之該等多個複本;以及將該等資料之該等分叉的多個複本中之各者傳輸至該等至少兩個所欲目標計算裝置中之多者。
  4. 如請求項1所述之方法,該方法進一步包含以下步驟:在產生該儲存與轉發路由之前,將一第一時間量與一第二時間量比較,該第一時間量指示跨該已辨識之高代價網路區段傳輸該等資料之多個複本,該第二時間量指示跨該已辨識之高代價網路區段傳輸該等資料之一單個複本,在該已辨識之中間計算裝置上儲存該等資料之該單個複本,及在該中間計算裝置上分叉該等資料之該單個複本;及僅當該比較顯示該第一時間量大於該第二時間量時才執行該產生步驟。
  5. 如請求項1所述之方法,其中在該中間計算裝置上將傳輸至該已辨識之中間計算裝置的該等資料之該複本之封包分類以最小化無序傳遞。
  6. 如請求項1所述之方法,該方法進一步包含以下步驟:決定該等資料是否能容忍無序傳遞及僅當該等資料能容忍無序傳遞時才執行該產生步驟。
  7. 如請求項1所述之方法,其中該產生步驟包含以下步驟:指定使用一第一協定,該第一協定用於將該等資料之該複本自該來源計算裝置經由該已辨識之高代價網路區段傳輸至該已辨識之中間計算裝置;及指定使用不同於該第一協定的一第二協定,該第二協定用於將該等資料之該等分叉的多個複本中之各者自該中間計算裝置傳輸至該等至少兩個所欲目標計算裝置中之該等多者。
  8. 如請求項1所述之方法,其中基於該網路區段上與此前傳輸的資料關聯的資訊執行辨識該至少一個高代價網路區段之步驟。
  9. 一種將資料分佈至多個計算裝置之系統,該系統包含:一來源計算裝置,該來源計算裝置包含該等資料;至少兩個所欲目標計算裝置,該等資料之複本將分佈至該等目標計算裝置上; 一高代價網路區段,該高代價網路區段為該來源計算裝置與該等至少兩個所欲目標計算裝置中之一第一者之間的一第一網路路徑及該來源計算裝置與該等至少兩個所欲目標計算裝置中之一第二者之間的一第二網路路徑兩者的一部分,以使得將沿該已辨識之高代價網路區段單獨傳輸導向該第一所欲目標計算裝置的該等資料之一第一複本及導向該第二所欲目標計算裝置的該等資料之一第二複本兩者;以及一或更多個電腦可讀取媒體,該等電腦可讀取媒體包含執行以下步驟的電腦可執行指令,該等步驟包含:辨識一中間計算裝置,以使得自該來源計算裝置傳輸至該中間計算裝置的資料將沿該已辨識之高代價網路區段傳輸,但自該中間計算裝置傳輸至該等至少兩個所欲目標計算裝置中之多者的資料將避免沿該已辨識之網路區段傳輸;以及產生一儲存與轉發路由,該產生步驟包含以下步驟:將該等資料之一複本自該來源計算裝置經由該已辨識之高代價網路區段傳輸至該已辨識之中間計算裝置;在該中間計算裝置上儲存該等資料之該傳輸複本;在該中間計算裝置上將該等資料之該複本分叉成該等資料之多個複本;以及將該等資料之該等分叉的多個複本中之各者自該中間計算裝置傳輸至該等至少兩個所欲目標計算裝置中之多者。
  10. 如請求項9所述之系統,該系統進一步包含一控制器計算裝置,該控制器計算裝置獨立於該來源計算裝置、該等至少兩個目標計算裝置及該已辨識之中間計算裝置,該控制器裝置包含該一或更多個電腦可讀取媒體。
  11. 如請求項9所述之系統,其中該一或更多個電腦可讀取媒體係該來源計算裝置、該等至少兩個目標計算裝置及該已辨識之中間計算裝置的一部分。
  12. 如請求項9所述之系統,其中該已辨識之中間計算裝置係該等至少兩個所欲目標計算裝置中之一者。
  13. 如請求項9所述之系統,該系統進一步包含該已辨識之中間計算裝置,其中該一或更多個電腦可讀取媒體包含進一步電腦可執行指令,該等電腦可執行指令用於徵召該中間計算裝置以便:暫時儲存該等資料之該傳輸複本;將該等資料之該傳輸複本分叉成該等資料之該等多個複本;以及將該等資料之該等分叉的多個複本中之各者傳輸至該等至少兩個所欲目標計算裝置中之多者。
  14. 如請求項9所述之系統,其中該一或更多個電腦可讀取媒體包含進一步電腦可執行指令,該等電腦可執行指令用於在產生該儲存與轉發路由之前,將一第一時間量與一第二時間量比較,其中該第一時間量指示跨該已辨識之高代價網路 區段傳輸該等資料之多個複本,該第二時間量指示跨該已辨識之高代價網路區段傳輸該等資料之一單個複本,在該已辨識之中間計算裝置上儲存該等資料之該單個複本,及在該中間計算裝置上分叉該等資料之該單個複本;及其中進一步地,僅當執行用於該比較的該電腦可執行指令顯示該第一時間量大於該第二時間量時才有條件地執行用於該產生步驟的該等電腦可執行指令。
  15. 如請求項9所述之系統,其中該中間計算裝置包含電腦可執行指令,該等電腦可執行指令用於將傳輸至該已辨識之中間計算裝置的該等資料之該複本之封包分類以最小化無序傳遞。
  16. 如請求項9所述之系統,其中該一或更多個電腦可讀取媒體包含進一步電腦可執行指令,該等電腦可執行指令用於決定該等資料是否能容忍無序傳遞;及僅當該等資料能容忍無序傳遞時才有條件地執行用於該產生步驟的該等電腦可執行指令。
  17. 如請求項9所述之系統,其中用於產生步驟的該等電腦可執行指令包含電腦可執行指令,以用於:指定使用一第一協定,該第一協定用於將該等資料之該複本自該來源計算裝置經由該已辨識之高代價網路區段傳輸至該已辨識之中間計算裝置;及指定使用不同於該第一協定的一第二協定,該第 二協定用於將該等資料之該等分叉的多個複本中之各者自該中間計算裝置傳輸至該等至少兩個所欲目標計算裝置中之該等多者。
  18. 如請求項9所述之系統,其中該一或更多個電腦可讀取媒體包含進一步電腦可執行指令以用於基於該高代價網路區段上此前傳輸的資料關聯的資訊辨識該高代價網路區段。
  19. 一或更多個電腦可讀取媒體,該等電腦可讀取媒體包含用於將資料分佈至多個計算裝置的電腦可執行指令,該等電腦可執行指令導向以下步驟,該等步驟包含:辨識一來源計算裝置,該來源計算裝置包含該等資料及至少兩個所欲目標計算裝置,該等資料之複本將分佈至該等目標計算裝置上;辨識至少一個高代價網路區段,該高代價網路區段為該來源計算裝置與該等至少兩個所欲目標計算裝置中之一第一者之間的一第一網路路徑及該來源計算裝置與該等至少兩個所欲目標計算裝置中之一第二者之間的一第二網路路徑兩者的一部分,以使得將沿該已辨識之高代價網路區段單獨傳輸導向該第一所欲目標計算裝置的該等資料之一第一複本及導向該第二所欲目標計算裝置的該等資料之一第二複本兩者;辨識一中間計算裝置,以使得自該來源計算裝置傳輸至該中間計算裝置的資料將沿該已辨識之高代價網路區段傳輸,但自該中間計算裝置傳輸至該等至少兩個所欲目標計算 裝置中之多者的資料將避免沿該已辨識之網路區段傳輸;以及產生一儲存與轉發路由,該產生路由之步驟包含以下步驟:將該等資料之一複本自該來源計算裝置經由該已辨識之高代價網路區段傳輸至該已辨識之中間計算裝置;在該中間計算裝置上儲存該等資料之該傳輸複本;在該中間計算裝置上將該等資料之該複本分叉成該等資料之多個複本;以及將該等資料之該等分叉的多個複本中之各者自該中間計算裝置傳輸至該等至少兩個所欲目標計算裝置中之多者。
  20. 如請求項19所述之電腦可讀取媒體,其中該已辨識之中間計算裝置係該等至少兩個所欲目標計算裝置中之一者。
TW103106790A 2013-03-15 2014-02-27 用於資料分佈的網路路由修改 TW201448546A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US13/831,733 US9363303B2 (en) 2013-03-15 2013-03-15 Network routing modifications for distribution of data

Publications (1)

Publication Number Publication Date
TW201448546A true TW201448546A (zh) 2014-12-16

Family

ID=50588843

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103106790A TW201448546A (zh) 2013-03-15 2014-02-27 用於資料分佈的網路路由修改

Country Status (6)

Country Link
US (2) US9363303B2 (zh)
EP (1) EP2974175B1 (zh)
CN (1) CN105210335B (zh)
ES (1) ES2619119T3 (zh)
TW (1) TW201448546A (zh)
WO (1) WO2014151169A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150363423A1 (en) * 2014-06-11 2015-12-17 Telefonaktiebolaget L M Ericsson (Publ) Method and system for parallel data replication in a distributed file system
US10742448B2 (en) * 2016-07-14 2020-08-11 Cox Communications, Inc. Method for smart data routing through interconnected networks
US9762734B1 (en) * 2017-01-20 2017-09-12 TEN DIGIT Communications LLC Intermediary device for data message network routing
US11489767B1 (en) * 2020-08-18 2022-11-01 Juniper Networks, Inc. Interspersing network traffic across members of a container label-switched path
CN113029175B (zh) * 2021-03-11 2021-09-10 东莞职业技术学院 考虑双程的多途经点的快速路径规划方法

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4933933A (en) * 1986-12-19 1990-06-12 The California Institute Of Technology Torus routing chip
US7117273B1 (en) 2000-01-25 2006-10-03 Cisco Technology, Inc. Methods and apparatus for maintaining a map of node relationships for a network
US6718361B1 (en) * 2000-04-07 2004-04-06 Network Appliance Inc. Method and apparatus for reliable and scalable distribution of data files in distributed networks
US6751219B1 (en) 2000-04-20 2004-06-15 Aztech Partners, Inc. Multicast packet duplication at random node or at egress port with frame synchronization
US20030153338A1 (en) 2001-07-24 2003-08-14 Herz Frederick S. M. Autoband
US7355975B2 (en) 2004-04-30 2008-04-08 International Business Machines Corporation Method and apparatus for group communication with end-to-end reliability
US7616575B2 (en) * 2004-06-23 2009-11-10 Microsoft Corporation System and method for link quality routing using a weighted cumulative expected transmission time metric
US7593333B2 (en) 2004-07-07 2009-09-22 Microsoft Corporation Efficient one-to-many content distribution in a peer-to-peer computer network
KR101224591B1 (ko) * 2006-02-23 2013-01-22 삼성전자주식회사 네트워크 중계 장치 및 그 방법
US8914460B2 (en) * 2007-03-26 2014-12-16 Sound View Innovations, Llc System and method for efficient delivery of data content
US8407364B2 (en) * 2007-10-25 2013-03-26 Cisco Technology, Inc. Apparatus and method for providing a congestion measurement in a network
CN101729589B (zh) * 2008-10-14 2012-07-18 北京大学 一种提高端到端数据传输速率的方法及系统
CN101741884B (zh) * 2008-11-25 2012-07-04 华为技术有限公司 一种分布式存储方法和装置
US8300551B2 (en) 2009-01-28 2012-10-30 Google Inc. Ascertaining presence in wireless networks
US9325513B2 (en) * 2009-10-06 2016-04-26 Thomson Licensing Method and apparatus for hop-by-hop reliable multicast in wireless networks
US9049199B2 (en) 2009-12-14 2015-06-02 Telefonaktiebolaget L M Ericsson (Publ) Dynamic cache selection method and system
US8964625B2 (en) * 2009-12-31 2015-02-24 Verizon Patent And Licensing Inc. Dynamic wireless network apparatuses, systems, and methods
US8310957B1 (en) * 2010-03-09 2012-11-13 Juniper Networks, Inc. Minimum-cost spanning trees of unicast tunnels for multicast distribution
US9647949B2 (en) * 2012-06-22 2017-05-09 University Of New Hampshire Systems and methods for network transmission of big data
US8977756B2 (en) 2013-01-10 2015-03-10 Microsoft Technology Licensing, Llc SWAN: achieving high utilization in networks
US8964953B2 (en) 2013-01-10 2015-02-24 Microsoft Corporation Incremental valuation based network capacity allocation

Also Published As

Publication number Publication date
US20160294679A1 (en) 2016-10-06
US20140280708A1 (en) 2014-09-18
WO2014151169A1 (en) 2014-09-25
ES2619119T3 (es) 2017-06-23
US9647932B2 (en) 2017-05-09
EP2974175A1 (en) 2016-01-20
US9363303B2 (en) 2016-06-07
EP2974175B1 (en) 2016-12-21
CN105210335A (zh) 2015-12-30
CN105210335B (zh) 2018-09-28

Similar Documents

Publication Publication Date Title
US8627136B2 (en) Non-disruptive failover of RDMA connection
US11263612B2 (en) Systems and methods for point of sale data synchronization
TW201448546A (zh) 用於資料分佈的網路路由修改
TW201432597A (zh) 電子交易平台及其方法
US20070204275A1 (en) Method and system for reliable message delivery
JP2005327283A (ja) ミラーリングストレージインタフェース
US10826823B2 (en) Centralized label-based software defined network
US10637923B2 (en) Congestion aware load balancing for distributed storage
US9442672B2 (en) Replicating data across controllers
US20230280916A1 (en) Method and System for Surveillance System Management
CN109542781A (zh) 区块链共识算法测试方法、装置、计算装置和存储介质
KR20150131327A (ko) 애플리케이션-제공 전송 메타데이터에 기초한 네트워크 전송 조절
US10474644B2 (en) Systems and methods for optimizing selection of a replication data node in a distributed file system
US10326691B2 (en) Wireless data transfer as an alternative method to overcome errors or noise in a storage environment
US9715477B2 (en) Shared-bandwidth multiple target remote copy
JP2007219809A (ja) データ記憶システム、データ記憶方法、データ記憶プログラム
US9860125B2 (en) Network system, node, network management method, and computer-readable recording medium
JP6179141B2 (ja) データ転送システムおよびネットワーク負荷軽減方法
WO2019181973A1 (ja) ネットワーク制御システム、方法、及び、プログラム
JP2018163572A (ja) ストレージシステム、および通信方法
JP2016208232A (ja) ビデオサーバシステム、データ操作方法、及び、コンピュータ・プログラム