KR102177724B1 - 무선 usb 디바이스들에 대해 지속 usb 서비스를 제공하는 방법 및 장치 - Google Patents

무선 usb 디바이스들에 대해 지속 usb 서비스를 제공하는 방법 및 장치 Download PDF

Info

Publication number
KR102177724B1
KR102177724B1 KR1020167007443A KR20167007443A KR102177724B1 KR 102177724 B1 KR102177724 B1 KR 102177724B1 KR 1020167007443 A KR1020167007443 A KR 1020167007443A KR 20167007443 A KR20167007443 A KR 20167007443A KR 102177724 B1 KR102177724 B1 KR 102177724B1
Authority
KR
South Korea
Prior art keywords
wsb
persistent
service
usb
host
Prior art date
Application number
KR1020167007443A
Other languages
English (en)
Other versions
KR20160045845A (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 KR20160045845A publication Critical patent/KR20160045845A/ko
Application granted granted Critical
Publication of KR102177724B1 publication Critical patent/KR102177724B1/ko

Links

Images

Classifications

    • H04L67/16
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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
    • H04L67/1044Group management mechanisms 
    • H04L67/1046Joining mechanisms
    • 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
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • 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
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1063Discovery through centralising entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/11Allocation or use of connection identifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/08Upper layer protocols
    • H04W80/12Application layer protocols, e.g. WAP [Wireless Application Protocol]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

WSB 호스트 및 WSB 클라이언트간의 서비스 지속 지원 및 상기 P2P 그룹 지속 동작과의 상응하는 매핑을 제공하는 방법 및 장치가 설명된다. 상기 방법은 상기 WSB 호스트로부터 지속 P2P USB 연결에 대한 요청을 수신하는 것을 포함한다. 상기 방법은 상기 WSB 클라이언트와 그룹을 생성하는 것을 포함한다. 또한, 상기 방법은 상기 지속 P2P USB 연결과 연관되는 서비스 식별자를 구성하는 것을 포함한다. 또한, 상기 방법은 상기 생성된 지속 P2P 그룹과 상기 서비스 식별자를 매핑하는 것을 포함한다. 상기 방법은 상기 생성된 지속 P2P 그룹 및 상기 지속 P2P USB 연결과 매핑되는 서비스 식별자를 저장하는 것을 포함한다. 상기 방법은 상기 WSB 클라이언트가 상기 WSB 호스트로 상기 지속 USB 서비스를 제공하는 것을 허락한다.

Description

무선 USB 디바이스들에 대해 지속 USB 서비스를 제공하는 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING A PERSISTENT USB SERVICE FOR WIRELESS USB DEVICES}
본 발명은 와이-파이(Wireless Fidelity: Wi-Fi) 통신에 관한 것으로서, 특히 무선 범용 직렬 버스(persistent Universal Serial Bus: USB) 디바이스들에 대해 지속(persistent) USB 서비스를 제공하는 방법 및 장치에 관한 것이다.
통신 디바이스들 및 다른 컴퓨팅 디바이스들(일 예로, 개인용 컴퓨터들, 이동 전화기들, 전자 휴대용 디바이스들, 게이밍 콘솔(gaming console)들, 혹은 다른 유사한 디바이스들)은 통신 스탠다드를 사용하여 다양한 주변 디바이스들과 통신할 수 있다. 상기와 같은 통신 스탠다드는 범용 직렬 버스(Universal Serial Bus: USB) 연결을 포함한다. USB 연결을 사용할 수 있는 주변 디바이스들 중 일부 예들은 키보드들, 디지털 카메라들, 프린터들, 개인용 미디어 플레이어들, 플래쉬 드라이브들과 같은 대용량 저장 디바이스들과, 네트워크 어댑터들 및 외부 하드 드라이브들을 포함한다. 상기와 같은 디바이스들 대부분에 대해서, USB는 주변 디바이스 연결을 가능하게 하는 매우 공통적인 통신 스탠다드가 되고 있다.
USB 디바이스들은 일반적으로 USB 규격을 개발한 회사들의 그룹에 의해 설정되는 인터페이스와 같은 스탠다드 프로토콜 혹은 인터페이스를 사용하여 동작한다. USB 디바이스들은 상기 호스트에 존재하는 상기 드라이버들에 의해 지원되는 USB 디바이스에 의해 사용되는 명령들 혹은 요청들을 제공하는 컴퓨터로 추가적인 드라이버들 혹은 소프트웨어를 인스톨(install)할 필요 없는 운영 시스템을 사용하여 상기 호스트 디바이스들(일 예로, 컴퓨터들)과 통신할 수 있다.
상기 USB 디바이스들은 유선 연결을 통해 혹은 무선 연결을 통해 호스트 디바이스(일 예로, 컴퓨터들)로 연결할 수 있다. 상기 USB 디바이스들은 통신 채널들을 통해 상기 호스트 디바이스로 무선으로 연결할 수 있다. 상기 통신 채널들은 와이-파이(Wi-Fi), 블루투스(Bluetooth) 등과 유사한, 비교적 짧은 범위의 통신 채널들을 포함할 수 있다.
무선 직렬 버스(Wireless Serial Bus: WSB)는 Wi-Fi를 통해 USB를 실행하는 프로토콜 추상 계층(Protocol Abstraction Layer: PAL) 엔터티이며, 상기 연결의 전력 및 관리를 관리하는 USB 디바이스들의 탐색과 같은 USB 연결을 생성하는 상기 Wi-Fi 관련 측면들을 핸들링한다. MA-USB(Media Agnostic USB)는 USB 디바이스들의 벌크(Bulk), 인터럽트(interrupt), 등시(Isochronous) 및 제어 트랜스퍼(transfer)들 및 열거(enumeration)와 같은 모든 USB 트랜스퍼 타입들에 대한 지원을 정의하는 엔터티이다. 상기 MA-USB는 상기 기저(underlying) 매체 연결성의 셋업 및 핸들링에 대해 WSB와 같이 매체 특정 PAL을 기반으로 한다. 상기 WSB 및 MA USB 계층들은 클라이언트 및 호스트 역할들을 지원한다. 어플리케이션 서비스 프로토콜(Application Service Protocol: ASP)은 Wi-Fi 다이렉트(direct) P2P 연결을 개시 및 제어하는 프레임워크(framework)를 제공한다. 상기 ASP는 상기 무선 매체에서 서비스들의 배치를 지원한다. WSB는 ASP에서 서비스로서 배치될 수 있다. 상기 무선 매체를 통해 USB 세션을 성립하는데 관련되는 기본 단계들이 여기에서 설명된다. 상기 WSB 엔터티는 WSB 호스트 혹은 WSB 클라이언트 기능이 될 수 있는 상기 피어(peer) WSB 엔터티에 대한 검출을 개시한다. 상기 기저 ASP 계층은 상기 탐색 프로세스를 개시한다. 상기 상대 엔터티(WSB 호스트 혹은 상기 WSB 클라이언트)가 탐색되었거나 혹은 필요할 경우, 사전 연관 서비스 탐색이 수행되고, 상기 2개의 디바이스들간의 연관 및 무선 연결이 성립된다. 상기 두 개의 디바이스들(WSB 호스트 혹은 상기 WSB 클라이언트)간의 연결이 성립될 때, 상기 호스트 디바이스에 의한 상기 클라이언트 디바이스의 열거가 상기 MA USB 호스트 계층에 의해 수행된다. 이는 상기 디바이스가 데이터 트랜스퍼를 위해 준비되는 것을 가능하게 하는 디바이스에서 엔드포인트(endpoint)들의 구성을 따른다.
현재, Wi-Fi 얼라이언스(alliance)는 서비스들이 상기 서비스들 자신에서 광고하는 것을 허락하는 상기 어플리케이션 서비스 플랫폼을 정의하고 있고, 이런 서비스들은 상기 에어를 통해 탐색 가능하다. 상기 기존 시스템에서, 상기 서비스 탐색은 필수적으로, 상기 모든 USB 디바이스 클래스들에서 수행될 필요가 있다. 상기 기존 시스템은 상기 디바이스가 다수 개의 서비스들을 지원하는 경우에 상기 다수 개의 해쉬(hash) 값들을 추가하는 것을 허락한다. 상기 서비스 해쉬 값들은 6 바이트들의 사이즈이다.
또한, 각 개별 서비스는 상기 전체 역 DNS 서비스 네임을 사용하여 상기 각 개별 서비스 자신을 ASP로 (상기 서비스 광고(AdvertiseService) 프리미티브(primitive)를 사용하여) 광고한다. 검색자 디바이스(WSB 호스트)는 상기 에어에서 탐색될 상기 요청된 서비스 네임을 포함하는 상기 서비스 검색(SeekService) 프리미티브를 사용하여 서비스를 검색할 수 있다. 상기 SeekService 프리미티브는 상기 서비스 해쉬 속성(attribute)을 포함하는 프로브 요청(Probe Request) 메시지를 트리거(trigger)한다. 상기 ASP는 상기 256 SHA 1 알고리즘을 사용하여 상기 서비스 네임에 대한 서비스 해쉬를 계산한다. 상기 Probe Request에서는, 오직 처음 6 바이트들만 상기 에어를 통해 송신될 것이다.
상기 수신 디바이스(WSB 클라이언트)가 Probe Request를 수신할 때, 상기 WSB 클라이언트는 상기 등록된 서비스들과 상기 수신된 해쉬를 매칭한다. 상기 서비스 해쉬가 매칭되면, 프로브 응답(Probe Response)이 상기 검색자 디바이스(WSB 호스트)로 송신된다. 상기 Probe Response은 상기 매칭된 풀 서비스 네임을 포함한다. 상기 검색자 디바이스(WSB 호스트)가 (상기 디바이스 탐색이 완료되고 검색자 디바이스가 상기 디바이스 및 지원되는 서비스를 식별하는) 상기 Probe Response를 수신하면, 상기 검색자 디바이스는 상기 서비스에 대한 구체적인 정보를 검출하기 위해서 상기 모든 검색된 디바이스들과 서비스 탐색을 수행할 필요가 있다. 상기 검색자는 상기 서비스 탐색 GAS 요청을 송신하여 상기 서비스의 구체 사항들을 요청하고, 상기 WSB 호스트는 GAS 응답으로 응답한다. 상기 GAS 응답은 상기 서비스들의 구체 사항들을 포함하고, 일 예로, 서비스를 송신하기 위해서는, 상기 서비스들의 구체 사항들은 상기 디바이스들의 역할인 송신기 혹은 수신기, 서비스되는 버전 번호(version number) 등이다.
상기 기존 시스템에서, 데이터 트랜스퍼가 상기 WSB 호스트와 상기 WSB 클라이언트간에서 진행중일 때, 상기 무선 연결은 일시적인(transient) 연결 손실들을 겪게 될 수 있다. 상기 연결 손실이 상기 데이터 트랜스퍼 동안 상기 WSB 호스트와 상기 WSB 클라이언트간에서 겪게 될 때, 상기 USB 연결은 상기 WSB 호스트와 상기 WSB 클라이언트간에서 해제된다. 상기 WSB 호스트와 상기 WSB 클라이언트는 서로 탐색하고, 상기 WSB 클라이언트의 재열거(re-enumeration)는 타이밍 소비 프로세스(timing consuming process)인 데이터 트랜스퍼의 연속을 위해 상기 WSB 호스트 (및 상기 엔드포인트들의 구성)에 의해 수행된다. 또한, 사용자는 상기 Wi-Fi 서비스 연결에서 지속성 동작을 필요로 하는 그/그녀의 주변 디바이스들에 무선으로 빈번하게 연결될 수 있다. 상기 기존 시스템에서, 상기 디바이스 (일 예로, USB 주변 장치)를 탐색한 후 상기 서비스 탐색은 필수적이고, 상기 모든 USB 디바이스 클래스들에서 수행될 필요가 있다. 상기 기존 시스템에서, ASP (Wi-Fi P2P) 아키텍쳐는 상기 P2P 그룹 레벨 지속성을 제공하고, 상기 서비스 레벨 지속성을 제공하지는 않는다.
본 개시의 측면들은 적어도 상기에서 설명한 바와 같은 문제점들 및/혹은 불이익들을 처리하고, 적어도 하기에서 설명되는 효과들을 제공하기 위한 것에 있다. 따라서, 여기에서의 본 개시의 측면은 무선 범용 직렬 버스(Universal Serial Bus: USB) 디바이스들에 대한 지속 USB 서비스를 제공하는 방법 및 장치를 제공하는 것에 있다.
본 개시의 다른 측면은 WSB 클라이언트로부터 상기 지속 USB 서비스를 획득하는 무선 직렬 버스(Wireless Serial Bus: WSB) 호스트를 구성하는 방법을 제공하는 것에 있다.
본 개시의 다른 측면은 서비스 지속성 지원 및 상기 P2P 그룹 지속성 동작과의 상응하는 매핑을 제공하는 방법 및 장치를 제공하는 것에 있다.
본 개시의 다른 측면은 상기 WSB 호스트로 상기 지속 USB 서비스를 제공하는 상기 WSB 클라이언트를 구성하는 방법을 제공하는 것에 있다.
따라서, 본 개시는 무선 직렬 버스(Wireless Serial Bus: WSB) 클라이언트(client)로부터 지속(persistent) 범용 직렬 버스(Universal Serial Bus: USB) 서비스를 획득하는 WSB 호스트(host)를 구성하는 방법을 제공하며, 상기 방법은 상기 WSB 호스트에 포함되어 있는 어플리케이션 서비스 프로토콜(Application Service Protocol: ASP) 계층이 상기 WSB 클라이언트를 탐색하는 것을 포함한다. 상기 방법은 상기 WSB 호스트에서 어플리케이션으로부터 상기 WSB 클라이언트와의 지속 USB 연결에 대한 요청을 수신하는 것을 포함한다. 상기 방법은 상기 ASP 계층이 상기 WSB 클라이언트와의 지속 USB 연결에 대한 지속 P2P 그룹을 요청하는 것을 포함하며, 상기 ASP 계층은 상기 WSB 호스트와 상기 WSB 클라이언트 간의 상기 지속 P2P 그룹을 생성함으로써 상기 지속 USB 연결을 개시한다. 또한, 상기 방법은 상기 ASP 계층이 상기 지속 USB 연결에 서비스 식별자를 할당함으로써 상기 USB 서비스와 상기 생성된 지속 P2P 그룹을 매핑하고, 상기 서비스 식별자를 상기 생성된 P2P 그룹에 매핑하는 것을 포함한다. 또한, 상기 방법은 상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 매핑되는 서비스 식별자를 저장한 후 상기 WSB 클라이언트로부터 상기 지속 USB 서비스를 획득하는 것을 포함한다.
따라서, 본 개시는 지속(persistent) 범용 직렬 버스(Universal Serial Bus: USB) 서비스를 무선 직렬 버스(Wireless Serial Bus: WSB) 호스트(host)로 제공하는 WSB 클라이언트(client)를 구성하는 방법을 제공하며, 상기 방법은 상기 WSB 호스트로부터 지속 USB 연결에 대한 요청을 수신하는 것을 포함한다. 또한, 상기 방법은 어플리케이션 서비스 플랫폼(Application Service Platform: ASP) 계층에 의해 개시되는, 상기 WSB 호스트와 상기 지속 USB 연결에 대한 지속 P2P 그룹을 생성하는 것을 포함한다. 상기 방법은 또한 상기 WSB 호스트로부터 상기 지속 USB 연결 및 상기 생성된 P2P 그룹에 연관되는 서비스 식별자를 수신하는 것을 포함한다. 또한, 상기 방법은 상기 생성된 지속 P2P 그룹 및 상기 지속 P2P USB 연결과 연관되는 서비스 식별자를 저장하는 것을 포함한다. 또한, 상기 방법은 상기 지속 USB 서비스를 상기 WSB 호스트로 제공하는 것을 포함한다.
따라서, 본 개시는 WSB 클라이언트(client)로부터 지속 범용 직렬 버스(Universal Serial Bus: USB) 서비스를 획득하는 WSB 호스트(host)를 제공하며, 상기 WSB 호스트는 집적 회로와 함께 MA USB(Media Agnostic USB) 계층과, WSB 계층 및 어플리케이션 서비스 플랫폼(Application Service Platform: ASP) 계층을 포함한다. 또한, 상기 집적 회로는 적어도 하나의 프로세서와 적어도 하나의 메모리를 포함한다. 상기 메모리는 상기 집적 회로 내의 컴퓨터 프로그램 코드를 포함한다. 상기 적어도 하나의 프로세서와 적어도 하나의 메모리 및 컴퓨터 프로그램 코드는 상기 WSB 호스트가 상기 WSB 호스트에 포함되어 있는 어플리케이션 서비스 프로토콜(Application Service Protocol: ASP) 계층이 상기 WSB 클라이언트를 탐색하도록 한다. 또한, 상기 WSB 호스트는 상기 WSB 호스트에서 어플리케이션으로부터 상기 WSB 클라이언트와의 지속 USB 연결에 대한 요청을 수신하도록 구성된다. 또한, 상기 WSB 호스트는 상기 ASP 계층이 상기 WSB 클라이언트와의 지속 USB 연결에 대한 지속 P2P 그룹을 요청하도록 구성되고, 상기 ASP 계층은 상기 WSB 호스트와 상기 WSB 클라이언트 간의 상기 지속 P2P 그룹을 생성함으로써 상기 지속 USB 연결을 개시한다. 상기 WSB 호스트는 또한 상기 ASP 계층이 상기 지속 USB 연결에 서비스 식별자를 할당함으로써 상기 USB 서비스와 상기 생성된 지속 P2P 그룹을 매핑하고, 상기 서비스 식별자를 상기 생성된 P2P 그룹에 매핑하도록 구성된다. 또한, 상기 WSB 호스트는 상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 매핑되는 서비스 식별자를 저장한 후 상기 WSB 클라이언트로부터 상기 지속 USB 서비스를 획득하도록 구성된다.
따라서, 본 개시는 WSB 호스트(host)로 지속 범용 직렬 버스(Universal Serial Bus: USB) 서비스를 제공하는 WSB 클라이언트(client)를 제공하며, 상기 WSB 클라이언트는 집적 회로와, MA USB (Media Agnostic USB) 계층과, WSB 계층 및 어플리케이션 서비스 플랫폼(Application Service Platform: ASP) 계층을 포함한다. 또한, 상기 집적 회로는 적어도 하나의 프로세서와 적어도 하나의 메모리를 포함한다. 상기 메모리는 상기 집적 회로 내의 컴퓨터 프로그램 코드를 포함한다. 상기 적어도 하나의 프로세서와, 상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 WSB 클라이언트가 상기 WSB 호스트로부터 지속 USB 연결에 대한 요청을 수신하도록 한다. 상기 WSB 클라이언트는 또한 어플리케이션 서비스 플랫폼(Application Service Platform: ASP) 계층에 의해 개시되는, 상기 WSB 호스트와 상기 지속 USB 연결에 대한 지속 P2P 그룹을 생성하도록 더 구성된다. 또한, 상기 WSB 클라이언트는 상기 WSB 호스트로부터 상기 지속 USB 연결 및 상기 생성된 P2P 그룹에 연관되는 서비스 식별자를 수신하도록 구성된다. 상기 WSB 클라이언트는 상기 생성된 지속 P2P 그룹 및 상기 지속 P2P USB 연결과 연관되는 서비스 식별자를 저장하도록 구성된다. 상기 WSB 클라이언트는 또한 상기 지속 USB 서비스를 상기 WSB 호스트로 제공하도록 구성된다.
여기서 상기 실시예들의 이런 및 다른 측면들은 하기의 설명 및 첨부 도면들과 함께 고려될 경우 보다 잘 인식되고 이해될 것이다. 하지만, 바람직한 실시예들 및 그 많은 특정 구체 사항들을 지시할 지라도, 하기 설명은 예시의 수단으로서만 주어지고 한정되지는 않는 것이라는 것이 이해되어야만 한다. 많은 변경들 및 수정들이 그 사상의 벗어남이 없이 여기에서 상기 실시예들의 범위 내에서 이루어질 수 있으며, 여기서 상기 실시예들은 상기와 같은 모든 수정들을 포함한다.
본 개시는 첨부 도면들에서 설명되며, 상기 첨부 도면들에서 유사한 참조 부호들은 다양한 도면들에서 해당하는 파트들을 지시한다. 여기서, 상기 실시예들은 하기 도면들을 참조하여 하기 설명으로부터 보다 잘 이해될 수 있을 것이다:
도 1은 여기에 개시되어 있는 실시예들에 따른, 다수의 WSB 호스트들이 WSB 클라이언트와 통신하는 시스템의 상위 레벨 개략도를 도시하고 있는 도면이다;
도 2는 여기에 개시되어 있는 실시예들에 따른, 상기 WSB 클라이언트와 WSB 호스트 내의 프로토콜 계층들을 도시하고 있는 도면이다;
도 3은 여기에 개시되어 있는 실시예들에 따른, 상기 WSB 클라이언트로부터 지속 USB 서비스를 획득하는 WSB 호스트를 구성하는 방법을 설명하고 있는 플로우 다이아그램이다;
도 4는 여기에 개시되어 있는 실시예들에 따른, 상기 WSB 호스트로 상기 지속 USB 서비스를 제공하는 상기 WSB 클라이언트를 구성하는 방법을 설명하고 있는 플로우 다이아그램이다;
도 5는 여기에 개시되어 있는 실시예들에 따른, 상기 WSB 호스트가 상기 WSB 클라이언트로 지속 서비스를 제공하는 시퀀스 다이아그램이다; 및
도 6은 여기에 개시되어 있는 실시예들에 따른, 상기 지속 USB 서비스를 제공하는 WSB 호스트 및 WSB 클라이언트를 구성하는 방법을 구현하는 컴퓨팅 환경을 도시하고 있는 도면이다.
여기서 상기 실시예들과, 다양한 기능들 및 그 이로운 구체적인 사항들은 상기 첨부 도면들에 도시되어 있고 하기의 설명에서 구체화되는, 한정없는 실시예들을 참조로 보다 완전하게 설명된다. 공지의 컴포넌트(component)들 및 프로세싱 기술들의 설명들은 여기서의 실시예들을 불필요하게 모호하게 하지 않도록 생략된다. 여기에서 사용되는 예제들은 단순히 여기서 상기 실시예들이 실행되는 방식들의 이해를 가능하게 하고, 또한 해당 기술 분야의 당업자들이 여기서의 상기 실시예들을 실행하는 것을 가능하도록 하는 것을 의도로 된다. 따라서, 상기 예제들은 여기서의 실시예들의 범위를 제한하도록 구성되어서는 안 된다.
여기에서의 실시예들은 WSB 호스트와 WSB 클라이언트간의 서비스 지속성 지원 및 상기 P2P 그룹 지속성 동작과의 상응하는 매핑을 제공하는 방법 및 장치를 성취한다. 상기 방법은 상기 WSB 호스트로부터 지속 P2P USB 연결에 대한 요청을 수신하는 것을 포함한다. 상기 방법은 상기 WSB 클라이언트와 지속 P2P 그룹을 생성하는 것을 포함한다.
일 실시예에서, 고유 식별자가 상기 생성된 지속 P2P 그룹에 대해 관련된다. 상기 생성된 지속 P2P 그룹에는 하나 혹은 그 이상의 WSB 호스트들이 존재할 수 있다. 또한, 상기 방법은 상기 지속 P2P USB 연결과 연관되는 서비스 식별자를 구성하는 것을 포함한다. 또한, 상기 방법은 상기 생성된 지속 P2P 그룹과 상기 서비스 식별자를 매핑하는 것을 포함한다. 상기 방법은 상기 생성된 지속 P2P 그룹 및 상기 지속 P2P USB 연결과 매핑되는 서비스 식별자를 저장하는 것을 포함한다. 상기 방법은 상기 WSB 호스트 및 상기 WSB 클라이언트가 상기 생성된 지속 P2P 그룹 및 상기 지속 P2P USB 연결과 매핑되는 서비스 식별자를 저장하는 것을 허락한다. 또한, 상기 방법은 상기 WSB 클라이언트가 상기 생성된 지속 P2P 그룹 및 상기 지속 P2P USB 연결과 매핑되는 서비스 식별자를 저장한 후 상기 WSB 호스트로 상기 지속 USB 서비스를 제공하는 것을 허락한다.
종래의 시스템과는 달리, 상기 개시된 방법은 (상기 서비스 탐색 절차를 무시하는) 상기 빈번하게 연결되는 USB 디바이스들로 연결하는 효율적인 메카니즘을 제공한다. 또한, 상기 개시되어 있는 방법 및 시스템을 사용하여, 상기 에어 인터페이스를 통해 교환되는 메시지들의 개수가 감소된다.
지금부터는 도면들을 참조하여, 특히 유사한 참조 문자들은 도면들 전체적으로 일관적으로 상응하는 특징들을 나타내는 도 1 내지 도 6을 참조하여, 바람직한 실시예들이 보여진다.
도 1은 여기에 개시되어 있는 실시예들에 따른, 다수의 WSB 호스트들이 WSB 클라이언트와 통신하는 시스템의 상위 레벨 개략도를 도시하고 있는 도면이다. 도 1에 도시되어 있는 바와 같이, 상기 아키텍쳐는 상기 WSB 클라이언트(100)와, 상기 WSB 클라이언트(100)에 무선으로 연결되어 있는 다수의 WSB 호스트들(101, 102, 103, 104, 105)을 포함한다. (상기 도면에 별도로 도시되어 있지 않다고 할지라도) 상기 WSB 클라이언트(100)에 대해 보다 더 많은 WSB 호스트들이 존재할 수 있다. 상기 다수의 WSB 호스트들(101, 102, 103, 104, 105)(상기 도면에 도시되어 있는)은 통신 채널들을 통해 상기 WSB 클라이언트와 통신한다.
통신 채널들은 일반적으로 도 1에 도시되어 있는 바와 같이, 상기 WSB 호스트들과 상기 WSB 클라이언트간에 데이터를 송신하기 위한, 적합한 통신 매체, 혹은 다른 통신 매체들의 집합을 나타낸다. 상기 통신 채널들을 와이-파이(Wi-Fi), 블루투스(Bluetooth) 등과 유사한 비교적 짧은 범위의 통신 채널들을 포함할 수 있다. 하지만, 통신 채널들은 이런 측면으로만 반드시 제한되는 것은 아니며, 무선 주파수(radio frequency: RF) 스펙트럼 혹은 하나 혹은 그 이상의 물리 송신 라인들, 혹은 무선 및 유선 매체들의 조합과 같은 어떤 무선 혹은 유선 통신 매체라도 포함할 수 있다.
도 1의 상기 WSB 호스트들(101-105)은 IEEE 1402.11 계열의 스탠다드들 중 하나의 스탠다드와 같은 통신 프로토콜, 혹은 다른 통신 프로토콜 혹은 포맷을 사용하여 통신 채널들을 통해 상기 WSB 클라이언트(100)와 통신할 수 있다. 도 1의 상기 WSB 클라이언트 및 상기 WSB 호스트들(101-105)은 일 예로, 상기 와이-파이 다이렉트(Wi-Fi Direct) 혹은 와이-파이 디스플레이(Wi-Fi Display: WFD) 스탠다드들에 따라, 통신할 수 있으며, 따라서 상기 WSB 클라이언트(100) 및 WSB 호스트들(101-105)은 무선 억세스 포인트들과 같은 중재자(intermediary)를 사용하지 않고도 서로 다이렉트로 통신하게 된다.
상기 WSB 클라이언트(100)는 WSB 허브(도면에 도시되어 있지 않음)와 상기 WSB 클라이언트 디바이스들(101-105)과 같은 하나 혹은 그 이상의 디바이스들과 통신할 수 있는 전자 디바이스를 포함한다. 또한, 상기 WSB 호스트(100)는 스마트폰, 태블릿, 혹은 이동 디바이스를 포함할 수 있다. 스마트 폰들 및 태블릿들과 같은 이동 디바이스들에 대해서, 상기 WSB 호스트(100)는 하나 혹은 그 이상의 디바이스들(WSB 클라이언트들(101-105))과 통신할 수 있는 전자 디바이스를 포함할 수 있으며, 일 예로, 어플라이언스(appliance)들, 자동차들, 항공기, 선박, 혹은 상기 데이터 전달 능력들을 수행할 수 있는 어떤 디바이스에라도 통합될 수 있다.
상기 WSB 클라이언트(100) 혹은 WSB 호스트들(101-105)은 하나 혹은 그 이상의 마이크로프로세서들, 디지털 신호 프로세서(digital signal processor: DSP)들, 주문형 반도체(application specific integrated circuit: ASIC)들, 필드 프로그램 가능 게이트 어레이(field programmable gate array: FPGA)들, 디스크릿 로직(discreet logic), 소프트웨어, 하드웨어, 펌웨어, 혹은 그들의 조합들로 구현될 수 있다.
상기 WSB 클라이언트(100)와 상기 WSB 호스트(101)간의 연결(일 예로, Wi-Fi Direct 연결)은 크게 디바이스 탐색, 서비스 탐색 및 그룹 성립(혹은 그룹 생성)을 포함하는 3개의 프로세스들을 통해 수행된다.
일 실시예에서, 상기 WSB 호스트(101)는 지속 USB 연결에 대한 요청을 상기 WSB 클라이언트(100)로 송신한다. 또한, 상기 WSB 호스트(101)는 상기 지속 USB 연결을 개시할 동안 상기 WSB 클라이언트(100)와의 지속 그룹에 대해 요청한다. 또한, 상기 WSB 호스트(101)는 PD 요청을 송신하여 서비스 요청을 개시한다. 일 실시예에서, 상기 PD 요청은 상기 지속 연결 요청을 포함한다. 또한, 상기 WSB 호스트(101)는 상기 지속 USB 연결과 연관되는 고유 서비스 식별자(Service_ID)를 생성한다.
상기 연결이 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100)간에서 성립될 경우, 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100)는 상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 연관되는 서비스 식별자를 저장한다.
일 실시예에서, 상기 WSB 클라이언트(100)와 상기 WSB 호스트(101)는 상기 모든 USB 정보, 일 예로, 상기 WSB 클라이언트(100)와 상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 연관되는 모든 디스크립터들 및 Service_ID를 저장한다.
상기 WSB 클라이언트(100)와 상기 기존 연결 혹은 세션을 계속하기 위해서, 상기 WSB 호스트(101)는 상기 WSB 클라이언트(100)로부터 상기 지속 USB 서비스를 획득하기 위해서 (상기 WSB 호스트(101)와 상기 WSB 클라이언트(100)간에 생성되어 있는 상기 P2P 그룹을 지시하는) 그룹 식별자와 함께 상기 서비스 ID를 송신한다.
도 2는 여기에 개시되어 있는 실시예들에 따른, 상기 WSB 호스트와 WSB 클라이언트 내의 프로토콜 계층들을 도시하고 있는 도면이다. 상기 WSB 규격은 WSB 디바이스/서비스 탐색 및 2개의 피어 WSB 디바이스들간의 연결 셋업, WSB 디바이스에서의 Wi-Fi 특정 구성들, USB 데이터 트랜스퍼(transfer)들을 위해 MA USB(Media Agnostic USB)를 사용하는 방법을 수행하는 아키텍쳐 및 프로토콜들의 집합을 정의하고 있다. 상기 도면에 도시되어 있는 바와 같이, 상기 WSB 클라이언트(100)는 MA-USB 계층(100a)과, WSB 계층(100b) 및 ASP 계층(100c)을 포함한다. 상기 WSB 호스트(101)는 MA-USB 계층(101a)과, WSB 계층(101b) 및 ASP 계층(101c)을 포함한다.
상기 규격에 정의되어 있는 프로토콜들의 집합은 상기 WSB 계층 혹은 상기 WSB 서비스라고 칭해지며, 상기 WSB 계층 혹은 상기 WSB 서비스는 상기 어플리케이션 서비스 플랫폼(Application Service Platform: ASP)에서 상기 Wi-Fi 다이렉트 서비스들(Wi-Fi Direct Services: WFDS)을 통한 서비스로서 배치된다.
(상기 WSB 클라이언트(100) 및 상기 WSB 호스트(101)에 존재하는) 상기 WSB 계층 혹은 WSB 서비스는 WSB 디바이스/서비스 탐색을 수행하여 WSB 디바이스(WSB 호스트 혹은 WSB 클라이언트)를 인에이블(enable)하여 피어 WSB 디바이스 및 상기 피어 WSB 디바이스의 어트리뷰트(attribute)들을 식별한다. 상기 WSB 디바이스/서비스 탐색 후, 상기 WSB 호스트(101) 및 상기 WSB 클라이언트(100)는 ASP 세션을 셋업함으로써 서로에게 연결할 수 있다. 상기 연결 셋업 후, 상기 MA USB 프로토콜 계층은 상기 USB 디바이스 열거(enumeration) 및 USB 데이터 트랜스퍼들을 수행하기 위해 사용된다.
일 실시예에서, 상기 WSB 서비스 계층(100b, 101b)은 상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결에 매핑되는 상기 서비스 식별자를 저장한다.
일 실시예에서, 상기 WSB 클라이언트(100) 및 상기 WSB 호스트(101)에서 상기 ASP 계층(100c, 101c) 상기 ASP 계층들(101c 및 100c)은 상기 생성된 P2P 지속 그룹의 정보와 함께 상기 service_ID를 유지한다.
도 3은 여기에 개시되어 있는 실시예들에 따른, 상기 WSB 클라이언트로부터 지속 USB 서비스를 획득하는 WSB 호스트를 구성하는 방법을 설명하고 있는 플로우 다이아그램이다. 먼저, 단계 301에서, 상기 방법(300)은 상기 WSB 호스트(101)에서 상기 ASP 계층(101C)가 상기 WSB 클라이언트(100)를 탐색하는 것을 포함한다.
단계 302에서, 상기 방법(300)은 상기 WSB 서비스 계층(101b)이 상기 WSB 호스트(101)에서 어플리케이션으로부터 상기 탐색된 WSB 클라이언트(100)와의 지속 USB 연결에 대한 요청을 수신하는 것을 포함한다. 일 실시예에서, (상기 WSB 클라이언트(100)에 포함되어 있는) 상기 WSB 서비스 계층(101b)은 상기 WSB 클라이언트(100)와의 지속 USB 연결을 개시하기 위해 기존 프리미티브(primitive) 세션 연결(지속)(ConnectSession(persistent))을 사용하여 혹은 새롭게 정의되는 프리미티브 지속 세션 연결()(ConnectPersistentSession())을 사용하여 상기 지속 USB 연결을 요청한다.
단계 303에서, 상기 방법은 상기 WSB 호스트에 포함되어 있는 상기 ASP 계층(101c)이 상기 WSB 클라이언트(100)와의 상기 지속 USB 연결에 대해 지속 P2P 그룹을 요청하는 것을 포함한다. 일 실시예에서, 상기 ASP 계층(101c)은 상기 WSB 클라이언트(100)와 상기 지속 P2P 그룹을 생성함으로써 상기 지속 USB 연결을 개시한다. 일 실시예에서, 상기 WSB 호스트(101)에 포함되어 있는 상기 ASP 계층(101c)은 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100)간의 상기 생성된 지속 P2P 그룹에 대해 고유 식별자를 할당한다. 일 실시예에서, 상기 생성된 지속 P2P 그룹에는 하나 혹은 그 이상의 WSB 호스트들이 존재한다.
단계 304에서, 상기 방법(300)은 상기 WSB 호스트(101)에 포함되어 있는 ASP 계층(101c)이 상기 지속 USB 연결과 연관되는 서비스 식별자(Service_ID)를 구성하는 것을 포함한다. 단계 305에서, 상기 방법(300)은 상기 WSB 호스트에 포함되어 있는 ASP 계층(101c)이 상기 생성된 지속 P2P 그룹과 상기 서비스 식별자를 매핑하는 것을 포함한다.
단계 306에서, 상기 방법(300)은 상기 WSB 호스트(100)에 포함되어 있는 WSB 서비스 계층(101b)이 상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 매핑되는 서비스 식별자를 저장하는 것을 포함한다.
단계 307에서, 상기 방법(300)은 상기 WSB 클라이언트(100)로부터 상기 지속 USB 서비스를 획득하는 것을 포함한다.
또한, 상기 지속 USB 서비스를 탐색하는 방법이 여기에서 구체화된다. 일 실시예에서, 상기 WSB 호스트(101)는 상기 WSB 클라이언트(100)로 상기 서비스 식별자 및 상기 생성된 지속 P2P 그룹의 정보를 포함하는 프로브 요청을 송신한다. 또한, 상기 WSB 클라이언트(100)는 상기 저장된 서비스 식별자 및 상기 생성된 그룹 정보와 함께, 상기 WSB 호스트(101)로부터의 수신된 서비스 식별자 및 생성된 지속 P2P 그룹 정보의 결정을 검출하는 것을 수행한다. 상기 저장되어 있는 서비스 식별자 및 그룹 정보(일 예로, 그룹 식별자)가 상기 프로브 요청에 포함되어 있는 서비스 식별자 및 그룹 식별자와 매칭될 경우, 상기 WSB 클라이언트(100)는 상기 지속 USB 서비스의 유용성을 지시하기 위해 상기 WSB 호스트(101)에 대한 프로브 응답을 생성한다.
또한, 상기 방법(300)에서 설명되고 있는 다양한 액션들, 유닛들, 단계들, 블록들, 혹은 동작들은 도시되어 있는 바와 같은 순서로, 다른 순서로, 동시에, 혹은 그 조합으로 수행될 수 있다. 또한, 일부 실시예들에서, 도 3에 리스트되어 있는 액션들, 유닛들, 단계들, 블록들, 혹은 동작들 중 일부는 생략될 수 있다.
도 4는 여기에 개시되어 있는 실시예들에 따른, 상기 WSB 호스트로 상기 지속 USB 서비스를 제공하는 상기 WSB 클라이언트를 구성하는 방법을 설명하고 있는 플로우 다이아그램이다. 단계 401에서, 상기 방법(400)은 상기 WSB 클라이언트(100)에 포함되어 있는 ASP 계층(100c)이 상기 WSB 호스트(101)로부터 상기 지속 USB 연결에 대한 요청을 수신하는 것을 포함한다. 상기 ASP 계층(100c)이 상기 WSB 호스트(101)와의 지속 USB 연결에 대한 요청을 수신할 때, 상기 ASP 계층(100c)은 상기 WSB 클라이언트(100)에서 P2P 인터페이스를 통해 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100)간의 상기 P2P USB 연결을 개시한다.
단계 402에서, 상기 방법(400)은 상기 지속 USB 연결을 개시하기 위해 상기 WSB 클라이언트(100)에서 상기 ASP 계층(100c)이 상기 WSB 클라이언트(100)와 상기 WSB 호스트(101)간의 상기 지속 P2P 그룹을 생성하는 것을 포함한다.
또한, 상기 ASP 계층(101c)은 프로브 탐색(Probe Discovery: PD) 요청을 송신하여 상기 서비스 요청을 개시한다. 일 실시예에서, 상기 PD 요청은 상기 지속 연결 요청을 포함한다. 또한, 상기 WSB 클라이언트(100)에서 상기 ASP 계층은 상기 지속 P2P 연결과 연관되는 고유 Service_ID를 생성한다. 상기 ASP 계층(100c)은 상기 WSB 클라이언트(100)가 상기 WSB 호스트(101)와 연결을 성립하는 것을 허락한다.
상기 연결이 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100)간에서 성립될 때, 상기 WSB 클라이언트(100)에서 상기 ASP 계층(100c)은 상기 WSB 서비스(100b)로 연결 상태(ConnectStatus) 이벤트를 송신한다. 상기 ConnectStatus 이벤트는 상기 서비스 식별자를 포함한다.
단계 403에서, 상기 방법(400)은 상기 WSB 서비스 계층(100b)이 상기 생성된 지속 P2P 그룹과 상기 지속 USB 연결과 연관되는 서비스 식별자를 수신하는 것을 포함한다.
단계 404에서, 상기 방법(400)은 상기 WSB 서비스 계층(100b)이 상기 생성된 지속 P2P 그룹과 상기 지속 P2P USB 연결과 연관되는 서비스 식별자를 저장하는 것을 포함한다.
일 실시예에서, 상기 WSB 클라이언트에서 상기 WSB 서비스(100b)는 상기 모든 USB 정보, 일 예로, 상기 WSB 서비스(100b)와 연관되는 모든 디스크립터들 및 Service_ID를 저장한다.
일 실시예에서, 상기 WSB 클라이언트(100)에서 상기 WSB 서비스(100b)는 상기 MA-USB 스택으로 상기 USB 디스크립터들 및 상기 USB enumeration 프로세스 후에 연관될 USB 어드레스를 유지하는 것을 알려준다. 따라서, 상기 WSB 클라이언트(100)에서 상기 WSB 서비스 계층(100b)은 상기 WSB 서비스 계층(100b)과 연관되는 모든 디스크립터들 및 서비스 식별자를 저장한다.
단계 405에서, 상기 방법(400)은 상기 지속 USB 서비스를 상기 WSB 호스트(101)로 제공하는 것을 포함한다. 또한, 상기 WSB 호스트(101)로 상기 지속 USB 서비스를 제공하는 방법이 하기에서 설명된다.
일 실시예에서, 상기 방법은 상기 WSB 서비스 계층(100b)이 상기 지속 USB 서비스를 상기 WSB 호스트(101)로 제공하기 위해 상기 ASP 계층(100c)에 대한 검색 서비스()(seekService()) 프리미티브에 포함되어 있는 서비스 ID를 수신하는 것을 허락한다.
또한, 상기 ASP 계층(100c)은 상기 WSB 서비스 계층(101b)로부터 상기 seekService() 프리미티브를 수신하고, P2P 인터페이스에서 상기 WSB 호스트(101)를 탐색하는 것을 시작한다. 일 실시예에서, 상기 WSB 클라이언트(100)에서 상기 P2P 인터페이스는 P2P 인터페이스에서 상기 WSB 호스트(101)로부터 프로브 요청(Probe Request)을 수신한다. 상기 Probe Request는 상기 생성된 지속 P2P 그룹의 정보와 함께 상기 서비스 식별자를 포함한다.
상기 WSB 클라이언트(100)는 상기 WSB 호스트(101)로부터 상기 Probe Request를 수신하고, 상기 Service_ID와 함께 상기 연관되는 P2P 그룹 정보를 검출한다. 상기 WSB 클라이언트(100)가 상기 지속 P2P 그룹과 함께 상기 Service_ID를 결정할 때, 상기 WSB 호스트(100)는 프로브 응답(probe response)을 통해 상기 Probe Request에 대해 응답한다.
일 실시예에서, 상기 WSB 클라이언트(100)에서 상기 ASP 계층(100c)은 서비스 탐색을 수행해서는 안 된다. 일 실시예에서, 상기 WSB 클라이언트(100)에서 상기 WSB 서비스 계층(100b)은 상기 WSB 호스트(101)의 암시적 승인(implicit authorization)을 수행한다.
또한, 상기 지속 연결은 상기 WSB 클라이언트(100)에 의한 암시적 승인을 통해 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100) 간에서 성립된다. 상기 WSB 클라이언트(100)에서 상기 WSB 서비스 계층(100b)은 상기 WSB 호스트(101)로 상기 지속 USB 서비스의 유용성을 지시한다. 또한, 상기 방법(400)은 상기 WSB 클라이언트(100)가 상기 WSB 호스트(101)로 상기 지속 USB 서비스를 제공하는 것을 허락한다.
또한, 상기 방법(400)에서 설명되고 있는 다양한 액션들, 유닛들, 단계들, 블록들, 혹은 동작들은 도시되어 있는 바와 같은 순서로, 다른 순서로, 동시에, 혹은 그 조합으로 수행될 수 있다. 또한, 일부 실시예들에서, 도 4에 리스트되어 있는 액션들, 유닛들, 단계들, 블록들, 혹은 동작들 중 일부는 생략될 수 있다.
도 5는 여기에 개시되어 있는 실시예들에 따른, 상기 WSB 호스트가 상기 WSB 클라이언트로 지속 서비스를 제공하는 시퀀스 다이아그램이다. 상기 시퀀스 다이아그램에 도시되어 있는 바와 같이, 상기 WSB 호스트(101)에서 상기 WSB 서비스(101b)는 탐색될 서비스를 식별하는 서비스 네임(service name)을 포함하는 상기 서비스 검색()(SeekService ()) 프리미티브를 적용한다(501). 상기 WSB 클라이언트(100)에서 상기 WSB 서비스(100b)는 상기 ASP 계층(100c)로 광고한다(501). 상기 시나리오에서, 도시되어 있는 바와 같이, 상기 서비스는 상기 WSB 클라이언트(100)(일 예로, USB 주변 장치)와 연관된다. 상기 ASP 계층(101c)은 상기 P2P 인터페이스로 탐색 시작 요청(start discovery request)을 송신함으로써 상기 WSB 클라이언트(100)에 대한 탐색 프로세스를 시작한다(502). 또한, 상기 WSB 클라이언트(100)에 포함되어 있는 상기 ASP 계층(101c)은 여기에서 설명되는 바와 같이 상기 기존 시스템을 사용하여 상기 탐색 프로세스를 시작한다(502).
상기 ASP 계층(101c)은 디바이스 탐색의 일부로 상기 서비스 해쉬 값(service hash value)을 포함하는 상기 프로브 요청(Probe Request)을 송신한다(503). (상기 광고자라고도 알려져 있는) 상기 WSB 클라이언트(100)에 포함되어 있는 상기 ASP 계층(100c)은 상기 매칭된 서비스 해쉬를 기반으로 상기 Probe Request에 대해 응답하고, 풀 서비스 네임(full service name)을 가지는 프로브 응답(Probe Response)을 송신한다. 또한, 상기 WSB 호스트(101)에서 상기 WSB 서비스 계층(101b)은 상기 Service Discovery request를 개시하여 상기 USB 서비스에 대한 구체적인 정보를 획득한다. 상기 WSB 클라이언트(100)는 상기 USB 디바이스 정보, 일 예로 USB 디스크립터들 등을 포함하는 서비스 탐색 요청(Service Discovery request)에 응답한다. 상기 ASP 계층(101c)은 상기 검색 결과(SearchResult) 이벤트를 사용하여 상기 WSB 서비스(101b)로 상기 탐색된 정보를 이벤트 출력한다.
상기 WSB 서비스 계층(101b)은 지속 세션 연결()(ConnectPersistentSession())이라고 칭해지는, 새롭게 정의된 프리미티브를 사용하여, 상기 탐색된 WSB 클라이언트(100)(상기 USB 주변 장치 혹은 상기 광고자)와 상기 연결을 개시한다(504). 일 실시예에서, 상기 WSB 서비스 계층(101b)은 상기 새로운 지속 플래그(flag)를 가지는 기존 프리미티브 세션 연결(지속)(ConnectSession(Persistent))을 사용하여 상기 WSB 클라이언트(100)와의 지속 연결의 트리거(trigger)를 지시할 수 있다.
상기 ASP 계층(101c)이 탐색된 WSB 클라이언트(100)과의 연결에 대한 요청 및 지속 연결에 대한 요청을 수신할 때, 상기 ASP 계층(101c)은 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100)간의 지속 P2P 그룹을 생성함으로써 상기 WSB 클라이언트(100)와 상기 WSB 호스트(101)간의 P2P 연결을 개시한다(505). 상기 ASP 계층(101c)은 상기 도 5에 도시되어 있는 바와 같이 상기 WSB 클라이언트(100)와 상기 WSB 호스트간의 P2P 연결을 개시한다(506).
일 실시예에서, 상기 ASP 계층(101c)은 프로브 탐색(Probe Discovery: PD) 요청 메시지를 송신하여 상기 서비스 요청을 개시한다. 상기 PD 요청 메시지는 상기 지속 연결 요청을 포함한다. 추가적으로, 상기 ASP 계층(101c)은 또한 상기 지속 연결과 연관되는 고유 Service_ID를 생성한다. 상기 지속 연결과 연관되는 고유 Service_ID는 상기 PD 요청에 포함된다. 상기 ASP 계층들(상기 WSB 호스트 및 상기 WSB 클라이언트에서 APS 계층들(101c, 100c))은 계속하여 상기 연결을 성립하고, 상기 APS 계층들(101c, 100c) 둘 다는 상기 PD 요청 동안 교환되는 상기 service_ID와 연관되는 P2P 지속 그룹을 유지한다.
상기 연결이 성공적으로 개시되면, ASP 계층들(101c, 100c)은 상기 WSB 클라이언트(100) 및 상기 WSB 호스트(101)에서 WSB 서비스(101b, 100b)로 상기 연결 상태(ConnectStatus) 이벤트. 이 이벤트(ConnectStatus)는 상기 지속 USB 연결을 추가적으로 참조하여 상기 WSB 서비스 (101b, 100b)에 의해 유지될 상기 Service_ID 값을 포함한다. 또한, 상기 Service_ID는 상기 서비스 지속 정보를 P2P 그룹 지속성(persistency)에 매핑하기 위해 사용된다. 또한, ASP 세션은 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100)간에 개시된다(507).
일 실시예에서, 상기 MA USB enumeration이 상기 ASP 세션의 개시 후에 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100) 간에서 수행된다(508). 상기 WSB 호스트(101)에서 상기 WSB 서비스(101b)는 상기 모든 USB 정보, 일 예로 상기 모든 디스크립터들 및 상기 WSB 서비스(101b)와 연관되는 Service_ID를 저장한다(509). 또한, 상기 WSB 호스트(101)에서 상기 WSB 서비스(101b)는 또한 상기 MA-USB로 상기 USB 디스크립터들 및 상기 USB enumeration 프로세스 후에 연관되는 USB 어드레스를 유지하는 것을 알려준다.
상기 WSB 클라이언트(100)에서 상기 WSB 서비스(100b)는 또한 상기 USB 세션과 연관되는 모든 USB 정보 및 Service_ID를 저장한다(509). 또한, 상기 WSB 클라이언트(100)에서 상기 WSB 서비스(100b)는 또한 상기 MA-USB 스택으로 상기 USB enumeration 프로세스 후에 연관될 상기 USB 어드레스 값을 유지하는 것을 알려준다. 상기 WSB 클라이언트(100)에서 상기 ASP 계층들(101c, 100c)은 상기 지속 데이터와 함께 상기 Service_ID를 유지한다(510).
상기 WSB 서비스 계층들(101b, 100b)은 상기 USB 세션과의 연관성(USB 정보) 및 상기 Service_ID를 유지한다. 일 실시예에서, 상기 WSB 서비스(101b)와 MA_USB 스택(주로 상기 PAL 계층)간에는 인터페이스가 존재할 수 있다. 일 실시예에서, 상기 인터페이스는 상기 연관되는 정보를 저장할 수 있으며, 또한 상기 두 개의 계층들간의 정보를 포함하여 상기 MA-USB가 상기 USB 디스크립터 및 다른 요구되는 정보를 저장하도록 명령할 수 있다.
일 실시예에서, 상기 MA-USB 계층 및 WSB 서비스 계층은 상기 WSB 클라이언트(100) 및 WSB 호스트(101)에서 단일 엔터티(entity)가 될 수 있다.
상기 USB 데이터 트랜스퍼(transfer)는 상기 WSB 서비스(100b) 및 상기 WSB 서비스(101b)가 상기 USB 세션과 연관되는 상기 모든 USB 정보 및 Service_ID를 저장한 후 상기 WSB 호스트(101) 및 상기 WSB 클라이언트(100)간에서 시작된다(511).
상기 WSB 서비스가 상기 어플리케이션에 의해 명령되는 것과 같이, 이전에 개시되고, 지속적이 되도록 요청되는 연결을 재개할 필요가 있을 때, 상기 WSB 서비스(101b)는 상기 ASP 계층(101c)에게 상기 Service_ID와 연관되는 특정 지속 P2P 그룹에 대해 탐색하는 것(513)을 알려주는 지속 서비스 검색(Service_ID)((SeekPersistentService(Service_ID))이라고 칭해지는 상기 새로운 프리미티브 액션을 적용한다(512).
상기 ASP 계층(101c)은 P2P 인터페이스를 통해 상기 Probe Request를 적용하고(514), 상기 특정 P2P 서비스를 검출한다. 일 실시예에서, 상기 Probe Request는 상기 Service_ID와 함께 상기 P2P 그룹 식별자를 포함한다. 또한, 상기 WSB 호스트(100)는 상기 서비스 네임과 함께 연관되는 P2P 그룹 정보 및 매칭되는 Service_ID를 저장한다. 상기 WSB 클라이언트(100)에서 상기 ASP 계층(100c)은 상기 Probe Response로 응답한다(515).
일 실시예에서, 상기 WSB 서비스(101b)는 새롭게 정의된 어트리뷰트인, 상기 Service_ID를 포함하는 서비스 검색(Service_ID)(SeekSerivce(Service_ID))이라고 칭해지는 상기 기존 프리미티브 액션을 적용한다. 상기 WSB 서비스(101b)는 상기 ASP 계층에게 상기 Service_ID와 연관되는 특정 지속 P2P 그룹을 검출하는 것을 알려준다.
일 실시예에서, 상기 ASP 계층들(101c, 100c)는 서비스 탐색을 무시한다.
상기 WSB 호스트(101)에서 상기 WSB 서비스(101b)는 상기 ASP 계층(101c)에게 상기 이전의 지속 연결(P2P 그룹)을 시작하도록 (517) 지시하는 상기 ConnectPeristentSession(Service_ID)를 적용함으로써 상기 연결을 개시한다(516). 또한, 상기 WSB 클라이언트(100)에서 상기 ASP 계층(100c)은 상기 Service_ID 값을 포함하는 상기 서비스 요청(ServiceRequest) 이벤트를 송신하여 상기 WSB 호스트에게 상기 WSB 서비스를 적용하는 것을 지시한다.
상기 ASP 계층들(101c, 100c)은 상기 도 5와 함께 기존 시스템에 따라 연결을 지속한다(518). 상기 연결이 성립되면, 상기 WSB 클라이언트(100) 및 상기 WSB 호스트(101)에서 ASP 계층들(101c, 100c)은 상기 연결(ASP 세션) 절차들에서 상기 성공을 지시하는 (519) 상기 ConnectStatus 스테이트 변수를 이벤트 출력한다. 또한, 상기 USB 데이터 트랜스퍼는 상기 WSB 호스트(101)와 상기 WSB 클라이언트(100) 간에서 재개된다(520).
도 6은 여기에 개시되어 있는 실시예들에 따른, 상기 지속 USB 서비스를 제공하는 상기 WSB 호스트 및 상기 WSB 클라이언트를 구성하는 방법을 구현하는 컴퓨팅 환경(computing environment)을 도시하고 있는 도면이다. 상기 컴퓨팅 환경(601)에 도시되어 있는 바와 같이, 상기 컴퓨팅 환경(601)은 제어 유닛(602)과, 연산 논리 유닛(Arithmetic Logic Unit: ALU)(603)과, 메모리(605)와, 저장 유닛(606)와, 다수의 네트워킹 디바이스(networking device)들(608)과, 다수의 입력 출력(Input output: I/O) 디바이스들(607)을 구비하는, 적어도 하나의 프로세싱 유닛(processing unit)(604)을 포함한다. 상기 프로세싱 유닛(604)은 상기 알고리즘의 명령어들을 프로세싱한다. 상기 프로세싱 유닛(604)은 상기 프로세싱 유닛(604)의 프로세싱을 수행하기 위해 상기 제어 유닛으로부터 명령들을 수신한다. 또한, 상기 명령어들의 실행에 관련되는 논리 및 연산 동작들은 상기 ALU(603)의 도움으로 컴퓨팅된다.
상기 전체적인 컴퓨팅 환경(601)은 다수의 동종 및/혹은 이종 코어(core)들과, 다른 종류들의 다수의 CPU들과, 특정 미디어 및 다른 엑셀레이터(accelerator)들로 구성될 수 있다. 상기 프로세싱 유닛(604)은 상기 알고리즘의 명령어들을 프로세싱한다. 또한, 상기 다수개의 프로세싱 유닛들(604)은 단일 칩(chip) 혹은 다수의 칩들에 위치될 수 있다.
상기 구현을 위해 필요로 되는 명령어들 및 코드들로 구성되는 알고리즘은 상기 메모리 유닛(605) 혹은 상기 저장소(606) 혹은 상기 메모리 유닛(605) 및 상기 저장소(606) 둘 다에 저장된다. 실행 시점에서, 상기 명령어들은 상기 상응하는 메모리(605) 및/혹은 저장소(606)로부터 검출될 수 있고, 상기 프로세싱 유닛(604)에 의해 실행될 수 있다.
임의의 하드웨어 구현들의 경우에서, 다양한 네트워킹 디바이스들(608) 혹은 외부 I/O 디바이스들(607)은 상기 구현을 지원하기 위해 상기 네트워킹 유닛 및 상기 I/O 디바이스 유닛을 통해 상기 컴퓨팅 환경에 연결될 수 있다.
여기에서 개시되어 있는 실시예들은 적어도 하나의 하드웨어 디바이스(hardware device)에서 실행되고 상기 엘리먼트(element)들을 제어하는 네트워크 관리 기능들을 수행하는 적어도 하나의 소프트웨어 프로그램(software program)을 통해 구현될 수 있다. 도 1, 도 2, 도 5 및 도 6에 나타낸 바와 같은 엘리먼트들은 하드웨어 디바이스, 혹은 하드웨어 디바이스와 소프트웨어 모듈의 조합 중 적어도 하나가 될 수 있는 블록(block)들을 포함한다.
상기 특정 실시예들의 상기와 같은 설명은 타인들이 현재의 지식을 적용함으로써 다양한 어플리케이션(application)들에 대해 전체적인 컨셉트로부터 벗어남이 없이 상기 특정 실시예들을 용이하게 수정 및/혹은 적응할 수 있는 여기에서의 실시예들의 일반적인 특성을 완전하게 나타낼 것이고, 따라서 상기와 같은 적응들 및 수정들은 상기 개시되어 있는 실시예들의 등가물들의 의미 및 범위 내에서 이해되어야만 하고 이해되도록 의도된다. 여기서 사용되는 표현 및 용어는 설명의 목적을 위해서이며 한정되지는 않는다는 것이 이해된다. 따라서, 여기에서의 실시예들이 바람직한 실시예들의 측면에서 설명되었다고 할지라도, 해당 기술 분야의 통상의 지식을 가진 자들은 여기에서의 실시예들이 여기에서 설명된 바와 같은 실시예들의 사상 및 범위 내에서 수정되어 실현될 수 있다는 것을 인식할 것이다.

Claims (14)

  1. 무선 직렬 버스(Wireless Serial Bus: WSB) 클라이언트(client)로부터 지속(persistent) 범용 직렬 버스(Universal Serial Bus: USB) 서비스를 획득하는 WSB 호스트(host)를 구성하는 방법에 있어서:
    상기 WSB 호스트에 포함되어 있는 어플리케이션 서비스 프로토콜(Application Service Protocol: ASP) 계층이 상기 WSB 클라이언트를 탐색하는 과정과;
    상기 WSB 호스트에서 어플리케이션으로부터 상기 WSB 클라이언트와의 지속 USB 연결에 대한 요청을 수신하는 과정과;
    상기 ASP 계층이 상기 WSB 클라이언트와의 지속 USB 연결에 대한 지속 피어 투 피어(Peer-to-Peer: P2P) 그룹을 요청하는 과정과, 상기 ASP 계층은 상기 WSB 호스트와 상기 WSB 클라이언트 간의 상기 지속 P2P 그룹을 생성함으로써 상기 지속 USB 연결을 개시하고;
    상기 ASP 계층이 상기 지속 USB 연결에 서비스 식별자를 할당함으로써 상기 지속 USB 서비스와 상기 생성된 지속 P2P 그룹을 매핑하고, 상기 서비스 식별자를 상기 생성된 지속 P2P 그룹에 매핑하는 과정과;
    상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 매핑되는 서비스 식별자를 저장한 후 상기 WSB 클라이언트로부터 상기 지속 USB 서비스를 획득하는 과정을 포함함을 특징으로 하는 WSB 클라이언트로부터 지속 USB 서비스를 획득하는 WSB 호스트를 구성하는 방법.
  2. 제1항에 있어서,
    상기 요청은 파라미터를 가지는 연결 세션(ConnectSession)을 포함하며, 상기 파라미터는 상기 WSB 호스트가 지속 USB 연결을 개시하도록 지시함을 특징으로 하는 WSB 클라이언트로부터 지속 USB 서비스를 획득하는 WSB 호스트를 구성하는 방법.
  3. 제1항에 있어서,
    상기 WSB 클라이언트로부터 상기 지속 USB 서비스를 획득하는 과정은:
    상기 WSB 클라이언트에서 상기 지속 USB 서비스를 탐색하는 과정과;
    상기 WSB 클라이언트로 서비스 요청 이벤트(ServiceRequest Event)를 송신하는 과정과, 상기 ServiceRequest Event는 상기 서비스 식별자를 포함하며;
    상기 WSB 클라이언트로부터 상기 지속 USB 서비스를 획득하기 위해 상기 WSB 클라이언트와 상기 지속 USB 연결을 개시하는 과정을 포함함을 특징으로 하는 WSB 클라이언트로부터 지속 USB 서비스를 획득하는 WSB 호스트를 구성하는 방법.
  4. 제3항에 있어서,
    상기 WSB 클라이언트에서 상기 지속 USB 서비스를 탐색하는 과정은:
    상기 지속 USB 연결과 연관되는 서비스 식별자 및 상기 생성된 지속 P2P 그룹의 정보를 가지는 프로브 요청(Probe Request)을 송신하는 과정과;
    상기 지속 USB 서비스가 WSB 클라이언트에서 유용할 때 상기 WSB 클라이언트로부터 프로브 응답(Probe Response)을 수신하는 과정을 포함함을 특징으로 하는 WSB 클라이언트로부터 지속 USB 서비스를 획득하는 WSB 호스트를 구성하는 방법.
  5. 지속(persistent) 범용 직렬 버스(Universal Serial Bus: USB) 서비스를 무선 직렬 버스(Wireless Serial Bus: WSB) 호스트(host)로 제공하는 WSB 클라이언트(client)를 구성하는 방법에 있어서:
    상기 WSB 호스트로부터 지속 USB 연결에 대한 요청을 수신하는 과정과;
    어플리케이션 서비스 플랫폼(Application Service Platform: ASP) 계층에 의해 개시되는, 상기 WSB 호스트와 상기 지속 USB 연결에 대한 지속 피어 투 피어(Peer-to-Peer: P2P) 그룹을 생성하는 과정과;
    상기 WSB 호스트로부터 상기 지속 USB 연결 및 상기 생성된 지속 P2P 그룹에 연관되는 서비스 식별자를 수신하는 과정과;
    상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 연관되는 서비스 식별자를 저장하는 과정과;
    상기 지속 USB 서비스를 상기 WSB 호스트로 제공하는 과정을 포함함을 특징으로 하는 지속 USB 서비스를 WSB 호스트로 제공하는 WSB 클라이언트를 구성하는 방법.
  6. 제5항에 있어서,
    상기 지속 USB 서비스를 상기 WSB 호스트로 제공하는 과정은:
    상기 WSB 호스트로부터 프로브 요청(Probe Request)을 수신하는 과정과, 상기 Probe Request는 상기 지속 USB 연결에 대한 서비스 식별자와 상기 생성된 P2P 그룹의 정보를 포함하며;
    상기 지속 USB 서비스가 유용할 때 상기 WSB 호스트에 대한 프로브 응답(Probe Response)을 생성하는 과정을 포함함을 특징으로 하는 지속 USB 서비스를 WSB 호스트로 제공하는 WSB 클라이언트를 구성하는 방법.
  7. 제6항에 있어서,
    상기 WSB 호스트에 대한 Probe Response를 생성하는 과정은:
    상기 Probe Request에서 수신된, 상기 지속 USB 연결과 연관되는 서비스 식별자 및 상기 생성된 지속 P2P 그룹의 정보를 검색하는 과정과;
    상기 생성된 지속 P2P 그룹의 정보와, 상기 서비스 식별자 및 상기 생성된 지속 P2P 그룹과 연관되는, 상기 저장되어 있는 서비스 식별자간의 매치(match)를 결정하는 과정과;
    상기 매치를 결정하는 것에 대한 응답으로 프로브 응답(Probe Response)을 통해 상기 Probe Request에 대해 응답하고, 상기 WSB 호스트로부터 상기 지속 USB 연결 및 상기 생성된 지속 P2P 그룹과 연관되는 서비스 식별자를 수신하는 과정과;
    상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 연관되는 서비스 식별자를 저장한 후 상기 WSB 호스트로부터 상기 지속 USB 서비스를 획득하는 과정을 포함함을 특징으로 하는 지속 USB 서비스를 WSB 호스트로 제공하는 WSB 클라이언트를 구성하는 방법.
  8. 제7항에 있어서,
    상기 WSB 호스트로부터 상기 지속 USB 서비스를 획득하는 과정은:
    상기 WSB 클라이언트에 포함되어 있는 P2P 계층이 프로브 요청(Probe Request)을 송신하는 과정을 포함하며,
    상기 Probe Request은 상기 생성된 지속 P2P 그룹과 연관되는 서비스 식별자와 함께 상기 생성된 지속 P2P 그룹의 식별자를 포함함을 특징으로 하는 지속 USB 서비스를 WSB 호스트로 제공하는 WSB 클라이언트를 구성하는 방법.
  9. 제7항에 있어서,
    상기 WSB 호스트로부터 상기 지속 USB 서비스를 획득하는 과정은:
    상기 서비스 식별자와 함께 상기 생성된 지속 P2P 그룹의 식별자가 상기 WSB 호스트에서 상기 생성된 지속 P2P 그룹과 함께 상기 저장되어 있는 서비스 식별자와 매칭될 때, 상기 Probe Request에 대한 프로브 응답(Probe Response)을 생성하는 과정을 포함함을 특징으로 하는 지속 USB 서비스를 WSB 호스트로 제공하는 WSB 클라이언트를 구성하는 방법.
  10. 제7항에 있어서,
    상기 WSB 호스트로부터 상기 지속 USB 서비스를 획득하는 과정은:
    상기 서비스 식별자를 가지는 지속 세션 연결(ConnectPersistentSession)을 적용하는 과정을 포함하며,
    상기 ConnectPersistentSession은 상기 WSB 호스트의 ASP 계층에게 상기 WSB 호스트에게 상기 지속 USB 서비스를 제공하기 위해 상기 지속 USB 연결을 개시하도록 지시함을 특징으로 하는 지속 USB 서비스를 WSB 호스트로 제공하는 WSB 클라이언트를 구성하는 방법.
  11. WSB 클라이언트(client)로부터 지속 범용 직렬 버스(Universal Serial Bus: USB) 서비스를 획득하는 WSB 호스트(host)에 있어서,
    상기 WSB 호스트는 MA USB(Media Agnostic USB) 계층과, WSB 계층 및 어플리케이션 서비스 플랫폼(Application Service Platform: ASP) 계층을 포함하며,
    상기 WSB 호스트는 적어도 하나의 프로세서를 더 포함하는 집적 회로와;
    상기 회로 내의 컴퓨터 프로그램 코드를 가지는 적어도 하나의 메모리를 포함하며,
    상기 적어도 하나의 프로세서와, 상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 WSB 호스트가:
    상기 WSB 호스트에 포함되어 있는 어플리케이션 서비스 프로토콜(Application Service Protocol: ASP) 계층이 상기 WSB 클라이언트를 탐색하고;
    상기 WSB 호스트에서 어플리케이션으로부터 상기 WSB 클라이언트와의 지속 USB 연결에 대한 요청을 수신하고;
    상기 ASP 계층이 상기 WSB 클라이언트와의 지속 USB 연결에 대한 지속 피어 투 피어(Peer-to-Peer: P2P) 그룹을 요청하고, 상기 ASP 계층은 상기 WSB 호스트와 상기 WSB 클라이언트 간의 상기 지속 P2P 그룹을 생성함으로써 상기 지속 USB 연결을 개시하고;
    상기 ASP 계층이 상기 지속 USB 연결에 서비스 식별자를 할당함으로써 상기 지속 USB 서비스와 상기 생성된 지속 P2P 그룹을 매핑하고, 상기 서비스 식별자를 상기 생성된 지속 P2P 그룹에 매핑하고;
    상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 매핑되는 서비스 식별자를 저장한 후 상기 WSB 클라이언트로부터 상기 지속 USB 서비스를 획득하도록 함을 특징으로 하는 WSB 클라이언트로부터 지속 USB 서비스를 획득하는 WSB 호스트.
  12. 제11항에 있어서,
    청구항 2 내지 청구항 4 중 하나에 따라 동작하도록 구성되는 WSB 호스트.
  13. WSB 호스트(host)로 지속 범용 직렬 버스(Universal Serial Bus: USB) 서비스를 제공하는 WSB 클라이언트(client)에 있어서,
    상기 WSB 클라이언트는 MA USB (Media Agnostic USB) 계층과, WSB 계층 및 어플리케이션 서비스 플랫폼(Application Service Platform: ASP) 계층과;
    적어도 하나의 프로세서를 더 포함하는 집적 회로와;
    상기 회로 내의 컴퓨터 프로그램 코드를 가지는 적어도 하나의 메모리를 포함하며,
    상기 적어도 하나의 프로세서와, 상기 적어도 하나의 메모리 및 상기 컴퓨터 프로그램 코드는 상기 WSB 클라이언트가:
    상기 WSB 호스트로부터 지속 USB 연결에 대한 요청을 수신하고;
    어플리케이션 서비스 플랫폼(Application Service Platform: ASP) 계층에 의해 개시되는, 상기 WSB 호스트와 상기 지속 USB 연결에 대한 지속 피어 투 피어(Peer-to-Peer: P2P) 그룹을 생성하고;
    상기 WSB 호스트로부터 상기 지속 USB 연결 및 상기 생성된 지속 P2P 그룹에 연관되는 서비스 식별자를 수신하고;
    상기 생성된 지속 P2P 그룹 및 상기 지속 USB 연결과 연관되는 서비스 식별자를 저장하고;
    상기 지속 USB 서비스를 상기 WSB 호스트로 제공하도록 하는 WSB 호스트로 지속 USB 서비스를 제공하는 WSB 클라이언트.
  14. 제13항에 있어서,
    청구항 6 내지 청구항 10 중 하나에 따라 동작하도록 구성되는 WSB 클라이언트.
KR1020167007443A 2013-08-21 2014-08-21 무선 usb 디바이스들에 대해 지속 usb 서비스를 제공하는 방법 및 장치 KR102177724B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
IN3688/CHE/2013 2013-08-21
IN3688CH2013 2013-08-21
PCT/KR2014/007779 WO2015026179A1 (en) 2013-08-21 2014-08-21 Method and apparatus for providing a persistent usb service for wireless usb devices

Publications (2)

Publication Number Publication Date
KR20160045845A KR20160045845A (ko) 2016-04-27
KR102177724B1 true KR102177724B1 (ko) 2020-11-11

Family

ID=52483894

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167007443A KR102177724B1 (ko) 2013-08-21 2014-08-21 무선 usb 디바이스들에 대해 지속 usb 서비스를 제공하는 방법 및 장치

Country Status (5)

Country Link
US (1) US10404812B2 (ko)
EP (1) EP3036922B1 (ko)
KR (1) KR102177724B1 (ko)
CN (1) CN105474669B (ko)
WO (1) WO2015026179A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016068632A1 (ko) * 2014-10-29 2016-05-06 엘지전자 주식회사 무선 통신 시스템에서 와이파이 다이렉트를 지원하는 장치가 디스커버리를 수행하는 방법 및 장치
US20160142900A1 (en) * 2014-11-17 2016-05-19 Qualcomm Incorporated Wireless serial bus service continuity
WO2016148406A1 (ko) * 2015-03-16 2016-09-22 엘지전자 주식회사 무선 통신 시스템에서 어플리케이션 서비스 플랫폼을 이용하여 서비스를 지원하는 방법 및 장치
US10635606B2 (en) 2015-11-09 2020-04-28 Samsung Electronics Co., Ltd Method and apparatus for maintaining continuity of on-going session over wired or wireless interface
US20170286356A1 (en) * 2016-04-01 2017-10-05 Intel Corporation Enhanced quality of service mechanism for ma usb protocol
KR102516019B1 (ko) 2017-09-11 2023-03-30 삼성전자주식회사 외부 전자 장치와 통신하는 전자 장치 및 방법
KR102092252B1 (ko) 2017-11-02 2020-03-23 지앨에스 주식회사 Usb 커넥터 프리 장치 및 방법
KR20190069247A (ko) * 2017-12-11 2019-06-19 삼성전자주식회사 외부 전자 장치와의 통신을 위한 전자 장치
US20200028713A1 (en) * 2018-07-16 2020-01-23 Dwight L. Stewart Computer system having controller configured to create data tunnel based on device information
WO2020022728A1 (ko) * 2018-07-25 2020-01-30 엘지전자 주식회사 Ma-usb 연결을 지원하기 위한 방법 및 이를 이용한 무선 장치
CN110149403A (zh) * 2019-05-23 2019-08-20 中国联合网络通信集团有限公司 业务实现方法和业务实现系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1940080A2 (en) 2006-12-28 2008-07-02 Samsung Electronics Co., Ltd. Method of creating and managing session between wireless universal serial bus host and wireless universal serail bus device and providing wireless universal serial bus host and wireless universal serial bus device
US20090031061A1 (en) 2007-07-23 2009-01-29 Samsung Electronics Co., Ltd Host apparatus capable of connecting with at least one device using wusb and method of connecting host apparatus to device
US20090089476A1 (en) 2007-09-28 2009-04-02 Seung-Hwan Oh Wireless universal serial bus system and driving method thereof
US20140334464A1 (en) 2013-05-08 2014-11-13 Emily H. Qi Apparatus, system and method of setting up an application service platform (asp) peer to peer (p2p) group
US20140337544A1 (en) 2013-05-08 2014-11-13 Qualcomm Incorporated Transport mode for wireless serial bus (wsb) service

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060149858A1 (en) * 2004-12-30 2006-07-06 Microsoft Corporation Establishing wireless universal serial bus (WUSB) connection via a trusted medium
JP4856700B2 (ja) * 2005-06-10 2012-01-18 マイクロソフト コーポレーション トラステッド媒体を介した無線ユニバーサルシリアルバス(wusb)接続の確立
KR20080020788A (ko) * 2006-09-01 2008-03-06 엘지전자 주식회사 무선 usb를 이용한 특정 파일의 멀티 다운로드 기능을구비한 시스템 및 그 제어방법
KR101141276B1 (ko) 2007-06-04 2012-05-04 삼성전자주식회사 무선 usb를 이용하여 디바이스와 접속 가능한 호스트장치의 통신 방법 및 호스트 장치와 디바이스를 포함하는무선 접속 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1940080A2 (en) 2006-12-28 2008-07-02 Samsung Electronics Co., Ltd. Method of creating and managing session between wireless universal serial bus host and wireless universal serail bus device and providing wireless universal serial bus host and wireless universal serial bus device
US20090031061A1 (en) 2007-07-23 2009-01-29 Samsung Electronics Co., Ltd Host apparatus capable of connecting with at least one device using wusb and method of connecting host apparatus to device
US20090089476A1 (en) 2007-09-28 2009-04-02 Seung-Hwan Oh Wireless universal serial bus system and driving method thereof
US20140334464A1 (en) 2013-05-08 2014-11-13 Emily H. Qi Apparatus, system and method of setting up an application service platform (asp) peer to peer (p2p) group
US20140337544A1 (en) 2013-05-08 2014-11-13 Qualcomm Incorporated Transport mode for wireless serial bus (wsb) service

Also Published As

Publication number Publication date
EP3036922A4 (en) 2017-04-19
CN105474669B (zh) 2019-01-25
EP3036922A1 (en) 2016-06-29
WO2015026179A1 (en) 2015-02-26
EP3036922B1 (en) 2018-07-11
US20160212226A1 (en) 2016-07-21
US10404812B2 (en) 2019-09-03
CN105474669A (zh) 2016-04-06
KR20160045845A (ko) 2016-04-27

Similar Documents

Publication Publication Date Title
KR102177724B1 (ko) 무선 usb 디바이스들에 대해 지속 usb 서비스를 제공하는 방법 및 장치
US9307022B2 (en) Apparatus and method for determining group owner in establishment of Wi-Fi direct connection
JP5985767B2 (ja) 近接場通信を用いたピア・ツー・ピアWi−Fiレンジングのための方法および装置
US11297171B2 (en) Method and apparatus for edge computing service
KR101736325B1 (ko) 주변기기들로의 직접 접속에 의한 무선 도킹 서비스
KR101876533B1 (ko) 도키-중심 무선 도킹
JP5951918B1 (ja) ワイヤレスシリアルバス(wsb)サービスのためのトランスポートモード
EP3217758B1 (en) Establishment of a wireless connection between a first device and a second device
RU2603496C2 (ru) Беспроводной сетевой интерфейс с инфраструктурными и прямыми режимами
US11057360B2 (en) Electronic device performing reconnection of short-range communication and method for operating the same
KR102257121B1 (ko) 무선 환경에서의 이중 역할 처리를 위한 방법 및 시스템
US8515350B2 (en) Resolving an application service change in a system using bluetooth
KR102652380B1 (ko) 블루투스 네트워크 환경에서 응답 메시지를 전송하기 위한 전자 장치 및 그에 관한 방법
US20220030459A1 (en) Method for providing low latency communication for extended reality service and electronic device therefor
CN111787540A (zh) 接入物联网的方法、装置、电子设备及可读存储介质
EP3700169B1 (en) Electronic device for communicating with external electronic device
KR20200106317A (ko) 엣지 컴퓨팅 환경에서 어플리케이션 재배치를 제어하기 위한 장치 및 방법
US20170103009A1 (en) Monitoring a device status for an application
US11281599B2 (en) Shared peripheral devices
CN114697933A (zh) iOS设备的热点连接方法、存储介质、iOS设备及连接系统

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