KR101630215B1 - 클라우드 기반 시스템에서의 데이터 전송 - Google Patents

클라우드 기반 시스템에서의 데이터 전송 Download PDF

Info

Publication number
KR101630215B1
KR101630215B1 KR1020147012966A KR20147012966A KR101630215B1 KR 101630215 B1 KR101630215 B1 KR 101630215B1 KR 1020147012966 A KR1020147012966 A KR 1020147012966A KR 20147012966 A KR20147012966 A KR 20147012966A KR 101630215 B1 KR101630215 B1 KR 101630215B1
Authority
KR
South Korea
Prior art keywords
client devices
group
classified
data
server
Prior art date
Application number
KR1020147012966A
Other languages
English (en)
Other versions
KR20140084188A (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 KR20140084188A publication Critical patent/KR20140084188A/ko
Application granted granted Critical
Publication of KR101630215B1 publication Critical patent/KR101630215B1/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • 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/355Performing operations on behalf of clients with restricted processing capabilities, e.g. servers transform changing game scene into an encoded video stream for transmitting to a mobile phone or a thin client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • G06F21/445Program or device authentication by mutual authentication, e.g. between devices or programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/02Processing of mobility data, e.g. registration information at HLR [Home Location Register] or VLR [Visitor Location Register]; Transfer of mobility data, e.g. between HLR, VLR or external networks
    • H04W8/04Registration at HLR or HSS [Home Subscriber Server]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

클라우드 기반 시스템을 위한 데이터 전송 체계에 관한 기술이 일반적으로 설명된다. 일부 예시에서, 데이터 전송 시스템은 서버와 서버에 연결된 다수의 클라이언트 장치 사이의 통신 속도를 결정하도록 구성되는 통신 속도 결정 유닛, 통신 속도 결정 유닛에 의해 결정된 통신 속도에 적어도 부분적으로 기초하여 다수의 클라이언트 장치 각각을 분류하도록 구성되는 클라이언트 분류 유닛, 및 서버에 연결된 클라이언트 장치 중 하나 이상에 데이터의 소정 부분을 전송하도록 구성되는 데이터 전송 유닛을 포함할 수 있다.

Description

클라우드 기반 시스템에서의 데이터 전송{DATA TRANSMISSON IN CLOUD-BASED SYSTEM}
스마트폰과 태블릿과 같은 고급 모바일 전자 장치는 그 사용자에게 유비쿼터스(ubiquitous) 네트워크 연결성을 제공한다. 예를 들어, 일 그룹의 사용자들이 자신의 장치들을 게임 서버에 연결하여, 그들이 원하는 임의의 장소에서 함께 온라인 게임을 플레이할 수 있다. 그러나, 연결 품질이 안정적이지 않거나 장치들과 서버 사이의 통신 속도가 느린 경우, 사용자들은 게임이 끊어지는 불편함을 겪어야 한다. 또한, 서버에 연결되는 장치들의 수가 증가함에 따라, 서버로부터 전송될 데이터 트래픽의 양이 증가하며, 이는 네트워크에 큰 부하를 초래한다.
일 예시에서, 데이터 전송 시스템은 서버와 서버에 연결된 다수의 클라이언트 장치 사이의 통신 속도를 결정하도록 구성되는 통신 속도 결정 유닛, 통신 속도 결정 유닛에 의해 결정된 통신 속도에 적어도 부분적으로 기초하여 다수의 클라이언트 장치 각각을 분류(classify)하도록 구성되는 클라이언트 분류 유닛, 및 서버에 연결된 클라이언트 장치 중 하나 이상에 데이터의 소정 부분을 전송하도록 구성되는 데이터 전송 유닛을 포함할 수 있다.
다른 예시에서, 서버의 제어 하에서 수행되는 방법은 서버에 연결되고 동일한 애플리케이션 프로그램을 실행하는 다수의 클라이언트 장치로부터 데이터에 대한 요청을 수신하는 단계, 다수의 클라이언트 장치의 각각의 통신 속도에 적어도 부분적으로 기초하여 다수의 클라이언트 장치를 적어도 제1 그룹 및 제2 그룹으로 분류하는 단계 - 제1 그룹과 제2 그룹은 각각 다수의 클라이언트 장치 중 하나 이상의 클라이언트 장치를 포함함 -, 및 다수의 클라이언트 장치에 의해 실행되는 동일한 애플리케이션 프로그램에 대해 공통적으로 사용될 공통 데이터(common data)의 적어도 일부를 제1 그룹으로 분류된 하나 이상의 클라이언트 장치로 전송하는 단계를 포함할 수 있다.
또 다른 예시에서, 컴퓨터 판독 가능 저장 매체는 실행에 대한 응답으로 데이터 전송 시스템으로 하여금, 서버에 연결된 다수의 클라이언트 장치를 다수의 클라이언트 장치의 각각의 통신 속도에 적어도 부분적으로 기초하여 적어도 제1 그룹 및 제2 그룹으로 분류하는 것, 다수의 클라이언트 장치에 의해 공통으로 사용될 공통 데이터의 적어도 일부를 제1 그룹으로 분류된 하나 이상의 클라이언트 장치로 전송하는 것, 및 제2 그룹으로 분류된 하나 이상의 클라이언트 장치 중 적어도 일부로 공통 데이터의 적어도 일부를 전달하도록 제1 그룹으로 분류된 하나 이상의 클라이언트 장치를 지시하는 것을 포함하는 동작을 수행하도록 하는 컴퓨터 실행 가능 명령어를 저장할 수 있다.
이상의 요약은 단지 예시적인 것으로서 어떠한 방식으로든 제한적으로 의도된 것이 아니다. 이하의 상세한 설명과 도면을 참조함으로써, 위에서 설명된 예시적인 양태들, 실시예들 및 특징들에 더하여, 추가적인 양태들, 실시예들 및 특징들 또한 명확해질 것이다.
본 개시의 전술한 특징 및 다른 특징은 첨부 도면과 함께, 다음의 설명 및 첨부된 청구범위로부터 더욱 명백해질 것이다. 이들 도면은 본 개시에 따른 단지 몇 개의 실시예를 묘사할 뿐이고, 따라서 그 범위를 제한하는 것으로 고려되어서는 안 될 것임을 이해하면서, 본 개시는 첨부 도면을 사용하여 더 구체적이고 상세하게 설명될 것이다.
도 1은 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 일 그룹의 클라이언트 장치가 네트워크 상에서 클라우드 서비스를 제공하는 서버에 연결되는 환경의 예시를 개략적으로 도시한다.
도 2는 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 클라우드 기반 시스템을 위한 데이터 전송 체계를 제공하기 위한 예시적인 아키텍처를 도시하는 개략적인 블록도를 도시한다.
도 3은 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 클라우드 기반 시스템을 위한 데이터 전송 체계를 제공하기 위한 프로세스의 예시적인 흐름도를 도시한다.
도 4는 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 클라우드 기반 시스템을 위한 데이터 전송 체계를 제공하는 데에 이용될 수 있는 컴퓨터 프로그램 제품을 도시한다.
도 5는 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 클라우드 기반 시스템을 위한 데이터 전송 체계를 제공하는 데에 이용될 수 있는 예시적인 컴퓨팅 장치를 도시하는 블록도이다.
이하의 상세한 설명에서 본 개시의 일부를 이루는 첨부 도면에 대한 참조가 이루어진다. 문맥에서 달리 지시하고 있지 않은 한, 도면에서 유사한 부호는 통상적으로 유사한 컴포넌트를 나타낸다. 상세한 설명, 도면, 그리고 청구범위에 설명되는 예시적인 실시예는 제한적으로 여겨지지 않는다. 본 개시에서 제시되는 대상의 범위 또는 사상에서 벗어나지 않으면서 다른 실시예가 이용될 수 있고 다른 변경이 이루어질 수 있다. 여기에서 일반적으로 설명되고 도면에 도시되는 본 개시의 양태가 다양한 다른 구성으로 배열, 대체, 조합, 분리 및 설계될 수 있음과 이 모두가 여기에서 명시적으로 고려됨이 기꺼이 이해될 것이다.
일반적으로 본 개시는, 그 중에서도 특히, 클라우드 기반 시스템(cloud-based system)을 위한 데이터 전송 체계(data transmission scheme)에 관련된 방법, 기기, 시스템, 장치 및 컴퓨터 프로그램 제품에 관한 것이다.
클라우드 서버가 네트워크 상에서 최종 사용자에게 클라우드 서비스를 제공하는 클라우드 기반 시스템에 관한 기술이 일반적으로 설명된다. 일부 예시에서, 클라우드 서버는 예컨대 3세대(3G) 모바일 통신 네트워크, 4세대(4G) 모바일 통신 네트워크 등과 같은 모바일 통신 네트워크 상에서 사용자들의 그룹에 클라우드 서비스를 제공할 수 있다. 일부 예시에서, 사용자의 그룹은 모여서 클라우드 게임 서버에 의해 제공되는 온라인 게임을 함께 플레이할 수 있다.
일부 예시에서, 서버의 컴포넌트일 수 있거나 서버와 별개이나 서버에 의해 제어될 수 있는 데이터 전송 시스템은, 다수의 사용자의 클라이언트 장치와 서버 사이의 각각의 통신 속도를 결정 또는 측정할 수 있다. 일부 예시에서, 데이터 전송 시스템은 서버와 클라이언트 장치 사이의 각각의 통신 속도에 적어도 부분적으로 기초하여 클라이언트 장치 각각을 고속 그룹 또는 저속 그룹 중 하나로 분류할 수 있다. 일부 예시에서, 데이터 전송 시스템은 다수의 클라이언트 장치 모두 사이에서 공통으로 사용될 데이터, 즉 공통 데이터의 적어도 일부를 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상에 전송할 수 있다.
일부 예시에서, 데이터 전송 시스템은 서버에 연결된 다수의 클라이언트 장치를 위해 사용될 공통 데이터를 결정할 수 있다. 일부 예시에서, 서버가 온라인 게임을 제공하고 서버에 연결된 클라이언트 장치가 게임과 연관된 동일한 게임 애플리케이션 프로그램을 실행하는 경우, 공통 데이터는 게임 애플리케이션 프로그램에서 공통적으로 사용될 배경 음악, 배경 이미지 및 광고 중 적어도 하나를 포함한다.
일부 예시에서, 데이터 전송 시스템은 저속 그룹으로 분류된 클라이언트 장치 중 하나 이상으로 공통 데이터의 적어도 일부를 전달하도록 하는 명령어를 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상에 전송할 수 있다. 일부 예시에서, 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상은, 예컨대 와이파이(Wi-Fi) 네트워크, 블루투스(Bluetooth) 네트워크, 초광대역(UWB) 네트워크와 같은 애드혹(ad-hoc) 네트워크를 통해 저속 그룹으로 분류된 클라이언트 장치 중 하나 이상에 공통 데이터 중 적어도 일부를 전달할 수 있다.
도 1은 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 일 그룹의 클라이언트 장치가 네트워크 상에서 클라우드 서비스를 제공하는 서버에 연결되는 환경의 예시를 개략적으로 도시한다.
도 1에 도시된 바와 같이, 서버(100)는 서버(100)에 연결된 다수의 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)에 클라우드 서비스를 제공할 수 있다. 일부 실시예에서, 서버(100)는 모바일 통신 네트워크 상에서 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 각각에 클라우드 서비스를 제공할 수 있다. 제한적이지 않은 예시로서, 모바일 통신 네트워크는 3세대(3G) 모바일 통신 네트워크, 4세대(4G) 모바일 통신 네트워크 등을 포함할 수 있다. 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)의 예시는 이동 전화, 스마트폰, PDA(personal digital assistant), 태블릿, 랩탑 컴퓨터, 데스크탑 컴퓨터, 또는 예컨대 서버(100)와 다른 클라이언트 장치를 포함하는 다른 장치에 대한 통신 기능을 가지는 임의의 기타 장치를 포함할 수 있으나, 이에 제한되는 것은 아니다. 도 1은 6개의 클라이언트 장치가 서버(100)에 연결되는 것으로 도시하고 있으나, 당업자라면 임의의 개수의 클라이언트 장치가 서버(100)에 연결될 수 있음을 인식할 것이다.
일부 실시예에서, 서버(100)는 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 각각에 클라우드 서비스에 필요한 데이터를 제공할 수 있다. 제한적이지 않은 예시로서, 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)의 사용자가 서버(100)에 의해 제공되는 게임을 플레이하는 경우, 즉 서버(100)가 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)에 게임 서비스를 제공하는 경우, 서버(100)는 각각의 사용자에 대해 필요하고 적절한 게임 데이터를 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)에 제공할 수 있다. 제한적이지 않은 예시로서, 게임 데이터는 숫자(numeric) 데이터, 문자 숫자(alphanumeric) 데이터, 사진 또는 비디오 데이터, 사운드 데이터, 및 서버(100)에 의해 제공되는 게임과 연관되는 임의의 기타 유형의 데이터를 포함할 수 있다.
일부 실시예에서, 서버(100)는 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 중 적어도 일부에 대해 사용될 공통 데이터를 결정할 수 있고, 공통 데이터를 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)의 일부에 전송하여, 서버(100)로부터 전송되는 데이터의 총량을 줄일 수 있다. 제한적이지 않은 예시로서, 서버(100)가 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)에 게임 서비스를 제공하는 경우, 공통 데이터는 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 중 적어도 일부에 대해 공통적으로 사용될 배경 음악, 배경 이미지 및 광고 중 적어도 하나를 포함할 수 있다.
일부 실시예에서, 서버(100)는 서버(100)와 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 각각 사이의 통신 속도를 결정할 수 있다. 일부 실시예에서, 서버(100)는 서버(100)와 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 사이의 실제 통신 속도를 측정할 수 있다. 일부 실시예에서, 서버(100)는 서버(100)와 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 사이의 네트워크의 유형에 적어도 부분적으로 기초하여 통신 속도를 추정할 수 있다. 제한적이지 않은 예시로서, 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 중 하나가 3세대(3G) 모바일 통신 네트워크를 통해 서버(100)에 연결된 경우, 서버(100)는 서버(100)와 해당하는 클라이언트 장치 사이의 통신 속도를 3G 모바일 통신 네트워크의 평균 통신 속도로서 추정할 수 있다.
일부 실시예에서, 서버(100)는 서버(100)와 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 각각 사이의 각각의 통신 속도에 적어도 부분적으로 기초하여 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)를 적어도 제1 그룹(120) 및 제2 그룹(130)으로 분류할 수 있다. 일부 실시예에서, 서버(100)는 높은 통신 속도를 가지는 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 중 하나 이상을 제1 그룹(120)으로 분류할 수 있고, 낮은 통신 속도를 가지는 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 중 하나 이상을 제2 그룹(130)으로 분류할 수 있다. 제한적이지 않은 예시로서, 서버(100)와 클라이언트 장치(110-1, 110-2 및 110-3) 사이의 각각의 통신 속도가 서버와 클라이언트 장치(110-4, 110-5 및 110-6) 사이의 각각의 통신 속도보다 상대적으로 높은 경우, 서버(100)는 도 1에 도시된 바와 같이 클라이언트 장치(110-1, 110-2 및 110-3)를 제1 그룹(120)으로 분류할 수 있고 클라이언트 장치(110-4, 110-5 및 110-6)를 제2 그룹(130)으로 분류할 수 있다. 도 1은 3개의 클라이언트 장치가 제1 그룹(120)으로 분류되고 3개의 클라이언트 장치가 제2 그룹(130)으로 분류되는 것으로 도시하고 있으나, 당업자라면 여러 요인에 기초하여 제1 그룹(120)으로 분류되는 클라이언트 장치의 양과 제2 그룹(130)으로 분류되는 클라이언트 장치의 양 사이의 비율이 달라질 수 있음을 인식할 것이다. 예를 들어, 제1 그룹(120)으로 분류되는 클라이언트 장치의 양과 제2 그룹(130)으로 분류되는 클라이언트 장치의 양 사이의 비율은 서버(100)에 의해 제공되는 클라우드 서비스의 유형 및/또는 클라이언트 장치에 의해 실행되는 애플리케이션에 따라 달라질 수 있다.
일부 실시예에서, 서버(100)는 제1 그룹(120)으로 분류된 클라이언트 장치(110-1, 110-2 및 110-3)에 공통 데이터 중 적어도 일부를 전송할 수 있고, 전송된 공통 데이터의 적어도 일부를 제2 그룹(130)으로 분류된 클라이언트 장치(110-4, 110-5 및 110-6)에 전달하도록 제1 그룹(120)으로 분류된 클라이언트 장치(110-1, 110-2 및 110-3)를 지시할 수 있다. 일부 실시예에서, 서버(100)는 전송된 공통 데이터의 적어도 일부를 애드혹 네트워크를 통해 클라이언트 장치(110-4, 110-5 및 110-6)에 전달하도록 클라이언트 장치(110-1, 110-2 및 110-3)를 지시할 수 있다. 제한적이지 않은 예시로서, 애드혹 네트워크는 와이파이 네트워크, 블루투스 네트워크 및 초광대역(UWB) 네트워크를 포함할 수 있다. 일부 실시예에서, 서버(100)는 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)가 애드혹 네트워크를 통해 통신할 수 있도록 충분히 서로 가까이 위치되는지 여부를 결정할 수 있다.
일부 실시예에서, 제1 그룹(120)으로 분류된 클라이언트 장치(110-1, 110-2 및 110-3)에 공통 데이터 또는 그 일부를 전송하기 전에, 서버(100)는 공통 데이터 중 적어도 일부를 클라이언트 장치(110-1, 110-2 및 110-3)에 할당할 수 있다. 일부 실시예에서, 서버(100)는 공통 데이터를 분할하고, 분할된 데이터를 클라이언트 장치(110-1, 110-2 및 110-3) 각각에 할당하며, 클라이언트 장치(110-4, 110-5 및 110-6)를 포함하는 다른 클라이언트 장치들과 공통 데이터를 공유하도록 클라이언트 장치(110-1, 110-2 및 110-3)를 지시할 수 있다. 그러한 경우, 서버(100)로부터의 데이터 트래픽의 총량이 감소될 수 있고, 따라서 서버(100)의 전체적인 부하 및/또는 서버(100)와 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6) 사이의 전체적인 네트워크 부하가 감소될 수 있다. 대안적으로, 서버(100)는 제1 그룹(120)으로 분류된 클라이언트 장치(110-1, 110-2 및 110-3) 중 일부를 선택하고 선택된 것에 공통 데이터를 할당할 수 있다. 대안적으로, 서버(100)는 공통 데이터를 분할하지 않고 공통 데이터를 클라이언트 장치(110-1, 110-2 및 110-3)에 각각 할당할 수 있다.
일부 실시예에서, 제1 그룹(120)으로 분류된 클라이언트 장치(110-1, 110-2 및 110-3)에 공통 데이터 중 적어도 일부를 할당하는 경우, 서버(100)는 클라이언트 장치(110-1, 110-2 및 110-3) 각각의 데이터 수신 능력, 즉 서버(100)로부터 데이터를 수신하는 능력, 및/또는 클라이언트 장치(110-1, 110-2 및 110-3) 각각의 데이터 전달 능력, 즉 클라이언트 장치(110-4, 110-5 및 110-6)로 데이터를 전달하는 능력을 고려할 수 있다. 제한적이지 않은 예시로서, 데이터 수신 능력은 서버(100)가 클라이언트 장치(110-1, 110-2 및 110-3)에 클라우드 서비스를 제공할 수 있는 네트워크의 가용 대역폭 및 다운로드 속도 중 적어도 하나와 연관될 수 있다. 제한적이지 않은 예시로서, 데이터 전달 능력은 클라이언트 장치(110-1, 110-2 및 110-3)와 클라이언트 장치(110-4, 110-5 및 110-6) 사이의 애드혹 네트워크의 통신 속도와 연관될 수 있다.
도 2는 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 클라우드 기반 시스템을 위한 데이터 전송 체계를 제공하기 위한 예시적인 아키텍처를 도시하는 개략적인 블록도를 도시한다.
데이터 전송 시스템(200)은 통신 속도 결정 유닛(210), 클라이언트 분류 유닛(220), 데이터 전송 유닛(230), 공통 데이터 결정 유닛(240) 및 공통 데이터 할당 유닛(250)을 포함할 수 있다. 별개의 컴포넌트들로 도시되어 있으나, 개시된 대상의 범위 내에서 다양한 컴포넌트들이 추가적인 컴포넌트들로 분할되거나 더 적은 컴포넌트들로 조합되거나 함께 제거될 수 있다.
통신 속도 결정 유닛(210)은 서버(예컨대, 도 1의 서버(100))와 서버에 연결된 다수의 클라이언트 장치(예컨대, 도 1의 클라이언트 장치(110-1, 110-2, 110-3, 110-4, 110-5 및 110-6)) 사이의 통신 속도를 결정하도록 구성될 수 있다. 일부 실시예에서, 통신 속도 결정 유닛(210)은 서버와 클라이언트 장치 사이의 실제 통신 속도를 측정할 수 있다. 일부 실시예에서, 통신 속도 결정 유닛(210)은 서버와 클라이언트 장치 사이의 네트워크의 유형에 적어도 부분적으로 기초하여 통신 속도를 추정할 수 있다. 제한적이지 않은 예시로서, 클라이언트 장치가 3세대(3G) 모바일 통신 네트워크를 통해 서버에 연결된 경우, 통신 속도 결정 유닛(210)은 서버와 해당하는 클라이언트 장치 사이의 통신 속도를 3G 모바일 통신 네트워크의 평균 통신 속도로 추정할 수 있다.
클라이언트 분류 유닛(220)은 통신 속도 결정 유닛(210)에 의해 결정된 통신 속도에 적어도 부분적으로 기초하여 다수의 클라이언트 장치 각각을 분류하도록 구성될 수 있다. 일부 실시예에서, 클라이언트 분류 유닛(220)은 통신 속도 결정 유닛(210)에 의해 결정된 통신 속도에 적어도 부분적으로 기초하여 클라이언트 장치 각각을 고속 그룹 또는 저속 그룹 중 하나로 분류할 수 있다.
데이터 전송 유닛(230)은 서버에 연결된 다수의 클라이언트 장치 중 하나 이상으로 데이터를 전송하도록 구성될 수 있다. 일부 실시예에서, 데이터 전송 유닛(230)은 다수의 클라이언트 장치에 대해 사용될 공통 데이터를 클라이언트 분류 유닛(220)에 의해 분류된 고속 그룹의 클라이언트 장치 중 하나 이상으로 전송할 수 있다. 일부 실시예에서, 데이터 전송 유닛(230)은 공통 데이터 중 적어도 일부를 저속 그룹으로 분류된 클라이언트 장치 중 하나 이상으로 전달하라는 명령을 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상으로 더 전달할 수 있다.
공통 데이터 결정 유닛(240)은 서버에 연결된 다수의 클라이언트 장치를 위해 사용될 공통 데이터를 결정하도록 구성될 수 있다. 제한적이지 않은 예시로서, 서버에 연결된 다수의 클라이언트 장치가 동일한 게임 애플리케이션 프로그램을 실행하는 경우, 공통 데이터는 게임 애플리케이션 프로그램에서 공통적으로 사용될 배경 음악, 배경 이미지 및 광고 중 적어도 하나를 포함할 수 있다. 제한적이지 않은 예시로서, 공통 데이터 결정 유닛(240)은 배경 음악, 배경 이미지, 광고 등 중에서 어떠한 데이터가 서버에 연결된 다수의 클라이언트 장치에 대해 공통적으로 사용될지 결정할 수 있다.
공통 데이터 할당 유닛(250)은 공통 데이터 결정 유닛(240)에 의해 결정된 공통 데이터의 적어도 일부를 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상에 할당하도록 구성될 수 있다. 일부 실시예에서, 공통 데이터 할당 유닛(250)은 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상의 서버로부터 데이터를 수신하는 능력 및/또는 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상의 저속 그룹으로 분류된 클라이언트 장치 중 하나 이상으로 데이터를 전달하는 능력에 적어도 부분적으로 기초하여 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상에 공통 데이터의 적어도 일부를 할당할 수 있다.
이와 같이, 데이터 전송 시스템(200)이 서버에 연결된 다수의 클라이언트 장치 중 일부(예컨대, 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상)로만 공통 데이터를 전송할 수 있고, 다수의 클라이언트 장치 중 일부(예컨대, 고속 그룹으로 분류된 클라이언트 장치 중 하나 이상)가 다수의 클라이언트 장치 중 다른 것들(예컨대, 저속 그룹으로 분류된 클라이언트 장치 중 하나 이상)로 공통 데이터의 적어도 일부를 전달하도록 지시할 수 있으므로, 서버로부터 클라이언트 장치로의 데이터 트래픽의 총량이 감소될 수 있으며, 따라서 서버의 전체적인 부하 및/또는 서버와 클라이언트 장치 사이의 전체적인 네트워크 부하가 감소될 수 있다.
도 3은 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 클라우드 기반 시스템을 위한 데이터 전송 체계를 제공하기 위한 프로세스의 예시적인 흐름도를 도시한다.
도 3은 위에서 설명된 서버(100)와 같은 서버 및/또는 통신 속도 결정 유닛(210), 클라이언트 분류 유닛(220), 데이터 전송 유닛(230), 공통 데이터 결정 유닛(240) 및 공통 데이터 할당 유닛(250)을 포함하는 데이터 전송 시스템(200)과 같은 데이터 전송 시스템에서 구현될 수 있다. 예시적인 프로세스는 블록 300, 310, 320 및/또는 330에 의해 도시된 하나 이상의 동작, 작용 또는 기능을 포함할 수 있다. 별개의 블록들로 도시되어 있으나, 요구되는 구현에 따라 다양한 블록들이 추가적인 블록들로 분할되거나 더 적은 블록들로 조합되거나 제거될 수 있다. 프로세싱은 블록 300에서 시작할 수 있다.
블록 300에서, 서버 또는 데이터 전송 시스템은 서버에 연결되고 동일한 애플리케이션 프로그램을 실행하는 다수의 클라이언트 장치로부터 데이터에 대한 요청을 수신할 수 있다. 프로세싱은 블록 300에서 블록 310으로 계속될 수 있다.
블록 310에서, 서버 또는 데이터 전송 시스템은 서버에 연결된 다수의 클라이언트 장치 각각의 통신 속도를 결정할 수 있다. 일부 실시예에서, 서버 또는 데이터 전송 시스템은 서버와 각각의 클라이언트 장치 사이의 실제 통신 속도를 측정할 수 있다. 일부 실시예에서, 서버 또는 데이터 전송 시스템은 서버와 클라이언트 장치 사이의 네트워크의 유형에 적어도 부분적으로 기초하여 각각의 통신 속도를 추정할 수 있다. 프로세싱은 블록 310에서 320으로 계속될 수 있다.
블록 320에서, 서버 또는 데이터 전송 시스템은 다수의 클라이언트 장치의 각각의 통신 속도에 적어도 부분적으로 기초하여 다수의 클라이언트 장치를 적어도 제1 그룹 및 제2 그룹으로 분류할 수 있다. 일부 실시예에서, 다수의 클라이언트 장치의 분류는 서버(100)에 대한 통신 속도에 기초할 수 있다. 따라서, 서버 또는 데이터 전송 시스템은 서버(100)에 대해 높은 통신 속도를 가지는 하나 이상의 클라이언트 장치를 제1 그룹으로 분류할 수 있고 서버(100)에 대해 낮은 통신 속도를 가지는 하나 이상의 클라이언트 장치를 제2 그룹으로 분류할 수 있다. 제한적이지 않은 예시로서, 서버 또는 데이터 전송 시스템은 소정의 임계치 이상의 통신 속도를 가지는 하나 이상의 클라이언트 장치를 제1 그룹으로 분류할 수 있고 소정의 임계치 미만의 통신 속도를 가지는 하나 이상의 클라이언트 장치를 제2 그룹으로 분류할 수 있다. 대안적으로, 서버 또는 데이터 전송 시스템은 4세대(4G) 모바일 통신 네트워크를 사용하는 하나 이상의 클라이언트 장치를 제1 그룹으로 분류할 수 있고 3세대(3G) 모바일 통신 네트워크를 사용하는 하나 이상의 클라이언트 장치를 제2 그룹으로 분류할 수 있다. 프로세싱은 블록 320에서 블록 330으로 계속될 수 있다.
블록 330에서, 서버 또는 데이터 전송 시스템은 다수의 클라이언트 장치에 의해 실행되는 동일한 애플리케이션 프로그램에 대해 공통으로 사용될 공통 데이터의 적어도 일부를 제1 그룹으로 분류된 하나 이상의 클라이언트 장치로 전송할 수 있다. 제한적이지 않은 예시로서, 서버에 연결된 다수의 클라이언트 장치가 동일한 게임 애플리케이션 프로그램을 실행하는 경우, 공통 데이터는 게임 애플리케이션 프로그램에서 공통으로 사용될 배경 음악, 배경 이미지 및 광고 중 적어도 하나를 포함할 수 있다. 일부 실시예에서, 서버 또는 데이터 전송 시스템은 제1 그룹으로 분류된 하나 이상의 클라이언트 장치가, 예컨대 애드혹 네트워크를 통해, 제2 그룹으로 분류된 하나 이상의 클라이언트 장치 중 적어도 일부로 공통 데이터의 적어도 일부를 전달하도록 지시할 수 있다.
이와 같이, 데이터 전송 시스템은 서버에 연결된 다수의 클라이언트 장치 중 일부(예컨대, 제1 그룹으로 분류된 하나 이상의 클라이언트 장치)로만 공통 데이터를 전송할 수 있고, 다수의 클라이언트 장치 중 일부(예컨대, 제1 그룹으로 분류된 하나 이상의 클라이언트 장치)가 다수의 클라이언트 장치 중 다른 것들(예컨대, 제2 그룹으로 분류된 하나 이상의 클라이언트 장치)로 공통 데이터를 전달할 수 있다. 그러한 경우, 서버로부터 클라이언트 장치로의 데이터 트래픽의 총량이 감소될 수 있으며, 따라서 서버의 전체적인 부하 및/또는 서버와 클라이언트 장치 사이의 전체적인 네트워크 부하가 감소될 수 있다.
당업자라면, 여기에서 개시된 이러한 및 다른 프로세스 및 방법에 대해, 프로세스 및 방법에서 수행되는 기능이 상이한 순서로 구현될 수 있음을 이해할 것이다. 또한, 약술된 단계 및 동작은 단지 예시로서 제공된 것이고, 이러한 단계 및 동작의 일부는, 개시된 실시예의 본질에서 벗어나지 않으면서, 선택적일 수 있거나, 더 적은 단계 및 동작으로 조합될 수 있거나, 추가적인 단계 및 동작으로 확장될 수 있다.
도 4는 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 클라우드 기반 시스템을 위한 데이터 전송 체계를 제공하는 데에 이용될 수 있는 컴퓨터 프로그램 제품을 도시한다.
프로그램 제품(400)은 신호 베어링 매체(signal bearing medium)(402)를 포함할 수 있다. 신호 베어링 매체(402)는 예컨대 프로세서에 의하여 실행되면, 도 1 내지 3에 관하여 전술된 기능을 제공할 수 있는 하나 이상의 명령어(404)를 포함할 수 있다. 예를 들어, 명령어(404)는 서버에 연결된 다수의 클라이언트 장치를 다수의 클라이언트 장치의 각각의 통신 속도에 적어도 부분적으로 기초하여 적어도 제1 그룹 및 제2 그룹으로 분류하기 위한 하나 이상의 명령어, 다수의 클라이언트 장치에 의해 공통으로 사용될 공통 데이터의 적어도 일부를 제1 그룹으로 분류된 하나 이상의 클라이언트 장치로 전송하기 위한 하나 이상의 명령어, 제2 그룹으로 분류된 하나 이상의 클라이언트 장치의 적어도 일부에 공통 데이터의 적어도 일부를 전달하도록 제1 그룹으로 분류된 하나 이상의 클라이언트 장치를 지시하기 위한 하나 이상의 명령어를 포함할 수 있다. 따라서, 예컨대 도 2를 참조하면, 데이터 전송 시스템(200)은 명령어(404)에 응답하여 도 3에 도시된 블록들 중 하나 이상을 착수할 수 있다.
일부 구현예에서, 신호 베어링 매체(402)는 하드 디스크 드라이브, CD, DVD, 디지털 테이프, 메모리 등과 같은 컴퓨터 판독 가능 매체(406)를 포함할 수 있으나, 이에 제한되지는 않는다. 일부 구현예에서, 신호 베어링 매체(402)는 메모리, 읽기/쓰기(R/W) CD, R/W DVD 등과 같은 기록 가능 매체(408)를 포함할 수 있으나, 이에 제한되지는 않는다. 일부 구현예에서, 신호 베어링 매체(402)는 디지털 및/또는 아날로그 통신 매체(예컨대, 광섬유 케이블, 도파관(waveguide), 유선 통신 링크, 무선 통신 링크 등)와 같은 통신 매체(410)를 포함할 수 있으나, 이에 제한되지는 않는다. 따라서, 예를 들어, 프로그램 제품(400)은, 신호 베어링 매체(402)가 무선 통신 매체(410)(예컨대, IEEE 802.11 표준에 따르는 무선 통신 매체)에 의해 전달되는 RF 신호 베어링 매체(402)에 의하여 데이터 전송 시스템(200)의 하나 이상의 모듈로 전달될 수 있다.
도 5는 여기에 설명되는 적어도 일부 실시예에 따라 배열되는, 클라우드 기반 시스템을 위한 데이터 전송 체계를 제공하는 데에 이용될 수 있는 예시적인 컴퓨팅 장치를 도시하는 블록도이다.
이러한 예시에서, 컴퓨팅 장치(500)의 구성요소들은 클라우드 기반 시스템을 위해 배열 또는 구성될 수 있다. 매우 기본적인 구성(basic configuration)(502)에서, 컴퓨팅 장치(500)는 전형적으로 하나 이상의 프로세서(504) 및 시스템 메모리(506)를 포함한다. 메모리 버스(508)가 프로세서(504)와 시스템 메모리(506) 사이의 통신을 위해 사용될 수 있다.
요구되는 구성에 따라, 프로세서(504)는 마이크로프로세서(μP), 마이크로컨트롤러(μC), 디지털 신호 프로세서(DSP) 또는 그 임의의 조합을 포함하는 임의의 유형일 수 있지만, 이에 한정되는 것은 아니다. 프로세서(504)는 레벨 1 캐시(510) 및 레벨 2 캐시(512)와 같은 하나 이상의 레벨의 캐싱, 프로세서 코어(514) 및 레지스터(516)를 포함할 수 있다. 예시적인 프로세서 코어(514)는 ALU(arithmetic logic unit), FPU(floating point unit), DSP 코어(digital signal processing core), 또는 그 임의의 조합을 포함할 수 있다. 예시적인 메모리 컨트롤러(518)는 또한 프로세서(504)와 사용될 수 있거나, 또는 일부 구현예에서, 메모리 컨트롤러(518)는 프로세서(504)의 내부 부품일 수 있다.
요구되는 구성에 따라, 시스템 메모리(506)는 (RAM과 같은) 휘발성 메모리, (ROM, 플래시 메모리 등과 같은) 비휘발성 메모리, 또는 그 임의의 조합을 포함하나 이에 한정되지 않는 임의의 유형일 수 있다. 시스템 메모리(506)는 운영 체제(520), 하나 이상의 애플리케이션(522) 및 프로그램 데이터(524)를 포함할 수 있다. 애플리케이션(522)은 도 2에 도시된 데이터 전송 시스템(200) 아키텍처에 관하여 설명된 작용 또는 도 3에 도시된 흐름도에 관하여 설명된 작용을 포함하여 여기에 설명된 기능을 수행하도록 배열될 수 있는 명령어(526)를 포함할 수 있다. 일부 예시에서, 여기에서 설명되는 데이터 전송 시스템을 위한 명령어를 구현하도록 애플리케이션(522)은 운영 체제(520) 상에서 프로그램 데이터(524)와 동작하도록 배열될 수 있다.
컴퓨팅 장치(500)는 추가적인 특징 또는 기능, 및 기본 구성(502)과 임의의 요구되는 장치와 인터페이스 사이의 통신을 용이하게 하기 위한 추가적인 인터페이스를 가질 수 있다. 예를 들어, 버스/인터페이스 컨트롤러(530)는 저장 인터페이스 버스(534)를 통한 기본 구성(502)과 하나 이상의 데이터 저장 장치(532) 간의 통신을 용이하게 하는 데에 사용될 수 있다. 데이터 저장 장치(532)는 분리형 저장 장치(536), 비분리형 저장 장치(538), 또는 그 조합일 수 있다. 분리형 저장 장치 및 비분리형 저장 장치의 예로는, 몇 가지 말하자면, 플렉서블 디스크 드라이브 및 하드 디스크 드라이브(HDD)와 같은 자기 디스크 장치, 컴팩트 디스크(CD) 드라이브 또는 디지털 다기능 디스크(DVD) 드라이브와 같은 광 디스크 드라이브, 고체 상태 드라이브(solid state drive(SSD)) 및 테이프 드라이브를 포함할 수 있다. 예시적인 컴퓨터 저장 매체는, 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성의, 분리형 및 비분리형 매체를 포함할 수 있다.
시스템 메모리(506), 분리형 저장 장치(536) 및 비분리형 저장 장치(538)는 컴퓨터 저장 매체의 예시이다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기술, CD-ROM, 디지털 다기능 디스크(DVD) 또는 다른 광학 저장 장치, 자기 카세트, 자기 테이프, 자기 디스크 저장 장치 또는 다른 자기 저장 장치, 또는 원하는 정보를 저장하는 데에 사용될 수 있고 컴퓨팅 장치(500)에 의해 액세스될 수 있는 임의의 다른 매체를 포함하지만, 이에 한정되는 것은 아니다. 임의의 그러한 컴퓨터 저장 매체는 컴퓨팅 장치(500)의 일부일 수 있다.
컴퓨팅 장치(500)는 버스/인터페이스 컨트롤러(530)를 통한 다양한 인터페이스 장치(예컨대, 출력 장치(542), 주변 인터페이스(544) 및 통신 장치(546))로부터 기본 구성(502)으로의 통신을 용이하게 하기 위한 인터페이스 버스(540)도 포함할 수 있다. 예시적인 출력 장치(542)는 그래픽 처리 유닛(548) 및 오디오 처리 유닛(550)을 포함하며, 이는 하나 이상의 A/V 포트(552)를 통해 디스플레이 또는 스피커와 같은 다양한 외부 장치로 통신하도록 구성될 수 있다. 예시적인 주변 인터페이스(544)는 직렬 인터페이스 컨트롤러(554) 또는 병렬 인터페이스 컨트롤러(556)를 포함하며, 이는 하나 이상의 I/O 포트(558)를 통해 입력 장치(예컨대, 키보드, 마우스, 펜, 음성 입력 장치, 터치 입력 장치 등) 또는 다른 주변 장치(예컨대, 프린터, 스캐너 등)와 같은 외부 장치와 통신하도록 구성될 수 있다. 예시적인 통신 장치(546)는 네트워크 컨트롤러(560)를 포함하며, 이는 하나 이상의 통신 포트(564)를 통해 네트워크 통신 링크 상에서의 하나 이상의 다른 컴퓨팅 장치(562)와의 통신을 용이하게 하도록 배열될 수 있다.
네트워크 통신 링크는 통신 매체의 일례일 수 있다. 통신 매체는 전형적으로 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파 또는 다른 전송 메커니즘 같은 변조된 데이터 신호 내의 다른 데이터에 의해 구현될 수 있고, 임의의 정보 전달 매체를 포함할 수 있다. "변조된 데이터 신호"는 신호 내에 정보를 인코딩하기 위한 방식으로 설정되거나 변경된 특성 중 하나 이상을 갖는 신호일 수 있다. 제한적인지 않은 예시로서, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체, 및 음향(acoustic), 무선 주파수(RF), 마이크로파(microwave), 적외선(IR) 및 다른 무선 매체와 같은 무선 매체를 포함할 수 있다. 여기에서 사용되는 컴퓨터 판독 가능 매체라는 용어는 저장 매체 및 통신 매체 둘 다를 포함할 수 있다.
컴퓨팅 장치(500)는 휴대 전화, PDA(personal data assistant), 개인용 미디어 플레이어 장치, 무선 웹-워치(web-watch) 장치, 개인용 헤드셋 장치, 특수 용도 장치, 또는 위 기능 중 임의의 것을 포함하는 하이브리드(hybrid) 장치와 같은 소형 폼 팩터(small-form factor)의 휴대용(또는 모바일) 전자 장치의 일부로서 구현될 수 있다. 컴퓨팅 장치(500)는 또한 랩탑 컴퓨터 및 랩탑이 아닌 컴퓨터 구성을 모두 포함하는 개인용 컴퓨터로서 구현될 수 있다.
본 개시는 다양한 태양의 예시로서 의도된 본 출원에 기술된 특정 실시예들에 제한되지 않을 것이다. 당업자에게 명백할 바와 같이, 많은 수정과 변형이 그 사상과 범위를 벗어나지 않으면서 이루어질 수 있다. 여기에 열거된 것들에 더하여, 본 개시의 범위 안에서 기능적으로 균등한 방법과 장치가 위의 설명으로부터 당업자에게 명백할 것이다. 그러한 수정과 변형은 첨부된 청구항의 범위에 들어가도록 의도된 것이다. 본 개시는 첨부된 청구항의 용어에 의해서만, 그러한 청구항에 부여된 균등물의 전 범위와 함께, 제한될 것이다. 본 개시가 물론 다양할 수 있는 특정 방법, 시약, 화합물, 조성 또는 생물학적 시스템에 제한되지 않는 것으로 이해될 것이다. 또한, 여기에서 사용된 용어는 단지 특정 실시예들을 설명하기 위한 목적이고, 제한하는 것으로 의도되지 않음이 이해될 것이다.
여기에서 실질적으로 임의의 복수 및/또는 단수의 용어의 사용에 대하여, 당업자는 맥락 및/또는 응용에 적절하도록, 복수를 단수로 및/또는 단수를 복수로 해석할 수 있다. 다양한 단수/복수의 치환은 명확성을 위해 여기에서 명시적으로 기재될 수 있다.
당업자라면, 일반적으로 여기에 사용되며 특히 첨부된 청구범위(예를 들어, 첨부된 청구범위 본문)에 사용된 용어들이 일반적으로 "개방적(open)" 용어로 의도됨을 이해할 것이다(예를 들어, 용어 "포함하는"은 "포함하지만 이에 제한되지 않는"으로, 용어 "갖는"는 "적어도 갖는"으로, 용어 "포함하다"는 "포함하지만 이에 제한되지 않는다" 등으로 해석되어야 한다). 또한, 당업자라면, 도입된 청구항의 기재사항의 특정 수가 의도된 경우, 그러한 의도가 청구항에 명시적으로 기재될 것이며, 그러한 기재사항이 없는 경우, 그러한 의도가 없음을 이해할 것이다. 예를 들어, 이해를 돕기 위해, 이하의 첨부된 청구범위는 "적어도 하나" 및 "하나 이상" 등의 도입 구절의 사용을 포함하여 청구항 기재사항을 도입할 수 있다. 그러나, 그러한 구절의 사용이, 부정관사 "하나"("a" 또는 "an")에 의한 청구항 기재사항의 도입이, 그러한 하나의 기재사항을 포함하는 실시예로, 그러한 도입된 청구항 기재사항을 포함하는 임의의 특정 청구항을 제한함을 암시하는 것으로 해석되어서는 안되며, 동일한 청구항이 도입 구절인 "하나 이상" 또는 "적어도 하나" 및 "하나"("a" 또는 "an")와 같은 부정관사를 포함하는 경우에도 마찬가지로 해석되어야 한다(예를 들어, "하나"는 "적어도 하나" 또는 "하나 이상"을 의미하는 것으로 해석되어야 한다). 이는 청구항 기재사항을 도입하기 위해 사용된 정관사의 경우에도 적용된다. 또한, 도입된 청구항 기재사항의 특정 수가 명시적으로 기재되는 경우에도, 당업자라면 그러한 기재가 전형적으로 적어도 기재된 수를 의미하도록 해석되어야 함을 이해할 것이다(예를 들어, 다른 수식어가 없이 "두 개의 기재사항"을 단순히 기재한 것은, 적어도 두 개의 기재사항 또는 두 개 이상의 기재사항을 의미한다). 또한, "A, B 및 C 등 중의 적어도 하나"와 유사한 규칙이 사용된 경우에는, 일반적으로 그러한 해석은 당업자가 그 규칙을 이해할 것이라는 전제가 의도된 것이다(예를 들어, "A, B 및 C 중의 적어도 하나를 갖는 시스템"은, A만을 갖거나, B만을 갖거나, C만을 갖거나, A 및 B를 함께 갖거나, A 및 C를 함께 갖거나, B 및 C를 함께 갖거나, A, B 및 C를 함께 갖는 시스템 등을 포함하지만 이에 제한되지 않는다). "A, B 또는 C 등 중의 적어도 하나"와 유사한 규칙이 사용된 경우에는, 일반적으로 그러한 해석은 당업자가 그 규칙을 이해할 것이라는 전제가 의도된 것이다(예를 들어, "A, B 또는 C 중의 적어도 하나를 갖는 시스템"은, A만을 갖거나, B만을 갖거나, C만을 갖거나, A 및 B를 함께 갖거나, A 및 C를 함께 갖거나, B 및 C를 함께 갖거나, A, B 및 C를 함께 갖는 시스템 등을 포함하지만 이에 제한되지 않는다). 또한 당업자라면, 실질적으로 임의의 이접 접속어(disjunctive word) 및/또는 두 개 이상의 대안적인 용어들을 나타내는 구절은, 그것이 상세한 설명, 청구범위 또는 도면에 있는지와 상관없이, 그 용어들 중의 하나, 그 용어들 중의 어느 하나, 또는 그 용어들 두 개 모두를 포함하는 가능성을 고려하는 것으로 이해되어야 함을 이해할 것이다. 예를 들어, "A 또는 B"라는 구절은 "A" 또는 "B" 또는 "A 및 B"의 가능성을 포함하는 것으로 이해될 것이다.
또한, 개시의 특징 또는 양태가 마쿠시(Markush) 그룹으로 기술되는 경우, 개시는 마쿠시 그룹의 임의의 개별 요소 또는 요소들의 하위 그룹의 면에서도 설명됨을 당업자는 인식할 것이다.
당업자에게 이해될 것과 같이, 서면의 설명을 제공하는 측면에서와 같은 임의의 그리고 모든 목적에서, 여기에 개시되어 있는 모든 범위는 임의의 그리고 모든 가능한 하위범위와 그러한 하위범위의 조합을 또한 포함한다. 임의의 열거된 범위는 적어도 1/2, 1/3, 1/4, 1/5, 1/10 등으로 나누어지는 동일한 범위를 충분히 설명하고 실시가능하게 하는 것으로서 쉽게 인식될 수 있다. 제한하지 않는 예시로서, 여기서 논의되는 각각의 범위는 하위 1/3, 중앙 1/3, 상위 1/3 등으로 나누어질 수 있다. 또한, "까지", "적어도" 등과 같은 모든 언어가 기재된 수를 포함하며, 전술한 하위범위로 후속적으로 나누어질 수 있는 범위를 지칭함이 당업자에게 이해되어야 한다. 마지막으로, 범위는 각각의 개별 요소를 포함함이 이해되어야 한다. 따라서, 예를 들어, 1-3개의 셀을 갖는 그룹은 1, 2 또는 3개의 셀을 갖는 그룹들을 지칭한다. 유사하게, 1-5개의 셀을 갖는 그룹은 1, 2, 3, 4 또는 5개의 셀을 갖는 그룹을 지칭하는 등이다.
이상으로부터, 본 개시의 다양한 실시예가 예시의 목적을 위해 여기에서 설명되었고, 다양한 수정이 본 개시의 사상과 범위를 벗어나지 않으면서 이루어질 수 있음이 이해될 것이다. 따라서, 여기에서 개시된 다양한 실시예는 제한하려고 의도된 것이 아니며, 진정한 범위와 사상은 이하의 청구범위에서 나타난다.

