TWI492592B - 在共享虛擬區通訊環境中之自動化即時資料串流交換技術 - Google Patents
在共享虛擬區通訊環境中之自動化即時資料串流交換技術 Download PDFInfo
- Publication number
- TWI492592B TWI492592B TW097140447A TW97140447A TWI492592B TW I492592 B TWI492592 B TW I492592B TW 097140447 A TW097140447 A TW 097140447A TW 97140447 A TW97140447 A TW 97140447A TW I492592 B TWI492592 B TW I492592B
- Authority
- TW
- Taiwan
- Prior art keywords
- data stream
- individual
- link
- instant data
- instant
- Prior art date
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
本發明係有關於在共享虛擬區通訊環境中之自動化即時資料串流交換技術。
當面對面通訊不實際時,人們經常仰賴一項或多項技術解決辦法來滿足其通訊需求。此等解決辦法典型經設計來模擬面對面通訊之一個或多個面相。傳統電話系統允許打電話者間之語音通訊。即時傳訊(經常稱作為「聊天」)通訊系統允許使用者經由藉即時通伺服器而互連之即時通電腦客端而即時通訊文字訊息。某些即時傳訊系統額外允許使用者藉使用者可控制圖形物件(稱作為「化身」)來呈現於虛擬環境。互動式虛擬實境通訊系統允許於遠端位置之使用者經由操縱其於共享三維虛擬空間中個別之化身而透過多個即時通道通訊且彼此互動。
隨著具有高處理能力及高頻寬網路連結之電腦系統利用性的增加,對基於化身之虛擬實境通訊系統的興趣日增。此種虛擬實境系統之主要目標係形成一個虛擬空間,其中使用者可使用即時資料串流諸如音訊、視訊及文字聊天串流而互動與通訊。虛擬空間典型係藉電腦圖形規格界定,該規格說明該空間之視覺幾何圖形、映射至該視覺幾何圖形之色彩及紋理、控制使用者於該空間內部如何操控之碰撞性質、及該空間之音效性質諸如回響交混性質及吸音性質。
於典型虛擬實境系統中,各個使用者經由一介面通訊,該介面為由該系統所支援之即時資料串流中之一者或多者之來源點、匯集點、或來源點及匯集點二者。藉由內設,虛擬實境系統典型連結於虛擬空間代表之各個來源點連結至虛擬空間代表之每個匯集點,接受於全球交換規則、當地使用者偏好、及該虛擬空間內部之各物件性質規定之條件。此等條件典型係就各物件間之相對距離規定。例如,某些系統係組配成若化身間之分開距離超過最大臨界距離,則不建立即時資料串流連結。此外,某些物件設計成影響資料串流之如何形成。例如,螢幕物件妨礙特定方向的視覺及聲音。其它物件設計成當使用者的化身係於此等物件之互動區內部時,影響與使用者的化身相關聯之互動區。例如,舞台配接器物件增加於一虛擬舞台之互動空間內部之化身音訊互動空間之大小,以及桌子配接器物件將坐在一虛擬桌子的全部化身之互動空間摺疊入跨據該虛擬桌子之一共通互動空間。
於一個面相中,本發明係關於一種於共享一虛擬區之網路節點間交換即時資料串流連結之方法。根據此種方法,儲存虛擬區規格。該虛擬區規格包括一項或多項交換規則之說明,各項交換規則就於該虛擬區中之位置,界定個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間個別之連結。一個或多個即時資料串流連結係於與個別物件相關聯之網路節點間建立,各個物件係與該等即時資料串流類型中之一者或多者之來源點及匯集點中之至少一者相關聯。該即時資料串流連結係基於該一項或多項交換規則、與該等物件相關聯之個別來源點及匯集點、及於該虛擬區中之物件之個別位置建立。
於另一面相中,本發明係關於用於共享一虛擬區之網路節點間交換即時資料串流連結之裝置。該裝置包括一電腦可讀取記憶體及一處理單元。該電腦可讀取記憶體可操作來儲存一虛擬區規格,該規格包含一個或多個交換規則之說明,就於虛擬區中之位置,各個規則界定一個別即時資料串流類型之來源點與該即時資料串流之匯集點間之一個別連結。該處理單元可操作來於個別物件之相關聯網路節點間建立一個或多個即時資料串流連結,各個物件係關聯該等即時資料串流類型中之一者或多者之來源點及匯集點中之至少一者,其中該處理單元基於該一項或多項交換規則、與該等物件相關聯之個別來源點及匯集點、及物件於該虛擬區中之個別位置而建立一個或多個即時資料串流連結。
於另一個面相中,本發明係有關儲存電腦可讀取指令之一個或多個電腦可讀取媒體,該等指令當由電腦所執行時造成該電腦執行下列操作包括:儲存一虛擬區規格,包含一個或多個交換規則之說明,就於虛擬區中之位置,各個規則界定一個別即時資料串流類型之來源點與該即時資料串流之匯集點間之一個別連結;及於與個別物件相關聯之網路間建立一個或多個即時資料串流連結,各個物件係關聯該等即時資料串流類型中之一者或多者之來源點及匯集點中之至少一者,其中該處理單元基於該一項或多項交換規則、與該等物件相關聯之個別來源點及匯集點、及物件於該虛擬區中之個別位置而建立一個或多個即時資料串流連結。
於另一面相中,本發明係關於一種組構一虛擬區之方法。回應於使用者之輸入,於顯示監視器上形成一虛擬區模型。該模型包括呈現於該顯示監視器之虛擬區之幾何元件。回應於使用者之輸入,一項或多項交換規則係與該虛擬區之模型相關。就於虛擬區之位置,各個交換規則界定一個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之一個別連結。產生說明該虛擬區模型及一個或多個相關聯之交換規則之一虛擬區規格。該虛擬區規格係儲存於電腦可讀取儲存媒體。
於另一面相中,本發明係關於一種用於共享一虛擬區之網路節點間交換即時資料串流連結之網路交換器。該網路交換器包括一電腦可讀取記憶體及一處理單元。該電腦可讀取記憶體可操作而儲存一虛擬區規格,其包括一個或多個交換規則之說明,就於虛擬區中之位置,各個規則界定一個別即時資料串流類型之來源點與該即時資料串流之匯集點間之一個別連結。該電腦可讀取記憶體也可操作而儲存一包括描述路由至網路目的地之路由路徑之網路拓樸學資訊之表格。該處理單元可操作而於網路節點間前傳即時資料串流封包,各個節點係與該虛擬區中之一個別位置及該即時資料串流類型中之一者或多者之來源點及匯集點中之至少一者相關聯。該處理單元基於該網路拓樸學資訊及該一項或多項交換規則來前傳該一個或多個即時資料串流封包。
前述本發明之面相之實施例包括下列結構中之一者或多者。
虛擬區規格典型包括於該虛擬區中之一個或多個區段之說明。該一項或多項交換規則係與下列區段中之一者或多者相關聯:(i)來自該區段之個別即時資料串流類型及(ii)個別即時資料串流類型為匯集點之該等區段之個別區段。建立即時資料串流連結之方法典型包括確定相關於該等區段中之一者或多者之第一物件及第二物件之位置,以及基於已經確定之位置建立該一個或多個即時資料串流連結。建立即時資料串流連結之方法進一步包括識別由該等物件中之一給定者所占據之全部區段,以及決定與所識別之區段相關聯之一項或多項交換規則之即時資料串流類型之一標靶集合。該建立即時資料串流連結之方法也包括:確定該給定物件除外之物件中之一者係含於下述區段中之一者或多者,如由一項或多項交換規則定義,該等區段為於該標靶集合之即時資料串流類型中之一者所來源以及於該標靶集合中之即時資料串流類型中之一者所匯集之區段;判定即時資料串流之一可連結的集合,各個串流屬於下列中之至少一者:(i)來源自與該已被確定物件相關聯之該等網路節點中之一者或多者以及(ii)匯集入與該已被確定物件相關聯之該等網路節點中之一者或多者;以及基於與該即時資料串流之可連結集合相關聯之來源點及匯集點之匹配而判定所要求之即時資料串流類型集合。
交換規則中之至少一者可能將個別角色識別符與該等即時資料串流類型中之一給定者相關聯;以及建立即時資料串流連結之方法包括基於該來源點角色識別符與個別與該給定即時資料串流類型之來源點相關聯之一個或多個物件相關聯之角色識別符之比較,建立該等即時資料串流連結中之一者或多者。
該等交換規則中之至少一者可關聯一個別匯集點角色識別符與該即時資料串流類型中之一給定者;以及建立即時資料串流連結之方法包括基於該匯集點角色識別符與個別與該給定即時資料串流類型之匯集點相關聯之一個或多個物件相關聯之角色識別符之比較,建立該等即時資料串流連結中之一者或多者。
建立即時資料串流連結之方法額外可基於至少一項鄰近策略規則,只允許彼此於該虛擬區內之規定距離以內之個別物件相關聯之來源點中之一者與匯集點中之可相容者連結。
可維持一物件暫存器。該物件暫存器典型對該虛擬區中之各個物件包括一個別物件識別符;允許與該物件相關聯之網路節點建立網路連結之連結資料;以及識別個別與該物件相關聯之全部即時資料串流來源點類型及匯集點類型之介面資料。該物件暫存器典型係發送至與虛擬區中之物件相關聯之一個或多個網路節點。介面資料可接收自該等網路節點中之一給定節點。介面資料對與該給定網路節點相關聯之各個物件典型包括與該給定網路節點相關聯之全部即時資料串流來源點類型及即時資料串流匯集點類型之一表單。該物件暫存器典型係以接收自該給定網路節點之介面資料更新。已更新的物件暫存器典型係發送至與該物件暫存器中所列舉之物件相關聯之一個或多個其它網路節點。
可判定遞送一規定的即時資料串流類型集合至一給定網路節點之即時資料串流處理拓樸學;該虛擬區規格可對該虛擬區中之一個或多個區段之一個或多個即時資料串流類型規定串流屬性值;以及判定該即時資料串流拓樸學之方法典型包括基於由該虛擬區規格所規定之一個或多個串流屬性值,來選定該即時資料串流處理拓樸學。
虛擬區規格可分派第一串流優先順位屬性值予第一即時資料串流類型,且可將與該第一串流優先順位屬性值不同之第二串流優先順位屬性值分派予第二即時資料串流類型;以及該選擇即時資料串流處理拓樸學之方法包括選擇一種拓樸學作為該串流處理拓樸學,該拓樸學係根據不同的第一及第二串流優先順位屬性值而以不同方式排序該第一及第二即時資料串流類型之優先順位。
虛擬區規格可分派第一串流拓樸學屬性值予第一即時資料串流類型,以及分派與該第一串流拓樸學屬性值不同之一第二串流拓樸學屬性值予第二即時資料串流類型;以及選擇即時資料串流處理拓樸學之方法包括根據不同的第一及第二串流拓樸學屬性值,對該第一及第二即時資料串流類型選擇不同的串流處理拓樸學。對該第一即時資料串流類型選定之串流處理拓樸學可以混合串流格式遞送第一類型即時資料串流中之一者予該給定之網路節點;以及對該第二即時資料串流類型選定之串流處理拓樸學可以未混合串流格式遞送第二類型即時資料串流中之一者予該給定之網路節點。
建立即時資料串流連結之方法包括經由個別鏈路形成一個或多個即時資料串流連結,個別鏈路具有個別鏈路頻寬且載波一個或多個即時資料串流之個別發送集合。
虛擬區規格可分派一個或多個個別頻寬位準予一個或多個即時資料串流類型之各者;以及形成連結之方法可基於由該虛擬區規格個別分派予該一個或多個即時資料串流類型之一個或多個頻寬位準。虛擬區規格可分派個別最小頻寬位準予一個或多個即時資料串流類型之各者;以及形成連結之方法包括基於由該虛擬區規格個別分派予該一個或多個即時資料串流類型之一個或多個最小頻寬位準,判定各個鏈路各自之最小鏈路頻寬位準,且只形成其個別鏈路頻寬滿足所判定之個別最小鏈路頻寬位準之該等鏈路。虛擬區規格可分派個別多數頻寬位準集合予一個或多個即時資料串流類型中之各者;以及該形成連結之方法包括至少部分基於由該虛擬區規格所分派之頻寬位準,試圖於所決定之第一候選鏈路頻寬位準形成該等鏈路中之一給定鏈路;以及回應於未能於該第一候選鏈路頻寬位準形成該給定鏈路,嘗試至少部分基於由該虛擬區規格所分派之頻寬位準,形成於所決定之第二候選鏈路頻寬位準之該給定鏈路。
虛擬區規格可分派一個別串流優先順位屬性值予一個或多個即時資料串流類型中之各者;以及形成該連結之方法包括對各個鏈路,至少部分基於由該虛擬區規格分派予該一個或多個即時資料串流類型個別之一個或多個串流優先順位屬性值,分配個別鏈路頻寬予於個別發送集合中之一個或多個即時資料串流。
可決定遞送規定之即時資料串流資料集合予該等網路節點中之一給定者之即時資料串流處理拓樸學。於此方法中,決定該虛擬區中之給定網路節點及與物件相關聯之其它網路節點中之一者或多者之頻寬容量,且基於所發現之頻寬容量選擇串流處理拓樸學。
於另一個面相中,本發明係關於一種於共享一虛擬區之網路節點間交換即時資料串流連結之方法。根據此種方法,確定一即時資料串流集合。該即時資料串流允許與該虛擬區中之一個別位置相關聯之網路節點中之一給定節點參與與該虛擬區中個別位置相關聯之一個或多個其它網路節點之一協力通訊對談。遞送該即時資料串流集合予該給定網路節點之一個或多個即時資料串流連結至少部分係基於該給定網路節點之頻寬容量決定。建立該給定網路節點與一個或多個其它網路節點間之即時資料串流連結。
根據本發明之此一面相之實施例包括下列特性中之一者或多者。
判定即時資料串流連結之方法包括判定個別形式其中欲接收各個即時資料串流,其中所判定之即時資料串流各自係呈未混合之即時資料串流形式,或呈衍生自由其它網路節點所發送之即時資料串流組合之一混合即時資料串流形式。
判定即時資料串流連結之方法包括決定透過該徑路來接收各個即時資料串流之一網路路由徑路,其中所判定之網路路由徑路為直接同層級網路路由徑路或由一個或多個其它網路節點所媒介之網路路由徑路。
可儲存虛擬區規格。該虛擬區規格典型包括一項或多項交換規則之說明,各項規則就於該虛擬區之位置,界定一個別即時資料串流類型來源點與該即時資料串流類型匯集點間之一個別連結,其中該確定及判定中之至少一者係基於該等交換規則。
衍生自由其它網路節點所發送之即時資料串流之一道或多道混合型即時資料串流之一表單可發送至該給定的網路節點。
判定該即時資料串流連結之方法包括發現一或多個其它網路節點之頻寬容量;以及基於所發現之頻寬容量選定一個或多個即時資料串流連結。
該一個或多個所判定之即時資料串流連結涉及經由一中心網路節點,於第一集合中之網路節點間交換即時資料串流;以及透過直接同層級網路連結,於第二集合之網路節點間交換即時資料串流。一個或多個所判定之即時資料串流連結涉及發送一混合型即時資料串流予該給定之網路節點,該串流包含所請求之即時資料串流資料且係由其它網路節點中之一者發送之即時資料串流所導出。
判定即時資料串流連結之方法包括判定可最大化遞送未經混合之即時資料串流予該給定之網路節點之一個或多個即時資料串流連結。
於另一面相中,本發明係關於一種於共享一虛擬區之網路節點間交換即時資料串流連結之方法。根據此種方法,對該等網路節點之一個或多個接收者之各者,判定透過其發送一或多個即時資料串流之個別發送集合之一個別鏈路。各個鏈路具有個別鏈路頻寬。對各個鏈路,個別鏈路頻寬係分配於配置予於個別發送集合中之一個或多個即時資料串流之個別一個或多個通道間;而於個別發送集合中之該等一個或多個即時資料串流係透過個別配置的通道而發送至個別接收網路節點。
根據本發明之此一面相之實施例包括下列一項或多項特性。
判定個別鏈路之方法包括對各個鏈路,對於個別發送集合中之一個或多個即時資料串流各自確定一或多個個別頻寬位準;以及基於已確定的頻寬位準配置個別鏈路頻寬予該鏈路。對各個鏈路:確定個別頻寬位準包括對個別發送集合中之各個即時資料串流,識別個別最小頻寬位準;以及由該等一或多個已識別的個別最小頻寬位準,算出個別最小鏈路頻寬位準。該方法包括回應於判定該鏈路可用的頻寬位準未能滿足個別最小鏈路頻寬位準,拋棄任何鏈路。對各個鏈路:確定個別頻寬位準包括,對個別發送集合中之一個或多個即時資料串流之各者,以由個別第一較佳頻寬位準至個別第二較佳頻寬位準排序的個別較佳階層組織來識別至少兩個個別頻寬位準;以及至少部分基於所識別之第一較佳頻寬位準來計算個別目標鏈路頻寬位準;以及至少部分基於所識別之第二較佳頻寬位準來計算個別備用鏈路頻寬位準。判定個別鏈路之方法包括對各個接收網路節點:嘗試於目標鏈路頻寬位準建立至接收網路節點之個別鏈路;以及回應於未能建立於目標鏈路頻寬位準之至該接收網路節點之個別鏈路,試圖於備用鏈路頻寬位準建立至接收網路節點之個別鏈路。嘗試建立個別鏈路之方法包括比較目標鏈路頻寬位準與可用來發送個別發送集合之目前頻寬數量及可用於個別接收網路節點之目前頻寬數量二者。
判定個別鏈路之方法包括對各個接收網路節點:嘗試於個別候選鏈路頻寬位準建立至該接收網路節點之個別鏈路;以及回應於未能於個別候選鏈路頻寬位準建立至該接收網路節點之個別鏈路,拋棄於該發送資料集合中之至少一個任選的即時資料串流。
判定個別鏈路之方法包括對各個接收網路節點:嘗試於個別候選鏈路頻寬位準建立至該接收網路節點之個別鏈路;以及回應於未能於個別候選鏈路頻寬位準建立至該接收網路節點之個別鏈路,透過由一個或多個其它網路節點所媒介之一網路路由徑路,建立用於將個別發送集合中之一個或多個即時資料串流發送至該接收網路節點之一鏈路。
判定個別鏈路之方法包括對各個接收網路節點:嘗試於個別候選鏈路頻寬位準建立至該接收網路節點之個別鏈路;以及回應於未能於個別候選鏈路頻寬位準建立至該接收網路節點之個別鏈路,以由其它網路節點所發送之即時資料串流組合所導出之一個或多個混合式即時資料串流之形式,建立將於個別發送集合中之一個或多個即時資料串流遞送至該接收網路節點之一鏈路。
判定個別鏈路之方法包括對各個鏈路,以基於個別接收網路節點相關聯之屬性決定之數量來配置個別頻寬。
對各個鏈路,可基於與個別發送集合中之一個或多個即時資料串流相關聯之一個或多個串流優先順位位準來分配個別鏈路頻寬。
各個鏈路可為由發送該個別發送集合之網路節點中之一個別節點至接收網路節點中之一個別節點之一個別單向鏈路。
本發明也係關於一種裝置,其包括儲存電腦可讀取指令之電腦可讀取記憶體及一處理單元,該處理單元係耦接至該電腦可讀取記憶體,可操作來執行指令,且至少部分基於可操作指令的執行而從事包括前述方法元素之操作。本發明額外係關於電腦可讀取媒體,其儲存電腦可讀取指令而造成電腦從事包括前述方法元素之操作。
於另一面相中,本發明係關於一種用於共享一虛擬區之網路節點間交換即時資料串流連結之一種網路配接器。該網路配接器包括儲存電腦可讀取指令之電腦可讀取記憶體及一處理單元,該處理單元係耦接至該電腦可讀取記憶體,可操作來執行該等指令,且至少部分基於可操作指令之執行來從事包括下列操作之操作。對各個網路節點中之一個或多個接收節點,該處理單元判定透過該鏈路可發送一或多個即時資料串流之個別發送集合之一個別鏈路。各鏈路具有個別鏈路頻寬。對各鏈路該處理單元係於配置予個別發送集合中之一個或多個即時資料串流之一或多個通道間配置個別鏈路頻寬;以及透過個別所配置的通道而發送於個別發送集合中之一個或多個即時資料串流至個別接收網路節點。
其它本發明之特色及優點由後文說明包括附圖及申請專利範圍將更為彰顯。
第1圖為一網路節點之實施例之圖解視圖,包括呈現共享虛擬區之二維圖之圖形使用者介面。
第2A圖為一共享的虛擬區通訊環境之實施例之圖解視圖,其中網路節點係以同層級網路架構通訊。
第2B圖為一共享的虛擬區通訊環境之實施例之圖解視圖,其中網路節點係以伺服器媒介的架構通訊。
第3圖為一共享的虛擬區通訊環境之實施例之方塊圖,其包括三個網路節點之來源點與匯集點間之一說明性即時資料串流連結集合。
第4圖顯示一網路節點之實施例之方塊圖,其包括一說明性來源點集合及一說明性匯集點集合。
第5圖為一圖形使用者介面之實施例之圖解視圖,顯示一虛擬區之透視圖,該虛擬區包括與個別即時資料串流交換規則相關聯之區段。
第6圖為一圖形使用者介面之實施例之圖解視圖,顯示第5圖所示三維虛擬區之平面圖。
第7圖為於一共享虛擬區通訊環境之實施例中,連接至區伺服器網路節點之一區客端網路節點及另二區客端網路節點之一個實施例之方塊圖。
第8圖為第7圖所示共享虛擬區通訊環境之一個實施例之圖解視圖。
第9圖為由一區客端網路節點及一區伺服器網路節點所執行之一種方法之一實施例之流程圖。
第10圖為一種方法之一實施例之流程圖,藉該方法串流交換管理器實施例處理接收自一區伺服器之組態資料。
第11圖顯示第6圖所示虛擬區之平面圖,此處該虛擬區充斥四個化身物件。
第12圖為一種判定遞送所需資料串流資料至一區客端網路節點之即時資料串流連結之方法之一個實施例之流程圖。
第13圖為於共享一虛擬區之網路節點間交換即時資料串流連結之方法之一個實施例之流程圖。
第14圖為於共享一虛擬區之網路節點間交換即時資料串流連結之方法之一個實施例之流程圖。
第15圖為包括具有增強的鏈路管理功能之一網路配接器之一種主機系統之方塊圖。
第16圖為第15圖所示網路配接器之實施例之方塊圖。
第17圖為判定遞送所需資料串流資料至一區客端網路節點之一種或多種即時資料串流處理拓樸學之方法之一實施例之流程圖。
第18圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第19圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第20圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第21圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第22圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第23圖為一種共享虛擬區通訊環境之一實施例之方塊圖,其包括根據於虛擬區規格中界定之交換規則來管理即時資料串流連結之一種網路交換器之實施例。
於後文說明中,使用類似的元件符號來標示類似的元件。此外,附圖意圖以圖解方式舉例說明具體實施例之主要特徵。附圖並非意圖顯示實際實施例之每項特徵,也未顯示所示元件之相對尺寸,附圖並未照比例繪製。
本文說明之實施例提供於一共享虛擬區通訊環境中交換即時資料串流連結之系統及方法。此等實施例允許用於連結經由一共享虛擬區通訊之多個網路節點間之即時資料串流之交換規則外顯地遵照該虛擬區之規定。
此等實施例允許虛擬區設計者不僅控制虛擬區之形狀及外觀,同時也控制經由即時資料串流彼此連結之通訊者。藉此方式,虛擬區設計者可將共享用於一特殊通訊目的之虛擬區或用於一特殊通訊環境之虛擬區(例如個人空間、畫廊、音樂廳、講堂、會議室、及俱樂部會所)之多個通訊者間所做的即時資料串流連結最佳化。
此外經由將自動交換規則與虛擬區中之所在位置結合,此等實施例減少涉及通訊者節點連結與中斷連結中之複雜度,比較基於虛擬空間內部之物件的屬性及性質而建立連結與結束連結之系統、以及比較將信號處理功能與串流路由、連結及中斷連結功能交纏之系統,可提高系統的延伸性。
「虛擬區」為電腦管理的空間或場景之表示。虛擬區可為二維表示或三維表示。經常虛擬區經設計來模擬實體、真實世界空間。例如,使用傳統電腦監視器,虛擬區可視為三維電腦產生的空間之二維圖形。但虛擬區無需相關聯之視覺化來實現交換規則。
「虛擬區規格」為用於形成共享虛擬區通訊環境之虛擬區說明。
「區段」為與經由一共享的虛擬區於網路節點間交換(例如路由、連結及中斷連結)即時資料串流之至少一項規則相關聯之虛擬區之一區。
「通訊者」為通訊或以其它方式參與共享虛擬區通訊對話者。
「物件」為虛擬區中與虛擬區幾何形狀分開的任何類型元件。一物件典型具有與虛擬區之屬性及性質分開且不同的性質。
「化身」為表示虛擬區中之通訊者之物件。
虛擬區中之「位置」係指虛擬區中一點或一區之位置或體積。一點典型係以界定虛擬區中一點之單一二維座標或三維座標(例如x、y、z)集合表示。一區典型係以於虛擬區界定一個封閉的二維形狀邊界之三個或多個共面頂點之三維座標表示。體積典型係以於虛擬區界定一個封閉的三維形狀邊界之四個或多個非共面頂點之三維座標表示。
「網路節點」為通訊網路中之接點或連結點。網路節點之實例包括但非限於終端裝置、電腦、及網路交換器。
「電腦」為根據短暫地或持久地儲存於機器可讀取媒體之機器可讀取指令(例如軟體)處理資料之機器。執行特定任務之此種指令集合稱作為程式或軟體程式。
「即時資料串流」為於連續流結構化及處理且經設計來以無延遲或只有無法覺察的延遲而接收之資料;即時資料串流包括語音、視訊、使用者移動、臉部表情及其它物理現象之數位呈現,以及可由快速傳輸、快速執行、或快速傳輸與快速執行二者而獲益之電腦環境內部資料,包括例如化身移動指令、文字聊天、即時資料饋送(例如感測器資料、機器控制指令、異動串流及股票報價資訊饋送)、及檔案傳輸。
「資料來源點」(於此處簡稱為「來源點」)為任何產生資料之裝置、部分裝置(例如電腦)、或軟體中之任一者。
「資料匯集點」(後文簡稱為「匯集點」)為接收資料之裝置、部分裝置(例如電腦)、或軟體中之任一者。
「交換規則」為規定必須滿足一項或多項條件來連結或中斷連結一個或多個即時資料來源點與一個或多個即時資料匯集點之指令。
「串流混合」為兩個或多個相同類型之即時資料串流(例如音訊、視訊、聊天、及移動資料)之組合物。
「收發器交換器」為藉由網路節點接收類比或數位信號,且將所接收之信號(或所接收之信號拷貝)發送至一個或多個其它網路節點之交叉連結網路節點(例如客端、伺服器及網路裝置)之網路裝置。
「串流處理拓樸學」為即時資料串流(各自為混合串流或未經混合串流)透過該徑路遞送至一個或多個網路節點之網路路由徑路組織。
此處所述實施例提供於共享虛擬區通訊環境交換即時資料串流之系統及方法。通訊者典型係由執行具有二維及三維視覺化能力之通訊軟體程式之個別拷貝之個別網路節點來存取此種環境。通訊軟體程式控制客端處理程序其呈現於個別網路節點之虛擬區觀看,且與其它網路節點建立即時資料串流連結。通訊者典型係藉個別化身呈現於虛擬區,其係回應於由通訊者於其個別網路節點所輸入之輸入命令而環繞該虛擬區移動。通訊者之虛擬區觀景典型係由通訊者化身之透視呈現,增加通訊者所經歷之沉浸程度。各個通訊者典型可觀看環繞其化身之虛擬區之任何部分。
第1圖顯示由電腦系統所實現之一網路節點10之實施例,該電腦系統包括一顯示監視器12、一電腦滑鼠14、一鍵盤16、揚聲器18、20、及麥克風22。顯示監視器12顯示一圖形使用者介面24。圖形使用者介面24為基於視窗之圖形使用者介面,可包括多個視窗、小圖幟及指標器。於該具體實施例中,圖形使用者介面24呈現表示畫廊之共享三維虛擬區28之二維顯示。通訊者於虛擬區28係以個別化身30、32、34表示,化身各有個別的角色(例如管理員、畫家、及訪客)。
容後詳述,虛擬區28包括區段36、38、40、42、44,其係與以虛擬區28中之化身30-34表示之多個網路節點間管理即時資料串流之交換的個別規則相關聯。(於典型通訊對話期間,第1圖中區段36-44邊界的虛線為通訊者所不可見,但可能有此種區段邊界的相關視覺提示)。交換規則指示於各個網路節點上執行的局部連結處理程序如何基於通訊者的化身30-34於虛擬區28之區段36-44之所在位置而建立通訊。
於通訊對話期間,各個通訊者網路節點產生一個別即時資料串流集合(例如移動資料串流、音訊資料串流、聊天資料串流、檔案傳輸資料串流、及視訊資料串流)。例如各個通訊者操作一個或多個輸入裝置(例如電腦滑鼠14及鍵盤16)其產生控制其化身於虛擬區28之移動之移動資料串流。此外,於網路節點10附近局部產生之通訊者的語音及其它聲音由麥克風22所捕捉。麥克風22產生音訊信號,其被轉成即時音訊串流。音訊串流之個別拷貝傳輸至虛擬區28中以化身表示之其它網路節點。於此等其它網路節點所局部產生之聲音轉成即時音訊信號,且發送至網路節點10。網路節點10將所接收的局部產生的音訊串流轉成由揚聲器18、20所呈現之音訊信號。移動資料串流及音訊串流可直接或間接由各個通訊者節點發送至其它通訊者網路節點。於若干串流處理拓樸學中,各個通訊者網路節點接收由其它通訊者網路節點所發送之即時資料串流拷貝。於其它串流處理拓樸學中,一個或多個通訊者網路節點接收源自於(或來自於)其它網路節點之即時資料串流所導出之一個或多個混合串流。
第2A圖為一共享虛擬區通訊環境50之實施例之圖解視圖,其中三個網路節點52、54、56係以同層級架構而藉通訊網路58互連。通訊網路58可為區域網路(LAN)或全球通訊網路(例如網際網路)。網路節點52-56係由個別電腦表示。
於此種架構中,各個網路節點52-56發送狀態變化諸如於虛擬區中的化身移動至各個其它網路節點。網路節點中之一者(典型為引發通訊對話之該網路節點)操作為虛擬區伺服器。於該具體實施例中,網路節點52扮演該虛擬區伺服器之角色。虛擬區伺服器網路節點52維持通用狀態資訊,且作為其它網路節點54、56之資料伺服器。通用狀態資訊包括於虛擬區中全部物件及其於虛擬區中個別位置之表單。虛擬區伺服器網路節點52定期發送通用狀態資訊至其它網路節點54、56。虛擬區伺服器網路節點52也暫存及發送初始化資訊至請求加入該通訊對話之其它網路節點。於此項處理程序中,虛擬區伺服器網路節點52對各個加入的網路節點發送一虛擬區規格60拷貝,可儲存於本地資料庫或遠端資料庫。若發生通訊錯誤,則虛擬區伺服器網路節點52也確保其它網路節點54、56可同步化至通用狀態。
容後詳述,虛擬區規格60包括虛擬區之幾何元素之說明以及控管多個網路節點間之即時資料串流連結之一項或多項交換規則。幾何元素之描述允許於網路節點52-56上操作之個別通訊應用程式呈現個別虛擬區視圖予於個別顯示監視器上之通訊者。交換規則指示於各個網路節點52-56上執行之連結處理程序如何基於通訊者之化身於虛擬區之所在位置來與其它網路節點建立通訊。
第2B圖為於架構中藉虛擬區伺服器64媒介通訊之網路節點52-56(於本架構中稱作為「區客端網路節點」)通訊之共享虛擬區通訊環境62之一個實施例之圖解視圖。於本實施例中,區伺服器64具有於第2A圖所示同層級架構實施例中由網路節點52所執行之區伺服器功能。就此方面而言,區伺服器64維持通用狀態資訊,且係作為區客端網路節點52-56之一資料伺服器。容後詳述,本架構允許即時資料串流於欲以多種拓樸學處理之區客端網路節點52-56間交換,該等拓樸學包括同層級拓樸學、其中區伺服器64作為網路節點52-56間之通訊經紀人操作之完全伺服器媒介拓樸學、及組合同層級拓樸學與完全伺服器媒介拓樸學之各個面相之一混成拓樸學。
第3圖顯示於共享虛擬區通訊環境之一個實施例中於三個網路節點52-56之來源點與匯集點間之說明性即時資料串流連結之集合。為了方便說明,第3圖中之箭頭各自表示一個或多個即時資料串流之個別集合。根據此處所述實施例,第3圖所示連結係基於於共享虛擬區規格中定義的交換規則、通訊者化身於該共享虛擬區中之所在位置、及於各個網路節點52-56上可用之特殊來源點及匯集點而建立。
第4圖顯示包括一說明性來源點集合66及一說明性匯集點集合68之網路節點52之一個具體實施例。各個來源點為發源資料之網路節點52之一裝置或組件,及各個匯集點為接收資料之網路節點52之裝置或組件。來源點集合66包括一音訊來源點70(例如音訊捕捉裝置,諸如麥克風)、一視訊來源點72(例如一視訊捕捉裝置諸如視訊攝影機)、一聊天來源點74(例如一文字捕捉裝置諸如鍵盤)、一移動資料來源點76(例如一指標裝置諸如電腦滑鼠)、及一「其它」來源點78(例如檔案共享來源點或客製化即時資料串流來源點)。匯集點集合68包括一音訊匯集點80(例如音訊成音裝置諸如揚聲器或耳機)、一視訊匯集點82(例如一視訊成像裝置諸如顯示監視器)、一聊天匯集點84(例如一文字呈現裝置諸如一顯示監視器)、一移動資料匯集點86(例如一移動成像裝置諸如一顯示監視器)、及一「其它」匯集點88(例如用於列印共享檔案之一印表機、與前文已經說明者不同之用於呈現即時資料串流之裝置、或處理即時資料串流用於分析或客製化顯示之軟體)。
如藉第4圖所示網路節點實施例舉例說明,各個網路節點可能有可用的寬廣多種來源點及匯集點。經由允許區設計者控制如何於來源點與匯集點間建立連結,此處所述實施例對區設計者提供通訊者於虛擬區通訊及以其它方式互動之感官經驗遠更大的控制。藉此方式,區設計者可最佳化虛擬區用於特殊通訊目的或用於一特殊通訊環境(例如個人空間、畫廊、音樂廳、講堂、會議室、及俱樂部會所)。
共享虛擬區係藉規格定義,該規格包括虛擬區之幾何元素之描述以及控管多個網路節點間之即時資料串流連結之一個及多個交換規則。
虛擬區之幾何元素典型包括實體幾何及虛擬區之碰撞幾何。實體幾何描述虛擬區的形狀。實體幾何典型係由三角形、四邊形、或多角形之表面所形成。色彩及紋理映射至實體幾何來形成該虛擬區之更為實際的外觀。例如可藉畫光線於視覺幾何上以及修飾紋理、色彩、或強度成為接近光線來提供點亮效果。碰撞幾何描述決定物件於虛擬區移動方式之目測不可見的表面。碰撞幾何可重合視覺幾何,與視覺幾何較簡近似值相對應,或與設計者之特殊應用要求相關。
交換規則典型包括就於虛擬區中之位置,對用於連結即時資料串流之來源點及匯集點之條件作說明。各個規則典型包括定義該規則適用之即時資料串流類型之屬性以及該規則適用之虛擬區中之位置。於若干實施例中,各項規則視需要可包括一個或多個屬性其規定要求的來源點角色、要求的匯集點角色、串流之優先順序位準、請求的串流處理拓樸學。於若干實施例中,若對虛擬區之特殊部分並無明示交換規則,則一項或多項暗示的或內設的交換規則可應用至虛擬區之該部分。一項說明性內設交換規則為連結於一區內部每個來源點至每個可相容的匯集點之規則只要遵循策略規則即可。策略規則通用應用至該區客端之全部連結,或只應用至與個別虛擬區客端之個別連結。策略規則之一個實例為鄰近策略規則,只允許於虛擬區內彼此於規定距離(或半徑)以內之個別物件相關聯之來源點與可相容之匯集點連結。
寬廣多種不同三維圖形設計工具及遊戲層面設計編輯器可用於規定一虛擬區之幾何元素。通常,一個虛擬區之幾何元素之規格可以任一型三維描述語言說明,該等語言包括但非限於VRML(例如參考http://www.web3d.org/x3d/specifications/vrml)、X3D(例如參考http://www.web3d.org/x3d/specifications/x3d)、COLLADA(例如參考http://www.COLLADA.org)、及U3D(例如參考http://www.w3.org)。
於若干實施例中,虛擬區規格根據COLLADA說明虛擬區之幾何元素,COLLADA為基於XML之數位資產交換基模,包括「標籤」或「元素」(亦即以「<」及「>」括出之字元)及「屬性」(亦即屬性名稱=「數值」)。於若干此等實施例中,虛擬區之幾何元素之COLLADA說明係使用三維圖形工具形成,圖形工具諸如SketchUp(得自美國加州山景市古果公司(Google Inc.))、Maya或3ds Max(皆係得自美國加州聖大菲自動桌公司(Autodesk))。
於若干實施例中,虛擬區規格說明根據如下基於XML之COLLADA基模之延伸,與該虛擬區相關之交換規則。如下呈現之模型係描述作為提示之COLLADA之延伸-數位資產基模發行版本1.4.1 2006年4月規格(得自http://www.khronos.org/collada/)。此項延伸於此處稱作為COLLADA串流參考。
根據COLLADA串流參考所界定之交換規則係指來源點及匯集點,其典型係於系統層面定義。於若干實施例中,COLLADA之基礎XML系統之延伸特性用於描述特殊應用串流類型。於其它實施例中,於該系統更新所支援之串流類型。COLLADA串流參考允許區發展者對一給定區定義新穎串流類型。於此種情況下,若通訊者的系統進入一區時遭逢未知的串流類型,則系統活化開發者所規定之方法來以所需資訊更新系統俾處理該串流類型以及組配通訊者的系統內部之適當串流處理。
典型地,串流來源點類型諸如「語音」及實際本地串流類型(例如特定麥克風)與該來源相關聯之任何信號處理插入即用裝置或其它串流處理插入即用裝置(例如壓縮器/限流器或基於語音產生化身移動的移動資料串流來源點)間有連結。「語音」類型典型係由系統界定,使得任何區設計者皆可使用之,而非需要各個設計者來界定其本身之語音類型。另一方面,規定較佳的或需要的特定插入即用裝置為應用程式設計中的共通部分。COLLADA串流參考允許通訊者分派串流來源點類型例如語音予一麥克風、一記錄或一音樂來源點;以及界定於一處理器內部之插入即用裝置。
類似的情況也影響匯集點。用於串流類型之匯集點例如語音類型典型係於系統層面建立(例如耳機或揚聲器)。可為由通訊者或區設計者規定的額外插入即用裝置(例如基於距離之衰減器位準及基於相對位置之立體音盤)。
描述區段及就區段描述連結串流來源點及匯集點規則之COLLADA串流參考元素定義如下。
<zone_mesh>標籤定義區段邊界。
含有或述及足夠來描述基本幾何網格之資訊。
<zone_mesh>之定義係與<mesh>相同,但替代完整描述(<source>、<vertices>、<polygons>等等),可單純指另一種<geometry>來導出其形狀。後述情況典型係表示<geometry>之凸包(convex hull)須經過運算來用作為區段邊界(由任選的convex_hull_of attribute指示)。
此點極為有用,原因在於其允許再度使用<mesh>(例如用於成像成音之<mesh>)用於串流處理來縮小文件大小且維持鏈接至原先的<mesh>。就此方面而言,<zone_mesh>係類似於用於實體引擎之COLLADA<convex_mesh>元素。
所要求之體積屬性指示該區段係在網格體積的內部或外部。
描述<convex_mesh>之最小方式係規定其頂點(透過<vertices>元素及其相對應之來源點規定),以及使得該輸入器運算該濁點(point cloud)之凸包。
<zone_mesh>元素具有下列屬性:
<convex_mesh>元素係有關下列元素:
具體值(Occurrences) 於基模(schema)中定義的元素數目
親元素 幾何形狀
子元素 參考下列小節
其它 無
若存在時,子元素必須以下列順序出現:<source>、<vertices>、基元元素(primitive elements)、<extra>(此處基元元素為<lines>、<linestrips>、<polygons>、<polylist>、<triangles>、<trifans>、或<tristrips>之任一種組合)。
此處為基本<zone_mesh>元素之實例。
此處為<zone_mesh>元素之另一個實例。
<stream>標籤定義於<zone>內部之交換規則。
<stream>元素具有下列屬性:
<sink>標籤為由區段及使用者角色界定串流目的地之<stream>之子元素。
<sink>元素具有下列屬性:
此處為二區段之說明實例:區段名稱1及區段名稱2。
於本實例中,<geometry>元素為描述於一視圖中(例如一虛擬房間)中之體積形狀之COLLADA元素。<zone_mesh>元素為建立區段邊界與既有的網格間之關係之如前述定義之COLLADA串流參考元素。<library_zones>元素宣告含有區段「區段名稱1」及「區段名稱2」之<zone>元素集合。
區段名稱1之邊界係與凸包之內部容積相對應,係藉URI之「#myArbitraryMesh」參照之<geometry>運算。區段名稱2之邊界係與由「anotherMesh」定義之幾何網格相對應。
與區段名稱1相關聯之第一交換規則規定來源自區段名稱1之各個語音資料串流之一個拷貝係發送至區段名稱1中可匯集語音資料串流且具有「參與者」角色屬性之各個物件。第一交換規則也規定來自於區段名稱1之各個語音串流之拷貝發送至區段名稱2中可匯集語音資料串流且具有「調節者」角色屬性之各個物件。與區段名稱1相關聯之第二交換規則規定來自於區段名稱1之各個聊天資料串流之一個拷貝係發送至於區段名稱1中可匯集一聊天資料串流之各個物件。與區段名稱1相關聯之第三交換規則規定來自於區段名稱1且係與「調節者」角色屬性相關聯之各個音訊資料串流之一個拷貝係發送至區段名稱1中之各個物件,該物件可匯集音訊資料串流且非與該調節者角色屬性相關聯。
此處為含有兩個區段:舞台區段及觀眾區段之音樂廳模型虛擬區之COLLADA串流參考點說明之實例。
於本實例中,舞台區段之邊界係與由「舞台網格」所界定之幾何網格相對應。觀眾區段之邊界係與由「房間網格」界定之幾何網格相對應。
與舞台區段相關聯之交換規則規定來自於舞台區段的且係與「首席歌手(lead_singer)」屬性相關聯的各個語音資料串流之一個拷貝發送至觀眾區段中可匯集語音資料串流的且具有「觀眾」角色屬性的各個物件。語音資料串流之拷貝將以優先順位位準1且偏好直接用於串流處理拓樸學發送。交換規則也規定源自於舞台區段的且係與「首席歌手(lead_singer)」屬性相關聯的各個語音資料串流之拷貝送至舞台區段中可匯集語音資料串流的且具有「全部表演者(all_performers)」角色屬性的各個物件。
與觀眾區段相關聯之第一交換規則規定源自於觀眾區段之各個語音資料串流之一個拷貝係以優先順位2發送至觀眾區段中可匯集語音資料串流之各物件。與觀眾區段相關聯之第二交換規則規定源自於觀眾區段之各個聊天資料串流之一個拷貝係發送至觀眾區段中可匯集聊天資料串流偏好用於伺服器混合之各物件。
第5圖顯示用於形成虛擬區規格之三維圖形設計工具之圖形使用者介面90之一個實施例。圖形使用者介面90包括一繪圖區92、選單94、及工具列96。
選單94提供存取繪圖工具、命令、及設定值。第5A圖所示選單94之說明性集合包括檔案、編輯、觀看、觀點、繪圖、工具、視窗、及支援。選單94集合也包括Sococo區段選單98,且提供存取工具用來界定於虛擬區中之各區段及串流連結。此等工具可為三維圖形設計工具之整合一體的組件,或可提供作為三維圖形工具諸如SketchUp(得自美國加州山景市古果公司)、Maya或3ds Max(皆係得自美國加州聖大菲自動桌公司)之插入即用延伸產品之一部分。
工具列96含有使用者可定義的工具及控制集合。第5圖所示工具列96之說明性集合係與典型於三維圖形設計工具諸如SketchUp 6三維圖形設計軟體應用程式中所見工具及命令相對應。
繪圖區92為區設計者形成虛擬區之三維模型。第5圖中,圖形使用者介面90之繪圖區92顯示三維虛擬區100之透視圖。第6圖中,圖形使用者介面90之繪圖區92顯示虛擬區100之平面圖。虛擬區100之圖形元素(例如牆壁、天花板、地板、樑柱、檯面、及灯具)典型係使用典型出現於三維圖形設計工具諸如SketchUp 6三維圖形設計軟體應用程式中所見標準工具及命令界定。
如第5圖及第6圖所示,除了幾何圖形元素之外,虛擬區100額外包括區段101、102、104、106、108、110、112,該等區段係由虛線邊界來劃界。各個區段101-112關聯一項或多項個別即時資料串流交換規則。區段101-112係使用經由Sococo區段選單98可存取的工具及命令規定。於若干實施例中,區段設計者可使用標準三維圖形設計工具規定各個區段101-112之邊界;以及然後選擇一個或多個Sococo區段設計工具來將邊界與個別<zone_mesh>標籤關聯以及規定<zone_mesh>標籤之屬性。於若干此等實施例中,Sococo區段設計工具導引使用者通過界定各區段之處理程序,因此可使用前述COLLADA串流參考規格表示(例如<zone>、<stream>及<sink>標籤)。
通訊者典型係由個別網路節點存取一共享虛擬區通訊環境。各個網路節點典型係由一通用電腦系統或專用通訊電腦系統(或「主控台」)實施。各個網路節點執行通訊處理呈現於各節點之虛擬區之個別視圖,且與其它網路節點建立即時資料串流連結。
第7圖顯示一經伺服器媒介的共享虛擬區通訊環境120之實施例,其中該等網路節點52-56(稱作為「區客端網路節點」或於本架構中簡稱為「區客端」)及區伺服器64係藉通訊網路58互連。於本實施例中,各個區客端網路節點52-56係藉後述個別的電腦系統類型連結區客端伺服器網路節點52實施;區伺服器64也藉後述同一類型通用電腦系統實施。
如第7圖所示,區客端網路節點52係藉一電腦系統實施,該電腦系統包括一處理單元122、一系統記憶體124、及耦接該處理單元122至該電腦系統之多個組件之一系統匯流排126。處理單元122可包括一個或多個資料處理器,其各自可呈多種市售電腦處理器中之任一種形式。系統記憶體124可包括唯讀記憶體(ROM),ROM儲存含有電腦系統之啟動常式之基本輸入/輸出系統(BIOS)及包括一隨機存取記憶體(RAM)。系統匯流排126可為記憶體匯流排、周邊匯流排或本地匯流排,且可與多個匯流排輪廓資料包括PCI、VESA、Microchannel、ISA、及EISA相容。電腦系統也包括持久儲存記憶體128(例如硬碟機、軟碟機、CD ROM驅動器、磁帶機、快閃記憶體元件、及數位影音光碟)其係連結至系統匯流排126且含有可提供資料、資料結構及電腦可執行指令之非依電性儲存或持久性儲存之一個或多個電腦可讀取媒體碟片。通訊者可使用一個或多個輸入元件130(例如一個或多個鍵盤、電腦滑鼠、麥克風、攝影機、搖桿、實體移動感測器例如Wii元件、及觸控墊)來與電腦系統互動(例如輸入命令或資料)。資訊可經由二維圖形使用者介面(GUI)或三維GUI呈現,GUI係於顯示監視器132上呈現予通訊者且係藉顯示控制器134控制。電腦系統也包括周邊輸出裝置諸如揚聲器及印表機。電腦系統經由網路配接器136(也稱作為「網路介面卡」或NIC)而連結至其它區客端網路節點54、56及區伺服器64。
多個程式模組可儲存於系統記憶體124,包括但非限於作業系統140(例如Windows XP作業系統得自美國華盛頓州雷蒙微軟公司(Microsoft Corporation))、通訊應用程式142、GUI驅動器144、及資料146。資料146之說明性類別包括輸入資料、輸出資料、及程式資料諸如登錄(或組態資料庫)148。
作業系統140包括執行程式其提供基本作業系統服務(例如記憶體管理、處理及執行緒管理、保全、輸入/輸出、及處理際通訊)用來於電腦系統上形成操作時間執行環境。登錄148典型含有下列資訊:啟動及組配系統所需參數;控制作業系統140之操作之系統軟體設定值;保全資料庫;及依據使用者之輪廓資料設定值。自然作業系統(OS)應用程式介面(API)150將執行的基本作業系統服務暴露於通訊應用程式142及其它使用者應用程式。如此處使用,「服務」(或「服務模組」)等詞係指可提供一項或多項功能集合之作業系統之一個組件。
於若干實施例中,通訊應用程式142包括控制虛擬區之個別視圖之呈現及顯示監視器132上於虛擬區之物件之處理程序;及控制區客端網路節點52及其它區客端網路節點54、56與區伺服器64間之即時資料串流交換之處理程序。通訊應用程式142與GUI驅動程式144及使用者輸入端130介接來提供虛擬區之視圖且允許通訊者控制通訊應用程式142之操作。
通訊應用程式142之實施例可藉一個或多個分開模組(或資料處理組件)實施而未限於任何特定硬體、韌體、或軟體組態。大致上,此等模組可於任何運算環境或資料處理環境實施,包括於數位電子電路(例如特殊應用積體電路(ASIC)諸如數位信號處理器(DSP))或於電腦硬體、韌體、元件驅動器、或軟體實施。於若干實施例中,模組功能組合成單一資料處理組件。於若干實施例中,一個或多個模組個別之功能係藉多個資料處理組件之個別集合執行。於若干實施例中,用於實施藉通訊應用程式142之實施例所執行之方法之方法指令(例如機器可讀取密碼諸如電腦軟體)及其產生之資料係儲存於一個或多個機器可讀取媒體。適合具體實施此等指令及資料之儲存元件包括全部非依電性電腦可讀取記憶體形式,例如包括半導體記憶體元件諸如EPROM、EEPROM、及快閃記憶體元件、磁碟諸如內部硬碟及活動硬碟、磁光碟、DVD-ROM/RAM、及CD-ROM/RAM。通訊應用程式142之實施例可於寬廣多種電子元件之任一種實施,包括個人電腦元件(例如桌上型電腦、行動電腦、及通訊元件)、網路元件(例如伺服器電腦、路由器、交換器、及中樞器)、遊戲機台、有線電視及混成機上盒、及數據機。
儲存於系統記憶體124之執行環境也包括用於發送及接收即時資料串流之網路傳輸協定152集合。
於若干實施例中,透過網路58之通訊係根據傳輸控制協定/網際網路協定(TCP/IP)進行。協定之TCP部分經由將訊息斷成較小的封包,於通訊網路之另一端重新組裝封包,以及重新發送沿路遺失的任何封包而提供傳輸功能。協定之IP部分經由指派目的地網路之資料封包位址及目的地網路上之目標節點而提供路由功能。使用TCP/IP協定通訊之各個資料封包包括含有TCP及IP資訊之一標頭部分。IP協定並未保證封包遞送至通訊堆疊之上層。另一方面,TCP協定提供連結導向之端對端傳輸服務,保證循序封包遞送。藉此方式,TCP協定提供可靠的傳輸層連結。
於其它實施例中,透過網路58之通訊可根據使用者母資料協定/網際網路協定(UDP/IP)進行。於無需可靠遞送之情況下,可使用UDP替代TCP。例如,UDP/IP可用於遺失資料封包由於以下任何理由單純被忽略之即時音訊及視訊資料流:該等理由為來不及轉發,或整個資料品質之任何降級皆可為人所接受。
若干實施例可使用爪哇媒體框架(JMF),其支援元件捕捉、編碼、解碼、成像成音、及即時傳輸協定(RTP)。多種網路協定可用於區客端網路節點52-56間之RTP資料的發送與接收,該等協定包括同層級網路框架、單獨使用TCP配接容座或組合UDP之集中式伺服器或群播協定。
執行環境也包括硬體鏈接位準及存取協定,可與開放系統互連(OSI)參考模型之資料鏈路及實體層相對應。
於該等具體實施例中,區客端網路節點52-56與區伺服器64間之通訊係根據TCP/IP協定執行。於此等實施例中,於電腦系統使用TCP/IP通訊前,電腦系統對各個網路介面判定一個IP位址。此程序涉及接觸伺服器來對一個或多個網路介面獲得IP位址。電腦系統可使用動態主機組態協定(DHCP)來簽發IP位址至一DHCP伺服器之請求。就此方面而言,電腦系統於系統啟動時廣播一DHCP請求封包,來請求所指示之網路介面之IP位址的配置。當接收到DHCP請求封包時,DHCP伺服器配置一IP位址予該電腦系統用於指示之網路介面。然後電腦系統儲存來自於伺服器回應的IP位址作為使用IP協定通訊時與該網路介面相關聯之IP位址。
第8圖顯示第7圖所示伺服器媒介之共享虛擬區通訊環境120之一個實施例160,此處區客端網路節點52-56係於藉該區伺服器64媒介之架構內通訊。
區伺服器64維持通用狀態資訊且作為區客端網路節點52-56之資料伺服器。於由該區伺服器所維持之通用狀態資訊中包括虛擬區之目前規格180、虛擬區中各物件之目前暫存器182、及由區伺服器64所產生之任何串流混合之目前表單184。
如前文說明,虛擬區規格180包括虛擬區之幾何形狀元素及一項或多項交換規則之說明。各項交換規則就虛擬區中之位置,定義個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之個別連結。於若干實施例中,虛擬區之幾何形狀元素係根據COLLADA-數位資產基模發行1.4.1規格說明;交換規則係根據前文所提示之COLLADA串流參考規格說明。
物件暫存器182典型對虛擬區中各個物件包括一個別物件識別符(例如獨特識別該物件之一標記)、允許與該物件相關聯之網路節點建立網路連結之連結資料(例如IP位址)、及識別與該物件相關之即時資料串流來源點及匯集點(例如與該物件相關聯之網路節點之來源點及匯集點)之介面資料。物件暫存器182典型對各個物件也包括一個或多個任選的角色識別符,其可藉通訊者或區伺服器64而外顯指派予該等物件,或可由物件之其它屬性推定。於若干實施例中,物件暫存器182也包括由接收自該區客端網路節點52-56接收之即時移動資料串流分析,而藉區伺服器64判定之虛擬區中各個物件之目前位置。就此方面而言,區伺服器64由區客端網路節點52-56接收即時移動資料串流,基於該移動資料追蹤通訊者的化身及進入、離開及環繞虛擬區移動之其它物件。區伺服器64根據追蹤得之物件的目前所在位置來更新物件暫存器182。
於第8圖所示實施例中,區客端網路節點52包括通訊應用程式142之實施例(參考第7圖),其包括通訊模組162、三維視覺化引擎164、聊天引擎165、及音訊處理引擎166。其它網路節點54、56各自典型包括通訊應用程式142之實施例,其係與關聯區客端網路節點52所述者相同或類似。
通訊模組162控制區客端網路節點52及其它區客端網路節點54、56與區伺服器64間之即時資料串流之交換。通訊模組162包括串流交換管理器168及頻寬監視器170。串流交換管理器168處理與區客端網路節點52相關聯之化身及其它物件之進入虛擬區及離開虛擬區。串流交換管理器168也自動判定如何於區客端網路節點52及其它區客端網路節點54、56與區伺服器64間交換(例如路由、連結及中斷連結)即時資料串流。串流交換管理器168係基於虛擬區規格所含之交換規則、虛擬區中之化身及其它物件之目前所在位置、及於虛擬區中化身及其它物件相關聯之即時資料串流類型進行判定。於若干實施例中,串流交換管理器168也將區客端網路節點52、其它網路節點54、56、或區伺服器64中之任一者之上傳及下載頻寬限制列入判定的考慮因素。此外,串流交換管理器168回應於事件(例如上傳或下載頻寬錯誤,以及請求進入或離開虛擬區)、定期地或回應於事件及定期地二者重新評估目前的連結集合。由於重新評估目前連結的結果,串流交換管理器168例如可採行下列動作中之任一者:由區伺服器64請求串流混合;由區伺服器拋棄串流混合;打斷與一個或多個其它區客端網路節點54、56之一個或多個直接鏈路;或形成與一個或多個其它區客端網路節點54、56之一個或多個直接鏈路。
於管理即時資料串流連結之交換過程中,串流交換管理器168維持組態資料集合,包括介面資料186、區段表單188、及目前於虛擬區中之各物件之位置192。介面資料186對與區客端網路節點52相關聯之各個物件包括與該物件相關聯之即時資料串流類型之全部來源點及匯集點之表單。區段表單188為目前由與區客端網路節點52相關聯之化身所占有的虛擬區中之全部區段之登錄。當通訊者首次進入一虛擬區時,串流交換管理器168典型係以由區伺服器64所下載之位置啟動資訊來啟動目前物件位置資料庫192。隨後串流交換管理器168以由接收自例如電腦滑鼠171、區客端網路節點54、56、及區伺服器64中之一者或多者之即時移動資料串流分析所判定之物件於虛擬區中之目前位置來更新該目前物件位置資料庫192。於若干實施例中,物件位置192結合入物件暫存器190。由串流交換管理器168所維持之組態資料也包括物件暫存器182、串流混合器表單184、及虛擬區規格180之拷貝190、194、及196;此等拷貝190、194、及196典型係由區伺服器64下載且表示此等資料之本地快取檔。
三維視覺化引擎164於顯示監視器132上呈現虛擬區及虛擬區內任何物件之視圖。於此項處理程序中,三維視覺化引擎164讀取虛擬區規格資料196、物件暫存器190、及目前物件位置資料庫192。於若干實施例中,三維視覺化引擎164也讀取通訊者化身資料庫198,該資料庫198含有通訊者的化身於虛擬區成像所需的影像。基於此項資訊,三維視覺化引擎164由虛擬區中該通訊者之化身之觀點(位置及方向)產生虛擬區及虛擬區中之物件之透視代表圖(亦即影像)。三維視覺化引擎164隨後於顯示監視器132上成像虛擬區之個別代表圖。於若干實施例中,三維視覺化引擎164判定通訊者的化身之可見性俾便限制必須改變、處理及成像至顯示監視器132上可見的虛擬區部分之資料量。
於若干實施例中,三維視覺化引擎164額外可操作來產生虛擬區之代表性平面圖。於此等實施例中,通訊者可指示三維視覺化引擎164於顯示監視器132上成像虛擬區之透視代表圖及虛擬區之平面代表圖中之一者或二者。
通訊者由輸入元件(例如電腦滑鼠171)發送命令至通訊模組162,可控制虛擬區所呈現之視圖或化身於虛擬區之位置。三維視覺化引擎164根據於目前物件位置資料庫192中已更新的位置來更新虛擬區視圖及物件於虛擬區之位置;且於顯示監視器132上重新成像更新後之虛擬區之圖形代表圖版本。三維視覺化引擎164可定期更新或只回應於虛擬區中之一個或多個物件之移動而更新所成像的影像。
聊天引擎165提供一介面,該介面用於輸出接收自區客端網路節點52之本地文字輸入元件(例如鍵盤)之聊天(文字)訊息;以及用於輸入接收自其它網路節點54、56之聊天串流。聊天引擎165將由通訊者經由文字輸入元件所輸入之聊天(文字)訊息轉成可發送至其它網路節點54、56之即時聊天串流。聊天引擎165也將輸入的聊天串流轉成可於顯示監視器132上成像之文字信號。
音訊處理引擎166產生音訊信號,音訊信號藉通訊者耳機176中之揚聲器172、174成音,且將耳機176中由麥克風178所產生之音訊信號轉成可發送至其它區客端網路節點54、56之音訊信號。
如前文說明,共享的虛擬區係藉一規格界定,該規格包括虛擬區之幾何形狀元素之說明及控管網路節點間之即時資料串流連結之一項或多項交換規則。交換規則典型包括就虛擬區中之位置,用於連結即時資料串流之來源點及匯集點之條件說明。各規則典型包括定義該規則適用之即時資料串流類型之屬性及該規則適用之虛擬區中之所在位置。於若干實施例中,各項規則視需要可包括一個或多個屬性其規定要求的來源點角色、要求的匯集點角色、要求的串流之優先順位、及要求的或較佳的串流拓樸學。
交換規則適用於進入虛擬區之物件、物件於虛擬區內部之移動、及由虛擬區離開之物件。
第9圖顯示區客端(於本章節稱作為「進入的區客端」)進入虛擬區之方法之實施例。
經由開始於區客端網路節點上之通訊應用程式142(參考第7圖),通訊者開始通訊對話(第9圖,方塊200)。通訊應用程式142對通訊者呈現一圖形使用者介面,通訊者可透過該GUI而與通訊應用程式142互動。GUI典型對通訊者提供登入一共享虛擬區之選項。
回應於接收到登入一共享虛擬區之命令,通訊應用程式142發送一登入訊息予區伺服器64(第9圖,方塊202)。登入訊息典型包括用於識別及認證通訊者之登入資訊。
區伺服器64認證於登入訊息中所含之登入資訊(第9圖,方塊204);且將結果通知該區客端(第9圖,方塊206)。
若認證成功(第9圖,方塊207),通訊應用程式142發送介面資料至區伺服器64(第9圖,方塊209)。對將進入該區之各個物件,該介面資料包括分別與該物件相關聯之全部即時資料串流來源點類型及匯集點類型之ID。若認證未通過(第9圖,方塊207),則通訊應用程式142中止登入程序且通知通訊者登入嘗試失敗(第9圖,方塊208)。
區伺服器64更新物件暫存器(參考第9圖)來包括與進入的區客端相關聯之物件及與此等物件相關聯之即時資料串流來源點類型及匯集點類型(第9圖,方塊210)。區伺服器64發送組態資料予該進入的區客端(第9圖,方塊212)。組態資料包括虛擬區規格180之一拷貝(參考第8圖)及已更新之物件暫存器182之一拷貝(參考第8圖)。於若干實施例中,組態資料額外包括串流混合表單184之一拷貝(參考第8圖),其識別由區伺服器64目前所產生之區客端即時資料串流之混合物(或組合物)。區伺服器64也發送已更新的物件暫存器180之個別拷貝至於虛擬區中之各個物件相關聯之其它區客端(第9圖,方塊214)。如前文說明,區伺服器64接收來自於該區客端網路節點52-56之即時移動資料串流,基於該移動資料追蹤通訊者的化身及進入與離開虛擬區之其它物件,以及根據追蹤得之物件的目前所在位置來更新物件暫存器182。區伺服器64定期將已更新之物件暫存器182發送至與虛擬區內之各物件相關聯之區客端。
於進入的區客端網路節點上執行之通訊應用程式142容後詳述處理該虛擬區規格及物件暫存器(第9圖,方塊216)。然後通訊應用程式142基於於虛擬區規格中定義的交換規則、與列舉於接收得的物件暫存器182拷貝中之物件相關聯之個別來源點及匯集點、及物件於虛擬區之個別位置而於該進入的區客端網路節點與列舉於該物件暫存器中之一個或多個其它區客端間建立一個或多個即時資料串流連結(第9圖,方塊218)。於建立連結之處理程序中,通訊應用程式142啟動且組配組件模組,其允許捕捉、回放、串流化、及轉碼於進入區客端網路節點可取得之即時資料串流。此等組件典型包括聊天引擎165、音訊處理引擎166、及其它組件(例如用於編碼接收自本地視訊捕捉元件之視訊資料與解碼接收自遠端網路節點之即時視訊串流封包之一視訊處理引擎)。
第10圖為一種方法之實施例之流程圖,據此,串流交換管理器168之實施例(第8圖)處理於第9圖之方法之方塊216接收自區伺服器64之組態資料俾便判定所需即時資料串流連結集合。如前文說明,組態資料包括虛擬區規格180之拷貝(參考第8圖)及已更新之物件暫存器182之拷貝(參考第8圖)。於若干實施例中,組態資料額外包括串流混合物表單184(參考第8圖),其識別目前由區伺服器64所產生之區客端即時資料串流之混合物(或組合物)。
串流交換管理器168以接收自區伺服器64之物件暫存器182之拷貝(第10圖,方塊220)啟動本地物件暫存器190(參考第8圖)。串流交換管理器168也以接收自區伺服器64之串流混合物表單184之拷貝(第10圖,方塊222)啟動本地串流混合物表單194(參考第8圖)。串流交換管理器168額外以接收自區伺服器64之虛擬區規格180之拷貝(第10圖,方塊220)啟動本地虛擬區規格快取記憶體196(參考第8圖)。
串流交換管理器168由虛擬區規格196建立已占有區段表單188(參考第8圖)及通訊者的化身於虛擬區之所在位置(第10圖,方塊226)。於本處理程序中,串流交換管理器168由目前物件位置資料庫192取回通訊者的化身於虛擬區之目前位置,該資料庫含有化身於虛擬區的目前位置之座標。此等座標係由接收自輸入裝置諸如電腦滑鼠171之即時移動資料串流判定。然後串流交換管理器168比較通訊者的化身之目前位置與虛擬區規格196中之區段定義。串流交換管理器168由虛擬區規格中與通訊者的化身之目前位置重合的全部區段編譯已占有的區段表單188。舉例言之,於若干實施例中,已占有的區段表單188包含其網格含有通訊者的化身之目前位置之全部區段。
串流交換管理器168判定對已占有的區段表單中之區段定義的目標即時資料串流類型集合(第10圖,方塊228)。然後串流交換管理器168由目標即時資料串流類型集合、物件於虛擬區之位置、及於虛擬區規格定義之交換規則,判定所需即時資料串流資料集合(第10圖,方塊230)。
於若干具體實施例中,串流交換管理器168確定物件中之一者(該給定物件除外)係包含於區段中之一者或多者,該等區段如由一項或多項交換規則定義,於該目標集合中之即時資料串流類型中之一者係由該區段發源,且於目標集合中之該等即時資料串流類型中之一者係匯集入該區段。串流交換管理器168基於已確定之物件判定可連結的一即時資料串流集合。可連結串流各自為(i)來源自與該等已確定物件相關聯之一個或多個網路節點以及(ii)匯集入與已確定之物件相關聯之一個或多個網路節點中之至少一者。然後串流交換管理器168基於與該可連結之即時資料串流集合相關聯之來源點與匯集點之匹配而判定所需的即時資料串流資料之集合。
於若干此等實施例中,所需即時資料串流資料集合係與可根據交換規則及區客端網路節點上可利用之匯集點而匯集入由通訊者的化身所占有之區段之該等即時資料串流相對應。於此等實施例中,串流交換管理器168判定對相關聯之網路節點可匯集之已占有的區段所定義之匯集點中之一者,然後基於其它物件於虛擬區之位置及交換規則來判定該等匯集點之全部來源點。於此項處理程序中,串流交換管理器168彙編得自全部即時匯集點類型(例如音訊、聊天、視訊、移動資料)之目標即時資料串流類型集合,該等匯集點類型係與通訊者的化身相關聯且係定義為由通訊者的化身所占有的任何區段之匯集點類型。然後串流交換管理器168由交換規則判定目標即時資料串流類型各自可來源之目標來源點區段。串流交換管理器168由物件暫存器190及目前物件位置資料庫192,判定根據交換規則可由其目前位置來源目標即時資料串流類型中之一者或多者之該等目標來源區段中之全部物件。串流交換管理器168由於物件暫存器190中已識別之物件相關聯之連結資料彙編所需即時資料串流資料之集合。
於一個具體實施例中,第11圖顯示當區100出現四個化身物件A、B、C、及D時虛擬畫廊區100之平面圖(例如參考第5圖及第6圖)。化身A及B係位於區段101,及化身C及D係位於區段108。用於該具體實施例之目的。
.化身A-D各自係與語音、視訊、及聊天來源點類型及匯集點類型相關聯;
.區段101之交換規則規定
.與區段101內部之一化身相關聯之各個語音來源點將連結至區段101內部之每個語音匯集點,
.與區段101內部之一化身相關聯之各個視訊來源點將連結至區段101內部之每個視訊匯集點,及
‧與區段101內部之一化身相關聯之各個聊天來源點將連結至區段101內部之每個聊天匯集點;
‧區段108之規則只規定與區段108內部之化身相關聯之各個語音來源欲連結至區段108內部之每個語音匯集點;以及
‧串流交換管理器168於該區段交換規則的頂端,實施一項鄰近策略規則,該項規則只允許與虛擬區內彼此於規定距離(或半徑)rP
以內之個別物件相關聯之來源點與可相容的匯集點連結。
於本實例中,區段交換規則及鄰近策略規則提供判定如何於化身A、B、C及D間建立連結之個別交換條件。
於操作中,於與化身A相關聯之區客端網路節點上操作之串流交換管理器168要求每當化身B係位在環繞化身A規定的距離rP
之鄰近區段232以內時,連結至發源自與化身B相關聯之區客端網路節點之即時語音、視訊、及聊天串流。同理,於與化身B相關聯之區客端網路節點上操作之串流交換管理器168要求每當化身A係位於化身B之規定距離rP
以內時,連結至發源自與化身A相關聯之區客端網路節點之即時語音、視訊、及聊天串流。因化身B目前係位在化身A之鄰近區段232之外部,反之亦然,與化身A及B相關聯之節點於第11圖所示目前實例狀態無法彼此連結。
因區段108只允許語音連結,於化身C相關聯之區客端節點上操作之串流交換管理器168之案例將要求只連結至源自於與化身D相關聯之區客端節點之即時語音串流(假設滿足鄰近策略規則中所規定之鄰近條件)。同理,於化身D相關聯之區客端節點上操作之串流交換管理器168之案例將要求只連結至源自於與化身C相關聯之區客端節點之即時語音串流(假設滿足鄰近策略規則中所規定之鄰近條件)。
因區段101及區段108之交換規則不允許區段101與區段108間連結,即使滿足鄰近策略規則中規定之鄰近條件,與化身A及B相關聯之來源點及匯集點無法連結至與化身C及D相關聯之任何來源點及匯集點。
於若干實施例中,區客端52-56中之至少一者包括網路配接器(例如乙太網路介面卡)其提供連結至網路58之連結性;且進一步組配來執行區客端串流交換管理器168之一項或多項功能,包括執行第10圖之方法所需之功能。
於若干具體實施例中,於串流交換管理器168已經判定即時資料串流資料集合允許網路節點52參與與該共享虛擬區中之其它網路節點之協力通訊對話(第10圖,方塊230),串流交換管理器168判定即時資料串流連結,其將導致所需即時資料串流資料遞送至區客端網路節點52。
於若干此等實施例中,串流交換管理器168判定即時資料串流處理拓樸學,至少部分基於給定網路節點之頻寬容量,遞送即時資料串流集合至該給定網路節點。於此處理程序中,串流交換管理器168判定由未混合的即時資料串流及由即時資料串流之組合物所導出之一串流混合物接收各個即時資料串流之個別形式。串流交換管理器168也判定各個即時資料串流接收自直接同層級網路路由徑路及藉一個或多個其它網路節點所媒介之網路路由徑路之一網路路由徑路。於已經判定串流處理拓樸學後,串流交換管理器168根據所判定的串流處理拓樸學而建立該給定網路節點與其它網路節點間之即時資料串流連結。
第12圖顯示判定遞送所需資料串流資料至區客端網路節點之判定即時資料串流連結之拓樸學之方法。
根據此種方法,串流交換管理器168判定區客端網路節點52是否有足夠頻寬來直接由其它區客端網路節點接收所需即時資料串流資料240之集合(第12圖,方塊242)。於此處理程序中,其它區客端網路節點發送鏈路請求至該區客端網路節點52。鏈路請求指示發送區客端網路節點52所需個別即時資料串流集合的個別頻寬要求(參考如下§V.D.2)。串流交換管理器168比較建立所需直接連結需要的總頻寬與如頻寬監視器170(參考第8圖)所報告之目前區客端網路節點52可利用的下載頻寬。
若可用頻寬至少等於該總所需頻寬,則串流交換管理器168與提供所需即時資料串流資料之其它區客端節點建立直接連結(第12圖,方塊244)。於此處理程序中,通訊應用程式142及其相關聯之操作時間環境於區客端網路節點52及其它區客端網路節點54、56中之一者或多者與區伺服器64間形成配接容座(例如TCP配接容座或對效能而言為最佳化之特化即時配接容座)。典型所形成之配接容座包括用於各個即時資料串流類型,攜帶即時資料串流之一個配接容座及與相關聯之即時資料串流封包之發送與接收相關聯之攜帶即時資料串流之一個配接容座及攜帶控制資訊(例如服務品質資訊)之一個配接容座。通訊應用程式142處理與編碼即時資料串流,包括記錄該等資料串流且將其成像入客端使用者介面。舉例言之,本地產生的音訊資料、視訊資料及聊天資料典型經捕捉、編碼及封裝入封包(例如RTP封包),送出此網路58。
若可用頻寬係小於要求的頻寬(第12圖,方塊242),則串流交換管理器168檢查串流混合物表單194(參考第8圖)來判定提供所要求之即時資料串流資料之一串流混合物目前是否正在由區伺服器64所產生(第12圖,方塊246)。若可取得所需串流混合物,則串流交換管理器168與區伺服器64建立一連結,透過該連結,所需即時資料串流混合物之拷貝由區伺服器64發送至區客端網路節點52(第12圖,方塊248)。若無法取得所需串流混合物,則串流交換管理器168發送一串流混合物請求予區伺服器64(第12圖,方塊250)。
於若干實施例中,執行區客端串流交換管理器168之一項或多項功能。於此等實施例中,區伺服器64於網路節點52-54間建立一個或多個即時資料串流連結,此處網路節點52-56係與各自與一個或多個即時資料串流類型之來源點及匯集點中之至少一者相關聯之個別物件相關聯。區伺服器64根據第10圖及第12圖方法中之一者或二者,基於一項或多項交換規則、與物件相關聯之個別來源點及匯集點、及物件於虛擬區中之個別位置而建立一個或多個即時資料串流連結。
於若干實施例中,網路節點間之連結係於以下兩層建立:鏈路及通道。
於隨時有至少一串流直接由一個節點發送至另一個節點,於二網路節點間建立鏈路。鏈路典型為單向,且係由發送器所請求以及由接收器所接收或拒絕。若被拒絕,仍可經由與區伺服器(如此處所述為混合型或收發型)透過向上鏈接及向下鏈接(個別)可能進行通訊。鏈路表示由該二節點配置之用於即時通訊之完整頻寬。此項配置係基於可用的總網路頻寬、於給定時間期望之頻寬量、及鏈路數目動態判定。增加鏈路與拋棄鏈路為進行中之動態處理程序。於複合區內部移動或由一區移動至一區為鏈路連結及中斷連結於正在進行中之系統表現扮演重要角色之實例。
各鏈路被劃分成為攜帶個別即時資料串流的通道。通道已經配置予該鏈路之總頻寬內部之特定串流。通道頻寬可基於總鏈路頻寬及該鏈路內部之通道數目及通道優先順位之變化而動態改變。通道之活化或去活化提供可由一網路節點之鏈路層用來改變二節點間之期望頻寬之資訊。該資訊也可由節點間所共享來建立配置予該鏈路之頻寬位準。
由此等實施例所提供之連結框架允許發送網路節點及接收網路節點就各個節點之全部鏈路對頻寬的要求方面,做出有關於任何給定的時間與二節點間需要的如何使用串流集合之可用頻寬之動態決策。減少或增加語音通道之位元率,同時增加或減少對同時檔案傳輸或視訊饋進專用之頻寬量屬於此種做配置決策過程之實例。連結框架也允許接收網路節點基於一鏈路內部可用的通道頻寬,就伺服器混合物相對於個別串流發送作決策。
如視需要可藉虛擬區規格修改之系統設定值提供參數用於判定鏈路及通道之相對頻寬配置及串流類型及拓樸學之優先順位。由於此等可變要求及動態要求,一網路節點與一區伺服器(或其它高頻寬中間節點)間之上傳鏈路及下載鏈路典型對本地頻寬有高優先順位,原因在於此等鏈路可能須於多個節點間發送鏈路及通道。虛擬區設計者可形成由於該節點對鏈路、通道或二者之頻寬限制因而無法藉一給定節點執行操作之一虛擬區。
頻寬經常為稀有資源(相較於CPU時間、硬碟空間、圖形成像能力等)。節點連結之成層鏈路及鏈路內部之通道層,允許虛擬區設計者及系統行政管理者可控制涉及一項或多項即時對話之任何給定節點於頻寬飽和時如何回應。成層允許個別鏈路積極管理最小頻寬及最大頻寬。成層也提供控制哪些節點將接收鏈路(相對於要求透過區伺服器之連結)之選擇。
於一個具體實施例中,假設第一網路節點及第二網路節點係透過共享虛擬區通訊。第一節點及第二節點各自要求來自對方的語音串流及移動資料串流。為了滿足此項需求,第一節點及第二節點各自與區伺服器建立個別上傳鏈路,該鏈路被劃分成為一語音通道及一移動資料通道。區伺服器收發接收自第一網路節點及第二網路節點之語音串流,且混合其接收自該第一網路節點及第二網路節點之移動資料串流。區伺服器個別與第一及第二網路節點建立下載鏈路,且於個別下載鏈路中所配置之語音通道及移動資料通道中發送語音串流及移動資料串流。當第一節點及第二節點連結時,其可於檔案傳輸中接合,然後要求於鏈路中之新通道。若供合理資料傳輸速率使用之頻寬不足,則發送者將對較低品質語音對話降低其位元速率;經由該區伺服器鏈路收發檔案傳輸串流;或根據於第一及第二網路節點之個別系統設定值之邏輯電路、或由虛擬區規格所規定之表現來調整通道及鏈路。
若第三網路節點請求進入該虛擬區,第一及第二網路節點各自要求來自第三網路節點之語音串流及移動資料串流,當頻寬允許時,該第三網路節點將要求來自第一及第二網路節點各自之語音串流及移動資料串流。若無法取得最小量頻寬來由第三網路節點直接接收所需串流,則第一及第二網路節點將增加上傳至區伺服器之上傳鏈路頻寬、伺服器之下載鏈路頻寬或二者。另外,第一及第二網路節點將需要一種或多種伺服器混合物。若頻寬不足以達成虛擬區規格要求之全部連結,則可阻斷第三網路節點進入虛擬區,或第一節點及第二節點中之一者或二者可由即時對話中拋棄,於該種情況下,被拋棄的網路節點可能需要重試或透過更快速的網路連結來連結。
後來,當第三網路節點離開虛擬區時,第一、第二及第三網路節點各自需要中斷且釋放出配置予與第一網路節點連結之鏈路及頻寬,如此可能造成第一及第二網路節點重新配置可用頻寬予其間之鏈路。
於若干實施例中,於配置任何頻寬予第三網路節點前,第一及第二網路節點有能力排序其彼此間已經建立的鏈路之優先順序。於若干實施例中,虛擬區規格中之交換規則排序該等連結之優先順序。例如於若干虛擬區設計中,與某些角色屬性(例如調節者)相關聯之網路節點具有比其它網路節點更高的連結優先順位,因此經常允許鏈接至虛擬區。於其它虛擬區設計中,連結係以其個別之年齡排序,較老的連結之排序高於較年輕的連結。於此等虛擬區中,與最老的連結相關聯之節點將由通訊對話中最後拋棄。
第13圖顯示共享一虛擬區之多個網路節點間交換即時資料串流連結之方法之一說明性實施例,此處鏈路係透過前一章節所述之鏈路而建立。第13圖之方法典型係藉各網路節點之串流交換管理器168執行,該等節點為共享該虛擬區之其它網路節點要求之一個或多個即時資料串流之來源點。
對個別一個或多個接收網路節點,串流交換管理器168判定透過該鏈路發送一個或多個即時資料串流之個別發送集合之一個別鏈路,此處各個鏈路具有個別鏈路頻寬(第13圖,方塊440)。各鏈路典型為由個別發送網路節點至個別接收網路節點之個別單向鏈路。但於若干實施例中,鏈路中之一者或多者可為雙向(半雙工或全雙工)鏈路。
對各鏈路,串流交換管理器168分配個別鏈路頻寬於配置予個別發送集合中之一個或多個即時資料串流之一個或多個通道;及透過個別所分配之通道,於個別接收集合中之該等一個或多個即時資料串流發送予個別接收網路節點(第13圖,方塊442)。於若干實施例中,串流交換管理器168基於與個別接收網路節點相關聯之至少一項屬性所決定之數量來配置個別頻寬。屬性係與下列說明性屬性中之任一者相對應:虛擬區中由與該接收網路節點相關聯之化身所占據之位置;與該接收網路節點相關聯之鏈路優先順位位準;及分派予與該接收網路節點相關聯之化身之一角色識別符。於若干實施例中,個別鏈路頻寬之分配係基於與個別發送集合中之一個或多個即時資料串流相關聯之一個或多個串流優先順位位準。
於若干實施例中,對各鏈路而言,串流交換管理器168對個別發送集合中之一個或多個即時資料串流各自確定一個或多個個別頻寬位準;以及基於所確定的頻寬位準來配置個別鏈路頻寬予該鏈路。於若干實施例中,串流交換管理器168經由檢驗發送網路節點之系統位準設定值,且經由檢驗虛擬區規格中分派予於共享虛擬區各區段內部之任何串流類型之任何頻寬位準,可確定此等頻寬位準。各個即時資料串流類型典型係關聯至少一個系統層面的頻寬位準。舉例言之,各個區客端網路節點典型包括對語音串流提供不同壓縮位準之一語音編碼譯碼器、及對視訊串流提供不同壓縮位準之一視訊編碼譯碼器。此等編碼譯碼器各自具有一集合來提供由內設的低(例如較佳或目標)壓縮位準至高壓縮位準之個別壓縮位準範圍。虛擬區規格可對一個或多個即時資料串流類型各自規定一個或多個特殊區頻寬位準。此等位準包括較佳頻寬位準、最小頻寬位準、及較佳頻寬位準與最小頻寬位準間之一個或多個頻寬位準。
於若干實施例中,對各鏈路而言,串流交換管理器168對個別發送集合中之即時資料串流各自識別個別最小頻寬位準;以及由一個或多個已識別之個別最小頻寬位準求出個別鏈路頻寬位準。串流交換管理器168典型係回應於判定該鏈路之可用頻寬未能滿足個別最小鏈路頻寬位準要求歷經所界定的時間週期而拋棄任何鏈路。
於若干實施例中,對各個鏈路,串流交換管理器168對於個別發送集合中之一個或多個即時資料串流各自識別於個別較佳階層組織中之至少兩個個別頻寬位準,該階層組織係由個別第一較佳頻寬位準(例如內設頻寬位準)排序至個別第二較佳頻寬位準(例如最小頻寬位準)。串流交換管理器168至少部分基於所識別之第一較佳頻寬位準而求出個別目標鏈路頻寬位準;以及至少部分基於所識別之第二較佳頻寬位準而求出個別備用鏈路頻寬位準。對各個接收網路節點,串流交換管理器168嘗試於目標鏈路頻寬位準建立至個別網路節點之個別鏈路。於此處理程序中,串流交換管理器168比較目標鏈路頻寬位準與可用來發送個別發送集合之目前頻寬數量;接收網路節點也比較目標鏈路頻寬位準與可用來發送個別發送集合之目前頻寬數量。回應於未能於目標鏈路頻寬位準建立至接收網路節點之個別鏈路,串流交換管理器168嘗試於備用鏈路頻寬位準建立至接收網路節點之個別鏈路。
第14圖顯示前段所述實施例之具體實施。根據本具體實施例,串流交換管理器168對各鏈路(第14圖,方塊444)判定目前個別候選鏈路頻寬位準及一個或多個任選的備用候選鏈路頻寬位準(第14圖,方塊446)。串流交換管理器168嘗試於目前個別候選鏈路頻寬位準建立目前鏈路(第14圖,方塊448)。若建立鏈路(第14圖,方塊450),則串流交換管理器168處理下一個鏈路(第14圖,方塊444)。否則串流交換管理器168判定是否有任何其它候選鏈路頻寬位準可供目前鏈路利用(第14圖,方塊452)。若是,則串流交換管理器168改變目前個別候選鏈路頻寬位準成次一個較低鏈路頻寬位準(第14圖,方塊454),且嘗試於新的候選鏈路頻寬位準建立目前鏈路(第14圖,方塊448)。若不再有候選鏈路頻寬位準(第14圖,方塊452),則串流交換管理器168報告目前鏈路錯誤以及對下一條鏈路重複處理程序(第14圖,方塊444)。
回應於未能建立任何鏈路,該等鏈路導向其中的接收網路節點試圖於發送資料集合中拋棄至少一個任選的即時資料串流,致力於配合既有的頻寬限制。另外,此種接收網路節點可能嘗試建立鏈路,該鏈路透過由一個或多個其它網路節點所媒介之個別網路路由徑路來提供所需之即時資料串流資料。例如,接收網路節點可能請求來自於區伺服器64之一鏈路以未混合格式或以已混合格式提供所要求之即時資料串流資料。
於若干實施例中,鏈路可能安全。安全鏈路具有下列一項或多項保全性質:認證、完好及保密。經認證的鏈路使用認證技術(諸如分布作為公鑰基礎架構之一部分之評估憑證,諸如由凡瑞辛(Verisign)所提供之公鑰)來協助確定各個節點實際上連結至已知之另一個節點,而非冒充的節點。完好性技術(例如使用與SHA演繹法則相關聯之保全雜湊處理程序)用來確保可檢測得鏈路內容於發送與接收間之任何變化。保密技術(諸如於發送前以AES加密演繹法則加密鏈路內容,而於使用前基於共享金鑰來解密鏈路內容)協助確保竊聽者不易瞭解鏈路內容。此等技術可經選擇性組合來達成用於特定通訊對話所期望之保全性質。系統設定值及應用程式設計參數可經調整來考慮與建立保全鏈路相關聯之額外管理資料量。舉例言之,鏈路可維持於低(或甚至零)頻寬歷經較長時間以免頻寬變成可用時需要重建鏈路。
於§V.D.2中描述之串流交換管理器168已提升之鏈路管理功能可於任何運算環境或資料處理環境中,包括於數位電子電路(例如特殊應用積體電路,諸如數位信號處理器(DSP))或於電腦硬體、韌體、元件驅動器、或軟體中實施。於若干實施例中,此等功能係於專用硬體模組諸如網路配接器及網路交換器實施。此等模組之實施例可經組配來提供下列任一種已提升之鏈路管理功能之加速效能:鏈路的形成;鏈路的路由徑路;於由一給定網路節點發送之多條鏈路間之頻寬配置;及於一給定鏈路內部之多個通道間之頻寬管理。
第15圖顯示其中具有提升之鏈路管理功能之網路配接器462可操作之一說明性應用程式環境460。網路配接器462結合入主機系統464內部,包括通訊控制器466及媒體存取控制(MAC)介面468。網路配接器462於主機系統464與網路媒體470間變遷。網路媒體470為由主機系統464建立之一個或多個其它網路節點472之鏈路之實體媒體。電線、光纖及於自由空間之電磁波為網路媒體之三個說明性類型。
主機系統464及其它網路節點472各自可為連結至網路之任何類型裝置或系統(例如個人電腦、電腦工作站、網路交換器、網路中樞器、及網路中繼器)。主機通訊控制器466允許主機系統464共享接取網路媒體470。MAC介面468連結通訊控制器466至網路配接器462。MAC介面之一個說明例類型為媒體獨立介面(MII),其提供支援與並列通訊控制器466之通訊之一並列介面。MAC介面之另一個說明性類型為遵照IEEE 802.03之通用目的串列介面(GPSI),其支援與串列通訊控制器466之串列通訊。
第16圖顯示網路配接器462之一個實施例,其包括一主機介面埠474、一網路媒體介面埠476、一處理單元478、一收發器480、及一記憶體482。主機介面埠474可連結至MAC介面468。網路媒體介面埠476可連結至網路媒體470。於該具體實施例中,網路媒體介面埠476提供收發器480與網路媒體470間之實體介面。
處理單元478典型為執行MAC層功能之MAC處理單元,MAC層功能包括但非限於確保主機系統464及一個或多個其它網路節點472與使用正確框架格式及協定通訊。此外,處理單元478可操作來執行§V.D.2所述鏈路及通道管理功能。為了協助此等功能的執行,處理單元478於記憶體482內儲存虛擬區規格之拷貝484、鏈路表486、及通道表488。如本文解說,虛擬區規格484含有影響鏈路及通道之管理之下列參數值中之任一者:一串流類型之較佳的、最小的、及中間的頻寬位準;串流類型優先順位;串流處理拓樸學優先順位;及分派予與共享一虛擬區之多個網路節點相關聯之物件(例如化身)之角色識別符。鏈路表486含有與其它網路節點472所建立之目前鏈路表單,以及目前鏈路間之頻寬配置。通道表488對各目前鏈路含有配置予透過該鏈路發送之即時資料串流之個別通道表單,以及該鏈路內部之個別通道之頻寬配置。
第17圖顯示判定遞送所要求之資料串流資料至一區客端網路節點之即時資料串流連結之方法之實施例。於本處理程序中,區伺服器64判定可提供所要求之即時資料串流資料予區客端網路節點52之最佳串流處理拓樸學。
區伺服器64根據目前串流管理拓樸學來管理區客端網路節點間之連結(第17圖,方塊251)。就此方面而言,區伺服器64維持通用狀態資料包括虛擬區定義及全部化身及該虛擬區中其它物件之目前物件狀態資料。於此處理程序中,區伺服器64追蹤虛擬區中之物件;以及於若干實施例中,區伺服器64維持晚近歷史資料快取記憶體,其係用於該等區客端網路節點之即時同步化。區伺服器64也回應於物件之進入虛擬區、物件之離開虛擬區、及頻寬錯誤來重新評估連結。
回應於接收到來自一發出請求之區客端網路節點對即時資料串流資料的請求(第17圖,方塊262),區伺服器64發現於物件暫存器190(參考第8圖)中與物件相關聯之該等區客端網路節點之頻寬容量(第17圖,方塊254)。於若干實施例中,各個區客端網路節點動態地或週期性地發送其目前上傳頻寬容量及其目前下載頻寬容量予區伺服器64。
區伺服器64選定將即時資料串流資料遞送至該發出請求的區客端網路節點之一種即時資料串流處理拓樸學(第17圖,方塊256)。區伺服器64基於所發現的該等區客端網路節點之頻寬容量典型選定一拓樸學。於若干實施例中,區伺服器64選定一種串流處理拓樸學,其中發出請求的網路節點及其它網路節點接收最大數目之未經混合的即時資料串流。此等未經混合的即時資料串流允許該等區客端網路節點以較高品質及應用本地處理至該等串流之選項(例如音訊立體盤式處理或衰減器包封式處理中之一者或二者至更為實際地將化身置於立體聲環境中)來成像串流而達成更加浸沒式經驗或特殊應用目標(例如5.1音訊處理或特化化身移動)。
於若干實施例中,虛擬區規格對於虛擬區之一個或多個區段中之一個或多個即時資料串流類型規定串流屬性值。於此等實施例中,區伺服器64基於由虛擬區規格所規定之一個或多個串流屬性值而選定一串流處理拓樸學。於若干說明性虛擬區設計中,虛擬區規格分派一第一串流優先順位屬性值予一第一即時資料串流類型,且分派與該第一串流優先順位屬性值不同的一第二串流優先順位屬性值予一第二即時資料串流類型。例如於前文說明之第二COLLADA串流參考實例中,源自於StageZone且與「首席歌手(lead_singer)」角色屬性相關聯之語音串流被分派予優先順序位準1,而源自於AudienceZone之語音串流被分派優先順序位準2。有關此等虛擬區設計規格類型,區伺服器64嘗試選定串流處理拓樸學,該拓樸學係根據不同的第一及第二串流優先順位屬性值來不同地排序第一及第二即時資料串流類型之優先順位。例如有關第二COLLADA串流參考實例,面對頻寬利用性限制,區伺服器64將於形成且發送源自於StageZone之lead_singer語音串流之串流混合物之前,形成且發送源自於AudienceZone之語音串流之串流混合物。
於若干說明性區設計中,虛擬區規格將一第一串流拓樸學屬性值分派予一第一即時資料串流類型以及將與該第一串流拓樸學屬性值不同的一第二串流拓樸學屬性值分派予一第二即時資料串流類型。舉例言之,於前述第二COLLADA串流參考實例中,源自於StageZone且與lead_singer角色屬性相關聯之語音串流被分派「direct」之拓樸學屬性值;而源自於AudienceZone之聊天串流係關聯「server_mix」之拓樸學屬性值。至於此等虛擬區設計規格類型,區伺服器64嘗試根據不同的第一及第二串流拓樸學屬性值,對第一及第二即時資料串流類型選擇不同的串流處理拓樸學。例如,於某些情況下,區伺服器64對第一即時資料串流類型選定一串流處理拓樸學,該拓樸學係以混合串流格式將第一類型即時資料串流中之一者遞送至該給定之網路節點及其它網路節點中之一者或多者(例如源自於第二COLLADA串流參考實例中之AudienceZone之聊天串流);以及對第二即時資料串流類型選定一串流處理拓樸學,該拓樸學係以未混合的串流格式遞送第二類型即時資料串流中之一者至該給定網路節點及其它網路節點中之一者或多者(例如源自於StageZone且與第二COLLADA串流參考實例中之lead_singer角色屬性相關聯之語音串流)。
區伺服器64與區客端協調來重新將串流處理拓樸學組配成所選定之拓樸學(第17圖,方塊258)。於此處理程序中,區伺服器64與區客端協調來於該等區客端間建立一連結集合,以及視需要地,區伺服器64遞送所要求之資料串流資料至該發出請求之區客端網路節點。於某些情況下,區伺服器64對一個或多個即時資料串流發出個別請求予該等區客端,該資料串流將中繼至該發出請求之區客端網路節點,或與其它即時資料串流組合成一串流混合物,其將遞送要求之即時資料串流資料至該發出請求之區客端網路節點。
若所選定之拓樸學無需來自區伺服器64之串流(第17圖,方塊260),則區伺服器64根據目前串流處理拓樸學來管理多個區客端網路節點間之連結(第17圖,方塊251)。例如於某些情況下(例如參考第22圖),所選定之拓樸學直接由一個或多個區客端網路節點遞送所要求之即時資料串流資料至該發出請求之區客端網路節點,免除區伺服器64發送該資料之需求。
若所選定之拓樸學確實要求來自於區伺服器64之一串流(第17圖,方塊260),則該區由該串流混合物表單184(參考第8圖)判定是否可取得所要求之伺服器串流(亦即目前正在產生)(第17圖,方塊262)。所要求之伺服器串流可呈由其它區客端網路節點中之一者所來源之一即時資料串流的拷貝形式,或呈由區伺服器64正在接收自該提出請求之區客端網路節點以外之區客端網路節點中之一者所接收之二或多個即時資料串流目前正在產生之串流混合物形式。若可取得所要求之串流(第17圖,方塊262),則區伺服器64發送該所要求之伺服器串流之拷貝至該提出要求之區客端網路節點(第17圖,方塊270),且根據目前串流處理拓樸學管理該區客端連結(第17圖,方塊251)。
若無法取得所要求之串流(第17圖,方塊262),則區伺服器64獲得所要求之伺服器串流(第17圖,方塊264)。於此處理程序中,區伺服器64產生接收自其它區客端網路節點中之一者之一即時資料串流的拷貝;或可產生接收自提出請求之區客端網路節點以外之區客端網路節點中之一者之兩個或多個即時資料串流之串流混合物。若產生新的串流混合物(第17圖,方塊266),則區伺服器64更新串流混合物表單184(第17圖,方塊268),發送所要求之伺服器串流至該提出請求之區客端(第17圖,方塊270),且根據目前串流處理拓樸學管理該區客端連結(第17圖,方塊251)。若未產生新的串流混合物(第17圖,方塊266),則區伺服器64發送所要求之伺服器串流至該提出請求之區客端(第17圖,方塊270),且根據目前串流處理拓樸學管理該區客端連結(第17圖,方塊251)。
本章節說明可藉第17圖所示方法於方塊256中由區伺服器64選擇之串流處理拓樸學之一個說明例。
第18圖顯示即時資料串流處理拓樸學280之一個實施例,其中區伺服器64分別由區客端網路節點52-56接收即時資料串流集合282、284、286。此等資料串流集合282-286包括根據虛擬區規格及其位置,連結於虛擬區之多個物件所要求之全部即時資料串流。各個串流藉區客端52-56封包化成為封包。各個封包包括含有識別該封包來源之來源識別符欄位之一標頭、一序號、及其它資訊。
區伺服器64由所接收之資料串流集合282-286分別產生串流混合物集合288、290、292,此處各集合288-292包括個別區客端網路節點52-56中之一個別者所要求之即時資料串流類型(例如音訊、視訊、聊天、及移動資料)。於此處理程序中,區伺服器64以類型(例如視訊、音訊、聊天、移動資料、及控制)以及以來源識別符分離輸入的即時資料串流封包,以及藉序號而重新組裝封包。然後區伺服器64將同類型串流組合成為個別串流混合物,且發送個別串流混合物集合288-292至個別區客端網路節點52-56。
比較第19圖所示同層級拓樸學,拓樸學280減少各個區客端所要求之網路連結數目,因而減少各區客端及其網路之負載;但增加區伺服器64之負載。
第19圖顯示同層級即時資料串流處理拓樸學300之一個實施例,其中區客端網路節點52-56各自發送所要求之即時資料串流個別之拷貝至其它區客端網路節點52-56之各者。如此於第19圖舉例說明之實例中,區客端52發送第一串流集合302至區客端54,及發送第二串流集合304至區客端56;區客端54發送第一串流集合306至區客端52,及發送第二串流集合308至區客端56;以及區客端56發送第一串流集合310至區客端52,及發送第二串流集合312至區客端54。此等串流302-312包括根據虛擬區規格及其位置連結於共享虛擬區中之多個物件所要求之全部即時資料串流。各串流封包化成為封包,其各自包括含有識別該封包來源之來源識別符欄位之一標頭、一序號、及其它資訊。
區客端網路節點52-56對各個所要求之即時資料串流類型(例如音訊、視訊、聊天、及移動資料),由接收自其它區客端網路節點之即時資料串流產生一個別串流混合物。於此處理程序中,各區客端以類型(例如視訊、音訊、聊天、移動資料、及控制)以及以來源識別符分離輸入的即時資料串流封包,以及藉序號而重新組裝封包。然後各個區客端藉交互相關之時間戳記及來源點ID排序經重新組裝之封包串流,俾於成像期間維持即時資料串流間之同步。
拓樸學300之擴充性受區客端網路節點之重載上傳要求所限。如第19圖所示,當使用單播發送來發送所要求之即時資料串流時,拓樸學300也對網路造成重大負載。於若干實施例中,藉組配各個區客端網路節點52-56發送各個所要求之資料串流之單一個別群播發送至一個或多個交換器,該等交換器分配群播串流拷貝至其它網路節點,可減輕本地網路的負載。
第20圖顯示可減少四個區客端網路節點52-56與區客端網路節點322間之連結之同層級即時資料串流處理拓樸學320之實施例。於拓樸學320中,各個區客端網路節點52-56、322發送所要求之即時資料串流各自之拷貝至另兩個區客端網路節點52-56、322。如此於第20圖所示實例中,區客端52發送第一串流集合324至區客端56及第二串流集合326至區客端322;區客端54發送第一串流集合328至區客端322及第二串流集合330至區客端56;區客端56發送第一串流集合332至區客端52及第二串流集合334至區客端54;及區客端322發送第一串流集合336至區客端52及第二串流集合338至區客端54。此外,區客端52-56、322各自作為收發器交換器,其中繼接收自其它區客端中之一者之即時資料串流集合至區客端之另一者。特別,區客端52中繼來自區客端322之串流集合336之一拷貝340至區客端56;區客端54中繼來自區客端56之串流集合334之一拷貝342至區客端322;區客端56中繼來自區客端52之串流集合324之一拷貝344至區客端54;及區客端322中繼來自區客端54之串流集合328之一拷貝346至區客端52。此等串流集合324-346包括根據虛擬區規格及其位置連結於共享虛擬區中之多個物件所要求之全部即時資料串流。各串流封包化成為封包,其各自包括含有識別該封包來源之來源識別符欄位之一標頭、一序號、及其它資訊。
區客端網路節點52-56、322對各個所要求之即時資料串流類型(例如音訊、視訊、聊天、及移動資料),由接收自其它區客端網路節點之即時資料串流產生一個別串流混合物。於此處理程序中,各區客端以類型(例如視訊、音訊、聊天、移動資料、及控制)以及以來源識別符分離輸入的即時資料串流封包,以及藉序號而重新組裝封包。然後各個區客端藉交互相關之時間戳記及來源點ID排序經重新組裝之封包串流,俾於成像期間維持即時資料串流間之同步。
拓樸學320之擴充性受區客端網路節點之重載上傳要求所限。如第20圖所示,當使用單播發送來發送所要求之即時資料串流時,拓樸學320也對網路造成重大負載。於若干實施例中,藉組配各個區客端網路節點52-56、322發送各個所要求之資料串流之單一個別群播發送至一個或多個交換器,該等交換器分配群播串流拷貝至其它網路節點,可減輕本地網路的負載。
第21圖顯示sever媒介之即時資料串流處理拓樸學350,其中區伺服器64係作為於區客端網路節點52-56間中繼即時資料串流之一收發器交換器。於拓樸學350中,各個區客端網路節點52-56上傳個別所要求之即時資料串流集合352、354、356至區伺服器64,區伺服器64根據個別的需求而中繼所要求之上傳串流拷貝至區客端網路節點52-56。如此於第21圖所示實例中,區伺服器64發送由區客端52所上傳之串流集合352之個別拷貝358、360至各個其它區客端54、56;區伺服器64發送由區客端54所上傳之串流集合354之個別拷貝362、364至各個其它區客端52、56;以及區伺服器64發送由區客端56所上傳之串流集合356之個別拷貝366、368至各個其它區客端52、54。此等串流集合358-368包括根據虛擬區規格及其位置連結於共享虛擬區中之多個物件所要求之全部即時資料串流。各串流封包化成為封包,其各自包括含有識別該封包來源之來源識別符欄位之一標頭、一序號、及其它資訊。
區客端網路節點52-56對各個所要求之即時資料串流類型(例如音訊、視訊、聊天、及移動資料),由接收自區伺服器網路節點64之即時資料串流產生一個別串流混合物。於此處理程序中,各區客端以類型(例如視訊、音訊、聊天、移動資料、及控制)以及以來源識別符分離輸入的即時資料串流封包,以及藉序號而重新組裝封包。然後各個區客端藉交互相關之時間戳記及來源點ID排序經重新組裝之封包串流,俾於成像期間維持即時資料串流間之同步。
於若干實施例中,區伺服器64動態判定遞送一特化即時資料串流集合至一給定網路節點之一即時資料串流處理拓樸學。於此處理程序中,區伺服器64選擇一種拓樸學作為串流處理拓樸學,該拓樸學涉及經由一中心網路節點於第一集合之各個網路節點間交換即時資料串流,且透過直接同層級網路連結於第二集合之各個網路節點問交換即時資料串流。第一節點集合可能與第二節點集合不同。如前文說明,各個節點具有與該虛擬區中之一個個別位置相關聯之至少一個物件,以及具有一者或多者即時資料串流類型之來源點及匯集點中之至少一者。區伺服器64基於一項或多項交換規則及所判定之即時資料串流處理拓樸學,於該第一集合之多個網路節點間前傳即時資料串流封包。
第22圖顯示動態組合前述串流處理拓樸學之各元素之一種即時資料串流處理拓樸學370之一個實施例。特定言之,於第22圖所示說明性拓樸學中,區客端網路節點52-56經由同層級連結及伺服器媒介之連結之動態組合,接收即時資料串流,其中若有所需,區伺服器64係作為區客端網路節點間之收發器交換器。
於拓樸學370中,區客端網路節點52-56各自上傳所要求之即時資料串流集合372、374、376至區伺服器64。於第22圖舉例說明之實例中,區伺服器64中繼由區客端52所上傳之串流集合372之一拷貝378至區客端54;區伺服器64中繼由區客端54所上傳之串流集合374之一個別拷貝380、382至其它各個區客端52、56;及區伺服器64中繼由區客端56所上傳之串流集合376之一拷貝384至區客端54。此外,區客端52直接由區客端54接收所要求之串流集合386,及區客端56直接由區客端52接收所要求之串流集合388。此等串流集合378-388包括根據虛擬區規格及其位置連結於共享虛擬區中之多個物件所要求之全部即時資料串流。各串流封包化成為封包,其各自包括含有識別該封包來源之來源識別符欄位之一標頭、一序號、及其它資訊。
區客端網路節點52-56、322對各個所要求之即時資料串流類型(例如音訊、視訊、聊天、及移動資料),由接收自其它區客端網路節點之即時資料串流產生一個別串流混合物。於此處理程序中,各區客端以類型(例如視訊、音訊、聊天、移動資料、及控制)以及以來源識別符分離輸入的即時資料串流封包,以及藉序號而重新組裝封包。然後各個區客端藉交互相關之時間戳記及來源點ID排序經重新組裝之封包串流,俾於成像期間維持即時資料串流間之同步。
拓樸學370允許區客端網路節點52-56可利用之頻寬最佳化,因此區客端網路節點52-56接收最大數目之未經混合之即時資料串流。
第23圖顯示一共享虛擬區通訊環境400之一個實施例,該環境400包括區客端網路節點52-56、區伺服器網路節點64之一個實施例402、及一網路交換器404。共享虛擬區通訊環境400之各元素之結構及操作係與前文說明之共享虛擬區通訊環境之各元素之結構及操作相同,但下述除外,區伺服器64及客端通訊應用程式142(參考第7圖)中之至少一者之即時資料串流交換功能中之一者或多者已經結合入網路交換器404,允許網路交換器404根據前述方法中之一者或多者執行自動化即時資料串流交換。
網路交換器404為一種電腦網路裝置其包括一記憶體405、包括至少一個電腦處理器之一處理單元407、及網路交換器404經由該配接器而連結至區客端網路節點54、56及區伺服器402之一網路配接器403。於操作中,網路交換器404藉檢驗資料封包;判定封包來源;及前傳多個封包至其個別之目的地而連結網路節段。對各個封包,網路交換器將目的地硬體位址及來源硬體位址與網路節段及位址之表格作比較。若節段為相同則拋棄封包;否則網路交換器404前傳該封包至適當節段。網路交換器404典型係基於前傳表409其中含有封包前傳之較佳路由徑路而判定該封包將前傳之網路目的地。網路交換器404典型係經由應用路由演繹法則至一路由表411其中含有路由至網路交換器404附近之網路目的地之路由徑路來產生前傳表409。前傳表409及路由表411中之路由徑路典型係藉描述網路交換器404與網路目的地間之網路拓樸學之資訊規定。網路交換器404並未前傳不良封包或未排齊封包。網路交換器404可於OSI層中之一者或多者操作,該等OSI層包括實體層、資料鏈路層、網路層、及傳輸層。網路交換器404之說明性實施例包括但非限於網路交換器、網路路由器、及網路中樞器。
於若干實施例中,網路交換器404於共享虛擬區之多個網路節點間交換即時資料串流連結。網路配接器403由區伺服器402接收虛擬區規格406。虛擬區規格406包括一項或多項交換規則之說明,該等交換規則各自就於虛擬區之位置而界定個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之個別連結。電腦可讀取記憶體405儲存虛擬區規格406及路由表411及前傳表409中之一者或二者,此處各表409、411包括描述路由至網路目的地之路由徑路之網路拓樸學資訊。處理單元407於網路節點52-56中之二者或多者間前傳即時資料串流封包,此處各個網路節點52-56係與於虛擬區之個別位置及一個或多個即時資料串流類型之來源點及匯集點中之至少一者相關聯。處理單元407係基於網路拓樸學資訊及一項或多項交換規則而前傳一個或多個即時資料串流封包。
於若干實施例中,網路交換器執行區客端串流交換管理器168之一項或多項功能。於此等實施例中,處理單元407於網路節點52-54間建立一個或多個即時資料串流連結,此處網路節點52-56係與個別物件相關聯,該等物件各自係與即時資料串流類型中之一者或多者之來源點及匯集點中之至少一者相關聯。處理單元407根據第10圖及第12-14圖之方法中之一者及二者,基於一項或多項交換規則、與該等物件相關聯之個別來源點及匯集點、及物件於虛擬區之個別位置,建立一個或多個即時資料串流連結。
於若干實施例中,網路交換器404執行區客端網路節點之一項或多項功能。特別,網路交換器404執行區伺服器64(例如參考第8圖)之部分或全部即時資料串流交換功能。就此方面而言,網路交換器404由區伺服器64接收組態資料。組態資料包括虛擬區規格180之拷貝(參考第8圖)及物件暫存器182之拷貝(參考第8圖)。網路交換器404以虛擬區規格180之拷貝啟動本地虛擬區規格快取記憶體406,且以物件暫存器182之拷貝啟動本地物件暫存器408。定期地、回應於事件(例如化身移動)、或定期地及回應於物件二者,網路交換器404以基於接收自區客端52-56之移動資料來追蹤進入、離開虛擬區、及於虛擬區移動之通訊者的化身及其它物件之資訊來更新本地物件暫存器408。網路交換器404根據第17圖之方法,決定遞送所要求之資料串流資料至區客端網路節點52-56之即時資料串流連結。本處理程序包括判定提供所要求之即時資料串流資料予區客端網路節點52-56之最佳串流處理拓樸學。
於若干實施例中,網路交換器404動態判定遞送一特定即時資料串流集合予一給定網路節點之即時資料串流處理拓樸學。於本處理程序中,處理單元407選定一種拓樸學作為串流處理拓樸學,該拓樸學涉及經由一中心網路節點於第一集合中之網路節點間交換即時資料串流;以及透過直接同層級網路連結而於第二集合(典型係與第一集合不同)之網路節點間交換即時資料串流。如前文說明,各個網路節點係與虛擬區中之個別位置及即時資料串流類型中之一者或多者之來源點及匯集點中之至少一者相關聯。處理單元407基於一項或多項交換規則及所判定之即時資料串流處理拓樸學而於該第一集合之網路節點間前傳即時資料串流封包。
此處說明之實施例提供於一共享虛擬區通訊環境中交換即時資料串流連結之系統及方法。此等實施例允許用於經由一共享虛擬區通訊之多個網路節點間連結即時資料串流之交換規則明白遵照虛擬區之規格。此等實施例允許虛擬區設計者不僅控制虛擬區之形狀及外觀,同時也控制通訊者經由即時資料串流彼此連結之方式。此外,經由將自動交換規則結合於虛擬區之所在位置,比較基於虛擬區內部各物件之屬性及性質而建立及結束連結之系統,以及將信號處理功能與串流路由、連結及中斷連結功能交纏之系統,此等實施例可減少涉及連結通訊者節點及中斷連結之複雜度且提高系統的擴充性。
其它實施例係屬於申請專利範圍之範圍。
10...網路節點
12...顯示監視器
14...電腦滑鼠
16...鍵盤
18,70,172,174...揚聲器
22,178...麥克風
24...圖形使用者介面
26...指標器
28...共享三維虛擬區
30,32,34...化身
36-44,101-112...區段
50,62...共享虛擬區通訊環境
52,54,56...區伺服器網路節點、區客端網路節點、網路節點
58...通訊網路
60...虛擬區規格
64...區伺服器
66...來源點集合
68...匯集點集合
70...音訊來源點
72...視訊來源點
74...聊天來源點
76...移動資料來源點
78...「其它」來源點
80...音訊匯集點
82...視訊匯集點
84...聊天匯集點
86...移動資料匯集點
88...「其它」匯集點
90...圖形使用者介面
92...繪圖區
94...選單
96...工具列
98...Sococo區段選單
100...三維虛擬區、虛擬畫廊區
120...共享虛擬區通訊環境
122,407,484...處理單元
124...系統記憶體
126...系統匯流排
128...持久性儲存記憶體
130...輸入元件
132...顯示監視器
134...顯示控制器
136...網路配接器
140...作業系統
142...通訊應用程式
144...GUI驅動器
146...資料
148...登錄、組態資料庫
150...應用程式規劃介面(API)
152...網路傳輸協定集合
160...伺服器媒介之共享虛擬區通訊環境
162...通訊模組
164...三維視覺化引擎
165...聊天引擎
166...音訊處理引擎
168...串流交換引擎、串流交換管理器
170...頻寬監視器
171...電腦滑鼠
176...耳機
180...虛擬區目前規格、虛擬區規格
182...物件之目前暫存器、物件暫存器
184,194...串流混合物表單
186...介面資料
188...區段表單
190...物件暫存器
192...物件位置、目前物件位置資料庫
196...虛擬區規格資料
198...通訊者化身資料庫
200-230,240-250,251-270,440-454...方塊
232...鄰近區段
280...即時資料串流處理拓樸學
282-292...即時資料串流集合
300,320...同層級即時資料串流處理拓樸學
302-312,324-346,358-368,378-388...串流集合
322...區客端網路節點
340,342,344,346...串流集合拷貝
350...伺服器媒介之即時資料串流處理拓樸學
370...即時資料串流處理拓樸學
400...共享虛擬區通訊環境
402...區伺服器網路節點
403,462...網路配接器
404...網路交換器
405...記憶體、電腦可讀取記憶體
406...虛擬區規格
409...前傳表
411...路由表
460...應用程式環境
464...主機系統
466...通訊控制器
468...媒體存取控制器(MAC)介面
470...網路媒體
472...網路節點
474...主機介面埠
476...網路媒體介面埠
480...收發器
482...記憶體
484...虛擬區規格拷貝
486...鏈路表
488...通道表
第1圖為一網路節點之實施例之圖解視圖,包括呈現共享虛擬區之二維圖之圖形使用者介面。
第2A圖為一共享的虛擬區通訊環境之實施例之圖解視圖,其中網路節點係以同層級網路架構通訊。
第2B圖為一共享的虛擬區通訊環境之實施例之圖解視圖,其中網路節點係以伺服器媒介的架構通訊。
第3圖為一共享的虛擬區通訊環境之實施例之方塊圖,其包括三個網路節點之來源點與匯集點間之一說明性即時資料串流連結集合。
第4圖顯示一網路節點之實施例之方塊圖,其包括一說明性來源點集合及一說明性匯集點集合。
第5圖為一圖形使用者介面之實施例之圖解視圖,顯示一虛擬區之透視圖,該虛擬區包括與個別即時資料串流交換規則相關聯之區段。
第6圖為一圖形使用者介面之實施例之圖解視圖,顯示第5圖所示三維虛擬區之平面圖。
第7圖為於一共享虛擬區通訊環境之實施例中,連接至區伺服器網路節點之一區客端網路節點及另二區客端網路節點之一個實施例之方塊圖。
第8圖為第7圖所示共享虛擬區通訊環境之一個實施例之圖解視圖。
第9圖為由一區客端網路節點及一區伺服器網路節點所執行之一種方法之一實施例之流程圖。
第10圖為一種方法之一實施例之流程圖,藉該方法串流交換管理器實施例處理接收自一區伺服器之組態資料。
第11圖顯示第6圖所示虛擬區之平面圖,此處該虛擬區充斥四個化身物件。
第12圖為一種判定遞送所需資料串流資料至一區客端網路節點之即時資料串流連結之方法之一個實施例之流程圖。
第13圖為於共享一虛擬區之網路節點間交換即時資料串流連結之方法之一個實施例之流程圖。
第14圖為於共享一虛擬區之網路節點間交換即時資料串流連結之方法之一個實施例之流程圖。
第15圖為包括具有增強的鏈路管理功能之一網路配接器之一種主機系統之方塊圖。
第16圖為第15圖所示網路配接器之實施例之方塊圖。
第17圖為判定遞送所需資料串流資料至一區客端網路節點之一種或多種即時資料串流處理拓樸學之方法之一實施例之流程圖。
第18圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第19圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第20圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第21圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第22圖為一種即時資料串流處理拓樸學之一實施例之圖解視圖。
第23圖為一種共享虛擬區通訊環境之一實施例之方塊圖,其包括根據於虛擬區規格中界定之交換規則來管理即時資料串流連結之一種網路交換器之實施例。
52,54,56...區伺服器網路節點、網路節點
58...通訊網路
64...區伺服器
132...顯示監視器
160...伺服器媒介之共享虛擬區通訊環境
162...通訊模組
164...三維視覺化引擎
165...聊天引擎
166...音訊處理引擎
168...串流交換引擎
170...頻寬監視器
171...電腦滑鼠
172,174...揚聲器
176...耳機
178...麥克風
180...虛擬區目前規格、虛擬區規格
182...物件之目前暫存器、物件暫存器
184,194...串流混合物表單
186...介面資料
188...區段表單
190...物件暫存器
192...物件位置、目前物件位置資料庫
196...虛擬區規格資料
198...通訊者化身資料庫
Claims (89)
- 一種於共享一虛擬區之網路節點間交換即時資料串流連結之方法,其中其改良部分包含:基於包含一項或多項交換規則之說明之一虛擬區規格,該各項交換規則係就於虛擬區中之位置,界定個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之一個別連結;一電腦,其於與在該虛擬區中的個別物件關聯之網路節點間判定一項或多項即時資料串流連結,其中該等物件各自係與即時資料串流類型中之一者或多者之一來源點及一匯集點中之至少一者相關聯,且該判定係基於該一項或多項交換規則、與該等物件相關聯之個別來源點及匯集點、及該等物件於虛擬區之個別位置。
- 如申請專利範圍第1項之方法,其中:該虛擬區規格包含於該虛擬區中之一個或多個區段之說明;該等一項或多項交換規則係將一個或多個區段與(i)源自於該區段之個別即時資料串流類型及(ii)個別即時資料串流類型匯集於其中之個別區段相關聯;以及該判定包含關係一個或多個區段確定物件位置。
- 如申請專利範圍第2項之方法,其中該判定包含:識別由該等物件中之一給定者所占有之全部區段;及判定與所識別之區段相關聯之一項或多項交換規 則之即時資料串流類型之一目標集合。
- 如申請專利範圍第3項之方法,其中該判定包含確定排除該給定物件之該等物件中之一者係含於該等區段中之一者或多者,如藉該一項或多項交換規則所定義,於該目標集合中之即時資料串流類型中之一者係源自於該等區段,以及於該目標集合中之該等即時資料串流類型中之一者係匯集入該等區段;判定即時資料串流之一可連結集合,各個即時資料串流為下列中之至少一者:(i)源自於與經確定之物件相關聯之網路節點中之一者及多者及(ii)匯集入與經確定之物件相關聯之網路節點中之一者或多者;及基於與該即時資料串流之可連結集合相關聯之來源點與匯集點的匹配,判定一所要求之即時資料串流資料集合。
- 如申請專利範圍第1、2、3、或4項任何一項之方法,其中該等交換規則中之至少一者將一個別來源角色識別符關聯該等即時資料串流類型中之一給定者;以及該判定包含基於該來源角色識別符與個別與該給定之即時資料串流類型之來源點相關聯之一個或多個物件相關聯之角色識別符作比較,來建立該等即時資料串流連結中之一者或多者。
- 如申請專利範圍第1、2、3、或4項任何一項之方法,其中該等交換規則中之至少一者將一個別匯集角色識別符關聯該等即時資料串流類型中之一給定者;以及該判 定包含基於該匯集角色識別符與個別與該即時資料串流類型之匯集點相關聯之一個或多個物件相關聯之角色識別符作比較,建立該等即時資料串流連結中之一者或多者。
- 如申請專利範圍第1、2、3、或4項任何一項之方法,其中該判定額外係基於至少一項鄰近策略規則,該項規則只允許來源點中之一者與該虛擬區中位在彼此之規定距離以內之個別物件相關聯之匯集點中之可相容者連結。
- 如申請專利範圍第1、2、3、或4項任何一項之方法,進一步包含:維持一物件暫存器,其中該物件暫存器對該虛擬區中之各個物件,包含一個別物件識別符、允許與該物件相關聯之一網路節點建立網路連結之連結資料,及識別分別與該物件相關聯之全部即時資料串流來源點類型及匯集點類型之介面資料;發送該物件暫存器至該虛擬區中與物件相關聯之網路節點中之一者或多者。
- 如申請專利範圍第8項之方法,進一步包含:由該等網路節點中之一給定者接收介面資料,其中該介面資料對與該給定網路節點相關聯之各個物件,包含與該給定網路節點相關聯之全部即時資料串流來源點類型及即時資料串流匯集點類型之一表單;以接收自該給定網路節點之介面資料更新該物件 暫存器;以及發送已更新之物件暫存器至與該物件暫存器中所列舉之物件相關聯之一個或多個其它網路節點。
- 如申請專利範圍第1、2、3、或4項任何一項之方法,進一步包含遞送一特定即時資料串流資料集合至該等網路節點中之一給定者之一即時資料串流處理拓樸學,其中該虛擬區規格對該虛擬區之一個或多個區段中之一個或多個即時資料串流類型規定串流屬性值;以及該判定包含基於由該虛擬區規格所規定之一個或多個串流屬性值,選擇該即時資料串流處理拓樸學。
- 如申請專利範圍第10項之方法,其中該虛擬區規格將一第一串流優先順位屬性值分派予一第一即時資料串流類型,且將與該第一串流優先順位屬性值不同之一第二串流優先順位屬性值分派予一第二即時資料串流類型;以及該選擇包含選擇根據該不同的第一及第二串流優先順位屬性值,差異地排序該第一及第二即時資料串流類型之優先順位之拓樸學作為該串流處理拓樸學。
- 如申請專利範圍第10項之方法,其中該虛擬區規格將一第一串流優先順位屬性值分派予一第一即時資料串流類型,且將與該第一串流優先順位屬性值不同之一第二串流優先順位屬性值分派予一第二即時資料串流類型;以及該選擇包含根據不同之第一及第二串流拓樸學屬性值,為該第一及第二即時資料串流類型選擇不同的串流處理拓樸學。
- 如申請專利範圍第12項之方法,其中為該第一即時資料串流類型所選用之串流處理拓樸學以混合之串流格式,遞送該第一即時資料串流類型之即時資料串流中之一者予該給定之網路節點;以及為該第二即時資料串流類型所選用之串流處理拓樸學以未經混合之串流格式,遞送該第二即時資料串流類型之即時資料串流中之一者予該給定之網路節點。
- 如申請專利範圍第1、2、3、或4項任何一項之方法,進一步包含建立該等已判定的一或多個即時資料串流連結,其中該建立包含經由個別鏈路產生一個或多個即時資料串流連結,該等鏈路各自具有個別鏈路頻寬且攜帶一個或多個即時資料串流之個別傳送集合。
- 如申請專利範圍第14項之方法,其中該虛擬區規格分派一個或多個個別頻寬位準予一個或多個即時資料串流類型中之各者;以及該產生係基於由該虛擬區規格個別分派予該等一個或多個即時資料串流類型之一個或多個頻寬位準。
- 如申請專利範圍第15項之方法,其中該虛擬區規格分派個別最小頻寬位準予一個或多個即時資料串流類型中之各者;以及該產生包含基於由該虛擬區規格分別分派予該等一個或多個即時資料串流類型之一個或多個最小頻寬位準,為各個鏈路判定一個別最小鏈路頻寬位準;且只產生其個別鏈路頻寬符合所判定之個別最小鏈路頻寬位準之鏈路。
- 如申請專利範圍第15項之方法,其中: 該虛擬區規格將多數頻寬位準之一個別集合分派予一個或多個即時資料串流類型中之各者;以及該產生包含試圖產生該等鏈路中之一給定者於至少部分基於由該虛擬區規格所分派之頻寬位準所測定之第一候選鏈路頻寬位準;以及回應於未能形成該給定鏈路於該第一候選鏈路頻寬位準,嘗試產生該給定鏈路於至少部分基於由該虛擬區規格所分派之頻寬位準所測定之第二候選鏈路頻寬位準。
- 如申請專利範圍第14項之方法,其中:該虛擬區規格將一個別串流優先順位屬性值分派予一個或多個即時資料串流類型中之各者,以及該產生包含,對各個鏈路至少部分基於分別由該虛擬區規格分派予該等一個或多個即時資料串流類型之一個或多個串流優先順位屬性值,配置個別鏈路頻寬予個別發送集合中之該等一個或多個即時資料串流。
- 一種用於共享一虛擬區之網路節點間交換即時資料串流連結之裝置,其中其改良部分包含:一電腦可讀取記憶體其可操作以儲存包含一項或多項交換規則之說明之一虛擬區規格,各項交換規則係就於虛擬區中之位置,界定個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之一個別連結;及一處理單元係可操作以執行包含於與在該虛擬區中的個別物件關聯之網路節點間判定一項或多項即時 資料串流連結之操作,其中物件各自係與即時資料串流類型中之一者或多者之一來源點及一匯集點中之至少一者相關聯,且該處理單元係可操作以執行包含判定該等一項或多項即時資料串流連結之操作,該等操作係基於該等一項或多項交換規則、與該等物件相關聯之個別來源點及匯集點、及物件於虛擬區之個別位置。
- 如申請專利範圍第19項之裝置,其中:該虛擬區規格包含於該虛擬區中之一個或多個區段之說明;該等一項或多項交換規則係將一個或多個區段與(i)源自於該區段之個別即時資料串流類型及(ii)個別即時資料串流類型匯集於其中之個別區段相關聯;以及該處理單元係可操作以執行包含確定物件位置之操作,該等物件係與一或多個該等區段相關聯。
- 如申請專利範圍第19項之裝置,其中該處理單元可用來執行以下各項之操作:識別由該等物件中之一給定者所占有之全部區段;判定與所識別之區段相關聯之一項或多項交換規則之即時資料串流類型之一目標集合;確定除該給定物件之該等物件中之一者係含於該等區段中之一者或多者,如藉一項或多項交換規則所定義,於該目標集合中之即時資料串流類型中之一者係源自於該等區段,以及於該目標集合中之該等即時資料串流類型中之一者係匯集入該等區段; 判定即時資料串流之一可連結集合,各個即時資料串流為下列中之至少一者:(i)源自於與經確定之物件相關聯之網路節點中之一者及多者及(ii)匯集入與經確定之物件相關聯之網路節點中之一者或多者;及基於與該即時資料串流之可連結集合相關聯之來源點與匯集點的匹配,判定一所要求之即時資料串流資料集合。
- 如申請專利範圍第19、20或21項任何一項之裝置,其中該等交換規則中之至少一者將一個別角色識別符關聯該等即時資料串流類型中之一給定者;以及該處理單元基於將該角色識別符與個別與該給定之即時資料串流類型之至少一來源點相關聯之一個或多個物件相關聯之角色識別符作比較,以建立該等即時資料串流連結中之一者或多者。
- 一種儲存電腦可讀取指令之電腦可讀取媒體,該等指令當由一電腦執行時造成該電腦從事下列操作包含:基於包含一項或多項交換規則之說明之一虛擬區規格,各項交換規則係就於虛擬區中之位置,界定個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之一個別連結於與在該虛擬區中的個別物件關聯之網路節點間判定一項或多項即時資料串流連結,其中該等物件各自係與即時資料串流類型中之一者或多者之一來源點及一匯集點中之至少一者相關聯,且該判定係基於該一項或多項交換規則、與該等物件相關 聯之個別來源點及匯集點、及物件於虛擬區之個別位置。
- 一種用於共享一虛擬區之網路節點間交換即時資料串流連結之網路交換器,其中其改良部分包含:一電腦可讀取記憶體其可操作以儲存包含一項或多項交換規則說明之一虛擬區規格,各項交換規則係就於該虛擬區中之位置而界定一個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之一個別連結,其中該電腦可讀取記憶體額外可操作來儲存包含描述至網路目的地之路由徑路之網路拓樸學資訊之一表;以及一處理單元其可用以執行操作,該等操作係包含於各自與該虛擬區中之一個別位置相關聯之網路節點及一個或多個即時資料串流類型之一來源點及一匯集點中之至少一者間前傳即時資料串流封包,其中,於該前傳動作中,該處理單元係基於該網路拓樸學資訊及該一項或多項交換規則而執行包含前傳該等一個或多個即時資料串流封包之操作。
- 如申請專利範圍第24項之網路交換器,其中該處理單元可用以執行操作,該等操作係包含判定一即時資料串流處理拓樸學其遞送即時資料串流資料之一特定集合至該等網路節點中之一給定者,其中於判定該即時資料串流處理拓樸學中,該處理單元執行操作,該等操作係包括發現該給定網路節點及與該虛擬區中之物件相關聯 之其它網路節點中之一者或多者之頻寬容量,以及基於所發現之頻寬容量來選擇該串流處理拓樸學。
- 一種組成一虛擬區之方法,其中其改良部分包含:回應於使用者之輸入,於一顯示監視器中產生該虛擬區之一模型,其中該模型包含呈現於該顯示監視器之該虛擬區的幾何形狀元素;回應於使用者之輸入將該一項或多項交換規則與該虛擬區之模型關聯,其中該等交換規則各自就於該虛擬區中之位置,界定一個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之一個別連結;產生描述該虛擬區模型及該等一項或多項相關聯之交換規則之一虛擬區規格;以及將該虛擬區規格儲存於一電腦可讀取儲存媒體。
- 一種於共享一虛擬區之網路節點間交換即時資料串流連結之方法,其中該等網路節點中之各者和一或多個即時資料串流類型之一來源點與一匯集點中之至少一者相關連,其改良部分包含:確定一即時資料串流集合,各個該即時資料串流係唯一地源自於該等來源點之一個別一者,及遞送該即時資料串流集合至與該虛擬區中之一個別位置相關聯之網路節點中之給定者之至少一匯集點,來致動該給定之網路節點以參與與該虛擬區中個別位置相關聯之網路節點中之一個或多個其它者之通訊對話;至少部分基於該給定網路節點之頻寬容量,判定遞 送該即時資料串流集合至該給定之網路節點之一個或多個即時資料串流連結;以及於該給定網路節點與該等網路節點中其他一個或多個節點間建立該等一個或多個已判定的即時資料串流連結。
- 如申請專利範圍第27項之方法,其中該判定包含判定其中接收各個即時資料串流之一個別形式,其中已判定之即時資料串流各自係呈未經混合之即時資料串流形式,或呈由其它網路節點中之一者所發送之即時資料串流之組合物所導出之一混合型即時資料串流形式。
- 如申請專利範圍第27項之方法,其中該判定包含判定一網路路由徑路,該網路路由徑路係為供憑以來接收各個即時資料串流者,其中已判定的網路路由徑路為一直接同層級網路路由徑路或由其它網路節點中之一者或多者所媒介之一網路路由徑路。
- 如申請專利範圍第27項之方法,進一步包含儲存包含一項或多項交換規則之說明之一虛擬區規格,各規則係就於該虛擬區中之位置,界定於一個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之一個別連結,其中該確定及該判定中之至少一者係基於該等交換規則。
- 如申請專利範圍第27項之方法,進一步包含將由發送自其它網路節點中之一者之即時資料串流所導出的一個或多個混合型即時資料串流之一表單發送予該給定的 網路節點。
- 如申請專利範圍第27項之方法,其中該判定包含發現其它網路節點中之一者或多者之頻寬容量且基於所發現之頻寬容量而選定一個或多個即時資料串流連結,且該建立包含建立該等一個或多個經選定的即時資料串流連結。
- 如申請專利範圍第27項之方法,其中更包含在該等一個或多個已建立之即時資料串流連結上交換即時資料串流,其中該交換包含經由一中心網路節點,於一第一集合中之網路節點間交換即時資料串流;以及透過直接同層級網路連結而於一第二集合中之網路節點間交換即時資料串流。
- 如申請專利範圍第27項之方法,其中該交換包含將包含所請求之即時資料串流資料且係由其它網路節點中之一者發送之即時資料串流所導出之一混合型即時資料串流發送至該給定的網路節點。
- 如申請專利範圍第27項之方法,其中該判定包含判定該等一個或多個即時資料串流連結,其遞送該即時資料串流集合至該給定的網路節點及最大化未經混合之即時資料串流遞送至該給定網路節點,且已判定的最大化未經混合之即時資料串流遞送之該等一個或多個即時資料串流連結係為建立的該等一個或多個即時資料串流連結。
- 一種用於共享一虛擬區之網路節點間交換即時資料串 流連結之裝置,其中該等網路節點中之各者和一或多個即時資料串流類型之一來源點與一匯集點中之至少一者相關連,而其改良部分包含:儲存電腦可讀取指令之一電腦可讀取記憶體;及耦接至該記憶體之一資料處理單元,其可操作來執行該等指令,且至少部分基於指令之執行可操作而從事下列操作包含確定一即時資料串流集合,各個該即時資料串流係唯一地源自於該等來源點之一個別一者,及遞送該即時資料串流集合至與該虛擬區中之一個別位置相關聯之網路節點中之給定者之至少一匯集點,來致動該給定之網路節點以參與與該虛擬區中個別位置相關聯之網路節點中之一個或多個其它者之通訊對話,至少部分基於該給定網路節點之頻寬容量,判定遞送該即時資料串流集合至該給定之網路節點之一個或多個即時資料串流連結,以及於該給定網路節點與該等網路節點中之一個或多個其它者間建立該等一個或多個已判定的即時資料串流連結。
- 一種用於共享一虛擬區之網路節點間交換即時資料串流連結之儲存電腦可讀取指令之電腦可讀取媒體,其中該等網路節點中之各者和一或多個即時資料串流類型之一來源點與一匯集點中之至少一者相關連,而其改良部分包含該電腦可讀取指令可操作而造成一電腦從事 下列操作包含:確定一即時資料串流集合,各個該即時資料串流係唯一地源自於該等來源點之一個別一者,及遞送該即時資料串流集合至與該虛擬區中之一個別位置相關聯之網路節點中之給定者之至少一匯集點,來致動該給定之網路節點以參與與該虛擬區中個別位置相關聯之網路節點中之一個或多個其它者之通訊對話;至少部分基於該給定網路節點之頻寬容量,判定遞送該即時資料串流集合至該給定之網路節點之一個或多個即時資料串流連結;以及於該給定網路節點與該等網路節點中之一個或多個其它者間建立該等一個或多個已判定的即時資料串流連結。
- 一種於共享一虛擬區之網路節點間交換即時資料串流連結之方法,其中其改良部分包含:對該等網路節點中之一個或多個接收者各自判定透過該鏈路將發送多個即時資料串流之一個別發送集合之一個別鏈路,其中該等鏈路各自具有個別鏈路頻寬;及對各鏈路,於分別配置予該個別發送集合中之該等多個即時資料串流之多個通道間分配個別鏈路頻寬,以及透過個別所配置之通道發送於該個別發送集合中之該等多個即時資料串流至該個別接收網路節點。
- 如申請專利範圍第38項之方法,其中該判定包含對各個 鏈路,對於該個別發送集合中之該等多個即時資料串流各自確定多個個別頻寬位準,且基於已確定的頻寬位準來配置個別頻寬位準予該鏈路。
- 如申請專利範圍第39項之方法,其中對各鏈路該確定包含對該個別發送集合中之該等即時資料串流各自識別個別最小頻寬位準,及由該等已識別的個別最小頻寬位準,算出個別最小鏈路頻寬位準。
- 如申請專利範圍第40項之方法,進一步包含回應於判定該鏈路可用的頻寬未能滿足該個別最小鏈路頻寬位準而拋棄任何鏈路。
- 如申請專利範圍第39項之方法,其中對各鏈路該確定包含對個別發送集合中之一個或多個即時資料串流各自以由個別第一較佳頻寬位準至個別第二較佳頻寬位準排序之個別較佳階層組織,識別至少兩個個別頻寬位準,及至少部分基於所識別之第一較佳頻寬位準而算出一個別目標鏈路頻寬位準,以及至少部分基於所識別之第二較佳頻寬位準而算出一個別備用鏈路頻寬位準。
- 如申請專利範圍第42項之方法,其中該判定包含對各個接收網路節點,嘗試於該目標鏈路頻寬位準建立個別鏈路至該接收網路節點,及回應於未能建立於該目標鏈路頻寬位準至該接收 網路節點之個別鏈路,試圖建立於該備用鏈路頻寬位準至該接收網路節點之該個別鏈路。
- 如申請專利範圍第43項之方法,其中該嘗試包含比較該目標鏈路頻寬位準與可用於發送個別發送集合之目前頻寬量及可用於個別接收網路節點之目前頻寬量二者。
- 如申請專利範圍第38項之方法,其中該判定包含對各個接收網路節點,嘗試於一個別候選的鏈路頻寬位準建立該個別鏈路至該接收網路節點,及回應未能在該個別候選的鏈路頻寬位準建立該個別鏈路至該接收網路節點,拋棄於該發送資料集合中之至少一個任選的即時資料串流。
- 如申請專利範圍第38項之方法,其中該判定包含對各個接收網路節點,嘗試於一個別候選的鏈路頻寬位準建立該個別鏈路至該接收網路節點,及回應未能在該個別候選的鏈路頻寬位準建立該個別鏈路至該接收網路節點,透過由其它網路節點中之一者或多者所媒介之一網路路由徑路,建立用以發送於個別發送集合中之該等一個或多個即時資料串流至該接收網路節點之一鏈路。
- 如申請專利範圍第38項之方法,其中該判定包含對各個接收網路節點,嘗試於一個別候選的鏈路頻寬位準建立該個別鏈 路至該接收網路節點,及回應在該個別候選的鏈路頻寬位準未能建立該個別鏈路至該接收網路節點,以由該等網路節點中之其它者所發送之即時資料串流組合物所導出之一個或多個混合型即時資料串流形式,建立遞送於個別發送集合中之該等一個或多個即時資料串流至該接收網路節點之一鏈路。
- 如申請專利範圍第38項之方法,其中該判定包含對各鏈路以基於與個別接收網路節點相關聯之一屬性而判定之數量配置個別鏈路頻寬至該個別發送集合之該等多個即時資料串流。
- 如申請專利範圍第38項之方法,其中對各鏈路,於該個別發送集合中分別配置於該多個即時資料串流之該多個通道間之個別鏈路頻寬之分配係基於與個別發送集合中之一個或多個即時資料串流個別相關聯之一個或多個串流優先順位位準。
- 如申請專利範圍第38項之方法,其中該等鏈路為由發送個別發送集合之該等網路節點之個別者至該等接收網路節點之個別者之一個別單向鏈路。
- 一種用於共享一虛擬區之網路節點間交換即時資料串流連結之裝置,其中其改良部分包含:儲存電腦可讀取指令之一電腦可讀取記憶體;及耦接至該記憶體之一資料處理單元,其可操作來執行該等指令,且至少部分基於指令之執行可操作而從事 下列操作包含對該等網路節點中之一個或多個接收者各自判定透過該鏈路將發送多個即時資料串流之一個別發送集合之一個別鏈路,其中該等鏈路各自具有個別鏈路頻寬,及對各鏈路,於分別配置予該個別發送集合中之該等多個即時資料串流之多個通道間分配個別鏈路頻寬,以及透過個別所配置之通道發送於該個別發送集合中之該等多個即時資料串流至該個別接收網路節點。
- 一種用於共享一虛擬區之網路節點間交換即時資料串流連結之儲存電腦可讀取指令之電腦可讀取媒體,其中其改良部分包含該電腦可讀取指令可操作而造成一電腦從事下列操作包含:對該等網路節點中之一個或多個接收者各自判定透過該鏈路將發送多個即時資料串流之一個別發送集合之一個別鏈路,其中該等鏈路各自具有個別鏈路頻寬;及對各鏈路,於分別配置予該個別發送集合中之該等多個即時資料串流之多個通道間分配個別鏈路頻寬,以及透過個別所配置之通道發送於該個別發送集合中之該等一多個即時資料串流至該個別接收網路節點。
- 一種用於共享一虛擬區之網路節點間交換即時資料串流連結之網路配接器,其中其改良部分包含: 儲存電腦可讀取指令之一電腦可讀取記憶體;及耦接至該電腦可讀取記憶體之一處理單元,其可操作來執行該等指令,且至少部分基於指令之執行可操作而從事下列操作包含對該等網路節點中之一個或多個接收者各自判定透過該鏈路將發送多個即時資料串流之一個別發送集合之一個別鏈路,其中該等鏈路各自具有個別鏈路頻寬;及對各鏈路,於分別配置予該個別發送集合中之該等多個即時資料串流之多個通道間分配個別鏈路頻寬,以及透過個別所配置之通道發送於該個別發送集合中之該等多個即時資料串流至該個別接收網路節點。
- 如申請專利範圍第27項之方法,其中該確定、該判定、及該建立係由該給定網路節點所執行。
- 如申請專利範圍第27項之方法,其中該判定、該分配、及該發送係由該等網路節點之一給定網路節點所執行。
- 如申請專利範圍第38項之方法,其中該等一個或多個發送集合之每個集合包含不同串流內容型態之並行資料串流。
- 如申請專利範圍第38項之方法,其中該等一個或多個發送集合之每個集合包含一音訊資料串流及一並行非音訊資料串流。
- 如申請專利範圍第38項之方法,進一步包含對每一個該 等鏈路,分割該鏈路為個別通道並配置該等個別通道中每個個別通道給該個別發送集合之該等即時資料串流之一不同者。
- 如申請專利範圍第38項之方法,其中對每一個該等鏈路,該確定包含,對該個別發送集合中之該即時資料串流之一個或多個中之每個即時資料串流,識別至少兩個在一個別較佳階層裡的個別頻寬層級,該個別較佳階層組織係從一個別第一較佳頻寬位準至一個別第二較佳頻寬位準排序;以及基於至少部分該等已識別的第一較佳頻寬位準計算一個別目標鏈路頻寬層級以及基於至少部分該等已識別的第二較佳頻寬位準計算一個別備用鏈路頻寬位準。
- 如申請專利範圍第59項之方法,其中,針對每個該等接收網路節點,該判定包含以下步驟:嘗試在該目標鏈路頻寬位準建立該個別鏈路至該接收網路節點;以及回應未能在該目標鏈路頻寬位準建立該個別鏈路至該接收網路節點,試圖在該備用鏈路頻寬位準建立該個別鏈路至該接收網路節點。
- 如申請專利範圍第60項之方法,其中該嘗試包含將該目標鏈路頻寬位準與可用以發送該個別發送集合的一頻寬流量及可用於該個別接收網路節點的一頻寬流量兩者做比較。
- 如申請專利範圍第38項之方法,其中該等一個或多個發 送集合之每個集合包含不同串流內容型態之即時資料串流。
- 如申請專利範圍第38項之方法,其中該等一個或多個發送集合之每個集合包含一即時音訊資料串流及一即時非音訊資料串流。
- 如申請專利範圍第38項之方法,對每個該等鏈路,進一步包含分割該鏈路為個別通道並配置該等個別通道中每個個別通道給該個別發送集合之該等即時資料串流之一不同串流。
- 一種資料串流傳送方法,其包含下列步驟:從一第一網路節點至一第二網路節點建立具有一鏈路頻寬之一網路鏈路;在多數通道間分配該鏈路頻寬,該等多數通道係由資料串流內容型態劃分該網路鏈路;以及根據該等資料串流的內容型態在該等通道之個別通道的該網路鏈路上從該第一網路節點發送資料串流至該第二網路節點;其中該第一和第二節點包含資料串流之個別來源點和匯集點,且該分配和該發送之實行係基於一虛擬區規格,該虛擬區規格包含一項或多項交換規則之一說明,該各項交換規則係就於與該第一和第二網路節點並行連結之處相連的虛擬區中之位置,界定個別即時資料串流類型之來源點與該即時資料串流類型之匯集點間之一個別連結。
- 如申請專利範圍第65項之方法,其中每一個該第一及第二網路節點與在該虛擬區中一個別位置相關連,且該分配係基於該交換規則及在虛擬區中與該第一和第二網路節點相關連之該等位置來執行。
- 如申請專利範圍第65項之方法,其中:該虛擬區規格指明一個或多個所需資料串流類型;以及在一藉由該第一及第二網路節點與在虛擬區中個別位置之關聯所定義的上下文裡,該分配包含分配在一個或多個該等通道間的該鏈路頻寬,該等通道分別指定來用以攜載該等一個或多個所需資料串流型態,而該發送包含在一個或多個通道中之該網路鏈路上發送該等一個或多個所需資料串流型態之一個或多個資料串流,該等通道分別指定來用以攜載該等一個或多個所需資料串流型態。
- 如申請專利範圍第65項之方法,其中該虛擬區根據資料串流內容型態指明一個或多個參數值,該等參數值描述了資料串流之發送特徵,以及該分配包含基於該一個或多個參數值來配置該等通道間的該鏈路頻寬。
- 如申請專利範圍第68項之方法,其中該虛擬區規格指明資料串流優先值,該等資料串流優先值係藉資料串流內容型態來給予該等資料串流優先權;以及該配置包含基於該資料串流優先值來配置該等通道間之該鏈路頻寬。
- 如申請專利範圍第68項之方法,其中該虛擬區規格指明 了用於一特定資料型態的資料串流之傳輸的一個別傳輸品質參數值,以及該配置包含基於該傳輸品質參數值來配置該等通道間之該鏈路頻寬。
- 如申請專利範圍第68項之方法,其中該虛擬區規格指明了用於一特定資料型態的資料串流之傳輸的一個別最小頻寬參數值,以及該配置包含基於該最小頻寬參數值來配置該等通道間之該鏈路頻寬。
- 如申請專利範圍第71項之方法,其中該分配包含改變個別地分配至該等通道之中的該鏈路頻寬之量以回應一判定,該判定係為配置於該特定內容型態的該等通道之一個別通道的頻寬不符合該個別頻寬要求。
- 如申請專利範圍第65項之方法,其中在連結至該虛擬區的一第三網路節點的一上下文中,該建立包含配置可用頻寬,其介於自該第一網路節點至該第二網路節點的該網路鏈路與自該第一網路節點至該第三網路節點的一第二網路鏈路之間,藉此,自該第一網路節點至該第二網路節點的該網路鏈路具有一第一鏈路頻寬且該第二網路鏈路具有一第二鏈路頻寬,以及該分配包含重新分配該等多數通道間的該第一鏈路頻寬,及分配藉資料串流內容型態來分割該第二網路鏈路的多數通道間之該第二鏈路頻寬。
- 如申請專利範圍第73項之方法,其中該建立包含從一第四網路節點資料作要求以回應一判定,該第四網路節點 資料係對應於出自一第三網路節點的一個或多個資料串流,該判定係為配置於該第二鏈路頻寬不足夠以攜載由該虛擬區規格所要求的一組資料串流。
- 如申請專利範圍第74項之方法,其中該建立包含以該第四網路節點建立一個別網路鏈路以接收在一個別通道上之一個別混合資料串流,該個別通道係針對一特別內容型態來做配置,其中該混合資料串流對應於該特定資料串流內容型態的資料串流之一混合,該特定資料串流內容型態係接收自該等第一、第二、及第三網路節點。
- 如申請專利範圍第73項之方法,其中在與該虛擬區斷開的該第三網路節點之一上下文中,該建立包含釋放該第二鏈路及重新配置自該第一網路節點至該第二網路節點之該網路鏈路間的可用頻寬,藉此,自該第一網路節點至該第二網路節點之該網路鏈路具有一第三鏈路頻寬,以及該分配包含重新分配介於該等通道之間的該第三鏈路頻寬,該等通道分割自該第一網路節點至該第二網路節點的該網路鏈路。
- 如申請專利範圍第73項之方法,其中該虛擬區規格係基於使用者角色屬性來排出網路節點間之連結之優先順序,以及該建立係基於與溝通者個別相關聯的角色屬性來執行,該溝通者係個別從該等第二和第三網路節點運作。
- 一種資料串流傳送方法,其包含以下步驟: 確定個別為網路節點所需之資料串流內容型態以於一分享空間上下文中做傳輸,該分享空間上下文係基於下列各項由一虛擬區來定義:在該虛擬區的該等網路節點之個別位置與個別與該等網路節點相關聯之不同資料串流內容型態的個別來源點及匯集點;判定一資料串流處理拓撲,其傳送經確定之該等資料串流內容型態的資料串流以於該分享空間上下文中做傳輸,該等資料串流型態個別為該等網路節點所需,該分享空間上下文係至少部分基於一個或多個該等網路節點之個別頻寬能力,其中藉該資料串流處理拓撲傳送的該等資料串流係由藉該等來源點之個別來源點所產生的資料來取得,且傳送至該等匯集點之個別匯集點;以及依據該資料串流處理拓撲,發送資料以使該等網路節點間之網路連結被建立。
- 如申請專利範圍第78項之方法,其中針對每個經傳送的該等資料串流,該判定包含選擇下列任一者:由該等來源點之多個來源點所產生的資料來取得的一混合資料串流格式,或由該等來源點之單一個來源點所產生的資料來取得的一未混合資料串流格式。
- 如申請專利範圍第78項之方法,其中針對由藉該等匯集點之一個別匯集點所產生的資料來取得的每個資料串流,該判定包含選擇經取得的該等資料從下列任一者傳送至該等匯集點中一個別匯集點之路線:一直接點對點 網路路線或一間接網路路線,該間接網路路線係藉包含該個別來源點及該個別匯集點的該等網路節點以外的一個或多個網路節點間接傳遞。
- 如申請專利範圍第78項之方法,其中該判定包含改變該資料串流處理拓撲以回應一個或多個該等網路節點的該等個別頻寬能力之改變。
- 如申請專利範圍第1、2、3、或4項任何一項方法,其中該等一個或多個交換規則中至少一個依據用於指明在該虛擬區中不同位置的一系統來定義介於一個別即時資料串流型態的來源點與該即時資料串流型態的匯集點間之個別連結。
- 如申請專利範圍第1、2、3、或4項任何一項方法,其中該等一個或多個交換規則中至少一個係就在多維座標系統中的位置來定義介於一個別即時資料串流型態的來源點與該即時資料串流型態的匯集點間之個別連結。
- 如申請專利範圍第83項之方法,其中該建立係基於關於該多維座標系統所定義的該等物件之個別位置。
- 如申請專利範圍第1、2、3、或4項任何一項方法,其中該等物件係在虛擬區中代表個別溝通者的化身。
- 如申請專利範圍第1、2、3、或4項任何一項方法,進一步包含:從該電腦至該等網路節點之一第一節點,發送用以建立該等一個或多個即時資料串流連結之資料,該等即時資料串流連結係介於該第一網路節點與一該等網路 節點之一第二節點之間。
- 如申請專利範圍第1、2、3、或4項任何一項方法,其中:該虛擬區規格包含在該虛擬區中區域的描述;該等交換規則將下列各項與每個該等區域做連結:(i)出自該區域的一個別即時資料串流型態,及(ii)匯集該個別即時資料串流型態的該等區域之一個別區域;以及該建立包含確定關於該等區域之該等第一及第二物件的位置,且基於經確定的該等位置來判定該等一個或多個即時資料串流連結。
- 如申請專利範圍第1、2、3、或4項任何一項方法,其中該虛擬區規格包含一第一交換規則的說明及一第二交換規則的說明,該第一交換規則的說明定義了在一第一即時資料串流型態的來源點與該第一即時資料串流型態的匯集點間的一個別連結;該第二交換規則的說明定義了在一第二即時資料串流型態的來源點與該第二即時資料串流型態的匯集點間的一個別連結,且該等第一和第二即時資料串流型態是不同的。
- 一種運算裝置,該裝置係組配來執行包含以下步驟之操作:從一伺服器網路節點接收用以建立一個或多個即時資料串流連結的資料,該等即時資料串流連結係介於由一虛擬區之一第一物件所代表之該裝置與該虛擬區中一第二物件所代表的一網路節點間,其中該等第一及 第二物件中每個物件個別關連於一個或多個該等即時資料串流型態的一來源點和一匯集點中至少一個,從該伺服器網路節點接收的該等資料根據下列各項由該裝置控制該等一個或多個即時資料串流連結的交換:個別與該虛擬區中該等第一及第二物件相關連的該等來源點及匯集點、該虛擬區中該等第一及第二物件的個別位置、和一個或多個交換規則,且該等交換規則之各者係就該虛擬區中的位置來定義該即時資料串流型態之一個別型態的來源點與該即時資料串流型態之一個別型態的匯集點間的一個別連結;以及建立該裝置與該網路節點間該等一個或多個即時資料串流連結。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/923,629 US7769806B2 (en) | 2007-10-24 | 2007-10-24 | Automated real-time data stream switching in a shared virtual area communication environment |
US11/923,634 US7844724B2 (en) | 2007-10-24 | 2007-10-24 | Automated real-time data stream switching in a shared virtual area communication environment |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200924460A TW200924460A (en) | 2009-06-01 |
TWI492592B true TWI492592B (zh) | 2015-07-11 |
Family
ID=44729014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW097140447A TWI492592B (zh) | 2007-10-24 | 2008-10-22 | 在共享虛擬區通訊環境中之自動化即時資料串流交換技術 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI492592B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI394451B (zh) * | 2009-08-24 | 2013-04-21 | Kcs Digital Inc | 影音裝置設定方法及系統 |
CN107024982A (zh) * | 2016-12-09 | 2017-08-08 | 阿里巴巴集团控股有限公司 | 一种虚拟现实设备的安全监控方法、装置及虚拟现实设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1055261A (ja) * | 1996-08-08 | 1998-02-24 | Nippon Telegr & Teleph Corp <Ntt> | 3次元仮想空間音通信方法とその装置 |
US20030055898A1 (en) * | 2001-07-31 | 2003-03-20 | Yeager William J. | Propagating and updating trust relationships in distributed peer-to-peer networks |
JP2004343779A (ja) * | 2000-07-28 | 2004-12-02 | Sony Computer Entertainment Inc | 情報提供システム、方法及びコンピュータプログラム |
US20050004995A1 (en) * | 2003-07-01 | 2005-01-06 | Michael Stochosky | Peer-to-peer active content sharing |
WO2005076218A1 (en) * | 2004-01-30 | 2005-08-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Prioritising data elements of a data stream |
US20060020882A1 (en) * | 1999-12-07 | 2006-01-26 | Microsoft Corporation | Method and apparatus for capturing and rendering text annotations for non-modifiable electronic content |
US20060041943A1 (en) * | 2004-08-18 | 2006-02-23 | Howard Singer | Method and apparatus for wirelessly receiving a file using an application-level connection |
US20060187860A1 (en) * | 2005-02-23 | 2006-08-24 | Microsoft Corporation | Serverless peer-to-peer multi-party real-time audio communication system and method |
US20070050716A1 (en) * | 1995-11-13 | 2007-03-01 | Dave Leahy | System and method for enabling users to interact in a virtual space |
TW200737880A (en) * | 2006-03-22 | 2007-10-01 | Mediatek Inc | Controlling method and streaming service system |
US7298834B1 (en) * | 2002-11-22 | 2007-11-20 | 3Com Corporation | System and method for large capacity conference calls |
-
2008
- 2008-10-22 TW TW097140447A patent/TWI492592B/zh not_active IP Right Cessation
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070050716A1 (en) * | 1995-11-13 | 2007-03-01 | Dave Leahy | System and method for enabling users to interact in a virtual space |
JPH1055261A (ja) * | 1996-08-08 | 1998-02-24 | Nippon Telegr & Teleph Corp <Ntt> | 3次元仮想空間音通信方法とその装置 |
US20060020882A1 (en) * | 1999-12-07 | 2006-01-26 | Microsoft Corporation | Method and apparatus for capturing and rendering text annotations for non-modifiable electronic content |
JP2004343779A (ja) * | 2000-07-28 | 2004-12-02 | Sony Computer Entertainment Inc | 情報提供システム、方法及びコンピュータプログラム |
US20030055898A1 (en) * | 2001-07-31 | 2003-03-20 | Yeager William J. | Propagating and updating trust relationships in distributed peer-to-peer networks |
US7298834B1 (en) * | 2002-11-22 | 2007-11-20 | 3Com Corporation | System and method for large capacity conference calls |
US20050004995A1 (en) * | 2003-07-01 | 2005-01-06 | Michael Stochosky | Peer-to-peer active content sharing |
WO2005076218A1 (en) * | 2004-01-30 | 2005-08-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Prioritising data elements of a data stream |
TW200536323A (en) * | 2004-01-30 | 2005-11-01 | Ericsson Telefon Ab L M | Priority assignment and transmission control for multimedia streaming based on stream decodability |
US20060041943A1 (en) * | 2004-08-18 | 2006-02-23 | Howard Singer | Method and apparatus for wirelessly receiving a file using an application-level connection |
US20060187860A1 (en) * | 2005-02-23 | 2006-08-24 | Microsoft Corporation | Serverless peer-to-peer multi-party real-time audio communication system and method |
TW200737880A (en) * | 2006-03-22 | 2007-10-01 | Mediatek Inc | Controlling method and streaming service system |
Also Published As
Publication number | Publication date |
---|---|
TW200924460A (en) | 2009-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11595460B2 (en) | Automated real-time data stream switching in a shared virtual area communication environment | |
US7844724B2 (en) | Automated real-time data stream switching in a shared virtual area communication environment | |
US11418440B2 (en) | Routing virtual area based communications | |
US7197126B2 (en) | Human communication system | |
US20100274848A1 (en) | Managing network communications between network nodes and stream transport protocol | |
WO2021233093A1 (zh) | 帐号接入方法和装置、存储介质及电子设备 | |
US20240106747A1 (en) | Routing Virtual Area Based Communications | |
TWI492592B (zh) | 在共享虛擬區通訊環境中之自動化即時資料串流交換技術 | |
Seo et al. | An embedded P2P-based positional audio system in virtual environments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |