KR101462322B1 - 동작 조건들에 기초하여 동적 광고 및 발견 기간을 갖는 피어-투-피어 네트워킹 환경에서의 효율적인 서비스 광고 및 발견 - Google Patents

동작 조건들에 기초하여 동적 광고 및 발견 기간을 갖는 피어-투-피어 네트워킹 환경에서의 효율적인 서비스 광고 및 발견 Download PDF

Info

Publication number
KR101462322B1
KR101462322B1 KR1020127016367A KR20127016367A KR101462322B1 KR 101462322 B1 KR101462322 B1 KR 101462322B1 KR 1020127016367 A KR1020127016367 A KR 1020127016367A KR 20127016367 A KR20127016367 A KR 20127016367A KR 101462322 B1 KR101462322 B1 KR 101462322B1
Authority
KR
South Korea
Prior art keywords
service
advertisement
discovery
period
advertiser
Prior art date
Application number
KR1020127016367A
Other languages
English (en)
Other versions
KR20120094946A (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 KR20120094946A publication Critical patent/KR20120094946A/ko
Application granted granted Critical
Publication of KR101462322B1 publication Critical patent/KR101462322B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • 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
    • 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/56Provisioning of proxy services
    • H04L67/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • 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/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/08Access restriction or access information delivery, e.g. discovery data delivery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/005Discovery of network devices, e.g. terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0212Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave
    • H04W52/0216Power saving arrangements in terminal devices managed by the network, e.g. network or access point is master and terminal is slave using a pre-established activity schedule, e.g. traffic indication frame
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W92/00Interfaces specially adapted for wireless communication networks
    • H04W92/16Interfaces between hierarchically similar devices
    • H04W92/18Interfaces between hierarchically similar devices between terminal devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Abstract

무선 네트워크에 결합된 로컬 장치는 동작 조건들을 모니터링하도록 구성되어 있다. 광고 기간이 로컬 장치의 동작 조건들에 기초하여 동적으로 조정되고, 광고 기간이 로컬 장치의 배터리 조건, 로컬 장치의 사용자 거동, 네트워크 트래픽 조건, 및 광고될 서비스의 유형 중 적어도 하나에 기초하여 동적으로 조정된다. 로컬 장치는 조정된 광고 기간에 따라 무선 네트워크에서 서비스 광고 - 서비스 광고는 로컬 장치로부터 광고될 하나 이상의 서비스를 식별하는 하나 이상의 서비스 ID를 포함함 - 를 브로드캐스트한다.

Description

동작 조건들에 기초하여 동적 광고 및 발견 기간을 갖는 피어-투-피어 네트워킹 환경에서의 효율적인 서비스 광고 및 발견{EFFICIENT SERVICE ADVERTISEMENT AND DISCOVERY IN A PEER-TO-PEER NETWORKING ENVIRONMENT WITH DYNAMIC ADVERTISEMENT AND DISCOVERY PERIODS BASED ON OPERATING CONDITIONS}
관련 출원
이 출원은 2009년 12월 23일자로 출원된 미국 가특허 출원 제61/289,689호를 기초로 우선권을 주장하며, 이 미국 출원은 참조 문헌으로서 그 전체 내용이 본 명세서에 포함된다.
본 발명의 실시예는 일반적으로 피어-투-피어 네트워킹의 분야에 관한 것이며, 보다 상세하게는, 피어-투-피어 네트워킹 환경에서의 서비스 광고 및 서비스 발견에 관한 것이다.
전자 장치, 컴퓨팅 시스템, 휴대용 장치 및 핸드헬드 장치와 같은 장치는 게임 응용 프로그램과 같은 소프트웨어 응용 프로그램을 가진다. 이들 응용 프로그램 중 일부는 공유된다 - 예를 들어, 다수의 장치가 협업적 방식으로 게임 응용 프로그램에 참여할 수 있다 -. 응용 프로그램의 공유된 기능은 서비스라고 할 수 있다. 장치가 다른 장치에 의해 제공되는 서비스를 사용할 수 있기 전에, 참여측 장치(발견자)는 네트워크 상에서 이용가능한 이러한 서비스를 발견해야만 한다. 서비스가 네트워크 상의 원격 장치(즉, 광고주)에 의해 광고된다.
네트워크에 연결되어 있거나 연결하려고 시도하는 전자 장치에 대해 다양한 발견 기법이 이용가능하다. 이들 발견 기법은 통상적으로 어느 장치 및/또는 서비스가 네트워크 연결을 통해 이용가능한지를 판정하기 위해 네트워크 프로토콜의 사용을 수반한다. 이들 발견 기법이 많은 상황에서 유용하다. 그렇지만, 특정의 상황에서, 이들 발견 기법은 최적이 아니다.
통상적으로, 네트워크 내의 각각의 장치는, 예를 들어, 100 밀리초(ms) 내지 800 ms 기간 범위 내에서와 같이, 흔히 알려진 스캐닝 및 광고 스케줄에 따라 네트워크에서 서비스를 주기적으로 스캔 및/또는 광고하도록 구성되어 있다. 많은 장치가 네트워크에서 가까이 위치해 있을 때, 이러한 스캐닝 및/또는 광고 전략은 효율적이지 않을 수 있는데, 그 이유는 극심한 통신 채널 혼잡이 있을 수 있고, 그로 인해 장치가 다른 장치의 서비스를 발견하는 데 및/또는 서비스를 광고하는 데 긴 기간이 소요되기 때문이다. 이러한 시나리오에서, 신뢰할 수 있는 서비스 발견을 보장하기 위해 스캐닝하는 데 부가의 시간이 소비될 필요가 있을 것이다. 스캐닝하는 데 부가의 시간을 소비하는 것은 휴대용 전자 장치에서의 중요한 자원인 전력을 보다 많이 소모한다. 게다가, 빈번한 발견 스캐닝 및 광고 전송은 그 자체가 휴대용 장치에 중요한 전력을 더 많이 소모할 수 있다. 휴대용 장치에 대한 서비스 발견 및/또는 광고를 최적화하는 효율적인 방식이 없었다.
일부 실시예에 따르면, 장치[예컨대, 노트북, 휴대폰/스마트폰, 미디어 플레이어, PDA(personal digital assistant) 또는 이들의 조합과 같은 휴대용 전자 장치]가 무선 네트워크(예컨대, IEEE 802.11 또는 WiFi, 블루투스 호환 네트워크와 같은 개인 영역 네트워크)에서 하나 이상의 서비스를 효율적으로 발견 및/또는 광고할 수 있게 해주기 위해 서비스 발견 및 광고 메커니즘이 이용된다.
일 실시예에서, 제1 장치가 무선 네트워크에서 하나 이상의 서비스를 광고할 때, 제1 장치는 네트워크에서 광고 메시지(단순히 광고라고도 함)를 브로드캐스트 또는 멀티캐스트하고, 여기서 광고는 하나 이상의 서비스 식별자(예컨대, 해시) - 각각이 제1 장치로부터 잠재적으로 이용가능한 특정의 서비스를 식별해줌 - 를 포함한다. 광고는 제1 장치의 가용성(가용성 스케줄 등)에 관한 정보 - 제1 장치는 광고에 관한 어떤 서비스 요청이 있는지 네트워크에서 리스닝하고 있을 것임 - 를 추가로 포함한다. 그 후에, 제1 장치는, 가용성 정보(예컨대, 가용성 스케줄)에 따라 차후의 특정의 기간까지, 제1 장치의 적어도 일부분 - RF(radio frequency) 부분(예컨대, 송수신기, 안테나) 등- 을 턴오프시키거나 그에 대한 전력을 감소시킬 것이다. 다른 대안으로서, 제1 장치는 그 기간 동안 어떤 다른 작업을 수행할 수 있다.
네트워크 상의 제2 장치가 광고를 수신할 때, 제2 장치는 광고에서의 서비스 식별자에 기초하여 제1 장치로부터 광고된 서비스들 중 하나 이상의 서비스를 획득하는 데 관심이 있는지를 판정할 수 있다. 관심이 있는 경우, 제2 장치는 제1 장치의 가용성 정보를 사용하여 서비스 요청을 제1 장치로 전송할 수 있고, 여기서 서비스 요청은 하나 이상의 선택된 서비스의 서비스 식별자를 포함한다. 예를 들어, 제2 장치는 제1 장치의 가용성 스케줄에 따라(예컨대, 제1 장치가 리스닝하고 있는 제1 장치의 가용성 윈도우 동안) 서비스 요청을 전송할 수 있다. 서비스 요청에 응답하여, 제1 장치는 요청된 서비스에 관한 더 상세한 정보를 제2 장치로 전송할 수 있다.
다른 실시예에 따르면, 네트워크 내의 각각의 장치는 각자의 장치의 동작 환경은 물론, 네트워크에서의 네트워크 트래픽도 모니터링하도록 구성되어 있다. 모니터링의 결과에 기초하여, 장치는 그의 광고 기간 및/또는 서비스 발견 기간을 동적으로 조정할 수 있다. 예를 들어, 장치가 배터리 수명이 얼마 남아 있지 않은 경우, 장치는 서비스 광고 및 서비스 발견의 빈도수를 감소(예컨대, 서비스 광고 및/또는 발견 기간을 증가)시킬 수 있다. 다른 일례로서, 통신 채널 혼잡이, 예를 들어, 네트워크 내의 많은 수의 장치로 인해, 비교적 높은 것으로 판정되는 경우, 장치는 또한 서비스 광고 및/또는 발견 기간을 그에 따라 조정할 수 있다[예컨대, 네트워크의 혼잡 붕괴(congestion collapse)를 피하기 위해 서비스 광고 및/또는 발견 기간을 증가시킬 수 있음].
일 실시예에서, 서비스 광고 기간 및/또는 서비스 발견 기간이 소정의 기본값의 배수에 기초하여 계산된다. 그렇지만, 서비스 발견 기간이 서비스 광고 기간의 배수이도록 구성되어 있지 않거나, 그 반대도 마찬가지이다. 그 결과, 광고주 및/또는 발견자가 그 자신의 서비스 광고 기간 및/또는 서비스 발견 기간을 독립적으로 계산할 수 있지만, 광고주로부터의 광고가 여전히 서비스 광고 기간 및/또는 서비스 발견 기간의 특정의 계산에 의존적인 기간에 걸쳐 발견자에 의해 포착될 것이다.
추가의 실시예에 따르면, 하나 이상의 서비스를 광고할 수 있는 다수의 장치가 다른 장치 대신하여 서비스를 광고할 장치들 중 하나 이상의 장치를 선택하기 위해 서로 협조할 수 있다. 이러한 장치는 그룹 광고주로서 역할한다. 장치가 각각의 장치의 모니터링 논리에 의해 모니터링되는 각종의 파라미터(예컨대, 배터리 상태 등)에 따라 그룹 광고주로서 선택될 수 있다. 장치는 그 자신의 서비스를 광고하는 광고주 및/또는 네트워크 내의 다른 장치의 서비스를 광고하는 그룹 광고주로서 동작할 수 있다. 장치는 또한 그 자신의 서비스를 광고하는 광고주로서 동작할 수 있음은 물론, 그 자신의 서비스들 중 하나 이상의 서비스가 다른 장치에 의해 광고되는 피광고주(advertisee)일 수 있다. 장치는 또한 그의 서비스를 광고하기 위해 다른 장치에 의존하는 피광고주로서만 동작할 수 있다.
본 발명의 다른 특징들이 첨부 도면 및 이하의 상세한 설명으로부터 명백하게 될 것이다.
유사한 참조 번호가 유사한 구성요소를 나타내고 있는 첨부 도면의 도면들에, 본 발명의 실시예가 제한이 아닌 예로서 도시되어 있다.
도 1은 본 발명의 실시예에서 구현될 수 있는 네트워크 구성을 나타낸 도면.
도 2는 본 발명의 일 실시예에 따른 전자 장치의 일례를 나타낸 블록도.
도 3은 일 실시예에 따른 서비스 광고 트랜잭션 흐름의 일례를 나타낸 흐름도.
도 4는 일 실시예에 따른 서비스 광고의 타임라인도.
도 5는 일 실시예에 따른 광고 메시지의 일례를 나타낸 블록도.
도 6은 일 실시예에 따른, 서비스를 광고하는 방법의 일례를 나타낸 흐름도.
도 7은 일 실시예에 따른, 서비스를 발견하는 방법의 일례를 나타낸 흐름도.
도 8은 본 발명의 다른 실시예에 따른 전자 장치를 나타낸 블록도.
도 9는 일 실시예에 따른 광고 기간 및 발견 기간을 나타낸 타임라인도.
도 10은 본 발명의 다른 실시예에 따른, 서비스를 광고하는 방법을 나타낸 흐름도.
도 11은 본 발명의 다른 실시예에 따른, 서비스를 발견하는 방법을 나타낸 흐름도.
도 12는 본 발명의 다른 실시예에 따른 전자 장치를 나타낸 블록도.
도 13a 내지 도 13c는 본 발명의 일부 실시예에 따른, 광고 동작 상태들 간의 장치의 천이의 일례를 나타낸 천이도.
도 14는 본 발명의 일 실시예에 따른 그룹 광고 메시지를 나타낸 블록도.
도 15는 장치가 다른 장치에게 그룹 광고주로서 역할하여 그를 대신하여 서비스를 광고하도록 요청하는 방법을 나타낸 흐름도.
도 16은 장치가 그룹 광고주가 되어 다른 장치를 대신하여 서비스를 광고하기 시작하는 방법을 나타낸 흐름도.
도 17은 본 발명의 일 실시예에 따른, 그룹 광고주를 선택하는 방법을 나타낸 흐름도.
도 18은 본 발명의 일 실시예에서 사용될 수 있는 데이터 처리 시스템의 일례를 나타낸 도면.
본 발명의 다양 상세를 참조하여 기술될 것이고, 첨부 도면은 다양한 실시예를 나타낼 것이다. 이하의 설명 및 도면은 본 발명을 예시한 것이며 본 발명을 제한하는 것으로 해석되어서는 안된다. 본 발명의 다양한 실시예에 대한 완전한 이해를 제공하기 위해 다수의 구체적인 상세가 기술되어 있다. 그렇지만, 어떤 경우에, 본 발명의 실시예에 대한 간결한 설명을 제공하기 위해 공지된 또는 종래의 상세는 기술되어 있지 않다.
본 명세서에서 "일 실시예" 또는 "실시예"라는 말은 그 실시예와 관련하여 기술된 특정의 특징, 구조 또는 특성이 본 발명의 적어도 하나의 실시예에 포함되어 있을 수 있다는 것을 의미한다. 본 명세서의 여러 곳에서 나오는 "일 실시예에서"라는 문구들 모두가 꼭 동일한 실시예를 말하는 것은 아니다. 첨부 도면들에 도시된 프로세스가 하드웨어(예를 들어, 회로, 전용 논리, 기타), 소프트웨어, 또는 이 둘의 조합을 포함하는 처리 논리(processing logic)에 의해 수행된다. 이하에서 프로세스가 어떤 순차적 동작들로 기술되어 있지만, 기술된 동작들 중 일부가 다른 순서로 수행될 수 있다는 것을 잘 알 것이다. 게다가, 일부 동작들이 순차적으로보다는 병렬로 수행될 수 있다.
정의
Figure 112012049998657-pct00001
광고주 - 그 자신의 서비스들 중 하나 이상의 서비스를 광고하는 장치.
Figure 112012049998657-pct00002
그룹 광고주 - 하나 이상의 다른 장치를 대신하여 하나 이상의 서비스를 광고하는 장치. 그룹 광고주는 또한 그 자신의 서비스(있는 경우)도 광고한다.
Figure 112012049998657-pct00003
피광고주 - 그의 서비스가 네트워크 상의 다른 장치(즉, 그룹 광고주 - 그 자신을 포함하지 않음 -)에 의해 광고되는 장치.
Figure 112012049998657-pct00004
발견자 - 네트워크 상에서 하나 이상의 서비스를 발견하려고 시도하는 장치.
Figure 112012049998657-pct00005
가용성 윈도우(Availability Window) - 장치가 네트워크 상에서 이용가능하고 리스닝하며 서비스 발견 요청, 광고 요청 및 기타 요청에 응답할 수 있는 기간.
Figure 112012049998657-pct00006
가용성 스케줄(Availability Schedule) - 장치가 서비스 요청에 응답할 수 있게 될 시간. 광고 메시지에 포함되어 있는 경우, 이것은 장치의 가용성 윈도우(들)의 시간 및 폭을 나타낸다.
Figure 112012049998657-pct00007
광고/광고 메시지 - 이용가능한 서비스에 관한 정보를 포함하는, 광고주에 의해 주기적으로 전송되는 브로드캐스트/멀티캐스트 프레임.
Figure 112012049998657-pct00008
그룹 광고/그룹 광고 메시지 - 그 자신의 서비스(있는 경우)는 물론, 네트워크 상의 다른 장치에서 이용가능한 서비스에 관한 정보를 포함하는, 그룹 광고주에 의해 주기적으로 전송되는 브로드캐스트/멀티캐스트 프레임.
Figure 112012049998657-pct00009
광고 요청/광고 요청 메시지 - 수신자에게 그룹 광고주로서 역할하여 송신자를 대신하여 서비스를 광고하도록 요청하는, 장치에 의해 다른 장치로 전송되는 메시지.
Figure 112012049998657-pct00010
광고 응답/광고 응답 메시지 - 송신자가 초기 요청 메시지를 존중하여 그룹 광고주로서 역할할지를 나타내는, 광고 요청 메시지에 응답하여 장치에 의해 다른 장치로 전송되는 메시지.
Figure 112012049998657-pct00011
서비스 요청/서비스 요청 메시지 - 제공된 ID(들)에 매칭하는 서비스(들)에 관한 상세한 정보를 요청하는 광고주로 발견자에 의해 전송되는 메시지.
Figure 112012049998657-pct00012
서비스 응답/서비스 응답 메시지 - 하나 이상의 서비스에 관한 상세한 정보를 제공하는 발견자로 광고주/그룹 광고주에 의해 전송되는 메시지.
Figure 112012049998657-pct00013
광고 기간 - 광고주에 의한 광고 프레임의 연속적인 전송 사이의 시간 구간.
Figure 112012049998657-pct00014
발견 기간 - 발견자에 의한 연속적인 발견 시도 사이의 시간 구간.
도 1은 본 발명의 실시예에서 구현될 수 있는 네트워크 구성을 나타낸 것이다. 도 1을 참조하면, 네트워크 구성(100)은 IEEE 802.11(예컨대, WiFi) 또는 PAN(personal area network, 개인 영역 네트워크) 호환 네트워크(예컨대, 블루투스)와 같은 무선 네트워크일 수 있는 네트워크(104)에 통신 연결된 다수의 전자 장치(101 내지 103)를 포함한다. 장치들(101 내지 103) 중 임의의 장치는, 예를 들어, 휴대용 컴퓨팅 장치(예컨대, 미국 캘리포니아주 쿠퍼티노 소재의 Apple Inc.의 맥북™과 같은 노트북/넷북 컴퓨터), 태블릿 PC(예컨대, Apple Inc.의 아이패드™), 휴대폰/스마트폰(예컨대, Apple Inc.의 아이폰™), 미디어 플레이어(예컨대, Apple Inc.의 아이팟™), PDA, 복사기/프린터/스캐너/모뎀/팩시밀리 장치, 또는 이들의 조합과 같은 휴대용 장치들 중 임의의 것일 수 있다. 다른 대안으로서, 장치들(101 내지 103) 중 임의의 장치는 무선 네트워크 내의 다른 장치와 무선으로 통신할 수 있는 무선 통신 인터페이스[예컨대, 내장형(built-in) 또는 플러그인형(plugged-in) 송수신기 또는 RF 프런트 엔드]를 갖는 데스크톱 컴퓨터 또는 기타 비휴대용 장치일 수 있다.
장치들(101 내지 103) 각각은 서비스 광고 논리[예컨대, 각각, 논리(105 내지 107)] 및 서비스 발견 논리[예컨대, 각각, 논리(108 내지 110)] - 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합으로 구현될 수 있음 - 를 포함한다. 서비스 광고 논리는 네트워크(104) 내의 로컬 장치의 하나 이상의 서비스를 광고하는 일을 맡고 있는 반면, 서비스 발견 논리는 네트워크(104) 내의 하나 이상의 원격 장치로부터 이용가능한 하나 이상의 서비스를 발견하는 일을 맡고 있다. 장치들(101 내지 103)은 각종의 무선 통신 프로토콜(예를 들어, WiFi 또는 블루투스 호환 프로토콜 등)을 사용하여 네트워크(104)에서 하나 이상의 서비스를 광고 및/또는 발견할 수 있다. 개인 영역 네트워크 프로토콜을 사용한 서비스 발견에 관한 추가의 상세한 정보는 2009년 3월 16일자로 출원된, 발명의 명칭이 "개인 영역 네트워크 프로토콜을 이용한 서비스 발견 기능(Service Discovery Functionality Utilizing Personal Area Network Protocols)"인 동시 계류 중인 미국 특허 출원 제12/405,130호(참조 문헌으로서 그 전체 내용이 본 명세서에 포함됨)에서 찾아볼 수 있다.
하나의 장치(광고주라고도 함)로부터의 서비스의 광고의 목적은 특정의 서비스가 그 특정의 장치로부터 잠재적으로 이용가능하다는 것을 네트워크 내의 다른 장치에 알려주거나 네트워크 내의 다른 장치(발견자라고도 함)가 발견할 수 있게 해주는 것이다. 또한, 본 출원 전체에 걸쳐, 본 출원의 실시예가 무선 네트워킹 환경에서 기술될 것이지만, 이러한 실시예가 또한 유선 네트워킹 환경에서도 적용될 수 있다는 것을 잘 알 것이다.
일 실시예에서, 제1 장치[이 일례에서, 장치(101)]가 무선 네트워크에서 이용가능한 하나 이상의 서비스를 광고할 때, 장치(101)의 서비스 광고 논리(105)는 네트워크(104)에서 광고 메시지(간단히 광고 또는 서비스 광고라고도 함)를 브로드캐스트 또는 멀티캐스트하고, 여기서 광고는 하나 이상의 서비스 식별자(ID) - 각각이 장치(101)로부터 잠재적으로 이용가능한 특정의 서비스를 식별해줌 - 를 포함한다. 서비스 식별자는 각종의 해시 알고리즘(예컨대, SHA-1 또는 MD5)을 사용하여 구성되는 해시 값으로 표현될 수 있다. 해시 값은 특정의 서비스의 서명 또는 어떤 특징을 나타내는 데이터에 기초하여 발생될 수 있다. 광고는 장치(101)가, 네트워크(104)에서 다른 장치[예컨대, 장치(102, 103)]로부터의 광고에 대한 임의의 서비스 문의가 있는지 리스닝하게 될 때, 그의 가용성 윈도우를 설정하는 데 사용하게 될 장치(101)의 가용성 스케줄과 같은 가용성 정보를 추가로 포함한다. 그 후에, 장치(101)는 장치(101)와 연관된 가용성 정보에 따라 차후의 특정의 기간까지 장치(101)의 특정의 부분 - 예를 들어, 적어도 장치(101)의 RF(radio frequency) 부분(예컨대, 송수신기, 안테나) - 을 턴오프시키거나 그에 대한 전력을 감소시킬 수 있다. 다른 대안으로서, 장치(101)는 네트워크(104)에서 전송 또는 리스닝 없이 다른 작업을 차례로 수행할 수 있다.
네트워크 내의 제2 장치[이 일례에서, 장치(102)]가 장치(101)로부터 브로드캐스트된 광고를 수신할 때, 광고에서의 서비스 식별자에 기초하여, 장치(102)는 장치(101)로부터의 광고된 서비스에 대한 추가의 상세한 정보를 획득하는데 관심이 있는지를 판정할 수 있다. 그러한 경우, 일 실시예에 따르면, 장치(102)는 장치(101)의 가용성 스케줄에 따라[예컨대, 장치(101)가 리스닝하고 있을 때 장치(101)의 가용성 윈도우들 중 하나 동안에] 서비스 요청을 장치(101)로 전송할 수 있고, 여기서 서비스 요청은 하나 이상의 선택된 서비스의 하나 이상의 서비스 식별자를 포함한다. 서비스 요청에 응답하여, 장치(101)는 요청된 서비스에 관한 더 상세한 정보를 [예컨대, 장치(102)로] 전송할 수 있다. 즉, 서비스 ID는 단지 광고주로부터 잠재적으로 이용가능한 서비스를 나타낼 수 있다. 이러한 서비스를 확인하기 위해, 발견자는 서비스 요청 및 응답 프로토콜을 통해 광고주로부터 추가의 상세한 정보를 획득해야만 한다.
다른 실시예에 따르면, 네트워크(104) 내의 장치들(101 내지 103) 각각은 각자의 장치의 동작 환경은 물론, 네트워크에서의 네트워크 트래픽도 모니터링하도록 구성되어 있다. 모니터링 결과에 기초하여, 장치는 그의 서비스 광고 기간(간단히 광고 기간이라고도 함) 및/또는 서비스 발견 기간(간단히 발견 기간이라고도 함)을 동적으로 조정할 수 있다. 예를 들어, 장치(101)의 배터리가 낮은 경우, 장치(101)는 서비스 광고 및 서비스 발견의 전송 및 리스닝 빈도수를 감소(예컨대, 서비스 광고 및/또는 발견 기간을 증가)시킬 수 있다. 다른 일례로서, 통신 채널 혼잡이, 예를 들어, 네트워크 내의 많은 수의 장치로 인해, 비교적 높은 것으로 판정되는 경우, 장치(101)는 또한 서비스 광고 및/또는 발견 기간을 그에 따라 조정할 수 있다[예컨대, 광고 및/또는 발견 기간을 증가시킬 수 있음].
일 실시예에서, 서비스 광고 기간 및/또는 서비스 발견 기간이 소정의 기본값의 하나 이상의 배수에 기초하여 계산된다. 그렇지만, 서비스 발견 기간이 서비스 광고 기간의 배수로서 구성되지 않을 수 있거나, 그 반대도 마찬가지이다. 그 결과, 광고주 및 발견자는 그 자신의 서비스 광고 기간 및/또는 서비스 발견 기간을 독립적으로 계산할 수 있지만, 광고주[예컨대, 장치(101)]로부터의 광고가 일정 기간 동안 발견자[예컨대, 장치(102)]에 의해 여전히 포착될 수 있다. 그에 부가하여, 서비스 광고 기간이 서비스 발견 기간의 배수가 아니거나 그 반대도 마찬가지라는 사실로 인해, 네트워크 내의 장치들 각각은 그들 사이의 임의의 통신을 설정하기 전에, 앞서 기술한 네트워크 조건에 대한 그 자신의 인식에 기초하여 그 자신의 기간을 조정할 수 있다.
추가의 실시예에 따르면, 장치들(101 내지 103)이 다른 장치를 대신하여 서비스를 광고할 장치들 중 하나 이상의 장치를 선택하기 위해 서로 협조할 수 있다. 예를 들어, 장치(101)가 장치의 모니터링 논리에 의해 모니터링되는 각종의 파라미터(예컨대, 배터리 상태 등)에 따라, 장치(102) 및/또는 장치(103)에 대한 서비스를 광고하기 위한 그룹 광고주로서 선택될 수 있다. 장치(101)는 네트워크에서 그 자신의 서비스 및 장치(102, 103)의 서비스를 광고하는 그룹 광고주로서 동작할 수 있다. 장치(101)는 또한 그 자신의 서비스를 광고하는 광고주로서는 물론, 다른 장치[예컨대, 장치(102, 103)]에 의해 광고되는 하나 이상의 서비스를 갖는 피광고주로서도 동작할 수 있다. 장치(101)는 또한 그의 서비스를 광고하기 위해 다른 장치[예컨대, 장치(102, 103)]에 의존하는 피광고주로서만 동작할 수 있다.
주목할 점은, 본 출원 전체에 걸쳐, "서비스"라는 용어가 인쇄 서비스, LAN(local area network) 액세스 서비스, WAN(wide area network) 액세스 서비스, 셀룰러 전화 서비스, 데이터 저장 서비스, 및/또는 응용 프로그램 서비스(예컨대, 미디어 재생, 게임, 협업적 문서 생성 서비스, 레코딩 서비스 등)(이들로 제한되지 않음)를 비롯한 광범위한 서비스일 수 있다는 것이다.
효율적인 서비스 광고 및 발견 메커니즘
도 2는 본 발명의 일 실시예에 따른 전자 장치의 일례를 나타낸 블록도이다. 예를 들어, 전자 장치(200)는 도 1의 장치들(101 내지 103) 중 임의의 장치의 일부로서 구현될 수 있다. 도 2를 참조하면, 장치(200)는 서비스 광고 유닛(201), 서비스 발견 유닛(202), 사용자 인터페이스 유닛(203), 서비스 관리 유닛(204), 저장 장치(205), 하나 이상의 프로세서 또는 프로세서 코어(206), 네트워크 인터페이스 유닛(207), 및 메모리(208) - 버스, 상호연결부 또는 메쉬(209)를 통해 서로 결합되어 있음 - 를 포함하지만, 이들로 제한되지 않는다.
프로세서(206)는 임의의 종류의 마이크로프로세서 - 단일 프로세서, 다중 프로세서, 또는 다중 프로세서 코어일 수 있음 - 일 수 있다. 네트워크 인터페이스 유닛(207)은 무선 송수신기 및 안테나 또는 모뎀(이들로 제한되지 않음) 등을 포함하는 RF 프런트 엔드의 일부일 수 있다. 다른 대안으로서, 네트워크 인터페이스 유닛(207)은 또한 이더넷 포트, USB(universal serial bus) 또는 Firewire™ 포트와 같은 유선 통신 인터페이스를 포함할 수 있다. 메모리(208)는 임의의 종류의 랜덤 액세스 메모리(RAM) - 통상적으로 휘발성 메모리로서 구현됨 - 일 수 있다. 사용자 인터페이스 유닛(203)은 디스플레이 장치, 입력 장치(예컨대, 키보드, 터치 패드, 터치 스크린, 스타일러스 장치, 또는 이들의 조합), 및 오디오 및/또는 비디오 인터페이스 등을 포함할 수 있다.
서비스 광고 유닛(201)은 이용가능하거나 장치(200)에 의해 제공되는 하나 이상의 서비스를 광고하는 일을 맡고 있다. 예를 들어, 서비스 광고 유닛(201)은 도 1의 서비스 광고 논리(105 내지 107) 중 임의의 것의 일부로서 구현될 수 있다. 일 실시예에서, 서비스 광고 논리(201)는, 네트워크 인터페이스 유닛(207)을 통해, 광고 스케줄(예컨대, 광고 기간)에 따라 네트워크[예컨대, 도 1의 네트워크(104)]에서 광고를 브로드캐스트 또는 멀티캐스트함으로써 하나 이상의 서비스를 광고하도록 구성되어 있다. 광고는 장치(200)에 의해 잠재적으로 제공되는 서비스를 식별하는 하나 이상의 서비스 식별자(ID)를 포함할 수 있다. 서비스 식별자는 서비스 관리자(204)에 의해 발생되고 서비스 식별자(210)의 일부로서 저장 장치(205)에 저장될 수 있다. 일 실시예에서, 서비스 식별자는 각종의 해시 알고리즘(예를 들어, SHA-1 또는 MD5 알고리즘 등)에 따라 서비스 관리자(204)에 의해 발생되는 해시 값을 포함한다.
다른 대안으로서, 서비스 식별자는 비트마스크의 특정의 비트에 의해 표현될 수 있고, 여기서 비트마스크는 소정의 논리값을 갖는 하나 이상의 비트 - 각각이 특정의 서비스를 나타냄 - 를 포함한다. 예를 들어, 비트마스크의 특정의 비트의 위치는 광고주로부터 잠재적으로 이용가능한 특정의 서비스를 나타내는 데 사용되고, 여기서 비트마스크는, 2010년 1월 14일자로 출원된, 발명의 명칭이 "피어-투-피어 네트워킹 장치에 대한 효율적인 서비스 발견(Efficient Service Discovery for Peer-to-Peer Networking Device)"인 동시 계류 중인 미국 특허 출원 제12/687,814호(참조 문헌으로서 그 전체 내용이 본 명세서에 포함됨)에 개시된 기법과 유사하게, 네트워크에서 광고를 통해 브로드캐스트된다.
다시 말하지만, 서비스 ID는 단지 광고주로부터 잠재적으로 이용가능한 서비스를 나타낼 수 있다. 그에 부가하여, 해시(서비스 ID)는 잠재적으로 다수의 서비스를 나타낼 수 있는데, 그 이유는 다수의 서비스가 동일한 값으로 해싱되는 경우 충돌이 있을지도 모르기 때문이다. 이러한 서비스를 확인하기 위해, 발견자는 서비스 요청 및 응답 프로토콜을 통해 광고주로부터 추가의 상세한 정보를 획득해야만 한다. 이러한 잠재적인 서비스를 나타내는 해시 값을 브로드캐스트 또는 멀티캐스트함으로써 잠재적인 서비스를 광고하는 것과, 이러한 서비스에 대한 특정의 요청에 응답해서만 서비스에 관한 상세한 정보를 제공하는 것은 서비스 광고 및 발견에 수반되는 네트워크 트래픽을 크게 감소시킨다.
서비스 관리자(204)는 또한 장치(200)로부터 이용가능한 서비스와 연관된 서비스 정보(211) - 저장 장치(205)에 저장되어 있을 수 있음 - 를 유지하거나 관리하는 일을 맡고 있다. 저장 장치(205)는 임의의 종류의 메모리 장치 또는 디스크로서 구현되고 임의의 종류의 파일 시스템을 통해 액세스될 수 있다. 서비스 관리자(204)는 또한 네트워크에서 이용가능한 서비스들 - 장치(200) 및 네트워크 내의 다른 장치에 의해 광고되는 서비스를 포함함 - 의 목록을 발생하고 유지할 수 있다. 서비스의 목록은 서비스 발견 유닛(202)에 의해 수행되는 서비스 발견 동작의 결과에 응답하여 주기적으로 업데이트될 수 있다.
이와 유사하게, 서비스 발견 유닛(202)은 네트워크로부터 이용가능한 하나 이상의 서비스 - 네트워크 내의 하나 이상의 다른 장치에 의해 광고될 수 있음 - 를 발견하는 일을 맡고 있다. 예를 들어, 서비스 발견 유닛(202)은 도 1의 서비스 발견 논리(108 내지 110) 중 임의의 것의 일부로서 구현될 수 있다. 원격 장치로부터의 광고에 응답하여, 서비스 발견 유닛(202)은, 네트워크 인터페이스 유닛(207)을 통해, 서비스에 대한 추가의 상세한 정보를 획득하기 위해 원격 장치와 통신하도록 구성되어 있고, 네트워크로부터 이용가능한 서비스의 목록 - 서비스 정보(211)의 일부로서 저장될 수 있음 - 을 발생하거나 업데이트할 수 있다.
도 3은 일 실시예에 따른 서비스 광고 트랜잭션 흐름의 일례를 나타낸 흐름도이다. 예시를 위해, 로컬 장치(301)(광고주임) 및 원격 장치(302)(발견자임) 둘 다가 도 2의 장치(200)와 유사하거나 동일한 인프라를 갖는 것으로 가정된다. 도 2 및 도 3을 참조하면, 일 실시예에 따르면, 트랜잭션(303)을 통해 장치(301)의 서비스 광고 유닛으로부터 광고를 수신한 후에, 장치(302)의 서비스 발견 유닛은, 동작(304)을 통해, 광고 요청에서의 서비스 ID와 로컬적으로 발생된 서비스 ID를 비교한다. 장치(302)가 광고된 서비스 또는 서비스들에 관심이 있는 경우, 장치(302)의 서비스 발견 유닛은 트랜잭션(305)을 통해 서비스 요청 - 장치(302)가 관심을 가지고 있는 하나 이상의 서비스를 식별하는 하나 이상의 서비스 식별자를 포함함 - 을 장치(301)로 전송한다. 서비스 요청에 응답하여, 장치(301)의 서비스 광고 유닛은 트랜잭션(306)을 통해 서비스 응답 - 요청된 하나 이상의 서비스의 상세한 정보를 포함함 - 을 장치(302)로 전송한다. 주목할 점은, 서비스 식별자가 단지 서비스가 장치(301)로부터 잠재적으로 이용가능하다는 것만을 나타낼 수 있다는 것이다. 잠재적인 서비스에 대한 상세한 정보를 획득하기 위해, 발견자는 서비스 식별자에 기초한 서비스 요청을 전송함으로써 상세한 정보를 획득해야만 한다. 장치(302)는 이어서, 트랜잭션(307)을 통해, 반환된 서비스 정보를 원하는 서비스의 로컬 목록과 비교한다. 서비스들 중 임의의 것이 매칭되면, 장치(301, 302)는 트랜잭션(308)을 통해 서비스(예컨대, 협업적 방식으로 게임을 플레이함)에 참여할 수 있다.
일 실시예에 따르면, 다시 도 2를 참조하면, 서비스를 광고할 때, 서비스 광고 유닛(201)에 의해 발생된 광고는 광고주[이 일례에서, 장치(200)]의 가용성 스케줄을 추가로 포함한다. 일 실시예에서, 가용성 스케줄은 광고가 전송된 시간으로부터의 다음 가용성 윈도우의 시작 및 윈도우의 길이(예컨대, 가용성 윈도우의 지속기간)를 포함한다. 즉, 광고주는 지정된 기간 동안 네트워크에서 리스닝만하고 있을 수 있다. 발견자가 광고를 수신할 때, 발견자는 광고주의 가용성 스케줄 - 이 가용성 스케줄 동안에, 발견자는 광고주의 가용성 윈도우들 중 하나의 가용성 윈도우 동안 서비스 요청을 광고주로 전송함 - 에 따라 전송 시간 슬롯을 스케줄링할 수 있다. 그렇지 않은 경우, 광고주 및 발견자 중 어느 하나 또는 둘 다는, 예를 들어, 각자의 장치의 전력 관리 유닛(도시 생략)에 의해, 각자의 장치의 적어도 일부분(예컨대, 무선 송수신기 또는 RF 프런트 엔드)을 턴오프시키거나 그에 대한 전력을 감소시킬 수 있다. 주목할 점은, 도 2에 도시된 구성요소들 중 일부 또는 전부가 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합으로 구현될 수 있다는 것이다.
도 4는 일 실시예에 따른 서비스 광고의 타임라인도이다. 도 4를 참조하면, 광고주[예컨대, 장치(200)]가 서비스를 광고할 때, 일 실시예에서, 광고주는 시각(401)에서 광고를 전송할 수 있고, 여기서 광고는 다음 가용성 윈도우가 시작할 때까지의 구간(402) 및 다음 가용성 윈도우의 지속기간(403)을 가지는 가용성 스케줄을 포함한다. 즉, 시각(401)에서 광고를 전송한 후에, 광고주는 장치의 적어도 일부분(예를 들어, 장치의 RF 프런트 엔드 등)을 턴오프시키거나 그에 대한 전력을 감소시킬 수 있다. 광고주는 이어서 다음 가용성 윈도우에서 지속기간(403) - 이 동안, 발견자는 특정의 서비스 또는 서비스들에 대한 추가의 상세한 정보를 획득하기 위해 광고주와 통신할 수 있음 - 동안 전력을 다시 턴온시킬 수 있다. 그 결과, 광고주의 전력 소모가 감소될 수 있다. 가용성 윈도우 동안, 광고주는 발견자로부터 서비스 요청을 수신할 수 있고, 요청된 서비스 또는 서비스들에 대한 상세한 정보를 갖는 서비스 응답으로 답신한다.
이와 유사하게, 발견자가 광고를 수신한 후에, 발견자는 또한 장치의 적어도 일부분을 턴오프시키거나 그에 대한 전력을 감소시키고 서비스 요청을 광고주로 전송하기 위해 광고주의 다음 가용성 윈도우에 따라 절전 모드 해제시킬 수 있다. 그 결과, 발견자의 전력 소모가 감소될 수 있다.
도 5는 일 실시예에 따른 광고 메시지의 일례를 나타낸 블록도이다. 도 5를 참조하면, 광고(500)는 헤더(501), 가용성 윈도우 시작(502), 가용성 윈도우 길이(503), 서비스 ID의 수(504), 및 하나 이상의 서비스 ID(505)를 포함하지만, 이들로 제한되지 않는다. 일 실시예에서, 광고될 가능한 서비스를 나타내는 서비스 ID는 해시 값에 의해 표현된다. 일반적으로 말하면, 해시(서비스 ID)는 잠재적으로 다수의 서비스를 나타낼 수 있는데, 그 이유는 다수의 서비스가 동일한 값으로 해싱되는 경우 충돌이 있을지도 모르기 때문이다. 주목할 점은, 광고(500)의 형식 및 필드 배열이 단지 예시를 위해 도시되어 있으며, 다른 형식 또는 필드 배열도 구현될 수 있다는 것이다.
도 6은 일 실시예에 따른, 서비스를 광고하는 방법의 일례를 나타낸 흐름도이다. 주목할 점은, 방법(600)이 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합을 포함할 수 있는 처리 논리에 의해 수행될 수 있다는 것이다. 예를 들어, 방법(600)이 도 2의 서비스 광고 유닛(201)에 의해 수행될 수 있다. 도 6을 참조하면, 블록(601)에서, 다음 가용성 윈도우 시작 기간, 가용성 윈도우 길이, 다수의 서비스 ID(예컨대, 해시), 및 실제 서비스 ID를 포함하는 광고가 로컬 장치(예컨대, 광고주) 내에서 구성된다. 각각의 서비스 ID는 잠재적으로 로컬 장치에 의해 제공되는 서비스를 나타낸다. 블록(602)에서, 광고가 무선 네트워크에서 로컬 장치에 의해 브로드캐스트 또는 멀티캐스트된다.
블록(603)에서, 로컬 장치는 장치의 적어도 일부분을 선택적으로 턴오프시키거나 그에 대한 전력을 감소시킬 수 있고, 블록(604)에서, 광고 요청에 지정된 다음 가용성 윈도우에 따른 시간에서 절전 모드 해제시킨다. 블록(605)에서, 가용성 윈도우 동안, 로컬 장치는 리스닝하고 있다가 광고에 응답하여 네트워크를 통해 원격 장치로부터 서비스 요청을 수신한다. 서비스 요청은 원격 장치에 의해 문의되는 하나 이상의 서비스를 나타내는 하나 이상의 서비스 ID를 포함한다. 하나 이상의 서비스 ID는 로컬 장치로부터 이전에 브로드캐스트 또는 멀티캐스트된 광고에 제시된 것들 중에서 선택될 수 있다. 서비스 요청에 응답하여, 블록(606)에서, 로컬 장치는 서비스 요청에서 요청된 서비스에 대한 상세한 정보를 포함하는 서비스 응답을 원격 장치로 전송한다.
도 7은 일 실시예에 따른, 서비스를 발견하는 방법의 일례를 나타낸 흐름도이다. 주목할 점은, 방법(700)이 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합을 포함할 수 있는 처리 논리에 의해 수행될 수 있다는 것이다. 예를 들어, 방법(700)이 도 2의 서비스 발견 유닛(202)에 의해 수행될 수 있다. 도 7을 참조하면, 블록(701)에서, 로컬 장치(예컨대, 발견자)는 네트워크를 통해 원격 장치로부터 광고를 수신한다. 광고에 응답하여, 블록(702)에서, 로컬 장치는 다음 가용성 윈도우 시작, 가용성 윈도우 길이, 및 원격 장치에 의해 광고되는 하나 이상의 서비스를 식별하는 하나 이상의 서비스 ID(예컨대, 해시)를 광고로부터 추출한다. 블록(703)에서, 로컬 장치는 장치의 적어도 일부분을 선택적으로 턴오프시키거나 그에 대한 전력을 감소시킬 수 있고, 광고에 지정된 다음 가용성 윈도우에 따라 특정 시간에서 절전 모드 해제시킨다. 블록(704)에서, 로컬 장치는 서비스 요청을 원격 장치로 전송하고, 여기서 서비스 요청은 문의될 하나 이상의 서비스를 식별하는 하나 이상의 서비스 ID(예컨대, 해시)를 포함한다. 블록(705)에서, 서비스 응답이 원격 장치의 가용성 윈도우 동안 원격 장치로부터 수신되고, 여기서 서비스 응답은 문의된 서비스에 대한 더 상세한 정보를 포함한다.
동적 광고/발견 기간을 갖는 서비스 광고/발견
일부 실시예에 따르면, 광고 기간 및 발견 기간이 그 시점에서의 동작 상황 및/또는 사용자 거동에 기초하여 동적으로 조정될 수 있다. 일 실시예에 따르면, 네트워크 내의 각각의 장치는 각자의 장치의 동작 환경은 물론, 네트워크에서의 네트워크 트래픽도 모니터링하도록 구성되어 있다. 모니터링의 결과에 기초하여, 장치는 그의 광고 기간 및/또는 서비스 발견 기간을 동적으로 조정할 수 있다. 예를 들어, 장치의 배터리가 낮은 경우, 장치는 서비스 광고 및 서비스 발견의 빈도수를 감소(예컨대, 서비스 광고 및/또는 발견 기간을 증가)시킬 수 있다. 다른 일례로서, 통신 채널 혼잡이, 예를 들어, 네트워크 내의 많은 수의 장치로 인해, 비교적 높은 것으로 판정되는 경우, 장치는 또한 서비스 광고 및/또는 발견 기간을 그에 따라 조정할 수 있다(예컨대, 네트워크의 혼잡 붕괴를 피하기 위해 서비스 광고 및/또는 발견 기간을 증가시킬 수 있음).
일 실시예에서, 서비스 광고 기간 및/또는 서비스 발견 기간이 소정의 기본값의 배수에 기초하여 계산된다. 그렇지만, 서비스 발견 기간이 서비스 광고 기간의 배수가 아닐 수 있거나, 그 반대도 마찬가지이다. 그 결과, 광고주 및/또는 발견자가 그 자신의 서비스 광고 기간 및/또는 서비스 발견 기간을 독립적으로 계산할 수 있지만, 광고주의 광고 요청이 여전히 서비스 광고 기간 및/또는 서비스 발견 기간의 특정의 계산에 의존적인 기간에 걸쳐 발견자에 의해 포착될 수 있다.
도 8은 본 발명의 다른 실시예에 따른 전자 장치를 나타낸 블록도이다. 예를 들어, 장치(800)는 도 1의 장치들(101 내지 103) 중 임의의 장치로서 구현될 수 있다. 도 8을 참조하면, 도 2의 장치(200)와 유사하게, 장치(800)는 서비스 광고 유닛(201), 서비스 발견 유닛(202), 사용자 인터페이스 유닛(203), 서비스 관리 유닛(204), 서비스 식별자(210) 및 서비스 정보(211)를 저장하는 저장 장치(205), 하나 이상의 프로세서 또는 프로세서 코어(206), 네트워크 인터페이스 유닛(207), 메모리(208), 및 사용자 인터페이스 유닛(203) - 버스, 상호연결부 또는 메쉬(209)를 통해 서로 결합되어 있음 - 을 포함하지만, 이들로 제한되지 않는다. 이들 구성요소는 도 2에 도시된 것과 동일하거나 유사한 기능을 가지며, 따라서 어떤 참조 번호는 도 2와 동일하게 유지되고 있다.
그에 부가하여, 일 실시예에 따르면, 장치(800)는 동작 환경 모니터링 유닛(801)과 광고 및/또는 발견 기간 또는 스케줄 계산기(802)를 포함한다. 일 실시예에서, 동작 환경 모니터링 유닛(801)은 장치(800)의 동작 환경은 물론, 네트워크에서의 네트워크 트래픽도 모니터링하도록 구성되어 있다. 모니터링의 결과에 기초하여, 광고/발견 기간 계산기(802)는 광고 기간 및/또는 서비스 발견 기간을 동적으로 조정하도록 구성되어 있다. 예를 들어, 장치(800)가 보다 적은 배터리 수명이 남아 있는 경우[모니터링 유닛(801)에 의해 모니터링됨], 광고 및/또는 발견 기간 또는 스케줄 계산기(802)는 서비스 광고 및 서비스 발견의 빈도수를 감소(예컨대, 서비스 광고 및/또는 발견 기간을 증가)시킬 수 있다. 다른 일례로서, 통신 채널 혼잡이, 예를 들어, 네트워크 내의 또는 소정의 근접성 내의 많은 수의 장치로 인해, 비교적 높은 것으로 판정되는 경우, 광고 및/또는 발견 기간 계산기(802)는 또한 서비스 광고 및/또는 발견 기간을 그에 따라 조정할 수 있다. 게다가, 광고 및/또는 발견 기간이 또한 공유될 응용 프로그램의 유형 및 사용자 거동(예컨대, 활성 사용자) 등에 기초하여 조정될 수 있다.
일 실시예에서, 서비스 광고 기간 및/또는 서비스 발견 기간이 소정의 기본값의 하나 이상의 배수에 기초하여 계산된다. 그렇지만, 서비스 발견 기간이 서비스 광고 기간의 하나 이상의 배수가 아닐 수 있거나, 그 반대도 마찬가지이다. 그 결과, 광고주 및 발견자는 로컬 환경에 기초하여 광고 기간 및/또는 발견 기간을 독립적으로 계산 및/또는 조정할 수 있다. 그에 부가하여, 서비스 광고 기간이 서비스 발견 기간의 배수가 아니거나 그 반대도 마찬가지라는 사실로 인해, 네트워크 내의 장치들 각각은 그들 사이의 임의의 통신을 설정하지 않고, 앞서 기술한 네트워크 조건에 대한 그 자신의 인식에 기초하여 그 자신의 기간을 조정할 수 있다.
도 9는 일 실시예에 따른 광고 기간 및 발견 기간을 나타낸 타임라인도이다. 도 9를 참조하면, 타임라인(900)은 광고 기간을 나타낸 것이고, 타임라인(950)은 발견 기간을 나타낸 것이다. 예시를 위해, 광고 기간은 소정의 기본값의 3배에 기초하여 계산되는 반면, 발견 기간은 소정의 기본값의 4배에 기초하여 계산된다. 도 9에 도시된 바와 같이, 광고 메시지가 발견 기간과 상이한 때에 상이한 레이트로 브로드캐스트되고 있지만, 광고 기간 및 발견 기간 둘 다가 합의된 소정의 기본값의 배수에 기초하여 계산되기 때문에, 광고 전송 및 발견 리스닝이 궁극적으로 시간 슬롯(901 내지 903)에서 겹친다.
그 결과, 광고주 및/또는 발견자는 개별 장치의 동작 조건에 기초하여 조정 인자를 독립적으로 조정할 수 있다. 예를 들어, 장치의 배터리가 낮은 레벨에 있는 것으로 판정되는 경우, 광고 및/또는 발견 활동을 서서히 하기 위해 조정 인자(N)가 증가될 수 있고, 이는 차례로 추가적인 전력 소모 및 채널 사용을 감소시킨다. 그렇지만, 광고 기간 및/또는 발견 기간을 증가시키는 것은 또한 특정의 광고 메시지를 포착하기 위한 검출 시간을 증가시킬 수 있으며, 이는 성능 저하를 가져온다.
다른 실시예에 따르면, 발견 기간이 광고 기간의 배수가 아니라 체류 시간(dwell time)(예컨대, 광고 메시지가 있는지 장치가 리스닝하는 기간)의 배수로서 계산된다. 특정의 실시예에서, 광고 기간은 소정의 기본값(예컨대, 100 ms)의 배수(100 ms * 2^N, 여기서 N은 임의의 정수일 수 있음)로 구성되어 있고; 발견 기간은 소정의 기본값 * 3^M 또는 5^M(여기서, M은 임의의 정수일 수 있음)이도록 구성되어 있으며; 체류 시간은 소정의 기본값(예컨대, 100 ms) * (1 + 10%)이도록 구성되어 있다. 비효율을 고려하여 체류 시간에 10%를 추가하는 것은 체류 시간이 소정의 기본값보다 더 크도록 해준다.
이하의 표에서, 괄호 내의 퍼센트 숫자는 장치의 적어도 RF 프런트 엔드가 이들 특정의 광고/발견 기간 동안 동작하고 있어야만 하는 시간 퍼센트를 나타낸다. 광고 숫자는 광고 메시지 전송 - 무선기를 절전 모드 해제시키고, 채널을 얻기 위해 경쟁하며, 수백 μs 프레임을 전송함 - 에 대한 2 ms 어림 추정치(ballpark estimate)에 기초한다. 발견 숫자는 100 ms 발견 리스닝 체류 시간에 기초한다. 표의 주요부에 있는 숫자는 광고주가 관련 열 헤더에 있는 광고 기간을 사용하고 발견자가 관련 행 헤더에 있는 발견 기간을 사용하는 최악의 경우에 장치를 발견하는 데 얼마나 걸리는지를 나타낸다. 모든 시간의 단위는 초이다.
Figure 112012049998657-pct00015
정적 환경이거나 배터리 사용량을 급격히 감소시키고자 하는 장치는 그의 발견 기간 및 광고 기간(예를 들어, 각각 24.3 초 및 200 ms)을 독립적으로 증가시킬 수 있다. 이 일례에서, 상기 표에 기초하여, 이것은, 증가된 검출 시간(선택적으로 동일한 값을 구현하는 다른 장치를 검출하기 위한 48.6 초)의 대가로, 이러한 장치에 대한 사용 시간(airtime)(예컨대, 무선기가 전체 전력(full power)으로 리스닝하고 있는 시간)이 1.5% 미만이도록 해준다. "정적 환경"은, 예를 들어, 사용자가 오랜 기간 동안 집에 머물러 있고 따라서 무선 동작 환경이 변하지 않는 경우를 말한다. 이와 유사하게, 대용량 배터리를 갖거나 동적 환경에 있는(또는 움직이고 있음을 검출하는) 장치는 또한 그의 발견 기간을, 예를 들어, 2.5 초로 독립적으로 감소시킬 수 있으며, 이로 인해 빠른 발견 시간에 이를 수 있다. 이것은 AC 전력을 갖는 플러그형 장치(plugged device)의 경우일 것이다. 혼잡한 환경에 있음을 검출하는 장치는 [예를 들어, 15개 초과의 다른 광고주 또는 액세스 포인트(AP)를 검출하는 경우] 그의 광고 기간을 독립적으로 증가시킬 수 있으며, 이는 검출 시간을 증가시키지만 네트워크 혼잡을 감소시킨다. 광고 기간을, 예를 들어, 400 ms로 증가시키는 것은 검출 시간이 12.5 초 주기로 발견하는 장치에 대해 50 초의 범위에 있게 해줄 수 있고, 이 경우에 사용 시간은 1.3%이다. 이것은 사용자가 회의실 또는 많은 칸막이를 갖는 오픈 스페이스(open space) 작업 환경에 앉아 있을 수 있는 경우일 것이다.
사용자가 움직이고 있다는 사실의 검출은 다수의 발견 기간에 걸쳐 적절히 높은 RSSI(received signal strength indicator, 수신 신호 강도 표시자)를 갖는 몇개의 액세스 포인트의 존재를 기록하는 것에 의해 행해질 수 있다. 이것은 장치가 발견 기간 동안 검출되는 특정의 최고 RSSI AP의 BSSID(basic service set identifier, 기본 서비스 집합 식별자)를 캐싱할 것을 필요로 한다. 높은 RSSI AP가 검출되지 않은 경우, 이것은 사용자가 빠르게 움직이고 있거나 WiFi 무료 환경에 있다는 것을 의미한다. 검출 시간을 감소시키기 위해 광고 기간 및 발견 기간이 더 낮게 조정되어야만 한다. 그 높은 RSSI AP 중 하나 이상이 몇개의 발견 기간에 걸쳐 항상 검출되는 경우(예컨대, 연관되어 있거나 연관되어 있지 않고 로밍하지 않음), 사용자는 집에 또는 기지의 장소에 앉아 있을 수 있다. 발견 기간이 200 ms로 설정될 수 있고, 광고 기간이 큰 값(예컨대, 24.3 초 또는 62.5 초)으로 증가될 수 있다. 이 사용자는 다른 장치를 검출하는 데 오래 걸리지 않을 것이지만, 움직이는 장치에 의해 검출되기가 쉽지 않을 것이다. 환경이 혼잡한 경우, 잠재적인 혼잡을 감소시키기 위해 조정이 행해져야만 하고, 광고 기간이 증가될 필요가 있다. 그 결과, 장치는 더 자주 발견하거나(예컨대, 더 많은 전력을 소모함) 더 오래 기다리는 것에 의해 서로를 검출할 수 있다.
도 10은 본 발명의 다른 실시예에 따른, 서비스를 광고하는 방법을 나타낸 흐름도이다. 주목할 점은, 방법(1000)이 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합을 포함할 수 있는 처리 논리에 의해 수행될 수 있다는 것이다. 예를 들어, 방법(1000)이 도 8의 서비스 광고 유닛(201)에 의해 수행될 수 있다. 도 10을 참조하면, 블록(1001)에서, 배터리 상태, 네트워크 트래픽 혼잡, 사용자 거동, 및 광고될 서비스의 유형 등을 비롯한 현재의 동작 조건이 로컬 장치(예컨대, 광고주)에 의해 모니터링된다. 동작 조건에 기초하여, 블록(1002)에서, 광고 기간이 그에 따라 동적으로 조정된다. 일 실시예에서, 광고 기간은, 이상에서 기술한 바와 같이, 소정의 기본값의 배수로서 구성되어 있다. 블록(1003)에서, 앞서 기술한 서비스 광고 및 발견 기법을 사용하여 광고되는 하나 이상의 서비스를 포함하는 광고가 조정된 광고 기간에 따라 네트워크에서 브로드캐스트 또는 멀티캐스트된다. 블록(1004)에서, 광고 요청에 응답하여, 문의될 서비스를 식별하는 서비스 식별자 또는 표시자를 포함하는 서비스 요청이 원격 장치로부터 수신된다. 서비스 요청에 응답하여, 블록(1005)에서, 요청된 서비스에 대한 상세한 정보가 서비스 응답을 통해 네트워크를 거쳐 원격 장치에 제공된다.
도 11은 본 발명의 다른 실시예에 따른, 서비스를 발견하는 방법을 나타낸 흐름도이다. 주목할 점은, 방법(1100)이 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합을 포함할 수 있는 처리 논리에 의해 수행될 수 있다는 것이다. 예를 들어, 방법(1100)이 도 8의 서비스 발견 유닛(202)에 의해 수행될 수 있다. 도 11을 참조하면, 블록(1101)에서, 배터리 상태, 네트워크 트래픽 혼잡, 사용자 거동, 및 광고될 서비스의 유형 등을 비롯한 현재의 동작 조건이 로컬 장치(예컨대, 발견자)에 의해 모니터링된다. 동작 조건에 기초하여, 블록(1102)에서, 발견 기간이 그에 따라 동적으로 조정된다. 일 실시예에서, 발견 기간은, 이상에서 기술한 바와 같이, 소정의 기본값의 배수로서 구성되어 있다. 블록(1103)에서, 처리 논리는 네트워크에서 이용가능한 서비스를 발견하기 위해 조정된 발견 기간에 따라 네트워크에서 주기적으로 리스닝한다. 발견 동안 원격 장치로부터 수신된 광고에 응답하여, 블록(1104)에서, 광고에 광고된 서비스를 문의하는 서비스 요청이 원격 장치로 전송된다. 블록(1105)에서, 서비스 요청에 응답하여, 요청된 서비스 또는 서비스들에 대한 어떤 상세한 정보를 포함하는 서비스 응답이 원격 장치로부터 수신된다.
협조 서비스 광고 실시예
일부 실시예에 따르면, 하나 이상의 서비스를 광고할 수 있는 다수의 장치가 다른 장치를 위해 서비스를 광고할 장치들 중 하나 이상의 장치를 선택하기 위해 서로 협조할 수 있다. 장치가 장치의 모니터링 논리에 의해 모니터링되는 각종의 파라미터(예컨대, 배터리 상태 등)에 따라 그룹 광고주로서 선택될 수 있다. 장치는 네트워크에서 그 자신의 서비스 및 다른 장치의 서비스를 광고하는 그룹 광고주로서 동작할 수 있다. 장치는 또한 그 자신의 서비스를 광고하는 광고주로서는 물론, 그 자신의 서비스들 중 하나 이상의 서비스가 다른 장치에 의해 광고되는 피광고주로서도 동작할 수 있다. 장치는 그의 서비스를 광고하기 위해 다른 장치에 의존하는 피광고주로서만 동작할 수 있다.
도 12는 본 발명의 다른 실시예에 따른 전자 장치를 나타낸 블록도이다. 예를 들어, 장치(1200)는 도 1의 장치들(101 내지 103) 중 임의의 장치로서 구현될 수 있다. 도 12를 참조하면, 도 2의 장치(200) 또는 도 8의 장치(800)와 유사하게, 장치(1200)는 서비스 광고 유닛(201), 서비스 발견 유닛(202), 사용자 인터페이스 유닛(203), 서비스 관리 유닛(204), 서비스 식별자(210) 및 서비스 정보(211)를 저장하는 저장 장치(205), 하나 이상의 프로세서 또는 프로세서 코어(206), 네트워크 인터페이스 유닛(207), 메모리(208), 사용자 인터페이스 유닛(203) - 버스, 상호연결부 또는 메쉬(209)를 통해 서로 결합되어 있음 - , 및 동작 환경 모니터링 유닛(801)을 포함하지만, 이들로 제한되지 않는다. 이들 구성요소는 도 2 및 도 8에 도시된 것과 동일하거나 유사한 기능을 가질 수 있으며, 따라서 어떤 참조 번호는 예시를 위해 도 2 및 도 8과 동일하게 유지되고 있다.
그에 부가하여, 일 실시예에 따르면, 장치(1200)는 하나 이상의 장치를 다른 장치를 위해 서비스를 광고하는 그룹 광고주로서 선택하기 위해 네트워크의 근접성 내의 다른 장치와 협조하도록 구성되어 있는 광고주 선택 유닛(1201)을 추가로 포함한다. 예를 들어, 광고주 선택 유닛(1201)은, 네트워크의 소정의 근접성 내의 다른 장치들 중 하나 이상의 장치를 그룹 광고주로서 선택하거나 협상하기 위해, 네트워크의 소정의 근접성 내의 다른 장치들의 광고주 선택 유닛과 통신한다. 하나 이상의 장치는 모니터링 유닛(801)에 의해 모니터링되거나 수집될 수 있는 하나 이상의 파라미터 또는 속성(예를 들어, 동작 조건 및/또는 사용자 거동 등)에 기초하여 결정되고 선택될 수 있다.
예를 들어, 광고주 선택 유닛(1201)이 원격 장치가 그룹 광고주로서 선택되어야 하는 것으로 판정할 때, 광고주 선택 유닛(1201)은, 원격 장치가 장치(1200)에 대한 서비스를 광고할 수 있도록, 서비스 광고 요청 메시지(간단히 광고 요청이라고도 함)를 선택된 원격 장치로 전송하라고 서비스 광고 유닛(201)에 지시할 수 있다. 네트워크에서 브로드캐스트되거나 멀티캐스트되는 광고와 달리, 광고 요청은 광고를 하도록 특정의 원격 장치에 요청하는 유니캐스트(예컨대, 포인트-투-포인트) 메시지일 수 있다. 다른 대안으로서, 하나 이상의 원격 광고주에 요청하는 광고 요청이 네트워크에서 멀티캐스트 또는 브로드캐스트될 수 있다. 일 실시예에서, 원격 광고주로 전송되는 서비스 광고 요청은 장치(1200)의 주소[예컨대, 장치(1200)의 매체 액세스 주소 또는 MAC], 서비스 식별자의 수, 실제 서비스 식별자(예컨대, 해시), 및 장치(1200)의 가용성 스케줄과 같은 가용성 정보를 포함한다. 그 결과, 서비스가 원격 그룹 광고주에 의해 광고될 때, 원격 발견자는, 원격 그룹 광고주와 접촉할 필요 없이, 원격 그룹 광고주에 의해 광고되는 하나 이상의 서비스를 문의하기 위해 장치(1200)와 직접 통신할 수 있다. 장치(1200)는, 원격 그룹 광고주가 장치(1200)를 위해 서비스들 중 적어도 일부를 광고하는 동안, 그 자신의 서비스를 계속 광고할 수 있다.
다른 대안으로서, 원격 광고주가 장치(1200)에 대한 서비스를 광고하도록 선택되면, 광고주 선택 유닛(1201)은 그 자신의 서비스를 광고하는 것을 중단하고 장치(1200)를 피광고주로 전환시키라고 서비스 광고 유닛(201)에 지시할 수 있다. 게다가, 광고주 선택 유닛(1201)은 단지 서비스 광고 요청을 원격 장치로부터 수신할 수 있고, 원격 장치를 위해서는 물론, 그 자신의 서비스의 광고도 수행하라고 서비스 광고 유닛(201)에 지시할 수 있다. 이 상황에서, 광고 요청은 브로드캐스트 메시지(예컨대, 네트워크 내의 모든 장치로 전송됨)보다는 유니캐스트 또는 멀티캐스트 메시지(예컨대, 하나 이상의 특정의 장치로 특정하여 보내짐)이다.
본 출원의 실시예는 많은 장치가 서로의 도달 거리 내에 있고 근접성 검출에(예컨대, 혼잡한 회의실에) 참여하는 상황에서 적용될 수 있다. 이 상황에서, 단지 몇몇 장치만이 다른 장치들 모두를 위해 광고하는 경우, 장치들이 그의 광고를 공유하게 함으로써 확장성이 달성된다. 2개의 장치가 (앞서 기술한 근접성 검출을 통해) 서로를 볼 때 그리고 이들 장치가 공통의 서비스 식별자(예컨대, 해시)를 공유할 수 있다는 사실에 상관없이, 장치들 중 하나의 장치는, 예를 들어, 유향 광고 요청 프레임(directed advertisement request frame)을 다른 장치로 전송함으로써, 그 자신의 광고 페이로드를 전달하라고 다른 장치에 요청할 수 있다. 광고 요청 프레임이 답변될 필요는 없으며, 요청받은 장치가 요청측 장치의 광고 페이로드를 전달하는 것으로 관찰되는 한, 요청받은 장치는 요청측 장치에 대한 그룹 광고주인 것으로 간주되고, 요청측 장치는 그러면 피광고주로서 간주된다.
일 실시예에서, 장치는 4가지 상태 중 하나의 상태에서 동작할 수 있다:
Figure 112012049998657-pct00016
상태 0: 광고주(예컨대, 그 자신을 위해서만 광고함)
Figure 112012049998657-pct00017
상태 1: 그룹 광고주(예컨대, 그 자신을 위해 광고하고 어떤 다른 피어를 위해 광고함).
Figure 112012049998657-pct00018
상태 2: 광고주 및 피광고주(예컨대, 적어도 하나의 다른 피어에 의해 광고되고, 그 자신을 위해 광고하며, 다른 피어를 위해 광고하지 않음)
Figure 112012049998657-pct00019
상태 3: 피광고주(예컨대, 어떤 다른 피어에 의해 광고됨)
장치는 먼저 장치가 그 자신의 서비스만을 광고하는 상태 0에서 시작한다. 이 상태는 기본 상태이고, 이전의 섹션에서 기술된 것과 동일한 기본 거동을 공유한다. 협력적 광고 알고리즘에의 참여를 통해, 상태 0에 있는 장치는 부가의 협력적 광고 상태 1 내지 3 중 하나로 격상될 수 있다.
알고리즘은 단지 하나의 프레임(즉, 광고 요청) - 유향 프레임(directed frame)이고 상태 0, 상태 2 또는 상태 3에 있는 장치에 의해 상태 0, 상태 1 또는 상태 2에 있는 장치로 전송될 수 있음 - 을 사용한다. 다수의 장치가 근접성 검출에 참여하는 많은 수의 다른 장치들의 도달 거리 내에 있을 때마다, 이들 장치는 협력적 광고에 들어갈 수 있다. 일 실시예에서, 협력적 광고를 구현하는 각각의 장치는 그 자신의 광고 페이로드를 전달할 수 있는 주어진 수의 광고주(예를 들어, 2개 또는 3개의 광고주)를 발견하려고 시도한다. 피광고주가 충분한 피어에 의해 광고될 때, 피광고주는 그 자신의 광고 프레임을 전송하는 것을 중단할 수 있고, 이어서 그의 원격 그룹 광고주를 통해서만 발견가능하다. 광고에 대한 요청은 고정된 기간(예컨대, 몇 분) 동안 유효할 수 있고, 이어서 갱신될 필요가 있을 수 있다.
일 실시예에 따르면, 2개의 장치가 서로를 볼 수 있을 때에만(즉, 이들 장치 둘 다가 상태 0, 상태 1 또는 상태 2에서 동작하고 있을 때) 협력적 광고가 행해진다. 일 실시예에서, 하기의 고려사항들 중 적어도 일부에 기초하여, 장치가 다른 장치에 대한 그룹 광고주로서 선택될 수 있다:
1. 장치가 소정의 수(예컨대, 16개) 초과의 피어를 대신하여 광고하지 않는 경우, 장치가 그룹 광고주로서 선택될 수 있다;
2. 장치가 가장 많은 수의 다른 피어를 대신하여 현재 광고하고 있는 경우, 장치가 그룹 광고주로서 선택될 수 있다;
3. 장치가 가장 적은 수의 피어에 의해 현재 광고되고 있는 경우, 장치가 그룹 광고주로서 선택될 수 있다;
4a. 장치가 총합하여 가장 많은 수의 서비스를 광고하는 경우, 장치가 그룹 광고주로서 선택될 수 있다; 및/또는
4b. 장치가 가장 긴 배터리 수명이 남아 있는 경우, 장치가 그룹 광고주로서 선택될 수 있다;
5. 장치가 가장 많은 수의 서비스 ID를 갖는 경우, 장치가 그룹 광고주로서 선택될 수 있다; 및
6. 장치가 가장 높은 MAC 주소를 갖는 경우, 장치가 그룹 광고주로서 선택될 수 있다.
하나의 장치를 선택하기 위해, 상기 항목이 순차적 순서로 및/또는 병렬로 평가된다. 예를 들어, 항목 4a 및 항목 4b가 동시에 평가될 수 있다. 즉, 비정상적으로 많은 수의 서비스 ID를 갖는 장치가 그룹 광고주로서 선택될 가능성이 가장 많을 것이다. 서비스 ID의 수가 거의 동일한 경우, 배터리 사용량이 주요 인자로 된다. 한편, 장치가 무한한 배터리 수명을 갖는 경우(예컨대, AC 콘센트에 꽂혀 있는 경우), 장치가 또한 그룹 광고주로서 선택될 것이다. 일 실시예에서, 배터리 사용량이 장치의 부류 및 배터리에 남아 있는 동작 시간(up time)의 양을 나타내는 2개의 숫자로 코딩될 수 있다. 협력적 광고의 토폴로지적 분산(topological distribution)을 최적화하는 것이 알고리즘의 목표들 중 하나이다. 이 목표는 적은 수의 그룹 광고주가 다른 피광고주들에 대한 부가의 광고 페이로드를 전달하는 상황으로 수렴하는 것이며, 그러면 다른 피광고주들은 자신을 광고하는 것을 중단할 것이다(즉, 상태 3에 들어감). 피광고주의 광고주가 공간적으로 분산되어 있고 및/또는 피광고주에 가까이 있을 수 있다(예컨대, 광고주의 균일한 공간 분포).
공간 분포의 균일성이 달성되는 이유는, 공통의 피광고주를 공유하는 다수의 그룹 광고주가 서로를 볼 수 있어서는 안되거나 아주 낮은 RSSI만으로 서로를 볼 수 있기 때문이다(즉, 서로 가까이 있지 않음). 다수의 그룹 광고주가 특정 레벨의 RSSI(예컨대, 1/2 도달거리 초과의 RSSI)로 서로를 볼 수 있고 공통의 피광고주를 공유할 때마다, 일 실시예에 따르면, 그룹 광고주들 중 하나의 그룹 광고주는 그 공통의 피광고주에 대한 부가의 페이로드를 폐기시키고 그 피광고주에 대한 광고주인 것을 중단할 수 있다. 그에 부가하여, 상기 항목 1 내지 항목 6에 부합하는 그 주변의 피어들 중에서, 장치는 가장 가까운 피어(예컨대, RSSI에 기초함)를 그의 잠재적인 그룹 광고주로서 자유롭게 선택한다.
일부 실시예에 따르면, 광고는 시간상 유한하고 주기적으로(예를 들어, 매 몇분 정도마다) 갱신될 필요가 있다. 대응하는 피광고주가 그룹 광고주에 새로운 요청을 전송할 때 광고가 갱신된다. 요청이 최소량의 시간 내에(예를 들어, 몇 분 미만 이내에) 주어진 피어로 재전송될 수 없다. 장치가 피어로부터 수신하는 프레임의 RSSI가 중간 범위와 최대 범위 사이에 있을 때마다(즉, 광고주와 피광고주가 서로에 비교적 가까이 있을 때마다) 장치는 다른 피어에 의해 광고되도록 요청할 수 있다(예컨대, 광고 요청을 전송함). 이것은 제3자 장치가 피광고주의 도달 거리 내에 있지 않고 광고주의 도달 거리 내에 있는 상황을 회피한다.
일 실시예에서, 장치는, 다수의 피어가 상기 항목 1 내지 항목 6을 만족시키면, 그 피어들에 그룹 광고주로서 역할하라고 요청할 수 있다. 항목 1 내지 항목 6이 그렇게 설계되어 있는 이유는, 서로의 도달 거리 내에 있는 임의의 장치 쌍 내에서, 장치들 중 단지 하나만이 잠재적으로 그 쌍에 대한 그룹 광고주로서 선택될 수 있기 때문이다. 서로로부터 1/2 RSSI 도달 거리에 있는 상태 3에 있는 그룹 광고주는 그의 부가의 페이로드를 비교하고 중복적인 부가의 광고 페이로드를 폐기할 수 있다. 즉, 서로로부터 1/2 RSSI 도달 거리에 있는 2개의 그룹 광고주가 공통의 피광고주를 공유하는 경우, 광고주들 중 하나는 피광고주에 대한 광고를 폐기해야만 한다. 폐기하는 장치를 광고주로서 선택하는 것도 역시 상기 항목 1 내지 항목 6에 따를 수 있다. 즉, 가장 많은 수(예컨대, 최대 16개)의 피어를 전달하는 그룹 광고주는 공통의 피광고주를 유지할 것인 반면, 가장 낮은 수의 피어를 전달하는 그룹 광고주는 피광고주를 폐기할 것이다. 주목할 점은, 이것이 어떤 프레임의 교환도 필요로 하지 않는다는 것이다. 즉, 선택된 그룹 광고주는 공유된 피광고주를 유지하고 아무 것도 하지 않을 것이며, 다른 그룹 광고주는 피광고주를 조용히 폐기할 것이다. 이들 광고주 둘 다는 상태 3에 있다.
일 실시예에서, 공통의 피광고주를 공유하지 않는 서로로부터 1/2 RSSI 도달 거리에 있는 상태 1에 있는 그룹 광고주는 또한 협력하기로 할 수 있다 - 즉, 그룹 광고주들 중 하나는 그룹 광고주로서 선택되고, 하나는 그 쌍에 대한 피광고주로서 선택된다 -. 피광고주는 상태 2에 들어가고(예컨대, 그 자신의 피광고주를 폐기함), 피광고주가 3개의 피어에 도달하면, 피광고주는 그 자신의 페이로드를 폐기하고 상태 3에 들어간다(예컨대, 광고하는 것을 완전히 중단함). 그 쌍의 광고주는 피광고주의 부가의 페이로드가 아니라 피광고주의 광고 페이로드를 전달하기 시작할 수 있다. 이 요구사항은 피광고주의 부가의 페이로드가 처음에 그에 가까이 위치하는 그룹 광고주로부터 그로부터 멀리 위치할지도 모르는 그룹 광고주로 전달되지 않도록 해준다. 폐기된 제3자 피어는 이제 새로운 광고주를 찾아내거나 그 자신이 광고주로 될 필요가 있다. 주목할 점은, 이것도 역시 어떤 프레임의 교환도 필요로 하지 않는다는 것이다. 상태 2에 있는 폐기된 피어는 다른 그룹 광고주를 찾아내고 그의 현재 상태를 유지할 수 있거나, 상태 0으로 천이하여 그룹 광고주 없이 동작할 수 있다. 그 자신이 그의 광고 페이로드를 전달하는 적어도 2개의 그룹 광고주를 찾을 수 없는 상황에 있다는 것을 발견하는 상태 3에 있는 장치는 상태 2에 들어가고 그 자신의 광고를 브로드캐스트하는 것을 재개할 수 있다. 그의 광고 페이로드를 전달하는 어떤 그룹 광고주도 찾을 수 없는, 상태 3에 있는 장치는 상태 0에 들어가고 그 자신의 광고를 브로드캐스트하는 것을 재개할 수 있다. 이들 2번의 전환은 그룹 광고주가 도달 거리를 벗어나고, 디스에이블될 때, 및/또는 광고 요청이 타임아웃되고 그 주변의 모든 그룹 광고주가 최대 용량에 있을 때, 및/또는 그 주변에 있는 광고주가 많지 않을 때 일어날 수 있다. 다른 대안으로서, 그의 광고 페이로드를 전달하는 충분한 그룹 광고주를 발견할 수 없는 상태 3에 있는 장치는 상기 규칙을 사용하여 새로운 그룹 광고주를 선택할 수 있고, 성공하는 경우, 상태 3에 머무를 수 있다.
예를 들어, "양호한" 상황은 하나의 그룹 광고주가 최대 16개의 부가의 페이로드를 전달하고 피광고주의 페이로드가 2개의 주변의 그룹 광고주에 의해 전달될 때이다. 채널을 통해 전송되는 광고 프레임의 수는 이어서 전체적으로 16으로 나누어지고, 따라서 충돌 확률이 훨씬 더 작을 것이다. 총 전송 페이로드(즉, 바이트/초)가 8로 나누어진다.
도 13a 내지 도 13c는 본 발명의 일부 실시예에 따른, 동작 상태들 간의 장치의 천이의 일례를 나타낸 천이도이다. 도 13a를 참조하면, 장치(1301 내지 1308)가 소정의 근접성 - 앞서 기술한 특정의 기법을 사용하여 검출됨 - 내에서 동작하고 있는 것으로 가정된다. 이 일례에서, 장치(1301, 1302)는 상태 1에 있는 그룹 광고주로서 동작하고 있고, 장치(1303 내지 1307)는 상태 3에 있는 피광고주로서 동작하고 있으며, 장치(1308)는 상태 2에 있는 광고주 및 피광고주로서 동작하고 있다. 도 13a에서 알 수 있는 바와 같이, 장치(1301)는 장치(1308)는 물론, 장치(1303, 1305)에 대한 그룹 광고주로서 선택된다. 장치(1302)는 장치(1304, 1305 내지 1307)에 대한 그룹 광고주로서 선택된다. 또한, 상태 1에서 동작하고 있는 장치(1301, 1302)가 서로에 가까이 있고 서로를 볼 수 있는 것(예컨대, 특정의 RSSI 레벨 초과)으로 가정된다.
상기 광고주 선택 알고리즘에 기초하여, 장치(1302)가 장치(1301)[예컨대, 장치(1303, 1305, 1308)]보다 더 많은 수의 피광고주[예컨대, 장치(1304, 1305 내지 1307)]를 가지고 있기 때문에, 장치(1301)와 장치(1302) 중에서, 장치(1302)가 장치(1301)에 대한 그룹 광고주로서 선택된다. 그 결과, 도 13b에 도시된 바와 같이, 장치(1301)는 상태 1에서 상태 2로 천이하고, 더 이상 장치(1308)에 대한 광고주로서 동작하지 않는다. 그 후에, 도 13c에서, 장치(1308)는 상태 1에 있는 그룹 광고주가 되고, 장치(1301)는 상기 항목 3(예컨대, 가장 적은 수의 피광고주)으로 인해 장치(1302, 1308)에 의해 광고되는 피광고주가 된다.
광고주가 피광고주에 대한 광고를 전달할 때, 그 자신의 서비스 및 피광고주의 서비스에 대한 광고를 포함하는 그룹 광고 메시지가 생성된다. 도 14는 본 발명의 일 실시예에 따른 그룹 광고 메시지를 나타낸 블록도이다. 도 14를 참조하면, 그룹 광고 메시지(1400)는 광고주 자체에 대한 광고 메시지(1401)(예컨대, 그 자신의 서비스에 대한 광고 메시지) - 도 5의 광고 메시지(500)와 동일하거나 유사함 - 를 포함한다. 그에 부가하여, 복합 광고 메시지(1400)는 부가의 광고 메시지(1402 내지 1404) - 각각이 피광고주에 대응함 - 를 포함한다. 일 실시예에서, 피광고주에 대한 광고 메시지(1410)[예컨대, 메시지(1402 내지 1404)]는 피광고주의 주소(예컨대, MAC 주소)(1411), 서비스 식별자의 수(1412), 및 실제 서비스 식별자(예컨대, 해시)(1413), 및 피광고주의 가용성 스케줄(1414)을 포함한다. 그 결과, 광고 메시지(1410)가 광고주에 의해 광고되지만, 다른 장치들이 피광고주와 직접 통신함으로써 광고에 응답할 수 있다. 주목할 점은, 도 14에 도시된 광고 메시지의 형식이 단지 예시를 위해 기술되어 있으며, 다른 형식도 역시 적용될 수 있다는 것이다.
또한, 주목할 점은, 로컬 장치가 원격 장치의 동작 조건을 고려하여 로컬 장치의 동작 조건에 기초해 원격 장치를 그의 그룹 광고주로서 선택할 수 있지만, 일 실시예에 따르면, 원격 장치가 원격 장치의 동작 조건에 대한 그 자신의 결정 또는 평가에 기초하여 광고 요청을 거절하거나 무시할 수 있다는 것이다. 이 상황에서, 원격 장치로부터 확인 응답이 수신되지 않는 한, 로컬 장치는 선택된 원격 장치가 로컬 정치를 위해 실제로 광고를 수행하는지를 판정하기 위해 네트워크에서 트래픽(예컨대, 서비스 광고)을 모니터링해야만 할지도 모른다. 로컬 장치는 원격 장치가 광고 요청를 거부하거나 무시하는 경우 다른 원격 장치를 선택해야만 할지도 모른다.
도 15는 본 발명의 다른 실시예에 따른, 서비스를 광고하는 방법을 나타낸 흐름도이다. 주목할 점은, 방법(1500)이 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합을 포함할 수 있는 처리 논리에 의해 수행될 수 있다는 것이다. 예를 들어, 방법(1500)이 광고 유닛(201) 및/또는 도 12의 광고 선택 유닛(1201)에 의해 수행될 수 있다. 도 15를 참조하면, 블록(1501)에서, 로컬 장치는 네트워크에서 하나 이상의 서비스를 광고할 수 있는 하나 이상의 원격 장치를 결정하기 위해 무선 네트워크에서 리스닝한다. 블록(1502)에서, 로컬 장치는 로컬 장치와 원격 장치의 어떤 소정의 동작 통계 및/또는 구성을 비교한다. 블록(1503)에서, 로컬 장치는 비교에 기초하여 로컬 장치의 하나 이상의 서비스를 광고할 하나 이상의 원격 장치를 선택한다. 블록(1504)에서, 로컬 장치는 로컬 장치를 위해 광고를 요청하는 광고 요청 - 광고될 하나 이상의 서비스의 식별자(예컨대, 해시)를 포함함 - 을 선택된 원격 장치로 전송한다. 장치는 이어서, 블록(1505)에서, 원격 장치의 다음 그룹 광고 메시지에 그의 서비스가 있는지 리스닝하는 것에 의해 또는 성공적인 광고 응답을 기다리는 것에 의해 요청이 수락되었는지를 알아보기 위해 기다린다. 요청이 실패하는 경우, 로컬 장치는 그룹 광고주로서 역할할 수 있는 다른 원격 장치가 있는지를 검사한다. 있는 경우, 블록(1501)으로 가서, 다른 장치에 대해 절차를 재시도한다. 없는 경우, 절차를 종료한다. 요청이 성공하는 경우, 블록(1505)으로 계속된다. 블록(1505)에서, 선택적으로 로컬 장치는 그 자신의 서비스의 광고를 종료하고, 그의 서비스를 광고하기 위해 선택된 원격 장치에 의존한다.
도 16은 본 발명의 다른 실시예에 따른, 서비스를 광고하는 방법을 나타낸 흐름도이다. 주목할 점은, 방법(1600)이 하드웨어, 펌웨어, 소프트웨어 또는 이들의 조합을 포함할 수 있는 처리 논리에 의해 수행될 수 있다는 것이다. 예를 들어, 방법(1600)이 광고 유닛(201) 및/또는 도 12의 광고 선택 유닛(1201)에 의해 수행될 수 있다. 도 16을 참조하면, 블록(1601)에서, 광고될 하나 이상의 서비스에 대한 서비스 ID를 포함하는 광고 요청이 원격 장치로부터 수신된다. 블록(1602)에서, 장치는 요청이 유효한지를 알아보기 위해 현재의 장치와 요청측 장치의 어떤 소정의 동작 통계 및/또는 구성을 비교한다. 유효하지 않은 경우, 장치는 블록(1606)에서 실패를 나타내는 광고 응답을 전송할 수 있고, 이어서 블록(1602)으로 간다. 유효한 경우, 장치는 성공을 나타내는 광고 응답을 전송할 수 있고, 이어서 블록(1604)으로 계속된다. 블록(1604)에서, 처리 논리는 로컬 서비스의 광고 및 원격 장치의 요청된 하나 이상의 서비스의 광고를 갖는 그룹 광고 메시지를 구성한다. 블록(1605)에서, 로컬 장치는 네트워크에서 복합 광고 프레임(compound advertisement frame)을 주기적으로 브로드캐스트한다.
도 17은 본 발명의 일 실시예에 따른, 장치를 그룹 광고주로서 선택하는 방법을 나타낸 흐름도이다. 도 17을 참조하면, 블록(1701)에서, 장치가 소정의 수 초과의 다른 피어를 위해 현재 광고하고 있지 않은 경우, 장치가 그룹 광고주로서 선택될 수 있다. 블록(1702)에서, 장치가 가장 많은 수의 다른 피어를 위해 현재 광고하고 있는 경우, 장치가 그룹 광고주로서 선택될 수 있다. 블록(1703)에서, 장치가 가장 적은 수의 다른 피어에 의해 (예컨대, 피광고주로서) 현재 광고되고 있는 경우, 장치가 그룹 광고주로서 선택될 수 있다. 블록(1704)에서, 장치가 총합하여 가장 많은 수의 서비스를 현재 광고하고 있는 경우 또는, 다른 대안으로서, 장치가 가장 긴 잔류 배터리 수명을 가지는 경우, 장치가 그룹 광고주로서 선택될 수 있다. 블록(1705)에서, 장치가 현재 가장 많은 수의 서비스 ID를 가지는 경우, 장치가 그룹 광고주로서 선택될 수 있다. 블록(1706)에서, 장치가 현재 가장 높은 MAC(media access control) 주소를 가지는 경우, 장치가 그룹 광고주로서 선택될 수 있다. 주목할 점은, 블록(1701 내지 1706)에 수반된 동작들이 순차적으로 및/또는 특정의 순서 없이 병렬로 수행될 수 있다는 것이다. 본 명세서에서 다른 인자들도 고려될 수 있다.
본 출원 전체에 걸쳐 기술된 기법이 다양한 시나리오 또는 상황에 적용될 수 있다. 서비스가 앞서 기술된 기법들 중 일부를 사용하여 휴대용 장치의 근접성 검출에 기초하여 광고 및/또는 발견될 수 있다. 이 특징은 휴대용 장치의 사용자가 하나 이상의 서비스를 무선 네트워크 프로토콜을 통해 영속적으로 광고하고 휴대용 장치가 그 서비스들 중 하나의 서비스를 광고하고 있는 다른 휴대용 장치의 도달 거리 내에서 움직이는지를 검출할 수 있게 해준다. "영속적으로"라는 용어는, 장치의 로컬 사용자(예컨대, 광고주)로부터의 추가적인 상호작용 없이, 광고가 일정 기간 동안 공개되거나 이용가능할 수 있다는 사실을 말한다.
예를 들어, 게이머(예컨대, 체스 또는 포커 플레이어 등)는 인터넷 사이트 또는 게임 소셜 네트워크 등에 쉽게 연결하여 임의의 이용가능한 상대방과 플레이할 수 있다. 이러한 사용자는 결코 상대방을 개인적으로 만날 수 없고 네트워크를 통해서 알 수 있다(발견할 수 있음), 이 시나리오에서, 상대방을 찾고 있는 휴대용 장치의 사용자는 네트워크에서 특정의 게임에 대한 광고를 브로드캐스트할 것이다. 광고가 게임 응용 프로그램에 의해 발생될 수 있고, 플레이어로서의 사용자의 순위, 상대방의 원하는 순위, 원하는 게임 유형 등과 같은 부가 정보를 포함할 수 있다. 사용자가 동일한 게임을 광고하고 있는 다른 사람의 도달 거리 내로 들어가자마자, 양쪽 사용자는 (예컨대, 알람, 진동 등에 의해) 경고를 받을 수 있고 플레이하기 위해 서로와 연결할 수 있다. 근접성이란 또한 사용자가 네트워크를 통해 랜덤한 상대방과 플레이하는 것이 아니라 개인적으로 실제로 만날 수 있는 다른 사용자와 플레이한다는 것을 의미한다.
앞서 기술된 기법은 또한 콘텐츠 또는 파일을 영속적으로(예컨대, 일정 기간 동안 이용가능함) 공유하는 데 적용될 수 있다. 이것은 휴대용 장치로부터 어떤 콘텐츠(예컨대, 사진)를 내보내는 것과 유사하지만, 피어-투-피어 링크를 통해 애드혹 방식으로 행해진다. 예를 들어, 회의(또는 파티)에 참석하는(또는 대학 캠퍼스에 있는) 사용자는 사진 또는 문서를 공유할 수 있고, 이 공유를 일정 기간(예컨대, 하루 또는 회의 또는 파티의 전체 기간) 동안 "공개"되어 있는 채로 유지할 수 있다. 사용자의 장치에 인증/페어링될 수 있는 임의의 동료 또는 친구가 다가와서(예컨대, 근접성 내에 있음) 사진 또는 문서에 액세스(예컨대, 그를 다운로드)할 수 있다.
공유된 콘텐츠의 소유자가 이를 허용하는 경우 그리고 대응하는 장치(예컨대, 광고주)의 특정 구성에 따라, 피어-투-피어 연결을 생성하기 위한 소유자의 상호작용(예컨대, 경고하거나 권한을 요구하는 것 등)을 필요로 하지 않고 콘텐츠가 공유될 수 있다. 사용자 관점에서 볼 때, 이것은 행사의 사진을 찍을 수 있고 하루 종일 다니면서 사진을 계속하여 브로드캐스트할 수 있다는 것을 의미한다.
2개 이상의 장치가 네트워크를 통해 소정의 근접성 내에서 서로에 결합될 때, 장치는 네트워크를 통해 서로를 발견하는 것은 물론, 서로에게 이용가능한 서비스도 발견할 수 있다. 장치가 (예컨대, 대응하는 서비스 ID를 매칭시키는 것에 의해) 공통의 다중 장치 지원(multi-device capable) 응용 프로그램(다중 플레이어 게임 등)을 지원하는 것으로 판정할 수 있는 경우, 각각의 장치는 다중 장치 지원 응용 프로그램의 하나 이상의 분산 기능을 수행하도록 구성될 수 있다. 분산 기능은 분산 기능을 실질적으로 동시에 수행할 수 있는 하나 이상의 상이한 장치에 할당된 다중 장치 지원 응용 프로그램의 기능이다. 분산 기능은 입력, 출력 및 컴퓨팅 등을 포함할 수 있다. 각각의 장치는 그의 분산 기능을 수행하기 위해 다른 장치들과 협업할 수 있다. 게다가, 장치들 중 일부는 동일한 분산 기능을 수행하기 위해 서로 협업할 수 있다. 환언하면, 각각의 장치는 다중 장치 지원 응용 프로그램을 수행하는 데 특정의 역할을 맡을 수 있고, 그 역할에 기초하여 다른 장치들과 관계를 가진다. 게다가, 이러한 역할 및 관계는 네트워크에 장치를 추가하는 것, 네트워크로부터 장치를 제거하는 것, 응용 프로그램의 현재 실행 상태, 및/또는 사용자 입력 등에 응답하여 동적으로 수정될 수 있다.
이 일례에서, 다중 장치 지원 응용 프로그램의 적어도 일부가 네트워크를 통해 다수의 장치 간에 공유된다. 다중 장치 지원 응용 프로그램을 공유하기 위해, 다중 장치 지원 응용 프로그램의 전부 또는 일부가 네트워크 내의 장치들의 일부 또는 전부 상에 이전에 설치되어 있을 수 있고, 여기서 다중 장치 지원 응용 프로그램은 앞서 기술된 서비스 ID에 의해 식별될 수 있다. 다른 대안으로서, 하나 이상의 장치가 다중 장치 지원 응용 프로그램을 공유하기 위해 다중 장치 지원 응용 프로그램의 전부 또는 일부를 네트워크 내의 다른 장치로 전송할 수 있다. 그 결과, 분산 기능이 협업 방식으로 수행된다. 다수의 장치에 의한 협업 분산 기능에 대한 기법에 관한 추가의 상세한 정보는 2009년 6월 5일자로 출원된, 발명의 명칭이 "가상 액세서리인 다기능 장치(Multifunctional Devices as Virtual Accessories)"인 동시 계류 중인 미국 특허 출원 제12/479,586호(참조 문헌으로서 그 전체 내용이 본 명세서에 포함됨)에서 찾아볼 수 있다.
데이터 처리 시스템의 일례
도 18은 본 발명의 일 실시예에서 사용될 수 있는 데이터 처리 시스템의 일례를 나타낸 것이다. 예를 들어, 시스템(1800)은 도 1에 도시된 장치들(101 내지 103) 중 임의의 것으로서 구현될 수 있다. 도 18에 도시된 데이터 처리 시스템(1800)은 하나 이상의 마이크로프로세서일 수 있거나 집적 회로의 시스템 온 칩일 수 있는 처리 시스템(1811)을 포함하고, 이 시스템은 또한 처리 시스템에서 실행하기 위한 프로그램 및 데이터를 저장하는 메모리(1801)를 포함한다. 시스템(1800)은 또한, 예를 들어, 스피커 및 마이크를 통해 음악을 재생하거나 전화 기능을 제공하기 위한 마이크 및 스피커를 포함할 수 있는 오디오 입/출력 서브시스템(1805)도 포함하고 있다.
디스플레이 제어기 및 디스플레이 장치(1807)는 사용자에게 시각적 사용자 인터페이스를 제공하고, 이 디지털 인터페이스는 운영 체제 소프트웨어를 실행할 때 아이폰® 전화 장치, 아이패드 장치, 또는 매킨토시 컴퓨터 상에서 보여지는 것과 유사한 그래픽 사용자 인터페이스를 포함할 수 있다. 시스템(1800)은 또한 다른 데이터 처리 시스템과 통신하기 위해 하나 이상의 무선 송수신기(1803)를 포함한다. 무선 송수신기는 WiFi 송수신기, 적외선 송수신기, 블루투스 송수신기, 및/또는 무선 셀룰러 전화 송수신기일 수 있다. 특정 실시예에서, 부가의 구성요소(도시 생략)가 또한 시스템(1800)의 일부일 수 있다는 것과, 특정 실시예에서, 도 18에 도시된 것보다 적은 수의 구성요소가 또한 데이터 처리 시스템에서 사용될 수 있다는 것을 잘 알 것이다.
데이터 처리 시스템(1800)은 또한 사용자가 시스템에 입력을 제공할 수 있게 해주기 위해 제공되어 있는 하나 이상의 입력 장치(1813)도 포함하고 있다. 이들 입력 장치는 키패드, 키보드, 터치 패널 또는 멀티 터치 패널(multi touch panel)일 수 있다. 데이터 처리 시스템(1800)은 또한 도크(dock)에 대한 커넥터일 수 있는 선택적인 입/출력 장치(1815)를 포함한다. 하나 이상의 버스(도시 생략)가 공지된 다양한 구성요소를 상호연결시키는 데 사용될 수 있다는 것을 잘 알 것이다. 도 18에 도시된 데이터 처리 시스템은 핸드헬드 컴퓨터 또는 PDA(personal digital assistant), 또는 PDA-유사 기능을 갖는 셀룰러 전화, 또는 셀룰러 전화를 포함하는 핸드헬드 컴퓨터, 또는 아이팟과 같은 미디어 플레이어, 또는 하나의 장치에 PDA 및 셀룰러 전화를 겸비하고 있는 미디어 플레이어와 같은 이들 장치의 측면들 또는 기능들을 겸비하고 있는 장치일 수 있다. 다른 실시예에서, 데이터 처리 장치(1800)는 네트워크 컴퓨터 또는 다른 장치 내에 내장된 처리 장치, 또는 도 18에 도시된 것보다 더 적은 수의 구성요소 또는 잠재적으로 더 많은 수의 구성요소를 갖는 기타 유형의 데이터 처리 시스템일 수 있다.
본 발명의 적어도 어떤 실시예는 미디어를 제공하는 미디어 처리 시스템, 미디어를 저장하는 저장 장치를 포함할 수 있는 휴대용 음악 및/또는 비디오 미디어 플레이어와 같은 디지털 미디어 플레이어의 일부일 수 있고, 안테나 시스템 및 미디어 처리 시스템에 결합되어 있는 RF(radio frequency) 송수신기(예컨대, 셀룰러 전화의 RF 송수신기)를 추가로 포함할 수 있다. 어떤 실시예들에서, 원격 저장 장치에 저장된 미디어는 RF 송수신기를 통해 미디어 플레이어로 전송될 수 있다. 이 미디어는, 예를 들어, 음악 또는 기타 오디오, 정지 화상, 또는 동화상 중 하나 이상일 수 있다.
휴대용 미디어 플레이어는 미국 캘리포니아주 쿠퍼티노 소재의 Apple Inc.의 아이팟® 또는 아이팟 나노® 미디어 플레이어 상의 클릭 휠(click wheel) 입력 장치, 터치 스크린 또는 멀티 터치 입력 장치, 푸시버튼 장치, 이동가능 포인팅 입력 장치 또는 기타 입력 장치와 같은 미디어 선택 장치를 포함할 수 있다. 미디어 선택 장치는 저장 장치 및/또는 원격 저장 장치에 저장된 미디어를 선택하는 데 사용될 수 있다. 적어도 어떤 실시예에서, 휴대용 미디어 플레이어는 입력 장치를 통해 선택되어, 스피커 또는 이어폰(들)을 통해 또는 디스플레이 장치 상에 제공되거나 디스플레이 장치 및 스피커 또는 이어폰(들) 둘다를 통해 제공되는 미디어의 제목 또는 기타 표시자를 디스플레이하기 위해 미디어 처리 시스템에 결합되어 있는 디스플레이 장치를 포함할 수 있다.
이전의 상세한 설명의 어떤 부분들이 컴퓨터 메모리 내의 데이터 비트들에 대한 동작들의 알고리즘 및/또는 심볼 표현으로 제시되어 있다. 이들 알고리즘 설명 및 표현은 데이터 처리 분야의 당업자가 다른 당업자들에게 그의 작업의 내용을 가장 효과적으로 전달하는 데 사용되는 방식이다. 알고리즘은 여기서 일반적으로 원하는 결과를 가져오는 일관성있는 동작들의 시퀀스로 생각된다. 이 동작들은 물리적 양의 물리적 조작을 필요로 하는 동작들이다. 꼭 그럴 필요는 없지만, 보통 이들 양은 저장, 전송, 결합, 비교, 및/또는 다른 방식으로 조작될 수 있는 전기 또는 자기 신호의 형태를 갖는다. 이들 신호를 비트, 값, 요소, 심볼, 문자, 용어, 숫자, 기타로 말하는 것이, 주로 통상적으로 사용하기 때문에, 때때로 편리한 것으로 밝혀졌다.
그렇지만, 염두에 두어야 할 점은, 이 용어들 및 유사한 용어들 전부가 적절한 물리적 양과 연관되어야 하고 또 이들 양에 적용되는 편리한 호칭에 불과하다는 것이다. 달리 구체적으로 언급하지 않는 한, 이상의 설명으로부터 명백한 바와 같이, 이 설명 전체에 걸쳐, 이하의 특허청구범위에 기재된 것과 같은 용어를 이용하는 설명이, 컴퓨터 시스템의 레지스터 및 메모리 내에 물리적(전자적) 양으로 표현된 데이터를, 컴퓨터 시스템 메모리 또는 레지스터 또는 다른 이러한 정보 저장, 전송 또는 디스플레이 장치 내의 물리적 양으로 유사하게 표현되는 다른 데이터로 조작 및 변환하는 컴퓨터 시스템 또는 유사한 전자 컴퓨팅 장치의 동작 및 프로세스를 말한다는 것을 잘 알 것이다.
본 발명의 실시예는 또한 본 명세서에서의 동작을 수행하는 장치에 관한 것이다. 이 장치는 특히 요구된 목적에 맞도록 구성될 수 있거나, 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재구성되는 범용 컴퓨터를 포함할 수 있다. 이러한 컴퓨터 프로그램은 컴퓨터 판독가능 매체에 저장될 수 있다. 머신-판독가능 매체는 머신(예컨대, 컴퓨터)에 의해 판독가능한 형태로 정보를 저장하는 임의의 메카니즘을 포함한다. 예를 들어, 머신 판독가능(예컨대, 컴퓨터 판독가능) 매체는 머신(컴퓨터) 판독가능 저장 매체[예컨대, 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 자기 디스크 저장 매체, 광 저장 매체, 플래시 메모리 장치 등] 등을 포함한다.
여기에서 제공되는 알고리즘 및 디스플레이는 임의의 특정의 컴퓨터 또는 기타 장치에 내재적으로 관련되어 있는 것은 아니다. 여기에서의 개시 내용에 따른 프로그램들에서 다양한 범용 시스템이 사용될 수 있거나, 필요한 방법 동작들을 수행하도록 보다 특수화된 장치를 구성하는 것이 편리한 것으로 판명될 수 있다. 각종의 이들 시스템에 필요한 구조가 이상의 설명으로부터 드러날 것이다. 그에 부가하여, 본 발명의 실시예가 임의의 특정의 프로그래밍 언어를 참조하여 기술되어 있지 않다. 본 명세서에 기술된 본 발명의 실시예의 개시 내용을 구현하는 데 각종의 프로그래밍 언어가 사용될 수 있다는 것을 잘 알 것이다.
이상의 명세서에서, 본 발명의 실시예가 그의 구체적인 실시예들을 참조하여 기술되어 있다. 이하의 특허청구범위에 기재된 본 발명의 보다 광의의 사상 및 범위를 벗어나지 않고 본 발명에 다양한 수정이 행해질 수 있다는 것이 명백할 것이다. 그에 따라, 본 명세서 및 첨부 도면은 제한적인 의미가 아니라 예시적인 의미로 보아야 한다.

Claims (23)

  1. 피어-투-피어 네트워킹 환경에서 서비스를 광고하는 머신-구현 방법으로서,
    무선 네트워크에 결합된 로컬 장치의 동작 조건들을 모니터링하는 단계;
    상기 로컬 장치의 상기 동작 조건들에 기초하여 광고 기간을 동적으로 조정하는 단계;
    상기 로컬 장치가 상기 조정된 광고 기간에 따라 상기 무선 네트워크에서 서비스 광고 - 상기 서비스 광고는 상기 로컬 장치로부터 광고될 하나 이상의 서비스를 식별하는 하나 이상의 서비스 ID를 포함함 - 를 브로드캐스트하는 단계;
    상기 로컬 장치의 상기 동작 조건들에 기초하여 발견 기간을 동적으로 조정하는 단계; 및
    상기 로컬 장치가, 상기 무선 네트워크를 통해 원격 장치로부터 서비스 광고를 수신하기 위해, 상기 조정된 발견 기간에 따라 상기 무선 네트워크에서 리스닝하는 단계를 포함하고,
    상기 광고 기간은 미리 결정된 기본값과 제1 조정 인자의 곱으로서 계산되고, 상기 광고 기간은 상기 제1 조정 인자를 조정함으로써 동적으로 조정되는 것인, 방법.
  2. 제1항에 있어서,
    상기 광고 전송 기간은 상기 로컬 장치의 배터리 조건, 상기 로컬 장치의 사용자 거동, 네트워크 트래픽 조건, 및 광고될 서비스의 유형 중 적어도 하나에 기초하여 동적으로 조정되는 것인 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 발견 기간은 상기 로컬 장치의 배터리 조건, 상기 로컬 장치의 사용자 거동, 네트워크 트래픽 조건, 및 발견될 서비스의 유형 중 적어도 하나에 기초하여 동적으로 조정되는 것인 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 발견 기간은 상기 미리 결정된 기본값과 상기 제1 조정 인자와 상이한 제2 조정 인자의 곱으로서 계산되고, 상기 발견 기간은 상기 제2 조정 인자를 조정함으로써 동적으로 조정되는 것인 방법.
  7. 휴대용 장치로서,
    무선 송수신기;
    무선 네트워크에 결합된 상기 휴대용 장치의 동작 조건들을 모니터링하는, 상기 무선 송수신기에 결합된 모니터;
    상기 휴대용 장치의 동작 조건들에 기초하여 광고 기간을 동적으로 조정하는, 상기 모니터 및 상기 무선 송수신기에 결합된 서비스 광고 유닛 - 상기 서비스 광고 유닛은 상기 조정된 광고 기간에 따라 상기 무선 송수신기를 통해 상기 무선 네트워크에서 서비스 광고를 브로드캐스트하도록 구성되고, 상기 서비스 광고는 광고될 하나 이상의 서비스를 식별하는 하나 이상의 서비스 식별자(ID)를 포함함 - ; 및
    상기 휴대용 장치의 상기 동작 조건들에 기초하여 발견 기간을 동적으로 조정하고, 상기 무선 네트워크를 통해 원격 장치로부터 서비스 광고를 수신하기 위해, 상기 조정된 발견 기간에 따라 상기 무선 송수신기를 통해 상기 무선 네트워크에서 리스닝하는, 상기 모니터 및 상기 무선 송수신기에 결합된 서비스 발견 유닛을 포함하고,
    상기 광고 기간은 미리 결정된 기본값과 제1 조정 인자의 곱으로서 계산되고, 상기 광고 기간은 상기 제1 조정 인자를 조정함으로써 동적으로 조정되는 것인, 휴대용 장치.
  8. 삭제
  9. 제7항에 있어서,
    상기 광고 기간 및 상기 발견 기간 중 적어도 하나는 상기 휴대용 장치의 배터리 조건, 상기 휴대용 장치의 사용자 거동, 네트워크 트래픽 조건, 및 광고 또는 발견될 서비스의 유형 중 적어도 하나에 기초하여 동적으로 조정되는 것인 휴대용 장치.
  10. 삭제
  11. 제7항에 있어서,
    상기 발견 기간은 상기 미리 결정된 기본값과 상기 제1 조정 인자와 상이한 제2 조정 인자의 곱으로서 계산되고, 상기 발견 기간은 상기 제2 조정 인자를 조정함으로써 동적으로 조정되는 것인 휴대용 장치.
  12. 피어-투-피어 네트워킹 환경에서 서비스를 발견하는 머신-구현 방법으로서,
    무선 네트워크에 결합된 로컬 장치의 동작 조건들을 결정하는 단계;
    상기 로컬 장치의 상기 동작 조건들에 기초하여 발견 기간을 동적으로 조정하는 단계; 및
    상기 로컬 장치가, 상기 무선 네트워크를 통해 원격 장치에 의해 광고되는 서비스를 발견하기 위해, 상기 조정된 발견 기간에 따라 상기 무선 네트워크에서 리스닝하는 단계를 포함하고,
    상기 발견 기간은 미리 결정된 기본값과 제1 조정 인자의 곱으로서 계산되고, 상기 발견 기간은 상기 제1 조정 인자를 조정함으로써 동적으로 조정되는 것인, 방법.
  13. 제12항에 있어서,
    상기 로컬 장치의 상기 동작 조건들에 기초하여 광고 기간을 동적으로 조정하는 단계; 및
    상기 로컬 장치가 상기 조정된 광고 기간에 따라 상기 무선 네트워크에서 서비스 광고 - 상기 서비스 광고는 상기 로컬 장치로부터 광고될 하나 이상의 서비스를 식별하는 하나 이상의 서비스 식별자(ID)를 포함함 - 를 브로드캐스트하는 단계를 추가로 포함하는 방법.
  14. 휴대용 장치로서,
    무선 송수신기;
    상기 휴대용 장치의 동작 조건들을 결정하는, 상기 무선 송수신기에 결합된 모니터; 및
    상기 동작 조건들에 기초하여 발견 기간을 동적으로 조정하는, 상기 모니터 및 상기 무선 송수신기에 결합된 서비스 발견 유닛
    을 포함하고,
    상기 서비스 발견 유닛은, 무선 네트워크를 통해 원격 장치에 의해 광고되는 서비스를 발견하기 위해, 상기 조정된 발견 기간에 따라 상기 무선 네트워크에서 리스닝하도록 구성되고,
    상기 발견 기간은 미리 결정된 기본값과 제1 조정 인자의 곱으로서 계산되고, 상기 발견 기간은 상기 제1 조정 인자를 조정함으로써 동적으로 조정되는 것인, 휴대용 장치.
  15. 제14항에 있어서,
    상기 동작 조건들에 기초하여 광고 기간을 동적으로 조정하고,
    상기 조정된 광고 기간에 따라 상기 무선 네트워크에서 서비스 광고 - 상기 서비스 광고는 광고될 하나 이상의 서비스를 식별하는 하나 이상의 서비스 식별자(ID)를 포함함 - 를 브로드캐스트하는, 상기 모니터 및 상기 무선 송수신기에 결합된 서비스 광고 유닛을 추가로 포함하는 휴대용 장치.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
KR1020127016367A 2009-12-23 2010-12-08 동작 조건들에 기초하여 동적 광고 및 발견 기간을 갖는 피어-투-피어 네트워킹 환경에서의 효율적인 서비스 광고 및 발견 KR101462322B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US28968909P 2009-12-23 2009-12-23
US61/289,689 2009-12-23
US12/796,522 2010-06-08
US12/796,522 US9391853B2 (en) 2009-12-23 2010-06-08 Efficient service advertisement and discovery in a peer-to-peer networking environment with dynamic advertisement and discovery periods based on operating conditions
PCT/US2010/059590 WO2011087639A1 (en) 2009-12-23 2010-12-08 Efficient service advertisement and discovery in a peer-to-peer networking environment with dynamic advertisement and discovery periods based on operating conditions

Publications (2)

Publication Number Publication Date
KR20120094946A KR20120094946A (ko) 2012-08-27
KR101462322B1 true KR101462322B1 (ko) 2014-11-14

Family

ID=44152643

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020127016367A KR101462322B1 (ko) 2009-12-23 2010-12-08 동작 조건들에 기초하여 동적 광고 및 발견 기간을 갖는 피어-투-피어 네트워킹 환경에서의 효율적인 서비스 광고 및 발견
KR1020127016370A KR101393988B1 (ko) 2009-12-23 2010-12-08 피어-투-피어 네트워킹 환경에서의 효율적인 서비스 광고 및 발견

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020127016370A KR101393988B1 (ko) 2009-12-23 2010-12-08 피어-투-피어 네트워킹 환경에서의 효율적인 서비스 광고 및 발견

Country Status (9)

Country Link
US (6) US8533507B2 (ko)
EP (2) EP2517441B1 (ko)
JP (2) JP5782455B2 (ko)
KR (2) KR101462322B1 (ko)
CN (2) CN102652424B (ko)
AU (2) AU2010341704B2 (ko)
BR (2) BR112012017735B1 (ko)
MX (2) MX2012007344A (ko)
WO (3) WO2011087639A1 (ko)

Families Citing this family (158)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8533507B2 (en) 2009-12-23 2013-09-10 Apple Inc. Efficient service advertisement and discovery in a peer-to-peer networking environment
US20110231547A1 (en) * 2010-03-18 2011-09-22 Yang Ju-Ting Search methods applied to a personal network gateway in converged personal network service systems and related converged personal network service systems and mobile devices
US8812657B2 (en) * 2010-04-15 2014-08-19 Qualcomm Incorporated Network-assisted peer discovery
US8341449B2 (en) * 2010-04-16 2012-12-25 Lg Chem, Ltd. Battery management system and method for transferring data within the battery management system
US10250678B2 (en) * 2010-07-07 2019-04-02 Qualcomm Incorporated Hybrid modes for peer discovery
US8811957B2 (en) * 2010-09-03 2014-08-19 Qualcomm Incorporated Advertising methods and apparatus for use in a wireless communications system
CN101945132A (zh) * 2010-09-10 2011-01-12 华为技术有限公司 广告插播的方法、设备及系统
US8744803B2 (en) 2010-09-30 2014-06-03 Fitbit, Inc. Methods, systems and devices for activity tracking device data synchronization with computing devices
US9253168B2 (en) 2012-04-26 2016-02-02 Fitbit, Inc. Secure pairing of devices via pairing facilitator-intermediary device
US10983945B2 (en) 2010-09-30 2021-04-20 Fitbit, Inc. Method of data synthesis
US8712724B2 (en) 2010-09-30 2014-04-29 Fitbit, Inc. Calendar integration methods and systems for presentation of events having combined activity and location information
US8762102B2 (en) 2010-09-30 2014-06-24 Fitbit, Inc. Methods and systems for generation and rendering interactive events having combined activity and location information
US8738323B2 (en) 2010-09-30 2014-05-27 Fitbit, Inc. Methods and systems for metrics analysis and interactive rendering, including events having combined activity and location information
US9148483B1 (en) 2010-09-30 2015-09-29 Fitbit, Inc. Tracking user physical activity with multiple devices
US11243093B2 (en) 2010-09-30 2022-02-08 Fitbit, Inc. Methods, systems and devices for generating real-time activity data updates to display devices
US8738321B2 (en) 2010-09-30 2014-05-27 Fitbit, Inc. Methods and systems for classification of geographic locations for tracked activity
US9390427B2 (en) 2010-09-30 2016-07-12 Fitbit, Inc. Methods, systems and devices for automatic linking of activity tracking devices to user devices
US8805646B2 (en) 2010-09-30 2014-08-12 Fitbit, Inc. Methods, systems and devices for linking user devices to activity tracking devices
US9241635B2 (en) 2010-09-30 2016-01-26 Fitbit, Inc. Portable monitoring devices for processing applications and processing analysis of physiological conditions of a user associated with the portable monitoring device
US8762101B2 (en) 2010-09-30 2014-06-24 Fitbit, Inc. Methods and systems for identification of event data having combined activity and location information of portable monitoring devices
US8620617B2 (en) 2010-09-30 2013-12-31 Fitbit, Inc. Methods and systems for interactive goal setting and recommender using events having combined activity and location information
US10004406B2 (en) 2010-09-30 2018-06-26 Fitbit, Inc. Portable monitoring devices for processing applications and processing analysis of physiological conditions of a user associated with the portable monitoring device
US8694282B2 (en) 2010-09-30 2014-04-08 Fitbit, Inc. Methods and systems for geo-location optimized tracking and updating for events having combined activity and location information
US8954290B2 (en) 2010-09-30 2015-02-10 Fitbit, Inc. Motion-activated display of messages on an activity monitoring device
US8615377B1 (en) 2010-09-30 2013-12-24 Fitbit, Inc. Methods and systems for processing social interactive data and sharing of tracked activity associated with locations
US8954291B2 (en) 2010-09-30 2015-02-10 Fitbit, Inc. Alarm setting and interfacing with gesture contact interfacing controls
WO2012078000A2 (ko) * 2010-12-09 2012-06-14 엘지전자 주식회사 무선통신 시스템에서 단말 및 기지국 간 접속 방법 및 그 장치
US20120166515A1 (en) * 2010-12-22 2012-06-28 Pradeep Iyer Providing and Resolving an IP Address for Swarm-Based Services
US20120185335A1 (en) * 2011-01-18 2012-07-19 Qualcomm Incorporated Differentiated display of advertisements based on differentiating criteria
KR20120084464A (ko) * 2011-01-20 2012-07-30 삼성전자주식회사 광고 서비스 제공 방법 및 장치
US20120265871A1 (en) * 2011-04-18 2012-10-18 Qualcomm Innovation Center, Inc. Multicast, client/service-attribute resolution
US8738925B1 (en) * 2013-01-07 2014-05-27 Fitbit, Inc. Wireless portable biometric device syncing
US9396187B2 (en) * 2011-06-28 2016-07-19 Broadcom Corporation System and method for using network equipment to provide targeted advertising
US8989280B2 (en) * 2011-06-30 2015-03-24 Cable Television Laboratories, Inc. Frame identification
US8656015B2 (en) 2011-09-12 2014-02-18 Microsoft Corporation Detecting device presence for a layer 3 connection using layer 2 discovery information
US8799459B2 (en) 2011-09-12 2014-08-05 Microsoft Corporation Event-driven detection of device presence for layer 3 services using layer 2 discovery information
US20130073671A1 (en) * 2011-09-15 2013-03-21 Vinayak Nagpal Offloading traffic to device-to-device communications
EP2745613A4 (en) * 2011-09-22 2015-05-06 Nokia Corp METHOD AND DEVICE FOR FACILITATING REMOTE PARTICIPATION IN A COMMUNITY
CN103037448B (zh) * 2011-09-30 2015-05-27 华为技术有限公司 内容发布方法和用户设备
US10271293B2 (en) 2011-11-18 2019-04-23 Apple Inc. Group formation within a synchronized hierarchy of peer-to-peer devices
US9516615B2 (en) 2011-11-18 2016-12-06 Apple Inc. Selection of synchronization stations in a peer-to-peer network environment
US20130132500A1 (en) * 2011-11-18 2013-05-23 Apple Inc. Selection of a master in a peer-to-peer network environment
US9998945B2 (en) * 2011-11-30 2018-06-12 Shailesh Patil Methods and apparatus to change peer discovery transmission frequency based on congestion in peer-to-peer networks
US9307483B2 (en) * 2011-12-14 2016-04-05 Qualcomm Incorporated Systems and methods for transmitting and receiving discovery and paging messages
JP5891036B2 (ja) * 2012-01-06 2016-03-22 任天堂株式会社 通信システム、通信装置、通信プログラム及び通信方法
CN104106306B (zh) 2012-02-03 2020-03-03 诺基亚技术有限公司 用于促进远程参与社区的方法和装置
KR102014796B1 (ko) * 2012-02-10 2019-08-27 엘지전자 주식회사 D2d 서비스 타입 또는 d2d 어플리케이션 타입에 따른 d2d 통신 방법 및 이를 위한 장치
EP2832072A1 (en) * 2012-03-29 2015-02-04 Nokia Solutions and Networks Oy Delivery of commercial information
US10123187B2 (en) * 2012-04-17 2018-11-06 Qualcomm Incorporated Methods and apparatus for multiplexing application identifiers for peer-to-peer discovery systems
DE102012008867B4 (de) 2012-05-07 2021-01-21 T-Mobile International Austria Gmbh Verfahren zum Verbessern der Nutzung von Nahbereichsdiensten in einem öffentlichen landgestützten Mobilfunknetz, Programm und Computerprogrammprodukt
US9418372B2 (en) 2012-05-25 2016-08-16 Apple Inc. Advertising, discovering, and using services through virtual access point interfaces
EP2858429B1 (en) 2012-06-04 2018-02-14 Yulong Computer Telecommunication Technologies (Shenzhen) Co., Ltd. Infrastructure service information communication device and method
US9351144B2 (en) * 2012-06-04 2016-05-24 Qualcomm Incorporated Methods and apparatus for improving NFC RF discovery based on detection of other RF activity
US8892042B2 (en) * 2012-06-08 2014-11-18 Apple Inc. Immediate connection following device discovery
US9641239B2 (en) 2012-06-22 2017-05-02 Fitbit, Inc. Adaptive data transfer using bluetooth
JP6068630B2 (ja) * 2012-07-06 2017-01-25 ▲ホア▼▲ウェイ▼技術有限公司Huawei Technologies Co.,Ltd. サービスを登録して発見するための方法、デバイス、およびシステム
US9312948B2 (en) 2012-07-09 2016-04-12 Qualcomm Incorporated Method and apparatus for enabling wireless dockees to find and dock with a wireless docking host being used by another dockee
US8751615B2 (en) * 2012-07-18 2014-06-10 Accedian Networks Inc. Systems and methods of discovering and controlling devices without explicit addressing
CN103581239B (zh) * 2012-07-27 2019-01-22 中兴通讯股份有限公司 一种设备和服务的发现方法、装置
US9210656B2 (en) * 2012-07-31 2015-12-08 Qualcomm Incorporated Listen interval (LI) selection for WLAN client
US8904049B2 (en) 2012-08-23 2014-12-02 Lg Chem, Ltd. Battery pack monitoring system and method for assigning a binary ID to a microprocessor in the battery pack monitoring system
CN102833858B (zh) * 2012-09-06 2016-12-21 东莞宇龙通信科技有限公司 数据通信装置和数据通信方法
US9258837B2 (en) 2012-09-13 2016-02-09 Telefonaktiebolaget L M Ericsson (Publ) Discovery in device-to-device communication
US9313641B2 (en) * 2012-09-17 2016-04-12 Qualcomm Incorporated System and method for advertising and communicating within a neighborhood aware network
CN102833837B (zh) * 2012-09-24 2015-09-30 东莞宇龙通信科技有限公司 数据通信装置和数据通信方法
JP2014081831A (ja) * 2012-10-17 2014-05-08 Denso Corp 画像情報を用いた車両用運転支援システム
US9147340B2 (en) 2012-10-19 2015-09-29 Intel Corporation Apparatus and methods for hybrid service discovery
US9119182B2 (en) 2012-10-19 2015-08-25 Qualcomm Incorporated Methods and apparatus for expression use during D2D communications in a LTE based WWAN
US9830619B2 (en) * 2012-11-05 2017-11-28 Lg Electronics Inc. Method for searching for or advertising service in direct communication system and device for same
RU2533310C2 (ru) * 2012-11-08 2014-11-20 Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." Вспомогательный способ и система для обнаружения беспроводных сигналов мобильными устройствами
US9648000B2 (en) * 2012-11-14 2017-05-09 Telefonaktiebolaget Lm Ericsson (Publ) Authenticating a device when connecting it to a service
CN103874047B (zh) * 2012-12-17 2017-08-04 华为终端有限公司 服务信息发现方法及设备
US20140177612A1 (en) * 2012-12-21 2014-06-26 Carlos Cordeiro Scalable wireless communication service discovery
US9326224B2 (en) * 2012-12-29 2016-04-26 Intel Corporation Methods and arrangements for advertising services in wireless networks
US9820131B2 (en) * 2013-01-11 2017-11-14 Qualcomm Incorporated Systems and methods for formatting frames in neighborhood aware networks
US9039614B2 (en) 2013-01-15 2015-05-26 Fitbit, Inc. Methods, systems and devices for measuring fingertip heart rate
US9728059B2 (en) 2013-01-15 2017-08-08 Fitbit, Inc. Sedentary period detection utilizing a wearable electronic device
US8837328B2 (en) * 2013-01-23 2014-09-16 Qualcomm Incorporated Systems and methods for pre-association discovery of services on a network
EP3621272B1 (en) 2013-01-25 2022-04-13 Koninklijke KPN N.V. Network-assisted proximity discovery, authentication and link establishment between communication mobile devices in 3gpp lte
US9397902B2 (en) 2013-01-28 2016-07-19 Rackspace Us, Inc. Methods and systems of tracking and verifying records of system change events in a distributed network system
US9813307B2 (en) * 2013-01-28 2017-11-07 Rackspace Us, Inc. Methods and systems of monitoring failures in a distributed network system
CN104937911B (zh) * 2013-01-28 2019-06-21 索尼公司 无线通信装置、通信系统、无线通信装置控制方法以及程序
US20140222941A1 (en) * 2013-02-07 2014-08-07 Google Inc. Ad-hoc device sharing over a network
US9967727B2 (en) * 2013-02-22 2018-05-08 Intel IP Corporation Systems and methods for access network selection and traffic routing
KR101638349B1 (ko) 2013-02-27 2016-07-11 한국전자통신연구원 와이파이 다이렉트 기반 메시지 통신 방법 및 장치
US9800389B2 (en) 2013-03-08 2017-10-24 Qualcomm Incorporated Systems and methods for discovering and synchronizing within a neighbor aware network
CN105052050B (zh) * 2013-03-11 2018-09-14 Lg 电子株式会社 在无线通信系统中执行装置对装置服务的方法和设备
CN105144651A (zh) * 2013-03-20 2015-12-09 诺基亚技术有限公司 应用推荐
US9154934B2 (en) 2013-03-28 2015-10-06 Futurewei Technologies, Inc. System and method for pre-association discovery
US9872227B2 (en) 2013-04-23 2018-01-16 Qualcomm Incorporated Systems and methods for identification in a neighborhood aware network
US10104530B2 (en) 2013-05-08 2018-10-16 Huawei Device (Dongguan) Co., Ltd. Information query method, device, and system
CN104144465B (zh) * 2013-05-08 2017-12-15 华为终端有限公司 一种服务发现方法及装置
CN104159299B (zh) 2013-05-15 2018-06-05 华为终端(东莞)有限公司 一种服务公告消息的传输方法及设备
JP6180786B2 (ja) * 2013-05-17 2017-08-16 株式会社Nttドコモ ユーザ装置、基地局、発見信号間隔調整方法、及びユーザ装置制御方法
US9538561B2 (en) * 2013-05-22 2017-01-03 Intel IP Corporation Systems and methods for enabling service interoperability functionality for WiFi Direct devices connected to a network via a wireless access point
US9544754B1 (en) * 2013-05-28 2017-01-10 Marvell International Ltd. Systems and methods for scheduling discovery-related communication in a wireless network
WO2014194279A1 (en) * 2013-05-31 2014-12-04 Intel IP Corporation Efficient user, service, or content representation for device communication
US9143979B1 (en) 2013-06-18 2015-09-22 Marvell International Ltd. Method and apparatus for limiting a number of mobile devices that can contend for a time slot in a wireless network
US9420044B2 (en) * 2013-06-26 2016-08-16 Qualcomm Innovation Center, Inc. Leveraging system signaling service advertisements for application-layer discovery and connection management in an internet of things (IoT) environment
US20150019681A1 (en) * 2013-07-10 2015-01-15 Qualcomm Innovation Center, Inc. Active computer service solicitation
JP5967584B2 (ja) * 2013-07-24 2016-08-10 日本電信電話株式会社 無線通信システム及びその無線通信方法
KR102058876B1 (ko) * 2013-08-19 2019-12-26 삼성전자 주식회사 장치 간 통신에서의 혼잡 상황 해결 방법 및 장치
JP5753999B2 (ja) 2013-09-12 2015-07-22 メタフロンティア合同会社 端末装置、データ処理プログラム、及びデータ管理システム
US9723545B2 (en) * 2013-11-01 2017-08-01 Qualcomm Incorporated Discovery of Wi-Fi direct services via discovery probe
US9774709B2 (en) * 2013-11-18 2017-09-26 Cable Television Laboratories, Inc. Service discovery
TWI614706B (zh) * 2013-12-10 2018-02-11 深圳市華星光電技術有限公司 可攜式電子裝置的操作方法
EP3085195B1 (en) * 2013-12-16 2021-10-20 Intel Corporation Near field communication assisted device and service discovery
JP5892151B2 (ja) * 2013-12-18 2016-03-23 カシオ計算機株式会社 無線通信装置、無線通信システム、無線通信方法、プログラム、及びペリフェラル
US10349341B2 (en) * 2014-01-17 2019-07-09 Blackberry Limited Wireless network service type
CN104837108B (zh) 2014-02-07 2019-12-31 中兴通讯股份有限公司 一种设备到设备广播通信的方法和用户设备
WO2015133865A1 (en) * 2014-03-06 2015-09-11 Samsung Electronics Co., Ltd. Method and system for establishing a service session between seeker device and advertiser device
US9461842B2 (en) * 2014-04-11 2016-10-04 Avaya Inc. Limiting network service configuration based on network service type and mode advertisements
US9936009B2 (en) 2014-05-22 2018-04-03 Qualcomm Incorporated Systems and methods of operating a device of a data path group network
US10237711B2 (en) * 2014-05-30 2019-03-19 Apple Inc. Dynamic types for activity continuation between electronic devices
US10187770B2 (en) 2014-05-30 2019-01-22 Apple Inc. Forwarding activity-related information from source electronic devices to companion electronic devices
US10055567B2 (en) 2014-05-30 2018-08-21 Apple Inc. Proximity unlock and lock operations for electronic devices
US10193987B2 (en) * 2014-05-30 2019-01-29 Apple Inc. Activity continuation between electronic devices
US20150358777A1 (en) * 2014-06-04 2015-12-10 Qualcomm Incorporated Generating a location profile of an internet of things device based on augmented location information associated with one or more nearby internet of things devices
US9955421B2 (en) * 2014-07-09 2018-04-24 Qualcomm Incorporated Traffic advertisement and scheduling in a neighbor aware network data link
US9756603B2 (en) 2014-07-09 2017-09-05 Qualcomm Incorporated Traffic advertisement and scheduling in a neighbor aware network data link
US9936452B2 (en) * 2014-07-09 2018-04-03 Qualcomm Incorporated Traffic advertisement and scheduling in a neighbor aware network data link
US9936479B2 (en) 2014-07-09 2018-04-03 Qualcomm Incorporated Traffic advertisement and scheduling in a neighbor aware network data link
CN107005978B (zh) * 2014-08-13 2021-03-19 联发科技股份有限公司 在自主管理的移动通信网络中的服务发现
US20160073249A1 (en) * 2014-09-05 2016-03-10 Qualcomm Incorporated System and method for discovering a wireless device
US20160073288A1 (en) * 2014-09-09 2016-03-10 Qualcomm Incorporated Reducing contention in a peer-to-peer data link network
US9408060B2 (en) * 2014-10-14 2016-08-02 Radius Networks Inc. Interleaving multiple bluetooth low energy advertisements
US10021644B2 (en) * 2014-10-30 2018-07-10 Qualcomm Incorporated Network discovery
KR102251326B1 (ko) 2014-11-25 2021-05-12 삼성전자주식회사 근접 네트워크 구성 방법 및 그 전자 장치
WO2016097456A1 (en) * 2014-12-15 2016-06-23 Nokia Technologies Oy Identifying wireless service
WO2016132011A1 (en) * 2015-02-16 2016-08-25 Nokia Technologies Oy Service discovery
US20160285630A1 (en) * 2015-03-23 2016-09-29 Qualcomm Incorporated Private service identifiers in neighborhood aware networks
KR102305115B1 (ko) * 2015-04-02 2021-09-27 삼성전자주식회사 무선 통신 시스템에서 링크 설정을 위한 장치 및 방법
US20160352782A1 (en) * 2015-05-27 2016-12-01 Qualcomm Incorporated Proxy advertisements in a neighbor aware network
US20160352842A1 (en) * 2015-05-27 2016-12-01 Qualcomm Incorporated Proxy advertisements in a neighbor aware network
JP6584171B2 (ja) * 2015-07-02 2019-10-02 キヤノン株式会社 通信装置、通信方法及びプログラム
DE102015216284A1 (de) * 2015-08-26 2017-03-02 Robert Bosch Gmbh Verfahren zum Betreiben eines Gateways
JP6655913B2 (ja) 2015-09-02 2020-03-04 キヤノン株式会社 通信装置、制御方法及びプログラム
US10645575B2 (en) 2015-10-20 2020-05-05 Telefonaktiebolaget Lm Ericcson (Publ) User profiling prevention in personal area network communication
WO2017072557A1 (en) * 2015-10-29 2017-05-04 Nokia Technologies Oy Method and apparatus for facilitating transmission of a proximity health alert via a local wireless network
CN106658181B (zh) * 2015-10-29 2019-07-09 北京国双科技有限公司 用户行为数据的发送方法、装置及系统
US10080530B2 (en) 2016-02-19 2018-09-25 Fitbit, Inc. Periodic inactivity alerts and achievement messages
US10469997B2 (en) 2016-02-26 2019-11-05 Microsoft Technology Licensing, Llc Detecting a wireless signal based on context
US10475144B2 (en) 2016-02-26 2019-11-12 Microsoft Technology Licensing, Llc Presenting context-based guidance using electronic signs
US10085111B2 (en) * 2016-04-11 2018-09-25 Honeywell International Inc. User access to wireless low energy device
WO2017186308A1 (en) * 2016-04-29 2017-11-02 Huawei Technologies Co., Ltd. Grouping manager and user equipments for a communication network
US10285040B2 (en) 2016-05-27 2019-05-07 Apple Inc. Neighbor awareness networking—accelerated discovery
US10783552B2 (en) * 2016-08-18 2020-09-22 At&T Mobility Ii Llc Method and apparatus for managing advertisements
US10349259B2 (en) * 2016-09-23 2019-07-09 Apple Inc. Broadcasting a device state in a wireless communication network
CN106708923B (zh) * 2016-11-09 2019-07-09 武汉大学 一种基于移动群智网络的本地缓存文件分享方法
JP6832794B2 (ja) * 2017-06-05 2021-02-24 ルネサスエレクトロニクス株式会社 無線通信システム
EP3665912B1 (en) * 2017-08-11 2022-04-27 Sonova AG Communication device having a wireless interface
JP7025198B2 (ja) * 2017-12-19 2022-02-24 キヤノン株式会社 通信システム、通信装置とその制御方法、プログラム
US10819557B1 (en) * 2019-05-03 2020-10-27 Servicenow, Inc. Systems and methods for selective discovery of services
US11233588B2 (en) 2019-12-03 2022-01-25 Toyota Motor Engineering & Manufacturing North America, Inc. Devices, systems and methods for determining a proximity of a peripheral BLE device
US11196661B2 (en) * 2019-12-31 2021-12-07 Axis Ab Dynamic transport in a modular physical access control system
CN111356100B (zh) * 2020-03-09 2021-01-05 广州万唯邑众信息科技有限公司 移动广告流量智能分配方法及系统
WO2021224795A1 (en) 2020-05-06 2021-11-11 Fleetwood Group, Inc. Decentralized proximity system with multiple radio links
US11516302B2 (en) * 2020-06-16 2022-11-29 Hewlett Packard Enterprise Development Lp Network service discovery

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6604140B1 (en) * 1999-03-31 2003-08-05 International Business Machines Corporation Service framework for computing devices
US20070286136A1 (en) * 2006-06-08 2007-12-13 Motorola, Inc. Method for energy efficient prospective peer discovery in an ad hoc network
US20090274083A1 (en) * 2008-04-30 2009-11-05 Qualcomm Incorporated Methods and Apparatus for Scanning for Mesh Nodes

Family Cites Families (127)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5862325A (en) 1996-02-29 1999-01-19 Intermind Corporation Computer-based communication system and method using metadata defining a control structure
US8266266B2 (en) 1998-12-08 2012-09-11 Nomadix, Inc. Systems and methods for providing dynamic network authorization, authentication and accounting
DE69930918T2 (de) * 1999-01-25 2006-11-30 International Business Machines Corp. Dienstankündigungen in drahtlosen lokalen Netzen
US6466549B1 (en) * 1999-04-12 2002-10-15 Intel Corporation Broadcast discovery in a network having one or more 1394 buses
ATE294480T1 (de) 1999-06-11 2005-05-15 Microsoft Corp Allgemeines api zur gerätefernsteuerung
US6775244B1 (en) 1999-06-21 2004-08-10 Intel Corporation Gathering of device discovery information
US6829475B1 (en) * 1999-09-22 2004-12-07 Motorola, Inc. Method and apparatus for saving enhanced information contained in content sent to a wireless communication device
US6691169B1 (en) 2000-02-01 2004-02-10 At&T Corp. Method and apparatus for detecting route advertisement violations in a network of interconnected peers
JP2001359004A (ja) 2000-06-09 2001-12-26 Matsushita Electric Ind Co Ltd 録画予約システムおよび方法
US7383574B2 (en) 2000-11-22 2008-06-03 Hewlett Packard Development Company L.P. Method and system for limiting the impact of undesirable behavior of computers on a shared data network
JP2002186009A (ja) 2000-12-12 2002-06-28 Ntt Docomo Inc 無線移動機のセルサーチ方法及び無線移動機
AU2002234258A1 (en) * 2001-01-22 2002-07-30 Sun Microsystems, Inc. Peer-to-peer network computing platform
US6993326B2 (en) * 2001-04-02 2006-01-31 Bellsouth Intellectual Property Corporation System and method for providing short message targeted advertisements over a wireless communications network
US7185352B2 (en) * 2001-05-11 2007-02-27 Intel Corporation Method and apparatus for combining broadcast schedules and content on a digital broadcast-enabled client platform
US6961560B2 (en) 2001-05-23 2005-11-01 International Business Machines Corporation Method and device for prompt and efficient service discovery in wireless networks
US6842460B1 (en) 2001-06-27 2005-01-11 Nokia Corporation Ad hoc network discovery menu
US7426393B2 (en) 2001-11-19 2008-09-16 Nokia Corporation Method and system of identifying network services
US20030104782A1 (en) * 2001-11-30 2003-06-05 Palm, Inc. Object tagging system and method
US7237007B2 (en) * 2001-12-05 2007-06-26 Qualcomm Incorporated Method and system for flow control between a base station controller and a base transceiver station
US7249182B1 (en) 2002-02-27 2007-07-24 Nokia Corporation Personal profile sharing and management for short-range wireless terminals
JP2003345685A (ja) 2002-05-22 2003-12-05 Seiko Epson Corp デバイス共有システム、デバイス管理端末、ゲートウェイ端末、デバイス、端末用プログラム及びデバイス用プログラム、並びに、デバイス共有サービス提供方法
US20040003058A1 (en) 2002-06-26 2004-01-01 Nokia, Inc. Integration of service registration and discovery in networks
US7533161B2 (en) 2002-08-08 2009-05-12 Sun Microsystems, Inc. System and method for multiplatform implementation of abstract software modules in peer-to-peer network environments
US7263560B2 (en) * 2002-08-30 2007-08-28 Sun Microsystems, Inc. Decentralized peer-to-peer advertisement
US8086245B2 (en) * 2002-09-12 2011-12-27 Broadcom Corporation Advertising and controlling the advertisement of wireless hot spots
US7349965B1 (en) 2002-09-13 2008-03-25 Hewlett-Packard Development Company, L.P. Automated advertising and matching of data center resource capabilities
US7657597B2 (en) * 2002-09-26 2010-02-02 Sun Microsystems, Inc. Instant messaging using distributed indexes
US7281058B1 (en) * 2002-10-09 2007-10-09 Juniper Networks, Inc. Delivering and receiving multicast content across a unicast network
US8108455B2 (en) 2002-10-31 2012-01-31 Oracle America, Inc. Mobile agents in peer-to-peer networks
CN1726403A (zh) * 2002-12-16 2006-01-25 皇家飞利浦电子股份有限公司 用于gps设备的信息的位置相关显示
US7533141B2 (en) * 2003-01-24 2009-05-12 Sun Microsystems, Inc. System and method for unique naming of resources in networked environments
US7774495B2 (en) 2003-02-13 2010-08-10 Oracle America, Inc, Infrastructure for accessing a peer-to-peer network environment
DE60301198T2 (de) 2003-03-28 2006-06-01 Nortel Networks Ltd., St. Laurent Einfügen eines hash-codierten Dienstbezeichners in eine Funkrufnachricht für einen Dienst-Gruppenruf
US7457973B2 (en) 2003-06-20 2008-11-25 Texas Instruments Incorporated System and method for prioritizing data transmission and transmitting scheduled wake-up times to network stations based on downlink transmission duration
JP3701663B2 (ja) 2003-09-30 2005-10-05 シャープ株式会社 通信システム、端末局、通信管理方法、制御プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体
US7586864B2 (en) 2003-09-30 2009-09-08 Sharp Kabushiki Kaisha Communication system, base station, terminal, communication device, communication management method, control program, and computer-readable recording medium containing the same
US7403512B2 (en) * 2003-10-14 2008-07-22 Intel Corporation Service discovery architecture and method for wireless networks
US8229888B1 (en) 2003-10-15 2012-07-24 Radix Holdings, Llc Cross-device playback with synchronization of consumption state
US7525974B2 (en) * 2003-11-10 2009-04-28 Nortel Networks Limited Method and apparatus for capability based addressing in a communications network
EP1542409B1 (en) * 2003-12-10 2009-04-15 Sony Deutschland GmbH Protocol for multi-hop ad-hoc networks
ATE385361T1 (de) 2003-12-15 2008-02-15 Alcatel Lucent Verfahren zum reaktivieren einer mehrzahl deaktivierter geräte, ein entsprechendes netzwerkelement und eine entsprechende aktivierungseinrichtung
US20050177616A1 (en) 2003-12-19 2005-08-11 N2 Broadband, Inc. Method and system for distributing services in a digital asset environment
US8051463B2 (en) 2004-08-18 2011-11-01 Broadcom Corporation Method and system for distribution of configuration information among access points in a wireless local area network (WLAN) across a distribution system (DS)
DE112004003043B4 (de) 2004-09-30 2022-05-05 Avaya Canada Corp. System und Verfahren zur Bekanntgabe und Lokalisierung von Diensten in einem verteilten Peer-to-Peer-Netzwerk
US7428229B2 (en) 2004-12-28 2008-09-23 Motorola, Inc. Ad hoc cluster idle node coordination
US20060172697A1 (en) * 2005-02-02 2006-08-03 Gallego Fernando P Information broadcasting and support system using mobile devices
US7493413B2 (en) 2005-03-15 2009-02-17 Microsoft Corporation APIS to build peer to peer messaging applications
US20060258341A1 (en) 2005-05-13 2006-11-16 Microsoft Corporation Mobile internet services discovery and/or provisioning
US8281025B2 (en) 2005-06-13 2012-10-02 Hewlett-Packard Development Company, L.P. Contemporaneous peer-to-peer multicast data distribution
US20070043591A1 (en) * 2005-08-03 2007-02-22 Attila Meretei Systems and methods for sensing physiologic parameters of the human body and achieving a therapeutic effect
WO2007024918A2 (en) 2005-08-23 2007-03-01 Matsushita Electric Industrial Co., Ltd. System and method for service discovery in a computer network using dynamic proxy and data dissemination
US8576846B2 (en) 2005-10-05 2013-11-05 Qualcomm Incorporated Peer-to-peer communication in ad hoc wireless network
US7756094B2 (en) * 2005-11-10 2010-07-13 The Boeing Company Interoperable mobile ad hoc network
US7623472B2 (en) 2005-11-14 2009-11-24 Lsi Corporation Dynamic peer application discovery
US7613426B2 (en) 2005-12-20 2009-11-03 Microsoft Corporation Proximity service discovery in wireless networks
KR101221706B1 (ko) 2006-01-25 2013-01-11 삼성전자주식회사 고속 패킷 데이터 시스템의 순방향 링크에서 다중 입력 다중 출력 기술을 지원하는 송수신 장치 및 방법
EP1966940B1 (en) * 2006-01-31 2012-08-15 Panasonic Corporation Method for selective service updates for communication networks
US7633897B2 (en) * 2006-02-03 2009-12-15 Qualcomm Incorporated Method and apparatus for the discovery of radio access network elements and exchange of capability and data attributes between those elements
CN101438256B (zh) 2006-03-07 2011-12-21 索尼株式会社 信息处理设备、信息通信系统、信息处理方法
US8085699B2 (en) 2006-03-08 2011-12-27 Nec Corporation Changing period to monitor arrival of beacon signal based on determination as to whether there is a high connection probability
US7711004B2 (en) 2006-04-18 2010-05-04 Cisco Technology, Inc. Multiple broadcast channels for wireless networks
US20070250726A1 (en) 2006-04-24 2007-10-25 Rossetti David A Method of controlling wakeup frequency in a wireless communication system
KR20090014201A (ko) 2006-05-10 2009-02-06 인터디지탈 테크날러지 코포레이션 융합형 무선 송수신 유닛에서 배터리 관리를 위한 방법 및 장치
US20070264991A1 (en) 2006-05-15 2007-11-15 Microsoft Corporation Services near me: discovering and connecting to available wireless services utilizing proximity discovery
US20070286100A1 (en) 2006-06-09 2007-12-13 Mika Juhani Saaranen Local discovery of mobile network services
US7760676B2 (en) 2006-06-20 2010-07-20 Intel Corporation Adaptive DRX cycle length based on available battery power
US8700105B2 (en) 2006-06-22 2014-04-15 Qualcomm Incorporated Low duty cycle device protocol
US7899964B2 (en) 2006-07-13 2011-03-01 Samsung Electronics Co., Ltd. Method and system for providing universal plug and play resource surrogates
US20080052340A1 (en) * 2006-08-28 2008-02-28 Motorola, Inc. Method and system for content advertising in ad hoc networks
US8369800B2 (en) * 2006-09-15 2013-02-05 Qualcomm Incorporated Methods and apparatus related to power control and/or interference management in a mixed wireless communications system
US7848263B2 (en) 2006-11-28 2010-12-07 Marvell International, Ltd. Simplified auto-configuration and service discovery in ad-hoc networks
US7734717B2 (en) * 2006-12-05 2010-06-08 Nokia Corporation Software distribution via peer-to-peer networks
US20080195664A1 (en) 2006-12-13 2008-08-14 Quickplay Media Inc. Automated Content Tag Processing for Mobile Media
US20120143383A1 (en) * 2007-02-02 2012-06-07 Inovus Solar, Inc. Energy-efficient utility system utilizing solar-power
US20080235112A1 (en) 2007-03-22 2008-09-25 Peter Montoya Website, system for and method of providing marketing material for securities to authorized users & method of selling access to, including the right to copy and distribute copied marketing material
EP2157739B1 (en) 2007-06-04 2016-02-10 Sony Corporation Communication system, communication device, communication method, and computer program
US8553623B2 (en) 2007-07-20 2013-10-08 Broadcom Corporation Method and system for utilizing standardized interface in a wireless device to discover and use local and remote resources
GB2450167B (en) 2007-06-18 2009-07-29 Nec Corp Discontinuous Reception In A Mobile Radio Communications Network
KR101495536B1 (ko) 2007-06-22 2015-02-25 삼성전자주식회사 동적으로 변경되는 UPnP 명세를 제공하는 방법 및 장치
US8601156B2 (en) 2007-07-06 2013-12-03 Qualcomm Incorporated Methods and apparatus related to peer discovery and/or paging in peer to peer wireless communications
US7920849B2 (en) * 2007-07-13 2011-04-05 Pop Adrian Method and system for providing advertisements/messages based on wireless data communication technology
US7974574B2 (en) 2007-07-25 2011-07-05 Microsoft Corporation Base station initiated proximity service discovery and connection establishment
US9386557B2 (en) * 2007-08-13 2016-07-05 Qualcomm Incorporated Method and apparatus for supporting broadcast and multicast services in a wireless communication system
US8583753B1 (en) 2007-09-07 2013-11-12 Cisco Technology, Inc. Service advertisements for a network
US8131281B1 (en) 2007-09-12 2012-03-06 Oceans' Edge, Inc. Mobile device monitoring and control system
US8711034B2 (en) 2007-10-02 2014-04-29 Ricoh Co., Ltd. Geographically self-labeling access points
US20090161579A1 (en) * 2007-12-20 2009-06-25 Mika Saaranen Method, system, and apparatus for implementing network capable input devices
US8588816B2 (en) * 2007-12-21 2013-11-19 Qualcomm Incorporated Systems and methods for targeted advertising on wireless devices based on device location and current user interests
US8824378B2 (en) * 2008-02-01 2014-09-02 Maarten Menzo Wentink Unscheduled peer power save mode
US8634796B2 (en) * 2008-03-14 2014-01-21 William J. Johnson System and method for location based exchanges of data facilitating distributed location applications
US20090240794A1 (en) * 2008-03-20 2009-09-24 Huaiyu Liu Techniques utilizing a layer-2 proxy for energy-efficient service discovery and connectivity in networks
US20090248503A1 (en) * 2008-03-25 2009-10-01 International Business Machines Corporation Systems, methods and computer products for a personal portable advertising and messaging agent
US9088946B2 (en) 2008-04-30 2015-07-21 Qualcomm Incorporated Methods and apparatus for power saving for mesh nodes
US8971955B2 (en) 2008-05-11 2015-03-03 Qualcomm Incorporated Systems and methods for multi-mode terminal operations in overlaid networks
US8032072B2 (en) 2008-06-19 2011-10-04 Visteon Global Technologies, Inc. System for downloading audio content
WO2010006095A2 (en) * 2008-07-11 2010-01-14 Marvell World Trade, Ltd. Service discovery methods
US7836164B2 (en) 2008-09-02 2010-11-16 Sony Corporation Extensible network discovery subsystem
US7987241B2 (en) 2008-10-15 2011-07-26 Xerox Corporation Sharing EIP service applications across a fleet of multi-function document reproduction devices in a peer-aware network
US8971862B2 (en) * 2008-11-04 2015-03-03 International Business Machines Corporation Location based routing and advertising for streamed media and media blocking
US20100138007A1 (en) * 2008-11-21 2010-06-03 Qwebl, Inc. Apparatus and method for integration and setup of home automation
KR20100072718A (ko) 2008-12-22 2010-07-01 삼성전자주식회사 방송 데이터 수신 방법 및 장치
US20100191552A1 (en) 2009-01-27 2010-07-29 Patrick Behrens Apparatus, method and article to facilitate propagation of current appointment availability in a network environment
US8073014B2 (en) 2009-03-02 2011-12-06 Motorola Mobility, Inc. Method and apparatus for synchronizing nodes
US20100233960A1 (en) 2009-03-16 2010-09-16 Brian Tucker Service discovery functionality utilizing personal area network protocols
US8194576B2 (en) 2009-03-27 2012-06-05 Research In Motion Limited Wireless access point methods and apparatus using dynamically-activated service intervals
US8605625B2 (en) * 2009-04-02 2013-12-10 Qualcomm Incorporated Methods and apparatus for peer discovery in a communications system
JP5417980B2 (ja) * 2009-05-14 2014-02-19 富士ゼロックス株式会社 情報処理装置、およびプログラム
US20100306249A1 (en) * 2009-05-27 2010-12-02 James Hill Social network systems and methods
US8458353B2 (en) * 2009-08-13 2013-06-04 Qualcomm Incorporated Method and apparatus for link aggregation in a heterogeneous communication system
US8478820B2 (en) 2009-08-26 2013-07-02 Qualcomm Incorporated Methods and systems for service discovery management in peer-to-peer networks
US8897741B2 (en) 2009-11-13 2014-11-25 William J. Johnson System and method for mobile device usability by locational conditions
US8458500B2 (en) 2009-11-30 2013-06-04 International Business Machines Corporation Server allocation to workload based on energy profiles
US8533507B2 (en) * 2009-12-23 2013-09-10 Apple Inc. Efficient service advertisement and discovery in a peer-to-peer networking environment
US8819219B2 (en) * 2009-12-23 2014-08-26 Apple Inc. Efficient service advertisement and discovery in multiple wireless networks
US20120095845A1 (en) * 2010-08-11 2012-04-19 Vertical Ground, LLC Method and system for distributed marketing displays on highway signage
US20120185325A1 (en) * 2011-01-19 2012-07-19 Vertical Ground, LLC Method and system for distributed marketing displays on municipal parking meters
US20120197715A1 (en) * 2011-01-31 2012-08-02 Vertical Ground, LLC Method and system for distributed marketing displays on municipal gratings
US20130055326A1 (en) 2011-08-30 2013-02-28 Microsoft Corporation Techniques for dynamic switching between coded bitstreams
US9710821B2 (en) * 2011-09-15 2017-07-18 Stephan HEATH Systems and methods for mobile and online payment systems for purchases related to mobile and online promotions or offers provided using impressions tracking and analysis, location information, 2D and 3D mapping, mobile mapping, social media, and user behavior and
SG193014A1 (en) 2011-09-30 2013-09-30 Ranganath C Abeyweera Method, system and apparatus for a communications client program and anassociated transfer server for onymous and secure communications
US9516615B2 (en) 2011-11-18 2016-12-06 Apple Inc. Selection of synchronization stations in a peer-to-peer network environment
US9450836B2 (en) * 2011-12-27 2016-09-20 Cisco Technology, Inc. System and method for management of network-based services
US9418372B2 (en) 2012-05-25 2016-08-16 Apple Inc. Advertising, discovering, and using services through virtual access point interfaces
US9661558B2 (en) 2012-06-01 2017-05-23 Apple Inc. Service constraint advertisement and discovery
US8982762B2 (en) * 2012-09-27 2015-03-17 Blackberry Limited Methods and apparatus for use in communicating in a peer-to-peer (P2P) network
US20140165094A1 (en) 2012-12-11 2014-06-12 Echostar Technologies L.L.C. Roaming targeted advertising for a video services system
US9723464B2 (en) 2013-10-18 2017-08-01 Qualcomm Incorporated System and method for identifying a service mesh

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6604140B1 (en) * 1999-03-31 2003-08-05 International Business Machines Corporation Service framework for computing devices
US20070286136A1 (en) * 2006-06-08 2007-12-13 Motorola, Inc. Method for energy efficient prospective peer discovery in an ad hoc network
US20090274083A1 (en) * 2008-04-30 2009-11-05 Qualcomm Incorporated Methods and Apparatus for Scanning for Mesh Nodes

Also Published As

Publication number Publication date
KR20120094946A (ko) 2012-08-27
JP5782455B2 (ja) 2015-09-24
US10230596B2 (en) 2019-03-12
US20140059369A1 (en) 2014-02-27
WO2011087639A1 (en) 2011-07-21
EP2517441B1 (en) 2020-04-08
JP5638624B2 (ja) 2014-12-10
EP2517440B1 (en) 2018-03-28
KR20120094947A (ko) 2012-08-27
BR112012017735A2 (pt) 2016-09-13
MX2012007342A (es) 2012-07-20
US8327178B2 (en) 2012-12-04
WO2011087640A1 (en) 2011-07-21
EP2517440A1 (en) 2012-10-31
US8533507B2 (en) 2013-09-10
AU2010341705B2 (en) 2014-08-14
CN102652424A (zh) 2012-08-29
US9391853B2 (en) 2016-07-12
JP2013515443A (ja) 2013-05-02
JP2013514738A (ja) 2013-04-25
US9306813B2 (en) 2016-04-05
BR112012017735B1 (pt) 2021-05-25
EP2517441A1 (en) 2012-10-31
AU2010341704B2 (en) 2014-08-28
US20110154084A1 (en) 2011-06-23
WO2011087638A1 (en) 2011-07-21
AU2010341705A1 (en) 2012-05-17
US20160198511A1 (en) 2016-07-07
US20110153789A1 (en) 2011-06-23
CN102668510B (zh) 2015-12-09
AU2010341704A1 (en) 2012-05-03
BR112012018380A2 (pt) 2020-08-25
BR112012018380B1 (pt) 2022-03-15
CN102668510A (zh) 2012-09-12
US20120117400A1 (en) 2012-05-10
KR101393988B1 (ko) 2014-05-12
US20110153773A1 (en) 2011-06-23
MX2012007344A (es) 2012-07-20
CN102652424B (zh) 2016-01-20

Similar Documents

Publication Publication Date Title
KR101462322B1 (ko) 동작 조건들에 기초하여 동적 광고 및 발견 기간을 갖는 피어-투-피어 네트워킹 환경에서의 효율적인 서비스 광고 및 발견
US8819219B2 (en) Efficient service advertisement and discovery in multiple wireless networks
US10244416B2 (en) Detecting device presence for a layer 3 connection using layer 2 discovery information
US7984132B2 (en) Multi-rate peer discovery methods and apparatus
US8799459B2 (en) Event-driven detection of device presence for layer 3 services using layer 2 discovery information
JP2017063311A (ja) 通信装置、制御方法、及びプログラム

Legal Events

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

Payment date: 20171018

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181018

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20191016

Year of fee payment: 6