KR101571374B1 - 정보 관리 방법 및 장치 - Google Patents

정보 관리 방법 및 장치 Download PDF

Info

Publication number
KR101571374B1
KR101571374B1 KR1020157009428A KR20157009428A KR101571374B1 KR 101571374 B1 KR101571374 B1 KR 101571374B1 KR 1020157009428 A KR1020157009428 A KR 1020157009428A KR 20157009428 A KR20157009428 A KR 20157009428A KR 101571374 B1 KR101571374 B1 KR 101571374B1
Authority
KR
South Korea
Prior art keywords
terminal
participating
synchronization
terminals
participating terminal
Prior art date
Application number
KR1020157009428A
Other languages
English (en)
Other versions
KR20150046372A (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 KR20150046372A publication Critical patent/KR20150046372A/ko
Application granted granted Critical
Publication of KR101571374B1 publication Critical patent/KR101571374B1/ko

Links

Images

Classifications

    • 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/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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
    • 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/104Peer-to-peer [P2P] networks
    • 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/32Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은, P2P 이용 시간 동안, 동기화 단말기가 하나 이상의 참여 단말기의 동작을 동기화하는 것을 중단할 때, 지속적인 동기화를 유지하기 위해 이용되는 방법 및 장치를 개시한다. 서버는 임시로 동기화 단말기로 대체될 수 있으며, 참여 단말기로부터 동작 상태 정보를 요청한다. 동작 상태 정보를 이용하는 참여 단말기 사이의 데이터 차이를 계산한 후, 각 참여 단말기가 자신을 다른 참여 단말기와 동기화할 수 있도록, 서버가 참여 단말기에 데이터 차이를 전송할 수 있다. 새로운 동기화 단말기가 남은 참여 단말기의 동작을 동기화할 수 있도록, 새로운 동기화 단말기가 참여 단말기로부터 선택된다. 본 발명은 동기화 단말기의 탈퇴로 인한 네트워크 어플리케이션의 종료를 방지하고, 동기화를 유지시키며, 네트워크 어플리케이션의 질을 개선한다.

Description

정보 관리 방법 및 장치{INFORMATION MANAGEMENT METHOD AND DEVICE}
본 발명은 개괄적으로는 정보 관리 방법에 관한 것이고, 구체적으로는, 데이터 동기화의 유지와 관련된 네트워크 어플리케이션 방법 및 장치에 관한 것이다.
현대 네트워크 기술의 발전과 함께, 사용자는 업무 및/또는 오락을 위해 연결되지 않은 컴퓨터를 사용하는 것에 만족하지 않는다. 일반적으로, 사용자는 업무 및/또는 오락을 하는 동안 더 많은 상호 작용과 의사소통을 선호하며, 이는 인터넷 또는 다른 네트워크 기술에 크게 의존하고 있다.
종래의 기술은 다수의 단말기를 사용하여 임의의 피어-투-피어(peer-to-peer; P2P) 서비스를 수행한다. P2P 이용 시간 동안, 하나의 단말기는 동기화 단말기로 사용되고 다른 단말기는 참여 단말기로 사용된다. 동기화 단말기는 P2P 서비스를 위한 “호스트 컴퓨터”로써 서비스를 제공하고, 이것은 참여 단말기의 동작을 조정하는 것을 맡고 있다. 구체적으로, 동기화 단말기는 참여 단말기의 동작 로직 프레임 값과 사용자 입력 세트를 관리하여, 상이한 위치에 있는 모든 단말기가 P2P 이용 시간 동안 그들의 기능을 동기화하고 정보 교환을 용이하게 할 수 있도록 한다.
그러나 종래의 기술은, 동기화 단말기가 의도적으로든 우발적으로든 탈퇴를 하는 경우, 참여 단말기는 중단되고 P2P 프로그램은 종료되어, 사용자 경험이 만족스럽지 않게 되는 문제점이 나타난다.
종래의 기술과 연관된 전술한 문제점 및 다른 문제점은 아래에 개시된 본 발명에 의해 줄어들거나 제거될 수 있다. 일부 실시예에서, 본 발명은 하나 이상의 프로세서와, 하나 이상의 프로세서에 의해 실행되는 프로그램을 저장하는 메모리를 가진 컴퓨터에 의해 구현된다. 이러한 기능을 실행하기 위한 명령은 하나 이상의 프로세서에 의해 실행되도록 구성된 컴퓨터 프로그램 제품 내에 포함될 수 있다.
본 발명의 일 측면은 컴퓨터 시스템에 의해 실행되는 컴퓨터 구현 정보 관리 방법에 관한 것이다. 컴퓨터 시스템은 하나 이상의 참여 단말기의 동작을 동기화하도록 구성되어 있는 동기화 단말기의 통신 상태를 검출한다. 컴퓨터 시스템은 상기 동기화 단말기의 통신 상태가 미리 설정된 조건을 만족할 때, 상기 참여 단말기로부터 각 참여 단말기에 대응하는 동작 상태 정보를 요청한다. 또한, 컴퓨터 시스템은 상기 참여 단말기에 의해 업로드된 상기 대응하는 동작 상태 정보를 수신하고, 각 참여 단말기에 대응하는 상기 동작 상태 정보에 기초하여 상기 참여 단말기 사이의 데이터 차이를 계산한다. 일부 실시예에서, 컴퓨터 시스템은 각 참여 단말기가 상기 데이터 차이를 이용하여 자신을 다른 참여 단말기와 동기화할 수 있도록, 상기 데이터 차이를 상기 참여 단말기 각각에 전송한다. 마지막으로, 컴퓨터 시스템은 새로운 동기화 단말기가 남은 참여 단말기의 동작을 동기화할 수 있도록, 동기화의 완료를 지시하는 신호를 상기 참여 단말기로부터 수신한 후, 미리 설정된 규칙에 따라 상기 참여 단말기로부터 상기 새로운 동기화 단말기를 선택한다.
본 발명의 또 다른 측면은 컴퓨터 시스템에 관한 것이다. 컴퓨터 시스템은 하나 이상의 프로세서, 메모리 및 상기 메모리에 저장되고 상기 하나 이상의 프로세서에 의해 실행되도록 구성되어 있는 하나 이상의 프로그램 모듈을 포함한다. 상기 하나 이상의 프로그램 모듈은, 하나 이상의 참여 단말기의 동작을 동기화하도록 구성되어 있는 동기화 단말기의 통신 상태를 검출하도록 구성되어 있는 검출 모듈, 상기 동기화 단말기의 통신 상태가 미리 설정된 조건을 만족할 때, 상기 참여 단말기로부터 각 참여 단말기에 대응하는 동작 상태 정보를 요청하도록 구성되어 있는 요청 모듈, 상기 참여 단말기에 의해 업로드된 상기 대응하는 동작 상태 정보를 수신하도록 구성되어 있는 수신 모듈, 각 참여 단말기에 대응하는 상기 동작 상태 정보에 기초하여 상기 참여 단말기 사이의 데이터 차이를 계산하도록 구성되어 있는 프로세싱 모듈, 각 참여 단말기가 상기 데이터 차이를 이용하여 자신을 다른 참여 단말기와 동기화할 수 있도록, 상기 데이터 차이를 상기 참여 단말기 각각에 전송하도록 구성되어 있는 전송 모듈, 및 새로운 동기화 단말기가 남은 참여 단말기의 동작을 동기화할 수 있도록, 동기화의 완료를 지시하는 신호를 상기 참여 단말기로부터 수신한 후, 미리 설정된 규칙에 따라 상기 참여 단말기로부터 상기 새로운 동기화 단말기를 선택하도록 구성되어 있는 선택 모듈을 포함한다.
본 발명의 또 다른 측면은 다음의 명령을 저장하고 있는 비일시적 컴퓨터 판독 가능 저장 매체에 관한 것이다. 상기 하나 이상의 명령은, 컴퓨터 시스템에 의해 실행될 때, 상기 컴퓨터 시스템으로 하여금, 하나 이상의 참여 단말기의 동작을 동기화하도록 구성되어 있는 동기화 단말기의 통신 상태를 검출하고, 상기 동기화 단말기의 통신 상태가 미리 설정된 조건을 만족할 때, 상기 참여 단말기로부터 각 참여 단말기에 대응하는 동작 상태 정보를 요청하고, 상기 참여 단말기에 의해 업로드된 상기 대응하는 동작 상태 정보를 수신하고, 각 참여 단말기에 대응하는 상기 동작 상태 정보에 기초하여 상기 참여 단말기 사이의 데이터 차이를 계산하고, 각 참여 단말기가 상기 데이터 차이를 이용하여 자신을 다른 참여 단말기와 동기화할 수 있도록, 상기 데이터 차이를 상기 참여 단말기 각각에 전송하고, 상기 새로운 동기화 단말기가 남은 참여 단말기의 동작을 동기화할 수 있도록, 동기화의 완료를 지시하는 신호를 상기 참여 단말기로부터 수신한 후, 미리 설정된 규칙에 따라 상기 참여 단말기로부터 새로운 동기화 단말기를 선택하도록 한다.
일부 실시예는 단말기-서버 네트워크 환경의 단말기측 또는 서버측 상에 구현된다.
본 발명의 전술한 특징 및 이점뿐만 아니라 이들의 추가적인 특징 및 이점은 첨부된 도면과 함께 바람직한 실시예의 상세한 설명에 의해 본 명세서에서 더욱 명백하게 이해될 것이다.
도 1은, 본 발명의 일부 실시예에 따른, 지속적인 동기화를 위한 정보 관리 방법을 도시한 흐름도이다.
도 2는, 본 발명의 일부 실시예에 따른, 서버, 동기화 단말기 및 2개의 참여 단말기가 지속적인 동기화를 유지하기 위해 어떻게 상호 작용하는지를 도시한 개략도이다.
도 3은, 본 발명의 일부 실시예에 따른, 지속적인 동기화를 유지할 수 있는 정보 관리 어플리케이션 내의 모듈을 도시한 블록도이다.
도 4는, 본 발명의 일부 실시예에 따른, 정보 관리 어플리케이션 내의 검출 모듈을 도시한 블록도이다.
도 5는, 본 발명의 일부 실시예에 따른, 정보 관리 어플리케이션 내의 프로세싱 모듈을 도시한 블록도이다.
도 6은, 본 발명의 일부 실시예에 따른, 정보 관리 어플리케이션 내의 전송 모듈을 도시한 블록도이다.
도 7은, 본 발명의 일부 실시예에 따른, 정보 관리 어플리케이션 내의 선택 모듈을 도시한 블록도이다.
도 8은 본 발명의 일부 실시예에 따른 네트워크 환경이다.
도 9는 본 발명의 일부 실시예에 따른 서버의 블록도이다.
도 10은 본 발명의 일부 실시예에 따른 동기화 단말기의 블록도이다.
도 11은 본 발명의 일부 실시예에 따른 참여 단말기의 블록도이다.
유사한 참조 번호는 여러 관점의 도면에서의 서로 상응하는 요소를 지시한다.
첨부된 도면에서 도시된 예시, 실시예들을 참조하여 상세하게 설명할 것이다. 다음의 상세한 설명에서, 다수의 구체적인 세부 사항은 본 명세서에 나타난 발명의 완전한 이해를 제공하기 위해 제시된다. 그러나 통상의 기술자에게 이 발명은 이러한 구체적인 세부 사항 없이도 실행될 수 있음은 명백할 것이다. 다른 예시에서는, 실시예들의 잘 알려지지 않은 측면을 불필요하게 불명확하게 할 수 있으므로 공지의 방법, 과정, 구성 요소 및 회로에 대해 상세히 설명되지 않는다.
도 8은 본 발명의 일부 실시예에 따른 네트워크 환경의 블록도이다. 네트워크 환경(800)은 하나 이상의 서버(810), 하나의 동기화 단말기(825) 및 하나 이상의 참여 단말기(830-1, 830-3)를 포함한다. 동기화 단말기 및 참여 단말기는 네트워크(820) (예를 들면, 인터넷)를 통해 서버에 연결된다. 한편 상이한 참여 단말기 또한 이 네트워크(820)를 통해 서로 통신할 수 있을 것이다. 예를 들면, 아래에 기재한 바와 같이, 참여 단말기(830-1)에서 생성된 사용자 입력 세트는 서버(810), 동기화 단말기(825) 및/또는 참여 단말기(830-2)에 전송될 수 있다. 네트워크(810)를 통해, 네트워크 환경(800) 내의 상이한 개체들이 서로 정보를 교환할 수 있다. 일부 실시예에서, 네트워크 환경(800)은 온라인 게임 어플리케이션을 제공한다. 상이한 사용자가 상이한 단말기로부터 이 온라인 게임 어플리케이션에 참여하며, 하나의 단말기는 동기화 단말기로 지정되고, 다른 단말기는 참여 단말기로 지정되고, 동기화 단말기는 참여 단말기의 동작을 동기화한다. 서버(810)는 동기화 단말기(825) 및 참여 단말기(830-1, 830-2)와 상호 작용하고, 동기화 단말기가 탈퇴하는 경우에도 지속적으로 동기화를 유지한다.
도 1은 본 발명의 일부 실시예에 따른 지속적인 동기화를 위한 정보 관리 방법을 도시한 흐름도이다. 설명을 위해, 본 발명의 방법은, 도 8에 도시된 서버, 동기화 단말기 및 하나의 참여 단말기를 포함하는 컴퓨터 시스템에서 실행되는 온라인 게임 어플리케이션과 같은 네트워크 어플리케이션에서 구현될 수 있다.
도 2는 본 발명의 일부 실시예에 따른 서버, 동기화 단말기 및 2개의 참여 단말기가 지속적인 동기화를 유지하기 위해 어떻게 상호 작용하는지를 도시한 개략도이다. 도 2에 도시된 컴퓨터 시스템은 서버(201), 동기화 단말기(202), 제1 참여 단말기(203) 및 제2 참여 단말기(204)를 포함한다. 그러나, 본 발명에 따라 구현되는 컴퓨터 장치의 수는 네트워크 어플리케이션의 구체적인 설계 및 예시적인 시나리오에 따라 다양할 수 있다는 것에 유의해야 한다. 예를 들면, 하나 이상의 동기화 단말기가 있을 수도 있고, 하나의 또는 임의의 수의 참여 단말기가 있을 수도 있다. 또한, 서버 및 동기화 단말기는 동일하거나 상이한 장치일 수 있다.
도 1을 참조하면, 단계 110에서, 컴퓨터 시스템은 하나 이상의 참여 단말기의 동작을 동기화하도록 구성되어 있는 동기화 단말기의 통신 상태를 검출할 수 있다. 통신 상태는, 동기화 단말기가 다른 컴퓨터 장치와 어떻게 상호 작용하는지를 구체적으로 명시하거나 반영하는 임의의 유형의 상태이거나, 동기화 단말기로부터의 특정 명령 또는 요청일 수 있다.
예를 들면, 도 2에 도시된 바와 같이, 서버(201)는 동기화 단말기(202)의 통신 상태(205)를 검출할 수 있다. 통신 상태(205)는 동기화 단말기(202)에 의해 능동적으로 전송되고 서버(201)에 의해 검출될 수 있으며, 또는 통신 상태(205)는 서버(201)에 의해 전송된 조회(inquiry)의 결과일 수도 있으며, 여기서 이 결과는 서버(201)에 의해 검출된다. 통신 상태(205)는, 이에 한정되는 것은 아니지만, 동기화 단말기(202)로부터의 요청, 동기화 단말기(202) 및 서버(201) 사이의 연결 속도와 안정성, 동기화 단말기(202)와 참여 단말기(203 및 204) 사이의 연결 속도와 안정성, 검출 시간 사이의 시간 주기, 및 동기화 단말기(202)와 서버(201) 사이의 가장 최근 상호 작용 시간과 같은 상태일 수 있다.
통신 상태(205)의 검출 전에, 동기화 단말기(202)는 참여 단말기(203 및 204)의 동작을 동기화하도록 구성되어 있을 수 있다. 동기화 단말기(202)는, 이에 한정되는 것은 아니지만, 동기화 단말기(202)와 참여 단말기 (203 및 204)의 동작 로직 프레임을 동기화하는 것, 동기화 단말기(202)와 참여 단말기 (203 및 204)의 사용자 입력 세트를 동기화하는 것, 동기화 단말기(202)와 참여 단말기(203 및 204) 사이의 데이터 전송을 실행하게 하고 모니터링하는 것, 및 서버(201)와 참여 단말기(203 및 204) 사이의 데이터 전송을 실행하게 하고 모니터링하는 것과 같은 기능을 실행할 수 있다. 동기화 단말기(202)의 기능은, 동기화 단말기(202)가 탈퇴하거나 탈퇴되었을 때, 서버(201) 또는 참여 단말기에 의해 임시로 실행될 수 있다.
선택적 종료 단계는, 동기화 단말기(202)가 탈퇴한 후에, 특히 통신이 중단 요청일 때, 실행될 수 있다. 서버(201)는, 중단 요청이 승인되었고 동기화 단말기(202)가 참여 단말기(203 및 204)의 동작을 더 이상 동기화하지 않는다는 것을 지시하는 신호를 동기화 단말기(202)에 전송할 수 있다.
도 1을 참조하면, 단계 120에서, 컴퓨터 시스템은, 동기화 단말기의 통신 상태가 미리 설정된 조건을 만족할 때, 참여 단말기로부터 각 참여 단말기에 대응하는 동작 상태 정보를 요청한다. 동작 상태 정보는, 이에 한정되는 것은 아니지만, 동작 로직 프레임 값, 사용자 입력 세트, 렌더링 빈도, 네트워크 연결 상태, 프로세서 속도 및 성능, 및 메모리 용량과 같은, 하나 이상의 많은 정보 항목을 포함할 수 있다. 미리 설정된 조건은 통신 상태를 평가하기 위해 이용될 수 있는 임의의 조건일 수 있다.
예를 들면, 도 2에 도시된 바와 같이, 서버(201)는 단계 210 및 220에서 각각의 참여 단말기 203 및 204로부터 동작 상태 정보를 요청할 수 있다. 참여 단말기 203 및 204는 대응하는 동작 상태 정보 215 및 225를 서버(202)에 제공할 수 있다.
서버(201)는 동기화 단말기(202)로부터의 통신 상태가 미리 설정된 조건을 만족할 때만 동작 상태 정보를 요청할 수 있으며, 미리 설정된 조건은, 이에 한정되는 것은 아니지만, 통신 상태가 동기화 단말기로부터 컴퓨터에의 마지막 응답 이후 시간 기간이 임계치를 넘은 경우인 것, 및 동기화 단말기가 하나 이상의 참여 단말기의 동작을 동기화하는 것을 중단한다는 것을 지시하는 중단 요청인 것과 같은 조건일 수 있다.
네트워크 어플리케이션에 대한 P2P 세션 동안, 동기화 단말기의 사용자는 네크워크 어플리케이션으로부터 탈퇴를 요청할 수 있고, 이 때 중단 요청의 유형으로 된 통신 상태는 미리 설정된 조건을 만족한다. 이와 다르게, 이에 한정되는 것은 아니지만, 전력 부족 및 네트워크 연결 결함과 같은 다양한 유형의 원인으로 인해, 서버는 동기화하는 서버와 접속이 끊길 수 있어서, 빈번한 검출 루틴(heartbeat detection routine)에 동기화 단말기로부터의 응답의 실패가 발생한다. 부족한 응답이 일정 임계치를 넘는 경우, 또는 동기화 단말기로부터의 마지막 응답 이후 시간 주기가 일정 임계치를 넘는 경우, 통신 상태는 미리 설정된 조건을 만족한다. 미리 설정된 조건이 굉장히 다양한 이유는 부분적으로는 폭 넓은 통신 상태 때문이다. 예를 들면, 전술한 조건뿐만 아니라, 미리 설정된 조건은 서버와 동기화 단말기 사이의 연결 속도(bt/s)가 임계치보다 낮은 것일 수도 있다.
일부 실시예에서, 서버는 모든 참여 단말기로부터 동작 상태 정보를 요청한다. 위에 나타난 바와 같이, 동작 상태 정보는 하나 이상의 많은 정보 항목을 포함할 수 있다. 구체적으로, 동작 상태 정보는 동작 로직 프레임 값 및 사용자 입력 세트를 포함할 수 있다. 사용자 입력 세트는 대응하는 참여 단말기의 사용자에 의해 생성되는 사용자 입력 이벤트의 모음을 나타낸다. 예를 들면, 사용자가 마우스를 움직이거나, 키보드를 누르거나, 네트워크 어플리케이션에 영향을 주는 임의의 동작을 실행할 때, 사용자 입력 이벤트는 이에 따라 생성될 수 있고, 일정 시간 기간 내의 참여 단말기에서의 사용자 입력 이벤트의 모음이 사용자 입력 세트가 될 수 있다. 유사하게, 또 다른 참여 단말기에서의 사용자 입력 이벤트는 그 참여 단말기의 사용자 입력 세트로써 수집될 수 있다. 사용자 입력 이벤트는, 예를 들면 상이한 그래픽 인터페이스 상의 객체의 움직임과 같이, 네트워크 어플리케이션 내의 하나 이상의 객체에 영향을 줄 수 있다. 이상적으로는, 상이한 단말기에서 상이한 그래픽 사용자 인터페이스 상의 동일한 객체의 움직임은 거의 동시에 발생해야 한다. 그러나, 실제적으로는, 동일한 사용자 입력 세트가 상이한 단말기에서 디스플레이되거나 현실화되기 위해 걸리는 시간이 상이할 수 있어서, 동기화를 지연시키고 사용자 경험을 저하시킨다. 동작 로직 프레임 값은 참여 단말기에 의해 렌더링(rendering)된 동작 로직 프레임의 수를 나타낸다. 프레임에 대한 모든 코드의 실행은 로직 프레임이고, 모든 코드의 실행은 참여 단말기의 사용자 입력 세트, 서버 프레임워크와 관련된 계산 및 참여 단말기와 관련된 다른 랜더링 및 계산을 포함할 수 있다 참여 단말기로부터 사용자 입력 세트를 요청함으로써, 서버가 참여 단말기에 대해 동기화 장치로써 임시로 서비스를 제공할 수 있다.
도 1을 참조하면, 단계 130에서, 컴퓨터 시스템은 또한 참여 단말기에 의해 업로드된 대응하는 동작 상태 정보를 수신한다.
예를 들면, 도 2에 도시된 바와 같이, 서버(201)는 참여 단말기 203 및 204 각각으로부터 동작 상태 215 및 225를 수신한다. 위에 나타난 바와 같이, 동작 상태 정보는 대응하는 참여 단말기의 동작 로직 프레임 값 및 대응하는 참여 단말기의 사용자 입력 세트를 포함할 수 있다. 다른 정보 항목도 참여 단말기의 동작의 동기화 및 조정을 더 용이하게 하기 위해 동작 상태 정보 내에 포함될 수 있다는 것을 유의해야 한다.
도 1을 참조하면, 단계 140에서, 컴퓨터 시스템은 각 참여 단말기에 대응하는 동작 상태 정보에 기초하여 참여 단말기 사이의 데이터 차이를 계산한다.
예를 들면, 도 2에 도시된 바와 같이, 참여 단말기 203 및 204로부터 동작 상태 정보를 수신한 후에, 서버(201)는 동작 로직 프레임 값 및 사용자 입력 세트를 포함할 수 있는 동작 상태 정보를 처리한다. 서버(201)는 참여 단말기 203 및 204 각각으로부터 동작 로직 프레임 값 내에서 가장 최근 동작 로직 프레임 값을 결정할 수 있다. 또한 서버(201)는 참여 단말기 203 및 204로부터 사용자 입력 세트 내에서 가장 최근 사용자 입력 세트를 결정할 수 있다. 데이터 차이는, 대응하는 참여 단말기의 사용자 입력 세트와 가장 최근 사용자 입력 세트 사이의 차이, 및 대응하는 참여 단말기의 동작 로직 프레임 값과 가장 최근 동작 로직 프레임 값 사이의 차이를 포함할 수 있다.
예를 들어, 제1 참여 단말기(203)으로부터의 동작 상태 정보(215)는 3의 동작 로직 프레임 값과 a+b+c의 사용자 입력 세트를 포함한다고 가정하고, 제2 참여 단말기(204)으로부터의 동작 상태 정보(225)는 4의 동작 로직 프레임 값과 a+b의 사용자 입력 세트를 포함한다고 가정한다. 이러한 불일치는 상이한 핑 값(ping value)와 같은 수많은 원인에 의해 야기될 수 있다. 동작 상태 정보 215 및 225를 수신한 후, 서버(201)는 가장 최근 동작 로직 프레임 값이 (참여 단말기(204)로부터의) 4이고 가장 최근 사용자 입력 세트는 (참여 단말기(203)으로부터의) a+b+c인 것으로 결정한다. 그 후, 데이터 차이는 참여 단말기 203에 대해서는 [1,0]으로, 참여 단말기 204에 대해서는 [0.c]로 계산된다.
동작 로직 프레임은 대응하는 사용자 입력 세트를 가질 수 있다. 그러나, 실행 중 지연 및/또는 입력을 수신하는 중의 지연 때문에, 동일한 참여 단말기로부터의 동작 로직 프레임 값과 사용자 입력 세트는 완벽하게 쌍을 이루지 못할 수 있다. 동기화 단계는 모든 참여 단말기에서의 동작 로직 프레임과 사용자 입력 세트를 동일한 가장 최근 버전이 되게 할 수 있다.
위에서 언급한 바와 같이, 동작 상태 정보는 다른 정보 항목을 포함할 수 있으므로, 데이터 차이는 데이터 항목의 다른 차이를 포함할 수 있다. 일반적으로, 서버는 가장 최근 정보 항목을 결정하고 각각의 참여 단말기로부터의 정보 항목과 가장 최근의 정보의 차이를 계산한다. 일반적인 목표는 참여 단말기가 가장 최근 동작 상태에 동기화되도록 하여, 네트워크 어플리케이션이 순조롭게 동기화를 처리할 수 있도록 하는 것이다. 또한, 참여 단말기의 수는 다양할 수 있고 동기화의 기본적인 원칙은 동일하게 적용된다.
도 1을 참조하면, 단계 150에서, 일부 실시예에서 컴퓨터 시스템은 참여 단말기 각각에 데이터 차이를 전송하여, 각 참여 단말기가 데이터 차이를 이용하여 자신을 다른 참여 단말기와 동기화할 수 있도록 한다.
예를 들면, 도 2에서 도시된 바와 같이, 서버(201)는 단계 240과 단계 250에서 참여 단말기 203 및 204에게 각각 데이터 차이를 전송한다. 대응하는 참여 단말기는 데이터 차이를 이용하여 자신을 다른 참여 단말기와 동기화하도록 구성된다. 구체적으로, 참여 단말기 203 및 204는 대응하는 동기화 기능을 서버(201)로부터 전송된 데이터 차이에 기초하여 그들의 동작 로직 프레임과 사용자 입력 세트를 실행하는데 이용할 수 있다. 만일 특정 참여 단말기가 동작 로직 프레임에 N 프레임만큼 뒤처져 있다면, 참여 단말기는 N 프레임을 가장 최근 동작 로직 프레임으로 처리하기 위해 랜더링(rendering)한다. 만약 특정 참여 단말기가 사용자 입력 세트 c를 누락시켰다면, 참여 단말기는 사용자 입력 세트 c를 실행한다.
동기화 후, 참여 단말기 203 및 204는 동기화가 성공적으로 완료되었다는 것을 지시하는 신호를 서버(201)에 전송할 수 있다. 서버(201)는 이 신호를 수신할 수 있고 그 다음 단계가 시작된다.
도 1을 참조하면, 단계 160에서, 컴퓨터 시스템은 동기화의 완료를 지시하는 신호를 참여 단말기로부터 수신한 후, 미리 설정된 규칙에 따라 참여 단말기로부터 새로운 동기화 단말기를 선택하여, 새로운 동기화 단말기가 남은 참여 단말기의 동작을 동기화하기 위해 구성되도록 한다.
예를 들면, 도 2에서 도시된 바와 같이, 서버(201)는 선택 기능(260)을 미리 설정된 규칙이 만족되는지를 테스트하도록 이용한다. 미리 설정된 규칙은 새로운 동기화 단말기의 선택을 결정하거나 용이하게 할 수 있는 임의의 유형의 규칙일 수 있다. 예를 들어, 미리 설정된 규칙은 (a) 모든 참여 단말기 중 하드웨어 성능에서 가장 좋은 성능을 가진 참여 단말기가 새로운 동기화 단말기로 선택되는 것, (b) 모든 참여 단말기 중 연결 안정성에서 가장 좋은 안정성을 가진 참여 단말기가 새로운 동기화 단말기로 선택되는 것, (c) 모든 참여 단말기의 참여 리스트에서 가장 먼저 참여한 참여 단말기가 새로운 동기화 단말기로 선택되는 것, (d) 모든 참여 단말기 중 임의로 선택된 참여 단말기가 새로운 동기화 단말기로 선택되는 것일 수 있다. 구체적으로, 하드웨어 성능은 클락 속도 및 프로세서의 수에 의해 측정될 수 있고, 연결 안정성은 네트워크 지연 및 변동성에 의해 측정될 수 있다. 미리 설정된 규칙은 전술한 항목들 중 하나에서부터 전술한 항목들의 임의의 조합까지 다양할 수 있다. 선택 기능(260)은 미리 설정된 규칙을 참여 단말기로부터의 새로운 동기화 단말기를 선택하는데 이용한다.
선택 후, 서버(201)는, 도 2의 단계 270 및 단계 280에서 도시된 바와 같이, 새로운 동기화 단말기가 선택되었다는 것을 기존의 참여 단말기 203 및 204에 통지하기 위해 신호를 전송할 수 있다. 통지 프로세스는 설정에 따라 및 어떤 참여 단말기가 선택되었는지에 따라 다양할 수 있다. 예를 들면, 참여 단말기 203이 새로운 동기화 단말기로 선택되었을 때, 서버(201)는 기존의 참여 단말기 203이 동기화 단말기로 선택되었다는 것을 남은 참여 단말기 204에게만 통지할 수 있다. 또는, 서버(201)는 기존의 참여 단말기 203 및 204 모두에게 통지할 수 있다. 그 후, 새로운 동기화 단말기는 동기화 단말기와 남은 참여 단말기를 동기화하는 것을 맡게 된다. 서버(201)는 참여 단말기를 동기화하는 것을 중단한다.
통지가 참여 단말기 203 및 204 모두에게 전송되었을 때, 각각의 참여 단말기는 그 자신이 새로운 동기화 단말기로 선택되었는지에 관한 통지를 수신한다. 참여 단말기가 새로운 단말기로 선택되었다는 것을 알게 되면, 이 참여 단말기는 남은 동기화 단말기의 동작을 조정하기 위해 연속적인 동기화 프로세스를 시작할 수 있다.
위에서 언급한 바와 같이, 현재 시스템 내의 컴퓨터 장치의 수와 설계는 다양할 수 있다. 하나 이상의 동기화 단말기가 있을 수 있고 하나 이상의 참여 단말기가 있을 수 있다. 서버와 동기화 단말기는 하나의 장치일 수 있고, 이 때 새로운 동기화 단말기의 선택은 서버가 참여 단말기의 동기화에 더 이상 관여할 수 없다는 것을 나타낸다.
도 3 내지 도 7 및 도 9 내지 도 11은 전술한 방법을 실행하기 위해 이용될 수 있는 컴퓨터 시스템을 도시한다. 중복된 기재를 피하고자, 본 명세서에서 방법에 대해 설명된 모든 세부 사항 및 변형은 장치에 대해서는 기재되지 않는다. 이러한 세부 사항 및 변형은 제공된 구체적인 설명에 정면으로 모순되지 않는 한 장치의 설명에 대해 포함되는 것으로 생각되어야 한다.
도 3은 본 발명의 일부 실시예에 따른 지속적인 동기화를 유지할 수 있는 정보 관리 어플리케이션 내의 모듈을 도시한 블록도이다. 도 3은, 하나 이상의 참여 단말기의 동작을 동기화하도록 구성되어 있는 동기화 단말기의 통신 상태를 검출하도록 구성되어 있는 검출 모듈(310), 동기화 단말기의 통신 상태가 미리 설정된 조건을 만족할 때, 참여 단말기로부터 각 참여 단말기에 대응하는 동작 상태 정보를 요청하도록 구성되어 있는 요청 모듈(320), 참여 단말기에 의해 업로드된 대응하는 동작 상태 정보를 수신하도록 구성되어 있는 수신 모듈(330), 각 참여 단말기에 대응하는 동작 상태 정보에 기초하여 참여 단말기 사이의 데이터 차이를 계산하도록 구성되어 있는 프로세싱 모듈(340), 각 참여 단말기가 데이터 차이를 이용하여 자신을 다른 참여 단말기와 동기화할 수 있도록, 데이터 차이를 참여 단말기 각각에 전송하도록 구성되어 있는 전송 모듈(350), 및 새로운 동기화 단말기가 남은 참여 단말기의 동작을 동기화할 수 있도록, 동기화의 완료를 지시하는 신호를 참여 단말기로부터 수신한 후, 미리 설정된 규칙에 따라 참여 단말기로부터 새로운 동기화 단말기를 선택하도록 구성되어 있는 선택 모듈(360)을 도시한다.
위에서 도시된 바와 같이, 미리 설정된 조건은, 통신 상태가, 동기화 단말기로부터 컴퓨터에의 마지막 응답 이후 시간 기간이 임계치를 넘은 경우인 것, 또는 통신 상태가, 동기화 단말기가 하나 이상의 참여 단말기의 동작을 동기화하는 것을 중단한다는 것을 지시하는 중단 요청인 것일 수 있다.
도 4는 본 발명의 일부 실시예에 따른 정보 관리 어플리케이션 내의 검출 모듈(310)을 도시한 블록도이다. 검출 모듈(310)은, 동기화 단말기의 통신 상태를 검출하도록 구성되어 있는 통신 상태 검출 모듈(410), 및 참여 단말기가 참여 단말기의 동작을 더 동기화하지 않도록 구성되어 있는 종료 모듈(420)을 포함할 수 있다.
도 5는 본 발명의 일부 실시예에 따른 정보 관리 어플리케이션 내의 프로세싱 모듈(340)을 도시한 블록도이다. 프로세싱 모듈(340)은 최근 프레임/입력 결정 모듈(510) 및 데이터 차이 계산 모듈(520)을 포함할 수 있다.
위에서 도시한 바와 같이, 동작 상태 정보는 대응하는 참여 단말기의 동작 로직 프레임 값 및 대응하는 참여 단말기의 사용자 입력 세트를 포함할 수 있다. 구체적으로, 최근 프레임/입력 결정 모듈(510)은 참여 단말기로부터 동작 로직 프레임 값 내에서 가장 최근 동작 로직 프레임 값을 결정하도록 구성되어 있고, 또한 최근 프레임/입력 결정 모듈(510)은 참여 단말기로부터 사용자 입력 세트 내에서 가장 최근 사용자 입력 세트를 결정하도록 구성되어 있고, 데이터 차이 계산 모듈(520)은 대응하는 참여 단말기의 사용자 입력 세트와 가장 최근 사용자 입력 세트 사이의 차이, 및 대응하는 참여 단말기의 동작 로직 프레임 값과 가장 최근 동작 로직 프레임 값 사이의 차이를 포함하는 데이터 차이를 계산하도록 구성되어 있다.
도 6은 본 발명의 일부 실시예에 따른 정보 관리 어플리케이션 내의 전송 모듈(350)을 도시한 블록도이다. 전송 모듈(350)은 데이터 차이를 참여 단말기에 전송하도록 구성되어 있는 데이터 차이 전송 모듈(610)을 포함하고, 선택적으로, 데이터 차이를 이용하여 참여 단말기를 동기화하는 것에 관하여 각각의 참여 단말기에 명령하도록 구성되어 있는 동기화 명령 모듈(620)을 포함한다.
도 7은 본 발명의 일부 실시예에 따른 정보 관리 어플리케이션 내의 선택 모듈(360)을 도시한 블록도이다. 선택 모듈(360)은 새로운 동기화 단말기 선택 모듈(710) 및 통지 모듈(720)을 포함할 수 있다. 새로운 동기화 단말기 선택 모듈(710)은 미리 설정된 규칙에 따라 참여 단말기로부터 새로운 동기화 단말기를 선택하도록 구성되어 있고, 통지 모듈(720)은 새로운 동기화 모듈에 관하여 남은 참여 단말기 모두에게 통지 신호를 전송하도록 구성되어 있다.
미리 설정된 규칙은 (a) 모든 참여 단말기 중 하드웨어 성능에서 가장 좋은 성능을 가진 참여 단말기가 새로운 동기화 단말기로 선택되는 것, (b) 모든 참여 단말기 중 연결 안정성에서 가장 좋은 안정성을 가진 참여 단말기가 새로운 동기화 단말기로 선택되는 것, (c) 모든 참여 단말기의 참여 리스트에서 가장 먼저 참여한 참여 단말기가 새로운 동기화 단말기로 선택되는 것, 및 (d) 모든 참여 단말기 중 임의로 선택된 참여 단말기가 새로운 동기화 단말기로 선택되는 것으로 구성되는 그룹으로부터 선택될 수 있고, 하드웨어 성능은 클락 속도 및 프로세서의 수에 의해 측정되고, 연결 안정성은 네트워크 지연 및 변동성에 의해 측정된다.
도 9는 본 발명의 일부 실시예에 따른 예시적인 서버의 블록도이다. 예시적인 서버(810)는 일반적으로 하나 이상의 프로세싱 유닛(CPU)(902), 하나 이상의 네트워크 또는 다른 통신 인터페이스(904), 메모리(910), 및 이러한 구성 요소들을 서로 연결하기 위한 하나 이상의 통신 버스(909)를 포함한다. 통신 버스(909)는 시스템 구성 요소 사이의 통신을 서로 연결하고 제어하는 회로 소자(가끔 칩셋(chipset)으로 불림)를 포함할 수 있다. 서버(810)는 사용자 입력 장치(905), 예를 들면 디스플레이(906)와 키보드(908)을 포함할 수 있다. 메모리(910)는 고속 랜덤 액세스 메모리(high speed random access memory)를 포함할 수 있고, 하나 이상의 마그네틱 디스크 기억 장치(magnetic disk storage device)와 같은, 비휘발성 메모리도 포함할 수 있다. 메모리(910)는 CPU(902)로부터 떨어져서 위치하는 대용량 기억 장치를 포함할 수 있다. 일부 실시예에서, 메모리(910)는 다음의 프로그램, 모듈, 및 데이터 구조, 또는 그것의 하위집합 또는 상위집합을 포함할 수 있다.
- 다양한 기본 시스템 서비스를 처리하기 위한 절차와 하드웨어 의존 과제(task)를 실행하기 위한 절차를 포함하는 운영 체제(912)
- 인터넷, 다른 광대역 네트워크(wide area network), 근거리 네트워크(local area network), 도시권 네트워크(metropolitan area network), 등과 같은 하나 이상의 (유선 또는 무선) 통신 네트워크를 통해, 서버(810)를 동기화 단말기, 참여 단말기 및/또는 다른 컴퓨터에 연결하기 위해 이용되는 네트워크 통신 모듈(914)
- 서버(810)의 적절한 동작을 위해 필요한 메모리(910)에 저장된 데이터 구조 및 다른 모듈을 초기화하는 시스템 초기화 모듈(916)
- 사용자 인터페이스(905)를 통해 사용자 입력을 수신하도록 구성되어 있는 사용자 인터페이스 모듈(918)
- 하나 이상의 서버측 네트워크 어플리케이션(920), 도 3와 관련되어 위에서 설명한 바와 같이, 각 네트워크 어플리케이션은 검출 모듈(310), 요청 모듈(320), 수신 모듈(330), 프로세싱 모듈(340), 전송 모듈(350), 및 선택 모듈(360)을 더 포함한다.
도 10은 본 발명의 일부 실시예에 따른 동기화 단말기(825)의 블록도이다. 예시적인 동기화 단말기(825)는 일반적으로 하나 이상의 프로세싱 유닛(CPU)(1002), 하나 이상의 네트워크 또는 다른 통신 인터페이스(1004), 메모리(1010), 및 이들 구성 요소를 서로 연결하기 위한 하나 이상의 통신 버스(1009)를 포함한다. 통신 버스(1009)는 시스템 구성 요소 사이의 통신을 서로 연결하고 제어하는 회로 소자(가끔 칩셋(chipset)으로 불림)를 포함할 수 있다. 동기화 단말기(825)는 사용자 인터페이스(1005), 예를 들면 디스플레이(1006) 및 키보드(1008)를 포함할 수 있다. 동기화 단말기(825)가 스마트폰일 때, 사용자 인터페이스(1005)는 디스플레이와 입력 모두에 대해 적합한 터치 스크린일 수 있다. 메모리(1010)는 고속 랜덤 액세스 메모리(high speed random access memory)를 포함할 수 있고, 하나 이상의 마그네틱 디스크 기억 장치(magnetic disk storage device)와 같은, 비휘발성 메모리도 포함할 수 있다. 메모리(1010)는 CPU(1002)로부터 떨어져서 위치하는 대용량 기억 장치를 포함할 수 있다. 일부 실시예에서, 메모리(1010)는 다음의 프로그램, 모듈, 및 데이터 구조, 또는 그것의 하위집합 또는 상위집합을 포함할 수 있다.
- 다양한 기본 시스템 서비스를 처리하기 위한 절차와 하드웨어 의존 과제(task)를 실행하기 위한 절차를 포함하는 운영 체제(1012)
- 인터넷, 다른 광대역 네트워크(wide area network), 근거리 네트워크(local area network), 도시권 네트워크(metropolitan area network), 등과 같은 하나 이상의 (유선 또는 무선) 통신 네트워크를 통해, 동기화 단말기(825)를 서버(810) 및/또는 참여 단말기에 연결하기 위해 이용되는 네트워크 통신 모듈(1014)
- 사용자 인터페이스(1005)를 통해 사용자 입력을 수신하도록 구성되어 있는 선택적 사용자 인터페이스 모듈(1016)
- 하나 이상의 단말기측 네트워크 어플리케이션(1018), 각 네트워크 어플리케이션은, 통신 상태의 유형으로 된 중단 요청을 서버에 전송하도록 구성되어 있는 중단 요청 모듈(1020), 참여 단말기를 동기화하는 것으로부터 참여 단말기(825)의 기능을 종료하도록 구성되어 있는 종료 모듈(1030), 및 동기화 단말기(820)가 이러한 기능을 중단하기 않았을 때, 참여 단말기의 동작을 동기화하도록 구성되어 있는 원격 단말기 동기화 모듈(1040)를 더 포함한다.
도 11은 본 발명의 일부 실시예에 따른 참여 단말기(830-1)의 블록도이다. 예시적인 참여 단말기(830-1)는 일반적으로 하나 이상의 프로세싱 유닛(CPU)(1102), 하나 이상의 네트워크 또는 다른 통신 인터페이스(1104), 메모리(1110), 및 이들 구성 요소를 서로 연결하기 위한 하나 이상의 통신 버스(1109)를 포함한다. 통신 버스(1109)는 시스템 구성 요소 사이의 통신을 서로 연결하고 제어하는 회로 소자(가끔 칩셋(chipset)으로 불림)를 포함할 수 있다. 동기화 단말기(830-1)는 사용자 인터페이스(1105), 예를 들면 디스플레이(1106) 및 키보드(1108)를 포함할 수 있다. 동기화 단말기(830-1)가 스마트폰일 때, 사용자 인터페이스(1105)는 디스플레이와 입력 모두에 대해 적합한 터치 스크린일 수 있다. 메모리(1110)는 고속 랜덤 액세스 메모리(high speed random access memory)를 포함할 수 있고, 하나 이상의 마그네틱 디스크 기억 장치(magnetic disk storage device)와 같은, 비휘발성 메모리도 포함할 수 있다. 메모리(1110)는 CPU(1102)로부터 떨어져서 위치하는 대용량 기억 장치를 포함할 수 있다. 일부 실시예에서, 메모리(1110)는 다음의 프로그램, 모듈, 및 데이터 구조, 또는 그것의 하위집합 또는 상위집합을 포함할 수 있다.
- 다양한 기본 시스템 서비스를 처리하기 위한 절차와 하드웨어 의존 과제(task)를 실행하기 위한 절차를 포함하는 운영 체제(1112)
- 인터넷, 다른 광대역 네트워크(wide area network), 근거리 네트워크(local area network), 도시권 네트워크(metropolitan area network), 등과 같은 하나 이상의 (유선 또는 무선) 통신 네트워크를 통해, 동기화 단말기(825)를 서버(810) 및/또는 참여 단말기에 연결하기 위해 이용되는 네트워크 통신 모듈(1114)
- 사용자 인터페이스(1105)를 통해 사용자 입력을 수신하도록 구성되어 있는 선택적 사용자 인터페이스 모듈(1116)
- 하나 이상의 단말기측 네트워크 어플리케이션(1118), 각 네트워크 어플리케이션은, 동작 상태 정보를 서버(810)에 전송하도록 구성되어 있는 동작 상태 정보 전송 모듈(1120), 데이터 차이에 기초하여 참여 단말기(830-1)를 동기화하도록 구성되어 있는 데이터 차이 프로세싱 모듈(1130), 및 서버가 새로운 단말기로 참여 단말기(830-1)를 선택할 때, 참여 단말기의 동작을 동기화하도록 구성되어 있는 원격 단말기 동기화 모듈(1140)를 더 포함한다.
구체적인 실시예들은 위에서 설명되는데, 이는 본 발명을 이러한 구체적인 실시예들에 한정하고자 하는 의도는 없다고 이해될 것이다. 이와 반대로, 본 발명은 첨부된 청구항의 정신과 범위에 속하는 대체, 변형, 및 등가를 포함한다. 다수의 구체적 세부 사항은 본 명세서에 나타난 주제의 완전한 이해를 제공하기 위해 제시된다. 그러나 이 주제가 이러한 구체적인 세부 사항 없이도 실행될 수 있다는 것은 통상의 기술자에게 명백할 것이다. 다른 예시에서, 실시예들의 잘 알려지지 않은 측면을 불필요하게 불명확하게 할 수 있으므로 공지의 방법, 과정, 구성 요소 및 회로에 대해 상세히 설명되지 않는다.
본 명세서에서 본 발명의 설명에 사용되는 용어는 오직 구체적인 실시예들을 설명하려는 목적인것이며, 본 발명을 제한하고자 의도한 바는 아니다. 본 발명의 상세한 설명과 첨부된 청구항에서 사용된 바와 같이, 단수의 표현은 문맥에서 다른 뜻을 명확하게 지적하지 않는 한, 복수의 표현도 포함하는 것으로 의도된다. 본 명세서에서 사용된 “및/또는”이라는 표현 또한 하나 이상의 관련되어 열거된 구성에 대해 가능한 일부 또는 전부의 조합을 나타내고 포함한다고 이해될 것이다. 본 명세서에서 사용된 “포함하다”, “포함된”, 및/또는 “구비하는”이라는 표현은 언급된 특징, 작업, 구성 요소 및/또는 구성 부품의 존재를 명시하는 것이고, 하나 이상의 다른 특징, 작업, 구성 요소, 구성 부품, 및/또는 이들의 그룹의 존재 또는 부가는 배제하는 것이 아니라고 이해될 것이다.
본 명세서에서 사용된 바와 같이, “…이면”이라는 표현은, 문맥에 따라 이전에 제시된 조건에 부합하면, “…할 때” 또는 “…하는 대로” 또는 “결정에 대하여” 또는 “결정에 따라” 또는 “검출한 것에 대하여”의 의미로 해석될 수 있다. 유사하게, “[이전에 제시된 조건에 부합한다고] 판단하면” 또는 “[이전에 제시된 조건에 부합]한다면” 또는 “[이전에 제시된 조건에 부합]할 때”라는 표현은, 문맥에 따라 이전에 제시된 조건에 부합하면, “판단된 대로” 또는 “판단에 대하여” 또는 “판단에 따라” 또는 “검출한 대로” 또는 “검출에 대하여”의 의미로 해석될 수 있다.
다양한 도면 중 일부는 특정한 순서로 일련의 논리적 단계들을 도시하고 있지만, 순서대로 되지 않은 단계들은 재배치될 수 있고 다른 단계들은 결합되거나 삭제될 수 있다. 일부 재배치되거나 다른 그룹화되는 것이 구체적으로 언급되어 있지는 않으나, 다른 것들은 당업자에게 명백할 것이므로, 대안의 모든 목록이 기재되지는 않는다. 뿐만 아니라, 단계들은 하드웨어, 펌웨어, 스프트웨어 또는 이들의 임의의 조합으로 실행될 수 있다는 것을 이해해야 한다.
전술한 설명은 설명의 목적으로 구체적인 실시예들에 참조되어 설명된다. 그러나, 위에서 도시된 논의는 본 발명이 개시된 정확한 형태로 제한된다거나 완전해야 한다는 의도는 아니다. 수많은 수정 및 변형이 전술한 지침의 측면에서 가능하다. 실시예들은 본 발명의 원리 및 그것의 실질적인 응용을 가장 잘 설명하기 위해 선택되어 설명되었으므로, 당업자가 특별한 사용에 적합하도록 다양한 변형을 한 다양한 실시예 및 발명을 가장 잘 활용할 수 있도록 한다.

Claims (24)

  1. 컴퓨터에 의해 구현되는 정보 관리 방법에 있어서,
    하나 이상의 프로세서와, 상기 하나 이상의 프로세서에 의해 실행되는 프로그램을 저장하는 메모리를 가진 컴퓨터에 의해 수행되는 이하의 단계:
    하나 이상의 참여 단말기의 동작을 동기화하도록 구성되어 있는 동기화 단말기의 통신 상태를 검출하는 단계;
    상기 동기화 단말기의 통신 상태가 미리 설정된 조건을 만족할 때, 상기 참여 단말기로부터 각 참여 단말기에 대응하는 동작 상태 정보를 요청하는 단계;
    상기 참여 단말기에 의해 업로드된 상기 대응하는 동작 상태 정보를 수신하는 단계;
    각 참여 단말기에 대응하는 상기 동작 상태 정보에 기초하여 상기 참여 단말기 사이의 데이터 차이를 계산하는 단계;
    각 참여 단말기가 상기 데이터 차이를 이용하여 자신을 다른 참여 단말기와 동기화할 수 있도록, 상기 데이터 차이를 상기 참여 단말기 각각에 전송하는 단계; 및
    새로운 동기화 단말기가 남은 참여 단말기의 동작을 동기화할 수 있도록, 동기화의 완료를 지시하는 신호를 상기 참여 단말기로부터 수신한 후, 미리 설정된 규칙에 따라 상기 참여 단말기로부터 상기 새로운 동기화 단말기를 선택하는 단계
    를 포함하는 정보 관리 방법.
  2. 제1항에 있어서,
    상기 미리 설정된 조건은,
    상기 통신 상태가, 상기 동기화 단말기로부터 상기 컴퓨터에의 마지막 응답 이후 시간 기간이 임계치를 넘은 경우인 것
    을 포함하는, 정보 관리 방법.
  3. 제1항에 있어서,
    상기 미리 설정된 조건은,
    상기 통신 상태가, 상기 동기화 단말기가 하나 이상의 상기 참여 단말기의 동작을 동기화하는 것을 중단한다는 것을 지시하는 중단 요청인 것
    을 포함하는, 정보 관리 방법.
  4. 제1항에 있어서,
    상기 동작 상태 정보는 대응하는 참여 단말기의 동작 로직 프레임 값과 상기 대응하는 참여 단말기의 사용자 입력 세트를 포함하는, 정보 관리 방법.
  5. 제4항에 있어서,
    상기 참여 단말기로부터 상기 동작 로직 프레임 값 내에서 가장 최근 동작 로직 프레임 값을 결정하는 단계; 및
    상기 참여 단말기로부터 상기 사용자 입력 세트 내에서 가장 최근 사용자 입력 세트를 결정하는 단계
    를 더 포함하고,
    상기 데이터 차이는, 상기 대응하는 참여 단말기의 사용자 입력 세트와 상기 가장 최근 사용자 입력 세트 사이의 차이, 및 상기 대응하는 참여 단말기의 동작 로직 프레임 값과 상기 가장 최근 동작 로직 프레임 값 사이의 차이를 포함하는,
    정보 관리 방법.
  6. 제5항에 있어서,
    상기 데이터 차이에 따라, 각 참여 단말기의 사용자 입력 세트를 가장 최근 사용자 입력 세트로 조정하고 그것의 동작 로직 프레임을 가장 최근 동작 로직 프레임 값으로 랜더링(rendering)하여, 상기 각 참여 단말기가 자신을 상기 다른 참여 단말기와 동기화하도록 구성되어 있는,
    정보 관리 방법.
  7. 제1항에 있어서,
    상기 미리 설정된 규칙은:
    (a) 모든 참여 단말기 중 하드웨어 성능에서 가장 좋은 성능을 가진 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것;
    (b) 모든 참여 단말기 중 연결 안정성에서 가장 좋은 안정성을 가진 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것;
    (c) 모든 참여 단말기의 참여 리스트에서 가장 먼저 참여한 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것; 및
    (d) 모든 참여 단말기 중 임의로 선택된 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것
    으로 구성되는 그룹으로부터 선택되는,
    정보 관리 방법.
  8. 제7항에 있어서,
    상기 하드웨어 성능은 클락 속도 및 프로세서의 수에 의해 측정되고, 상기 연결 안정성은 네트워크 지연 및 변동성에 의해 측정되는,
    정보 관리 방법.
  9. 제1항에 있어서,
    상기 새로운 동기화 단말기에 관하여 남은 참여 단말기 모두에게 통지 신호를 전송하는 단계
    를 더 포함하는 정보 관리 방법.
  10. 하나 이상의 프로세서;
    메모리; 및
    상기 메모리에 저장되고 상기 하나 이상의 프로세서에 의해 실행되도록 구성되어 있는 하나 이상의 프로그램 모듈
    을 포함하고,
    상기 하나 이상의 프로그램 모듈은:
    하나 이상의 참여 단말기의 동작을 동기화하도록 구성되어 있는 동기화 단말기의 통신 상태를 검출하도록 구성되어 있는 검출 모듈;
    상기 동기화 단말기의 통신 상태가 미리 설정된 조건을 만족할 때, 상기 참여 단말기로부터 각 참여 단말기에 대응하는 동작 상태 정보를 요청하도록 구성되어 있는 요청 모듈;
    상기 참여 단말기에 의해 업로드된 상기 대응하는 동작 상태 정보를 수신하도록 구성되어 있는 수신 모듈;
    각 참여 단말기에 대응하는 상기 동작 상태 정보에 기초하여 상기 참여 단말기 사이의 데이터 차이를 계산하도록 구성되어 있는 프로세싱 모듈;
    각 참여 단말기가 상기 데이터 차이를 이용하여 자신을 다른 참여 단말기와 동기화할 수 있도록, 상기 데이터 차이를 상기 참여 단말기 각각에 전송하도록 구성되어 있는 전송 모듈; 및
    새로운 동기화 단말기가 남은 참여 단말기의 동작을 동기화할 수 있도록, 동기화의 완료를 지시하는 신호를 상기 참여 단말기로부터 수신한 후, 미리 설정된 규칙에 따라 상기 참여 단말기로부터 상기 새로운 동기화 단말기를 선택하도록 구성되어 있는 선택 모듈
    을 포함하는,
    컴퓨터 시스템.
  11. 제10항에 있어서,
    상기 미리 설정된 조건은:
    상기 통신 상태가, 상기 동기화 단말기로부터 컴퓨터에의 마지막 응답 이후 시간 기간이 임계치를 넘은 경우인 것; 및
    상기 통신 상태는, 상기 동기화 단말기가 하나 이상의 상기 참여 단말기의 동작을 동기화하는 것을 중단한다는 것을 지시하는 중단 요청인 것
    으로 구성되는 그룹으로부터 선택되는,
    컴퓨터 시스템.
  12. 제10항에 있어서,
    상기 동작 상태 정보는 대응하는 참여 단말기의 동작 로직 프레임 값과 상기 대응하는 참여 단말기의 사용자 입력 세트를 포함하는, 컴퓨터 시스템.
  13. 제12항에 있어서,
    상기 프로세싱 모듈은 최근 프레임/입력 결정 모듈 및 데이터 차이 계산 모듈을 포함하고,
    상기 최근 프레임/입력 결정 모듈은 상기 참여 단말기로부터 상기 동작 로직 프레임 값 내에서 가장 최근 동작 로직 프레임 값을 결정하도록 구성되어 있고,
    상기 최근 프레임/입력 결정 모듈은 상기 참여 단말기로부터 상기 사용자 입력 세트 내에서 가장 최근 사용자 입력 세트를 결정하도록 구성되어 있고,
    상기 데이터 차이 계산 모듈은, 상기 대응하는 참여 단말기의 사용자 입력 세트와 상기 가장 최근 사용자 입력 세트 사이의 차이, 및 상기 대응하는 참여 단말기의 동작 로직 프레임 값과 상기 가장 최근 동작 로직 프레임 값 사이의 차이를 포함하는 데이터 차이를 계산하도록 구성되어 있는,
    컴퓨터 시스템.
  14. 제13항에 있어서,
    상기 전송 모듈은,
    상기 대응하는 참여 단말기의 사용자 입력 세트와 상기 가장 최근 사용자 입력 세트 사이의 차이, 및 상기 대응하는 참여 단말기의 동작 로직 프레임 값과 상기 대응하는 참여 단말기의 상기 가장 최근 동작 로직 프레임 값 사이의 차이를 전송하도록 구성되어 있는 데이터 차이 전송 모듈; 및
    각 참여 단말기의 사용자 입력 세트를 가장 최근 사용자 입력 세트로 조정하고 그것의 동작 로직 프레임을 가장 최근 동작 로직 프레임 값으로 랜더링(rendering)하여, 각 참여 단말기가 자신을 상기 다른 참여 단말기와 동기화하도록 명령하도록 구성되어 있는 동기화 명령 모듈
    을 포함하는,
    컴퓨터 시스템.
  15. 제10항에 있어서,
    상기 미리 설정된 규칙은:
    (a) 모든 참여 단말기 중 하드웨어 성능에서 가장 좋은 성능을 가진 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것;
    (b) 모든 참여 단말기 중 연결 안정성에서 가장 좋은 안정성을 가진 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것;
    (c) 모든 참여 단말기의 참여 리스트에서 가장 먼저 참여한 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것; 및
    (d) 모든 참여 단말기 중 임의로 선택된 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것
    으로 구성되는 그룹으로부터 선택되는,
    컴퓨터 시스템.
  16. 제15항에 있어서,
    상기 하드웨어 성능은 클락 속도 및 프로세서의 수에 의해 측정되고, 상기 연결 안정성은 네트워크 지연 및 변동성에 의해 측정되는,
    컴퓨터 시스템.
  17. 제10항에 있어서,
    상기 전송 모듈은:
    상기 참여 단말기로부터 상기 새로운 동기화 단말기를 선택하는 모듈을 선택하도록 구성되어 있는 새로운 동기화 단말기 선택 모듈; 및
    상기 새로운 동기화 단말기에 관하여 남은 참여 단말기 모두에게 통지 신호를 전송하도록 구성되어 있는 적어도 하나의 통지 모듈
    을 포함하는,
    컴퓨터 시스템.
  18. 하나 이상의 명령을 저장하고 있는, 비일시적 컴퓨터 판독 가능 저장 매체에 있어서,
    상기 하나 이상의 명령은, 컴퓨터 시스템에 의해 실행될 때, 상기 컴퓨터 시스템으로 하여금:
    하나 이상의 참여 단말기의 동작을 동기화하도록 구성되어 있는 동기화 단말기의 통신 상태를 검출하고;
    상기 동기화 단말기의 통신 상태가 미리 설정된 조건을 만족할 때, 상기 참여 단말기로부터 각 참여 단말기에 대응하는 동작 상태 정보를 요청하고;
    상기 참여 단말기에 의해 업로드된 상기 대응하는 동작 상태 정보를 수신하고;
    각 참여 단말기에 대응하는 상기 동작 상태 정보에 기초하여 상기 참여 단말기 사이의 데이터 차이를 계산하고;
    각 참여 단말기가 상기 데이터 차이를 이용하여 자신을 다른 참여 단말기와 동기화할 수 있도록, 상기 데이터 차이를 상기 참여 단말기 각각에 전송하고;
    새로운 동기화 단말기가 남은 참여 단말기의 동작을 동기화할 수 있도록, 동기화의 완료를 지시하는 신호를 상기 참여 단말기로부터 수신한 후, 미리 설정된 규칙에 따라 상기 참여 단말기로부터 새로운 동기화 단말기를 선택하도록 하는,
    비일시적 컴퓨터 판독 가능 저장 매체.
  19. 제18항에 있어서,
    상기 미리 설정된 조건은:
    상기 통신 상태가, 상기 동기화 단말기로부터 컴퓨터에의 마지막 응답 이후 시간 기간이 임계치를 넘은 경우인 것; 및
    상기 통신 상태는, 상기 동기화 단말기가 하나 이상의 상기 참여 단말기의 동작을 동기화하는 것을 중단한다는 것을 지시하는 중단 요청인 것
    으로 구성되는 그룹으로부터 선택되는, 비일시적 컴퓨터 판독 가능 저장 매체.
  20. 제18항에 있어서,
    상기 동작 상태 정보는 대응하는 참여 단말기의 동작 로직 프레임 값 및 상기 대응하는 참여 단말기의 사용자 입력 세트를 포함하고,
    각 참여 단말기에 대응하는 동작 상태 정보에 기초하여 상기 참여 단말기 사이의 데이터 차이를 계산하기 위한 명령은:
    상기 참여 단말기로부터 상기 동작 로직 프레임 값 내에서 가장 최근 동작 로직 프레임 값을 결정하는 명령;
    상기 참여 단말기로부터 상기 사용자 입력 세트 내에서 가장 최근 사용자 입력 세트를 결정하는 명령; 및
    상기 대응하는 참여 단말기의 사용자 입력 세트와 상기 가장 최근 사용자 입력 세트 사이의 차이, 및 상기 대응하는 참여 단말기의 동작 로직 프레임 값과 상기 가장 최근 동작 로직 프레임 값 사이의 차이를 계산하는 명령
    을 더 포함하는,
    비일시적 컴퓨터 판독 가능 저장 매체.
  21. 제20항에 있어서,
    상기 데이터 차이에 따라, 각 참여 단말기의 사용자 입력 세트를 가장 최근 사용자 입력 세트로 조정하고 그것의 동작 로직 프레임을 가장 최근 동작 로직 프레임 값으로 랜더링(rendering)하여, 상기 각 참여 단말기가 자신을 상기 다른 참여 단말기와 동기화하도록 구성되어 있는,
    비일시적 컴퓨터 판독 가능 저장 매체.
  22. 제18항에 있어서,
    상기 미리 설정된 규칙은:
    (a) 모든 참여 단말기 중 하드웨어 성능에서 가장 좋은 성능을 가진 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것;
    (b) 모든 참여 단말기 중 연결 안정성에서 가장 좋은 안정성을 가진 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것;
    (c) 모든 참여 단말기의 참여 리스트에서 가장 먼저 참여한 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것; 및
    (d) 모든 참여 단말기 중 임의로 선택된 참여 단말기가 상기 새로운 동기화 단말기로 선택되는 것
    으로 구성되는 그룹으로부터 선택되는,
    비일시적 컴퓨터 판독 가능 저장 매체.
  23. 제22항에 있어서,
    상기 하드웨어 성능은 클락 속도 및 프로세서의 수에 의해 측정되고, 상기 연결 안정성은 네트워크 지연 및 변동성에 의해 측정되는,
    비일시적 컴퓨터 판독 가능 저장 매체.
  24. 제18항에 있어서,
    상기 명령은 상기 새로운 동기화 단말기에 관하여 남은 참여 단말기 모두에게 통지 신호를 전송하는 명령을 더 포함하는,
    비일시적 컴퓨터 판독 가능 저장 매체.
KR1020157009428A 2012-09-13 2013-09-11 정보 관리 방법 및 장치 KR101571374B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201210338451.7 2012-09-13
CN201210338451.7A CN103685388B (zh) 2012-09-13 2012-09-13 信息管理的方法和装置
PCT/CN2013/083309 WO2014040535A1 (en) 2012-09-13 2013-09-11 Information management method and device

Publications (2)

Publication Number Publication Date
KR20150046372A KR20150046372A (ko) 2015-04-29
KR101571374B1 true KR101571374B1 (ko) 2015-12-04

Family

ID=50277625

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157009428A KR101571374B1 (ko) 2012-09-13 2013-09-11 정보 관리 방법 및 장치

Country Status (5)

Country Link
EP (1) EP2896187B1 (ko)
JP (1) JP5866077B2 (ko)
KR (1) KR101571374B1 (ko)
CN (1) CN103685388B (ko)
WO (1) WO2014040535A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104253842B (zh) 2013-06-28 2018-03-06 华为技术有限公司 同步终端镜像的方法、装置、终端及服务器
KR101536580B1 (ko) * 2013-08-27 2015-07-15 삼성에스디에스 주식회사 요금 지불 방법 및 그 장치
CN108804206B (zh) * 2017-04-26 2021-04-09 武汉斗鱼网络科技有限公司 同步任务的处理方法及系统
US20200269140A1 (en) * 2019-02-27 2020-08-27 Mz Ip Holdings, Llc Lockstep client-server architecture
CN111744177B (zh) * 2020-07-28 2021-06-25 腾讯科技(深圳)有限公司 游戏数据处理方法和装置、存储介质和电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2045967A2 (en) 2007-10-05 2009-04-08 Sony Computer Entertainment America Inc. Systems and methods for seamless host migration
CN101815084A (zh) 2009-12-31 2010-08-25 优视科技有限公司 一种用于用户终端文件管理系统及其应用方法
EP2246792A2 (en) 2002-05-17 2010-11-03 Sony Computer Entertainment America, Inc. Methods and systems for configuration and dynamically switching between network communication architectures
US20110038362A1 (en) 2009-08-14 2011-02-17 Koen Bernard Vos Controlling multi-party communications

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006118128A1 (ja) * 2005-04-28 2006-11-09 Technoaid, Inc. 情報表示システム
CN1992705A (zh) * 2005-12-31 2007-07-04 英业达股份有限公司 一种达成移动装置游戏同步的方法及其系统
US20090043867A1 (en) * 2007-08-06 2009-02-12 Apple Inc. Synching data
US8631161B2 (en) * 2008-09-30 2014-01-14 Andrei B. Lavrov Computer program product, system and method for field management and mobile inspection
JP2012078901A (ja) * 2010-09-30 2012-04-19 Brother Ind Ltd サーバ装置、ページ送信プログラム、及びページ送信方法
CN102469123B (zh) * 2010-11-09 2015-04-08 腾讯科技(深圳)有限公司 网络游戏数据同步的系统及方法
CN102404387B (zh) * 2011-10-25 2015-12-16 上海聚力传媒技术有限公司 一种用于与其他节点进行信息同步的方法、装置和设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2246792A2 (en) 2002-05-17 2010-11-03 Sony Computer Entertainment America, Inc. Methods and systems for configuration and dynamically switching between network communication architectures
EP2045967A2 (en) 2007-10-05 2009-04-08 Sony Computer Entertainment America Inc. Systems and methods for seamless host migration
US20110038362A1 (en) 2009-08-14 2011-02-17 Koen Bernard Vos Controlling multi-party communications
CN101815084A (zh) 2009-12-31 2010-08-25 优视科技有限公司 一种用于用户终端文件管理系统及其应用方法

Also Published As

Publication number Publication date
KR20150046372A (ko) 2015-04-29
EP2896187B1 (en) 2016-08-03
EP2896187A4 (en) 2015-09-02
WO2014040535A1 (en) 2014-03-20
JP5866077B2 (ja) 2016-02-17
CN103685388A (zh) 2014-03-26
JP2015537267A (ja) 2015-12-24
EP2896187A1 (en) 2015-07-22
CN103685388B (zh) 2015-01-07

Similar Documents

Publication Publication Date Title
US9350803B2 (en) Information management method and device
EP3600581B1 (en) Distributed sample-based game profiling with game metadata and metrics and gaming api platform supporting third-party content
KR101571374B1 (ko) 정보 관리 방법 및 장치
WO2017107577A1 (zh) 节点探测方法及装置、路径选取方法及装置、及网络系统
JP6994505B2 (ja) モバイルエッジアプリケーションの再配置
CN107645529B (zh) 心跳包发送方法及装置
CN108566312A (zh) 离线检测方法、装置及计算机可读存储介质
CN108650667B (zh) 终端调度方法和装置
CN106817314B (zh) 大数据采集方法、装置以及系统
CN110545566A (zh) 一种链路切换的方法、装置、设备以及存储介质
CN109728981A (zh) 一种云平台故障监测方法及装置
KR20140093088A (ko) 전자 장치에서 트래픽 제어 방법 및 장치
US10798164B2 (en) Techniques for intelligent device collaboration
CN107104822B (zh) 服务器备灾处理方法、装置、存储介质及电子设备
CN111338808A (zh) 一种协同计算方法及系统
CN105530110B (zh) 一种网络故障检测方法以及相关网元
US10684875B2 (en) Synchronization of a virtual machine across mobile devices
CN111835578B (zh) 信息传输管理方法、信息传输管理装置及可读存储介质
CN107982912B (zh) 一种信息处理方法和终端
CN109889545B (zh) 数据通信方法和装置
CN107979876A (zh) 数据传输方法及终端
KR20150092363A (ko) 게임 데이터 통신 방법 및 단말기
Jiang et al. A mirroring architecture for sophisticated mobile games using computation‐offloading
CA2833346A1 (en) Reducing latency for served applications by anticipatory preprocessing
US20150195214A1 (en) Verification method, verification device, and recording medium

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20181101

Year of fee payment: 4