Claims (27)

  1. 데이터 전송 시스템으로서,
    메모리;
    저장 장치; 및
    상기 메모리와 상기 저장 장치에 결합된 적어도 하나의 프로세서를 포함하며, 상기 적어도 하나의 프로세서는,
    서버와 상기 서버에 연결된 복수의 클라이언트 장치 사이의 통신 속도를 결정하고;
    상기 각각의 통신 속도에 적어도 부분적으로 기초하여 상기 복수의 클라이언트 장치 각각을 적어도 제1 그룹 및 제2 그룹으로 분류하고;
    적어도 상기 제1 그룹 및 상기 제2 그룹으로 분류된 상기 클라이언트 장치를 포함하는 상기 복수의 클라이언트 장치에 의해 공통으로
    사용될 공통 데이터를 결정하고; 그리고
    상기 제1 그룹으로 분류된 상기 클라이언트 장치 중 하나 이상으로 데이터의 소정 부분을 전송하도록 구성되고, 상기 데이터의 소정 부분은 상기 공통 데이터 중 적어도 일부를 포함하고,
    상기 서버에 연결된 상기 복수의 장치는 동일한 게임 애플리케이션 프로그램을 실행시키고, 상기 공통 데이터는 상기 게임 애플리케이션 프로그램에서 공통으로 사용될 배경 음악, 배경 이미지 및 광고 중 적어도 하나를 포함하는, 데이터 전송 시스템.
  2. 제1항에 있어서,
    상기 제1 그룹은 고속 그룹에 해당하고, 상기 제2 그룹은 저속 그룹에 해당하는, 데이터 전송 시스템.
  3. 삭제
  4. 삭제
  5. 제2항에 있어서,
    상기 적어도 하나의 프로세서는 상기 저속 그룹으로 분류된 상기 클라이언트 장치 중 하나 이상으로 상기 공통 데이터의 적어도 일부를 전달하도록 하는 명령어를 상기 고속 그룹으로 분류된 상기 클라이언트 장치 중 상기 하나 이상으로 전송하도록 더 구성되는, 데이터 전송 시스템.
  6. 제5항에 있어서,
    상기 고속 그룹으로 분류된 상기 클라이언트 장치 중 상기 하나 이상은 애드혹(ad-hoc) 네트워크를 통해 상기 공통 데이터의 적어도 일부를 전달하는 것인, 데이터 전송 시스템.
  7. 제6항에 있어서,
    상기 애드혹 네트워크는 와이파이(Wi-Fi) 네트워크, 블루투스(Bluetooth) 네트워크 및 초광대역(UWB) 네트워크로 이루어지는 군에서 선택되는 것인, 데이터 전송 시스템.
  8. 제2항에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 공통 데이터의 적어도 일부를 상기 고속 그룹으로 분류된 상기 클라이언트 장치 중 상기 하나 이상으로 할당하고,
    상기 공통 데이터의 적어도 일부를 상기 고속 그룹으로 분류된 상기 클라이언트 장치 중 상기 하나 이상으로 전송하도록 더 구성되는, 데이터 전송 시스템.
  9. 제8항에 있어서,
    상기 적어도 하나의 프로세서는 상기 고속 그룹으로 분류된 상기 클라이언트 장치 중 상기 하나 이상의 상기 서버로부터 데이터를 수신하는 능력에 적어도 부분적으로 기초하여 상기 고속 그룹으로 분류된 상기 클라이언트 장치 중 상기 하나 이상으로 상기 공통 데이터의 적어도 일부를 할당하도록 더 구성되는, 데이터 전송 시스템.
  10. 제8항에 있어서,
    상기 적어도 하나의 프로세서는 상기 고속 그룹으로 분류된 상기 클라이언트 장치 중 상기 하나 이상의 상기 저속 그룹으로 분류된 상기 클라이언트 장치 중 하나 이상으로 데이터를 전달하는 능력에 적어도 부분적으로 기초하여 상기 고속 그룹으로 분류된 상기 클라이언트 장치 중 상기 하나 이상에 상기 공통 데이터의 적어도 일부를 할당하도록 더 구성되는, 데이터 전송 시스템.
  11. 서버의 제어 하에 수행되는 방법으로서,
    상기 서버에 연결되고 동일한 애플리케이션 프로그램을 실행하는 복수의 클라이언트 장치로부터 데이터에 대한 요청을 수신하는 단계;
    상기 복수의 클라이언트 장치의 각각의 통신 속도에 적어도 부분적으로 기초하여 상기 복수의 클라이언트 장치를 적어도 제1 그룹 및 제2 그룹으로 분류하는 단계 - 상기 제1 그룹 및 상기 제2 그룹은 각각 상기 복수의 클라이언트 장치 중에서 하나 이상의 클라이언트 장치를 포함함 -; 및
    상기 동일한 애플리케이션 프로그램을 실행시키는 상기 복수의 클라이언트 장치의 적어도 상기 제1 그룹 및 상기 제2 그룹에 의해 공통으로 사용될 공통 데이터의 적어도 일부를 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치로 전송하는 단계
    를 포함하고, 상기 애플리케이션 프로그램은 게임 애플리케이션 프로그램이고, 상기 공통 데이터는 상기 게임 애플리케이션 프로그램에서 공통으로 사용될 배경 음악, 배경 이미지 및 광고 중 적어도 하나를 포함하는, 방법.
  12. 제11항에 있어서,
    상기 복수의 클라이언트 장치 각각의 상기 통신 속도를 결정하는 단계를 더 포함하는 방법.
  13. 제11항에 있어서,
    상기 분류하는 단계는 높은 통신 속도를 가지는 하나 이상의 클라이언트 장치를 상기 제1 그룹으로 분류하고 낮은 통신 속도를 가지는 하나 이상의 클라이언트 장치를 상기 제2 그룹으로 분류하는 단계를 포함하는, 방법.
  14. 제11항에 있어서,
    상기 제1 그룹으로 분류되는 클라이언트 장치의 양과 상기 제2 그룹으로 분류되는 클라이언트 장치의 양 사이의 비율은 상기 애플리케이션 프로그램에 따라 변하는, 방법.
  15. 삭제
  16. 제11항에 있어서,
    상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치가 상기 제2 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 중 적어도 일부로 상기 공통 데이터의 적어도 일부를 전달하도록 지시하는 단계를 더 포함하는 방법.
  17. 제16항에 있어서,
    상기 지시하는 단계는 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치가 애드혹 네트워크를 통해 상기 제2 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 중 적어도 일부로 상기 공통 데이터의 적어도 일부를 전달하도록 지시하는 단계를 포함하는, 방법.
  18. 제11항에 있어서,
    상기 전송하는 단계는 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 각각의 상기 서버로부터 데이터를 수신하는 능력에 적어도 부분적으로 기초하여 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 각각에 상기 공통 데이터의 적어도 일부를 할당하는 단계를 포함하는, 방법.
  19. 제11항에 있어서,
    상기 전송하는 단계는 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 각각의 상기 제2 그룹으로 분류된 상기 하나 이상의 클라이언트 장치로 데이터를 전달하는 능력에 적어도 부분적으로 기초하여 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 각각에 상기 공통 데이터의 적어도 일부를 할당하는 단계를 포함하는, 방법.
  20. 컴퓨터 실행 가능 명령어가 저장된 비일시적인 컴퓨터 판독가능 저장 매체로서, 상기 컴퓨터 실행 가능 명령어는, 실행에 대한 응답으로, 데이터 전송 시스템으로 하여금,
    서버에 연결된 복수의 클라이언트 장치를 상기 복수의 클라이언트 장치의 각각의 통신 속도에 적어도 부분적으로 기초하여 적어도 제1 그룹 및 제2 그룹으로 분류하는 것;
    적어도 상기 제1그룹 및 상기 제2 그룹으로 분류된 상기 클라이언트 장치를 포함하는 상기 복수의 클라이언트 장치에 의해 공통으로 사용될 공통 데이터의 적어도 일부를 상기 제1 그룹으로 분류된 하나 이상의 클라이언트 장치로 전송하는 것; 및
    상기 제2 그룹으로 분류된 하나 이상의 클라이언트 장치 중 적어도 일부로 상기 공통 데이터의 상기 적어도 일부를 전달하도록 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치를 지시하는 것
    을 포함하는 동작을 수행하게 하고,
    상기 서버에 연결된 상기 복수의 클라이언트 장치는 동일한 게임 애플리케이션 프로그램을 실행시키고, 상기 공통 데이터는 상기 게임 애플리케이션 프로그램에서 공통으로 사용될 배경 음악, 배경 이미지 및 광고 중 적어도 하나를 포함하는, 비일시적인 컴퓨터 판독 가능 저장 매체.
  21. 제20항에 있어서,
    상기 동작은 상기 서버와 상기 복수의 클라이언트 장치 각각 사이의 상기 통신 속도를 결정하는 것을 더 포함하는, 비일시적인 컴퓨터 판독 가능 저장 매체.
  22. 제20항에 있어서,
    상기 분류하는 것은 높은 통신 속도를 가지는 하나 이상의 클라이언트 장치를 상기 제1 그룹으로 분류하고 낮은 통신 속도를 가지는 하나 이상의 클라이언트 장치를 상기 제2 그룹으로 분류하는 것을 포함하는, 비일시적인 컴퓨터 판독 가능 저장 매체.
  23. 제20항에 있어서,
    상기 제1 그룹으로 분류되는 클라이언트 장치의 양과 상기 제2 그룹으로 분류되는 클라이언트 장치의 양 사이의 비율은 상기 서버에 연결된 상기 복수의 클라이언트 장치에 의해 실행되는 애플리케이션 프로그램에 따라 변하는, 비일시적인 컴퓨터 판독 가능 저장 매체.
  24. 삭제
  25. 제20항에 있어서,
    상기 지시하는 것은 애드혹 네트워크를 통해 상기 제2 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 중 적어도 일부로 상기 공통 데이터의 상기 적어도 일부를 전달하도록 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치를 지시하는 것을 포함하는, 비일시적인 컴퓨터 판독 가능 저장 매체.
  26. 제20항에 있어서,
    상기 전송하는 것은 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 각각의 상기 서버로부터 데이터를 수신하는 데이터 수신 능력에 적어도 부분적으로 기초하여 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 각각으로 상기 공통 데이터의 적어도 일부를 할당하는 것을 포함하는, 비일시적인 컴퓨터 판독 가능 저장 매체.
  27. 제20항에 있어서,
    상기 전송하는 것은 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 각각의 상기 제2 그룹으로 분류된 상기 하나 이상의 클라이언트 장치로 데이터를 전달하는 데이터 전달 능력에 적어도 부분적으로 기초하여 상기 제1 그룹으로 분류된 상기 하나 이상의 클라이언트 장치 각각으로 상기 공통 데이터의 적어도 일부를 할당하는 것을 포함하는, 비일시적인 컴퓨터 판독 가능 저장 매체.
