KR20040096489A - 다중-사용자 애플리케이션 프로그램 인터페이스 - Google Patents

다중-사용자 애플리케이션 프로그램 인터페이스 Download PDF

Info

Publication number
KR20040096489A
KR20040096489A KR10-2004-7004067A KR20047004067A KR20040096489A KR 20040096489 A KR20040096489 A KR 20040096489A KR 20047004067 A KR20047004067 A KR 20047004067A KR 20040096489 A KR20040096489 A KR 20040096489A
Authority
KR
South Korea
Prior art keywords
application
server
user
users
clan
Prior art date
Application number
KR10-2004-7004067A
Other languages
English (en)
Other versions
KR100638071B1 (ko
Inventor
더펠리아세카르
반닷타글렌
페르난데스브라이언
카토에이코에리카
맥캐롤윌리엄
Original Assignee
소니 컴퓨터 엔터테인먼트 아메리카 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니 컴퓨터 엔터테인먼트 아메리카 인코포레이티드 filed Critical 소니 컴퓨터 엔터테인먼트 아메리카 인코포레이티드
Publication of KR20040096489A publication Critical patent/KR20040096489A/ko
Application granted granted Critical
Publication of KR100638071B1 publication Critical patent/KR100638071B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q10/00Administration; Management
    • G06Q10/02Reservations, e.g. for tickets, services or events
    • G06Q10/025Coordination of plural reservations, e.g. plural trip segments, transportation combined with accommodation
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/352Details 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/35Details of game servers
    • A63F13/358Adapting the game course according to the network or server load, e.g. for reducing latency due to different connection speeds between clients
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/71Game security or game management aspects using secure communication between game devices and game servers, e.g. by encrypting game data or authenticating players
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/108Remote banking, e.g. home banking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/12Accounting
    • G06Q40/123Tax preparation or submission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/33Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections
    • A63F13/335Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using wide area network [WAN] connections using Internet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/79Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/20Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
    • A63F2300/206Game information storage, e.g. cartridges, CD ROM's, DVD's, smart cards
    • A63F2300/208Game information storage, e.g. cartridges, CD ROM's, DVD's, smart cards for storing personal settings or data of the player
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/401Secure communication, e.g. using encryption or authentication
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/40Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of platform network
    • A63F2300/407Data transfer via internet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features 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/51Server architecture
    • A63F2300/513Server architecture server hierarchy, e.g. local, regional, national or dedicated for different tasks, e.g. authenticating, billing
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features 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/53Features 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/532Features 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features 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/53Features 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/534Features 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 for network load management, e.g. bandwidth optimization, latency reduction
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/50Features 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/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Multimedia (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Stored Programmes (AREA)

Abstract

다중-사용자 온라인 애플리케이션 네트워크 컴퓨팅 구성(100)은, 각각의 개별 애플리케이션 서버(112)또는 호스트 머신 보다는 포털 또는 로비 서버(110)에서 애플리케이션 레벨 정보를 유지한다. 따라서, 사용자는 로비 서버(110)와의 통신을 통해, 온라인 게임과 같은 소망하는 애플리케이션에 관하여 알 수 있고 선택할 수 있다. 적합한 인증 처리 이후에, 사용자는 참여를 시작하기 위해, 게임 호스트와 같은 연결된 애플리케이션 서버(112)와 접촉할 수 있다. 따라서, 로비 서버(110)는 애플리케이션 서버(112)에 대한 대역폭 요구 및 다른 동작 요구를 감소시킬 수 있다. 또한, 실시간 크로스-애플리케이션 통신이 로비 서버 개념을 통해 촉진된다. 또한, 다중-사용자 애플리케이션 환경은 사용자 달성이 사용자 사이 및 상이한 게임 애플리케이션 사이에서 기록되고 공유되는 온라인 게임 컨텍스트에서 래더 랭킹을 확립하는 것과 같은, 사용자 정보를 유지하는 공통 데이터 모델을 제공한다.

Description

다중-사용자 애플리케이션 프로그램 인터페이스{Multi-user application program interface}
로컬 영역 네트워크와 인터넷과 같은 컴퓨터 네트워크는 다양한 트랜잭션 및 파티들 사이의 상호작용을 위한 백본으로서 점점 더 사용되고 있다. 은행 고객이 컴퓨터 네트워크를 통해 금융 트랜잭션을 개시할 수 있는 온라인 뱅킹으로부터 게이머가 인터넷을 통해 실시간 게임에 참여할 수 있는 온라인 게임까지, 서비스 제공자는 컴퓨터 네트워크를 통한 다양한 서비스를 점점 더 지원한다. 현재, 발생한 트랜잭션과 상호작용을 촉진시키는 다양한 서로 다른 컴퓨터 네트워크 구성이 있다.
다수의 온라인 애플리케이션은 컴퓨터 시스템상에서 실행되고 지리적으로 떨어져 있는 다중 참여자가 애플리케이션 환경내의 컴퓨터 프로그램 및 다른 참여 사용자와 상호작용하게 하는 다중-사용자 애플리케이션을 포함한다. 예를 들어, 게임은 인기가 증가하고 있는 대중적인 다중-사용자 애플리케이션이다. 항공기 시뮬레이션 게임은 다중 참여자가 공중에서 참여자 각각의 가상 항공기를 조정할 수 있게하고, 참여자를 동일한 공중내에서 참여자의 항공기의 다른 참여자와 상호작용할 수 있게 한다. 따라서, 온라인 게임 애플리케이션은 다중 참여자가 조정하는 단일 애플리케이션 환경 또는 영역을 제공한다.
게임 참여자와 같은 지리적으로 분산된 애플리케이션 사용자가 사용하는 온라인 게임과 같은 다중-사용자 애플리케이션을 지원하고, 애플리케이션 환경내에서 사용자 사이의 실시간 상호작용을 지원하기 위해, 환경내의 모든 참여자에 관한 정보를 공유하는 것이 필요하다. 예를 들어, 항공기 시뮬레이션 애플리케이션에서, 항공기 크기, 속도, 3차원 공간에서의 고도, 외관 디테일,(빌딩 및 지형과 같은)가상 환경 디테일등을 포함하는 참여자 각각에 대한 항공기에 관한 정보를 공유하게 된다. 이러한 정보는 각 참여자의 컴퓨터가 게임 전개상황을 적절하게 추적하고 참여자 각각에 의해 수행된 동작을 결정할 수 있게 한다. 이것은 각 참여자가 참여자의 시각 디스플레이상에 적절하게 묘사된 시각 이미지를 얻을 수 있게 한다.
모든 참여자 사이에서 공유되어야 하는 정보의 양은 위협적일 수 있고 대역폭 장애를 발생시킬 수 있다. 참여자 사이에서 공유되어야 하는 정보의 양은 온라인 게임의 전개상태와 다른 온라인 다중-사용자 애플리케이션을 방해할 정도로 크다. 온라인 애플리케이션의 관리를 분배하는 기술이, Distributed System for Communication Networks in Multi-User Applications라는 명칭의 R. Waters등에 의한 미국 특허 제 5,841,980 호에 개시되어 있다.
상기 '980 특허는 모놀리스 서버의 기능이 다수의 로컬 사용자를 서비스하는 다중 서버를 통해 분배되는 시스템 구성을 설명한다. 따라서, 이전의 단일 서버는게임 상태와 같은 모든 애플리케이션 정보의 소스로서 서비스되지만, '980 특허는 게임 서버 기능이 다중 컴퓨터를 통해 분배되는 상황을 설명한다. 사용자(온라인 참여자)가 대부분의 편리한 서버에 로그인하는 것은 무료이다. 이러한 방법으로, 게임 플레이를 억제할 수도 있는 단일 "초크 포인트"가 없고, 온라인 게임 커뮤니티를 위한 대역폭 요구가 감소된다. 전체 대역폭 요구가 감소하더라도, 온라인 환경을 지원하기 위해 사용자 사이에 송신되어야 하는 데이터의 완전한 용량은 스트레인된 대역폭 용량의 로컬 포켓을 발생시킬 수 있다.
다른 다중-사용자 애플리케이션은 다소 부담이 되는 사용자 인터페이스를 제공하고 애플리케이션 서버의 동작에 대해 비능률적일 수 있다. 예를 들어, 어떠한 온라인 게임 포털은 관심있는 게임 사이트에 링크를 제공한다. 게임 포털 웹 사이트를 제공하는 서버는 게임 페이지 또는 게임 웹 사이트에 링크를 제공한다. 따라서, 게임 포털은 진행중인 게임에 관한 정보에 대해 사용자를 적절한 게임 서버 또는 호스트로 리다이렉트한다. 이것은 게임 서버에 추가의 동작적 부담을 준다.
불행하게도, 현재의 다중-사용자 애플리케이션은 동작의 최대 효율을 위해 구성되지 않았고, 온라인 게임을 위해 실행 가능한 기회를 준비하는 다수의 애플리케이션 사용자를 지원할 수 없다. 따라서, 개선되고, 더욱 효율적인 온라인 다중-사용자 애플리케이션 환경이 필요하다. 본 발명은 이러한 필요성을 충족시킨다.
본 발명은 일반적으로 컴퓨터 네트워크에 관한 것으로, 특히, 컴퓨터 네트워크를 통해 다중 사용자에 의해 실행되는 애플리케이션에 관한 것이다.
도 1은 본 발명에 따라 구성된 다중-사용자 애플리케이션을 구동하는 컴퓨터 네트워크 시스템을 도시하는 도면.
도 2는 도 1에 도시한 시스템의 상세한 블록도.
도 3은 도 1의 시스템에 의해 수행되는 동작을 흐름도.
도 4는 도 3에 도시한 것 이외의 추가의 시스템 동작을 도시하는 흐름도.
도 5는 도 3에 도시한 것 이외의 추가의 시스템 동작을 도시하는 흐름도.
도 6은 하드웨어 구성요소를 도시하는, 도 4에 도시한 네트워크에서의 컴퓨터의 블록도.
도 7은 하드웨어 구성요소를 도시하는, 도 1에 도시한 네트워크에서의 컴퓨터 엔터테인먼트 시스템의 블록도.
본 발명은 애플리케이션 레벨 정보가 각각의 개별 애플리케이션 서버 또는 호스트 머신 보다는 포털 또는 로비 서버에서 유지되는 다중-사용자 온라인 네트워크 애플리케이션 구성을 제공한다. 따라서, 사용자는 로비 서버와의 통신을 통해, 항공기 온라인 게임과 같은 소망하는 애플리케이션에 관하여 알 수 있고 선택할 수 있다. 적합한 인증 처리 이후에, 사용자는 참여를 시작하기 위해 게임 호스트와 같은 관련된 애플리케이션 서버와 접촉할 수 있다. 따라서, 게임 서버의 기능은 로비 서버와 애플리케이션 서버 사이에서 스플릿된다. 따라서, 로비 서버는 대역폭 요구 및 애플리케이션 서버에 대한 다른 동작 요구를 감소시킬 수 있다. 애플리케이션은 예를 들어, 다중-사용자 상호작용 게임 애플리케이션을 포함할 수 있다. 이것은 동작의 효율을 개선시킨다. 발명의 또 다른 양태에서, 실시간 크로스-애플리케이션 통신은 로비 서버 개념을 통해 촉진된다. 따라서, 하나의 애플리케이션에 참여하고 있는 사용자는 다른 애플리케이션에 참여하고 있는 사용자와 통신할 수 있다. 따라서, 제 1 사용자는 서버에 로그인될 수 있고 애플리케이션 서버를 통해 항공기 온라인 게임 환경에 참여하고, 제 2 사용자는 동일한 로비 서버에 로그인될 수 있지만, 금융 패키지 또는 상이한 온라인 게임과 같은 상이한 애플리케이션에 참여할 수 있다. 제 1 사용자와 제 2 사용자는 그들이 원하는 경우에 서로 통신할 수 있거나, 통신에 관하여 서로로부터 분리된 각각의 환경으로의 참여를 선택할 수 있다.
발명의 또 다른 양태에서, 다중 로비 서버 및 애플리케이션 서버가 제공되고, 온라인 환경에 관한 완전한 정보가 얻어질 수 있도록 구성된다. 이러한 방법으로, 시스템 동작을 지원하기 위해 수행되어야 하는 다수의 작업이 작업을 수행하기 위한 가장 적합한 머신에 따라 수행될 수 있다. 발명의 또 다른 양태에서, 다중-사용자 애플리케이션 환경은 사용자 정보를 유지하기 위한 공통 데이터 모델을 제공한다. 예를 들어, 사용자 달성이 사용자 사이 및 상이한 애플리케이션(즉, 게임)사이에 기록되고 공유되는 온라인 게임 컨텍스트에 래더(ladder)랭킹 시스템이 확립된다.
본 발명의 다른 특징 및 이점은 예로서 발명의 원리를 예시하는 바람직한 실시형태의 상세한 설명으로부터 명백할 것이다.
시스템 구조
도 1은 다중-사용자 온라인 애플리케이션에 참여를 포함하는 시스템에 대한 액세스를 얻기 위해 인증 서버(104)와 통신하는 하나 이상의 클라이언트컴퓨터(102)를 구비하는 하나 이상의 네트워크 장치를 구비하는 컴퓨터 네트워크 시스템(100)의 블록도이다. 후술하는 바와 같이, 클라이언트 컴퓨터는 클래식 클라이언트-서버 구성, 또는 피어-피어(peer-to-peer)구성으로 구성된 컴퓨터(102a)를 포함할 수 있거나, 클라이언트 컴퓨터 기능과 다른 컴퓨터의 기능을 결합하는 통합 서버 구성으로 구성된 컴퓨터(102b)를 포함할 수 있다. 클라이언트 컴퓨터(102)에 대한 레퍼런스는 구성에 대한 통합적인 레퍼런스로 이해되거나, 하나의 구성 서브그룹(102(a), 102(b)또는 다른 것)에 대한 레퍼런스는 특정한 서브그룹으로서 이해된다. 인증 서버는 인증이 사용자 기록에 대해 데이터베이스 서버(106)에 컨설팅함으로써 허가되는지의 여부를 결정한다. 또한, 인증 서버는 온라인 사용자에 관한 기록을 유지하는 유니버스 관리자 컴퓨터(108)와 통신하고 온라인 애플리케이션, 또는 유니버스 관리를 돕는다.
인증 서버(104)가 사용자(102)를 계속 인증한 이후에, 사용자는 애플리케이션-레벨 정보를 얻기 위해 로비 서버(110)와 먼저 통신함으로써 온라인 다중-사용자 애플리케이션에 참여할 수 있다. 애플리케이션-레벨 정보는 애플리케이션과 참여하고 있는 사용자에 관한 정보를 포함할 수 있다. 온라인 게임 애플리케이션의 컨텍스트에서, 예를 들어, 로비 서버(110)는 게임에 관한 정보와 현재 참여하고 있는 사용자에 관한 정보를 제공할 수 있다. 온라인 다중-사용자 애플리케이션을 선택한 이후에, 사용자는 사용자가 다중-사용자 애플리케이션의 온라인 환경에 참여하는 것을 허용하기에 충분한 정보를 수신하는 적합한 애플리케이션 서버(112)로 리다이렉트된다. 따라서, 애플리케이션 레벨 정보는 각각의 개별 애플리케이션 서버 또는 호스트 머신(112)보다는 로비 서버(110)에서 유지된다. 따라서, 사용자는 특정한 애플리케이션을 호스트하는 것이 자유로운 애플리케이션 서버를 떠나서, 로비 서버와의 통신을 통해, 항공기 온라인 게임과 같은 소망하는 애플리케이션에 관하여 알 수 있고 선택할 수 있다.
도 1에서, 로비 서버(110)및 애플리케이션 서버(112)는 이들 서버의 기능이 기능을 통합적으로 제공하는 다중 컴퓨터를 통해 분배될 수 있거나 하나 이상의 독립 네트워크 컴퓨터에 의해 제공될 수 있다는 것을 나타내기 위해 구름 형상으로서 도시되어 있다. 예를 들어, 애플리케이션 서버(112)는 분배된 메모리 엔진(DME)으로서 기능하는 전용 애플리케이션 서버 컴퓨터(114)를 포함할 수 있다. 대안으로서, 후술하는 바와 같이, 적합한 서버는 유니버스 관리자(108)에게 인터페이스를 제공하기 위해 프럭시 용량에서 작동하는 애플리케이션 서버(112)와 통합 서버(102(b))의 결합을 포함할 수 있다. 유사하게, 로비 서버(110)의 기능은 클라이언트(102)와 직접 통신하는 전용 로비 서버에 의해 제공될 수 있거나, 로비 서버 기능은 인증 서버 또는 유니버스 관리자(108)와 같은, 클라이언트와 통신하는 다른 컴퓨터에 의해 제공될 수 있다.
따라서, 게임 서버의 기능은 로비 서버와 애플리케이션 서버 사이에서 스플릿된다. 따라서, 로비 서버는 대역폭 요구 및 애플리케이션 서버에 대한 다른 동작 요구를 감소시킬 수 있다. 애플리케이션은 예를 들어, 다중-사용자 상호작용 게임 애플리케이션을 포함할 수 있다. 이것은 동작의 효율성을 개선시킨다.
본 발명에 따르면, 크로스-사용자 통신 뿐만 아니라 실시간 크로스-애플리케이션 통신이 로비 서버 개념을 통해 촉진된다. 하나의 애플리케이션에 참여하고 있는 사용자는 상이한 애플리케이션에 참여하고 있는 사용자와 통신할 수 있다. 따라서, 제 1 사용자는 서버에 로그인될 수 있고 애플리케이션 서버를 통해 항공기 온라인 게임 환경에 참여하고, 제 2 사용자는 동일한 로비 서버에 로그인될 수 있지만, 금융 패키지 또는 상이한 온라인 게임과 같은 상이한 애플리케이션에 참여할 수 있다. 제 1 사용자와 제 2 사용자는 그들이 원하는 경우에 서로 통신할 수 있거나, 통신에 관하여 서로로부터 분리된 각각의 환경으로의 참여를 선택할 수 있다.
유니버스 관리자(108)는 전체 관리 역할을 하여, 시스템과 등록되고 로그온된 사용자(클라이언트)(102)에 관한 정보를 유지하고, 인증 서버(104)로비 서버(110), 및 애플리케이션 서버(112)를 통해 사용자와 통신한다. 로비 서버(110)는 사용자에게 애플리케이션 레벨 정보를 제공하여, 클라이언트(102)에 대한 애플리케이션 정보의 소스 및 애플리케이션 포털로서 작용한다. 예를 들어, 게임 사이트에 단지 링크를 제공하는 통상의 게임 포털 서버와는 다르게, 로비 서버는 진행중인 게임에 관한 정보를 제공하고, 게임에 활발하게 참여하고 있는 플레이어에 관한 정보와 같은 게임-레벨 정보를 제공할 수 있다. 애플리케이션 서버(112)는 실제 애플리케이션 환경을 제공한다. 예를 들어, 온라인 애플리케이션이 게임인 상황에서, 애플리케이션 서버는 특정한 애플리케이션 서버(112)에 의해 운영되는 게임에 대한 온라인 게임 경험에 완전히 참여하기 위해 플레이어 참여자, 오디오 및 그래픽 정보, 및 클라이언트(102)에 필요한 다른 데이터를 포함하는 실제 게임 플레이 환경을 제공한다. 이러한 방법으로, 시스템 동작을 지원하기 위해 수행되어야 하는많은 작업이 작업을 수행하기 위한 가장 적합한 머신에 따라 수행될 수 있다.
전술한 바와 같이, 인증 서버(104)는 인증, 애플리케이션 정보등을 위해 데이터베이스 서버(106)와 통신한다. 도 2는 데이터베이스 서버를 상세히 도시하고, 데이터베이스 서버가 다중 서버 및 연결된 데이터베이스 저장장치를 포함할 수 있다는 것을 도시한다. 예를 들어, 도 2는 인증 데이터 서버(202)및 연결된 인증 데이터베이스(204), 트랜잭션 데이터 서버(206)및 연결된 트랜잭션 데이터베이스(208), 및 애플리케이션 데이터 서버(210)및 연결된 애플리케이션 데이터베이스(212)를 포함하는 데이터베이스 서버(106)를 도시한다. 이들 구성요소의 동작 및 구성은 이하의 설명을 참조하여 양호하게 이해할 것이다.
시스템 동작
도 3, 4, 및 5는 온라인 다중-사용자 애플리케이션의 개선된 동작을 제공하기 위해 본 발명에 따라 구성된 시스템의 기능을 나타내는 흐름도이다.
흐름도 블록(301)로 표시된 제 1 동작에서, 사용자는 온라인 게임과 같은 다중-사용자 애플리케이션에 액세스하고 로그인하기 위해 게임 포털 또는 다른 인터넷 사이트와 같은 네트워크 도메인 이름에 접속한다. 다음 동작에서, 사용자는 인증 서버중의 하나로 리다이렉트된다.(블록 302로 표시된)이 동작은 서버 작업부하 관리를 위한 부하 밸런서 또는 유사한 구성을 통한 동작을 포함할 수 있다. 다음 블록(303)에서, 사용자에게는 인증 서버에 의해 세션 키가 할당된다. 세션 키는 사용자에 의해 현재 온라인 세션 동안 활성을 유지하고 특권 레벨과 연결되어, 사용자에게 부여될 액세스의 레벨을 결정하기 위해(도 1에 도시한)다양한 시스템 구성요소에 수단을 제공한다. 그 후, 블록 304에서, 사용자는 인증 서버에 어카운트 로그인 정보를 공급한 후, 인증 서버는 블록 305에 나타낸 바와 같이,(데이터베이스 서버의)인증 데이터 서버에 인증 요청을 전송한다. 어카운트 로그인은 액세스에 대한 사용자의 권리가 결정될 수 있는 사용자의 등록된 어카운트 번호 또는 다른 식별자를 포함한다. 다음 동작(블록 306)에서, 인증 요청은 적합한 부하 밸런싱으로 처리되고 인증 서버중의 특정한 하나로 향한다.
다음 블록 307에서, 인증 데이터 서버는 사용자의 로그인이 수용되는지 여부를 결정하기 위해 인증 데이터베이스와 직접 통신한다. 예를 들어, 이 동작은 모든 적합한 요금이 지불되었는지 및 사용자가 계속되는 인증 또는 자격을 보장하기 위해 사용자의 어카운트 히스토리를 체크하는 것을 포함한다. 사용자의 히스토리를 유지하기 위해, 이 동작(307)은 비-휘발성 저장장치용 트랜잭션 데이터 서버로 트랜잭션 기록(로그인 시도)을 전송하는 것을 포함한다. 또한, 이 기록 동작은 부하 밸런싱 동작을 포함할 수 있다.
단계 308에서, 로그인 시도의 성공 또는 실패가 인증 서버로 보고된다. 로그인 결과는 사용자에게 전송되고 또한 트랜잭션 데이터 서버로 전송된다. 다음 블록 309에서, 사용자 이름 로그인 절차에 대한 처리 동작이 반복된다. 블록 310에 나타낸 바와 같이, 애플리케이션 식별에 따라서 사용자의 스크린 이름에 대한 또 다른 유사한 로그인 절차가 발생한다. 스크린 이름 로그인이 성공인 경우에, 인증 서버는 사용자를 로비 서버에 할당하고, 또한, 유니버스 관리자에게 세션 특권 레벨을 촉구하여, 사용자에게는 세션 동안 모든 적합한 액세스가 부여된다. 인증 서버는유니버스 관리자로부터 적합한 애플리케이션 서버를 요청함으로써, 사용자에 의해 제공된 애플리케이션 ID에 대응하는 사용 가능한 로비 서버를 알고 있다. 유니버스 관리자는 로비 서버가 동작하는 동안 지속적으로 유니버스 관리자에게 로비 서버에 의해 전송되는 "하트비트(heartbeat)" 를 통해 사용 가능한 로비 서버를 추적한다. 이 처리는 다음 블록 310에 의해 표현된다.
다음으로, 블록 311에서, 사용자는 인증 서버로부터 접속을 끊고 할당된 로비 서버와 통신을 확립한다. 블록 312에서, 사용자는 블록 303에서 인증 서버로부터 얻은 세션 키를 조회하고, 또한 할당된 로비 서버를 사용하여 애플리케이션 ID를 조회한다. 로비 서버는 유니버스 관리자를 사용하여 데이터 뿐만 아니라 특권 레벨을 조회한다. 사용자의 특권은 조회가 성공일 때 업그레이드된다.
시스템 동작의 다음 단계에서, 블록 313에서, 사용자는 로비 서버와의 로그인을 성공적으로 완료하고, 따라서, 시스템-와이드 기능에 참여할 자격이 주어진다. 이들 기능은 예를 들어, 채팅, 그룹 또는 커뮤니티 관리, 팀 또는 클랜(clan)작업과 같은 플레이어-매칭 활동, 및 결과 또는 경쟁 스탠딩 및 래더 진행을 포함할 수 있다. 사용 가능한 채팅 채널, 사용 가능한 게임, 다른 사용자의 위치, 메시징 기능등에 관한 정보에 대한 사용자로부터의 요청은 로비 서버로부터 유니버스 관리자로 전송된다. 정보에 대한 요청이 비-휘발성 저장장치를 포함하는 경우에, 요청은 적합한 데이터베이스 서버(도 2)로 전송된다.
사용자가 로비 서버와의 다음의 성공적인 접속에 참여하길 원하는 시스템-와이드 기능중의 하나는 애플리케이션을 사용하는 것을 포함할 수 있다. 온라인 게임환경의 컨텍스트에서, 애플리케이션은 게임이다. 당업자는 다른 온라인 다중-사용자 애플리케이션이 포함될 수 있다는 것을 이해할 것이다. 전술한 바와 같이, 클라이언트는 클라이언트-서버 구성 또는 피어-피어 구성의 일부분, 또는 통합 애플리케이션 서버 및 클라이언트 구성의 일부분으로서 온라인 게임에 참여할 수 있다. 도 4는 클라이언트-서버 또는 피어-피어 구성에서 동작하는 사용자에 관한 것이고, 도 5는 통합 애플리케이션 서버 구성에서 동작하는 사용자에 관한 것이다.
도 4에서,(도 3의 최종 블록의 완료 이후에 사용자가 게임에 참가하기를 원할 때 발생하는)제 1 동작은 유니버스 관리자에게 사용자의 애플리케이션(게임)요청을 전송하는 것이다. 도 4 처리에서, 클라이언트는 클래식 클라이언트-서버 구성 또는 피어-피어 구성으로서 구성된다. 유니버스 관리자는 사용자를 요청된 게임에 대해 적합한 게임 서버에 할당한다. 게임 서버는 로비 서버와 유사한 형태로 지속적이고 주기적인 하트비트 보고를 통해 유니버스 관리자 평가 상태를 보유한다. 이러한 방법으로, 유니버스 관리자는 시스템의 상태를 알고 있고 로비 서버 및 애플리케이션 서버로부터의 요청을 관리할 수 있고 요청에 응답할 수 있다. 도 4에 도시한 제 1 처리 동작(블록 414)이후에, 할당된 애플리케이션 서버는 서버 특정 키를 사용자에게 할당한다(블록 415). 키는 인증되지 않은 액세스를 방지하기 위한 보안성의 여분의 측정을 제공한다. 인증 서버는 유니버스 관리자 또는 할당된 애플리케이션 서버에 키를 요구하고, 키를 유니버스 관리자를 통해 사용자에게 및 로비 서버에 전송한다.
다음 블록 416에서, 사용자는 블록 415로부터 수신된 서버-특정 키가 제공되는 경우에, 할당된 애플리케이션 서버와 접속된다. 사용자는 서버-특정 키가 애플리케이션 서버에서 기록과 매칭되지 않는 경우에 애플리케이션 서버와의 접속을 끊는다. 매칭되는 경우에, 사용자는 애플리케이션 서버와의 접속 유지가 허용된다. 사용자는 게임 플레잉 세션 동안과 같은 애플리케이션의 사용 동안 로비 서버로의 접속을 유지한다. 블록 417에서, 주기적인 사용자 보고가 애플리케이션-참여중인 사용자로부터 사용자의 로비 서버로 전송된다. 또한,(게임 호스와 같은)모든 참여자에 대한 애플리케이션을 호스팅하는 애플리케이션 서버는 애플리케이션 호스트에 애플리케이션의 상태에 대한 주기적 보고를 전송한다. 로비 서버와 애플리케이션 서버는 직접 통신하지 않기 때문에, 로비 서버에 대한 처리 부하를 양호하게 관리한다.
애플리케이션 세션의 종단(블록 418)에서, 사용자는 애플리케이션 서버와 접속을 끊고 로비 서버를 통해 모든 사용 가능한 로비 기능을 포함하는 통상의 활동으로 복귀한다. 언급한 바와 같이, 이들 기능은 채팅, 그룹 또는 커뮤니티 관리, 메시징등을 포함할 수 있다. 이들 기능은 애플리케이션 사용 동안(예를 들어, 게임 플레이 동안)을 포함하는, 사용자가 로비 서버에 접속된 모든 시간에서 사용자에 대해 사용 가능하다.
사용자가 로그아웃 절차를 수행하거나, 사용자가 비활동으로 인해 활성 접속으로부터 타임 아웃되는 경우에, 사용자의 세션은 유니버스 관리자의 활성 기록으로부터 클린된다. 이것은 다음 블록 419에 나타내었다. 사용자가 또 다른 애플리케이션으로의 참여를 원하는 경우에, 사용자는 로그인 처리를 포함하는 인증 처리를다시 통해야 한다.
애플리케이션이 전용 애플리케이션 서버에 의해 제공되는 네트워크 구성에서의 동작 이외에도, 네트워크는 다중-사용자 애플리케이션이 통합 서버에 의해 제공되는 구성에서 동작할 수 있다. 통합 서버는 사용자 머신에 애플리케이션 기능을 제공하는 통합 서버 애플리케이션과 구성되는 사용자(클라이언트)머신을 칭한다. 동작의 이러한 방법을 구현하는 시스템이, 2000년 11월 1일 출원한, C. Guy, G Van Datta 및 J. Fernandes에 의한, "Application Development Interface for Multi-User Applications Executable Over Communication Networks"라는 명칭의 공동 계류중인 미국 특허 출원 제 09/704,514 호에 개시되어 있다. 상기 출원의 개시물은 본 명세서에 참조한다. 전술한 바와 같이, 사용자가 게임에 참가하기를 원할 때, 시스템 동작은 도 3의 설명으로부터 도 4(전용 애플리케이션 서버)또는 도 5(통합 서버)의 설명으로 이동한다.
도 5를 참조하면, 통합 서버하에서의 제 1 동작은 사용자의 컴퓨터상에 인스톨된 통합 서버 애플리케이션을 초기화하기 위해(온라인 게임과 같은)애플리케이션을 호스트하기를 원하는 사용자에 대한 것이다. 통합 서버 애플리케이션은 게임 포털 웹 사이트와 같은 적합한 도메인 이름에 접속을 한다. 그 후, 통합 서버는 도 3과 관련하여 설명한 초기 로그인 처리와 유사한 처리에서, 인증 서버와의 인증 처리를 실행한다. 이들 동작은 도 5의 제 1 블록 514에 의해 표현된다.
인증 서버와의 성공적인 인증시에, 호스팅 사용자의 통합 서버 애플리케이션은 프럭시 애플리케이션 서버에 송신될 주기적 서버 보고를 발생시킨다. 전술한 바와 같이, 프럭시 애플리케이션 서버는 도 1의 애플리케이션 서버 구름(112)내에 포함된다. 프럭시 애플리케이션 서버는 호스팅 사용자에서 통합 서버 애플리케이션 이외의 애플리케이션을 포함할 수 있거나 통합 서버 애플리케이션과 통합될 수 있거나, 프럭시 애플리케이션 서버는 도 1 네트워크의 또 다른 노드이고 호스팅 사용자의 컴퓨터인 개별 서버를 포함할 수 있다. 어떠한 경우에, 사용자의 통합 서버 애플리케이션은 호스트된 애플리케이션의 동작을 확인하고 상태 정보를 프럭시 애플리케이션 서버에 제공하기 위해 프럭시 애플리케이션 서버에 주기적이고 일정한 "하트비트" 보고를 제공한다. 프럭시 애플리케이션 서버는 유니버스 관리자와 통신하여, 유니버스 관리자에게 호스팅 사용자 머신으로부터 수신된 애플리케이션 상태 정보를 제공한다. 유니버스 관리자는 전용 애플리케이션 서버 및 어떠한 다른 통합 서버로부터의 보고와 유사할 때, 데이터 수집에서 이들 보고를 포함한다. 이들 보고 동작은 도 5의 제 2 블록 515에 의해 표현된다.
다음 동작, 블록 516에서, 사용자는 할당된 로비 서버에 활성 애플리케이션 서버로서 자신의 상태를 통지한다. 이러한 새로운 실행 애플리케이션은 네트워크를 통해 사용 가능하다. 그 후, 로비 서버는 데이터 수집에 적합한 애플리케이션 정보를 추가하는 유니버스 관리자와 이러한 새로운 애플리케이션을 등록한다. 이러한 동작은 네트워크 애플리케이션과 사용 가능하게 되는 어떠한 다른 서버에 응답하여 실행하는 것과 유사한 방식으로 유니버스 관리자에 의해 수행된다.
새로운 애플리케이션이 유니버스 관리자와 등록된 이후에, 네트워크 노드는 각각의 로비 서버를 통해 애플리케이션을 알게 된다. 따라서, 애플리케이션은 통합서버에 의해 확립된 프로그램 환경에 참가할 수 있는 네트워크 사용자에 대해 사용 가능해진다. 예를 들어, 애플리케이션이 다중-사용자 게임인 경우에, 다른 네트워크 사용자는 호스팅 사용자의 통합 서버에 의해 관리되는 바와 같이, 진행중인 게임에 참가할 수 있다. 진행중인 게임에 참가하는 처리는 도 4의 블록 414, 415, 416, 및 417과 관련하여 전술한 바와 같은 동일한 동작을 포함한다. 이들 동작은 적합한 애플리케이션 서버와의 통신, 서버-특정 키의 수신, 서버에 상기 키의 제공, 인증 및 로비 서버에 일정한 "하트비트" 보고를 제공하는 것을 포함한다. 이들 통합 서버 동작은 도 5의 "참가" 블록 517에 의해 표현된다.
애플리케이션 세션의 종단(블록 518)에서, 참여하고 있는 사용자는 통합 서버와의 접속을 끊을 수 있고 로비 서버를 통해 모든 사용 가능한 로비 기능을 포함하는 통상의 활동으로 복귀한다. 전술한 바와 같이, 이들 기능은 채팅, 그룹 또는 커뮤니티 관리, 메시징등을 포함할 수 있다. 전술한 바와 같이, 이들 기능은 애플리케이션 사용 동안(예를 들어, 게임 플레이 동안)을 포함하는, 사용자가 로비 서버에 접속된 모든 시간에 사용 가능하다. 호스팅 사용자(통합 서버)가 애플리케이션을 호스팅하는 것에서 나오길 원하는 경우에, 네트워크 시스템(도 1)은 애플리케이션의 올바른 폐쇄 또는 호스트된 애플리케이션의 프로그램 환경과 지속되는 상이한 통합 서버로의 올바른 변이를 보장하기 위해 소망하는 바와 같은 절차를 구현할 수 있다.
사용자가 로그아웃 절차를 수행하거나, 사용자가 비활동으로 인해 활성 상태로부터 타임아웃된 경우에, 사용자의 세션은 유니버스 관리자의 활성 기록으로부터클리어된다. 이것은 다음 블록 519에 표시되어 있다. 사용자가 또 다른 애플리케이션으로의 참여를 원하는 경우에, 사용자는 로그인 처리를 포함하는, 인증 처리를 다시 통해야 한다.
래더 랭킹
도 1에 도시한 구성요소 모두와 공통으로 공유되는 애플리케이션 프로그램 인터페이스는 래더 랭킹 엔진에 대한 제공을 포함한다. 래더 랭킹은 소정의 변수 또는 메트릭에 따라 조직되고 분류된 사용자의 리스트이다. 래더 랭킹은 게임 애플리케이션의 컨텍스트에서 가장 쉽게 이해할 수 있고, 여기서, 소정의 변수는 승, 패, 포인트 스코어등을 칭한다. 사용자가 성능을 개선시킬 때, 사용자의 랭킹은 개선되고, 이것은 사용자가 랭크된 사용자의 "래더"를 상승시킨다는 것을 의미한다. 따라서, 래더 랭킹 정보는 콘테스트 및 토너먼트와 같은 다양한 경쟁 목적을 위해 사용될 수 있다.
래더 랭킹 정보는 애플리케이션 상태를 대응하는 애플리케이션 서버에 주기적으로 보고하는 각 다중-사용자 애플리케이션의 기능을 통해 수집된다. 상태는 게임에서의 플레이어의 진행과 같은 정보를 포함할 수 있다. 그 후, 애플리케이션 서버는 현재 사용되고 있는 애플리케이션 및 사용자의 어카운트 정보에 따라 인덱스된 시스템의 데이터베이스에 정보를 저장한다. 이 정보는 네트워크의 임의의 위치, 예를 들어, 유니버스 관리자에서 동작할 수 있는 래더 엔진에 의해 관리되고, 데이터는 유니버스 관리자의 데이터 저장장치 또는 데이터베이스 서버(도 1)에 저장될 수 있다.
바람직하게는, 시스템 인터페이스는 래더 랭킹 엔진을 통해 제공되는 래더 랭킹을 요청하기 위해 어떤 등록된 사용자에 제공한다. 요청은 사용자가 현재 참여하고 있는 애플리케이션을 통해 사용자로부터 올 수 있다. 이것은 비-참여자가 래더 랭킹 정보를 잘못하여 얻을 수 없다는 것을 보장한다. 래더 랭킹 요청은 사용자로부터 로비 서버 또는 애플리케이션 서버에 의해 수신될 수 있고, 요청은 유니버스 관리자에서의 래더 랭킹 엔지 또는 래더 랭킹을 관리하는 어떠한 다른 네트워크 엔티티로 전송될 수 있다. 래더 랭킹 리스트가 요청될 때, 특정된 애플리케이션에 대한 모든 사용자 어카운트가 저장된 사용자 성능 데이터에 기초하여 저장된다. 바람직하게는, 애플리케이션 상태 정보는 데이터베이스에 동시에 저장될 수 있는 다중 통계를 포함한다. 예를 들어, 게임 애플리케이션은 승, 패, 포인트 스코어, 허용된 포인트, 및 다른 중요한 성능 통계를 추적할 수 있다. 각 메트릭은 저장될 수 있어서, 래더 랭킹을 요청하는 사용자에 의해 선택된 메트릭에 따라 래더 랭킹을 생성한다. 또한, 래더 랭킹 엔진은 상승 또는 하강 순으로 래더 랭킹을 저장 또는 검색하는 것을 제공한다. 예를 들어, 래더 랭킹은 최고 포인트로부터 최하 포인트로 또는 최하 포인트로부터 최고 포인트로의 순으로 제공될 수 있다.
시스템의 다양한 서버 및 데이터베이스는 통계의 본질에 관한 지식을 갖지 않는다. 즉, 서버는 승과 패 또는 포인트와 골 사이의 차이를 이해하기 위한 기반 데이터를 검사하지 못한다. 오히려, 다양한 애플리케이션이 상기 애플리케이션에 대해 수집될 데이터를 정의하고, 서버 및 데이터베이스는 데이터베이스에 수집된 데이터를 단순히 저장한다. 따라서, 각 애플리케이션은 데이터베이스 서버에 의해지원되는 자신의 데이터 수집 포맷을 정의한다.
데이터는 시스템이 인터페이스하는 각 애플리케이션에 대한 각 사용자의 어카운트에 할당된 256-바이트 데이터 필드에 포함될 수 있다. 예를 들어, 애플리케이션 코드는 분류 순서, 시작 바이트, 종료 바이트의 데이터 파라미터를 열거함으로써 래더 랭킹 기능을 실행할 수 있다. 이들 파라미터를 갖는 래더 랭킹 메시지를 수신할 때, 시스템의 서버 또는 데이터베이스는 호출 애플리케이션과 연결된 모든 어카운트에 대한 모든 데이터 필드를 검색한다. 시작 바이트 위치와 종료 바이트 위치 사이의 각 데이터 기록에서의 데이터는 정수값으로 취급된다. 그 후, 분류 동작이 사용자-공급 분류 순서 파라미터의 값에 따라 상승 또는 하강 순서로 검색된 데이터에 대해 수행된다. 그 후, 분류된 정수가 정수 데이터에 대한 공지된 헤딩에 따라 사용자에게 디스플레이된다. 예를 들어, 특정한 애플리케이션은 승의 수, 패의 수, 포인트 스코어, 허용된 포인트의 순서로 성능 데이터를 저장한다. 성능 데이터가 검색될 때, 데이터는 적절한 디스플레이를 위해 요청된 데이터를 추출하기 위해 분석될 수 있다. 다른 애플리케이션은 대응하는 애플리케이션 서버에 알려진 상이한 순서로 상이한 성능 파라미터를 저장할 수 있다. 이러한 방법으로서, 래더 랭킹 엔진은 강력하고 일반적인 크로스-애플리케이션 래더 랭킹 시스템을 제공한다.
클랜(clans)엔진
본 명세서에 설명하는 시스템의 또 다른 특징은 "리더(leader)"로서 칭하는, 어떠한 신뢰된 애플리케이션의 지정 사용자가 클랜을 지정하고 생성하게 하는 클랜엔진이다. 그 후, 리더는 클랜에 참가하는 다른 사용자에게 초대를 보낸다. 시스템은 초대자의 다음 로그인에서 전달하기 위해, 초대가 전송된 시간에 온라인에 있지 않는 등록된 사용자에게 전송된 어떠한 초대를 대기한다. 클랜 초대를 수신한 사용자는 긍정 또는 부정의 응답을 할 수 있고, 소망하는 경우에, 클랜의 멤버가 될 수 있다.
시스템은 다양한 클랜 특징을 지원한다. 클랜의 멤버는 클랜의 멤버에게 사설 전자 메시지를 전송할 수 있다. 클랜 메시지는 각 멤버가 다음의 로그인 처리를 완료할 때 발생하는 전달 전까지 시스템의 서버에 저장될 수 있다. 시스템은 클랜이 새로운 리더를 선출할 수 있게 하고 클랜에 대한 다양한 조직적 구조를 설정할 수 있게 한다. 조직적 구조의 예로는, 한 명의 리더가 클랜의 모든 결정을 관리하는 독재제, 또는 모든 멤버 및 리더가 클랜 결정에서 동일한 투표권을 갖는 민주제가 있다. 클랜을 개시한 리더는 이들 또는 다른 구성이 활용되는 것을 선택할 수 있다.
클랜 멤버쉽 리스트, 클랜 활동 추적, 클랜 전자 메시징등을 포함하는 다양한 클랜 데이터 모두는 시스템의 데이터베이스 서버에 의해 세이브된다. 클랜 기능은 래더 랭킹 데이터에 대해 전술한 바와 유사한 방식으로 본 발명에 따른 프로그램 인터페이스를 통해 액세스된다. 이것은 각 클랜에 대한 많은 개별 기능이 제공 및 지정 또는 삭제되게 하여 각 클랜의 구성 역할 및 동작을 잠재적으로 배타적으로 만든다. 또한, 프로그램 인터페이스는 클랜 기능이 다중 애플리케이션에 대해 일반적 방법으로 사용되게 한다. 예를 들어, 게임 컨텍스트에서, 동일한 팀 또는클랜 기능은 애플리케이션이 비행 모의 실험 장치, 자동차 레이싱 게임, 또는 액션-사격 게임인지 여부에 적용될 수 있다.
또한, 다중 애플리케이션은 서로 인터페이스하지 않고, 동일한 시간에 동일한 클랜 및 멤버쉽 서버 및 데이터베이스를 공유할 수 있다. 사용자 어카운트는 사용자 어카운트 또는 클랜 기능에 어떠한 영향을 주지 않고, 동일한 애플리케이션 또는 다중 애플리케이션을 통해 확장하는 클랜에서 하나 이사의 클랜과 연결된다.
본 발명에 따른 클랜 엔진은 실제 애플리케이션 자체에 내장되어 있지 않는, 중계 오프라인, 웹-기반 클랜 관리 기술 또는 클라이언트측 조정 보다는 서버측 처리를 사용하여 클랜 데이터를 관리한다. 따라서, 본 명세서에 설명하는 프로그램 인터페이스를 위해 개발된 어떠한 애플리케이션은 도 1 시스템의 인터페이스 사양, 서버, 및 데이터베이스에 내장된 클랜 처리를 활용할 수 있다.
네트워크 장치 구조
도 1의 블록도에 도시한 네트워크 컴퓨터 장치(클라이언트 및 서버)는 컴퓨터 네트워크 시스템(100)의 노드를 포함한다. 도 6은 도 1의 시스템(100)에서의 컴퓨터의 블록도이고, 서버 및 클라이언트의 기능을 제공하는 컴퓨터중의 하나에 포함된 하드웨어 구성요소를 도시한다. 당업자는 도 1에 도시한 서버 및 클라이언트가 동일한 컴퓨터 구조를 가질 수 있거나, 본 명세서에 설명한 능력 및 각각의 기능과 일치하는 또 다른 구조를 가질 수 있다는 것을 이해할 것이다.
도 6은 임의의 네트워크 컴퓨터를 포함하는 예시적인 컴퓨터(600)를 도시한다. 각 컴퓨터(600)는 미국, 캘리포니아, 산타의 인텔 코오포레이션으로부터 입수가능한 "펜티엄" 마이크로프로세서와 같은 중앙 처리 유닛(CPU : 602)및 관련 집적 회로 칩의 제어하에서 동작한다. 컴퓨터 사용자는 키보드 및 컴퓨터 마우스(604)로부터 명령 및 데이터를 입력할 수 있고, 디스플레이(606)에서 입력 및 컴퓨터 출력을 볼 수 있다. 통상적으로, 디스플레이는 비디오 모니터 또는 평면 패널 디스플레이이다. 또한, 컴퓨터(600)는 하드 디스크 드라이브와 같은 직접 액세스 저장 장치(DASD)(608)를 구비한다. 통상적으로, 메모리(610)는 휘발성 반도체 랜덤 액세스 메모리(RAM)을 포함한다. 바람직하게는, 각 컴퓨터는 프로그램 제품 판독기가 데이터를 판독할 수 있는(및 부가적으로 데이터를 기록할 수 있는)프로그램 제품 저장 장치(614)를 수용하는 프로그램 제품 판독기(612)를 구비한다. 프로그램 제품 판독기는 예를 들어, 디스크 드라이브를 포함할 수 있고, 프로그램 제품 저장 장치는 자기 플로피 디스크, CD-R 디스크, CD-RW 디스크, 또는 DVD 디스크와 같은 제거 가능한 저장 매체를 포함할 수 있다.
각 컴퓨터(600)는 네트워크(620)와 컴퓨터 사이의 접속(622)을 통한 통신을 가능하게 하는 네트워크 인터페이스(618)를 통해(인터넷 또는 인트라넷과 같은)컴퓨터 네트워크(620)상에서 다른 컴퓨터와 통신할 수 있다. 통상적으로, 네트워크 인터페이스(618)는 예를 들어, 다양한 네트워크를 통한 통신을 허용하는 네트워크 인터페이스 카드(NIC)또는 모뎀을 포함한다.
CPU(602)는 컴퓨터(600)의 메모리(610)에 임시적으로 저장된 프로그래밍 단계의 제어하에서 동작한다. 프로그래밍 단계가 실행될 때, 컴퓨터는 그 기능을 수행한다. 따라서, 프로그래밍 단계는 각각의 클라이언트 또는 서버의 기능을 구현한다. 프로그래밍 단계는 프로그램 제품 저장 드라이브(614)를 통하거나, 네트워크 접속(622)을 통해, DASD(608)로부터 수신될 수 있다. 프로그램 제품 저장 드라이브(612)는 프로그램 제품(614)을 수신하고, 거기에 기록된 프로그래밍 단계를 판독하고, CPU(602)에 의한 실행을 위해 메모리(610)로 프로그래밍 단계를 전송할 수 있다. 전술한 바와 같이, 프로그램 제품 저장 장치는 기록된 컴퓨터-판독 가능 명령을 갖고, 자기 플로피 디스크 및 CD-ROM 저장 디스크를 포함하는 다중 제거가능한 매체중의 어느 하나를 포함할 수 있다. 다른 적절한 프로그램 제품 저장 장치는 자기 테이프 및 반도체 메모리 칩을 포함할 수 있다. 이러한 방법으로, 본 발명에 따른 동작을 위해 필요한 처리 단계가 프로그램 제품에 수록될 수 있다.
대안으로는, 프로그램 단계는 네트워크(620)를 통해 동작 메모리(610)에 수신될 수 있다. 네트워크 방법에서, 컴퓨터는, 더이상의 설명이 없어도 당업자가 이해할 수 있는 널리 공지된 방법에 의해 네트워크 통신이 네트워크 접속(622)을 통해 확립된 이후에 네트워크 인터페이스(618)를 통한 메모리(610)로의 프로그램 단계를 포함하는 데이터를 수신한다. 그 후, 프로그램 단계는 CPU(602)에 의해 실행되어 컴퓨터 처리를 포함한다.
도 1에 도시한 네트워크 시스템(100)의 모든 네트워크 컴퓨터가 도 6에 도시한 것과 유사한 구조를 가질 수 있어서, 도 6의 컴퓨터(600)에 관한 상세한 설명을 시스템(100)의 모든 컴퓨터에 적용할 수 있다는 것을 이해할 것이다. 컴퓨터가 도 4에 나타낸 다른 컴퓨터와 통신할 수 있고 본 명세서에 설명한 기능을 지원하는 한은 임의의 네트워크 컴퓨터가 또 다른 구조를 가질 수 있다는 것을 이해할 것이다.
예를 들어, 도 7을 참조하면, 클라이언트 컴퓨터(102)는 비디오 게임 콘솔 시스템(700)과 같은 컴퓨터 엔터테인먼트 시스템을 포함할 수 있다. 도 7은 비디오 게임 콘솔 시스템(700)의 예시적인 하드웨어 구성의 블록도이다.
비디오 게임 콘솔 시스템(700)은 메인 메모리(705)와 연결된 중앙 처리 유닛(CPU : 701)을 포함한다. CPU(701)는 OS-ROM(760)에 저장되거나 게임 프로그램 자장 매체로부터 메인 메모리(705)로 전송되는 프로그래밍 단계의 제어하에서 동작한다. CPU(701)는 정보를 처리하고 프로그래밍 단계에 따라 명령을 실행하도록 구성된다.
CPU(701)는 전용 버스(725)를 통해 입/출력 프로세서(IOP : 720)에 통신가능하게 연결된다. IOP(720)는 동작 시스템과 같은 프로그램 명령을 저장하는 비-휘발성 메모리를 포함하는 OS ROM(760)에 CPU(701)를 연결한다. 바람직하게는, 명령은 메인 유닛(700)의 시작에서 IOP(720)를 통해 CPU로 전송된다.
CPU(701)는 전용 버스(715)를 통해 그래픽 처리 유닛(GPU : 710)에 통신가능하게 연결된다. GPU(710)는 그리기(drawing)처리를 수행하고 CPU(701)로부터 수신된 명령에 따라 이미지를 공식화하도록 구성되는 그리기 프로세서이다. 예를 들어, GPU(710)는 CPU(701)로부터 수신되고 CPU에 의해 생성된 디스플레이 리스트에 기초하여 그래픽 이미지를 표현할 수 있다. GPU는 그래픽 데이터를 저장하기 위한 버퍼를 포함할 수 있다. GPU(710)는 콘솔 시스템(700)에 접속된 AV 출력 장치(790)로 이미지를 출력한다.
IOP(720)는 IOP 메모리(730)에 저장된 명령에 따라 CPU(700)와 복수의 주변구성요소 사이의 데이터 교환을 제어한다. 주변 구성요소는 하나 이상의 입력 제어기(722), 메모리 카드(740), USB(745), 및 IEEE 1394 시리얼 버스(750)를 포함할 수 있다. 또한, 버스(755)는 IOP(720)에 통신가능하게 연결된다. 버스(755)는 OS ROM(760), 사운드 프로세서 유닛(SPU : 765), 광 디스크 유닛(775), 및 하드 디스크 드라이브(HDD : 780)를 포함하는 여러 추가 구성요소에 링크된다.
SPU(765)는 CPU(701)및 IOP(720)로부터 수신된 지시에 따라 음악과 같은 사운드, 사운드 효과, 및 음성을 생성하도록 구성된다. SPU(765)는 파형 데이터가 저장되는 사운드 버퍼를 포함할 수 있다. SPU(765)는 사운드 신호를 생성하고 신호를 스피커로 송신한다.
디스크 제어 유닛(775)은 예를 들어, 자기 플로피 디스크, 광 CD-ROM 디스크, CD-R 디스크, CD-RW 디스크, DVD 디스크등과 같은 제거가능한 저장 매체를 수용하는 광 디스크 드라이브를 포함할 수 있다.
메모리 카드(740)는 CPU(701)가 데이터를 기록 및 저장할 수 있는 저장 매체를 포함할 수 있다. 바람직하게는, 메모리 카드(740)는 IOP(720)에 삽입될 수 있고 IOP로부터 제거될 수 있다. 사용자는 메모리 카드(740)를 사용하여 데이터를 저장 또는 세이브할 수 있다. 또한, 바람직하게는, 비디오 게임 시스템(700)에는 데이터가 기록 및 저장될 수 있는 하나 이상의 하드 디스크 드라이브(HDD : 780)가 제공될 수 있다.
바람직하게는, IEEE 1394 시리얼 버스(750)또는 유니버셜 시리얼 버스(USB : 745)인터페이스와 같은 데이터 I/O 인터페이스는 도 1에 도시한 네트워크와 같은비디오 게임 시스템(700)의 내부 및 외부로 데이터가 전송될 수 있게 하기 위해 IOP(720)에 통신가능하게 연결된다.
이상, 본 발명의 지식을 전달하기 위해 본 발명의 바람직한 실시형태에 관하여 설명하였다. 그러나, 본 발명을 사용할 수 있는 본 명세서에 구체적으로 설명하지 않은 시스템 및 애플리케이션에 대해 많은 구성이 있다. 따라서, 본 발명은 본 명세서에 설명한 특정한 실시형태에 한정되지 않고, 본 발명은 다중-사용자 애플리케이션에 관하여 광범위한 응용성을 갖는다. 따라서, 첨부한 청구범위의 범위 내에 있는 모든 변형, 변동, 또는 동등한 장치 및 구현은 본 발명의 범위 내에 있는 것을 간주된다.

Claims (44)

  1. 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경에서 사용자들을 관리하는 방법에 있어서,
    네트워크 사용자 노드에서 네트워크 애플리케이션 컴퓨팅 환경으로의 액세스를 확립하는 단계;
    로비 서버와의 통신을 통해 하나 이상의 네트워크 애플리케이션에 관한 애플리케이션 레벨 정보로의 액세스를 확립하는 단계; 및
    네트워크 애플리케이션들 중 선택된 하나와 연관된 애플리케이션 서버와의 통신을 통해 다중-사용자 애플리케이션에 참여하는 단계를 포함하는, 방법.
  2. 제 1 항에 있어서,
    상기 로비 서버 및 상기 애플리케이션 서버는 사용자에 관한 데이터 및 로비 서버 유용성 및 애플리케이션 서버 유용성에 관한 상태를 관리하는 유니버스 관리자(universe manager)와 통신하는, 방법.
  3. 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경에 있어서,
    인증된 다중 네트워크 사용자들과 통신하고 하나 이상의 사용 가능한 네트워크 애플리케이션들에 관한 애플리케이션 레벨 정보로의 액세스를 제공하는 로비 서버; 및
    사용자 선택에 따라 사용자가 상기 로비 서버에 의해 다이렉트되는 애플리케이션 서버를 포함하며,
    상기 애플리케이션 서버는 사용 가능한 네트워크 애플리케이션과 연관되고 상기 사용 가능한 네트워크 애플리케이션에 프로그래밍 환경을 제공하여, 사용자가 상기 애플리케이션 서버와 통신함으로써 상기 사용 가능한 네트워크 애플리케이션에 참여하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  4. 제 3 항에 있어서,
    상기 사용자들과 상기 로비 서버 사이의 데이터 통신을 관리하는 유니버스 관리자를 더 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  5. 제 4 항에 있어서,
    상기 유니버스 관리자는 사용자들에 관한 데이터 및 로비 서버 유용성 및 애플리케이션 서버 유용성에 관한 상태를 유지하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  6. 제 1 항에 있어서,
    상기 애플리케이션 레벨 정보는 하나 이상의 네트워크 애플리케이션들 및 각각의 애플리케이션들의 현재 참여중인 사용자들에 관한 정보를 포함하는, 방법.
  7. 제 6 항에 있어서,
    상기 애플리케이션 레벨 정보는 상기 로비 서버에 의해 유지되는, 방법.
  8. 제 1 항에 있어서,
    상기 네트워크 애플리케이션 각각에 대한 애플리케이션 환경은 대응하는 애플리케이션 서버에 제공되는, 방법.
  9. 제 2 항에 있어서,
    상기 유니버스 관리자는 사용자와 통신하는 인증 서버를 통해 확립된 액세스를 갖는 사용자들에 관한 정보를 유지하여 사용자들에 의한 네트워크 애플리케이션으로의 액세스를 관리하고,
    상기 유니버스 관리자는 인증 서버, 로비 서버, 및 애플리케이션 서버를 통해 사용자들과 통신하는, 방법.
  10. 제 2 항에 있어서,
    상기 액세스를 확립하는 단계는 애플리케이션에 로그인하기 위한 사용자 요청을 수신하는 단계, 사용자를 인증 서버로 다이렉트하는 단계, 및 사용자 어카운트 정보의 확인을 위해 인증 서버로부터 인증 데이터 서버로 인증 요청을 전송하는 단계를 포함하는, 방법.
  11. 제 2 항에 있어서,
    상기 유니버스 관리자는 각각의 로비 서버로부터의 반복되는 주기적 보고들을 수신함으로써 사용자들에 대해 사용 가능한 로비 서버들을 결정하고, 각각의 애플리케이션 서버들로부터의 반복되는 주기적 보고들을 수신함으로써 사용 가능한 애플리케이션 서버들의 상태를 결정하는, 방법.
  12. 제 2 항에 있어서,
    상기 다중 사용자들은 로비 서버를 통해 로그인 할 수 있고, 클라이언트-서버 구성 또는 피어-피어(peer-to-peer)구성을 통해 동일한 애플리케이션에 참여할 수 있는, 방법.
  13. 제 2 항에 있어서,
    상기 로비 서버 및 상기 애플리케이션 서버는 상기 유니버스 관리자를 통해 통신하고 서로 직접 통신하지 않는, 방법.
  14. 제 1 항에 있어서,
    특정한 애플리케이션에 대한 사용자 성능 데이터에 기초하여 애플리케이션 사용자들의 래더 랭킹(ladder ranking)을 유지하는, 방법.
  15. 제 14 항에 있어서,
    상기 애플리케이션의 사용자들에 대한 사용자 성능 데이터는 상기 애플리케이션의 사용자로부터 수신된 래더 랭킹 요청에 응답하여 래더 랭킹 요청을 생성하는 래더 랭킹 엔진에 의해 검색되는, 방법.
  16. 제 1 항에 있어서,
    리더(leader)로서 애플리케이션 사용자를 지정하는 단계;
    상기 리더에 의해 식별된 클랜(clan)에 참가하기 위한 상기 리더로부터의 초대를 전송하는 단계; 및
    상기 클랜에 참가한 사용자로부터 상기 클랜에 참가한 다른 사용자에게 통신 메시지들이 전송될 수 있도록, 전송된 초대에 긍정 응답하는 클랜, 클랜 리더, 및 사용자들을 식별하는 데이터베이스를 유지하는 단계를 더 포함하는, 방법.
  17. 제 16 항에 있어서,
    상기 데이터베이스는 식별된 클랜과 하나 이상의 네트워크 애플리케이션들에 관한 정보를 포함하는, 방법.
  18. 제 1 항에 있어서,
    상기 액세스를 확립하는 단계는 인증 서버를 통한 네트워크 컴퓨팅 환경으로의 액세스에 대한 사용자의 인증을 확인하는 단계를 포함하는, 방법.
  19. 제 3 항에 있어서,
    상기 애플리케이션 레벨 정보는 하나 이상의 네트워크 애플리케이션들 및 각각의 애플리케이션들의 현재 참여중인 사용자들에 관한 정보를 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  20. 제 19 항에 있어서,
    상기 애플리케이션 레벨 정보는 상기 로비 서버에 의해 유지되는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  21. 제 19 항에 있어서,
    상기 네트워크 애플리케이션들 각각에 대한 대응하는 애플리케이션 환경을 집합적으로 제공하는 하나 이상의 애플리케이션 서버들을 더 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  22. 제 30 항에 있어서,
    상기 인증 서버는 애플리케이션에 로그인하기 위한 요청을 수신하고, 사용자를 상기 인증 서버로 다이렉트하고, 사용자 어카운트 정보의 확인을 위해 상기 인증 서버로부터 인증 데이터 서버로 인증 요청을 전송함으로써 액세스를 확립하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  23. 제 4 항에 있어서,
    상기 유니버스 관리자는 각각의 로비 서버들로부터의 반복되는 주기적 보고들을 수신함으로써 사용자들에 대해 사용 가능한 로비 서버들을 결정하고, 각각의 애플리케이션 서버들로부터의 반복되는 주기적 보고들을 수신함으로써 사용 가능한 애플리케이션 서버들의 상태를 결정하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  24. 제 4 항에 있어서,
    상기 다중 사용자는 로비 서버를 통해 로그인 할 수 있고, 클라이언트-서버 구성 또는 피어-피어(peer-to-peer)구성을 통해 동일한 애플리케이션에 참여할 수 있는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  25. 제 4 항에 있어서,
    상기 로비 서버 및 상기 애플리케이션 서버는 상기 유니버스 관리자를 통해 통신하고 서로 직접 통신하지 않는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  26. 제 3 항에 있어서,
    애플리케이션 사용자들의 래더 랭킹이 제공되는 특정한 애플리케이션에 대한 사용자 성능 데이터를 포함하는 데이터베이스를 더 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  27. 제 26 항에 있어서,
    애플리케이션의 사용자들에 대한 상기 사용자 성능 데이터를 검색하고, 상기 애플리케이션의 사용자로부터 수신된 래더 랭킹 요청에 응답하여 래더 랭킹 보고를 생성하는 래더 랭킹 엔진을 더 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  28. 제 3 항에 있어서,
    리더로서 지정되며 사용자가 리더인 클랜을 식별하는 사용자로부터 데이터를 수신하는 클랜 엔진을 더 포함하여, 상기 클랜 엔진은 리더로 하여금 리더에 의해 식별된 클랜에 참가하기 위한 초대를 애플리케이션의 다른 사용자들에게 전송하게 하고, 상기 클랜 엔진은 상기 클랜에 참가한 사용자로부터 상기 클랜에 참가한 다른 사용자들에게 통신 메시지들이 전송될 수 있도록, 전송된 초대에 긍정 응답하는 사용자들, 클랜, 클랜 리더를 식별하는 데이터베이스를 유지하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  29. 제 28 항에 있어서,
    상기 데이터베이스는 식별된 클랜 및 하나 이상의 네트워크 애플리케이션들에 관한 정보를 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  30. 제 4 항에 있어서,
    사용자 인증을 제공하기 위해 사용자와 통신하여 사용자들에 의한 네트워크 애플리케이션으로의 액세스를 관리하는 인증 서버를 더 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  31. 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경에 있어서,
    네트워크를 통해 사용자들과 통신하여 사용자들에 의한 네트워크 애플리케이션으로의 액세스를 관리하는 인증 서버;
    사용자 선택에 따라 하나 이상의 사용 가능한 네트워크 애플리케이션들에 관한 애플리케이션 레벨 정보의 수신 이후에 사용자가 다이렉트되는 애플리케이션 서버로서, 상기 사용 가능한 네트워크 애플리케이션과 연관되고 상기 사용 가능한 네트워크 애플리케이션에 프로그래밍 환경을 제공하여, 사용자가 애플리케이션 서버와 통신하며 이에 따라 상기 사용 가능한 네트워크 애플리케이션에 참여하는, 상기 애플리케이션 서버; 및
    상기 네트워크를 통해 상기 사용자들과 상기 인증 서버 사이의 데이터 통신들을 관리하는 유니버스 관리자를 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  32. 제 31 항에 있어서,
    상기 유니버스 관리자는 사용자들에 관한 데이터 및 애플리케이션 레벨 정보 및 애플리케이션 서버 유용성에 관한 상태를 유지하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  33. 제 31 항에 있어서,
    상기 애플리케이션 레벨 정보는 하나 이상의 네트워크 애플리케이션들 및 각각의 애플리케이션들의 현재 참여중인 사용자들에 관한 정보를 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  34. 제 33 항에 있어서,
    상기 애플리케이션 레벨 정보는 인증된 다중 네트워크 사용자들과 통신하고 하나 이상의 사용 가능한 네트워크 애플리케이션들에 관한 애플리케이션 레벨 정보로의 액세스를 제공하는 로비 서버에서 유지되는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  35. 제 33 항에 있어서,
    상기 네트워크 애플리케이션들 각각에 대한 대응하는 애플리케이션 환경을 집합적으로 제공하는 하나 이상의 애플리케이션 서버들을 더 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  36. 제 34 항에 있어서,
    상기 유니버스 관리자는 상기 사용자들과 상기 로비 서버 사이의 데이터 통신을 관리하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  37. 제 31 항에 있어서,
    상기 인증 서버는 애플리케이션에 로그인하기 위한 사용자 요청을 수신하고, 사용자를 상기 인증 서버로 다이렉트하고, 사용자 어카운트 정보의 확인을 위해 상기 인증 서버로부터 인증 데이터 서버로 인증 요청을 전송함으로써 액세스를 확립하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  38. 제 34 항에 있어서,
    상기 유니버스 관리자는 각각의 로비 서버들로부터의 반복되는 주기적 보고들을 수신함으로써 사용자들에 대해 사용 가능한 로비 서버를 결정하고, 각각의 애플리케이션 서버로부터의 반복되는 주기적 보고들을 수신함으로써 사용 가능한 애플리케이션 서버들의 상태를 결정하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  39. 제 34 항에 있어서,
    상기 다중 사용자들은 로비 서버를 통해 로그인 할 수 있고, 클라이언트-서버 구성 또는 피어-피어(peer-to-peer)구성을 통해 동일한 애플리케이션에 참여할수 있는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  40. 제 34 항에 있어서,
    상기 로비 서버 및 상기 애플리케이션 서버는 상기 유니버스 관리자를 통해 통신하고 서로 직접 통신하지 않는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  41. 제 31 항에 있어서,
    애플리케이션 사용자들의 래더 랭킹이 제공되는 특정한 애플리케이션에 대한 사용자 성능 데이터를 포함하는 데이터베이스를 더 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  42. 제 41 항에 있어서,
    애플리케이션의 사용자들에 대한 상기 사용자 성능 데이터를 검색하고 상기 애플리케이션의 사용자로부터 수신된 래더 랭킹 요청에 응답하여 래더 랭킹 요청을 생성하는 래더 랭킹 엔진을 더 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  43. 제 31 항에 있어서,
    리더로서 지정되며 사용자가 리더인 클랜을 식별하는 사용자로부터 데이터를수신하는 클랜 엔진을 더 포함하여, 상기 클랜 엔진은 리더로 하여금 리더에 의해 식별된 클랜에 참가하기 위한 초대를 애플리케이션의 다른 사용자에게 전송하게 하고, 상기 클랜 엔진은 상기 클랜에 참가한 사용자로부터 상기 클랜에 참가한 다른 사용자들에게 통신 메시지들이 전송될 수 있도록, 전송된 초대에 긍정 응답하는 사용자들, 클랜, 클랜 리더를 식별하는 데이터베이스를 유지하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
  44. 제 43 항에 있어서,
    상기 데이터베이스는 식별된 클랜 및 하나 이상의 네트워크 애플리케이션들에 관한 정보를 포함하는, 다중-사용자 네트워크 애플리케이션 컴퓨팅 환경.
KR1020047004067A 2002-04-26 2003-04-21 다중-사용자 애플리케이션 프로그램 인터페이스 KR100638071B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US37611502P 2002-04-26 2002-04-26
US60/376,115 2002-04-26
US10/359,359 US7711847B2 (en) 2002-04-26 2003-02-04 Managing users in a multi-user network game environment
US10/359,359 2003-02-04
PCT/US2003/012668 WO2003091894A1 (en) 2002-04-26 2003-04-21 Multi-user application program interface

Publications (2)

Publication Number Publication Date
KR20040096489A true KR20040096489A (ko) 2004-11-16
KR100638071B1 KR100638071B1 (ko) 2006-10-26

Family

ID=29254349

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020047004067A KR100638071B1 (ko) 2002-04-26 2003-04-21 다중-사용자 애플리케이션 프로그램 인터페이스

Country Status (8)

Country Link
US (9) US7711847B2 (ko)
EP (1) EP1499987A4 (ko)
JP (1) JP2005531048A (ko)
KR (1) KR100638071B1 (ko)
CN (2) CN104069637B (ko)
AU (1) AU2003231076A1 (ko)
TW (1) TWI274486B (ko)
WO (1) WO2003091894A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101316711B1 (ko) * 2012-02-17 2013-10-10 심재훈 사용자간 온라인 접촉 지원시스템

Families Citing this family (138)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6763371B1 (en) * 1999-05-10 2004-07-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for collaborative communication in a communication network
US8458754B2 (en) 2001-01-22 2013-06-04 Sony Computer Entertainment Inc. Method and system for providing instant start multimedia content
US7065587B2 (en) * 2001-04-02 2006-06-20 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
US7711847B2 (en) * 2002-04-26 2010-05-04 Sony Computer Entertainment America Inc. Managing users in a multi-user network game environment
US7606920B2 (en) * 2002-05-17 2009-10-20 Sony Computer Entertainment America Inc. Method and apparatus for controlling communication ports for an online session of a multi-user application by associating each of the ports with a protocol and designating an active port
US20030217135A1 (en) * 2002-05-17 2003-11-20 Masayuki Chatani Dynamic player management
US7277946B2 (en) * 2002-06-28 2007-10-02 Microsoft Corporation Distributed session listing and content discovery
US8131802B2 (en) 2007-10-05 2012-03-06 Sony Computer Entertainment America Llc Systems and methods for seamless host migration
US8560707B2 (en) 2007-10-05 2013-10-15 Sony Computer Entertainment America Llc Seamless host migration based on NAT type
US7426539B2 (en) * 2003-01-09 2008-09-16 Sony Computer Entertainment America Inc. Dynamic bandwidth control
US20060055113A1 (en) * 2004-09-14 2006-03-16 Zone4Play, Inc. Multiplayer card tournaments and methods
JP2006099234A (ja) * 2004-09-28 2006-04-13 Aruze Corp ネットワーク端末装置、配信サーバ、並びにクライアント/サーバシステム
US20060112020A1 (en) * 2004-11-19 2006-05-25 Karlheinz Dorn Generation and management of a rights context for order handling in technical processes
US7887419B2 (en) 2004-12-07 2011-02-15 Microsoft Corporation Game achievements system
US8876606B2 (en) 2004-12-07 2014-11-04 Microsoft Corporation User-centric method of aggregating information sources to reinforce digital identity
US7621813B2 (en) 2004-12-07 2009-11-24 Microsoft Corporation Ubiquitous unified player tracking system
US8234336B2 (en) * 2005-02-25 2012-07-31 Microsoft Corporation Virtual conference center architecture
US20060200463A1 (en) * 2005-03-03 2006-09-07 International Business Machines Corporation Determining a presentation rule in response to detecting multiple users
EP1891538A4 (en) * 2005-05-11 2009-01-21 Bigfoot Networks Inc SYSTEM AND METHOD FOR DISTRIBUTED PROCESSING
US20060259623A1 (en) * 2005-05-13 2006-11-16 Yahoo! Inc. Proxy for enabling communication between mobile device and game service
US9455844B2 (en) * 2005-09-30 2016-09-27 Qualcomm Incorporated Distributed processing system and method
US8682969B1 (en) * 2005-10-07 2014-03-25 On24, Inc. Framed event system and method
US9159036B2 (en) * 2005-11-18 2015-10-13 Microsoft Technology Licensing, Llc Embedded gamer card across multiple devices and networks
US9724612B2 (en) 2005-11-18 2017-08-08 Microsoft Technology Licensing, Llc Integrated gamer profile across multiple devices and networks
US8079911B2 (en) * 2005-11-18 2011-12-20 Microsoft Corporation Viewing a gamer card across multiple devices and networks
JP4128587B2 (ja) * 2006-01-19 2008-07-30 株式会社スクウェア・エニックス ゲーム装置、ランキング情報作成方法、プログラム及び記録媒体
US8469805B2 (en) * 2006-01-20 2013-06-25 Microsoft Corporation Tiered achievement system
US8555403B1 (en) * 2006-03-30 2013-10-08 Emc Corporation Privileged access to managed content
ITRM20070082A1 (it) * 2007-02-16 2008-08-17 Pervactive S R L Sistema distribuito client-server multipiattaforma per videogioco multi-giocatore, e procedimento di simulazione di personaggio virtuale "lifelike" per videogioco utilizzabile con detto sistema.
KR20100015846A (ko) * 2007-03-26 2010-02-12 빅풋 네트웍스, 인크. 노드들 간의 통신을 위한 방법 및 시스템
JP2009011712A (ja) * 2007-07-09 2009-01-22 Koei:Kk オンラインゲームシステム、中継サーバ、オンラインゲーム提供方法およびオンラインゲーム提供プログラム
US9483405B2 (en) 2007-09-20 2016-11-01 Sony Interactive Entertainment Inc. Simplified run-time program translation for emulating complex processor pipelines
US8262472B2 (en) * 2007-09-21 2012-09-11 Microsoft Corporation Comprehensive single page view of user's gaming achievements
KR101544889B1 (ko) * 2007-10-23 2015-08-18 삼성전자 주식회사 가상 세계에서의 이벤트를 관리하는 장치 및 그 방법
US7844724B2 (en) 2007-10-24 2010-11-30 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US8397168B2 (en) 2008-04-05 2013-03-12 Social Communications Company Interfacing with a spatial virtual communication environment
US7769806B2 (en) 2007-10-24 2010-08-03 Social Communications Company Automated real-time data stream switching in a shared virtual area communication environment
US8979647B2 (en) * 2007-10-26 2015-03-17 Microsoft Technology Licensing, Llc Method of providing player status and ability to join games
US8197313B2 (en) 2007-10-29 2012-06-12 Microsoft Corporation User to user game referrals
JP5336725B2 (ja) * 2007-11-16 2013-11-06 株式会社バンダイナムコゲームス サーバシステム及びプログラム
US9892028B1 (en) 2008-05-16 2018-02-13 On24, Inc. System and method for debugging of webcasting applications during live events
US10430491B1 (en) 2008-05-30 2019-10-01 On24, Inc. System and method for communication between rich internet applications
US8224891B2 (en) * 2008-06-12 2012-07-17 The Board Of Regents Of The University Of Oklahoma Electronic game-based learning system
US20090325709A1 (en) * 2008-06-26 2009-12-31 Microsoft Corporation Game Clan Matchmaking
US20100023757A1 (en) * 2008-07-22 2010-01-28 Winmagic Data Security Methods and systems for sending secure electronic data
US20100075747A1 (en) * 2008-09-22 2010-03-25 Bally Gaming, Inc. Player Club Ladder Method For Casino Gaming
US20100075757A1 (en) * 2008-09-22 2010-03-25 Bally Gaming, Inc. Player Club Ladder System For Casino Gaming
JP4950978B2 (ja) * 2008-10-08 2012-06-13 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および情報処理方法
JP5408140B2 (ja) * 2008-10-23 2014-02-05 富士通株式会社 認証システム、認証サーバおよび認証方法
KR101029425B1 (ko) * 2008-11-20 2011-04-14 엔에이치엔(주) 멀티 유저 네트워크 게임의 제작 시스템 및 방법
US10880340B2 (en) 2008-11-26 2020-12-29 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US10977693B2 (en) 2008-11-26 2021-04-13 Free Stream Media Corp. Association of content identifier of audio-visual data with additional data through capture infrastructure
US9386356B2 (en) 2008-11-26 2016-07-05 Free Stream Media Corp. Targeting with television audience data across multiple screens
US9154942B2 (en) 2008-11-26 2015-10-06 Free Stream Media Corp. Zero configuration communication between a browser and a networked media device
US9519772B2 (en) 2008-11-26 2016-12-13 Free Stream Media Corp. Relevancy improvement through targeting of information based on data gathered from a networked device associated with a security sandbox of a client device
US8180891B1 (en) 2008-11-26 2012-05-15 Free Stream Media Corp. Discovery, access control, and communication with networked services from within a security sandbox
US10419541B2 (en) 2008-11-26 2019-09-17 Free Stream Media Corp. Remotely control devices over a network without authentication or registration
US10334324B2 (en) 2008-11-26 2019-06-25 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US9961388B2 (en) 2008-11-26 2018-05-01 David Harrison Exposure of public internet protocol addresses in an advertising exchange server to improve relevancy of advertisements
US9026668B2 (en) 2012-05-26 2015-05-05 Free Stream Media Corp. Real-time and retargeted advertising on multiple screens of a user watching television
US9986279B2 (en) 2008-11-26 2018-05-29 Free Stream Media Corp. Discovery, access control, and communication with networked services
US10567823B2 (en) 2008-11-26 2020-02-18 Free Stream Media Corp. Relevant advertisement generation based on a user operating a client device communicatively coupled with a networked media device
US10631068B2 (en) 2008-11-26 2020-04-21 Free Stream Media Corp. Content exposure attribution based on renderings of related content across multiple devices
US8464256B1 (en) 2009-04-10 2013-06-11 Open Invention Network, Llc System and method for hierarchical interception with isolated environments
US8539488B1 (en) 2009-04-10 2013-09-17 Open Invention Network, Llc System and method for application isolation with live migration
US9853922B2 (en) 2012-02-24 2017-12-26 Sococo, Inc. Virtual area communications
US10419504B1 (en) 2009-04-10 2019-09-17 Open Invention Network Llc System and method for streaming application isolation
US8555360B1 (en) 2009-04-10 2013-10-08 Open Invention Network Llc System and method for on-line and off-line streaming application isolation
US8401941B1 (en) * 2009-04-10 2013-03-19 Open Invention Network Llc System and method for usage billing of hosted applications
US9577893B1 (en) 2009-04-10 2017-02-21 Open Invention Network Llc System and method for cached streaming application isolation
US8401940B1 (en) * 2009-04-10 2013-03-19 Open Invention Network Llc System and method for usage billing of hosted applications
US8418236B1 (en) 2009-04-10 2013-04-09 Open Invention Network Llc System and method for streaming application isolation
US11538078B1 (en) 2009-04-10 2022-12-27 International Business Machines Corporation System and method for usage billing of hosted applications
US9058599B1 (en) * 2009-04-10 2015-06-16 Open Invention Network, Llc System and method for usage billing of hosted applications
US8443202B2 (en) 2009-08-05 2013-05-14 Daon Holdings Limited Methods and systems for authenticating users
US8556724B2 (en) * 2009-09-30 2013-10-15 Zynga Inc. Apparatuses, methods and systems for an online game manager
US8584221B2 (en) * 2009-10-23 2013-11-12 Microsoft Corporation Authenticating using cloud authentication
US8126987B2 (en) 2009-11-16 2012-02-28 Sony Computer Entertainment Inc. Mediation of content-related services
US8826030B2 (en) * 2010-03-22 2014-09-02 Daon Holdings Limited Methods and systems for authenticating users
US11438410B2 (en) 2010-04-07 2022-09-06 On24, Inc. Communication console with component aggregation
US8706812B2 (en) 2010-04-07 2014-04-22 On24, Inc. Communication console with component aggregation
US8376834B2 (en) * 2010-05-07 2013-02-19 Microsoft Corporation Role assignment in multiplayer games
US8433759B2 (en) 2010-05-24 2013-04-30 Sony Computer Entertainment America Llc Direction-conscious information sharing
US9415304B2 (en) * 2010-06-03 2016-08-16 Maslow Six Entertainment, Inc. System and method for enabling user cooperation in an asynchronous virtual environment
US8453212B2 (en) * 2010-07-27 2013-05-28 Raytheon Company Accessing resources of a secure computing network
US8402530B2 (en) * 2010-07-30 2013-03-19 Microsoft Corporation Dynamic load redistribution among distributed servers
TWI482650B (zh) * 2010-07-30 2015-05-01 Legend Entertainment Co Ltd X 具有常在私人虛擬空間的線上遊戲系統及其執行方法
US8826451B2 (en) * 2010-08-16 2014-09-02 Salesforce.Com, Inc. Mechanism for facilitating communication authentication between cloud applications and on-premise applications
CN102480487B (zh) * 2010-11-24 2015-04-01 阿尔卡特朗讯公司 基于认证的多用户在线视频游戏方法及系统
US8622839B1 (en) 2010-12-09 2014-01-07 Amazon Technologies, Inc. Enhancing user experience by presenting past application usage
US20120172098A1 (en) * 2010-12-29 2012-07-05 International Business Machines Corporation Suggesting game roles for different players based on a player's gaming statistics from other games
CN102739399A (zh) * 2011-04-15 2012-10-17 威达软体有限公司 在线游戏通讯锁解锁方法
US8832284B1 (en) 2011-06-16 2014-09-09 Google Inc. Virtual socializing
US10181127B2 (en) * 2011-08-02 2019-01-15 Zynga Inc. Detached economy in online game
IN2014MN00690A (ko) * 2011-09-13 2015-07-03 Monk Akarshala Design Private Ltd
WO2013040102A1 (en) * 2011-09-13 2013-03-21 Monk Akarshala Design Private Limited Learning identity management in a modular learning system
CN107871003B (zh) * 2011-09-19 2021-12-14 Varonis系统公司 用于多平台系统中的事件处理的方法和装置
KR20130062462A (ko) * 2011-11-25 2013-06-13 한국전자통신연구원 스트리밍 게임 서비스를 위한 분산 서버 시스템 및 방법
JP5695699B2 (ja) * 2012-05-31 2015-04-08 株式会社コナミデジタルエンタテインメント 管理装置、その制御方法及びプログラム、アプリケーションシステム、並びに識別情報関連付け方法
CN103546524A (zh) * 2012-07-17 2014-01-29 人人游戏网络科技发展(上海)有限公司 用于游戏服务器动态负载均衡的方法和设备
JP6368069B2 (ja) * 2013-01-31 2018-08-01 株式会社ソニー・インタラクティブエンタテインメント ゲーム装置、ゲーム制御方法、ゲーム制御プログラム、マッチングサーバ、マッチング制御方法、及びマッチング制御プログラム
US9230403B2 (en) * 2013-03-15 2016-01-05 Iconic Worldwide Gaming Limited Method, apparatus, and computer-readable media for enabling real-time competition based on live events
AU2013216689B2 (en) 2013-03-15 2014-11-06 Iconic Worldwide Gaming Limited Method, apparatus, and computer-readable media for enabling real-time competition
KR101744750B1 (ko) * 2013-03-28 2017-06-09 가부시키가이샤 코나미 데지타루 엔타테인멘토 관리 장치, 관리 방법 및 기억 매체
CN104102800A (zh) * 2013-04-02 2014-10-15 深圳市快播科技有限公司 一种游戏用户成就展示方法和系统
CN104303215B (zh) * 2013-04-10 2019-12-17 罗思赛有限公司 用于支持基于商品的实时竞争的方法、设备和计算机可读介质
US10449449B2 (en) 2013-06-18 2019-10-22 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Reducing the bandwidth requirements of multiplayer gaming sessions
US9992139B1 (en) * 2013-09-27 2018-06-05 Amazon Technologies, Inc. Virtualized computing resource scheduler
US11429781B1 (en) 2013-10-22 2022-08-30 On24, Inc. System and method of annotating presentation timeline with questions, comments and notes using simple user inputs in mobile devices
US10353633B2 (en) * 2013-12-19 2019-07-16 Sony Interactive Entertainment LLC Mass storage virtualization for cloud computing
AU2014374234B2 (en) * 2013-12-31 2018-07-05 Google Llc Methods, systems, and media for providing access control for a computing device
US10785325B1 (en) 2014-09-03 2020-09-22 On24, Inc. Audience binning system and method for webcasting and on-line presentations
US9495522B2 (en) 2014-09-03 2016-11-15 Microsoft Technology Licensing, Llc Shared session techniques
CN104623898B (zh) * 2014-12-19 2018-06-22 北京畅游天下网络技术有限公司 一种进入游戏副本场景的方法和游戏服务器
US10025578B2 (en) * 2015-06-18 2018-07-17 Ricoh Company, Ltd. Information processing system and method on a client server environment for software download
US10255748B2 (en) * 2015-07-14 2019-04-09 John English Database and server for automatic wagering
CN106039711B (zh) * 2016-05-17 2019-05-14 网易(杭州)网络有限公司 一种用户身份认证方法和装置
CN106254328B (zh) * 2016-07-27 2019-10-18 杭州华为数字技术有限公司 一种访问控制方法及装置
CN106529189B (zh) * 2016-11-24 2018-12-11 腾讯科技(深圳)有限公司 一种用户分类方法、应用服务器及应用客户端
JP6760394B2 (ja) 2016-12-02 2020-09-23 ヤマハ株式会社 コンテンツ再生機器、収音機器、及びコンテンツ再生システム
KR102024164B1 (ko) * 2017-02-14 2019-09-23 권오현 멀티 테넌시 환경에서의 개별 테넌트별 오토 스케일링 호출 규칙 자동 생성 방법 및 장치
JP6281082B1 (ja) * 2017-03-15 2018-02-21 株式会社コナミデジタルエンタテインメント サーバ装置、及びそれに用いられるコンピュータプログラム
JP6358684B2 (ja) * 2017-05-16 2018-07-18 グリー株式会社 プログラム、制御方法及びサーバ装置
US11188822B2 (en) 2017-10-05 2021-11-30 On24, Inc. Attendee engagement determining system and method
US11281723B2 (en) 2017-10-05 2022-03-22 On24, Inc. Widget recommendation for an online event using co-occurrence matrix
CN110678239B (zh) 2017-10-10 2024-02-09 谷歌有限责任公司 利用游戏元数据和量度的分布式基于样本的游戏剖析以及支持第三方内容的游戏api平台
US11103772B2 (en) 2018-01-12 2021-08-31 Bunch Live, Inc. Mediating multiplayer electronic game sessions
US11465056B2 (en) 2018-01-12 2022-10-11 Bunch Live, Inc. Game mediation component for enriching multiplayer gaming sessions
JP7005763B2 (ja) 2018-03-22 2022-01-24 グーグル エルエルシー オンラインインタラクティブゲーミングセッションのコンテンツをレンダリングおよび符号化するための方法およびシステム
US11077364B2 (en) 2018-04-02 2021-08-03 Google Llc Resolution-based scaling of real-time interactive graphics
KR102614649B1 (ko) 2018-04-10 2023-12-14 구글 엘엘씨 게이밍 렌더링에서의 메모리 관리
US10765952B2 (en) 2018-09-21 2020-09-08 Sony Interactive Entertainment LLC System-level multiplayer matchmaking
US10695671B2 (en) 2018-09-28 2020-06-30 Sony Interactive Entertainment LLC Establishing and managing multiplayer sessions
EP3807766B1 (en) 2018-11-16 2021-10-27 Google LLC Shadow tracking of real-time interactive simulations for complex system analysis
CN109731345B (zh) * 2019-01-31 2022-03-04 网易(杭州)网络有限公司 语音处理方法及装置、电子设备、存储介质
US11642596B2 (en) 2019-04-29 2023-05-09 Bunch Live, Inc. Game mediation infrastructure for establishment of multiplayer gaming sessions
US20220278854A1 (en) * 2019-07-24 2022-09-01 Unity Chain, Inc. Unity Protocol Consensus
US11115502B1 (en) * 2020-08-25 2021-09-07 Bank Of America Corporation System for real-time management of session objects and for application programming interface (API) mocking

Family Cites Families (206)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6332725A (ja) 1986-07-26 1988-02-12 Konica Corp 多段分散を行う磁気記録媒体の製造方法
JPS63232725A (ja) 1987-03-20 1988-09-28 Nec Corp メツセ−ジ同報通信方式
JPH0522346A (ja) 1991-07-15 1993-01-29 Oki Electric Ind Co Ltd 通信システムにおける着信転送方式
CA2141931A1 (en) 1993-06-03 1994-12-22 Robert David Dickinson Place object system
AU2471995A (en) 1994-05-05 1995-11-29 Catapult Entertainment, Inc. Network architecture for real-time video games
US5630757A (en) 1994-11-29 1997-05-20 Net Game Limited Real-time multi-user game communication system using existing cable television infrastructure
US5793964A (en) * 1995-06-07 1998-08-11 International Business Machines Corporation Web browser system
US5721908A (en) * 1995-06-07 1998-02-24 International Business Machines Corporation Computer network for WWW server data access over internet
US5682139A (en) 1995-06-07 1997-10-28 General Electric Company Railcar location using mutter networks and locomotive transmitter during transit
US5826085A (en) 1995-07-12 1998-10-20 Oracle Corporation Object oriented computer interface supporting interactive networked applications
US5941947A (en) 1995-08-18 1999-08-24 Microsoft Corporation System and method for controlling access to data entities in a computer network
US6219045B1 (en) 1995-11-13 2001-04-17 Worlds, Inc. Scalable virtual world chat client-server system
US5823879A (en) * 1996-01-19 1998-10-20 Sheldon F. Goldberg Network gaming system
US6128660A (en) 1996-03-21 2000-10-03 Hearme Network match maker
US5704032A (en) 1996-04-30 1997-12-30 International Business Machines Corporation Method for group leader recovery in a distributed computing environment
US6050898A (en) 1996-05-15 2000-04-18 Vr-1, Inc. Initiating and scaling massive concurrent data transaction
US5841980A (en) 1996-05-15 1998-11-24 Rtime, Inc. Distributed system for communication networks in multi-user applications
US5838909A (en) 1996-05-23 1998-11-17 Sandcastle, Inc. Reducing latency when synchronizing access to a multi-user database over a network
US5862339A (en) 1996-07-09 1999-01-19 Webtv Networks, Inc. Client connects to an internet access provider using algorithm downloaded from a central server based upon client's desired criteria after disconnected from the server
GB2320112B (en) * 1996-12-07 2001-07-25 Ibm High-availability computer server system
US6098091A (en) 1996-12-30 2000-08-01 Intel Corporation Method and system including a central computer that assigns tasks to idle workstations using availability schedules and computational capabilities
US6152824A (en) * 1997-03-06 2000-11-28 Mpath Interactive, Inc. Online gaming architecture
US6151632A (en) 1997-03-14 2000-11-21 Microsoft Corporation Method and apparatus for distributed transmission of real-time multimedia information
US6041312A (en) 1997-03-28 2000-03-21 International Business Machines Corporation Object oriented technology framework for accounts receivable and accounts payable
US6530840B1 (en) 1997-04-02 2003-03-11 International Business Machines Corporation Method and system for an object architecture for a multi-user game lobby and game session
US6038599A (en) 1997-04-23 2000-03-14 Mpath Interactive, Inc. Latency server and matchmaker
US5984787A (en) 1997-06-17 1999-11-16 International Business Machines Corp. Method and system for multi-user game recovery
US5893106A (en) 1997-07-11 1999-04-06 International Business Machines Corporation Object oriented server process framework with interdependent-object creation
US5987376A (en) 1997-07-16 1999-11-16 Microsoft Corporation System and method for the distribution and synchronization of data and state information between clients in a distributed processing system
US6106569A (en) 1997-08-14 2000-08-22 International Business Machines Corporation Method of developing a software system using object oriented technology
JPH1157215A (ja) 1997-08-20 1999-03-02 Fuji Xerox Co Ltd ネットワークゲームシステム、ネットワークゲームサーバ装置、ネットワークゲームクライアント装置、対局者選定プログラムを記録した媒体及び対局者情報取得プログラムを記録した媒体
JP3831092B2 (ja) 1997-09-19 2006-10-11 富士通株式会社 サーバ
US6769990B2 (en) 1998-02-06 2004-08-03 Robert Cohen Networked search and tracking games
JPH11234326A (ja) 1998-02-12 1999-08-27 Nippon Telegr & Teleph Corp <Ntt> 情報流通システム
US6844893B1 (en) 1998-03-09 2005-01-18 Looking Glass, Inc. Restaurant video conferencing system and method
US6247017B1 (en) * 1998-03-20 2001-06-12 Sun Microsystems, Inc. Server-client communication over a network
US6108569A (en) 1998-05-15 2000-08-22 E. I. Du Pont De Nemours And Company High temperature superconductor mini-filters and mini-multiplexers with self-resonant spiral resonators
US6549946B1 (en) * 1998-05-21 2003-04-15 International Business Machines Corporation Apparatus and method for telecommunication routing and parameter negotiation
JP2000000376A (ja) 1998-06-12 2000-01-07 Namco Ltd ゲーム装置のランキング表示方法
US6260120B1 (en) 1998-06-29 2001-07-10 Emc Corporation Storage mapping and partitioning among multiple host processors in the presence of login state changes and host controller replacement
US6463078B1 (en) 1998-07-22 2002-10-08 Microsoft Corporation Method for switching protocols transparently in multi-user applications
AU5563799A (en) 1998-08-17 2000-03-06 Net Talk, Inc. Computer architecture and process for audio conferencing over local and global networks including internets and intranets
US6363416B1 (en) 1998-08-28 2002-03-26 3Com Corporation System and method for automatic election of a representative node within a communications network with built-in redundancy
IL126043A (en) * 1998-09-02 2003-01-12 D S P Group Ltd Method and system for setting a new memory address pointer in a dsp
US6487583B1 (en) * 1998-09-15 2002-11-26 Ikimbo, Inc. System and method for information and application distribution
US6219046B1 (en) * 1998-09-17 2001-04-17 General Electric Company Man-machine interface for a virtual annunciator panel display
JP4054141B2 (ja) * 1998-10-08 2008-02-27 株式会社ソニー・コンピュータエンタテインメント 携帯型情報端末及び記録媒体
JP2000124939A (ja) 1998-10-13 2000-04-28 Nippon Telegr & Teleph Corp <Ntt> マルチメディア通信システム及びこのシステムを構成する装置並びに該装置のプログラムを記録した媒体
JP2000157724A (ja) 1998-11-24 2000-06-13 Sega Enterp Ltd ネットワークを利用したゲームシステム、ネットワークに接続可能なゲーム機及びこのゲーム機のためのプログラムが記録された媒体
US6931446B1 (en) 1998-12-14 2005-08-16 International Business Machines Corporation Methods, systems and computer program products for policy based network control of characteristics of user sessions
JP2001187273A (ja) 1999-01-28 2001-07-10 Sega Corp ネットワークゲームシステム、これに使用されるゲーム装置端末及び記憶媒体
US6142472A (en) * 1999-03-02 2000-11-07 Kliebisch; Henry Corporate ladder game
WO2000068864A1 (en) 1999-05-10 2000-11-16 Telefonaktiebolaget L M Ericsson (Publ) Method and apparatus in a communication network
US6763371B1 (en) 1999-05-10 2004-07-13 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for collaborative communication in a communication network
US6470022B1 (en) 1999-05-19 2002-10-22 3Com Corporation Method of distributing network resources fairly between users in an asynchronous transfer mode network
WO2000077630A1 (en) 1999-06-11 2000-12-21 British Telecommunications Public Limited Company Communication between software elements
US6539494B1 (en) 1999-06-17 2003-03-25 Art Technology Group, Inc. Internet server session backup apparatus
US6587874B1 (en) * 1999-06-29 2003-07-01 Cisco Technology, Inc. Directory assisted autoinstall of network devices
US6577628B1 (en) 1999-06-30 2003-06-10 Sun Microsystems, Inc. Providing quality of service (QoS) in a network environment in which client connections are maintained for limited periods of time
US6446113B1 (en) 1999-07-19 2002-09-03 Groove Networks, Inc. Method and apparatus for activity-based collaboration by a computer system equipped with a dynamics manager
US6519639B1 (en) 1999-07-21 2003-02-11 Microsoft Corporation System and method for activity monitoring and reporting in a computer network
US6561811B2 (en) 1999-08-09 2003-05-13 Entertainment Science, Inc. Drug abuse prevention computer game
US6487678B1 (en) 1999-08-31 2002-11-26 International Business Machines Corporation Recovery procedure for a dynamically reconfigured quorum group of processors in a distributed computing system
US6352479B1 (en) 1999-08-31 2002-03-05 Nvidia U.S. Investment Company Interactive gaming server and online community forum
US6748420B1 (en) 1999-11-23 2004-06-08 Cisco Technology, Inc. Methods and apparatus for providing shared access to an application
US6755743B1 (en) 1999-12-08 2004-06-29 Kabushiki Kaisha Sega Enterprises Communication game system and processing method thereof
US7337210B2 (en) 2000-01-13 2008-02-26 International Business Machines Corporation Method and apparatus for determining availability of a user of an instant messaging application
JP3512386B2 (ja) 2000-01-20 2004-03-29 株式会社スクウェア・エニックス オンライン複合サービス提供処理方法およびオンライン複合サービス提供処理システム
US20010044339A1 (en) * 2000-02-17 2001-11-22 Angel Cordero Multi-player computer game, system and method
KR100505281B1 (ko) 2000-02-18 2005-08-04 (주)아이콤 소프트 비디오게임 론칭 서버와 이를 이용한 네트워크를 통한비디오게임 시스템 및 방법
US7240093B1 (en) 2000-02-29 2007-07-03 Microsoft Corporation Use of online messaging to facilitate selection of participants in game play
US7720908B1 (en) 2000-03-07 2010-05-18 Microsoft Corporation System and method for multi-layered network communications
US6654831B1 (en) 2000-03-07 2003-11-25 International Business Machine Corporation Using multiple controllers together to create data spans
WO2001072002A2 (en) * 2000-03-17 2001-09-27 America Online, Inc. Shared groups rostering system
US20020042830A1 (en) 2000-03-31 2002-04-11 Subhra Bose System, method and applications real-time messaging over HTTP-based protocols
JP2001312468A (ja) 2000-04-28 2001-11-09 Konami Co Ltd ネットワーク接続制御方法及び接続制御システム
US7039694B2 (en) 2000-05-02 2006-05-02 Sun Microsystems, Inc. Cluster membership monitor
KR20000053909A (ko) * 2000-05-08 2000-09-05 최우진 게임 순위 결정 방법
JP2001314657A (ja) 2000-05-08 2001-11-13 Sega Corp ネットワークシステム及び記憶媒体
US20020023117A1 (en) 2000-05-31 2002-02-21 James Bernardin Redundancy-based methods, apparatus and articles-of-manufacture for providing improved quality-of-service in an always-live distributed computing environment
US7056217B1 (en) 2000-05-31 2006-06-06 Nintendo Co., Ltd. Messaging service for video game systems with buddy list that displays game being played
JP4408534B2 (ja) 2000-06-27 2010-02-03 株式会社バンダイナムコゲームス マルチプレイヤーゲーム用の情報提供システムおよび情報記憶媒体
US6699125B2 (en) 2000-07-03 2004-03-02 Yahoo! Inc. Game server for use in connection with a messenger server
US6704885B1 (en) 2000-07-28 2004-03-09 Oracle International Corporation Performing data backups with a stochastic scheduler in a distributed computing environment
US7089301B1 (en) 2000-08-11 2006-08-08 Napster, Inc. System and method for searching peer-to-peer computer networks by selecting a computer based on at least a number of files shared by the computer
US6676521B1 (en) 2000-08-18 2004-01-13 Cariocas, Inc. Enhanced online game mechanisms
US7299403B1 (en) 2000-10-11 2007-11-20 Cisco Technology, Inc. Methods and apparatus for obtaining a state of a browser
JP3646983B2 (ja) 2000-10-19 2005-05-11 株式会社ソニー・コンピュータエンタテインメント 待ち順番表示方法、待ち順番表示方法のプログラム、待ち順番表示方法のプログラムが記録された記録媒体、及びコンテンツ配信システム
SE517815C2 (sv) * 2000-10-27 2002-07-16 Terraplay Systems Ab Konfigurering av en flexibel infrastruktur
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
US7628702B2 (en) 2000-11-02 2009-12-08 Atlantis Cyberspace, Inc. Mission control system for game playing satellites on network
US8402124B1 (en) 2000-11-16 2013-03-19 International Business Machines Corporation Method and system for automatic load balancing of advertised services by service information propagation based on user on-demand requests
JP2002157206A (ja) 2000-11-17 2002-05-31 Square Co Ltd 電子会議参加方法およびそのシステム
GB0028474D0 (en) 2000-11-22 2001-01-10 Raekanet Ltd Improved computer network architecture and associated method and system
US7409061B2 (en) 2000-11-29 2008-08-05 Noatak Software Llc Method and system for secure distribution of subscription-based game software
US20020075844A1 (en) * 2000-12-15 2002-06-20 Hagen W. Alexander Integrating public and private network resources for optimized broadband wireless access and method
US6754250B2 (en) 2000-12-15 2004-06-22 Telefonaktiebolaget Lm Ericsson (Publ) Networking in uncoordinated frequency hopping piconets
US20020116397A1 (en) 2000-12-21 2002-08-22 Berg Mitchell T. Method and system for communicating an information packet through multiple router devices
US20020082077A1 (en) 2000-12-26 2002-06-27 Johnson Douglas R. Interactive video game system with characters that evolve physical and cognitive traits
US20020082065A1 (en) 2000-12-26 2002-06-27 Fogel David B. Video game characters having evolving traits
US20030018719A1 (en) 2000-12-27 2003-01-23 Ruths Derek Augustus Samuel Data-centric collaborative computing platform
WO2002054264A1 (en) 2000-12-29 2002-07-11 Webex Communications, Inc. Distributed network system architecture for collaborative computing
US7203755B2 (en) 2000-12-29 2007-04-10 Webex—Communications, Inc. System and method for application sharing in collaborative setting
US7685224B2 (en) 2001-01-11 2010-03-23 Truelocal Inc. Method for providing an attribute bounded network of computers
US7188145B2 (en) 2001-01-12 2007-03-06 Epicrealm Licensing Llc Method and system for dynamic distributed data caching
US7035911B2 (en) 2001-01-12 2006-04-25 Epicrealm, Licensing Llc Method and system for community data caching
US6761636B2 (en) 2001-01-16 2004-07-13 Fucom Company, Ltd. Real time data exchange system
US7165107B2 (en) 2001-01-22 2007-01-16 Sun Microsystems, Inc. System and method for dynamic, transparent migration of services
US7155515B1 (en) 2001-02-06 2006-12-26 Microsoft Corporation Distributed load balancing for single entry-point systems
US7107312B2 (en) 2001-02-06 2006-09-12 Lucent Technologies Inc. Apparatus and method for use in a data/conference call system for automatically collecting participant information and providing all participants with that information for use in collaboration services
US20020115488A1 (en) * 2001-02-22 2002-08-22 Nicholas Berry System and method for conducting an online competition
US7035919B1 (en) 2001-03-21 2006-04-25 Unisys Corporation Method for calculating user weights for thin client sizing tool
US20020142842A1 (en) 2001-03-29 2002-10-03 Easley Gregory W. Console-based system and method for providing multi-player interactive game functionality for use with interactive games
US7236939B2 (en) 2001-03-31 2007-06-26 Hewlett-Packard Development Company, L.P. Peer-to-peer inter-enterprise collaborative process management method and system
US7177950B2 (en) 2001-04-26 2007-02-13 Microsoft Corporation Synchronization and recovery of peers in a peer to peer environment
TWI220821B (en) 2001-04-26 2004-09-01 Accton Technology Corp Zero-loss web service system and method
US20020178260A1 (en) 2001-05-23 2002-11-28 Chang Hsin-Wang Wayne Distributed computer resource bartering system
JP3429286B2 (ja) 2001-05-29 2003-07-22 株式会社コナミコンピュータエンタテインメント大阪 ネットゲームシステム及びネットゲーム管理方法
US7269632B2 (en) 2001-06-05 2007-09-11 Xdyne, Inc. Networked computer system for communicating and operating in a virtual reality environment
KR20040013113A (ko) 2001-07-06 2004-02-11 컴퓨터 어소시에이츠 싱크, 인코포레이티드 정보 백업 시스템 및 방법
EP1195590B1 (en) * 2001-08-11 2007-08-08 Agilent Technologies, Inc. Optical measuring device with imaging unit
US8065394B2 (en) * 2001-08-20 2011-11-22 Bally Gaming, Inc. Local game-area network method
JP4658412B2 (ja) 2001-09-20 2011-03-23 富士通株式会社 データ共有装置
US20030073494A1 (en) 2001-10-15 2003-04-17 Kalpakian Jacob H. Gaming methods, apparatus, media and signals
US7031473B2 (en) 2001-11-13 2006-04-18 Microsoft Corporation Network architecture for secure communications between two console-based gaming systems
US6766364B2 (en) 2002-01-15 2004-07-20 Telcordia Technologies, Inc. Template based configuration and validation of a network for enabling a requested service to be compatible with the previously enabled services
JP3883452B2 (ja) 2002-03-04 2007-02-21 富士通株式会社 通信システム
WO2003088161A1 (en) * 2002-04-04 2003-10-23 Yahoo! Inc. Online league and tournament system
US7587465B1 (en) * 2002-04-22 2009-09-08 Cisco Technology, Inc. Method and apparatus for configuring nodes as masters or slaves
US20030204593A1 (en) 2002-04-25 2003-10-30 International Business Machines Corporation System and method for dynamically altering connections in a data processing network
US7711847B2 (en) 2002-04-26 2010-05-04 Sony Computer Entertainment America Inc. Managing users in a multi-user network game environment
US6935959B2 (en) 2002-05-16 2005-08-30 Microsoft Corporation Use of multiple player real-time voice communications on a gaming device
US20030217135A1 (en) 2002-05-17 2003-11-20 Masayuki Chatani Dynamic player management
US7421471B2 (en) 2002-05-17 2008-09-02 Sony Computer Entertainment America Inc. Configuration switching: dynamically changing between network communication architectures
US7640300B2 (en) 2002-06-10 2009-12-29 Microsoft Corporation Presence and notification system for maintaining and communicating information
US7454458B2 (en) 2002-06-24 2008-11-18 Ntt Docomo, Inc. Method and system for application load balancing
US20040001476A1 (en) 2002-06-24 2004-01-01 Nayeem Islam Mobile application environment
US7803052B2 (en) 2002-06-28 2010-09-28 Microsoft Corporation Discovery and distribution of game session information
US9497168B2 (en) 2002-07-30 2016-11-15 Avaya Inc. Method and apparatus for supporting communications between a computing device within a network and an external computing device
US8224985B2 (en) * 2005-10-04 2012-07-17 Sony Computer Entertainment Inc. Peer-to-peer communication traversing symmetric network address translators
US8131802B2 (en) 2007-10-05 2012-03-06 Sony Computer Entertainment America Llc Systems and methods for seamless host migration
US8560707B2 (en) 2007-10-05 2013-10-15 Sony Computer Entertainment America Llc Seamless host migration based on NAT type
FR2843210B1 (fr) 2002-08-02 2005-10-14 Meiosys Procede de migration de connexions dans une architecture multi-ordinateurs, procede pour realiser une continuite de fonctionnement mettant en oeuvre ce procede de migration, et systeme multi-ordinateurs ainsi equipe.
US7016942B1 (en) 2002-08-05 2006-03-21 Gary Odom Dynamic hosting
US20040031052A1 (en) 2002-08-12 2004-02-12 Liberate Technologies Information platform
KR20040042121A (ko) 2002-11-13 2004-05-20 주식회사 엔씨소프트 온 라인 게임의 제공 방법 및 장치
WO2004063843A2 (en) 2003-01-15 2004-07-29 Matsushita Electric Industrial Co., Ltd. PEER-TO-PEER (P2P) CONNECTION DESPITE NETWORK ADDRESS TRANSLATOR (NATs) AT BOTH ENDS
US7899932B2 (en) 2003-01-15 2011-03-01 Panasonic Corporation Relayed network address translator (NAT) traversal
US7366185B2 (en) 2003-02-07 2008-04-29 Lockheed Martin Corporation System for evolutionary service migration
US8032619B2 (en) 2003-04-16 2011-10-04 Sony Computer Entertainment America Llc Environment information server
US7097562B2 (en) 2003-06-03 2006-08-29 Wms Gaming Inc. Peer-to-peer distributed gaming application network
GB0322045D0 (en) 2003-09-20 2003-10-22 Koninkl Philips Electronics Nv A network-based gaming system
US7502322B2 (en) 2003-09-30 2009-03-10 Nokia Corporation System, method and computer program product for increasing throughput in bi-directional communications
US8234383B2 (en) * 2003-11-07 2012-07-31 Panasonic Corporation Bubble packet port identification using detection packets
DE10353925B4 (de) 2003-11-18 2009-12-24 Nec Europe Ltd. Verfahren zum Austausch von Daten zwischen zwei Hosts
US7171583B2 (en) 2003-12-10 2007-01-30 International Business Machines Corporation For PPRC backup systems
JP2007528677A (ja) 2004-03-09 2007-10-11 クリーク コミュニケーションズ エルエルシー シンメトリック・ファイアウォールの背後のクライアントのピアツーピア接続のためのシステムおよび方法
US20060168107A1 (en) 2004-03-16 2006-07-27 Balan Rajesh K Generalized on-demand service architecture for interactive applications
US7536467B2 (en) * 2004-04-20 2009-05-19 Microsoft Corporation Peer-to-peer (P2P) mobility system, and method
US20050245317A1 (en) 2004-04-30 2005-11-03 Microsoft Corporation Voice chat in game console application
US20060015560A1 (en) 2004-05-11 2006-01-19 Microsoft Corporation Multi-sensory emoticons in a communication system
US7620033B2 (en) * 2004-05-21 2009-11-17 Alcatel-Lucent Usa Inc. Method for optimal path selection in traversal of packets through network address translators
US8050272B2 (en) 2004-06-29 2011-11-01 Damaka, Inc. System and method for concurrent sessions in a peer-to-peer hybrid communications network
US7778187B2 (en) 2004-06-29 2010-08-17 Damaka, Inc. System and method for dynamic stability in a peer-to-peer hybrid communications network
AU2005272779B2 (en) 2004-08-13 2010-06-10 Citrix Systems, Inc. A method for maintaining transaction integrity across multiple remote access servers
WO2006023508A1 (en) 2004-08-17 2006-03-02 Shaw Parsing Llc Techniques for upstream failure detection and failure recovery
US7543064B2 (en) * 2004-09-30 2009-06-02 Logitech Europe S.A. Multiplayer peer-to-peer connection across firewalls and network address translators using a single local port on the local host
US7840963B2 (en) 2004-10-15 2010-11-23 Microsoft Corporation Marking and utilizing portions of memory state information during a switch between virtual machines to minimize software service interruption
JP4625968B2 (ja) 2004-11-10 2011-02-02 株式会社セガ ネットワークゲームシステム、及びゲーム装置
CN100477851C (zh) 2005-01-05 2009-04-08 国际商业机器公司 在无线局域网的两种通信模式之间进行切换的方法和系统
US7929422B2 (en) 2005-01-06 2011-04-19 Cisco Technology, Inc. Method of moving a transport connection among network hosts
US7787383B2 (en) 2005-03-04 2010-08-31 Network Appliance, Inc. Method and apparatus for monitoring a connection in a peer-to-peer network
US20070061460A1 (en) 2005-03-24 2007-03-15 Jumpnode Systems,Llc Remote access
US20060221856A1 (en) 2005-03-29 2006-10-05 Nokia Corporation System and method for managing master-slave relationships within a network
US20060258463A1 (en) 2005-05-13 2006-11-16 Professional Interactive Entertainment, Inc. System and method for network interactive game match-up and server selection
US8019986B2 (en) * 2005-08-12 2011-09-13 Comcast Cable Holdings, Llc Method and system for booting, provisioning and activating hardware and software clients
JP4331154B2 (ja) * 2005-09-29 2009-09-16 パナソニック株式会社 情報処理システム、トンネル通信装置、及びトンネル通信方法
US20070094325A1 (en) 2005-10-21 2007-04-26 Nucleoid Corp. Hybrid peer-to-peer data communication and management
US7539216B2 (en) 2005-11-16 2009-05-26 Cable Television Laboratories, Inc. Method and system of determining last hop device addresses
US20070174429A1 (en) 2006-01-24 2007-07-26 Citrix Systems, Inc. Methods and servers for establishing a connection between a client system and a virtual machine hosting a requested computing environment
US8676899B2 (en) 2006-01-26 2014-03-18 International Business Machines Corporation Offline IM chat to avoid server connections
US9047310B2 (en) 2006-02-22 2015-06-02 Microsoft Technology Licensing, Llc Reliable, efficient peer-to-peer storage
US8347341B2 (en) 2006-03-16 2013-01-01 Time Warner Cable Inc. Methods and apparatus for centralized content and data delivery
US20070233865A1 (en) 2006-03-30 2007-10-04 Garbow Zachary A Dynamically Adjusting Operating Level of Server Processing Responsive to Detection of Failure at a Server
US8965978B2 (en) 2006-03-31 2015-02-24 Alcatel Lucent Methods and devices for maintaining sessions based on presence status information
AU2006343658A1 (en) 2006-05-12 2007-11-22 Acei Ab Gaming system with failover and takeover capability
US7643459B2 (en) 2006-06-16 2010-01-05 Alcatel-Lucent Usa Inc. Methods, devices and architectures for establishing peer-to-peer sessions
US20080049755A1 (en) 2006-08-25 2008-02-28 Motorola, Inc. Method and system for optimizing resource allocations based on quality of service needs of one or more applications
US8719143B2 (en) 2006-09-28 2014-05-06 Microsoft Corporation Determination of optimized location for services and data
US7680908B2 (en) 2006-09-28 2010-03-16 Microsoft Corporation State replication
US8990305B2 (en) 2006-10-18 2015-03-24 Microsoft Corporation Techniques for virtual conferencing servers
GB2444995B (en) 2006-12-21 2011-07-27 Vodafone Plc Peer to peer network
CN101232413B (zh) 2007-01-25 2012-11-21 华为技术有限公司 一种转移会话控制权的方法、系统和服务器
US7747688B2 (en) 2007-02-07 2010-06-29 International Business Machines Corporation System and method for managing group interaction session states
US8719375B2 (en) 2007-03-22 2014-05-06 Microsoft Corporation Remote data access techniques for portable devices
US8549150B1 (en) 2007-03-30 2013-10-01 Amazon Technologies, Inc. Fractional redundant distribution of media content
US8489830B2 (en) 2007-03-30 2013-07-16 Symantec Corporation Implementing read/write, multi-versioned file system on top of backup data
US8335813B2 (en) 2007-05-01 2012-12-18 Illinois Institute Of Technology Systems, methods, and protocols for process migration and group membership management
US7881329B2 (en) 2007-05-25 2011-02-01 Sharp Laboratories Of America, Inc. Method and system for maintaining high reliability logical connection
US7996543B2 (en) * 2007-08-16 2011-08-09 Xcastlabs Client-to-client direct RTP exchange in a managed client-server network
US8725874B2 (en) 2007-09-27 2014-05-13 International Business Machines Corporation Dynamic determination of an ideal client-server for a collaborative application network
US7856501B2 (en) 2007-12-04 2010-12-21 Sony Computer Entertainment Inc. Network traffic prioritization
US9473598B2 (en) 2007-12-18 2016-10-18 International Business Machines Corporation Network connection failover during application service interruption
TWI476610B (zh) 2008-04-29 2015-03-11 Maxiscale Inc 同級間冗餘檔案伺服器系統及方法
US9197678B2 (en) 2008-12-11 2015-11-24 Skype Method and system for data transmission
US9032248B1 (en) 2012-10-04 2015-05-12 Amazon Technologies, Inc. Memory write tracking for virtual machines

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101316711B1 (ko) * 2012-02-17 2013-10-10 심재훈 사용자간 온라인 접촉 지원시스템

Also Published As

Publication number Publication date
TW200307418A (en) 2003-12-01
US7962549B2 (en) 2011-06-14
US20100285872A1 (en) 2010-11-11
USRE48803E1 (en) 2021-11-02
CN1556958B (zh) 2014-07-23
KR100638071B1 (ko) 2006-10-26
CN104069637B (zh) 2017-12-29
JP2005531048A (ja) 2005-10-13
EP1499987A1 (en) 2005-01-26
CN104069637A (zh) 2014-10-01
US7711847B2 (en) 2010-05-04
US20090006604A1 (en) 2009-01-01
EP1499987A4 (en) 2009-11-11
AU2003231076A1 (en) 2003-11-10
US7930345B2 (en) 2011-04-19
US20030204566A1 (en) 2003-10-30
US20080280686A1 (en) 2008-11-13
US7877509B2 (en) 2011-01-25
US20100279767A1 (en) 2010-11-04
TWI274486B (en) 2007-02-21
US7822809B2 (en) 2010-10-26
WO2003091894A1 (en) 2003-11-06
USRE48802E1 (en) 2021-11-02
US7613800B2 (en) 2009-11-03
CN1556958A (zh) 2004-12-22
USRE48700E1 (en) 2021-08-24
US20090006545A1 (en) 2009-01-01

Similar Documents

Publication Publication Date Title
KR100638071B1 (ko) 다중-사용자 애플리케이션 프로그램 인터페이스
US10659500B2 (en) Managing participants in an online session
KR100638072B1 (ko) 네트워크 통신 아키텍처들 사이의 동적인 스위칭 구성
US9498722B2 (en) User organizing apparatus, user organizing method, and cloud computing system
US20100056275A1 (en) Massively Multiplayer Online Game Technologies
JP2007505673A (ja) ネットワークを利用したゲーム・システム
EP1506485B1 (en) Configuration control by automatic communication port selection and switching configuration by switching communication port

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20121008

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131008

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141007

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151006

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20161011

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20171012

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20181010

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20191008

Year of fee payment: 14