TW202131662A - 用於資料傳輸路徑選擇之資料階層協定 - Google Patents
用於資料傳輸路徑選擇之資料階層協定 Download PDFInfo
- Publication number
- TW202131662A TW202131662A TW109145172A TW109145172A TW202131662A TW 202131662 A TW202131662 A TW 202131662A TW 109145172 A TW109145172 A TW 109145172A TW 109145172 A TW109145172 A TW 109145172A TW 202131662 A TW202131662 A TW 202131662A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- client
- network
- mobile communication
- game
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
- H04L45/123—Evaluation of link metrics
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/213—Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/216—Input arrangements for video game devices characterised by their sensors, purposes or types using geographical information, e.g. location of the game device or player using GPS
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/33—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
- A63F13/332—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using wireless networks, e.g. cellular phone networks
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/30—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
- A63F13/35—Details of game servers
- A63F13/352—Details of game servers involving special game server arrangements, e.g. regional servers connected to a national server or a plurality of servers managing partitions of the game world
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/65—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
- A63F13/655—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition by importing photos, e.g. of the player
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/42—Centralised routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Environmental & Geological Engineering (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Radar, Positioning & Navigation (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
由一或多個裝置實施一資料流階層協定以最佳化該一或多個裝置如何處理網路通信之資料包。該資料流階層考量資料流之各種可用網路路徑。實施該資料流階層之一裝置選擇該等可用網路路徑中之一或多者來在與其他裝置進行資料通信時提供低潛時。該裝置可對各種可用網路路徑進行取樣以判定路徑度量(例如,潛時)且基於該等度量選擇一或多個網路路徑。該等可用網路路徑可包含透過一或多個中間節點之路徑,諸如透過一遊戲伺服器之路徑、透過一行動通信基地台之路徑及透過一網路之路徑。
Description
本發明係關於電腦網路協定,且特定而言係關於用於在彼此之實體接近範圍內之裝置之間提供低潛時無線通信之協定。
電腦網路係交換資料之運算裝置之經互連集合,諸如網際網路。諸如使用者資料包協定(UDP)等通信協定定義使用電腦網路交換資料之規則系統。UDP遵守不具有受保證遞送、排序或資料包之非重複性之一無連接通信模型。一資料包係一基本通信單位且包含一標頭及一有效負載。標頭係規定資料包之各態樣之後設資料,該等態樣係諸如一源埠、一目的地埠、資料包之一長度及資料包之一總和檢查碼。有效負載係藉由資料包傳遞之資料。使用UDP進行通信之運算裝置經由電腦網路向彼此傳輸資料包。
與在傳輸資料之前在運算裝置之間建立連接之如傳輸控制協定(TCP)等連接導向通信協定相比,諸如UDP等無連接通信協定通常具有較低額外負擔及潛時。然而,現有無連接通信協定不足以進行需要比藉由現有技術提供之潛時少之潛時之資料傳送。舉例而言,以60訊框/秒(FPS)進行流式傳輸之一擴增實境(AR)環境可需要比藉由當前技術提供之潛時低一數量級之潛時。在此一AR環境中,訊框可以大約十六毫秒間隔來間隔開,而當前網路協定通常提供大約一百毫秒(或更多時間)之潛時。
如此,利用現有技術,一使用者可在於AR環境中進行互動時遭遇某種程度之潛時。此潛時可導致與AR位置資料之一舊狀態之互動。舉例而言,在一平行實境遊戲中,一玩家可看到一舊位置處之一AR物件(例如,該物件在100毫秒之前存在於該處),而AR位置資料事實上具有該物件之一新位置(例如,該AR物件已被另一玩家移動)。用戶端與代管或協調平行實境遊戲之一伺服器之間的此通信潛時可導致一令人沮喪的使用者體驗。此問題可在多於一個使用者正參與平行實境遊戲之情況下尤其嚴重,此乃因潛時可導致出現在其他玩家之AR環境視圖中的一個玩家之動作之間的一明顯延遲。此外,隨著玩家之數目增加,由於延遲導致之不匹配可進一步混雜。
擴增實境(AR)系統以電腦產生之內容補充真實世界之視圖。將AR併入至一平行實境遊戲中可改良真實世界與虛擬世界之間的整合。AR亦可藉由為玩家提供參與玩家在其中互動之共享遊戲體驗之機會而增加玩家之間的互動性。舉例而言,在一坦克大戰遊戲中,玩家可一真實世界位置周圍導航虛擬坦克,從而嘗試毀壞彼此之坦克。坦克之移動可受真實世界地形限制(例如,坦克在穿過河流時較緩慢地移動,在道路上較快速地移動,無法移動穿過牆壁等)。
現有AR工作階段技術涉及一伺服器維持一主控狀態且經由一網路(例如,網際網路)週期性地使用戶端處之環境之本端狀態與主控狀態同步。然而,使一裝置之本端狀態同步可花費大量時間(例如,約100毫秒),此對遊戲體驗係不利的。實際上,玩家係與一過去遊戲狀態而非當前遊戲狀態互動。此問題可在多於一個使用者正參與平行實境遊戲之情況下尤其嚴重,此乃因潛時會導致出現在其他玩家之視圖中的一個玩家之動作之間的一明顯延遲。舉例而言,若一個玩家在世界中移動一AR物件,則其他玩家可能直至一百毫秒(或更多時間)以後才看到該物件已被移動,該時間係一人類可感知延遲。如此,另一玩家可能嘗試與在其先前位置中之物件互動且在遊戲校正潛時(例如,藉由拒絕實施玩家請求之動作或最初實施該動作且然後在玩家之用戶端接下來與伺服器同步時撤銷該動作)之時感到沮喪。
此問題及其他問題可藉由實施最佳化一或多個裝置如何處理資料包之一資料流階層協定而解決。資料流階層包含用於資料流之各種網路路徑。實施資料流階層之一裝置可利用網路路徑中之一或多者來確保與其他裝置進行資料通信時之低潛時。在某些實施例中,該裝置對各種網路路徑進行取樣以判定最小潛時之一網路路徑以供在透過一中間節點進行資料通信時使用。各種網路路徑可包含透過一或多個中間節點之路徑,諸如透過遊戲伺服器之路徑、透過一行動通信基地台之路徑及透過一網路之路徑。網路路徑亦可包含裝置之間的一直接連接(例如,使用藍芽)。使用資料流階層協定可將潛時改良為毫秒級,例如,小於5毫秒。此外,資料流階層可根據頻寬可用性最佳化頻寬使用。
相關申請案之交叉參考
本申請案主張2019年12月20日提出申請之第62/951,926號美國臨時申請案之權益,該美國臨時申請案係以全文引用方式併入。
網路環境
如本文中所揭示,一資料流階層協定可相對於先前方法提供經減少電腦網路潛時(例如,在一項實施例中,該潛時係約10毫秒)。圖1圖解說明根據一項實施例之使用資料流階層協定進行通信之一電腦網路100。該圖出於清晰目的使用方塊圖圖解說明一經簡化實例。電腦網路100包含兩個用戶端110、一遊戲資料庫115、一遊戲伺服器120、一行動通信基地台130及一區域網路(LAN) 140。在其他實施例中,電腦網路可包含較少、額外或其他組件,諸如額外用戶端110、額外遊戲伺服器120、額外行動通信基地台130,或其他網路節點。用戶端110與代管一平行實境遊戲之遊戲伺服器120通信。用戶端110在平行實境遊戲期間在玩家與平行實境遊戲之其他玩家互動時與彼此通信。
一用戶端110係一運算裝置,諸如一個人電腦、膝上型電腦、平板電腦、智慧型電話等等。用戶端110可例如在玩平行實境遊戲之同時使用資料流階層協定彼此通信。在一實施例中,每一用戶端110包含一本端AR模組,且遊戲伺服器120包含一主控AR模組。每一本端AR模組將AR資料傳遞至其他用戶端110上之本端AR模組及/或遊戲伺服器120上之主控AR模組。將在圖2中進一步描述用戶端110。
遊戲伺服器120類似地係代管由各種用戶端110玩之平行實境遊戲之一運算裝置。遊戲伺服器120在用戶端110之間建立連接以接收及傳輸平行實境遊戲狀態之資訊。遊戲伺服器120將玩家設定檔、遊戲狀態、地圖(真實及虛擬)及與平行實境遊戲相關之其他資訊儲存於遊戲資料庫115中。將在圖3中進一步描述遊戲伺服器120。
行動通信基地台130係經組態用於在用戶端110之間進行資料傳遞之一網路。行動通信基地台130可例如經由UDP促進用戶端110之間的資料傳送。在一或多項實施例中,行動通信基地台130具有經組態以幫助代管連接至行動通信基地台130之用戶端110之間的平行實境遊戲之一本端AR模組。行動通信基地台130可例如週期性地或即時地將遊戲狀態共享給遊戲伺服器120。在圖4中進一步描述行動通信基地台130。
LAN 140係用戶端可連接到上面的一區域網路。LAN 140包括用戶端110可連接到的一或多個路由器。LAN 140利用Wi-Fi及乙太網路來操作。類似於行動通信基地台130,LAN 140可包括經組態以幫助代管連接至LAN之用戶端110之間的平行實境遊戲之一本端AR模組。同樣地,LAN 140可將遊戲狀態共享給遊戲伺服器120。
用戶端110可使用資料流階層協定或在其他實施例中使用其他協定與彼此通信。為了與彼此通信,兩個或更多個用戶端經由一或多個路徑傳輸資料。如圖1中所展示,在電腦網路100中在用戶端110A與用戶端110B之間存在三個路徑。在一第一路徑中,用戶端110可例如使用TCP經由遊戲伺服器120與彼此通信。在一第二路徑中,用戶端110可例如使用TCP或UDP經由行動通信基地台130與彼此通信。在一第三路徑中,用戶端110可例如使用TCP或UDP經由LAN 140與彼此通信。在其他實施例(未展示)中,可存在用於例如經由乙太網路、藍芽、近場通信(NFC)等在用戶端之間進行通信之其他路徑。在該等路徑中之每一者中,用戶端110經由一中間節點(例如,遊戲伺服器120、行動通信基地台130或LAN 140)進行通信。資料流階層協定評估用戶端110之間的可用通信路徑且最佳化在於用戶端110之間傳遞資料時使用哪一路徑或哪些多個路徑。
在一實施例中,用戶端110通信可透過遊戲伺服器120路由或在同級間(P2P)路由。透過遊戲伺服器120路由之通信可經由行動通信基地台130自一第一用戶端110A進行至遊戲伺服器120且然後透過行動通信基地台130返回至一第二用戶端110B。相比而言,P2P通信可自第一用戶端110A進行至行動通信基地台130且然後直接進行至第二用戶端110B。注意,在某些情形中,該等通信可穿過其他中間裝置,諸如信號加強器。如本文中所使用,若一通信在不穿過遊戲伺服器120之情況下路由至目標用戶端110B,則其被視為P2P。舉例而言,若目標用戶端110B與發送用戶端110A連接至同一行動通信基地台130,則一訊息(例如,一資料包)可透過P2P發送,否則該訊息經由遊戲伺服器120來路由。在另一實施例中,用戶端110完全使用P2P進行通信。此外,在某些實施例中,可使用UDP打孔或涉及網路位址轉譯(NAT)之用於P2P通信之其他技術來在兩個或更多個用戶端110當中建立一連接。
在一項實施例中,用戶端110使用一協調服務(例如,在遊戲伺服器120處代管且經由TCP傳遞)來使IP位址同步。用戶端110可然後使用公眾面向的IP位址或LAN 140進行通信(例如,經由UDP)。舉例而言,一第一用戶端110A可經由TCP將一請求發送至協調服務以加入一本端AR共享環境。協調服務可為第一用戶端110A提供連接至AR環境(例如,經由同一行動通信基地台130)之一第二用戶端110B之IP位址。協調服務亦可將第一用戶端之IP位址提供至第二用戶端110B,或者第一用戶端110A可直接使用第二用戶端之IP位址(由協調服務提供)來提供該第一用戶端之IP位址。在某些實施例中,協調服務可促使第二用戶端110B在第二用戶端之IP位址被提供之前核准第一用戶端110A (例如,藉由請求使用者確認或檢查將與第二用戶端110B連接之經核准用戶端110之一清單)。
在一項實施例中,用戶端110經由UDP利用公眾面向的IP位址進行通信且該等通信係利用公開金鑰密碼編譯來加以保護。在特定實施例中,實施橢圓曲線密碼編譯(ECC)。ECC使用一有限場上之一橢圓曲線來將一私密金鑰加密以公開地提供至其他運算系統及網路,該橢圓曲線係一單向且確定性函數。ECC優於其他公開金鑰密碼編譯方法之一個益處係,ECC係允許較小金鑰大小之一較簡單函數,從而必然地減少頻寬使用。
用戶端
圖2係根據一實施例之用戶端110之一方塊圖。一用戶端110可係可由一玩家使用來與遊戲伺服器120介接之任何可攜式運算裝置。例如,一用戶端110可係一無線裝置、一個人數位助理(PDA)、可攜式遊戲裝置、蜂巢式電話、智慧型電話、平板電腦、導航系統、手持式GPS系統、可佩戴式運算裝置、具有一或多個處理器之一顯示器,或其他此類裝置。在另一例項中,用戶端110包含一習用電腦系統,諸如一桌上型電腦或一膝上型電腦。仍然,用戶端110可係具有一運算裝置之一運載工具。簡言之,一用戶端110可係可使得一玩家能夠與遊戲伺服器120互動之任何電腦裝置或系統。作為一運算裝置,用戶端110可包含一或多個處理器及一或多個電腦可讀儲存媒體。電腦可讀儲存媒體可儲存致使處理器執行操作之指令。用戶端110較佳地係可容易地攜帶或以其他方式隨一玩家運輸之一可攜式運算裝置,諸如一智慧型電話或平板電腦。
用戶端110與遊戲伺服器120通信以為遊戲伺服器120提供一實體環境之感覺資料。用戶端110包含一相機總成210,相機總成210攜取用戶端110位於其中之實體環境中之一場景之兩個維度上的影像資料。用戶端110亦包含例如由遊戲伺服器120訓練之係一機器學習模型之一深度估計模型。在圖1中所展示之實施例中,每一用戶端110包含軟體組件,諸如一遊戲模組220及一定位模組230。用戶端110可包含用於自一玩家接收資訊及/或將資訊提供至一玩家之各種其他輸入/輸出裝置。實例輸入/輸出裝置包含一顯示螢幕、一觸控螢幕、一觸控墊、資料輸入鍵、揚聲器及適合於語音辨識之一麥克風。用戶端110亦可包含用於記錄來自用戶端110之資料之其他各種感測器,包含但不限於移動感測器、加速度計、陀螺儀、其他慣性量測單元(IMU)、氣壓計、定位系統、溫度計、光感測器等。用戶端110可進一步包含用於經由網路提供通信之一網路介面。一網路介面可包含用於與一或多個網路介接之任何適合組件,包含例如傳輸器、接收器、埠、控制器、天線,或其他適合組件。
相機總成210攜取用戶端110位於其中之環境之一場景之影像資料。相機總成210可以不同攜取速率利用具有不同色彩攜取範圍之各種不同光電感測器。相機總成210可含有一廣角透鏡或一遠距透鏡。相機總成210可經組態以攜取單個影像或視訊作為影像資料。另外,相機總成210之定向可在相機總成210瞄準水平面之情況下平行於地面。相機總成210攜取影像資料且與用戶端110上之運算裝置共享影像資料。影像資料可附加有描述影像資料之其他細節之後設資料,包含感覺資料(例如環境之溫度、亮度)或攜取資料(例如曝光、溫暖、快門速度、焦距、攜取時間等)。相機總成210可包含可攜取影像資料之一或多個相機。在一項例項中,相機總成210包括一個相機且經組態以攜取單眼影像資料。在另一例項中,相機總成210包括兩個相機且經組態以攜取立體影像資料。在各種其他實施方案中,相機總成210包括各自經組態以攜取影像資料之複數個相機。
遊戲模組220為一玩家提供參與平行實境遊戲之一介面。遊戲伺服器120將遊戲資料傳輸至用戶端110以供用戶端110處之遊戲模組220使用來為遠離遊戲伺服器120之位置處之玩家提供遊戲之本端版本。遊戲伺服器120可包含用於提供圖1中所描述之各種通信路徑之一網路介面。一網路介面可包含用於與一或多個網路介接之任何適合組件,包含例如傳輸器、接收器、埠、控制器、天線,或其他適合組件。
由用戶端110執行之遊戲模組220在一玩家與平行實境遊戲之間提供一介面。遊戲模組220可在與用戶端110相關聯之一顯示裝置上呈現一使用者介面,該使用者介面顯示與遊戲相關聯之一虛擬世界(例如再現虛擬世界之影像)且允許一使用者在該虛擬世界中互動以執行各種遊戲目標。在某些其他實施例中,遊戲模組220呈現利用來自平行實境遊戲之虛擬元素擴增之來自真實世界之影像資料(例如,由相機總成210攜取)。在此等實施例中,遊戲模組220可根據自用戶端之其他組件接收之其他資訊來產生虛擬內容及/或調整虛擬內容。舉例而言,遊戲模組220可根據在影像資料中攜取之場景之一深度地圖(例如,由深度估計模型判定)來調整將在使用者介面上顯示之一虛擬物件。
遊戲模組220亦可控制各種其他輸出以在不需要一玩家觀看一顯示螢幕之情況下允許該玩家與遊戲互動。例如,遊戲模組220可控制允許玩家在不注視顯示螢幕之情況下玩遊戲之各種音訊、振動或其他通知。遊戲模組220可存取自遊戲伺服器120接收之遊戲資料以向使用者提供遊戲之一準確表示。遊戲模組220可經由網路接收及處理玩家輸入且將更新提供至遊戲伺服器120。遊戲模組220亦可產生及/或調整將由用戶端110顯示之遊戲內容。舉例而言,遊戲模組220可基於深度資訊(例如,由深度估計模型判定)而產生一虛擬元素。
定位模組230可係用於監視用戶端110之位置之任何裝置或電路。舉例而言,定位模組230可藉由使用一衛星導航定位系統(例如一GPS系統、一伽利略定位系統、全球導航衛星系統(GLONASS)、北斗衛星導航與定位系統)、一慣性導航系統、一航位推算系統、基於IP位址、藉由使用三角量測及/或至蜂巢式基地台或Wi-Fi熱點之接近度及/或用於判定位置之其他適合技術而判定實際或相對位置。定位模組230可進一步包含可幫助準確地定位用戶端110位置之各種其他感測器。在某些實施例中,用戶端110在本端儲存在平行實境遊戲中使用之地圖之一部分。定位模組230可相對於經本端儲存之地圖定位用戶端110。定位模組230亦可週期性地使經本端儲存(或經快取)之地圖與由遊戲伺服器120維持之地圖資料同步。
當玩家在真實世界中帶著用戶端110到處移動時,定位模組230追蹤玩家之位置且將玩家位置資訊提供至遊戲模組220。遊戲模組220基於玩家在真實世界中之實際位置而更新與遊戲相關聯之虛擬世界中之玩家位置。因此,一玩家可簡單地藉由在真實世界中攜帶或運輸用戶端110而與虛擬世界互動。特定而言,玩家在虛擬世界中之位置可對應於玩家在真實世界中之位置。遊戲模組220可經由網路將玩家位置資訊提供至遊戲伺服器120。作為回應,遊戲伺服器120可實行各種技術來驗證用戶端110位置以防止詐騙者欺騙用戶端110位置。應理解,與一玩家相關聯之位置資訊僅在已向玩家通知玩家之位置資訊將被存取及位置資訊將如何在遊戲之內容脈絡中利用之後被授予許可之情況下被利用(例如,用以更新虛擬世界中之玩家位置)。另外,與玩家相關聯之任何位置資訊將被以保護玩家隱私之一方式儲存及維持。
資料流模組240與其他運算組件進行通信。資料流模組240可使用任何類型之有線及/或無線連接、使用各種通信協定(例如TCP/IP、HTTP、SMTP、FTP)、編碼或格式(例如HTML、XML、JSON)及/或保護方案(例如VPN、安全HTTP、SSL)建立通信。
在一或多項實施例中,資料流模組240與遊戲伺服器120通信。資料流模組240將動作、對遊戲狀態之更新、針對各種內容項目(例如,針對平行實境遊戲)之請求或其他通信提供至遊戲伺服器120。資料流模組240例如經由TCP建立與遊戲伺服器120之一連接。TCP提供一穩健方式來傳輸資料。利用TCP,資料流模組240可在資料之傳輸期間偵測經丟失封包且請求重新發送經丟失封包。此外,TCP允許重構亂序接收之順序資料封包以產生既定訊息。
資料流模組240亦管理與一或多個其他用戶端110之通信。資料流模組240識別用於與另一用戶端110通信之一或多個路徑。在一給定時間可用於用戶端110之路徑可包含以下各項之任一組合:透過遊戲伺服器120之一路徑、透過行動通信基地台130之一路徑、透過LAN 140之一路徑、透過另一網路之另一路徑,及一直接連接(例如,經由藍芽)。資料流模組240實施資料流階層協定以選擇一或多個可用路徑供在用戶端110之間傳輸資料時使用。在具有一單個可用路徑之情況下,資料流階層協定指示經由僅有之經識別路徑傳輸資料。
在具有多個可用路徑之情況下,資料流階層協定選擇可用路徑中之一或多者以改良傳遞資料時之潛時。資料流模組240計算指示藉由可用路徑之資料傳輸效能的可用路徑之一或多個度量(亦即,效能度量)。度量包含潛時(速率測試(ping))、抖動、資料丟失、連接強度(連接之穩定性)、頻寬、另一資料傳輸度量等。在一項實施例中,資料流階層協定選擇具有最低潛時之路徑(或某一數目個路徑)來在傳遞資料時使用。在其他實施例中,資料流階層協定除潛時外或替代潛時亦考量一或多個其他度量。舉例而言,資料流階層協定可組合每一路徑之一或多個度量以便判定每一路徑之一總體得分(亦即,一路徑得分)。可使用路徑得分來對可用路徑進行排名且選擇一路徑(例如,最高排名之路徑)或多個路徑(例如,某一數目個最高排名之路徑)。
若基於資料流階層協定選擇了多個路徑,則可使用該多個經選擇路徑中之每一者來傳輸同一資料之單獨複本以便改良一資料傳輸速率。然而,在此類情形中,存在使用更多路徑之一折衷,因為經由不同路徑發送同一資料之多個複本會增加頻寬使用。在某些實施例中,資料流階層協定週期性地對可用路徑進行取樣以重新評估哪一(哪些)路徑係使用起來最佳的。舉例而言,資料流階層協定以一規則間隔(例如,每隔30秒)評估可用路徑以判定一或多個路徑之一最佳集合以供在通信時使用。資料流階層協定可藉由將資料傳輸至一可用路徑之一端點(諸如自用戶端110A至用戶端110B)而對該可用路徑進行取樣。另外或另一選擇係,資料流階層協定可藉由將資料傳輸至連接至許多端點之一中間節點(諸如自用戶端110A至遊戲伺服器120或行動通信基地台130)而對一或多個可用路徑進行取樣。在某些實施例中,資料流階層協定選擇所有可用路徑以供在通信時使用。資料流階層協定可根據頻寬可用性調整路徑選擇。舉例而言,在一高頻寬可用性情境中,資料流階層協定可指示選擇所有可用路徑。相比而言,當頻寬可用性受限時,資料流階層協定可選擇最佳路徑(例如,最低潛時路徑)。
在某些實施例中,資料流模組240將例如在平行實境遊戲中之一共享AR體驗期間在用戶端之間傳輸之資料加密。資料流模組240可實施各種密碼編譯方法。在特定實施方案中,實施ECC以保護用戶端110之間例如經由行動通信基地台130或經由LAN 140之UDP傳輸。
遊戲伺服器
圖3係圖解說明根據一實施例之遊戲伺服器之一方塊圖。遊戲伺服器120可係任何運算裝置且可包含一或多個處理器及一或多個電腦可讀儲存媒體。電腦可讀儲存媒體可儲存致使處理器執行操作之指令。遊戲伺服器120可包含一遊戲資料庫115或可與遊戲資料庫115通信。遊戲資料庫115儲存在平行實境遊戲中使用之遊戲資料以供應或提供至用戶端110。
儲存於遊戲資料庫115中之遊戲資料可包含:(1)與平行實境遊戲中之虛擬世界相關聯之資料(例如用於在一顯示裝置上再現虛擬世界之影像資料、虛擬世界中之位置之地理座標等);(2)與平行實境遊戲之玩家相關聯之資料(例如玩家設定檔,包含但不限於玩家資訊、玩家經驗等級、玩家貨幣、虛擬世界/真實世界中之當前玩家位置、玩家能量等級、玩家偏好、團隊資訊、幫派資訊等);(3)與遊戲目標相關聯之資料(例如與當前遊戲目標、遊戲目標狀態、過去遊戲目標、未來遊戲目標,所要遊戲目標等相關聯之資料);(4)與虛擬世界中之虛擬元素相關聯之資料(例如虛擬元素之位置、虛擬元素之類型、與虛擬元素相關聯之遊戲目標;虛擬元素之對應實際世界位置資訊;虛擬元素之行為、虛擬元素之相關性等);(5)與連結至虛擬世界元素之真實世界物件、地標、位置相關聯之資料(例如真實世界物件/地標之位置、真實世界物件/地標之描述、連結至真實世界物件之虛擬元素之相關性等);(6)遊戲狀態(例如當前玩家數目、當前遊戲目標狀態、玩家排行榜等);(7)與玩家動作/輸入相關聯之資料(例如當前玩家位置、過去玩家位置、玩家移動、玩家輸入、玩家查詢、玩家通信等);及(8)在平行實境遊戲之實施期間使用、與其相關或在其期間獲得之任何其他資料。儲存於遊戲資料庫115中之遊戲資料可由系統管理員及/或藉由自用戶端110接收之資料離線或即時地填充。
遊戲伺服器120可經組態以自一用戶端110 (例如經由遠端程序呼叫(RPC))接收針對遊戲資料之請求且對彼等請求做出回應。例如,遊戲伺服器120可將遊戲資料編碼於一或多個資料檔案中且將資料檔案提供至用戶端110。另外,遊戲伺服器120可經組態以自一用戶端110接收遊戲資料(例如玩家位置、玩家動作、玩家輸入等)。例如,用戶端110可經組態以週期性地將玩家輸入及其他更新發送至遊戲伺服器120,遊戲伺服器120使用該等玩家輸入及其他更新來更新遊戲資料庫115中之遊戲資料以反映遊戲之任何及所有經改變狀況。
在所展示之實施例中,伺服器120包含一通用遊戲模組310、一資料收集模組320及一事件模組330。如上文所提及,遊戲伺服器120與可係遊戲伺服器120之部分或遠端地存取之一遊戲資料庫115互動(例如,遊戲資料庫115可係經由一網路存取之一分散式資料庫)。在其他實施例中,遊戲伺服器120含有不同及/或額外元件。另外,該等功能可以不同於所描述之一方式在元件當中分散。例如,遊戲資料庫115可整合至遊戲伺服器120中。
通用遊戲模組310代管所有玩家之平行實境遊戲且充當所有玩家之平行實境遊戲之當前狀態之權威來源。作為主機,通用遊戲模組310產生遊戲內容以供例如經由玩家之各別用戶端110呈現給玩家。通用遊戲模組310可在代管平行實境遊戲時存取遊戲資料庫115以檢索及/或儲存遊戲資料。通用遊戲模組310亦自用戶端110接收遊戲資料(例如深度資訊、玩家輸入、玩家位置、玩家動作、地標資訊等)且將所接收之遊戲資料併入至平行實境遊戲之所有玩家之總體平行實境遊戲中。通用遊戲模組310亦可管理遊戲資料經由網路向用戶端110之遞送。通用遊戲模組310亦可管控用戶端110之安全態樣,包含但不限於保護用戶端110與遊戲伺服器120之間的連接、在各種用戶端110之間建立連接,及驗證各種用戶端110之位置。
遊戲伺服器120可進一步包含一資料收集模組320。在包含資料收集模組之實施例中,資料收集模組320可與通用遊戲模組310分開或係通用遊戲模組310之部分。資料收集模組320可管理在平行實境遊戲內是否包含與真實世界中之一資料收集活動連結之各種遊戲特徵。例如,資料收集模組320可修改儲存於遊戲資料庫115中之遊戲資料以在平行實境遊戲中包含與資料收集活動連結之遊戲特徵。資料收集模組320亦可分析由玩家依據資料收集活動收集之資料且提供該資料以供由各種平台存取。
事件模組330管理玩家對平行實境遊戲中之事件之存取。儘管為了方便起見使用術語「事件」,但應瞭解,此術語不必指一特定位置或時間之一特定事件。而是,其可指對存取受控之遊戲內容之任何提供,其中使用一或多個存取準則來判定玩家是否可存取彼內容。此內容可係包含具有較少或不具有存取控制之遊戲內容之一較大平行實境遊戲之部分,或可係一獨立、存取受控之平行實境遊戲。
行動通信基地台
圖4係圖解說明根據一實施例之一行動通信基地台之一方塊圖。在所展示之實施例中,行動通信基地台130包含一路由模組410、一資料內嵌模組420、一AR環境模組430、一地圖處理模組440、一授權檢查模組450及一本端資料儲存器件460。行動通信基地台130亦包含用於建立至遊戲伺服器120及用戶端110之連接以用於交換資料之硬體及韌體或軟體(未展示)。舉例而言,行動通信基地台130可經由一光纖或其他有線網際網路連接來連接至遊戲伺服器120且使用一無線連接(例如,4G或5G)連接至用戶端110。在其他實施例中,行動通信基地台130可包含不同或額外組件。另外,該等功能可以不同於所描述之一方式在元件當中分散。在一或多項實施例中,LAN 140可包括類似於針對行動通信基地台130描述之彼等之模組,使得LAN可同樣地幫助代管平行實境遊戲。
路由模組410接收資料封包且將彼等封包發送至一或多個接收裝置。在一項實施例中,路由模組410自用戶端110接收資料包並將所接收資料包發送至適當目的地。路由模組410亦可自伺服器接收定址至連接至行動通信基地台130之特定用戶端110或所有用戶端之資料封包。路由模組410將資料封包轉發至其被定址到的用戶端110。在某些實施例中,路由模組410接收指示由一發送用戶端110選擇用來將一資料封包(例如,資料封包內之資訊)諸如直接路由至另一用戶端110或透過遊戲伺服器120路由該資料封包之一路徑之資訊。在此情形中,路由模組410使用經選擇路徑路由資料封包。
資料內嵌模組420自行動通信基地台130使用來經由經連接用戶端110向玩家提供一共享AR體驗之一或多個源接收資料。在一項實施例中,資料內嵌模組420即時或實質上即時接收關於真實世界狀況之資訊(例如,自第三方服務)。舉例而言,資料內嵌模組420可週期性地(例如,每小時)自指示環繞行動通信基地台之地理區中之天氣狀況之一天氣服務接收天氣資料。作為另一實例,資料內嵌模組420可檢索一公園、博物館或其他公共空間之開放時間。作為又一實例,資料內嵌模組420可接收指示多少個運載工具正在環繞行動通信基地台130之地理區中之道路上行進之交通資料。關於真實世界狀況之此資訊可用於改良虛擬世界與真實世界之間的協同效果。
AR環境模組430管理其中環繞行動通信基地台130之地理區中之玩家可參與共享AR體驗之AR環境。在一項實施例中,一用戶端110在執行一平行實境遊戲時連接至行動通信基地台130,且AR環境模組430將該用戶端連接至一AR環境以進行遊戲。連接至行動通信基地台130之所有遊戲玩家可共享一單個AR環境,或玩家可在多個AR環境當中進行劃分。舉例而言,在一特定AR環境中可存在最大數目個玩家(例如,十個、二十個、一百個等)。在存在多個AR環境之情況下,新連接之用戶端110可隨機地放置於一工作階段中,或用戶端可提供一使用者介面(UI)來使得玩家能夠選擇加入哪一工作階段。因此,一玩家可選擇與朋友加入一AR環境。在某些實施例中,玩家可建立受存取保護之私密AR環境(例如,需要一密碼或代碼來加入)。
在各項實施例中,為了使得AR物件(例如,生物、運載工具等)能夠呈現為與真實世界特徵互動(例如,跳過障礙物而非穿過障礙物),AR環境模組430為經連接用戶端110提供表示用戶端附近之真實世界之地圖資料(例如,儲存於本端資料儲存器件460中)。AR環境模組430可接收一用戶端110之位置資料(例如,一GPS位置)且提供環繞用戶端(例如,在用戶端之當前位置之一臨限距離內)之地理區之地圖資料。
所接收地圖資料可包含真實世界之一或多個表示。舉例而言,地圖資料可包含一點雲模型、一平面匹配模型、一線匹配模型、一地理資訊系統(GIS)模型、一建築物辨識模型、一景觀辨識模型等。地圖資料亦可包含以不同細節等級對一給定類型之多於一種表示。舉例而言,地圖資料可包含各自包含不同數目個點之兩個或更多個點雲模型。
用戶端110可比較地圖資料與由一或多個感測器收集之資料以細化用戶端之位置。舉例而言,藉由將由用戶端110上之一相機攜取之影像映射至一點雲模型,可準確地判定用戶端之位置及定向(例如,在一公分及0.1度內)。用戶端110將經判定位置及定向連同由玩家採取之任何動作(例如,射擊、選擇一虛擬項目來互動、卸除一虛擬項目等)一起往回提供至AR環境模組430。因此,AR環境模組430可更新參與AR環境之所有玩家之遊戲狀態。
地圖處理模組440基於當前狀況(例如,來自資料內嵌模組420之資料)更新地圖資料。由於真實世界並非係靜態的,因此本端資料儲存器件460中之地圖資料可能並不表示當前真實世界狀況。舉例而言,佛蒙特州(Vermont)中之同一公園小徑可在不同季節看起來非常不同。在夏天,小徑可係乾淨的且周圍的樹木將被樹葉覆蓋。相比而言,在冬天,小徑可被飄雪阻擋且樹木可係光禿的。地圖處理模組440可將地圖資料轉變為適當此類改變。
在一項實施例中,地圖處理模組440檢索當前狀況資料以識別一轉變且將彼轉變應用於地圖資料。不同狀況之轉變可藉由啟發式規則定義、採取經訓練機器學習模型之形式,或使用兩種方法之一組合。舉例而言,地圖處理模組440可接收當前天氣狀況資料、選擇一當前天氣狀況之一轉變,且將彼轉變應用於地圖資料。另一選擇係,地圖處理模組440可預計算經轉變地圖且儲存經轉變地圖(例如,在本端資料儲存器件460中)。在此情形中,當一用戶端110連接至行動通信基地台時,地圖處理模組判定當前狀況、選擇地圖資料之適當經預計算版本且將彼版本提供至用戶端。
授權檢查模組450維持不同用戶端110之遊戲狀態之間的同步。在一項實施例中,授權檢查模組450確認自用戶端110接收之遊戲動作與由AR環境模組430維持之遊戲狀態一致。舉例而言,若兩個玩家皆試圖拾取同一遊戲內項目,則授權檢查模組450判定哪一玩家接收該項目(例如,基於與請求相關聯之時間戳記)。如所描述,在行動通信基地台處使用一P2P協定及本端處理可顯著減少一玩家之動作在其他玩家之用戶端110處被看到之潛時。因此,此類衝突之例項發生且被授權檢查模組450解決之可能性(及數目)被減小。因此,AR體驗可被改良。
授權檢查模組450亦可維持AR環境之狀態(中間節點狀態)之其複本與由遊戲伺服器120維持之一主控狀態之間的同步。在一項實施例中,授權檢查模組450週期性地(例如,每1至10秒)自遊戲伺服器120接收關於AR環境之狀態之全域更新。授權檢查模組450比較此等更新與中間節點狀態且解決任何差異。舉例而言,若一玩家對拾取一項目之請求最初由授權檢查模組450核准但來自遊戲伺服器120之一遊戲更新指示該項目在該玩家試圖拾取其之前由另一玩家拾取(或以其他方式變得不可用),則授權檢查模組450可將指示應將該項目自該玩家之庫存移除之一更新發送至該玩家之用戶端110。
此處理程序可為位於由兩個或更多個不同行動通信基地台130提供之涵蓋範圍之間的一邊界附近之用戶端110提供價值。在此情形中,其用戶端裝置110連接至不同行動通信基地台130之玩家可能皆能夠與同一虛擬元素互動。因此,每一個別行動通信基地台130可最初核准來自不同用戶端110之與該元素之衝突互動。在此情形中,伺服器120可在與不同行動通信基地台130同步之後偵測衝突,且發送更新以解決衝突(例如,指示行動通信基地台中之一者撤銷其對動作之初始核准且相應地更新其本端狀態)。
本端資料儲存器件460係經組態以儲存由行動通信基地台使用之資料之一或多個非暫時性電腦可讀媒體。在一項實施例中,所儲存資料可包含地圖資料、當前狀況資料、當前(或最近)連接之用戶端110之一清單、地理區域之遊戲狀態之一本端複本等。儘管本端資料儲存器件460係展示為一單個實體,但資料可跨越多個儲存媒體來拆分。此外,資料中之某些可儲存於通信網路中之別處且被遠端地存取。舉例而言,行動通信基地台130可視需要遠端地存取當前狀況資料(例如,自一第三方伺服器)。
實例性方法
圖5圖解說明根據一實施例之用於使用資料流階層協定之一處理程序500。圖5之步驟係自一用戶端110A執行方法500之角度圖解說明的。然而,該等步驟中之某些或所有步驟可由其他實體或組件執行。另外,某些實施例可並行地執行該等步驟、以不同次序執行該等步驟,或執行不同步驟。
用戶端110A識別510用於資料傳輸之一或多個可用網路路徑。用戶端110A藉由判定去往一目標用戶端110B之一組預定路徑中之哪一者當前可用於用戶端110A而識別此類網路路徑。若用戶端110A可建立與遊戲伺服器120之一連接且目標用戶端110B亦連接至遊戲伺服器120,則用戶端110A識別經由遊戲伺服器120去往另一用戶端110之一網路路徑。若用戶端110A連接至行動通信基地台130,則用戶端110可判定另一用戶端110B是否同樣地連接至行動通信基地台130。若是如此,則用戶端110A識別透過行動通信基地台130之另一網路路徑。此外,若用戶端110A與另一用戶端110B連接至同一LAN 140,則用戶端110A可識別透過LAN 140之一網路路徑。用戶端110A可將連接兩個用戶端110之其他網路或路徑識別為其他可用網路路徑(例如,用戶端110之間的一直接連接,諸如一藍芽連接)。該等網路路徑中之一或多者可實施用於資料傳輸之UDP。針對UDP路徑,用戶端110可利用公開金鑰密碼編譯來將資料加密。特定而言,用戶端110可實施ECC。
用戶端110A偵測520可用網路路徑中之每一者之一或多個效能度量。用戶端110A藉由透過可用網路路徑發送測試資料封包而偵測效能度量。該等資料封包可請求自另一用戶端110B發送回另一測試資料封包。基於此等測試封包之成功傳輸,用戶端110A可計算(或偵測)網路路徑之度量。度量包含潛時(速率測試)、抖動、資料丟失、連接強度、頻寬可用性等。
用戶端110A根據經偵測度量選擇530一或多個可用網路路徑以供在資料傳輸時使用。用戶端110A可在選擇網路路徑時考量一或多個特定度量。在一項實施例中,用戶端110A僅考量潛時(速率測試)。在另一實施例中,用戶端110A考量潛時及連接強度。如先前所描述,用戶端110A可選擇一或若干「最佳」路徑(由一或多個度量指示)或亦選擇所有可用網路路徑以供在資料傳輸時使用。
用戶端110A經由一或多個經選擇網路路徑傳輸540資料。在一平行實境遊戲之內容脈絡中,用戶端110A將遊戲資料傳輸至其他用戶端110及遊戲伺服器120。當在平行實境遊戲中保持共享AR體驗時,用戶端至用戶端通信尤其高效,其中多個玩家可在其用戶端110上與彼此及與遊戲伺服器120互動。該等互動中之某些互動可由用戶端110或其他網路(例如,行動通信基地台130或LAN 140)在本端代管,使得遊戲狀態不需要藉由遊戲伺服器120來同步。在本端代管一AR體驗提供具有低潛時之一更簡化AR體驗。
用戶端110A可反覆進行處理程序500以週期性地對可用路徑進行取樣且反覆地最佳化在維持裝置之間的資料傳輸時使用哪些路徑。
圖6圖解說明根據一實施例之用於在環繞一行動通信基地台之一地理區域內之用戶端110之間傳輸資料之一方法600。圖6之步驟係自一行動通信基地台130執行方法600以提供一地理區域中之用戶端裝置110之間的P2P通信之角度描述的。然而,該等步驟中之某些或所有步驟可由其他實體或組件執行。另外,某些實施例可並行地執行該等步驟、以不同次序執行該等步驟,或執行不同步驟。
在圖6中所展示之實施例中,行動通信基地台130經由一網路路徑為環繞行動通信基地台之一地理區域內之用戶端110提供610 P2P通信。舉例而言,行動通信基地台130可為用戶端110提供P2P通信從而提供一平行實境遊戲(例如,由遊戲伺服器120代管)。行動通信基地台130經由網路路徑自一第一用戶端110A接收620資料。特定而言,該網路路徑係由第一用戶端110A基於可用網路路徑中之每一者之一或多個度量自可用網路路徑中選擇的。舉例而言,第一用戶端裝置可選擇使用一資料流階層協定提供P2P通信之網路路徑,如上文所描述。自第一用戶端110A接收之資料可與一AR環境之虛擬內容相關聯,諸如對應於地理區域內之地理位置之AR資料。
使用該網路路徑,行動通信基地台130將資料傳輸630至該地理區域內之一第二用戶端110B。舉例而言,若該資料描述對與一平行實境遊戲相關聯之一AR環境之虛擬內容之一更新,則行動通信基地台130可將該更新提供至連接至行動通信基地台130的平行實境遊戲之用戶端110中之某些或所有用戶端。作為另一實例,該資料可特別定址至第二用戶端110B,諸如一訊息或與相關聯於使用第二用戶端之一玩家之虛擬內容之互動。
實例電腦
圖7係圖解說明根據一實施例之適合於在圖1中所展示之電腦網路內使用之一實例電腦700之一高階方塊圖。實例電腦700包含耦合至一晶片組704之至少一個處理器702。晶片組704包含一記憶體控制器集線器720及一輸入/輸出(I/O)控制器集線器722。一記憶體706及一圖形配接器712耦合至記憶體控制器集線器720,且一顯示裝置718耦合至圖形配接器712。一儲存裝置708、鍵盤710、指標裝置714及網路配接器716耦合至I/O控制器集線器722。電腦700之其他實施例具有不同架構。
在圖7中所展示之實施例中,儲存裝置708係一非暫時性電腦可讀儲存媒體,諸如一硬碟機、光碟唯讀記憶體(CD-ROM)、DVD或一固態記憶體裝置。記憶體706保持由處理器702使用之指令及資料。指標裝置714係一滑鼠、追蹤球、觸控螢幕或其他類型之指標裝置,且與鍵盤710 (其可係一螢幕上鍵盤)組合地用於將資料輸入至電腦系統700中。圖形配接器712在顯示器718上顯示影像及其他資訊。網路配接器716將電腦系統700耦合至一或多個電腦網路。
由圖1之實體使用之電腦類型可取決於實施例及實體所需之處理能力而變化。舉例而言,一遊戲伺服器120可包含一分散式資料庫系統,該分散式資料庫系統包括共同工作以提供所描述之功能性之多個刀鋒(blade)伺服器。此外,該等電腦可缺乏上文所描述之組件中之某些組件,諸如鍵盤710、圖形配接器712及顯示器718。
熟習此項技術者可在不背離所描述之概念之情況下對本文中所揭示之設備及技術做出諸多使用及修改以及與其之背離。舉例而言,本發明中所圖解說明或描述之組件或特徵不限於所圖解說明或描述之位置、設定或內容脈絡。相比於參考前述各圖中之一或多者描述之彼等組件,根據本發明之設備之實例可包含其中之所有組件、較少組件或不同組件。本發明因此不限於本文中所描述之特定實施方案,而是應被賦予與隨附申請專利範圍及其等效內容一致之可能的最寬廣範疇。
額外考量
已出於圖解說明之目的呈現對實施例之前述說明;其不意欲係窮盡性的或將專利權限於所揭示之精確形式。熟習此項技術者可瞭解,依據以上揭示內容,許多修改及變化形式係可能的。
此說明之某些部分描述對資訊之操作之演算法及符號表示方面之實施例。此等演算法說明及表示通常由資料處理技術領域之熟習此項技術者用來向其他熟習此項技術者有效地傳達其工作之實質。雖然在功能上、運算上或邏輯上描述此等操作,但應將其理解為由電腦程式或等效電路、微碼或諸如此類來實施。此外,亦已證明有時將此等操作配置稱為模組係方便的,而不會喪失通用性。所描述之操作及其相關聯模組可以軟體、韌體、硬體或其任何組合來體現。
本文中所描述之步驟、操作或處理程序中之任一者可以一或多個硬體或軟體模組單獨地或與其他裝置組合地執行或實施。在一項實施例中,一軟體模組係以包括含有電腦程式碼之一電腦可讀媒體之一電腦程式產品實施,該電腦程式碼可由用於執行所描述之步驟、操作或處理程序中的任何或所有步驟、操作或處理程序之一電腦處理器執行。
實施例亦可係關於一種用於執行本文中之操作之設備。此設備可專門針對所需目的而構造,及/或其可包括藉由儲存於電腦中之一電腦程式來選擇性地啟動或重新組態之一般用途運算裝置。此一電腦程式可儲存於一非暫時性有形電腦可讀儲存媒體或可耦合至一電腦系統匯流排之適合於儲存電子指令之任何類型之媒體中。此外,本說明書中所提及之任何運算系統可包含一單個處理器或可係採用多個處理器設計以實現經提高運算能力之架構。
實施例亦可係關於藉由本文中所描述之一運算處理程序產生之一產品。此一產品可包括自一運算處理程序產生之資訊(其中該資訊被儲存於一非暫時性有形電腦可讀儲存媒體上),且可包含一電腦程式產品之任何實施例或本文中所描述之其他資料組合。
如本文中所使用,對「一項實施例」或「一實施例」之任何提及意指結合該實施例一起闡述之一特定元件、特徵、結構或特性包含於至少一項實施例中。片語「在一項實施例」中在本說明書中之各種地方之出現不必全部指代同一實施例。類似地,「一(a或an)」在一元件或組件前面之使用係僅為了方便起見。此說明應理解為意指存在元件或組件中之一或多者,除非顯而易見其另有其他意指。
在將值描述為「大約」或「實質上」(或其派生詞)之情況下,此類值應被解釋為在+/-10%上係準確的,除非自內容脈絡明瞭另一含義。舉例而言,「大約十」應理解為意指「在自九至十一之一範圍內」。
如本文中所使用,術語「包括(comprise)」、「包括(comprising)」、「包含(include)」、「包含(including)」、「具有(has)」、「具有(having)」或其任何其他變化意欲涵蓋一非窮盡性包含。舉例而言,包括一系列元素之一處理程序、方法、物品或設備未必僅限於彼等元素,而是可包含未明確列出或此處理程序、方法、物品或設備所固有之其他元素。此外,除非明確陳述相反之情形,否則「或」係指一包含性或而非一排他性或。舉例而言,一條件A或B可由以下各項中的任一者來滿足:A係真(或存在)且B係假(或不存在)、A係假(或不存在)且B係真(或存在),以及A與B兩者皆係真(或存在)。
在閱讀本發明之後,熟習此項技術者將瞭解可用於採用所描述之技術及方法之又一些額外替代結構及功能設計。因此,雖然已圖解說明及描述特定實施例及應用,但應理解,所描述標的物不限於所揭示之精確構造及組件。保護之範疇應僅受隨附申請專利範圍限制。
最後,本說明書中所使用之語言主要係出於易讀性及指導性目的而選擇,且其可並非為劃定或限定專利權而選擇。因此,意欲專利權之範疇不受此詳細說明限制,而是由討論基於本文之一應用之任何技術方案限制。因此,實施例之揭示內容意欲說明而非限制在隨附申請專利範圍中陳述的專利權之範疇。
100:電腦網路
110:用戶端/經核准用戶端/經連接用戶端/新連接之用戶端/發送用戶端/用戶端裝置
110A:用戶端/第一用戶端/發送用戶端
110B:用戶端/第二用戶端/目標用戶端
115:遊戲資料庫
120:遊戲伺服器/伺服器
130:行動通信基地台
140:區域網路
210:相機總成
220:遊戲模組
230:定位模組
240:資料流模組
310:通用遊戲模組
320:資料收集模組
330:事件模組
410:路由模組
420:資料內嵌模組
430:擴增實境環境模組
440:地圖處理模組
450:授權檢查模組
460:本端資料儲存器件
500:處理程序/方法
510:步驟
520:步驟
530:步驟
540:步驟
600:方法
610:步驟
620:步驟
630:步驟
700:實例電腦/電腦/電腦系統
702:處理器
704:晶片組
706:記憶體
708:儲存裝置
710:鍵盤
712:圖形配接器
714:指標裝置
716:網路配接器
718:顯示裝置/顯示器
720:記憶體控制器集線器
722:輸入/輸出控制器集線器
圖1圖解說明根據一實施例之其中可實施一資料流階層協定之一網路環境。
圖2係圖解說明根據一項實施例之一用戶端之一方塊圖。
圖3係圖解說明根據一項實施例之一遊戲伺服器之一方塊圖。
圖4係圖解說明根據一項實施例之行動通信基地台之一方塊圖。
圖5圖解說明根據一實施例之用於使用資料流階層協定之一處理程序。
圖6圖解說明根據一實施例之用於在環繞一行動通信基地台之一地理區域內之用戶端之間傳輸資料之一處理程序。
圖7係圖解說明根據一實施例之適合於在圖1中所展示之電腦網路內使用之一實例電腦之一高階方塊圖。
各圖及以下說明僅藉由圖解說明方式描述某些實施例。熟習此項技術者將自以下說明容易地認識到,可在不背離所描述之原理之情況下採用結構及方法之替代實施例。現在將參考數項實施例,在附圖中圖解說明該等實施例之實例。在可行之情況下,在各圖中使用類似或相似元件符號來指示類似或相似功能性。在元件共享一共同數字後續接著一不同字母之情況下,該等元件係類似或相同的。單獨的數字係指此等元件中之任一者或任何組合。
500:處理程序/方法
510:步驟
520:步驟
530:步驟
540:步驟
Claims (20)
- 一種儲存指令之非暫時性電腦可讀媒體,該等指令在由一運算裝置執行時致使該運算裝置執行包括以下各項之操作: 識別用於資料傳輸之複數個可用網路路徑; 偵測該複數個可用網路路徑中之每一者之一或多個效能度量; 根據該一或多個經偵測效能度量自該複數個可用網路路徑中選擇一可用網路路徑以供在資料傳輸時使用;及 經由該經選擇可用網路路徑傳輸資料。
- 如請求項1之非暫時性電腦可讀媒體,其中選擇該可用網路路徑包括: 使用該一或多個經偵測效能度量判定該等可用網路路徑中之每一者之一得分; 根據該等經判定得分對該複數個可用路徑進行排名;及 使用該排名選擇該可用網路路徑。
- 如請求項1之非暫時性電腦可讀媒體,其中該一或多個效能度量包含潛時,且其中選擇該可用網路路徑進一步包括: 判定該經選擇網路路徑之該潛時小於其他一或多個可用網路路徑之該潛時;及 基於該判定選擇該可用網路路徑。
- 如請求項1之非暫時性電腦可讀媒體,其中該一或多個效能度量包含頻寬,且其中該等操作進一步包括: 回應於判定該一或多個可用網路路徑之一集合之該等頻寬高於一頻寬臨限值,選擇該一或多個可用網路路徑中之每一者;及 經由該等可用網路路徑中之每一者傳輸該資料。
- 如請求項1之非暫時性電腦可讀媒體,其中該等操作進一步包括: 重新偵測該複數個可用網路路徑中之每一者之該一或多個效能度量; 根據該一或多個經重新偵測效能度量自該複數個可用網路路徑中重新選擇一可用網路路徑以供在資料傳輸時使用;及 經由該經重新選擇可用網路路徑傳輸資料。
- 如請求項1之非暫時性電腦可讀媒體,其中該複數個可用網路路徑包含以下各項中之一或多者:透過一伺服器之一路徑、透過一行動通信基地台之一路徑,或透過區域網路(LAN)之一路徑。
- 如請求項1之非暫時性電腦可讀媒體,其中該一或多個網路路徑係用於在一第一用戶端與一第二用戶端之間傳輸資料,且其中傳輸該資料包括由該第一用戶端經由該經選擇可用網路路徑將該資料傳輸至該第二用戶端。
- 如請求項7之非暫時性電腦可讀媒體,其中該等操作進一步包括: 由該第一用戶端自一網路協調服務請求與一共享網路環境相關聯之一或多個網路位址,該共享網路環境包含一地理區域內之用戶端裝置之網路位址; 回應於該請求,自一網路協調服務接收該第二用戶端之一網路位址;及 使用該第二用戶端之該網路位址經由該經選擇可用網路路徑傳輸資料。
- 如請求項7之非暫時性電腦可讀媒體,其中該第一用戶端及該第二用戶端與公開網路位址相關聯,且其中傳輸該資料包括經由公開金鑰密碼編譯以密碼編譯方式保護該資料。
- 如請求項7之非暫時性電腦可讀媒體,其中該共享網路環境與一互動式應用程式相關聯,該互動式應用程式對應於與該地理區域內之地理位置相關聯之地理定位資料。
- 如請求項1之非暫時性電腦可讀媒體,其中一行動通信基地台維持該地理定位資料之一本端狀態,且該等操作進一步包括: 接收由該運算裝置之一使用者進行之一互動,該互動關於對該地理定位資料之一動作,其中該經傳輸資料描述該動作;及 在傳輸描述該動作之該資料之後,自該行動通信基地台接收描述該地理定位資料之一本端狀態之資訊,該資訊指示該本端狀態是否被該行動通信基地台成功更新以反映該動作。
- 如請求項1之非暫時性電腦可讀媒體,其中傳輸該資料進一步包括: 根據該一或多個經偵測效能度量自該複數個可用網路路徑中選擇一額外可用網路路徑; 經由該額外可用網路路徑傳輸該資料之一額外複本。
- 一種電腦實施之方法,其包括: 由一行動通信基地台經由一網路路徑為環繞該行動通信基地台之一地理區域內之用戶端提供同級間通信; 自該地理區域內之一第一用戶端接收資料及一網路路徑之一指示,其中該第一用戶端基於複數個可用網路路徑中之每一者之一或多個效能度量選擇了該網路路徑;及 由該行動通信基地台根據該經選擇網路路徑將該資料傳輸至該地理區域內之一第二用戶端。
- 如請求項13之電腦實施之方法,其進一步包括: 在該行動通信基地台處維持一互動式應用程式之地理定位資料之一本端狀態,該地理定位資料與環繞該行動通信基地台之該地理區域內之地理位置相關聯; 自該第一用戶端接收描述與該地理定位資料相關聯之一動作之資訊; 比較該動作與該地理定位資料之該本端狀態; 回應於基於該比較判定該動作不與該本端狀態衝突,更新該本端狀態以反映該動作;及 根據該經選擇網路路徑將描述該地理定位資料之該經更新本端狀態之資訊傳輸至該第二用戶端。
- 如請求項14之電腦實施之方法,其進一步包括: 自該第一用戶端接收描述與該地理定位資料相關聯之一額外動作之資訊; 比較該額外動作與該地理定位資料之該本端狀態; 回應於基於該比較判定該額外動作與該地理定位資料之該本端狀態衝突,拒絕該額外動作;及 將描述該地理定位資料之該衝突本端狀態之資訊傳輸至該第一用戶端。
- 如請求項14之電腦實施之方法,其進一步包括: 由該行動通信基地台自與該互動式應用程式相關聯之一伺服器接收描述由該伺服器維持之地理定位資料之一主控狀態之資訊;及 使該地理定位資料之該本端狀態與該主控狀態同步。
- 如請求項16之電腦實施之方法,其中該主控狀態反映由該地理區域與環繞一額外行動通信基地台之一額外地理區域之間的一重疊區域內之一第三用戶端裝置進行之一額外動作,且其中該同步進一步包括: 由該行動通信基地台判定該額外動作與該動作衝突; 回應於判定該額外動作與該動作衝突,更新該本端狀態以反映該額外動作而非該動作;及 將描述該地理定位資料之該經更新本端狀態之資訊傳輸至該第一用戶端。
- 如請求項13之電腦實施之方法,其中該第一用戶端係藉由以下操作選擇了該網路路徑: 使用一或多個經偵測效能度量判定該等可用網路路徑中之每一者之一得分; 根據該等經判定得分對該複數個可用路徑進行排名;及 使用該排名選擇該可用網路路徑。
- 如請求項13之電腦實施之方法,其中該一或多個效能度量包含一潛時、抖動、資料丟失、連接穩定性或頻寬中之一或多者。
- 一種系統,其包括: 一伺服器; 一行動通信基地台;及 一第一用戶端裝置,其經由複數個網路路徑連接至一第二用戶端裝置,該複數個網路路徑包含透過該伺服器之一第一網路路徑、透過該行動通信基地台之一第二網路路徑及透過一區域網路之一第三網路路徑,該第一用戶端裝置經組態以: 偵測該複數個網路路徑中之每一者之一或多個效能度量; 根據該一或多個經偵測效能度量自該複數個網路路徑中選擇一網路路徑以供在資料傳輸時使用;及 經由該經選擇可用網路路徑將資料傳輸至該第二用戶端裝置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962951926P | 2019-12-20 | 2019-12-20 | |
US62/951,926 | 2019-12-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202131662A true TW202131662A (zh) | 2021-08-16 |
TWI756998B TWI756998B (zh) | 2022-03-01 |
Family
ID=76438916
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109145172A TWI756998B (zh) | 2019-12-20 | 2020-12-18 | 用於資料傳輸路徑選擇之資料階層協定 |
Country Status (8)
Country | Link |
---|---|
US (2) | US11489763B2 (zh) |
EP (1) | EP4078906A4 (zh) |
JP (1) | JP7485768B2 (zh) |
KR (1) | KR20220115618A (zh) |
AU (1) | AU2020409015A1 (zh) |
CA (1) | CA3165313A1 (zh) |
TW (1) | TWI756998B (zh) |
WO (1) | WO2021124291A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11833423B2 (en) | 2020-09-29 | 2023-12-05 | Activision Publishing, Inc. | Methods and systems for generating level of detail visual assets in a video game |
US11717753B2 (en) * | 2020-09-29 | 2023-08-08 | Activision Publishing, Inc. | Methods and systems for generating modified level of detail visual assets in a video game |
US11724188B2 (en) * | 2020-09-29 | 2023-08-15 | Activision Publishing, Inc. | Methods and systems for selecting a level of detail visual asset during the execution of a video game |
US20220303280A1 (en) * | 2021-03-19 | 2022-09-22 | Seagate Technology Llc | Monitoring trust levels of nodes in a computer network |
Family Cites Families (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6473404B1 (en) * | 1998-11-24 | 2002-10-29 | Connect One, Inc. | Multi-protocol telecommunications routing optimization |
US6865169B1 (en) | 1999-11-02 | 2005-03-08 | Ipwireless, Inc. | Cellular wireless internet access system using spread spectrum and internet protocol |
TW463840U (en) | 2000-05-26 | 2001-11-11 | Great Asia Engineering Consult | Construction device for retaining wall and foundation pile of caisson type |
SE520129C2 (sv) | 2000-10-27 | 2003-05-27 | Terraplay Systems Ab | Kommunikationsinfrastrukturanordning i och en datorläsbar programprodukt för ett databearbetningssystem för fleranvändarapplikationer |
US7616961B2 (en) * | 2002-04-29 | 2009-11-10 | Harris Corporation | Allocating channels in a mobile ad hoc network |
US20040083287A1 (en) * | 2002-10-25 | 2004-04-29 | Xia Gao | Terminal-based resource reservation protocol |
US8149707B2 (en) * | 2003-02-12 | 2012-04-03 | Rockstar Bidco, LP | Minimization of radio resource usage in multi-hop networks with multiple routings |
US20090075642A1 (en) | 2003-10-27 | 2009-03-19 | Olli Rantapuska | Method and devices for relayed peer-to-peer communications between terminals in mobile networks |
US20170310500A1 (en) | 2005-03-16 | 2017-10-26 | Icontrol Networks, Inc. | Controlling Data Routing in Premises Management Systems |
WO2006125454A1 (en) | 2005-05-23 | 2006-11-30 | Telefonaktiebolaget L.M. Ericsson (Publ.) | Traffic diversion in an ethernet-based access network |
US20070104190A1 (en) | 2005-11-07 | 2007-05-10 | Nokia Corporation | User datagram protocol packet processing on network elements |
EP1986377A4 (en) * | 2006-01-17 | 2012-08-08 | Sharp Kk | NETWORK CONTROL DEVICE, NETWORK SYSTEM, PROGRAM, COMMUNICATION TERMINAL, AND MOBILE COMMUNICATION NETWORK CONTROL METHOD |
US7839815B2 (en) | 2006-02-10 | 2010-11-23 | Alcatel-Lucent Usa Inc. | Triggering migration of a network access agent associated with an access terminal |
US8787366B2 (en) | 2007-06-29 | 2014-07-22 | Qualcomm Incorporated | Community driven program access system and method |
US8407605B2 (en) | 2009-04-03 | 2013-03-26 | Social Communications Company | Application sharing |
EP2225664A4 (en) | 2007-11-29 | 2010-11-10 | Bigfoot Networks Inc | TELEPHONE GUIDANCE GUIDANCE APPARATUS AND METHOD THEREFOR |
CA2967461C (en) | 2008-04-29 | 2020-01-28 | Nokia Solutions And Networks Oy | Simplified local routing |
US8619756B2 (en) * | 2009-07-15 | 2013-12-31 | Qualcomm Incorporated | Systems and methods for providing resource allocation meeting communication constraints for multi-hop network data flows |
US8335163B2 (en) * | 2009-10-27 | 2012-12-18 | Microsoft Corporation | Quality of service (QOS) based systems, networks, and advisors |
US9992762B2 (en) | 2010-02-25 | 2018-06-05 | James Michael Graziano | Reverse path communication system |
JP2011188358A (ja) | 2010-03-10 | 2011-09-22 | Panasonic Corp | Vpn装置及びip通信装置 |
US8402515B2 (en) | 2010-05-06 | 2013-03-19 | Jonathan Weizman | Apparatus and method for establishing a peer-to-peer communication session with a client device |
JP5507350B2 (ja) | 2010-06-11 | 2014-05-28 | 任天堂株式会社 | 携帯型情報端末、携帯型情報端末制御プログラム、携帯型情報システム、および、携帯型情報端末制御方法 |
KR101763887B1 (ko) | 2011-01-07 | 2017-08-02 | 삼성전자주식회사 | 디바이스간 동기화된 인터랙션을 제공하는 콘텐츠 동기화 장치 및 방법 |
KR101292463B1 (ko) * | 2011-01-27 | 2013-07-31 | 주식회사 팬택 | 원격으로 증강현실 서비스를 공유하는 증강현실 시스템 및 그 방법 |
JP5801907B2 (ja) * | 2011-02-21 | 2015-10-28 | ブラックベリー リミテッド | セルラネットワークにおける管理されたピアツーピア共有 |
CN102843349B (zh) | 2011-06-24 | 2018-03-27 | 中兴通讯股份有限公司 | 实现移动增强现实业务的方法及系统、终端及服务器 |
US20130034047A1 (en) | 2011-08-05 | 2013-02-07 | Xtreme Labs Inc. | Method and system for communicating with web services using peer-to-peer technology |
CN102984186A (zh) | 2011-09-05 | 2013-03-20 | 中兴通讯股份有限公司 | 会话建立方法及装置 |
JP6110866B2 (ja) | 2011-10-28 | 2017-04-05 | マジック リープ, インコーポレイテッド | 拡張現実および仮想現実のためのシステムおよび方法 |
WO2013082407A1 (en) | 2011-12-02 | 2013-06-06 | No Strings Toys, Llc | Wireless devices and control method |
US20130178257A1 (en) * | 2012-01-06 | 2013-07-11 | Augaroo, Inc. | System and method for interacting with virtual objects in augmented realities |
JP6048784B2 (ja) | 2012-02-16 | 2016-12-21 | 任天堂株式会社 | ゲームシステム、ゲーム制御方法、携帯型ゲーム装置及びゲーム制御プログラム |
EP2645667A1 (en) * | 2012-03-27 | 2013-10-02 | Alcatel-Lucent | Apparatus for updating and transmitting augmented reality data |
US20140015858A1 (en) * | 2012-07-13 | 2014-01-16 | ClearWorld Media | Augmented reality system |
US9148484B2 (en) | 2013-07-15 | 2015-09-29 | Federico Fraccaroli | Method, system and apparatus for providing a mediated sensory experience to users positioned in a shared location |
WO2014031899A1 (en) * | 2012-08-22 | 2014-02-27 | Goldrun Corporation | Augmented reality virtual content platform apparatuses, methods and systems |
CN102968549B (zh) | 2012-10-17 | 2016-01-20 | 北京大学 | 基于智能移动终端设备的多人在线交互方法与系统 |
EP2951811A4 (en) | 2013-01-03 | 2016-08-17 | Meta Co | DIGITAL EYES FOR EXTRAMISSIVE SPATIAL IMAGING, PROCESSES AND SYSTEMS FOR VIRTUAL OR ENLARGED VISIBILITY, MANIPULATION, PRODUCTION OR INTERACTION WITH OBJECTS, MATERIALS, OR OTHER UNITS |
GB2513345B (en) | 2013-04-23 | 2017-07-26 | Gurulogic Microsystems Oy | Data communication system and method |
US9413797B2 (en) | 2013-04-23 | 2016-08-09 | Gurulogic Microsystems Oy | Data communication system and method |
KR20160092014A (ko) | 2013-12-01 | 2016-08-03 | 인터디지탈 패튼 홀딩스, 인크 | 정책 기반 결정 엔진을 사용하는 경험 품질 최적화 |
CN103760972B (zh) | 2013-12-18 | 2017-03-01 | 微软技术许可有限责任公司 | 跨平台的增强现实体验 |
US10142444B2 (en) | 2014-07-01 | 2018-11-27 | Trinity Mobile Networks, Inc. | Methods, devices, and systems for implementing centralized hybrid wireless self-organizing networks |
KR101608172B1 (ko) | 2014-12-22 | 2016-03-31 | 주식회사 넥슨코리아 | 객체를 제어하는 방법 및 장치 |
US11627639B2 (en) | 2015-01-26 | 2023-04-11 | Ievgen Verzun | Methods and apparatus for HyperSecure last mile communication |
JP5937709B1 (ja) | 2015-01-29 | 2016-06-22 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 通信制御装置、通信制御方法及び通信制御プログラム |
US10382322B2 (en) | 2015-11-20 | 2019-08-13 | Sap Se | Data routing for electronic devices |
US10201755B2 (en) | 2016-02-25 | 2019-02-12 | Pick A Play Networks Inc. | System and method for providing a platform for real time interactive game participation |
US10238965B2 (en) | 2016-04-28 | 2019-03-26 | Sony Interactive Entertainment America Llc | Cloud gaming device handover |
KR101940720B1 (ko) | 2016-08-19 | 2019-04-17 | 한국전자통신연구원 | 공간 기반 증강현실을 위한 콘텐츠 저작 장치 및 그 방법 |
US10812936B2 (en) | 2017-01-23 | 2020-10-20 | Magic Leap, Inc. | Localization determination for mixed reality systems |
CN106656800B (zh) * | 2017-02-21 | 2020-04-14 | 网宿科技股份有限公司 | 一种路径选取方法及系统、网络加速节点及网络加速系统 |
US20180262432A1 (en) | 2017-03-10 | 2018-09-13 | Vidscale, Inc. | Vertical packet aggregation using a distributed network |
JP2018201162A (ja) * | 2017-05-29 | 2018-12-20 | キヤノン株式会社 | 通信装置、通信装置の制御方法、およびプログラム |
US10885714B2 (en) | 2017-07-07 | 2021-01-05 | Niantic, Inc. | Cloud enabled augmented reality |
US10717005B2 (en) | 2017-07-22 | 2020-07-21 | Niantic, Inc. | Validating a player's real-world location using activity within a parallel reality game |
WO2019189681A1 (ja) * | 2018-03-30 | 2019-10-03 | 日本電気株式会社 | 通信制御装置、通信システム、通信制御方法及びプログラム |
US11077365B2 (en) | 2018-06-27 | 2021-08-03 | Niantic, Inc. | Low latency datagram-responsive computer network protocol |
US10911381B2 (en) | 2018-12-27 | 2021-02-02 | Verizon Media Inc. | Presenting and sharing augmented reality objects |
CA3130880C (en) | 2019-02-25 | 2024-01-02 | Niantic, Inc. | Augmented reality mobile edge computing |
US11182966B2 (en) | 2019-06-24 | 2021-11-23 | At&T Intellectual Property I, L.P. | System for collaboration of augmented reality events |
-
2020
- 2020-12-18 US US17/127,999 patent/US11489763B2/en active Active
- 2020-12-18 JP JP2022538070A patent/JP7485768B2/ja active Active
- 2020-12-18 WO PCT/IB2020/062243 patent/WO2021124291A1/en active Search and Examination
- 2020-12-18 KR KR1020227025056A patent/KR20220115618A/ko active Search and Examination
- 2020-12-18 AU AU2020409015A patent/AU2020409015A1/en active Pending
- 2020-12-18 EP EP20903772.0A patent/EP4078906A4/en active Pending
- 2020-12-18 TW TW109145172A patent/TWI756998B/zh active
- 2020-12-18 CA CA3165313A patent/CA3165313A1/en active Pending
-
2022
- 2022-09-26 US US17/952,875 patent/US11757761B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
AU2020409015A1 (en) | 2022-08-25 |
JP7485768B2 (ja) | 2024-05-16 |
US11757761B2 (en) | 2023-09-12 |
US20230014576A1 (en) | 2023-01-19 |
JP2023507770A (ja) | 2023-02-27 |
CN115136559A (zh) | 2022-09-30 |
CA3165313A1 (en) | 2021-06-24 |
KR20220115618A (ko) | 2022-08-17 |
TWI756998B (zh) | 2022-03-01 |
WO2021124291A1 (en) | 2021-06-24 |
EP4078906A1 (en) | 2022-10-26 |
US20210194794A1 (en) | 2021-06-24 |
EP4078906A4 (en) | 2023-06-21 |
US11489763B2 (en) | 2022-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI756998B (zh) | 用於資料傳輸路徑選擇之資料階層協定 | |
JP7518139B2 (ja) | 拡張現実モバイルエッジコンピュータ | |
KR102276899B1 (ko) | 낮은 레이턴시 데이터그램-응답성 컴퓨터 네트워크 프로토콜 | |
CN115136559B (zh) | 用于数据传输路径选择的数据层次结构协议 |