KR1020147012966A 2012-02-10 2012-02-10 클라우드 기반 시스템에서의 데이터 전송 KR101630215B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2012/024654 WO2013119247A1 (en) 2012-02-10 2012-02-10 Data transmisson in cloud-based system

Publications (2)

Publication Number Publication Date
KR20140084188A KR20140084188A (ko) 2014-07-04
KR101630215B1 true KR101630215B1 (ko) 2016-06-14

Family

ID=48946580

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147012966A KR101630215B1 (ko) 2012-02-10 2012-02-10 클라우드 기반 시스템에서의 데이터 전송

Country Status (4)

Country Link
US (2) US9083638B2 (ko)
JP (1) JP5945006B2 (ko)
KR (1) KR101630215B1 (ko)
WO (1) WO2013119247A1 (ko)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9083638B2 (en) 2012-02-10 2015-07-14 Empire Technology Development Llc Data transmission in cloud-based system
US20140282103A1 (en) * 2013-03-16 2014-09-18 Jerry Alan Crandall Data sharing
WO2015153008A2 (en) 2014-04-02 2015-10-08 Ridge Tool Company Electronic tool lock
KR102670863B1 (ko) * 2016-12-29 2024-05-29 주식회사 넥슨코리아 데이터 다운로드 제공 장치 및 방법
DE102018220546B4 (de) 2017-11-30 2022-10-13 Ridge Tool Company Systeme und verfahren zum identifizieren von punkten von interesse in röhren oder abflussleitungen
US11090699B2 (en) 2018-02-20 2021-08-17 Ridge Tool Company GPS locating and mapping with distance overlay for drain cleaning and inspection equipment
US11586971B2 (en) * 2018-07-19 2023-02-21 Hewlett Packard Enterprise Development Lp Device identifier classification
US10979488B2 (en) 2018-11-16 2021-04-13 International Business Machines Corporation Method for increasing file transmission speed
US10983714B2 (en) * 2019-08-06 2021-04-20 International Business Machines Corporation Distribution from multiple servers to multiple nodes
DE102021204604A1 (de) 2021-03-11 2022-09-15 Ridge Tool Company Presswerkzeugsystem mit variabler kraft

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070147375A1 (en) * 2000-09-06 2007-06-28 Michael Lee Multicast system using client forwarding

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4807222A (en) * 1986-08-25 1989-02-21 American Telephone And Telegraph Company At&T Bell Laboratories Cordless accessed high-speed high-capacity local area networks
US6185646B1 (en) * 1997-12-03 2001-02-06 International Business Machines Corporation Method and apparatus for transferring data on a synchronous multi-drop
EP1416759A4 (en) * 2001-08-07 2010-01-06 Panasonic Corp COMMUNICATION SERVICE PROCESSING SYSTEM AND METHOD
US6892076B2 (en) 2002-06-05 2005-05-10 Nokia Corporation Digital video broadcast-terrestrial (DVB-T) receiver interoperable with a GSM transmitter in a non-interfering manner using classmark change procedure
US7464176B2 (en) 2002-06-17 2008-12-09 Microsoft Corporation Multicast system and method for deploying multiple images simultaneously
US7780526B2 (en) * 2002-06-28 2010-08-24 Igt Universal system mediation within gaming environments
JP3793213B2 (ja) * 2003-09-01 2006-07-05 株式会社ソニー・コンピュータエンタテインメント ネットワークゲーム端末、ゲームサーバ、ネットワークゲーム端末で実行される方法及び記録媒体
WO2005086969A2 (en) * 2004-03-08 2005-09-22 Massive Incorporated Delivery of advertising into multiple video games
US8122145B2 (en) * 2004-05-17 2012-02-21 Nokia Corporation System, method and computer program product for grouping clients and transferring content in accordance with the same
US20090118020A1 (en) * 2005-08-25 2009-05-07 Koivisto Ari M Method and device for sending and receiving game content including download thereof
WO2007087109A2 (en) * 2005-12-21 2007-08-02 Transip, Inc. System and method for efficient replication of and access to application specific environments and data
TWI293893B (en) 2006-06-23 2008-03-01 Inventec Corp Data transmission system and method
KR100821722B1 (ko) * 2006-08-24 2008-04-15 엔에이치엔(주) 다중 접속 온라인 게임에서 p2p 메시지 전송 시스템 방법
GB2450473A (en) * 2007-06-04 2008-12-31 Sony Comp Entertainment Europe A Server in a Peer to Peer system selecting and notifying a device that it is to become a member of a peer group
US8357039B2 (en) * 2009-01-29 2013-01-22 Wms Gaming, Inc. Configuring and controlling wagering game compatibility
FI122770B (fi) * 2009-11-11 2012-06-29 Adfore Technologies Oy Kontekstitietoisuudella ohjattava mobiililaite
US20130066951A1 (en) * 2009-11-18 2013-03-14 Yissum Research Development Company Of The Hebrew University Of Jerusalem Communication system and method for managing data transfer through a communication network
US20110166628A1 (en) * 2010-01-05 2011-07-07 Jain Praduman D System, method and device for medical device data processing and management
JP2011151701A (ja) * 2010-01-25 2011-08-04 Cellius Inc サーバシステム、クライアント装置、プログラム、及び情報記憶媒体
US8392526B2 (en) * 2011-03-23 2013-03-05 Color Labs, Inc. Sharing content among multiple devices
US9083638B2 (en) 2012-02-10 2015-07-14 Empire Technology Development Llc Data transmission in cloud-based system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070147375A1 (en) * 2000-09-06 2007-06-28 Michael Lee Multicast system using client forwarding

