KR20090118955A - Secured cross platform networked multiplayer communication and game play - Google Patents
Secured cross platform networked multiplayer communication and game play Download PDFInfo
- Publication number
- KR20090118955A KR20090118955A KR1020097018515A KR20097018515A KR20090118955A KR 20090118955 A KR20090118955 A KR 20090118955A KR 1020097018515 A KR1020097018515 A KR 1020097018515A KR 20097018515 A KR20097018515 A KR 20097018515A KR 20090118955 A KR20090118955 A KR 20090118955A
- Authority
- KR
- South Korea
- Prior art keywords
- computing device
- platform
- game
- application
- clearinghouse
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 30
- 230000004044 response Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000005055 memory storage Effects 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
Images
Classifications
-
- 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/32—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
- A63F13/323—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections between game devices with different hardware characteristics, e.g. hand-held game devices connectable to game consoles or arcade machines
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- A63F13/12—
-
- 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
-
- 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/34—Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using peer-to-peer connections
-
- 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/70—Game security or game management aspects
- A63F13/71—Game security or game management aspects using secure communication between game devices and game servers, e.g. by encrypting game data or authenticating players
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
-
- 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
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/53—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
- A63F2300/532—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing using secure communication, e.g. by encryption, authentication
-
- 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
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/50—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
- A63F2300/55—Details of game data or player data management
- A63F2300/552—Details of game data or player data management for downloading to client devices, e.g. using OS version, hardware or software profile of the client device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Health & Medical Sciences (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Signal Processing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Child & Adolescent Psychology (AREA)
- Small-Scale Networks (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
FPS(first-person shooter) 게임과 같은 소프트웨어 애플리케이션은 게임 콘솔(예를 들어, 마이크로 소프트의 XboxTM)과 개인용 컴퓨터(PC) 모두에서 가능하다. 그러나, 게임 콘솔은 네트워크 연결을 통해 PC와 통신할 수 없다. 따라서, 예를 들어 게임 콘솔은 PC와 온라인 비디오 게임을 플레이할 수 없다.Software applications such as FPS (first-person shooter) game is available in both a game console (eg, Xbox TM, Microsoft) and personal computer (PC). However, the game console cannot communicate with the PC via a network connection. Thus, for example, a game console cannot play online video games with a PC.
XBox LiveTM는 마이크로소프트에 의해 만들어져서 운영되는 온라인 멀티플레이어 게임 및 컨텐츠 배포 시스템이다. 마이크로소프의 Live AnywhereTM는 PC와 휴대폰과 같은 다양한 비-Xbox 플랫폼을 더 적은 기능성을 가지며 Xbox Live와 연결하도록 한다. 예를 들어, 크로스-플랫폼 플레이가 가능하지 않아서, PC 플레이어는 Xbox 플레이어와 겨룰 수 없다.XBox Live TM is an online multiplayer gaming and content distribution system that creates so operated by Microsoft. Live Anywhere TM micro Thorpe has less functionality for a variety of non--Xbox platforms such as the PC and the mobile phone must be connected to Xbox Live. For example, cross-platform play is not possible, so a PC player cannot compete with an Xbox player.
게임 콘솔에서 실행되는 소프트웨어 애플리게이션(예를 들어, 게임 또는 타이틀)의 사용자는 PC와 같은 범용 컴퓨팅 장치에서 실행되는 동일한 소프트웨어 애플리케이션의 사용자와 실시간으로 보안된 상호작용을 할 수 있다. 따라서, 게임 콘솔의 게임 플레이어는 PC 상의 게임 플레이어와 온라인 플레이를 할 수 있다. 게임 콘솔은, 예를 들어 클리어링하우스(clearinghouse)를 통해 또는 직접적으로 네트워크 또는 시스템 링크 연결을 통해 범용 컴퓨팅 장치와 보안된 통신을 할 수 있다.A user of a software application (eg, a game or title) running on a game console can have secure interactions in real time with a user of the same software application running on a general purpose computing device such as a PC. Thus, the game player of the game console can play online with the game player on the PC. The game console may be in secure communication with a general purpose computing device, for example, via a clearinghouse or directly via a network or system link connection.
스택과 포트는 크로스-플랫폼 기능을 수용할 수 있도록 설정된다. 추가적으로, 보안 키 교환뿐만 아니라 빅-엔디안 및 리틀-엔디안 바이트 순서화가 제공된다.Stacks and ports are configured to accommodate cross-platform functionality. In addition, big-endian and little-endian byte ordering are provided as well as secure key exchange.
본 설명은 아래의 실시예에서 상세히 개시되는 사상의 발췌를 단순화된 형식으로 소개하기 위해 제공된다. 본 설명은 청구된 주요 발명의 중요한 태양 또는 핵심적인 태양을 식별하기 위한 것으로 해석되지 않고, 청구된 주요 발명의 범위를 제한하기 위한 것으로 해석되지 않는다. This description is provided to introduce a selection of concepts in a simplified form that are disclosed in detail in the Examples below. This description is not to be interpreted as to identify key aspects or key aspects of the claimed subject matter, and is not to be construed as limiting the scope of the claimed subject matter.
도 1은 예시적인 크로스-플랫폼 네트워크 시스템의 블록도.1 is a block diagram of an exemplary cross-platform network system.
도 2는 다른 예시적인 크로스-플랫폼 네트워크 시스템의 블록도.2 is a block diagram of another exemplary cross-platform network system.
도 3은 예시적인 포팅 기술의 흐름도.3 is a flow chart of an exemplary porting technique.
도 4는 클리어링하우스 실시예를 위한 예시적인 키 교환 과정의 도면.4 is a diagram of an exemplary key exchange process for a clearinghouse embodiment.
도 5는 시스템 링크 실시예를 위한 예시적인 키 교환 과정의 도면.5 is a diagram of an exemplary key exchange process for a system link embodiment.
도 6은 예시적인 운영 환경을 도시하는 도면.6 illustrates an exemplary operating environment.
도 1은 게임 콘솔(10)이 클리어링하우스(20)를 통해 범용 컴퓨팅 장치(30)와 네트워킹되는 예시적인 크로스-플랫폼 시스템의 블록도이다. 게임 콘솔(10)은 온 라인 게임에 적용되는 임의의 컴퓨팅 장치가 될 수 있다. 예를 들어, 게임 콘솔(10)은 하나 이상의 온라인 게임 타이틀이 로딩된 개인용 컴퓨터(PC)가 될 수 있다. 게임 콘솔(10)은 휴대용 장치일 수 있고 하나 이상의 게임 타이틀의 사용을 위해 활용될 수 있다. 게임 타이틀은 게임 콘솔(10) 상에 로딩되고 실행될 수 있는 이산 애플리케이션일 수 있다. 게임 타이틀은 CD, DVD, 게임 카트리지 등과 같은 게임 콘솔(10)에 의해 판독될 수 있는 매체 상에 저장될 수 있다.1 is a block diagram of an exemplary cross-platform system in which
통상적으로, 사용자는 많은 게임 타이틀을 소유할 수 있다. 사용자는 개별적인 게임 타이틀을 게임 콘솔(10)에 로딩하고 실행하여 동일한 게임 타이틀을 자신의 각각의 게임 콘솔 또는 컴퓨팅 장치 상에 로딩하여 실행하는 다른 사용자와 온라인 게임을 플레이할 수 있다.Typically, a user can own many game titles. A user may load and execute individual game titles on
게임 콘솔(10)은 바람직하게는 예를 들어, 마이크로 소프트의 XboxTM와 같은 게임-전용 콘솔이고, 범용 컴퓨팅 장치(30)는 바람직하게는 예를 들어, PC, 휴대용 장치 또는 휴대폰이다. 클리어링하우스(20)는 예를 들어, XBox LiveTM와 같은 온라인 멀티플레이어 게임 및 컨텐츠 배포 서비스 또는 시스템이 될 수 있다. 게임 콘솔(10) 및 컴퓨팅 장치(30)는 각각, 예를 들어 인터넷 또는 다른 네트워크를 통해 클리어링하우스(20)와 통신할 수 있다.
클리어링하우스(20)는 바람직하게는 보안된 인터넷 액세스를 위한 자신의 네트워크 스택 프로토콜(22)을 가진다. 아래에 상세히 개시되는 네트워크 스택 프로토콜(22)은 게임 콘솔(10)에 의해 사용되고, 컴퓨팅 장치(30)가 클리어링하우 스(20)와 동일한 프로토콜을 가지는 코드를 가지도록 컴퓨팅 장치(30)로 포팅될 수 있다. 프로토콜은 게임 콘솔(20)과 컴퓨팅 장치(30) 사이의 크로스-플랫폼을 토크할 수 있다.The
신뢰성을 얻을 수 있도록 플랫폼 유형(예를 들어, 게임 콘솔, PC 등)을 포함하는 키 교환이 존재한다. 플랫폼 유형은 키 교환 메시지에 포함될 수 있고 예를 들어 장치가 게임 콘솔인지 또는 PC인지 확인하는 클리어링하우스(20)를 통해 송신될 수 있다. 키 교환은 아래에서 상세히 개시된다.There is a key exchange that includes the platform type (eg game console, PC, etc.) to achieve reliability. The platform type may be included in the key exchange message and sent via the
도 2는 게임 콘솔이 도 1에서와 같이 클리어링하우스(20)를 통해서가 아니라, 예를 들어 시스템 링크 또는 LAN(local area network) 연결을 통해 직접 범용 컴퓨팅 장치(30)와 네트워킹되는 예시적인 시스템의 블록도이다.FIG. 2 illustrates an example system where the game console is networked with the general
시스템 링크는 게임 콘솔이 클리어링하우스를 통할 필요없이 상호 간에 직접 연결될 수 있도록 한다. 본 연결을 설정하기 위한 프로토콜은 클리어링하우스를 통해 콘솔과 연결을 설정하는 것과 상이하다. 클리어링하우스를 통하는 것 대신에, 콘솔은 브로드캐스트 패킷을 송신하고 응답을 기다린다. 이는 시스템 링크가 서브넷 상에서 동작하고 브로드캐스트 트래픽을 라우팅하도록 설정되지 않는 이상 임의의 유형의 라우터를 거쳐서 동작하지 않는다는 것을 의미한다. 바람직하게는, 브로드캐스트 패킷은 (게임 타이틀마다) 공유된 키를 사용해서 암호화된다. 키 구조는 크로스-플랫폼 플레이를 나타내는 플래그를 수용할 수 있다.System links allow game consoles to connect directly to each other without having to go through a clearing house. The protocol for establishing this connection is different from establishing a connection with the console through the clearing house. Instead of going through the clearinghouse, the console sends out broadcast packets and waits for a response. This means that the system link does not work over any type of router unless the system link operates on a subnet and is set up to route broadcast traffic. Preferably, the broadcast packet is encrypted using a shared key (per game title). The key structure may accept a flag indicating cross-platform play.
따라서, 게임 콘솔에서 실행되는 소프트웨어 애플리케이션(예를 들어, 게임 또는 타이틀)의 사용자는 컴퓨팅 장치에서 실행되는 동일한 소프트웨어 애플리케이 션의 사용자와 실시간으로 상호작용할 수 있다. 결과적으로, 게임 콘솔 상의 게임 플레이어는 PC 상의 게임 플레이어와 온라인 플레이를 할 수 있다.Thus, a user of a software application (e.g., a game or a title) running on a game console can interact in real time with a user of the same software application running on the computing device. As a result, the game player on the game console can play online with the game player on the PC.
도 1 및 도 2에 1개의 게임 콘솔(10)과 1개의 컴퓨팅 장치(30)가 도시되었지만, 클리어링하우스, 시스템 링크, LAN 또는 다른 수단을 통한 복수의 콘솔(10)과 컴퓨팅 장치(30)가 서로 네트워킹될 수 있다는 것을 고려해야 한다.Although one
범용 컴퓨팅 장치 상에서, 복수의 프로세스는 복수의 전용 서버 인스턴스가 실행될때 또는 게임 대시보드(dashboard)가 별개의 애플리케이션으로서 실행될 때와 같이 동시에 실행될 수 있다. 따라서, 각 프로세스 또는 애플리케이션은 자신의 브로드캐스트 포트 및 아마도 상이한 게임 데이터 포트를 요구할 수 있다.On a general purpose computing device, a plurality of processes may be executed simultaneously, such as when a plurality of dedicated server instances are running or when a game dashboard is run as a separate application. Thus, each process or application may require its own broadcast port and possibly a different game data port.
IP 브로드캐스트는, 타이틀 전용일 수 있고 사용자에 의해 설정되는 것도 가능한 범용 컴퓨팅 장치의 특정한 포트로 전송된다. 따라서, 각 타이틀은 자신의 선택 포트를 디폴트로 할 수 있고 또는 사용할 포트를 사용자에게 선택하게 할 수 있다. An IP broadcast is sent to a specific port of a general purpose computing device, which may be dedicated to the title and may also be set by the user. Thus, each title can default to its own selected port or allow the user to select a port to use.
도 3은 시스템 링크 설정의 예시적인 포팅 기술의 흐름도이다. 200단계에서, 게임 타이틀 또는 다른 애플리케이션이 범용 컴퓨팅 장치 상에서 동작된다. 210단계에서, 컴퓨팅 장치가 사용할 포트를 결정한다. 포트는 동작되는 게임 타이틀 또는 애플리케이션에 기초하거나 사용자에 의해 설정될 수 있다. 220단계에서, 컴퓨팅 장치가 이에 따라 포트를 설정한다.3 is a flowchart of an exemplary porting technique for system link establishment. At 200, a game title or other application is run on a general purpose computing device. In
이더넷 레벨 어드레싱은 통상적으로 게임 콘솔 브로드캐스팅에서 사용된다. 즉, 패킷은 IP 레벨 아래의 수신기의 MAC 어드레스로 직접 라우팅된다. 따라서, IP 헤더의 어드레스는 사용되지 않고 의미가 없어서, 바람직하게는 특정한 어드레스(예를 들어, 0.0.0.1)로 설정되고 특정한 포트(예를 들어, 포트 3074)로부터 송신된다. 따라서, 크로스-플랫폼 네트워크 게임 플레이를 위해서 컴퓨팅 장치에서 사용되는 포트는 게임 콘솔에서 사용하는 포트(예를 들어, 포트 3074)와 상이할 수 있다. 게임 콘솔 상의 포트는, 예를 들어 게임 타이틀 또는 사용자 설정에 따라 변경될 수 있음을 고려해야 한다.Ethernet level addressing is commonly used in game console broadcasting. In other words, the packet is routed directly to the MAC address of the receiver below the IP level. Thus, the address of the IP header is not used and is meaningless, preferably set to a specific address (e.g. 0.0.0.1) and transmitted from a particular port (e.g. port 3074). Thus, the port used in the computing device for cross-platform network game play may be different from the port used in the game console (eg, port 3074). It should be taken into account that the port on the game console may change depending on the game title or user settings, for example.
게임 콘솔 상에서, 크로스-플랫폼 통신은 바람직하게는 오직 크로스-플랫폼 전용 비트가 게임의 실행가능한 헤더에 설정될 때만 가능하다. 설정될 수 있는 비트는 게임이 이더넷 어드레싱 대신에 시스템 링크에 대하여 사용하는 IP 어드레싱을 사용한다는 것을 나타낸다. 이는 시스템이 게임 콘솔과 범용 컴퓨팅 장치 사이에서 링크할 수 있도록 한다. 비트가 설정되지 않으면, 게임 콘솔과 범용 컴퓨팅 장치 사이의 최초 키 교환이 거부된다.On game consoles, cross-platform communication is preferably only possible when the cross-platform dedicated bits are set in the game's executable header. Bits that can be set indicate that the game uses the IP addressing that is used for the system link instead of Ethernet addressing. This allows the system to link between the game console and the general purpose computing device. If the bit is not set, the first key exchange between the game console and the general purpose computing device is rejected.
컴퓨팅 장치 상에서, 크로스-플랫폼 통신은 바람직하게는 언제나 가능하다.On a computing device, cross-platform communication is preferably always possible.
시스템 링크 브로드캐스트를 위하여 사용하는 포트를 설정하기 위해서, 개시되는 API가 애플리케이션 또는 게임 코드로부터 호출될 수 있다. 애플리케이션 또는 게임은 자신의 코드 상에서 사용하는 포트를 고정시킬 수 있고 또는 사용자가 사용되는 포트를 관찰하고 수정하도록 사용자 인터페이스를 제공할 수 있다. 시스템 링크 포트의 설정은 바람직하게는 클리어링하우스를 통한 연결을 위해 사용되는 포트, 예를 들어 3074로 유지되거나 또는 3074를 허용하지 않으면 장치와 서로 협의한 포트에 영향을 주지 않는다.In order to set the port to use for system link broadcast, the initiated API can be called from the application or game code. An application or game can pin the ports it uses on its code or provide a user interface for the user to observe and modify the ports used. The setting of the system link port is preferably maintained at the port used for connection through the clearinghouse, for example 3074, or does not affect ports negotiated with the device unless 3074 is allowed.
API의 예시는 다음과 같다.An example of the API is as follows.
XNetSetSystemLinkPortXNetSetSystemLinkPort
INT WSAAPI XNetSetSystemLinkPort(INT WSAAPI XNetSetSystemLinkPort (
WORD wSystemLinkPortWORD wSystemLinkPort
).).
wSystemLinkPort 파라미터는 시스템 링크 브로드캐스트 및 데이터를 위해 사용하는 포트 번호를 지칭한다. 성공적이면 API는 0을 반환하고, 그렇지 않으면 에러 코드를 반환한다. 예를 들어, 게임의 실행가능한 헤더에 XEX_PRIVILEGE_CROSSPLATFORM_SYSTEM_LINK 비트가 설정되지 않으면 XNetSetSystemLinkPort는 오류가 난다. 선택된 포트가 시스템에 의해 사용 중이면, 예를 들어 "사용 중인 어드레스(Address in use)"가 반환될 수 있다.The wSystemLinkPort parameter refers to the port number used for system link broadcast and data. If successful, the API returns 0, otherwise it returns an error code. For example, XNetSetSystemLinkPort will fail if the XEX_PRIVILEGE_CROSSPLATFORM_SYSTEM_LINK bit is not set in the game's executable header. If the selected port is in use by the system, for example "Address in use" may be returned.
일예시에서, XNetSetSystemLinkPort가 호출되지 않으면 포트 3074가 디폴트 포트이다. 바람직하게는, XNetSetSystemLinkPort는 애플리케이션 또는 게임의 시동 전에 호출되고, 그렇지 않으면 애플리케이션 또는 게임은 오류가 난다.In one example, port 3074 is the default port unless XNetSetSystemLinkPort is called. Preferably, the XNetSetSystemLinkPort is called before the application or game starts up, otherwise the application or game fails.
XNetSetSystemLinkPort가 성공적이면, 애플리케이션 또는 게임이 시작될 때 설정 포트가 바인딩(binding)에 대해서 사용가능하다는 것이 보증된다. 즉, XNetSetSystemLinkPort는 사용을 위해 포트를 록킹(lock)해서 XNetSetSystemLinkPort의 호출과 애플리케이션 또는 게임의 시동 사이에 다른 프로세스에 의해 포트가 보유될 가능성은 없다.If the XNetSetSystemLinkPort is successful, it is guaranteed that the configuration port is available for binding when the application or game is started. In other words, the XNetSetSystemLinkPort locks the port for use, so there is no possibility that the port will be held by another process between the call to the XNetSetSystemLinkPort and the startup of the application or game.
포트 번호는 디스크에 대해 지속적이지 않고 애플리케이션 또는 게임이 종료 할 때까지 사용을 위해 전역적으로(globally) 저장된다. 애플리케이션 또는 게임이 종료할 때, 시스템 링크 포트는 리셋된다(예를 들어, 3074로 복귀).Port numbers are not persistent to disk and are stored globally for use until the application or game exits. When the application or game ends, the system link port is reset (e.g., returns to 3074).
시스템 링크 포트를 얻는 다른 API가 개시된다.Another API is disclosed to obtain a system link port.
XNetGetSystemLinkPortXNetGetSystemLinkPort
INT WSAAPI XNetGetSystemLinkPort(INT WSAAPI XNetGetSystemLinkPort (
WORD* pwSystemLinkPortWORD * pwSystemLinkPort
).).
pwSystemLinkPort 파라미터는 시스템 링크 브로드캐스트 및 데이터를 위해 현재 설정되는 포트 번호이다.The pwSystemLinkPort parameter is the port number currently set for system link broadcasts and data.
성공적이면 API는 0을 반환하고, 그렇지 않으면 에러 코드를 반환한다. 게임의 실행가능한 헤더에 XEX_PRIVILEGE_CROSSPLATFORM_SYSTEM_LINK 비트가 설정되지 않으면 XNetGetSystemLinkPort는 오류가 난다.If successful, the API returns 0, otherwise it returns an error code. XNetGetSystemLinkPort will fail if the XEX_PRIVILEGE_CROSSPLATFORM_SYSTEM_LINK bit is not set in the game's executable header.
바람직하게는 보안된 키 교환이 수행된다. 클리어링하우스를 사용하는 실시예에 대해서, 예시적인 연결 프로토콜은 바람직하게는 클라이언트들(게임 콘솔 및 범용 컴퓨팅 장치) 사이의 모든 연결들이 키 교환을 요청하는 것을 요구한다. 패킷은 이들이 범용 컴퓨팅 장치로부터 왔는지를 판정하기 위해 검사된다. 이러한 경우에, 필요하다면 상이하게 데이터를 처리할 수 있도록, 정보는 클리어링하우스 또는 다른 목적지로 지시된다.Preferably secured key exchange is performed. For an embodiment using a clearinghouse, the exemplary connection protocol preferably requires that all connections between clients (game console and general purpose computing device) request a key exchange. The packets are examined to determine if they are from a general purpose computing device. In this case, the information is directed to a clearing house or other destination so that the data can be processed differently if necessary.
도 4는 클리어링하우스 실시예에 대한 예시적인 키 교환 과정의 도면이고 인증 서비스(410), 클리어링하우스 키 서버(420) 및 클리어링하우스 게이트웨이 서 버(430)와 통신하는 게임 클라이언트와 같은 클라이언트(400)를 도시한다.4 is a diagram of an exemplary key exchange process for a clearinghouse embodiment and
게임 클라이언트(400)는 인증 서비스(410)로 로그인 크레덴셜(login crendentials; 405)을 송신한다. 인증 서비스(410)는 클라이언트에 인증 티켓(authentication ticket; 415)으로 응답한다. 게임 클라이언트(400)는 클리어링하우스 키 서버(420)에 인증 티켓(415)을 제공한다. 클리어링하우스 키 서버(420)는 클리어링하우스 티켓(425) 및 포인터(427)로 클리어링하우스 게이트웨이 서버(430)에 응답한다. 게임 클라이언트(400)는 클리어링하우스 서비스를 사용하기 위해 클리어링하우스 게이트웨이 서버(430)에 연결할 수 있다.The
키 교환 메시지는 바람직하게는 게임을 실행하는 머신이 클리어링하우스와 연결하기 위해 사용해야 하는 포트 번호를 포함한다.The key exchange message preferably contains the port number that the machine running the game should use to connect with the clearinghouse.
도 5를 참조하여 개시되는 것과 같이, 클리어링하우스를 사용하지 않는 실시예(예를 들어, 시스템 링크 실시예)에서, 키 교환은 바람직하게는 크로스-플랫폼 연결을 나타내는 키의 플래그를 사용한다.As disclosed with reference to FIG. 5, in an embodiment that does not use a clearinghouse (eg, a system link embodiment), key exchange preferably uses a flag of a key that represents a cross-platform connection.
도 5는 시스템 링크 실시예를 위한 예시적인 키 교환 과정의 도면이다. 도 5는 호스트 및 다른 게임 클라이언트(550)로서 동작하는 게임 클라이언트(500)를 도시한다. 클라이언트는, 예를 들어 LAN 서브넷을 통해 통신할 수 있다. 도시되지 않았지만, 네트워크 상의 추가적인 게임 클라이언트도 고려되어야 한다.5 is a diagram of an exemplary key exchange process for a system link embodiment. 5 shows
호스트 게임 클라이언트(500)는 자신의 존재 및 사용가능성(505)을 브로드캐스트한다. 게임 클라이언트(550)는 브로드캐스트를 해독하고 게임(510)에 참여하라는 브로드캐스트로 응답한다. 호스트 게임 클라이언트(500)는 참여 요청을 받아 들이고 게임 세션 키(515)를 브로드캐스트한다. 게임 클라이언트(500, 550)는 바람직하게는 게임 세션을 수행하기 위해 상호(520) 간에 유니캐스트(unicast)한다. 컴퓨터 네트워크에서, 유니캐스트는 단일 목적지로의 정보 패킷의 송신이다. 바람직하게는, 모든 브로드캐스트는 타이틀 전용 키로 암호화되고, 모든 유니캐스트는 게임 세션 전용 키로 암호화된다.The
바이트 순서화와 관련해서, 컴퓨팅에서 엔디안니스(endianness)는 일련의 더 작은 유닛과 같은 데이터의 일부 유형을 나타내기 위해 사용되는 순서화이다. 통상적인 경우에는 (주어진 메모리 어드레싱 기법과 관련하여) 컴퓨터 메모리에 바이트로서 정수 값이 저장되는 순서 및 네트워크를 통한 전송 순서이다. 바이트와 관련해서, 엔디안니스는 또한 바이트 순서로서도 지칭된다.With respect to byte ordering, in computing, endianness is the ordering used to represent some type of data, such as a series of smaller units. Typical cases are the order in which integer values are stored as bytes in computer memory (in relation to a given memory addressing technique) and the order of transmission over the network. In terms of bytes, endianness is also referred to as byte order.
대부분의 컴퓨터 프로세서는 개념상으로 인코딩된 값이 단순한 연접(concatenation)에 의해 획득될 수 있도록 단순히 바이트의 순서로서 정수를 저장한다. n-바이트 정수 값을 위해 이는 n!의 가능한 표현(각 바이트 순열마다 하나씩)을 허용한다. 이들의 2개의 가장 보편적인 방법은 리틀-엔디안으로서 알려진 증가하는 메모리 주소에 증가하는 자리수를 저장하는 방법과, 이의 반대인 빅-엔디안이라 불리우는 방법이다.Most computer processors simply store integers as sequences of bytes so that the conceptually encoded values can be obtained by simple concatenation. For n-byte integer values this allows for a possible representation of n! (one for each byte permutation). Two of their most common methods are storing increasing digits in increasing memory addresses, known as little-endian, and vice versa, called big-endian.
모든 컴퓨터 아키텍쳐는 빅-엔디안 또는 리틀-엔디안이다. 빅-엔디안 아키텍쳐는, 예를 들어 마이크로소프트의 Xbox 및 IBM의 파워 PC에서 발견되고, 인텔 x86 프로세서(및 이들의 클론)은 리틀-엔디언 포맷을 사용한다.All computer architectures are big-endian or little-endian. Big-endian architectures are found, for example, on Microsoft's Xbox and IBM's Power PCs, and Intel x86 processors (and their clones) use the little-endian format.
도 6 및 다음의 설명은 본 발명 및/또는 이의 부분이 구현될 수 있는 적절한 컴퓨팅 환경의 간략한 일반적인 개시를 제공하기 위한 것이다. 필수적이지는 않지만, 본 발명은 클라이언트 워크스테이션 또는 서버와 같은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터-실행가능 명령어의 일반적인 컨텍스트에서 개시된다. 일반적으로, 프로그램 모듈은 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 및 특정한 작업을 수행하거나 또는 특정한 추상적인 데이터 유형을 구현하는 이와 유사한 것들을 포함한다. 더 나아가, 본 발명 및/또는 이의 부분은 휴대용 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램가능한 전자제품, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터 등을 포함하는 다른 컴퓨터 시스템 구성과 함께 실시될 수 있다. 본 발명은 또한 작업이 통신 네트워크를 통해 링크된 원격 프로세싱 장치에 의해 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치 모두에 위치할 수 있다.6 and the following description are intended to provide a brief general disclosure of a suitable computing environment in which the present invention and / or portions thereof may be implemented. Although not required, the invention is disclosed in the general context of computer-executable instructions, such as program modules, being executed by a computer, such as a client workstation or server. Generally, program modules include routines, programs, objects, components, data structures, and the like, that perform particular tasks or implement particular abstract data types. Furthermore, the present invention and / or portions thereof may be practiced with other computer system configurations including portable devices, multiprocessor systems, microprocessor-based or programmable electronics, network PCs, minicomputers, mainframe computers, and the like. have. The invention may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.
도 6에 도시되는 바와 같이, 예시적인 범용 컴퓨팅 시스템은 프로세싱 유닛(121), 시스템 메모리(122) 및 시스템 메모리를 포함하는 다양한 시스템 컴포넌트를 프로세싱 유닛(121)과 연결하는 시스템 버스(123)를 포함하는 종래의 개인용 컴퓨터(120) 및 이와 유사한 것을 포함한다. 시스템 버스(123)는 메모리 버스 또는 메모리 제어기, 주변 버스 및 임의의 다양한 버스 아키텍쳐를 사용하는 로컬 버스를 포함하는 임의의 다양한 유형의 버스 구조일 수 있다. 시스템 메모리는 ROM(read-only memory; 124)) 및 RAM(random access memory; 125)를 포함한다. 시동 중에 개인용 컴퓨터(120) 내에서 구성요소들 사이의 정보를 전달하는데 도움을 주는 기본 루틴을 포함하는 BIOS(basic input/output system; 126)는 ROM(124)에 저장된다.As shown in FIG. 6, an exemplary general purpose computing system includes a system bus 123 that couples various system components, including the processing unit 121, system memory 122, and system memory, to the processing unit 121. Includes a conventional personal computer 120 and the like. System bus 123 may be any of a variety of types of bus structures, including memory buses or memory controllers, peripheral buses, and local buses using any of a variety of bus architectures. The system memory includes a read-only memory (ROM) 124 and a random access memory (RAM) 125. A basic input / output system (BIOS) 126 is stored in the
개인용 컴퓨터(120)는 하드디스크(도시되지 않음)로부터 판독하고 이에 기록하기 위한 하드디스크 드라이브(127), 착탈식 마그네틱 디스크(192)로부터 판독하고 이에 기록하기 위한 마그네틱 디스크 드라이브(128), 및 CD-ROM 또는 다른 광미디어와 같은 착탈식 광디스크(131)로부터 판독하고 이에 기록하기 위한 광디스크 드라이브(130)를 더 포함할 수 있다. 하드디스크 드라이브(127), 마그네틱 디스크 드라이브(128) 및 광디스크 드라이브(130)는 각각 하드디스크 드라이브 인터페이스(132), 마그네틱 디스크 드라이브 인터페이스(133) 및 광디스크 드라이브 인터페이스(134)에 의해 시스템 버스(123)와 연결된다. 드라이브와 그들의 관련된 컴퓨터-판독가능 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 및 개인용 컴퓨터(120)를 위한 다른 데이터의 비-휘발성 저장소를 제공한다.The personal computer 120 includes a hard disk drive 127 for reading from and writing to a hard disk (not shown), a magnetic disk drive 128 for reading from and writing to a removable magnetic disk 192, and a CD- It may further include an
본 명세서에 개시되는 예시적인 환경이 하드디스크, 착탈식 마그네틱 디스크(192) 및 착탈식 광디스크(131)를 사용하지만, 컴퓨터에 의해 액세스될 수 있는 데이터를 저장할 수 있는 다른 유형의 컴퓨터 판독가능 매체가 또한 예시적인 운영 환경에서 사용될 수 있다는 것을 이해할 수 있다. 이러한 다른 유형의 매체는 마그네틱 카세트, 플래시 메모리 카드, 디지털 비디오 디스크, 베르누이 카트리지(Bernoulli cartridge), RAM(random access memory), ROM(read-only memory) 등을 포함한다.Although the exemplary environment disclosed herein uses a hard disk, removable magnetic disk 192 and removable
운영 체제(135), 하나 이상의 애플리케이션 프로그램(136), 다른 프로그램 모듈(137) 및 프로그램 데이터(138)를 포함하는 많은 프로그램 모듈은 하드디스크, 마그네틱 디스크(129), 광디스크(131), ROM(124) 또는 RAM(125) 상에 저장될 수 있다. 사용자는 키보드(140) 및 포인팅 장치(142)와 같은 입력 장치를 통해 명령 및 정보를 개인용 컴퓨터(120)에 입력할 수 있다. 다른 입력 장치(도시되지 않음)는 마이크로폰, 조이스틱, 게임 패드, 위성 디스크, 스캐너 등을 포함할 수 있다. 이러한 입력 장치들은 시스템 버스와 연결되는 직렬 포트 인터페이스(146)를 통해 프로세싱 유닛(121)과 연결되지만, 병렬 포트, 게임 포트 또는 USB(universal serial bus)와 같은 다른 인터페이스를 통해 연결될 수도 있다. 모니터(147) 또는 다른 유형의 디스플레이 장치는 또한 비디오 아답터(148)와 같은 인터페이스를 통해 시스템 버스(123)와 연결된다. 모니터(147)뿐만 아니라, 개인용 컴퓨터는 통상적으로 스피커 및 프린터와 같은 다른 주변 출력 장치(도시되지 않음)를 포함한다. 도 6의 예시적인 시스템은 또한 호스트 아답터(155), SCSI(Small Computer System Interface) bus(156) 및 SCSI 버스(156)와 연결된 외장형 저장 장치(162)를 포함한다. Many program modules, including
개인용 컴퓨터(120)는 원격 컴퓨터(149)와 같은 하나 이상의 원격 컴퓨터와의 논리적 연결을 사용해서 네트워크 환경에서 동작할 수 있다. 원격 컴퓨터(149)는 다른 개인용 컴퓨터, 서버, 라우터, 네트워크 PC, 피어 장치 또는 다른 공통 네트워크 노드일 수 있고, 오직 메모리 저장 장치(150)만이 도 6에 도시되었지만 통상적으로 개인용 컴퓨터(120)와 관련해서 상기에 개시되는 구성요소의 전부 또는 많은 부분을 포함한다. 도 6에 도시되는 논리적 연결은 LAN(local area network; 151) 및 WAN(wide area network; 152)을 포함한다. 이러한 네트워킹 환경은 사무실, 기업형 컴퓨터 네트워크, 인트라넷 및 인터넷에서 일반적이다.Personal computer 120 may operate in a network environment using a logical connection with one or more remote computers, such as
LAN 네트워킹 환경에서 사용될 때, 개인용 컴퓨터(120)는 네트워크 인터페이스 또는 아답터(153)를 통해 LAN(151)과 연결된다. WAN 네트워킹 환경에서 사용될 때, 개인용 컴퓨터(120)는 통상적으로 모뎀(154) 또는 인터넷과 같은 WAN(152)을 통해 통신을 설정하는 다른 수단을 포함한다. 내장형 또는 외장형이 될 수 있는 모뎀(154)은 직렬 포트 인터페이스(146)를 통해 시스템 버스(123)에 연결된다. 네트워크 환경에서, 개인용 컴퓨터(120) 또는 이의 부분과 관련하여 개시된 프로그램 모듈은 원격 메모리 저장 장치에 저장될 수 있다. 도시된 네트워크 연결은 예시적이고 컴퓨터 사이의 통신 링크 설정을 위한 다른 수단이 사용될 수 있다는 것을 이해할 수 있다.When used in a LAN networking environment, the personal computer 120 is connected to the LAN 151 via a network interface or
구조적인 태양 및/또는 방법론적인 동작과 관련된 언어로 주요 발명이 개시되었지만, 첨부된 청구항에 정의된 주요발명이 상기에 개시된 특정한 태양 또는 동작에 한정될 필요가 없다는 것을 이해할 수 있다. 더 나아가, 상기에 개시된 특정한 태양 및 동작은 청구항을 구현하는 예시적인 형식으로서 개시된다. While the subject invention has been disclosed in language related to structural aspects and / or methodological acts, it is to be understood that the subject invention defined in the appended claims need not be limited to the specific aspects or acts disclosed above. Moreover, the specific aspects and acts disclosed above are disclosed as example forms of implementing the claims.
Claims (20)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/717,387 US20080227548A1 (en) | 2007-03-13 | 2007-03-13 | Secured cross platform networked multiplayer communication and game play |
US11/717,387 | 2007-03-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20090118955A true KR20090118955A (en) | 2009-11-18 |
Family
ID=39759908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020097018515A KR20090118955A (en) | 2007-03-13 | 2008-02-29 | Secured cross platform networked multiplayer communication and game play |
Country Status (8)
Country | Link |
---|---|
US (1) | US20080227548A1 (en) |
EP (1) | EP2122528A4 (en) |
JP (1) | JP2010521744A (en) |
KR (1) | KR20090118955A (en) |
CN (1) | CN101636741A (en) |
CA (1) | CA2681006A1 (en) |
IL (1) | IL200500A0 (en) |
WO (1) | WO2008112448A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160048811A (en) * | 2013-09-06 | 2016-05-04 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | Verification that particular information is transferred by an application |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2008205413A1 (en) * | 2007-08-15 | 2009-03-05 | Aristocrat Technologies Australia Pty Limited | A Gaming System and a Method of Gaming |
CN101635710B (en) * | 2009-08-25 | 2011-08-17 | 西安西电捷通无线网络通信股份有限公司 | Pre-shared-key-based method for controlling secure access to networks and system thereof |
US9770654B1 (en) | 2009-09-30 | 2017-09-26 | Amazon Technologies, Inc. | Cross device operation of games |
US9183560B2 (en) | 2010-05-28 | 2015-11-10 | Daniel H. Abelow | Reality alternate |
US10046241B1 (en) * | 2010-11-01 | 2018-08-14 | Ronald Charles Krosky | Output production |
CN103078788B (en) * | 2011-06-27 | 2015-12-09 | 北京奇虎科技有限公司 | A kind of information interacting method based on application and system |
US9182978B2 (en) | 2012-03-05 | 2015-11-10 | Microsoft Technology Licensing, Llc | Application configuration using binary large objects |
US9112935B2 (en) | 2012-03-05 | 2015-08-18 | Microsoft Technology Licensing, Llc | Manipulating binary large objects |
US9704350B1 (en) | 2013-03-14 | 2017-07-11 | Harmonix Music Systems, Inc. | Musical combat game |
JP6535159B2 (en) | 2014-08-27 | 2019-06-26 | 株式会社スクウェア・エニックス | Program, game system, control method and recording medium |
US10255083B2 (en) * | 2014-09-12 | 2019-04-09 | Ubisoft Entertainment | Method and system for unified input in cross-platform streaming applications in cloud computing environments |
CN105119918B (en) * | 2015-08-21 | 2019-01-08 | 腾讯科技(深圳)有限公司 | Realize the method and terminal device of application cross-platform interaction |
US9813468B2 (en) | 2015-09-08 | 2017-11-07 | Microsoft Technology Licensing, Llc | Wireless control of streaming computing device |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5586257A (en) * | 1994-05-05 | 1996-12-17 | Perlman; Stephen G. | Network architecture to support multiple site real-time video games |
AUPP149998A0 (en) * | 1998-01-27 | 1998-02-19 | Aristocrat Leisure Industries Pty Ltd | Multi-platform gaming architecture |
AU2001241605A1 (en) * | 2000-02-17 | 2001-09-12 | Acclaim Entertainment, Inc. | Multi-player computer game, system and method |
JP2002014821A (en) * | 2000-06-29 | 2002-01-18 | Toshiba Corp | Server client system and recording medium having application distributing method in the same system recorded thereon |
US20030177187A1 (en) * | 2000-11-27 | 2003-09-18 | Butterfly.Net. Inc. | Computing grid for massively multi-player online games and other multi-user immersive persistent-state and session-based applications |
US7203835B2 (en) * | 2001-11-13 | 2007-04-10 | Microsoft Corporation | Architecture for manufacturing authenticatable gaming systems |
US7031473B2 (en) * | 2001-11-13 | 2006-04-18 | Microsoft Corporation | Network architecture for secure communications between two console-based gaming systems |
US7464272B2 (en) * | 2003-09-25 | 2008-12-09 | Microsoft Corporation | Server control of peer to peer communications |
EP1749367B1 (en) * | 2004-05-12 | 2008-05-07 | Togewa Holding AG | Method and device for content-based billing in ip-networks |
KR100578592B1 (en) * | 2004-06-23 | 2006-05-12 | 공정배 | System and method for providing the different operating system based terminal service client |
US20060068911A1 (en) * | 2004-09-30 | 2006-03-30 | Microsoft Corporation | Game console communication with a computer |
US20060259632A1 (en) * | 2005-05-13 | 2006-11-16 | Yahoo! Inc. | Redirection and invitation for accessing an online service |
KR100809520B1 (en) * | 2005-12-08 | 2008-03-04 | 한국전자통신연구원 | System and method for interworking different platform |
-
2007
- 2007-03-13 US US11/717,387 patent/US20080227548A1/en not_active Abandoned
-
2008
- 2008-02-29 CN CN200880008142A patent/CN101636741A/en active Pending
- 2008-02-29 EP EP08731184.1A patent/EP2122528A4/en not_active Withdrawn
- 2008-02-29 WO PCT/US2008/055573 patent/WO2008112448A1/en active Application Filing
- 2008-02-29 JP JP2009553683A patent/JP2010521744A/en active Pending
- 2008-02-29 KR KR1020097018515A patent/KR20090118955A/en not_active Application Discontinuation
- 2008-02-29 CA CA002681006A patent/CA2681006A1/en not_active Abandoned
-
2009
- 2009-08-20 IL IL200500A patent/IL200500A0/en unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160048811A (en) * | 2013-09-06 | 2016-05-04 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | Verification that particular information is transferred by an application |
Also Published As
Publication number | Publication date |
---|---|
JP2010521744A (en) | 2010-06-24 |
EP2122528A1 (en) | 2009-11-25 |
CA2681006A1 (en) | 2008-09-18 |
CN101636741A (en) | 2010-01-27 |
EP2122528A4 (en) | 2013-11-20 |
US20080227548A1 (en) | 2008-09-18 |
WO2008112448A1 (en) | 2008-09-18 |
IL200500A0 (en) | 2010-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20090118955A (en) | Secured cross platform networked multiplayer communication and game play | |
RU2527200C2 (en) | Apparatus and method of establishing and using backup communication channels | |
US7803052B2 (en) | Discovery and distribution of game session information | |
US7543064B2 (en) | Multiplayer peer-to-peer connection across firewalls and network address translators using a single local port on the local host | |
KR101130495B1 (en) | Limiting interaction between parties in a networked session | |
US8289867B2 (en) | Message routing mechanism for communication networks | |
EP1475938B1 (en) | Web access to secure data | |
EP2246792B1 (en) | Methods and systems for configuration and dynamically switching between network communication architectures | |
US6152824A (en) | Online gaming architecture | |
US7857701B2 (en) | Silent sign-in for offline games | |
EP1519531A2 (en) | Server control of peer to peer communications | |
EP2635356B1 (en) | Detecting lag switch cheating in game | |
KR102622282B1 (en) | Two-way packet exchange method through node path | |
US20060193283A1 (en) | Data distribution by proxy | |
EP2540059A1 (en) | Apparatus and method for matching users for online sessions | |
WO2011126504A1 (en) | Apparatus and method for inviting users to online sessions | |
WO2008121480A1 (en) | Online gaming authentication | |
US9270570B2 (en) | Remote message routing device and methods thereof | |
CN114244602B (en) | Multi-user online network service system, method, device and medium | |
US11992755B2 (en) | System and method for managing transactions in a multiplayer network gaming environment | |
EP2115609B1 (en) | Transfer of content to closed systems | |
US20090181772A1 (en) | Untrusted gaming system access to online gaming service | |
JP4583078B2 (en) | Limiting conversations between parties in networked sessions | |
CN107968773B (en) | Method and system for realizing data security and integrity | |
CN116059644A (en) | Game data processing method and device, storage medium and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid |