KR20160101084A - 발견을 위한 해시 부분 매칭 - Google Patents

발견을 위한 해시 부분 매칭 Download PDF

Info

Publication number
KR20160101084A
KR20160101084A KR1020167019341A KR20167019341A KR20160101084A KR 20160101084 A KR20160101084 A KR 20160101084A KR 1020167019341 A KR1020167019341 A KR 1020167019341A KR 20167019341 A KR20167019341 A KR 20167019341A KR 20160101084 A KR20160101084 A KR 20160101084A
Authority
KR
South Korea
Prior art keywords
compressed
representation
attributes
advertised
desired attributes
Prior art date
Application number
KR1020167019341A
Other languages
English (en)
Other versions
KR101894165B1 (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 KR20160101084A publication Critical patent/KR20160101084A/ko
Application granted granted Critical
Publication of KR101894165B1 publication Critical patent/KR101894165B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • H04L67/16
    • 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
    • H04W48/14Access restriction or access information delivery, e.g. discovery data delivery using user query or user detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/04Protocols for data compression, e.g. ROHC
    • H04W4/206
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • H04W4/21Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

압축된 서비스 네임들을 포함하여, 공개된 서비스들 또는 서비스 네임들의 부분적 매칭을 허용하는 방법들, 시스템들, 및 장치들이 기술된다. 기술된 특징들은 해싱을 포함하는 압축 기법들을 채용하며; 그들은 압축된 서비스 네임 스트링들의 부분적인 매칭을 허용한다. 원하는 서비스 (또는 원하는 서비스의 속성들) 를 식별하는 것 및 하나 이상의 광고된 속성들을 비교하는 것을 제공하는 여러 실시형태들이 기술된다. 원하는 및 광고된 속성들의 비교는 광고된 서비스를 결정, 선택, 및 또는 로케이팅하기 위해 이용될 수도 있다.

Description

발견을 위한 해시 부분 매칭{HASH PARTIAL MATCHING FOR DISCOVERY}
무선 통신 시스템들은 음성, 비디오, 패킷 데이터, 메시징, 브로드캐스트 등을 포함하는, 서비스들 및 컨텐츠의 통신의 여러 가지 타입들을 제공하기 위해 널리 전개되어 있다. 이들 시스템들은 이용가능한 시스템 자원들 (예를 들어, 시간, 주파수, 및 전력) 을 공유함으로써 다수의 사용자들과의 통신을 지원할 수 있는 다중 액세스 시스템들일 수도 있다. 그러한 다중 액세스 시스템들의 예들은 코드 분할 다중 액세스 (CDMA) 시스템들, 시분할 다중 액세스 (TDMA) 시스템들, 주파수 분할 다중 액세스 (FDMA) 시스템들, 및 직교 주파수 분할 다중 액세스 (OFDMA) 시스템들을 포함한다.
이들 또는 다른 기술들을 채용하고 그러한 시스템들에서 동작하는 무선 디바이스들은 특정의 서비스에 대한 정보를 전달하기 위해 서로 통신할 수도 있다. 디바이스는 예를 들어 그 디바이스가 제공하는 특정의 서비스에 관련된 정보를 공개할 수도 있다. 다른 디바이스들은 그 공개된 정보를 수신하고, 그 디바이스 또는 공개된 서비스가 특정의 인기있는 서비스와 매칭하는 경우 그 공개된 서비스를 이용하기를 시도할 수도 있다. 일부 경우들에서, 기법들은 공개된 정보의 사이즈를 제한하거나 감소시키기 위해 사용된다. 예를 들어, 특정의 서비스의 이름은 공개 목적으로 감소될 수도 있다. 그러나, 그러한 정보를 감소시키는 현존하는 솔루션들은 디바이스들이 정보의 부분적 매칭을 수행하는 것을 허용하지 않을 수도 있다. 현존하는 솔루션들은 공개된 이름이 원하는 서비스에 대한 부분적 매치만을 나타내는 경우 디바이스가 소정의 공개된 서비스들을 발견하거나 이용하는 것을 허용하지 않을 수도 있다.
기술된 특징들은 일반적으로 공개된 서비스들 또는 서비스 네임들의 부분적 매칭을 허용할 수도 있는 하나 이상의 방법들, 시스템들, 및 장치들에 관한 것이다. 역 도메인 네임 시스템 (DNS) 스타일 네이밍 (예를 들어, com.mycompany.myservice.mydevice) 을 사용하는 것들과 같은 여러 프로토콜들은 하나의 디바이스가 다른 디바이스들이 검색하고 발견할 수 있는 서비스를 공개하는 것을 허용할 수도 있다. 일부 경우들에서, 관련된 및/또는 원하는 서비스를 발견하는 이러한 프로세스는 매칭으로 불린다. "매칭하는 디바이스" (서비스를 검색하고 있는 디바이스) 는 완전한 서비스 네임 스트링을 검색하거나 예를 들어 공개된 서비스 네임의 프리픽스만을 매칭함으로써 부분적 매치를 수행하는 것을 선택할 수도 있다. 그러한 경우들에서, 매칭하는 디바이스는 검색 결과들의 증가된 수를 가질 수도 있다. 예를 들어, 검색은 그러한 서비스를 광고하는 특정의 디바이스의 네임에 상관없이 "com.mycompany.myservice" 를 포함하는 DNS 스타일 네임에 대해서 행해질 수도 있다. 그러한 시나리오에서, 부분적 매치 기준을 채용하는 검색은 서비스를 제공하는 모든 이용가능한 디바이스들에 대해 결과들을 리턴할 수도 있다.
일부 실시형태들에서, 무선 통신의 방법은 하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하는 단계, 하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하는 단계, 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하는 단계, 및 압축된 원하는 속성들 중 적어도 하나가 압축된 광고된 속성들 중 적어도 하나와 적어도 부분적인 매치를 포함하는지 여부를 결정하는 단계를 포함한다.
일부 실시형태들에서, 무선 통신을 위한 시스템은 하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하는 수단, 하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하는 수단, 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하는 수단, 및 압축된 원하는 속성들 중 적어도 하나가 압축된 광고된 속성들 중 적어도 하나와 적어도 부분적인 매치를 포함하는지 여부를 결정하는 수단을 포함한다.
일부 실시형태들에서, 무선 통신을 위한 장치는 프로세서, 프로세서와 전자 통신하는 메모리, 및 메모리에 저장된 명령들을 포함한다. 명령들은 하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하고, 하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하며, 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하고, 및 압축된 원하는 속성들 중 적어도 하나가 압축된 광고된 속성들 중 적어도 하나와 적어도 부분적인 매치를 포함하는지 여부를 결정하도록 프로세서에 의해 실행가능할 수도 있다.
일부 실시형태들에서, 무선 통신을 위한 코드를 저장하는 비일시적 컴퓨터 판독가능 매체는 하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하고, 하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하며, 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하고, 및 압축된 원하는 속성들 중 적어도 하나가 압축된 광고된 속성들 중 적어도 하나와 적어도 부분적인 매치를 포함하는지 여부를 결정하도록 실행가능한 명령들을 포함한다.
소정의 예들에서, 방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체는 또한 압축된 원하는 속성들 중 하나가 압축된 광고된 속성들 중 적어도 하나와 적어도 부분적 매치를 포함하는 경우 압축된 제 2 표현을 선택하는 단계들, 수단들, 및/또는 프로세서에 의해 실행가능한 명령들을 포함한다.
소정의 예들에서, 방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체는 또한 압축된 제 2 표현에 적어도 부분적으로 기초하여 로케이션을 결정하는 단계들, 수단들, 및/또는 프로세서에 의해 실행가능한 명령들을 포함할 수도 있다.
방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체의 소정의 예들에서, 로케이션을 결정하는 것은 압축된 제 2 표현에 의해 광고된 서비스의 로케이션을 결정하는 것을 포함할 수도 있다.
소정의 예들에서, 방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체는 또한 하나 이상의 압축되지 않은 원하는 속성들을 포함하는 압축되지 않은 제 1 표현을 식별하고, 및 하나 이상의 압축되지 않은 원하는 속성들 각각을 압축하는 단계들, 수단들, 및/또는 프로세서에 의해 실행가능한 명령들을 포함할 수도 있다.
방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체의 소정의 예들에서, 압축된 제 1 표현은 원하는 서비스에 대한 역 도메인 네임 시스템 (DNS) 스타일 네임 스트링에 대응할 수도 있고, 압축된 제 2 표현은 광고된 서비스에 대한 역 DNS 스타일 네임 스트링에 대응할 수도 있다.
방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체의 소정의 예들에서, 압축된 원하는 속성들 각각 및 압축된 광고된 속성들 각각은 하나 이상의 서비스 네임들의 개개의 엘리먼트들에 대응할 수도 있고, 하나 이상의 서비스 네임들은 역 도메인 네임 시스템 (DNS) 스타일 네임 스트링들일 수도 있다.
소정의 예들에서, 방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체는 또한 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하기 위한 기준들을 특정하는 단계들, 수단들, 및/또는 프로세서에 의해 실행가능한 명령들을 포함할 수도 있다.
방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체의 소정의 예들에서, 압축된 제 1 표현 또는 압축된 제 2 표현 중 적어도 하나는 적어도 하나의 와일드카드 속성을 포함할 수도 있다.
방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체의 소정의 예들에서, 압축된 제 1 표현 또는 압축된 제 2 표현 중 적어도 하나는 압축 사이즈 표시자를 포함할 수도 있다.
방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체의 소정의 예들에서, 압축된 제 1 표현 또는 압축된 제 2 표현 중 적어도 하나는 압축 알고리즘 표시자를 포함할 수도 있다.
방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체의 소정의 예들에서, 압축된 제 1 표현 또는 압축된 제 2 표현 중 적어도 하나는 표현의 종단 (end-of-expression) 표시자를 포함할 수도 있다.
방법, 시스템, 장치, 및/또는 비일시적 컴퓨터 판독가능 매체의 소정의 예들에서, 압축된 제 1 표현 또는 압축된 제 2 표현 중 적어도 하나는 적어도 2 개의 압축 알고리즘들로 압축된 속성들을 포함할 수도 있다.
기술된 방법들 및 장치들의 적용가능성의 추가의 범위는 다음의 상세한 설명, 청구범위, 및 도면으로부터 명백하게 될 것이다. 상세한 설명 및 특정의 예들은, 본 설명의 사상 및 범위 내의 변경들 및 수정들은 본 기술에서 통상의 기술자들에게 명백하게 될 것이므로 예시로써만 주어진다.
본 발명의 특성 및 이점들의 추가의 이해는 다음의 도면들을 참조하여 실현될 수도 있다. 첨부된 도면들에서, 유사한 컴포넌트들 또는 특징들은 동일한 참조 라벨을 가질 수도 있다. 또한, 동일한 타입의 여러 컴포넌트들은 유사한 컴포넌트들 사이를 구별하는 대시 및 제 2 라벨에 의해 참조 라벨에 후속함으로써 구별될 수도 있다. 제 1 참조 라벨만이 명세서에서 사용되는 경우, 상세한 설명은 제 2 참조 라벨과 관계없이 동일한 제 1 참조 라벨을 갖는 유사한 컴포넌트들 중 임의의 것에 적용가능하다.
도 1a 및 도 1b 는 여러 실시형태들에 따른 무선 통신 시스템(들) 을 도시한다.
도 2 는 여러 실시형태들에 따른 무선 통신 시스템에서 동작하도록 구성된 디바이스의 블록도를 도시한다.
도 3 은 여러 실시형태들에 따른 무선 통신 시스템에서 동작하도록 구성된 디바이스의 블록도를 도시한다.
도 4 는 여러 실시형태들에 따른 무선 통신 네트워크에서 동작하도록 구성된 디바이스의 블록도를 도시한다.
도 5 는 여러 실시형태들에 따른 무선 통신 시스템에서 동작하는 디바이스들의 콜 흐름도를 도시한다.
도 6 은 여러 실시형태들에 따른 무선 통신의 방법의 흐름도를 도시한다.
도 7 은 여러 실시형태들에 따른 무선 통신의 방법의 흐름도를 도시한다.
도 8 은 여러 실시형태들에 따른 무선 통신의 방법의 흐름도를 도시한다.
도 9 는 여러 실시형태들에 따른 무선 통신의 방법의 흐름도를 도시한다.
공개된 서비스들 또는 서비스 네임들의 부분적 매칭을 허용할 수도 있는 시스템들, 방법들, 및 장치들이 기술된다. 기술된 기법들은 해싱과 같은 압축 기법을 이용할 수도 있고, 여기에 기술된 부분적 매칭 기법들은 해싱된 부분적 매칭으로서 지칭될 수도 있다. 예를 들어, 서비스 네임 스트링의 개개의 엘리먼트들은 고정 사이즈 청크들 (예를 들어, 8, 12, 또는 16 비트들) 로 압축되거나 해싱될 수도 있고, 압축된 엘리먼트들은 해시들의 스트링을 형성하기 위해 연쇄될 수도 있다.
역 DNS 스타일 네이밍을 이용하는 것들과 같은 일부 예들에서, 스트링 내의 각 도트 사이의 단어 또는 단어들은 개별적으로 해싱될 수도 있다. 해시 스트링의 사이즈는 각 개개의 해시의 사이즈에 의해 승산되는 서비스 네임 스트링에서의 단어들의 수와 동일할 수도 있다. 예를 들어, "com.mycompany.myservice.mydevice" 는 4*(해시_사이즈) 의 해시 스트링을 가질 수도 있다. 이것은 전체 서비스 스트링과 매칭하는 것과 유사한 방식으로 해시 스트링의 부분적 매칭을 허용할 수도 있다.
일부 경우들에서, 공개된 네임 스트링의 길이가 특정의 발견 매체를 통해 송신될 수 있는 데이터의 사이즈 (예를 들어, LTE-다이렉트에 대한 16 바이트들) 를 초과하는 경우 문제가 발생할 수도 있다. 네임 스트링이 송신되는 것을 허용하면서 전체 스트링을 해싱하는 것은 부분적 매칭을 허용하지 않을 수도 있다. 속성으로서 또한 지칭될 수도 있는, 스트링의 각 개개의 엘리먼트들을 해싱하는 것은 그러나 부분적 매칭을 허용할 수도 있다. 더욱이, 위양성 매치의 기회는 개개의 해시들의 사이즈 및 서비스 네임 스트링에서의 단어들의 수가 증가함에 따라 감소한다.
따라서, 다음의 설명은 예들을 제공하며, 청구범위에서 진술된 범위, 적용가능성, 또는 구성의 제한이 아니다. 본 개시의 사상 및 범위로부터 일탈하지 않고 논의된 엘리먼트들의 기능 및 배열에서의 변경들이 행해질 수도 있다. 여러 실시형태들은 적절한대로 여러 절차들 또는 컴포넌트들을 생략, 치환, 또는 추가할 수도 있다. 예를 들어, 기술된 방법들은 기술된 것과 상이한 순서로 수행될 수도 있고, 여러 단계들은 추가, 생략, 또는 결합될 수도 있다. 또한, 소정의 실시형태들에 대해 기술된 특징들은 다른 실시형태들에서 결합될 수도 있다.
먼저 도 1a 를 참조하면, 도 1a 는 여러 실시형태들에 따른 무선 통신 시스템 (100) 을 도시한다. 시스템 (100) 은 영역 (120) 내에 디바이스들 (115) 을 포함한다. 디바이스들 (115) 은 사용자 장비 또는 UE (115) 로서 지칭될 수도 있다. 디바이스들 (115) 은 컴퓨터들, 셀룰러 폰들, 스마트폰들, 태블릿들, 랩톱 컴퓨터들, 노트북 컴퓨터들, 넷북 컴퓨터들, PDA 들, 스마트 TV 들, 또는 다른 유사한 전자 디바이스들일 수도 있다. 일부 경우들에서, 디바이스 (115) 는 WLAN 또는 WPAN 라우터, 그룹 소유자, 또는 액세스 포인트이다. 디바이스들 (115) 은 각 디바이스 (115) 에 의해 제공된 특정의 서비스를 나타내는 신호들을 브로드캐스트, 또는 다르게는 송신할 수도 있다. 일부 경우들에서, 디바이스들 (115) 은 각 디바이스 (115) 에 가까운 로케이션에서 이용가능한 서비스를 나타내는 신호를 브로드캐스트한다.
다음에, 도 1b 는 여러 실시형태들에 따른 무선 통신 시스템 (100-a) 을 도시한다. 시스템 (100-a) 은 시스템 (100) 의 예일 수도 있다. 시스템 (100-a) 은 도 1a 를 참조하여 기술된 디바이스들 (115) 의 예들일 수도 있는 디바이스들 (115) 으 포함할 수도 있다. 디바이스들 (115) 은 도 1a 의 영역 (120) 의 예일 수도 있는 영역 (120-a) 에 있을 수도 있다.
디바이스 (115-a) 의 사용자는, 예를 들어 특정의 서비스를 검색할 수도 있다. 디바이스 (115-a) 는 스마트폰일 수도 있고; 사용자는 스마트폰의 애플리케이션을 사용하여 디바이스 (115-a) 로 서비스를 나타내는 이름을 입력할 수도 있다. 예를 들어, 애플리케이션은 특정성 (specificity) 의 여러 레벨들을 갖는 원하는 서비스의 상세들을 입력하도록 사용자를 프롬프트할 수도 있는 사용자 인터페이스를 포함할 수도 있다. 일부 경우들에서, 사용자는 "레스토랑" 또는 "인쇄" 와 같은 원하는 서비스의 일반적인 설명만을 입력한다. 다른 시나리오들에서, 사용자는 예를 들어 특정의 요리-타입, 가격 범위, 및 원하는 레스토랑의 등급을 입력하여 훨씬 더 특정할 수도 있다. 이들 여러 상세들은 속성들로서 지칭될 수도 있고; 원하는 서비스와 관련되는 경우, 그들은 원하는 속성들로 지칭될 수도 있다.
디바이스 (115-a) 는 하나 이상의 원하는 속성들로 이루어지는 표현의 입력을 수락하고, 그 표현을 인식하거나, 다르게는 식별할 수도 있다. 원하는 속성들이 예를 들어 단어 형태로 표현될 수도 있기 때문에, 그들은 압축되지 않은 원하는 속성들로서 지칭될 수도 있다. 예를 들어, "캐주얼 레스토랑", "그린 드라이 클리너", "칼라 프린터", 및 "고선명 디스플레이" 는 압축되지 않은 원하는 속성들의 예들이다. 압축되지 않은 표현은 다수의 관련된 압축되지 않은 속성들을 포함할 수도 있다. 예를 들어, 압축되지 않은 표현은 자코모스 피자 (Giacomo's Pizza) 로 불리는 캐주얼 이탈리안 레스토랑과 관련된 역 DNS 스타일 네임일 수도 있다: "restaurant.casualdining.italian.giacomospizza".
디바이스 (115-a) 는 예를 들어 해시 알고리즘으로 원하는 속성들 각각을 압축할 수도 있다. 일부 실시형태들에서, SHA-1 또는 MD5 해시 알고리즘이 사용된다. 다른 실시형태들에서, 다수의 해시 알고리즘들이 사용된다. 본 기술에서 통상의 기술자들은 임의의 수의 해시 알고리즘들이 원하는 속성들을 압축하기 위해 채용될 수도 있다는 것을 인식할 것이다. 디바이스 (115-a) 는 압축된 원하는 속성들의 하나 이상을 포함하는 압축된 표현을 생성할 수도 있다. 일부 실시형태들에서, 압축된 표현은 해시된 원하는 속성들의 연쇄된 스트링이다. 압축된 표현은 따라서 원하는 서비스에 대한 역 DNS 스타일 네임 스트링의 해싱된 버전일 수도 있고, 압축된 원하는 속성들 각각은 역 DNS 스타일 네임 스트링의 개개의 엘리먼트들 (예를 들어, 도트들 사이의 각 단어) 에 대응할 수도 있다.
디바이스 (115-b) 와 같은 다른 디바이스들 (115) 은 압축된 광고된 속성들을 포함하는 압축된 표현들을 나타내는 신호들 (125) 을 브로드캐스트할 수도 있다. 이들 브로드캐스트된 압축된 표현들은 예를 들어 해싱된 광고된 속성들의 연쇄된 스트링들일 수도 있다. 압축된 원하는 속성들과 유사하게, 압축된 (예를 들어, 해싱된) 광고된 속성들은 서비스 네임에서의 워드들에 대응할 수도 있고; 광고된 속성들의 압축된 표현은 특정의 서비스를 제공하거나, 특정의 서비스와 연관되는 디바이스로부터 브로드캐스트될 수도 있다. 예를 들어, 광고된 서비스 네임은 특정의 디바이스에 의해 제공되는 특정의 비즈니스와 및/또는 서비와 연관될 수도 있다. 일부 실시형태들에서, 브로드캐스트된 압축된 표현(들) 은 광고된 서비스에 대한 역 DNS 스타일 네임 스트링에 대응한다. 그러한 경우들에서, 압축된 광고된 속성들은 하나 이상의 서비스 네임들의 개개의 엘리먼트들에 대응한다.
디바이스 (115-a) 는 압축된 광고된 속성들을 포함하는 압축된 표현을 수신할 수도 있다. 예로써, 디바이스 (115-b) 로부터 브로드캐스트된 압축된 표현은 디에고스 타코스 (Diego's Tacos) 로 불리는 캐주얼 멕시칸 레스토랑과 관련된 역 DNS 스타일 네임에 대응할 수도 있다: "restaurant.casualdining.mexican.diegotacos". 브로드캐스트된 압축된 표현은 역 DNS 스타일 네임의 해싱된 버전일 수도 있다. 브로드캐스트된 압축된 표현을 수신할 때, 디바이스 (115-a) 는 압축된 원하는 속성들과 압축된 광고된 속성들을 비교할 수도 있다. 이것은 그들의 대표적인 특정성 레벨에 따라 속성들의 각각을 비교하는 것을 포함할 수도 있다. 예를 들어, 생성된 압축된 표현이 "restaurant.casualdining.italian.giacomospizza" 에 대응하고, 브로드캐스트된 압축된 표현이 "restaurant.casualdining.mexican.diegostacos" 에 대응하는 경우, 각 표현의 최소의 특정의 속성들은 "레스토랑" 에 대응하고, 최고의 특정의 속성들은 각각 "giacomospizza" 및 "diegostacos" 에 대응한다.
디바이스 (115-a) 는 그 후 압축된 원하는 속성들과 압축된 광고된 속성들 사이의 매치가 존재하는지 여부를 결정할 수도 있다. 이러한 예에서, 디바이스 (115-a) 는 매칭하는 디바이스로서 지칭될 수도 있다. 매치가 존재하는지 여부는 속성들을 비교하는 특정된 기준의 함수일 수도 있다. 디바이스 (115-a) 의 사용자 인터페이스는 사용자가 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하는 하나 이상의 기준들을 특정하는 것을 허용할 수도 있다. 또는, 디바이스 (115-a) 는 그러한 기준을 자동적으로 특정할 수도 있다.
일부 실시형태들에서, 부분적 매칭 기준이 특정될 수도 있다. 예를 들어, 사용자는 그녀가 캐주얼 레스토랑을 발견하기를 원한다는 것을 나타낼 수도 있다. 디바이스 (115-a) 는 예를 들어 "restaurant.casualdining" 에 대응하는 압축된 원하는 속성들을 갖는 압축된 표현을 생성할 수도 있다. 디바이스 (115-a) 는 "restaurant.casualdining.mexican.diegostacos" 에 대응하는 압축된 광고된 속성들을 갖는 압축된 표현을 수신할 수도 있다. 그러한 예에서, 디바이스 (115-a) 는 수신된 압축된 표현이 캐주얼 레스토랑 - 즉, 디에고스 타코스로 불리는 캐주얼 멕시칸 레스토랑을 광고하고 있기 때문에 부분적 매치를 인식할 수도 있다. 디바이스 (115-a) 는 생성된 표현 및 수신된 표현 사이의 부분적 매치를 결정하는 것에 기초하여, 예를 들어 광고된 서비스에 대한 추가적인 정보를 결정하기 위해 수신된 표현을 선택할 수도 있다.
수신된 압축된 표현을 예를 들어 테이블 또는 데이터베이스와 비교하는 것과달리, 수신된 표현을 생성된 표현과 비교하는 것은 더 큰 사용자-특정성을 허용한다. 즉, 생성된 표현은 특정의 애플리케이션에 의해서만 제한되는, 사용자의 임의의 원하는 속성들을 나타낼 수도 있다. 그러나, 룩업 테이블 또는 데이터베이스는 더 작은 유연성을 제공할 수도 있다.
일부 경우들에서, 디바이스 (115-a) 는 수신된 압축된 표현에 의해 광고된 서비스의 로케이션일 수도 있는 로케이션을 결정하기 위해 수신된 표현을 사용할 수도 있다. 예를 들어, 수신된 압축된 표현은 물리적 로케이션에 대응하는 속성을 포함할 수도 있다. 또는, 수신된 표현을 선택한 후, 디바이스 (115-a) 는 광고된 서비스와 연관된 디바이스 (115) 로부터 추가적인 정보 (예를 들어, 좌표들 또는 위치 정보) 를 얻으려고 할 수도 있다.
일부 실시형태들에서, 압축된 표현은 하나 이상의 와일드카드 속성들을 포함한다. 예를 들어, 디바이스 (115-c) 의 사용자는 대형-포맷, 칼라 인쇄 서비스를 추구할 수도 있다. 원하는 서비스는 특정의 디바이스에 의해 제공되는 기능 또는 비즈니스 서비스일 수도 있다 - 예를 들어, 사용자는 사무실 환경에 있고 프린터를 찾고 있을 수도 있거나, 그녀는 사무실가 (business park) 에서 상업적 인쇄 비즈니스를 찾고 있을 수도 있다. 어느 시나리오에서든, 사용자는 예를 들어 인쇄 기술 및/또는 대기 시간에 관한 어떠한 특정의 선호도도 갖지 않을 수도 있다. 디바이스 (115-c) 는 각각 역 DNS 스타일 네임 스트링 "printing.largeformat.*.color" 의 해싱된 개개의 엘리먼트들일 수도 있는 하나 이상의 압축된 원하는 속성들을 갖는 압축된 표현을 생성할 수도 있다. 이러한 예에서, "*" 는 인쇄 기술 (예를 들어, 잉크젯 또는 레이저젯) 을 특정하기 위해 사용되는 속성에 대응할 수도 있는 와일드카드 값을 나타낸다. 와일드카드 값은 따라서 더 가능한 매치들을 허용할 수도 있다.
디바이스 (115-c) 는 (예를 들어, 브로드캐스트된 신호 (125) 를 통해) 디바이스 (115-d) 로부터 하나 이상의 압축된 광고된 속성들을 갖는 압축된 표현을 수신할 수도 있다. 압축된 표현은 짐스 프린트 숍 (Jim's Print Shop) 으로 칭해지는 비즈니스에서 와일-유-웨이트 (while-you-wait), 대형-포맷, 칼라, 레이저젯 인쇄에 대한 광고된 속성들일 수도 있는 역 DNS 스타일 네임 스트링 "prinint.largeformat.lasejet.color.whileyouwait.jimsprintshop" 을 나타낼 수도 있다. 디바이스 (115-c) 는 생성된 표현과 수신된 표현을 비교하고 부분적 매치 (또는 완전한 매치) 가 존재한다고 결정할 수도 있다. 생성된 표현은, 그 예에서, 프린터 기술에 대해 와일드카드 값을 채용했기 때문에, 디바이스 (115-c) 는 완전한 매치가 존재한다고 결정할 수도 있다. 사용자가 원하는 인쇄 기술 대신에 와일드카드 값을 특정했기 때문에, 임의의 인쇄 기술 (예를 들어, 레이저젯) 이 매치를 구성할 수도 있다.
여러 실시형태들에서, 압축된 표현들은 매칭하는 디바이스 (115) 에 의해 사용될 추가적인 엘리먼트들 및/또는 압축된 속성들을 포함할 수도 있다. 예를 들어, 압축된 표현은 압축 사이즈 표시자를 포함할 수도 있다. 압축 사이즈 표시자는 하나 이상의 압축된 속성들, 또는 전체로서의 표현에서 사용된 비트들의 수에 대해 매칭하는 디바이스 (115) 에게 알리는 압축된 속성 또는 일부 다른 엘리먼트일 수도 있다. 일부 경우들에서, 압축된 표현은 압축 알고리즘 표시자를 포함한다-예를 들어, 압축 알고리즘 표시자로 인코딩된다. 압축 알고리즘 표시자는 표현의 속성들을 압축하는데 있어서 및/또는 표현을 생성 (예를 들어, 연쇄) 시키는데 있어서 사용된 알고리즘들의 타입(들) 을 매칭하는 디바이스 (115) 에게 나타내는 하나 이상의 비트들일 수도 있다. 추가적으로 또는 대안적으로, 압축된 표현은 매칭하는 디바이스 (115) 가 그것이 완전한 표현을 수신했다는 것을 인식할 수 있도록 표현의 종단이 존재하는 장소를 매칭하는 디바이스 (115) 에게 통지할 수도 있는 표현의 종단 (end-of-expression) 표시자를 포함할 수도 있다. 표현의 종단 표시자는 예를 들어 매칭하는 디바이스 (115) 가 완전한 표현이 수신되었다는 표시로서 인식하는 하나 이상의 비트들일 수도 있다.
다음에, 도 2 는 여러 실시형태들에 따른 무선 통신 시스템에서 동작하도록 구성된 디바이스 (115-e) 의 블록도 (200) 를 도시한다. 디바이스 (115-e) 는 도 1a 및/또는 도 1b 를 참조하여 기술된 디바이스들 (115) 의 예이거나, 그들의 양태들, 또는 그들 중 하나 이상을 포함할 수도 있다. 디바이스 (115-e) 는 예를 들어 디바이스 (115) 를 참조하여 기술된 기능들을 수행하는 수단일 수도 있다. 디바이스 (115-e) 는 수신기 모듈 (210), 제어기 모듈 (220), 및/또는 송신기 모듈 (230) 을 포함할 수도 있다. 모듈들 각각은 서로와 통신할 수도 있다. 일부 실시형태들에서, 모듈들 중 하나 이상은 프로세서이다.
제어기 모듈 (220) 은 하나 이상의 압축되지 않은 원하는 속성들로 구성된 압축되지 않은 표현을 식별하도록 구성될 수도 있다. 제어기 모듈 (220) 은 원하는 속성들을 압축하고, 압축된 원하는 속성들을 갖는 압축된 표현을 생성하도록 구성될 수도 있다. 제어기 모듈 (220) 은 또한 수신기 모듈 (210) 에 의해 수신될 수도 있는 다른 압축된 표현과 생성된 표현을 비교할 수도 있다. 예를 들어, 제어기 모듈 (220) 은 상이한 디바이스 (115) 에 의해 광고된 서비스에 대응할 수도 있는 하나 이상의 압축된 광고된 속성들로 구성된 수신된 표현과 생성된 표현을 비교할 수도 있다.
일부 실시형태들에서, 제어기 모듈 (220) 은 또한 생성된 및 수신된 압축된 표현들이 매칭 속성들을 포함하는지 여부를 결정하도록 구성된다. 예를 들어, 제어기 모듈 (220) 은 압축된 광고된 속성들 중 하나 이상이 압축된 원하는 속성들 중 하나 이상과, 전체적으로 또는 부분적으로, 매칭하는지 여부를 결정할 수도 있다.
일부 실시형태들에서, 송신기 모듈 (230) 은 생성된 표현을 송신하도록 구성된다. 예를 들어, 디바이스 (115-e) 가 서비스를 광고하도록 구성되는 경우, 송신기 모듈 (230) 은 광고된 서비스에 대응하는 압축된 표현을 나타내는 신호를 송신 (예를 들어, 브로드캐스트) 할 수도 있다.
디바이스 (115-e) 의 컴포넌트들은 개별적으로 또는 집합적으로 하드웨어로 적용가능한 기능들 중 일부 또는 전부를 수행하도록 구성된 하나 이상의 ASIC 들로 구현될 수도 있다. 대안적으로, 그 기능들은 하나 이상의 집적회로들상에서 하나 이상의 다른 프로세싱 유닛들 (또는 코어들) 에 의해 수행될 수도 있다. 다른 실시형태들에서, 본 기술에 알려진 임의의 방식으로 프로그래밍될 수도 있는 다른 타입들의 집적회로들이 사용될 수도 있다 (예를 들어, 구조화된/플랫폼 ASIC 들, FPGA 들, 및 다른 세미-커스텀 IC 들). 각 유닛의 기능들은 또한 전체로 또는 부분적으로 하나 이상의 범용 또는 애플리케이션 특정 프로세서들에 의해 실행되도록 포맷팅된, 메모리 내에 수록된 명령들로 구현될 수도 있다.
도 3 은 여러 실시형태들에 따른 무선 통신 시스템에서 동작하도록 구성된 디바이스 (115-f) 의 블록도 (300) 를 도시한다. 디바이스 (115-f) 는 도 1a, 도 1b, 및/또는 도 2 를 참조하여 기술된 디바이스들 (115) 의 예이거나, 그 디바이스들의 양태들, 그 디바이스들 중 하나 이상을 포함할 수도 있다. 디바이스 (115-f) 는 디바이스들 (115) 을 참조하여 기술된 기능들을 수행하는 수단을 포함할 수도 있다. 예를 들어, 디바이스 (115-f) 는 수신기 모듈 (210-a), 제어기 모듈 (220-a), 및/또는 송신기 모듈 (230-a) 을 포함할 수도 있고, 이들 각각은 도 2 를 참조하여 기술된 대응하는 디바이스들의 예들이거나, 그 디바이스들과 유사한 기능들을 수행할 수도 있다.
제어기 모듈 (220-a) 은 표현 모듈 (305) 및/또는 비교 모듈 (310) 을 포함할 수도 있다. 일부 실시형태들에서, 표현 모듈 (305) 은 식별 모듈 (315), 속성 압축 모듈 (320), 및/또는 생성 모듈 (325) 을 포함한다. 식별 모듈 (315) 은 압축되지 않은 표현 - 예를 들어 압축되지 않은 원하는 속성들로 구성된 역 DNS 스타일 네임 스트링을 식별하도록 구성될 수도 있다. 속성 압축 모듈 (320) 은 예를 들어 하나 이상의 해시 알고리즘을 사용하여 원하는 속성을 압축하도록 구성될 수도 있다. 생성 모듈 (325) 은 압축된 원하는 속성들로 구성된 압축된 표현을 생성하도록 구성될 수도 있다. 일부 경우들에서, 생성 모듈 (325) 은 해시들의 스트링을 형성하기 위해 압축된 원하는 속성들을 연쇄시킨다. 추가적으로 또는 대안적으로, 생성 모듈 (325) 은 와일드카드 속성, 압축 사이즈 표시자, 또는 표현의 종단 표시자 중 하나 이상을 갖는 압축된 표현을 생성한다.
일부 실시형태들에서, 비교 모듈 (310) 은 결정 모듈 (330), 선택 모듈 (335), 및/또는 로케이션 모듈 (340) 을 포함한다. 결정 모듈 (330) 은 생성 모듈 (325) 에 의해 생성된 압축된 표현과 수신된 압축된 표현 - 예를 들어 수신기 모듈 (210) 에 의해 수신된 압축된 표현을 비교하도록 구성될 수도 있다. 일부 실시형태들에서, 결정 모듈 (330) 은 생성된 및 수신된 압축된 표현들을 비교하기 위한 기준들을 특정하거나, 그 비교하기 위한 사용자-특정된 기준들을 인식하도록 구성된다. 결정 모듈 (330) 은 또한 수신된 압축된 표현의 속성들이 전체적으로 부분적으로 생성된 압축된 표현과 매치하는지 여부를 결정하도록 구성될 수도 있다. 일부 경우들에서, 선택 모듈 (335) 은 매치 (예를 들어, 부분적인 매치) 가 존재한다는 것이 결정될 때 수신된 압축된 표현을 선택하도록 구성된다. 추가적으로, 또는 대안적으로, 로케이션 모듈 (340) 은 수신된 압축된 표현에 기초하여, 광고된 서비스의 로케이션, 또는 서비스를 광고하는 디바이스의 로케이션을 결정하도록 구성될 수도 있다.
디바이스 (115-f) 의 모듈들 각각은 서로와 통신할 수도 있다. 일부 실시형태들에서, 디바이스 (115-f) 의 모듈들의 하나 이상은 프로세서이다. 더욱이, 디바이스 (115-f) 의 여러 컴포넌트들은 개별적으로 또는 집합적으로 하드웨어로 적용가능한 기능들 중 일부 또는 전부를 수행하도록 구성된 하나 이상의 ASIC 들로 구현될 수도 있다. 대안적으로, 그 기능들은 하나 이상의 집적회로들상에서 하나 이상의 다른 프로세싱 유닛들 (또는 코어들) 에 의해 수행될 수도 있다. 다른 실시형태들에서, 본 기술에 알려진 임의의 방식으로 프로그래밍될 수도 있는 다른 타입들의 집적회로들이 사용될 수도 있다 (예를 들어, 구조화된/플랫폼 ASIC 들, FPGA 들, 및 다른 세미-커스텀 IC 들). 각 유닛의 기능들은 또한 전체로 또는 부분적으로 하나 이상의 범용 또는 애플리케이션 특정 프로세서들에 의해 실행되도록 포맷팅된, 메모리 내에 수록된 명령들로 구현될 수도 있다.
다음에, 도 4 를 참조하면, 여러 실시형태들에 따른 무선 통신 네트워크에서 동작하도록 구성된 디바이스 (115-g) 의 블록도 (400) 가 도시된다. 디바이스 (115-g) 는 여러 구성들을 가질 수도 있고 및/또는 개인용 컴퓨터들 (예를 들어, 랩톱 컴퓨터들, 넷북 컴퓨터들, 태블릿 컴퓨터들 등), 셀룰러 전화들, PDA 들, 스마트폰들, 디지털 비디오 레코더들 (DVRs), 인터넷 어플라이언스들, 게이밍 콘솔들, e-리더들, 프린터들, 스캐너들, 복사기들, 자동 현금 인출기들 (ATMs), 자동화된 정보 키오스크들 등과 같은 더 큰 디바이스들의 양태일 수도 있다. 디바이스 (115-g) 는 이동 동작을 용이하게 하기 위해 소형 배터리와 같은 내부 전력 공급 장치 (도시하지 않음) 를 가질 수도 있다. 일부 실시형태들에서, 이동 디바이스 (115-g) 는 도 1a, 도 1b, 도 2, 및/또는 도 3 을 참조하여 기술된 디바이스들 (115) 의 예이거나, 그들의 양태들을 포함할 수도 있다.
이동 디바이스 (115-g) 는 일반적으로 통신들을 송신하는 컴포넌트들 및 통신들을 수신하는 컴포넌트들을 포함하는 양방향 음성 및 데이터 통신들을 위한 컴포넌트들을 포함할 수도 있다. 이동 디바이스 (115-g) 는 각각 (예를 들어, 하나 이상의 버스들 (490) 을 통해) 서로와 직접 또는 간접으로 통신할 수도 있는 안테나(들) (405), 송신기 (예를 들어, 변조기) 모듈 (410), 수신기 (예를 들어, 복조기) 모듈 (415), 프로세서 모듈 (470), 및 (소프트웨어 (SW) (485) 를 포함하는) 메모리 (480) 를 포함할 수도 있다. 송신기 모듈 (410) 및 수신기 모듈 (415) 은 송수신기 모듈에서 구현될 수도 있고, 상술된 바와 같이 하나 이상의 별개의 디바이스들과 안테나(들) (405) 를 통해 및/또는 하나 이상의 유선 또는 무선 링크들을 통해 양방향적으로 통신하도록 구성될 수도 있다. 송신기 모듈 (410) 및 수신기 모듈 (415) 은 패킷들을 변조하고 송신을 위해 안테나(들) (405) 로 그 변조된 패킷들을 제공하며, 안테나(들) (405) 로부터 수신된 패킷들을 복조하도록 구성된 모뎀이거나 모뎀을 포함할 수도 있다. 디바이스 (115-g) 가 단일의 안테나 (405) 를 포함할 수도 있지만, 이동 디바이스 (115-g) 는 다수의 무선 송신들응ㄹ 동시에 송신 및/또는 수신할 수 있는 다수의 안테나들 (405) 을 가질 수도 있다. 송신기 모듈 (410) 및 수신기 모듈 (415) 은 또한 다수의 디바이스들 (115) 과 동시에 통신할 수 있을 수도 있다.
메모리 (480) 는 랜덤 액세스 메모리 (RAM) 및 리드 온리 메모리 (ROM) 를 포함할 수도 있다. 메모리 (480) 는 실행될 때 프로세서 모듈 (470) 로 하여금 여기에 기술된 여러 기능들을 수행 (예를 들어, 신호 측정들을 평가, 차이 특정이 임계값을 초과하는 지 여부를 결정, 오버라이드 임계값을 활성화 또는 조정 등을) 하게 하도록 구성된 명령들을 포함하는 컴퓨터 판독가능, 컴퓨터 실행가능 소프트웨어/펌웨어 코드 (485) 를 저장할 수도 있다. 대안적으로, 소프트웨어/펌웨어 코드 (485) 는 프로세서 모듈 (470) 에 의해 직접 실행가능하지 않을 수도 있지만, (예를 들어, 컴파일 및 실행될 때) 컴퓨터로 하여금 여기에 기술된 기능들을 수행하게 하도록 구성될 수도 있다. 프로세서 모듈 (470) 은 지능형 하드웨어 디바이스, 예를 들어 중앙 프로세싱 유닛 (CPU), 마이크로제어기, 주문형 반도체 (ASIC) 등을 포함할 수도 있다.
도 4 의 아키텍쳐에 따르면, 디바이스 (115-g) 는 도 2 및/또는 도 3 의 디바이스들 (115) 의 대응하는 모듈(들) 과 실질적으로 동일할 수도 있는 표현 모듈 (305-a) 및/또는 비교 모듈 (310-a) 을 더 포함할 수도 있다. 일부 실시형태들에서, 표현 모듈 (305-a) 은 도 3 을 참조하여 기술된 식별 모듈 (315), 속성 압축 모듈 (320), 및/또는 생성 모듈 (325) 의 기능들을 수행하도록 구성된다. 그리고, 일부 경우들에서, 비교 모듈 (310-a) 은 결정 모듈 (330), 선택 모듈 (335), 및 로케이션 모듈 (340) 중 하나 이상의 기능들을 수행하도록 구성된다.
예로써, 표현 모듈 (305-a) 및 비교 모듈 (310-a) 은 디바이스 (115-g) 의 컴포넌트들이고, 그들은 (예를 들어, 버스 (490) 를 통해) 디바이스 (115-g) 의 다른 컴포넌트들과 통신한다. 대안적으로, 표현 모듈 (305-a) 및 비교 모듈 (310-a) 의 기능성은 프로세서 모듈 (470) 과 같은, 디바이스 (115-g) 의 다른 모듈들 중 하나 이상의 컴포넌트로서 구현될 수도 있다. 일부 실시형태들에서, 표현 모듈 (305-a) 및/또는 비교 모듈 (310-a) 의 기능성은 비일시적 컴퓨터 판독가능 매체상에 저장된 코드로서 구현된다.
다음에, 도 5 는 여러 실시형태들에 따른 무선 통신 시스템에서 동작하는 디바이스들 (115) 의 콜 흐름도 (500) 를 도시한다. 디바이스들 (115) 은 도 1a, 도 1b, 도 2, 도 3 및/또는 도 4 을 참조하여 기술된 디바이스들 (115) 의 예이거나, 그들의 양태들을 포함할 수도 있다. 제 1 디바이스 (115-h) 는 하나 이상의 압축되지 않은 속성들로 구성될 수도 있는 압축되지 않은 제 1 표현을 식별할 수도 있다 (505). 제 1 표현은 예를 들어 원하는 속성들의 스트링에 대응할 수도 있다. 제 1 디바이스 (115-h) 는 그 후 제 1 표현의 속성들을 압축하고 (510), 이들 압축된 속성들로 구성된 압축된 제 1 표현을 생성할 수도 있다 (515).
독립적으로, 및 일부 경우들에서, 동시적으로, 제 2 디바이스 (115-i) 는 하나 이상의 압축되지 않은 속성들로 구성될 수도 있는 압축되지 않은 제 2 표현을 식별할 수도 있다 (520). 제 2 표현은 광고된 속성들의 스트링에 대응할 수도 있다. 제 2 디바이스 (115-i) 는 그 후 제 2 표현의 속성들을 압축하고 (525), 이들 압축된 속성들로 구성된 압축된 제 2 표현을 생성할 수도 있다 (530). 제 2 디바이스 (115-i) 는 압축된 제 2 표현을 브로드캐스트할 수도 있다 (535).
제 1 디바이스 (115-h) 는 압축된 제 2 표현을 수신할 수도 있다 (535). 그 후, 제 1 디바이스 (115-h) 는 생성된 압축된 제 1 표현의 속성들과 수신된 압축된 제 2 표현의 속성들을 비교할 수도 있다 (540). 일부 경우들에서, 비교를 위한 사용자-특정된 기준들에 기초하여, 제 1 디바이스 (115-h) 는 압축된 제 1 및 제 2 표현들의 속성들 사이에 전제적이거나 부분적인 매치가 존재하는지 여부를 결정한다 (545). 제 1 디바이스가 적어도 부분적인 매치가 존재한다고 결정하는 경우, 그것은 제 2 표현을 선택할 수도 있다 (550).
도 6 은 여러 실시형태들에 따른, 무선 통신의 방법 (600) 의 흐름도를 도시한다. 방법 (600) 은 도 1a, 도 1b, 도 2, 도 3, 도 4 및/또는 도 5 의 디바이스들 (115) 중 하나 이상에 의해 구현될 수도 있다.
블록 (605) 에서, 방법은 하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하는 단계를 포함할 수도 있다. 블록 (605) 의 동작들은 여러 실시형태들에서 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 표현 모듈 (305), 및 도 3 의 생성 모듈 (325) 에 의해 수행된다.
일부 실시형태들에서, 압축된 제 1 표현은 원하는 서비스에 대한 역 DNS 스타일 네임 스트링에 대응한다. 추가적으로 또는 대안적으로, 압축된 원하는 속성들 각각은 하나 이상의 서비스 네임들의 개개의 엘리먼트들에 대응할 수도 있다. 압축된 제 1 표현은 또한 적어도 하나의 와일드카드 속성을 포함할 수도 있다. 일부 경우들에서, 압축된 제 1 표현은 또한 압축 사이즈 표시자, 압축 알고리즘 표시자, 및 표현의 종단 표시자 중 하나 이상을 더 포함할 수도 있다. 압축된 제 1 표현은 또한 적어도 2 개의 압축 알고리즘들로 압축된 속성들을 포함할 수도 있다.
블록 (610) 에서, 방법은 하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하는 단계를 포함할 수도 있다. 블록 (610) 의 동작들은 도 2 및 도 3 의 수신기 모듈 (210) 및/또는 도 4 의 안테나들 (405) 및 수신기 모듈 (415) 에 의해 수행될 수도 있다.
일부 실시형태들에서, 압축된 제 2 표현은 광고된 서비스에 대한 역 DNS 스타일 네임 스트링에 대응한다. 추가적으로 또는 대안적으로, 압축된 광고된 속성들 각각은 하나 이상의 서비스 네임들의 개개의 엘리먼트들에 대응할 수도 있다. 압축된 제 2 표현은 또한 적어도 하나의 와일드카드 속성을 포함할 수도 있다. 일부 경우들에서, 압축된 제 2 표현은 또한 압축 사이즈 표시자, 압축 알고리즘 표시자, 및 표현의 종단 표시자 중 하나 이상을 포함한다. 압축된 제 2 표현은 적어도 2 개의 압축 알고리즘들로 압축된 속성들을 포함할 수도 있다.
블록 (615) 에서, 방법은 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하는 단계를 수반할 수도 있다. 블록 (615) 의 동작들은 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및/또는 도 3 의 결정 모듈 (330) 에 의해 수행될 수도 있다.
블록 (620) 에서, 방법은 압축된 원하는 속성들 중 적어도 하나가 압축된 광고된 속성들 중 적어도 하나와의 적어도 부분적 매치인지를 결정하는 단계를 포함할 수도 있다. 블록 (620) 의 동작들은 여러 실시형태들에서, 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및/또는 도 3 의 결정 모듈 (330) 에 의해 수행된다.
다음에, 도 7 은 여러 실시형태들에 따른, 무선 통신의 방법 (700) 의 흐름도를 도시한다. 방법 (700) 은 방법 (600) 의 예일 수도 있고, 그것은 도 1a, 도 1b, 도 2, 도 3, 도 4 및/또는 도 5 의 디바이스들 (115) 중 하나 이상에 의해 구현될 수도 있다.
블록 (705) 에서, 방법은 하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하는 단계를 포함할 수도 있다. 블록 (705) 의 동작들은 여러 실시형태들에서, 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 표현 모듈 (305) 및 도 3 의 생성 모듈 (325) 에 의해 수행된다.
블록 (710) 에서, 방법은 하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하는 단계를 포함할 수도 있다. 블록 (710) 의 동작들은 도 2 및/또는 도 3 의 수신기 모듈 (210), 및/또는 도 4 의 안테나들 (405) 및 수신기 모듈 (415) 에 의해 수행될 수도 있다.
블록 (715) 에서, 방법은 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하는 단계를 수반할 수도 있다. 블록 (715) 의 동작들은 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및/또는 도 3 의 결정 모듈 (330) 에 의해 수행될 수도 있다.
블록 (720) 에서, 압축된 원하는 속성들이 압축된 광고된 속성들과의 부분적 매치가 아닌 경우, 방법은 이전 단계들의 하나 이상을 반복하는 단계를 포함할 수도 있다. 압축된 원하는 속성들 및 압축된 광고된 속성들이 적어도 부분적인 매치를 구성하는 경우, 방법은 블록들 (725 및 730) 의 동작들을 포함할 수도 있다.
블록 (725) 에서, 방법은 압축된 제 2 표현을 선택하는 단계를 포함할 수도 있다. 블록 (725) 의 동작들은 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및/또는 도 3 의 선택 모듈 (335) 에 의해 수행될 수도 있다.
블록 (730) 에서, 방법은 압축된 제 2 표현에 적어도 부분적으로 기초하여 로케이션을 결정하는 단계를 더 수반할 수도 있다. 블록 (730) 의 동작들은 여러 실시형태들에서, 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및/또는 도 3 의 로케이션 모듈 (340) 에 의해 수행된다. 일부 실시형태들에서, 로케이션을 결정하는 단계는 압축된 제 2 표현에 의해 광고된 서비스의 로케이션을 결정하는 단계를 포함한다.
다음에, 도 8 은 여러 실시형태들에 따른, 무선 통신의 방법 (800) 의 흐름도를 도시한다. 방법 (800) 은 방법 (600 및/또는 700) 의 예일 수도 있고, 그것은 도 1a, 도 1b, 도 2, 도 3, 도 4 및/또는 도 5 의 디바이스들 (115) 중 하나 이상에 의해 구현될 수도 있다.
블록 (805) 에서, 방법은 하나 이상의 압축되지 않은 원하는 속성들로 구성된 압축되지 않은 제 1 표현을 식별하는 단계를 수반할 수도 있다. 블록 (805) 의 동작들은 여러 실시형태들에서, 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 표현 모듈 (305) 및/또는 도 3 의 식별 모듈 (315) 에 의해 수행된다.
블록 (810) 에서, 방법은 하나 이상의 압축되지 않은 원하는 속성들 각각을 압축하는 단계를 포함할 수도 있다. 블록 (810) 의 동작들은 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 표현 모듈 (305) 및/또는 도 3 의 속성 압축 모듈 (320) 에 의해 수행될 수도 있다.
블록 (815) 에서, 방법은 압축된 원하는 속성들의 하나 이상을 포함하는 압축된 제 1 표현을 생성하는 단계를 포함할 수도 있다. 블록 (815) 의 동작들은 여러 실시형태들에서 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 표현 모듈 (305) 및/또는 도 3 의 생성 모듈 (325) 에 의해 수행된다.
블록 (820) 에서, 방법은 하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하는 단계를 포함할 수도 있다. 블록 (820) 의 동작들은 도 2 및/또는 도 3 의 수신기 모듈 (210), 및/또는 도 4 의 안테나들 (405) 및 수신기 모듈 (415) 에 의해 수행될 수도 있다.
블록 (825) 에서, 방법은 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하는 단계를 수반할 수도 있다. 블록 (825) 의 동작들은 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및/또는 도 3 의 결정 모듈 (330) 에 의해 수행될 수도 있다.
블록 (830) 에서, 방법은 압축된 원하는 속성들 중 적어도 하나가 압축된 광고된 속성들 중 적어도 하나와의 적어도 부분적인 매치인지 여부를 결정하는 단계를 포함할 수도 있다. 블록 (830) 의 동작들은 여러 실시형태들에서 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및 도 3 의 결정 모듈 (330) 에 의해 수행된다.
도 9 는 여러 실시형태들에 따른, 무선 통신의 방법 (900) 의 흐름도를 도시한다. 방법 (900) 은 방법 (600, 700 및/또는 800) 의 예일 수도 있고, 그것은 도 1a, 도 1b, 도 2, 도 3, 도 4 및/또는 도 5 의 디바이스들 (115) 중 하나 이상에 의해 구현될 수도 있다.
블록 (905) 에서, 방법은 하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하는 단계를 포함할 수도 있다. 블록 (905) 의 동작들은 여러 실시형태들에서 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 표현 모듈 (305) 및/또는 도 3 의 생성 모듈 (325) 에 의해 수행된다.
블록 (910) 에서, 방법은 하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하는 단계를 포함할 수도 있다. 블록 (910) 의 동작들은 도 2 및/또는 도 3 의 수신기 모듈 (210), 및/또는 도 4 의 안테나들 (405) 및 수신기 모듈 (415) 에 의해 수행될 수도 있다.
블록 (915) 에서, 방법은 또한 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하는 기준을 특정하는 단계를 수반할 수도 있다. 블록 (915) 의 동작들은 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및/또는 도 3 의 결정 모듈 (330) 에 의해 수행될 수도 있다.
블록 (920) 에서, 방법은 특정된 기준에 기초하여, 압축된 원하는 속성들과 압축된 광고된 속성들을 비교하는 단계를 수반할 수도 있다. 블록 (920) 의 동작들은 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및/또는 도 3 의 결정 모듈 (330) 에 의해 수행될 수도 있다.
블록 (925) 에서, 방법은 압축된 원하는 속성들 중 적어도 하나가 압축된 광고된 속성들 중 적어도 하나와의 적어도 부분적인 매치인지 여부를 결정하는 단계를 포함할 수도 있다. 블록 (925) 의 동작들은 도 2 및/또는 도 3 의 제어기 모듈 (220), 도 3 및/또는 도 4 의 비교 모듈 (310) 및/또는 도 3 의 결정 모듈 (330) 에 의해 수행된다.
본 기술에서 통상의 기술자들은 방법들 (600, 700, 800, 및 900) 이 여기에 기술된 툴들 및 기법들의 예시의 구현들이라고 인식할 것이다. 그 방법들은 더 많거나 더 작은 단게들로 수행될 수도 있고; 그들은 표시된 것 이외의 순서로 수행될 수도 있다.
상술된 기법들은 CDMA, TDMA, FDMA, OFDMA, SC-FDMA, 및 다른 시스템들과 같은 여러 무선 통신 시스템들에 대해 사용될 수도 있다. 용어들 "시스템" 및 "네트워크" 는 종종 교환가능하게 사용된다. CDMA 시스템은 CDMA2000, UTRA (Universal Terrestrial Radio Access) 등과 같은 무선 기술을 구현할 수도 있다. CDMA2000 은 IS-2000, IS-95, 및 IS-856 표준들을 커버한다. IS-2000 릴리스들 0 및 A 는 통상 CDMA2000 1X, 1X 등으로 지칭된다. IS-856 (TIA-856) 은 통상 CDAM2000 1xEV-DO, 고속 패킷 데이터 (HRPD) 등으로서 지칭된다. UTRA 는 광대역 CDMA (WCDMA) 및 CDMA 의 다른 변형들을 포함한다. TDMA 시스템은 GSM (Global System for Mobile Communications) 과 같은 무선 기술을 구현할 수도 있다. OFDMA 시스템은 UMB (Ultra Mobile Broadband), 진화된 UTRA (E-UTRA), IEEE 802.11 (WiFi), IEEE 802.16 (WiMAX), IEEE 802.20, 플래시-OFDM 등과 같은 무선 기술을 구현할 수도 있다. UTRA 및 E-UTRA 는 UMTS (Universal Mobile Telecommunication System) 의 부분이다. 3GPP 롱 텀 에볼루션 (LTE) 및 LTE-Advanced (LTE-A) 는 E-UTRA 를 사용하는 UMTS 의 새로운 릴리스들이다. UTRA, E-UTRA, UMTS, LTE, LTE-A, 및 GSM 은 "제 3 세대 파트너쉽 프로젝트" (3GPP) 로 명명된 기구로부터의 문서들에 기술되어 있다. CDMA2000 및 UMB 는 "제 3 세대 파트너쉽 프로젝트 2" (3GPP2) 로 명명된 기구로부터의 문서들에 기술되어 있다.
여기에 기술된 기법들은 위에서 언급된 시스템들 및 무선 기술들 뿐아니라 다른 시스템들 및 무선 기술들을 위해 사용될 수도 있다. 예를 들어, 그 기법들은 여러 IEEE 802.11 표준들 (예를 들어, IEEE 802.11a/g, 802.11n, 802.11 ac, 801.11 ad, 802.11 모 등) 에서 기술된 프로토콜들에 기초하는 네트워크를 지칭할 수도 있는 무선 로컬 영역 네트워크 (WLAN) 또는 Wi-Fi 네트워크에서 구현될 수도 있다. 추가적으로 또는 대안적으로, 그 기법들은 블루투스 네트워크, IEEE 802.15 표준 패밀리를 채용하는 네트워크와 같은 무선 개인 영역 네트워크 (WPAN) 에서 채용될 수도 있다. 일부 실시형태들에서, Wi-Fi Direct (예를 들어, WFDS ASP), 유니버셜 플러그 앤 플레이 (UPnP), 및/또는 IEEE 802.11 ad (WiGig) 프로토콜들이 채용될 수도 있다. 그러나, 상기 상세한 설명의 많은 곳에서, LTE 용어가 사용되지만, 그 기법들은 LTE 애플리케이션들을 넘머 적용가능하다.
첨부된 도면들과 관련하여 상술된 상세한 설명은 예시의 실시형태들을 기술하며, 청구범위의 범위 내에 있거나 구현될 수도 있는 유일한 실시형태들을 나타내지 않는다. 상세한 설명은 기술된 기법들의 이해를 제공할 목적으로 특정의 상세들을 포함한다. 이들 기법들은 그러나 이들 특정의 상세들 없이도 실시될 수도 있다. 일부 예들에서, 잘 알려진 구조들 및 디바이스들은 기술된 실시형태들의 개념들을 모호하게 하는 것을 피하기 위해 블록도 형태로 도시된다.
정보 및 신호들은 임의의 다양한 상이한 기술들 및 기법들을 사용하여 표현될 수도 있다. 예를 들어, 상기의 설명에 걸쳐 참조될 수도 있는 데이터, 명령들, 커맨드들, 정보, 신호들, 비트들, 심볼들, 및 칩들은 전압들, 전류들, 전자기파들, 자기 필드들 또는 입자들, 광학 필드들 또는 입자들, 또는 이들의 조합에 의해 표현될 수도 있다.
여기의 개시와 관련하여 기술된 여러 예시적인 블록들 및 모듈들은 범용 프로세서, 디지털 신호 프로세서 (DSP), 주문형 반도체 (ASIC), 필드 프로그래머블 게이트 어레이 (FPGA) 또는 다른 프로그래머블 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 여기에 기술된 기능들을 수행하도록 설계된 이들의 임의의 조합으로 구현 또는 수행될 수도 있다. 범용 프로세서는 마이크로프로세서일 수도 있지만, 대안으로, 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수도 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합, 예를 들어, DSP 와 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합한 하나 이상의 마이크로프로세서들, 또는 임의의 다른 그러한 구성으로서 구현될 수도 있다.
여기에 기술된 기능들은 하드웨어, 프로세서에 의해 실행되는 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 프로세서에 의해 실행되는 소프트웨어로 구현되는 경우, 그 기능들은 컴퓨터 판독가능 매체상의 하나 이상의 명령들 또는 코드로서 저장 또는 송신될 수도 있다. 다른 예들 및 구현들은 본 개시 및 첨부된 청구범위의 범위 및 사상 내에 있다. 예를 들어, 소프트웨어의 특성으로 인해, 상술된 기능들은 프로세서에 의해 실행되는 소프트웨어, 하드웨어, 펌웨어, 하드와이어링, 또는 이들의 임의의 것의 조합들을 사용하여 구현될 수 있다. 기능들을 구현하는 특징들은 또한 기능들의 부분들이 상이한 물리적 로케이션들에서 구현되도록 분포되는 것을 포함하여, 여러 위치들에 물리적으로 로케이팅될 수도 있다. 또한, 여기서 사용되는 바와 같이, 청구범위에서 "~ 중 적어도 하나" 가 뒤따르는 항목들의 리스트에서 사용되는 바와 같은 "또는" 포함시키는 것은 예를 들어 "A, B, 또는 C 중 적어도 하나"의 리스트가 A 또는 B 또는 C 또는 AB 또는 AC 또는 BC 또는 ABC (즉, A 및 B 및 C) 를 의미하도록 이접적 리스트를 나타낸다.
컴퓨터 판독가능 매체는 한 곳으로부터 다른 곳으로 컴퓨터 프로그램의 이송을 용이하게 하는 임의의 매체들을 포함하는 컴퓨터 저장 매체 및 통신 매체를 포함한다. 저장 매체는 범용 또는 특수 목적 컴퓨터에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수도 있다. 비제한적인 예로, 컴퓨터 판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광 디스크 스토리지, 자기 디스크 스토리지 또는 다른 자기 저장 디바이스들, 또는 범용 또는 특수 목적 컴퓨터, 또는 범용 또는 특수 목적 프로세서에 의해 액세스될 수 있고, 소망의 프로그램 코드 수단을 명령들 또는 데이터 구조들의 형태로 반송하거나 저장하는데 사용될 수 있는 임의의 다른 매체를 포함할 수 있다. 또한, 연결은 컴퓨터 판독가능 매체로 적절하게 칭해진다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 트위스티드 페어, 디지털 가입자 라인 (DSL), 또는 적외선, 라디오, 및 마이크로웨이브와 같은 무선 기술들을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되는 경우, 동축 케이블, 광섬유 케이블, 트위스티드 페어, DSL, 또는 적외선, 라디오, 및 마이크로웨이브와 같은 무선 기술들은 매체의 정의에 포함된다. 디스크 (disk 및 disc) 는 본원에서 사용되는 바와 같이, 콤팩트 디스크 (compact disc, CD), 레이저 디스크, 광 디스크, 디지털 다용도 디스크 (DVD), 플로피 디스크 (floppy disk) 및 블루레이 디스크를 포함하는데, disk들은 보통 데이터를 자기적으로 재생하지만, disc들은 레이저들로써 광학적으로 데이터를 재생한다. 상기한 것들의 조합들은 또한 컴퓨터 판독가능 매체들의 범위 내에 포함된다.
본 개시의 상기의 설명은 본 기술에서 통상의 기술자가 본 개시를 실시하거나 사용하는 것을 가능하게 하도록 제공된다. 본 개시에 대한 여러 변경들이 통상의 기술자들에게는 용이하게 분명할 것이며, 여기에 정의된 일반 원리들은 개시의 사상 또는 범위로부터 일탈하지 않고 다른 변형들에 적용될 수도 있다. 본 개시 전체에 걸쳐, 용어 "예" 또는 "예시적인" 은 예 또는 예시를 나타내고, 언급된 예에 대한 임의의 선호를 암시하거나 요구하지 않는다. 따라서, 본 개시는 여기에 기술된 예들 및 설계들에 제한되어야 하는 것이 아니라, 여기에 개시된 원리들 및 신규한 특징들과 일관성 있는 가장 넓은 범위에 따라야 한다.

Claims (30)

  1. 무선 통신의 방법으로서,
    하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하는 단계;
    하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하는 단계;
    상기 압축된 원하는 속성들과 상기 압축된 광고된 속성들을 비교하는 단계; 및
    상기 압축된 원하는 속성들 중 적어도 하나가 상기 압축된 광고된 속성들 중 적어도 하나와 적어도 부분적인 매치를 포함하는지 여부를 결정하는 단계를 포함하는, 무선 통신의 방법.
  2. 제 1 항에 있어서,
    상기 압축된 원하는 속성들 중 하나가 상기 압축된 광고된 속성들의 적어도 하나와 적어도 부분적인 매치를 포함하는 경우 상기 압축된 제 2 표현을 선택하는 단계를 더 포함하는, 무선 통신의 방법.
  3. 제 2 항에 있어서,
    상기 압축된 제 2 표현에 적어도 부분적으로 기초하여 로케이션을 결정하는 단계를 더 포함하는, 무선 통신의 방법.
  4. 제 3 항에 있어서,
    상기 로케이션을 결정하는 단계는 상기 압축된 제 2 표현에 의해 광고된 서비스의 로케이션을 결정하는 단계를 포함하는, 무선 통신의 방법.
  5. 제 1 항에 있어서,
    하나 이상의 압축되지 않은 원하는 속성들을 포함하는 압축되지 않은 제 1 표현을 식별하는 단계; 및
    상기 하나 이상의 압축되지 않은 원하는 속성들 각각을 압축하는 단계를 더 포함하는, 무선 통신의 방법.
  6. 제 1 항에 있어서,
    상기 압축된 제 1 표현은 원하는 서비스에 대한 역 도메인 네임 시스템 (DNS) 스타일 네임 스트링에 대응하고,
    상기 압축된 제 2 표현은 광고된 서비스에 대한 역 DNS 스타일 네임 스트링에 대응하는, 무선 통신의 방법.
  7. 제 1 항에 있어서,
    상기 압축된 원하는 속성들 각각 및 상기 압축된 광고된 속성들 각각은 하나 이상의 서비스 네임들의 개개의 엘리먼트들에 대응하며,
    상기 하나 이상의 서비스 네임들은 역 도메인 네임 시스템 (DNS) 스타일 네임 스트링들을 포함하는, 무선 통신의 방법.
  8. 제 1 항에 있어서,
    상기 압축된 원하는 속성들과 상기 압축된 광고된 속성들을 비교하기 위한 기준을 특정하는 단계를 더 포함하는, 무선 통신의 방법.
  9. 제 1 항에 있어서,
    상기 압축된 제 1 표현 또는 상기 압축된 제 2 표현 중 적어도 하나는:
    적어도 하나의 와일드카드 속성을 더 포함하는, 무선 통신의 방법.
  10. 제 1 항에 있어서,
    상기 압축된 제 1 표현 또는 상기 압축된 제 2 표현 중 적어도 하나는:
    압축 사이즈 표시자를 더 포함하는, 무선 통신의 방법.
  11. 제 1 항에 있어서,
    상기 압축된 제 1 표현 또는 상기 압축된 제 2 표현 중 적어도 하나는:
    압축 알고리즘 표시자를 더 포함하는, 무선 통신의 방법.
  12. 제 1 항에 있어서,
    상기 압축된 제 1 표현 또는 상기 압축된 제 2 표현 중 적어도 하나는:
    표현의 종단 (end-of-expression) 표시자를 더 포함하는, 무선 통신의 방법.
  13. 제 1 항에 있어서,
    상기 압축된 제 1 표현 또는 상기 압축된 제 2 표현 중 적어도 하나는:
    적어도 2 개의 압축 알고리즘들로 압축된 속성들을 더 포함하는, 무선 통신의 방법.
  14. 무선 통신을 위한 시스템으로서,
    하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하는 수단;
    하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하는 수단;
    상기 압축된 원하는 속성들과 상기 압축된 광고된 속성들을 비교하는 수단; 및
    상기 압축된 원하는 속성들 중 적어도 하나가 상기 압축된 광고된 속성들 중 적어도 하나와 적어도 부분적인 매치를 포함하는지 여부를 결정하는 수단을 포함하는, 무선 통신을 위한 시스템.
  15. 제 14 항에 있어서,
    상기 압축된 원하는 속성들 중 하나가 상기 압축된 광고된 속성들의 적어도 하나와 적어도 부분적인 매치를 포함하는 경우 상기 압축된 제 2 표현을 선택하는 수단을 더 포함하는, 무선 통신을 위한 시스템.
  16. 제 15 항에 있어서,
    상기 압축된 제 2 표현에 적어도 부분적으로 기초하여 로케이션을 결정하는 수단을 더 포함하는, 무선 통신을 위한 시스템.
  17. 제 14 항에 있어서,
    하나 이상의 압축되지 않은 원하는 속성들을 포함하는 압축되지 않은 제 1 표현을 식별하는 수단; 및
    상기 하나 이상의 압축되지 않은 원하는 속성들 각각을 압축하는 수단을 더 포함하는, 무선 통신을 위한 시스템.
  18. 제 14 항에 있어서,
    상기 압축된 제 1 표현은 원하는 서비스에 대한 역 도메인 네임 시스템 (DNS) 스타일 네임 스트링에 대응하고,
    상기 압축된 제 2 표현은 광고된 서비스에 대한 역 DNS 스타일 네임 스트링에 대응하는, 무선 통신을 위한 시스템.
  19. 제 14 항에 있어서,
    상기 압축된 원하는 속성들 각각 및 상기 압축된 광고된 속성들 각각은 하나 이상의 서비스 네임들의 개개의 엘리먼트들에 대응하며,
    상기 하나 이상의 서비스 네임들은 역 도메인 네임 시스템 (DNS) 스타일 네임 스트링들을 포함하는, 무선 통신을 위한 시스템.
  20. 제 14 항에 있어서,
    상기 압축된 원하는 속성들과 상기 압축된 광고된 속성들을 비교하기 위한 기준을 특정하는 수단을 더 포함하는, 무선 통신을 위한 시스템.
  21. 무선 통신을 위한 장치로서,
    프로세서;
    상기 프로세서와 전자 통신하는 메모리; 및
    상기 메모리에 저장된 명령들을 포함하고,
    상기 명령들은:
    하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하고;
    하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하며;
    상기 압축된 원하는 속성들과 상기 압축된 광고된 속성들을 비교하고; 및
    상기 압축된 원하는 속성들 중 적어도 하나가 상기 압축된 광고된 속성들 중 적어도 하나와 적어도 부분적인 매치를 포함하는지 여부를 결정하도록
    상기 프로세서에 의해 실행가능한, 무선 통신을 위한 장치.
  22. 제 21 항에 있어서,
    상기 명령들은:
    상기 압축된 원하는 속성들 중 하나가 상기 압축된 광고된 속성들의 적어도 하나와 적어도 부분적인 매치를 포함하는 경우 상기 압축된 제 2 표현을 선택하도록 상기 프로세서에 의해 실행가능한, 무선 통신을 위한 장치.
  23. 제 22 항에 있어서,
    상기 명령들은:
    상기 압축된 제 2 표현에 적어도 부분적으로 기초하여 로케이션을 결정하도록 상기 프로세서에의해 실행가능한, 무선 통신을 위한 장치.
  24. 제 21 항에 있어서,
    상기 명령들은:
    하나 이상의 압축되지 않은 원하는 속성들을 포함하는 압축되지 않은 제 1 표현을 식별하고; 및
    상기 하나 이상의 압축되지 않은 원하는 속성들 각각을 압축하도록
    상기 프로세서에 의해 실행가능한, 무선 통신을 위한 장치.
  25. 제 21 항에 있어서,
    상기 명령들은:
    상기 압축된 원하는 속성들과 상기 압축된 광고된 속성들을 비교하기 위한 기준을 특정하도록 상기 프로세서에 의해 실행가능한, 무선 통신을 위한 장치.
  26. 무선 통신을 위한 코드를 저장하는 비일시적 컴퓨터 판독가능 매체로서,
    상기 코드는:
    하나 이상의 압축된 원하는 속성들을 포함하는 압축된 제 1 표현을 생성하고;
    하나 이상의 압축된 광고된 속성들을 포함하는 압축된 제 2 표현을 수신하며;
    상기 압축된 원하는 속성들과 상기 압축된 광고된 속성들을 비교하고; 및
    상기 압축된 원하는 속성들 중 적어도 하나가 상기 압축된 광고된 속성들 중 적어도 하나와 적어도 부분적인 매치를 포함하는지 여부를 결정하도록
    실행가능한 명령들을 포함하는, 비일시적 컴퓨터 판독가능 매체.
  27. 제 26 항에 있어서,
    상기 명령들은:
    상기 압축된 원하는 속성들 중 하나가 상기 압축된 광고된 속성들의 적어도 하나와 적어도 부분적인 매치를 포함하는 경우 상기 압축된 제 2 표현을 선택하도록 실행가능한, 비일시적 컴퓨터 판독가능 매체.
  28. 제 27 항에 있어서,
    상기 명령들은:
    상기 압축된 제 2 표현에 적어도 부분적으로 기초하여 로케이션을 결정하도록 실행가능한, 비일시적 컴퓨터 판독가능 매체.
  29. 제 26 항에 있어서,
    상기 명령들은:
    하나 이상의 압축되지 않은 원하는 속성들을 포함하는 압축되지 않은 제 1 표현을 식별하고; 및
    상기 하나 이상의 압축되지 않은 원하는 속성들 각각을 압축하도록
    실행가능한, 비일시적 컴퓨터 판독가능 매체.
  30. 제 26 항에 있어서,
    상기 명령들은:
    상기 압축된 원하는 속성들과 상기 압축된 광고된 속성들을 비교하기 위한 기준을 특정하도록 실행가능한, 비일시적 컴퓨터 판독가능 매체.
KR1020167019341A 2013-12-18 2014-12-08 발견을 위한 해시 부분 매칭 KR101894165B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/133,412 US9826463B2 (en) 2013-12-18 2013-12-18 Hash partial matching for discovery
US14/133,412 2013-12-18
PCT/US2014/069048 WO2015094753A1 (en) 2013-12-18 2014-12-08 Hash partial matching for discovery

Publications (2)

Publication Number Publication Date
KR20160101084A true KR20160101084A (ko) 2016-08-24
KR101894165B1 KR101894165B1 (ko) 2018-08-31

Family

ID=52282892

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167019341A KR101894165B1 (ko) 2013-12-18 2014-12-08 발견을 위한 해시 부분 매칭

Country Status (7)

Country Link
US (1) US9826463B2 (ko)
EP (1) EP3084641B1 (ko)
JP (1) JP6549127B2 (ko)
KR (1) KR101894165B1 (ko)
CN (1) CN105981007B (ko)
BR (1) BR112016014001A2 (ko)
WO (1) WO2015094753A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11270309B1 (en) * 2015-12-29 2022-03-08 Wells Fargo Bank, N.A. Biometric token that functions as a universal identifier

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080085144A (ko) * 2005-12-20 2008-09-23 마이크로소프트 코포레이션 제1 장치의 부근에 있는 제2 장치에 의해 제공된 서비스를제1 장치에 의해 액세스하는 방법 및 컴퓨터 판독가능 매체

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6047283A (en) 1998-02-26 2000-04-04 Sap Aktiengesellschaft Fast string searching and indexing using a search tree having a plurality of linked nodes
JP2004343268A (ja) * 2003-05-14 2004-12-02 Nec Corp 近距離無線を用いた情報交換システム、携帯端末及びそれらに用いる情報交換方法
IL161874A (en) 2004-05-07 2012-09-24 Yves Villaret System and method for searching strings of records
US20090083537A1 (en) * 2005-08-10 2009-03-26 Riverbed Technology, Inc. Server configuration selection for ssl interception
US8478300B2 (en) * 2005-12-20 2013-07-02 Microsoft Corporation Proximity service discovery in wireless networks
US8559350B2 (en) * 2005-12-20 2013-10-15 Microsoft Corporation Mechanism to convey discovery information in a wireless network
US20130246378A1 (en) 2007-04-30 2013-09-19 Stephen Owen Hearnden Partial hash system, method, and computer program product
US8681691B2 (en) * 2007-07-25 2014-03-25 Microsoft Corporation Base station initiated proximity service discovery and connection establishment
CN101299857B (zh) * 2008-07-02 2012-09-05 北京搜狗科技发展有限公司 一种输出通讯信息的方法及装置
US8407245B2 (en) 2010-11-24 2013-03-26 Microsoft Corporation Efficient string pattern matching for large pattern sets
US8458796B2 (en) 2011-03-08 2013-06-04 Hewlett-Packard Development Company, L.P. Methods and systems for full pattern matching in hardware
US9729669B2 (en) * 2012-03-15 2017-08-08 Alcatel Lucent Method and system for fast and large-scale longest prefix matching
US20150063208A1 (en) * 2013-08-28 2015-03-05 Qualcomm Incorporated Systems and methods for service identification in neighborhood aware networks
US20160323248A1 (en) * 2013-12-31 2016-11-03 Interdigital Patent Holdings Inc. Methods, apparatus, systems and mechanisms for secure attribute based friend find and proximity discovery

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080085144A (ko) * 2005-12-20 2008-09-23 마이크로소프트 코포레이션 제1 장치의 부근에 있는 제2 장치에 의해 제공된 서비스를제1 장치에 의해 액세스하는 방법 및 컴퓨터 판독가능 매체

Also Published As

Publication number Publication date
JP6549127B2 (ja) 2019-07-24
CN105981007B (zh) 2020-01-07
BR112016014001A2 (pt) 2017-08-08
KR101894165B1 (ko) 2018-08-31
WO2015094753A1 (en) 2015-06-25
JP2017503411A (ja) 2017-01-26
EP3084641A1 (en) 2016-10-26
EP3084641B1 (en) 2020-04-29
CN105981007A (zh) 2016-09-28
US20150172999A1 (en) 2015-06-18
US9826463B2 (en) 2017-11-21

Similar Documents

Publication Publication Date Title
US9357017B2 (en) Method and apparatus for automatic service discovery and connectivity
KR101561728B1 (ko) 파일 전송을 통해 소셜 네트워크를 확립하기 위한 방법 및 장치
US20170099154A1 (en) Wireless communication device, program, and wireless communication system
US9619424B2 (en) Supporting unrecognized protocol in wireless docking
US20110149938A1 (en) Methods, apparatuses and computer program products for providing temporal information
KR102191986B1 (ko) 무선 환경에서 다수 개의 서비스 탐색을 제공하는 방법 및 시스템
JP6477133B2 (ja) 通信機器
US10165506B2 (en) Method for searching for network and terminal
US11321407B2 (en) Search method, and apparatus
KR101852067B1 (ko) 벤더-특정 도킹 관리 동작들
US9509806B2 (en) Techniques for supporting Wi-Gig bus extension and Wi-Gig display extension as peripheral function protocols in wireless docking
TWI565338B (zh) 整合動態公告及無線電分配驗證
KR101894165B1 (ko) 발견을 위한 해시 부분 매칭
WO2023221973A1 (zh) 小区注册方法及终端
US20150095980A1 (en) Controlling sharing of content between data processing devices
WO2022007927A1 (zh) 获取紧急服务的控制方法及装置、终端及可读存储介质
CN108255693A (zh) 呈现调试信息的方法和装置

Legal Events

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