Also Published As

Publication number Publication date
JP2015510631A (ja) 2015-04-09
US20150244785A1 (en) 2015-08-27
KR20140084188A (ko) 2014-07-04
JP5945006B2 (ja) 2016-07-05
US20130212213A1 (en) 2013-08-15
WO2013119247A1 (en) 2013-08-15
US9906587B2 (en) 2018-02-27
US9083638B2 (en) 2015-07-14

Similar Documents

Publication Publication Date Title
KR101630215B1 (ko) 클라우드 기반 시스템에서의 데이터 전송
US8887169B2 (en) Task assignment in cloud computing environment
US20130237147A1 (en) Methods, apparatuses, and computer program products for operational routing between proximate devices
US20140006496A1 (en) Apparatus and method for selection of a device for content sharing operations
KR101867600B1 (ko) 네트워크 선택 방식
WO2017206856A1 (zh) 处理器资源的分配方法及移动终端
US20140213185A1 (en) Methods, apparatuses and computer program products for performing wireless innercopy of data between devices
US10295649B2 (en) Wireless signal identification
US20200022155A1 (en) Method and apparatus for service multiplexing and transmission
KR101576193B1 (ko) 지리적 위치 기반 로드 밸런싱
CN107005892A (zh) 无线通信装置、无线通信节点和信道检测方法
US11032180B2 (en) Substituting window endpoints using a health monitor
US8948091B2 (en) Push management scheme
CN104302008A (zh) 一种综合时分和缓存占比的无线多跳网络带宽分配方法
US9967800B2 (en) Schemes for providing wireless communication
US9358467B2 (en) Game load management
KR102507279B1 (ko) 비콘 기반 실내 이동 경로 제공 방법 및 장치
TWI587657B (zh) 用於促進同步輪詢回應之系統及方法
TW201840216A (zh) 行動裝置及其用以決定網路之資料傳輸速率之方法
JP2015088112A (ja) 制御装置、処理装置及び情報処理方法
KR102507280B1 (ko) 비콘 기반 실내 이동 경로 제공 방법 및 장치
US9439200B2 (en) Resource allocation in wireless communication
JP5725043B2 (ja) 通信装置、および通信方法
US20170041438A1 (en) Online data management
WO2023228380A1 (ja) 無線通信システム、基地局装置、移動端末装置、及び無線通信方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
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: 20190515

Year of fee payment: 4