KR101665415B1 - 서비스 정보 발견 방법 및 기기 - Google Patents

서비스 정보 발견 방법 및 기기 Download PDF

Info

Publication number
KR101665415B1
KR101665415B1 KR1020157001973A KR20157001973A KR101665415B1 KR 101665415 B1 KR101665415 B1 KR 101665415B1 KR 1020157001973 A KR1020157001973 A KR 1020157001973A KR 20157001973 A KR20157001973 A KR 20157001973A KR 101665415 B1 KR101665415 B1 KR 101665415B1
Authority
KR
South Korea
Prior art keywords
service
hash value
hash
information
peer end
Prior art date
Application number
KR1020157001973A
Other languages
English (en)
Other versions
KR20150023878A (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 KR20150023878A publication Critical patent/KR20150023878A/ko
Application granted granted Critical
Publication of KR101665415B1 publication Critical patent/KR101665415B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W48/00Access restriction; Network selection; Access point selection
    • H04W48/16Discovering, processing access restriction or access information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명의 실시예는 서비스 정보 발견 방법 및 기기를 제공한다. 상기 방법은, 제1 질의 요청 메시지를 전송하는 단계 - 상기 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 상기 제1 해시 값은 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 피어 단(peer end)에 의해 전송된 제1 질의 응답 메시지를 수신하는 단계 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -; 및 적어도 상기 제1 결과 통지 정보에 따라, 상기 피어 단에 상기 발견할 서비스가 존재하는지를 판정하는 단계를 포함한다. 본 발명의 기술적 방안을 사용함으로써, 서비스 발견 프로세스에서의 질의 요청 메시지 또는 서비스 정보 표시 메시지의 길이를 줄일 수 있고, 그러한 메시지에 의해 점유되는 채널 자원을 감소시킬 수 있어, 채널 자원의 이용률을 향상시킬 수 있다.

Description

서비스 정보 발견 방법 및 기기 {SERVICE INFORMATION DISCOVERY METHOD AND DEVICE}
본 발명은 통신 기술에 관한 것으로, 특히 서비스 정보 발견 방법 및 기기에 관한 것이다.
삭제
삭제
무선 충실도(Wireless Fidelity, 약칭하여 WiFi)는 빠른 배치(fast deployment), 사용 편의성, 높은 전송 속도 등의 장점으로 인해 다양한 산업 분야에 적용된다. WiFi 네트워크 구성은 다음과 같다: 액세스 포인트(Access Point, 약칭하여 AP)는 복수의 지국(Station, 약칭하여 STA)에 액세스 서비스를 제공하고, AP와 STA는 무선 신호를 사용하여 정보를 교환한다. 서비스는 AP 또는 STA에 의해 다른 STA에 제공되는 기능이나 정보를 가리킨다. 예를 들어, AP에 의해 제공될 수 있는 인터넷 프로토콜(Internet Protocol, 약칭하여 IP) 연결 접속 기능이 서비스이고; 다른 예를 들면, AP가 인쇄 기능을 제공하는 프린트를 나타내는 AP를 구비한 프린터의 경우, 인쇄 기능이 또한 서비스이다.
AP 또는 다른 STA에 의해 제공되는 서비스를 사용하기 전에, STA는 먼저 AP 또는 다른 STA를 발견해야 한다. AP 또는 다른 STA를 발견한 후, STA는 필요한 서비스가 존재하는지를 질의해야 한다. 예를 들어, 제1 STA가 IP 연결 서비스를 필요로 하는 경우, 제1 STA는 먼저 AP 또는 제2 STA가 IP 연결 서비스를 제공할 수 있는지를 질의할 해야 한다. 다른 예를 들면, 제1 STA가 자신과 동일한 게임이 설치된 다른 STA로 온라인 게임을 할 필요가 있는 경우, 제1 STA는 먼저 어느 STA가 동일한 게임을 설치하고 있는지를 발견해야 하고, 또한 어느 STA가 제1 STA가 필요로 하는 서비스를 가지는지를 알아야 한다.
종래기술에서, STA가 서비스를 발견할 때, 한 가지 방식은 능동적으로 발견해야 하는 서비스를 식별하는 데 사용되는 완전한 서비스 식별 정보를 포함하는 질의 요청 메시지를 전송하고, 피어 단(peer end)의 질의 응답 메시지로부터 그 피어 단이 STA가 필요로 하는 서비스를 가지는지를 알아내는 것이고; 다른 방식은 피어 단에 의해 브로드캐스트되는 서비스 정보를 청취하여, 피어 단에 의해 브로드캐스되는 서비스 정보 표시 메시지로부터, 그 피어 단이 STA가 필요로 하는 서비스를 가지는지를 알아내는 것이며, 피어 단에 의해 브로드캐스트되는 서비스 정보 지시 메시지는 피어 단이 제공할 수 있는 다양한 서비스의 완전한 서비스 식별 정보를 포함한다. WiFi의 실제 애플리케이션에서, STA가 일반적으로 자신이 필요로 하는 서비스를 이웃 기기가 가지는지를 계속하여 질의해야 하거나; STA 또는 AP가 이웃 기기에, STA 또는 AP가 제공할 수 있는 서비스를 계속하여 브로드캐스트하여, STA 또는 AP의 서비스에 관심이 있는 기기를 찾아내야 한다. 이상에서 알 수 있듯이, 대량의 질의 요청 메시지 또는 브로드캐스트 서비스 정보 지시 메시지가 WiFi 네트워크 존재하며; 완전한 서비스 식별 정보는 일반적으로 길기 때문에, 채널 자원의 이용률은 높지 않다.
본 발명의 실시예는 서비스를 발견하는 동안에 채널 자원의 이용률을 향상시키는 데 사용되는 서비스 정보 발견 방법 및 기기를 제공한다.
제1 측면에 따르면, 서비스 정보 발견 방법이 제공되며, 상기 서비스 정보 발견 방법은,
제1 질의 요청 메시지(query request message)를 전송하는 단계 - 상기 제1 질의 요청 메시지는 제1 해시 값(hash value)을 포함하고, 상기 제1 해시 값은 발견할 서비스(service to be discovered)의 서비스 식별 정보에 대해 제1 해시 연산(hash operation)을 수행하여 취득됨 -;
피어 단(peer end)에 의해 전송된 제1 질의 응답 메시지(query response message)를 수신하는 단계 -상기 제1 질의 응답 메시지는 제1 결과 통지 정보(result notification information)를 포함하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -; 및
적어도 상기 제1 결과 통지 정보에 따라, 상기 피어 단에 상기 발견할 서비스가 존재하는지를 판정하는 단계를 포함한다.
제1 측면에 따르면, 제1 특면의 제1 가능한 구현 방식에서, 상기 제1 결과 통지 정보는,
상기 피어 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재한다는 것을 나타내는 데 사용되는 존재 표시 정보(existence indication information)이고;
적어도 상기 제1 결과 통지 정보에 따라, 상기 피어 단에 상기 발견할 서비스가 존재하는지를 판정하는 단계는,
상기 존재 표시 정보에 따라 상기 피어 단에 제2 질의 요청 메시지를 전송하는 단계 - 상기 제2 질의 요청 메시지는 상기 발견할 서비스의 서비스 식별 정보를 포함함 -; 상기 피어 단에 의해 반환된 제2 질의 응답 메시지를 수신하는 단계 - 상기 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 상기 제2 결과 통지 정보는 상기 피어 단에 상기 발견할 서비스가 존재하는지를 식별하는 데 사용됨 -; 상기 제2 결과 통지 정보가 상기 피어 단에 상기 발견할 서비스가 존재한다는 것을 식별할 수 있게 해주면, 상기 피어 단에 상기 발견할 서비스가 존재하는 것으로 판정하는 단계를 포함하는, 서비스 정보 발견 방법.
제1 측면에 따르면, 제1 측면의 제2 가능한 구현 방식에서, 상기 제1 결과 통지 정보는 제2 해시 값을 포함하고, 상기 제2 해시 값은, 상기 피어 단에 의해, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득되고;
적어도 상기 제1 결과 통지 정보에 따라, 상기 피어 단에 상기 발견할 서비스가 존재하는지를 판정하는 단계는, 상기 발견할 서비스의 서비스 식별 정보에 대해 상기 제2 해시 연산을 수행하여, 상기 발견할 서비스에 대응하는 상기 제2 해시 값을 취득하는 단계; 및 상기 발견할 서비스에 대응하는 상기 제2 해시 값이 상기 제1 질의 응답 메시지에 존재하면, 상기 피어 단에 상기 발견할 서비스가 존재하는 것으로 판정하는 단계를 포함하는, 서비스 정보 발견 방법.
제1 측면의 제2 가능한 구현 방식에 따르면, 제1 측면의 제3 가능한 구현 방식에서, 상기 제2 해시 연산의 비트 길이가 상기 제1 해시 연산의 비트 길이보다 길다.
제1 측면에 따르면, 제1 측면의 제4 가능한 방식에서, 상기 제1 결과 통지 정보는 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보이고,
적어도 상기 제1 결과 통지 정보에 따라, 상기 피어 단에 상기 발견할 서비스가 존재하는지를 판정하는 단계는, 상기 발견할 서비스의 서비스 식별 정보가 상기 제1 질의 응답 메시지에 존재하면, 상기 피어 단에 상기 발견할 서비스가 존재하는 것으로 판정하는 단계를 포함한다.
제2 측면에 따르면, 서비스 정보 발견 방법이 제공되며, 상기 서비스 정보 방법은,
제1 질의 요청 메시지를 수신하는 단계 - 상기 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 상기 제1 해시 값은, 상기 제1 질의 요청 메시지를 전송하는 피어 단이 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
제1 질의 응답 메시지를 전송하는 단계 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하여, 상기 피어 단이 적어도 상기 제1 결과 통지 정보에 따라, 로컬 단(local end)에 상기 발견할 서비스가 존재하는지를 판정하도록 하고, 상기 제1 결과 통지 정보는 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -를 포함한다.
제2 측면에 따르면, 제2 측면의 제1 가능한 구현 방식에서, 상기 제1 질의 응답 메시지를 전송하는 단계는,
상기 제1 해시 값에 따라, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 판정하는 단계; 및
상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는 것으로 판정되면, 존재 표시 정보를 상기 제1 결과 통지 정보로서 상기 제1 질의 응답 메시지 내에 캡슐화하여, 상기 피어 단에 상기 제1 질의 응답 메시지를 전송하는 단계 - 상기 존재 표시 정보는, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -를 포함한다.
제2 측면의 제1 가능한 구현 방식에 따르면, 제2 측면의 제2 가능한 구현 방식에서, 상기 서비스 정보 발견 방법은, 상기 피어 단에 의해 상기 존재 표시 정보에 따라 전송된 제2 질의 요청 메시지를 수신하는 단계 - 상기 제2 질의 요청 메시지는 상기 발견할 서비스의 서비스 식별 정보를 포함함 -; 및 상기 피어 단에 제2 서비스 질의 응답 메시지를 전송하는 단계 - 상기 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하여, 상기 피어 단이 상기 제2 결과 통지 정보에 따라, 상기 로컬 단에 상기 발견할 서비스가 존재하는지를 판정하도록 하고, 상기 제2 결과 통지 정보는 상기 로컬 단에 상기 발견할 서비스가 존재하는지를 식별하는 데 사용됨 -를 더 포함한다.
제2 측면에 따르면, 제2 측면의 제3 가능한 구현 방식에서, 상기 제1 질의 응답 메시지를 전송하는 단계는, 상기 제1 해시 값에 따라, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 판정하는 단계; 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는 것으로 판정되면, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스에 대응하는 제2 해시 값을 취득하는 단계 - 상기 제2 해시 값은, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득됨 -; 및 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스에 대응하는 상기 제2 해시 값을 제1 결과 통지 정보로서 상기 제1 질의 응답 메시지 내에 캡슐화하고, 상기 피어 단에 상기 제1 질의 응답 메시지를 전송하는 단계를 포함한다.
제2 측면의 제3 가능한 구현 방식에 따르면, 제2 측면의 제4 가능한 구현 방식에서, 상기 제2 해시 연산의 비트 길이는 상기 제1 해시 연산의 비트 길이보다 길다.
제2 측면에 따르면, 제2 측면의 제5 가능한 구현 방식에서, 상기 제1 질의 응답 메시지를 전송하는 단계는, 상기 제1 해시 값에 따라, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 판정하는 단계; 및 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는 것으로 판정되면, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보를, 상기 제1 결과 통지 정보로서 상기 제1 질의 응답 메시지 내에 캡슐화하고, 상기 피어 단에 상기 제1 질의 응답 메시지를 전송하는 단계를 포함한다.
제3 측면에 따르면, 서비스 정보를 발견하는 방법이 제공되며, 상기 방법은,
서비스 정보 표시 메시지를 수신하는 단계 - 상기 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하고, 상기 해시 값 표시 정보는 상기 서비스 정보 표시 메시지를 전송하는 피어 단에 존재하는 서비스의 서비스 식별 정보에 따라 취득된 해시 값을 식별하는 데 사용됨 -; 및
적어도 상기 해시 값 표시 정보에 따라, 상기 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 단계를 포함한다.
제3 측면에 따르면, 제3 측면의 제1 가능한 구현 방식에서, 상기 서비스 정보 표시 메시지가 상기 해시 값 표시 정보를 포함하는 방식은, 상기 서비스 정보 표시 메시지는 비트 테이블 및 비트 테이블 길이를 포함하고, 상기 비트 테이블에서, 상기 피어 단에 존재하는 서비스의 서비스 식별 정보에 따라 취득된 해시 값에 대응하는 위치는 1로 설정되고, 상기 비트 테이블 길이는 상기 피어 단에 존재하는 서비스의 수량에 따라 판정된다.
제3 측면 또는 제3 측면의 제1 가능한 구현 방식에 따르면, 제3 측면의 제2 가능한 구현 방식에서, 상기 해시 값 표시 정보에 따라, 상기 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 단계는, 상기 로컬 단이 발견해야 하는 서비스에 대응하는 제1 해시 값을 취득하는 단계 - 상기 제1 해시 값은, 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 상기 제1 해시 연산을 수행하여 취득됨 -; 및 적어도 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는지에 따라, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 단계를 포함한다.
제3 측면의 제2 가능한 구현 방식에 따르면, 제3 측면의 제3 가능한 구현 방식에서, 적어도 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는지에 따라, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 단계는, 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하면, 상기 피어 단에 제1 질의 요청 메시지를 전송하는 단계 - 상기 제1 질의 요청 메시지는 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함함 -; 상기 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하는 단계 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용됨 -; 및 상기 제1 결과 통지 정보가 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재한다는 것을 식별할 수 있게 해주면, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하는 단계를 포함한다.
제3 측면의 제2 가능한 구현 방식에 따르면, 제3 측면의 제4 가능한 구현 방식에서, 적어도 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는지에 따라, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 단계는, 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하면, 상기 피어 단에 제2 질의 요청 메시지를 전송하는 단계 - 상기 제2 질의 요청 메시지는 상기 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값 및 상기 제1 해시 값을 포함하고, 상기 로컬 단이 발견해야 하는 서비스에 대응하는 상기 제2 해시 값은, 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득됨 -; 상기 피어 단에 의해 전송된 제2 질의 응답 메시지를 수신하는 단계 - 상기 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 상기 제2 결과 통지 정보는, 상기 피어 단의 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스 중에, 상기 제2 해시 연산을 수행하여 취득된 해시 값이 상기 로컬 단이 발견해야 하는 서비스에 대응하는 상기 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용됨 -; 및 상기 제2 결과 통지 정보가, 상기 피어 단의 상기 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 상기 제2 해시 연산을 수행하여 취득된 해시 값이 상기 로컬 단이 발견해야 하는 서비스에 대응하는 상기 제2 해시 값과 동일한 서비스가 존재한다는 것을 식별할 수 있게 해주면, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하는 단계를 포함한다.
제4 측면에 따르면, 서비스 정보 발견 방법이 제공되며, 상기 서비스 정보 발견 방법은,
로컬 단에 존재하는 서비스에 대응하는 해시 값을 취득하는 단계 - 상기 해시 값은 상기 로컬 단에 존재하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
서비스 정보 표시 메시지를 브로드캐스트하는 단계 - 상기 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하여, 상기 서비스 정보 표시 메시지를 수신하는 피어 단이 적어도 상기 해시 값 표시 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 하고, 상기 해시 값 표시 정보는 상기 로컬 단에 존재하는 서비스에 대응하는 해시 값을 식별하는 데 사용됨 -를 포함한다.
제4 측면에 따르면, 제4 측면의 제1 가능한 구현 방식에서, 상기 서비스 정보 표시 메시지를 브로드캐스트하는 단계는, 상기 로컬 단에 존재하는 서비스의 수량에 따라 비트 테이블 길이를 판정하는 단계; 및 상기 서비스 정보 표시 메시지 내에 비트 테이블 및 상기 비트 테이블 길이를 캡슐화하고, 상기 로컬 단에 존재하는 서비스에 대응하는 해시 값에 대응하는 위치를 1로 설정한 다음, 상기 서비스 정보 표시 메시지를 브로드캐스트하는 단계를 포함한다.
제4 측면 또는 제4 측면의 제1 가능한 구현 방식에 따르면, 제4 측면의 제2 가능한 구현 방식에서, 상기 서비스 정보 표시 메시지를 브로캐스트하는 단계 후에, 상기 방법은, 상기 피어 단에 의해 전송된 제1 질의 요청 메시지를 수신하는 단계 - 상기 제1 질의 요청 메시지는 상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함함-; 및 상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 따라 상기 피어 단에 제1 질의 응답 메시지를 전송하는 단계 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용되어, 상기 피어 단이 적어도 상기 제1 결과 통지 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 함 -를 더 포함한다.
제4 측면 또는 제4 측면의 제1 가능한 구현 방식에 따르면, 제4 측면의 제3 가능한 구현 방식에서, 상기 서비스 정보 표시 메시지를 브로드캐스트하는 단계 후에, 상기 방법은, 상기 피어 단에 의해 전송된 제2 질의 요청 메시지를 수신하는 단계 - 상기 제2 질의 요청 메시지는, 상기 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값, 및 상기 피어 단이 발견해야 하는 서비스에 대응하는 제2 해시 값을 포함하고, 상기 피어 단이 발견해야 하는 서비스에 대응하는 상기 제1 해시 값 및 상기 제2 해시 값은 상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 상기 제1 해시 연산 및 제2 해시 연산을 각각 수행하여 취득됨 -; 및
상기 제1 해시 값 및 제2 해시 값에 따라 상기 피어 단에 제2 질의 응답 메시지를 전송하는 단계 - 상기 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 상기 제2 결과 통지 정보는, 상기 로컬 단의 상기 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 상기 제2 해시 연산을 수행하여 취득된 해시 값이 상기 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용되어, 상기 피어 단이, 상기 제2 결과 통지 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 함 -를 더 포함한다.
제5 측면에 따르면, 서비스 정보 발견 장치가 제공되며, 상기 서비스 정보 발견 장치는,
제1 질의 요청 메시지를 전송하도록 구성된 전송 유닛 - 상기 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 상기 제1 해시 값은 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -;
피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 구성된 수신 유닛 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -; 및
적어도 상기 제1 결과 통지 정보에 따라, 상기 피어 단에 상기 발견할 서비스가 존재하는지를 판정하도록 구성된 발견 처리 유닛을 포함한다.
제5 측면에 따르면, 제5 측면의 제1 가능한 구현 방식에서, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재한다는 것을 나타내는 데 사용되는 존재 표시 정보이고;
상기 발견 처리 유닛은,
상기 존재 표시 정보에 따라 상기 피어 단에 제2 질의 요청 메시지를 전송하도록 구성된 전송 모듈 - 상기 제2 질의 요청 메시지는 상기 발견할 서비스의 서비스 식별 정보를 포함함 -;
상기 피어 단에 의해 반환된 제2 질의 응답 메시지를 수신하도록 구성된 수신 모듈 - 상기 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 상기 제2 결과 통지 정보는 상기 피어 단에 상기 발견할 서비스가 존재하는지를 식별하는 데 사용됨 -;
상기 제2 결과 통지 정보가 상기 피어 단에 상기 발견할 서비스가 존재한다는 것을 식별할 수 있게 해주는 경우, 상기 발견할 서비스가 상기 피어 단에 존재하는 것으로 판정하도록 구성된 제1 판정 모듈을 포함한다.
제5 측면에 따르면, 제5 측면의 제2 가능한 구현 방식에서, 상기 제1 결과 통지 정보는 제2 해시 값을 포함하고, 상기 제2 해시 값은, 상기 피어 단에 의해, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득되고;
상기 발견 처리 유닛은,
상기 발견할 서비스의 서비스 식별 정보에 대해 상기 제2 해시 연산을 수행하여, 상기 발견할 서비스에 대응하는 상기 제2 해시 값을 취득하도록 구성된 취득 모듈; 및
상기 발견할 서비스에 대응하는 상기 제2 해시 값이 상기 제1 질의 응답 메시지에 존재하는 경우, 상기 피어 단에 상기 발견할 서비스가 존재하는 것으로 판정하도록 구성된 제3 판정 모듈을 포함한다.
제5 측면의 제2 가능한 구현 방식에 따르면, 제5 측면의 제3 가능한 구현 방식에서, 상기 제2 해시 연산의 비트 길이가 상기 제1 해시 연산의 비트 길이보다 길다.
제5 측면에 따르면, 제5 측면의 제4 가능한 구현 방식에서, 상기 제1 결과 통지 정보는 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보이고,
상기 발견 처리 유닛은,
상기 발견할 서비스의 서비스 식별 정보가 상기 제1 결과 통지 정보에 존재하는 경우, 상기 피어 단에 상기 발견할 서비스가 존재하는 것으로 판정하도록 구성된 제4 판정 모듈을 포함한다.
제6 측면에 따르면, 서비스 정보 제공 기기가 제공되며, 상기 서비스 정보 제공 기기는,
제1 질의 요청 메시지를 수신하도록 구성된 제1 수신 유닛 - 상기 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 상기 제1 해시 값은, 상기 제1 질의 요청 메시지를 전송하는 피어 단이 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
제1 질의 응답 메시지를 전송하도록 구성된 제1 전송 유닛 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하여, 상기 피어 단이 적어도 상기 제1 결과 통지 정보에 따라, 로컬 단에 상기 발견할 서비스가 존재하는지를 판정하도록 하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -를 포함한다.
제6 측면에 따르면, 제6 측면의 제1 가능한 구현 방식에서, 상기 제1 전송 유닛은,
상기 제1 해시 값에 따라, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 판정하도록 구성된 제1 판정 모듈; 및
상기 제1 판정 모듈이 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는 것으로 판정하는 경우, 존재 표시 정보를 상기 제1 결과 통지 정보로서 상기 제1 질의 응답 메시지 내에 캡슐화하고, 상기 피어 단에 상기 제1 질의 응답 메시지를 전송하도록 구성된 제1 전송 모듈 - 상기 존재 표시 정보는, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -을 포함한다.
제6 측면의 제1 가능한 구현 방식에 따르면, 제6 측면의 제2 가능한 구현 방식에서, 상기 서비스 정보 제공 기기는,
상기 피어 단에 의해 상기 존재 표시 정보에 따라 전송된 제2 질의 요청 메시지를 수신하도록 구성된 제2 수신 유닛 - 상기 제2 질의 요청 메시지는 상기 발견할 서비스의 서비스 식별 정보를 포함함 -; 및
상기 피어 단에 제2 서비스 질의 응답 메시지를 전송하도록 구성된 제2 전송 유닛 - 상기 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하여, 상기 피어 단이 상기 제2 결과 통지 정보에 따라, 상기 로컬 단에 상기 발견할 서비스가 존재하는지를 판정하도록 하고, 상기 제2 결과 통지 정보는 상기 로컬 단에 상기 발견할 서비스가 존재하는지를 식별하는 데 사용됨 -을 더 포함한다.
제6 측면에 따르면, 제6 측면의 제3 가능한 구현 방식에서, 상기 제1 전송 유닛은,
상기 제1 해시 값에 따라, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 판정하도록 구성된 제2 판정 모듈; 및
상기 제2 판정 모듈이 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는 것으로 판정하는 경우, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스에 대응하는 제2 해시 값을 취득하도록 구성된 취득 모듈 - 상기 제2 해시 값은, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득됨 -; 및
상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스에 대응하는 상기 제2 해시 값을, 상기 제1 결과 통지 정보로서 상기 제1 질의 응답 메시지 내에 캡슐화하고, 상기 피어 단에 상기 제1 질의 응답 메시지를 전송하도록 구성된 제2 전송 모듈을 포함한다.
제6 측면의 제3 가능한 구현 방식에 따르면, 제6 측면의 제4 가능한 구현 방식에서, 상기 제2 해시 연산의 비트 길이는 상기 제1 해시 연산의 비트 길이보다 길다.
제6 측면에 따르면, 제6 측면의 제5 가능한 구현 방식에서, 상기 제1 전송 유닛은,
상기 제1 해시 값에 따라, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 판정하도록 구성된 제3 판정 모듈; 및
상기 제3 판정 모듈이 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는 것으로 판정하는 경우, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보를, 상기 제1 결과 통지 정보로서 상기 제1 질의 응답 메시지 내에 캡슐화하고, 상기 피어 단에 상기 제1 질의 응답 메시지를 전송하도록 구성된 제3 전송 모듈을 포함한다.
제7 측면에 따르면, 서비스 정보 발견 기기가 제공되며, 상기 서비스 정보 발견 기기는,
서비스 정보 표시 메시지를 수신하도록 구성된 수신 유닛 - 상기 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하고, 상기 해시 값 표시 정보는, 상기 서비스 정보 표시 메시지를 전송하는 피어 단에 존재하는 서비스의 서비스 식별 정보에 따라 취득된 해시 값을 식별하는 데 사용됨 -; 및
적어도 상기 해시 값 표시 정보에 따라, 상기 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 구성된 발견 처리 유닛을 포함한다.
제7 측면에 따르면, 제7 측면의 제1 가능한 구현 방식에서, 상기 발견 처리 유닛은,
상기 로컬 단이 발견해야 하는 서비스에 대응하는 제1 해시 값을 취득하도록 구성된 취득 모듈 - 상기 제1 해시 값은, 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
적어도 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는지에 따라, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 구성된 판정 모듈을 포함한다.
제7 측면의 제1 가능한 구현 방식에 따르면, 제7 측면의 제2 가능한 구현 방식에서, 상기 판정 모듈은,
상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는 경우, 상기 피어 단에 제1 질의 요청 메시지를 전송하도록 구성된 제1 전송 서브모듈 - 상기 제1 질의 요청 메시지는 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함함 -;
상기 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 구성된 제1 수신 서브모듈 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용됨 -; 및
상기 제1 결과 통지 정보가 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재한다는 것을 식별할 수 있게 해주는 경우, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하도록 구성된 제1 판정 서브모듈을 포함한다.
제7 측면의 제1 가능한 구현 방식에 따르면, 제7 측면의 제3 가능한 구현 방식에서, 상기 판정 모듈은,
상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는 경우, 상기 피어 단에 제2 질의 요청 메시지를 전송하도록 구성된 제2 전송 서브모듈 - 상기 제2 질의 요청 메시지는 상기 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값 및 상기 제1 해시 값을 포함하고, 상기 로컬 단이 발견해야 하는 서비스에 대응하는 상기 제2 해시 값은, 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득됨 -; 및
상기 피어 단에 의해 전송된 제2 질의 응답 메시지를 수신하도록 구성된 제2 수신 서브모듈 - 상기 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 상기 제2 결과 통지 정보는, 상기 피어 단의 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스 중에, 상기 제2 해시 연산을 수행하여 취득된 해시 값이 상기 로컬 단이 발견해야 하는 서비스에 대응하는 상기 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용됨 -;
상기 제2 결과 통지 정보가, 상기 피어 단의 상기 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 상기 제2 해시 연산을 수행하여 취득된 해시 값이 상기 로컬 단이 발견해야 하는 서비스에 대응하는 상기 제2 해시 값과 동일한 서비스가 존재한다는 것을 식별할 수 있게 해주는 경우, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하도록 구성된 제2 판정 서브모듈을 포함한다.
제8 측면에 따르면, 서비스 정보 제공 기기가 제공되며, 상기 서비스 정보 제공 기기는,
로컬 단에 존재하는 서비스에 대응하는 해시 값을 취득하도록 구성된 취득 유닛 - 상기 해시 값은 상기 로컬 단에 존재하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
서비스 정보 표시 메시지를 브로드캐스트하도록 구성된 브로드캐스팅 유닛 - 상기 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하여, 상기 서비스 정보 표시 메시지를 수신하는 피어 단이 적어도 상기 해시 값 표시 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 하고, 상기 해시 값 표시 정보는 상기 로컬 단에 존재하는 서비스에 대응하는 해시 값을 식별하는 데 사용됨 -을 포함한다.
제8 측면에 따르면, 제8 측면의 제1 가능한 구현 방식에서, 상기 브로드캐스팅 유닛은,
상기 로컬 단에 존재하는 서비스의 수량에 따라 비트 테이블 길이를 판정하는 판정 모듈; 및
상기 서비스 정보 표시 메시지에 비트 테이블 및 상기 비트 테이블 길이를 캡슐화하고, 상기 로컬 단에 존재하는 서비스에 대응하는 해시 값에 대응하는 위치를 1로 설정한 다음, 상기 서비스 정보 표시 메시지를 브로드캐스트하도록 구성된 설정 및 브로드캐스팅 모듈을 포함한다.
제8 측면 또는 제8 측면의 제1 가능한 구현 방식에 따르면, 제8 측면의 제2 가능한 구현 방식에서, 상기 서비스 정보 제공 기기는,
상기 피어 단에 의해 전송된 제1 질의 요청 메시지를 수신하도록 구성된 제1 수신 유닛 - 상기 제1 질의 요청 메시지는 상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함함 -; 및
상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 따라 상기 피어 단에 제1 질의 응답 메시지를 전송하도록 구성된 제1 전송 유닛 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용되어, 상기 피어 단이 적어도 상기 제1 결과 통지 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 함 -을 더 포함한다.
제8 측면 또는 제8 측면의 제1 가능한 구현 방식에 따르면, 제8 측면의 제3 가능한 구현 방식에서, 상기 서비스 정보 제공 기기는,
상기 피어 단에 의해 전송된 제2 질의 요청 메시지를 수신하도록 구성된 제2 수신 유닛 - 상기 제2 질의 요청 메시지는, 상기 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값, 및 상기 피어 단이 발견해야 하는 서비스에 대응하는 제2 해시 값을 포함하고, 상기 피어 단이 발견해야 하는 서비스에 대응하는 상기 제1 해시 값 및 상기 제2 해시 값은 상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 상기 제1 해시 연산 및 제2 해시 연산을 각각 수행하여 취득됨 -; 및
상기 제1 해시 값 및 제2 해시 값에 따라 상기 피어 단에 제2 질의 응답 메시지를 전송하도록 구성된 제2 전송 유닛 - 상기 제2 질의 응답 메시지는 제2 결과 통지 메시지를 포함하고, 상기 제2 결과 통지 메시지는, 상기 로컬 단의 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스 중에, 상기 제2 해시 연산을 수행하여 취득된 해시 값이 상기 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용되어, 상기 피어 단이, 상기 제2 결과 통지 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 함 -을 더 포함한다.
전술한 기술적 방안에서, 서비스 발견 프로세스에서 서비스의 완전한 서비스 식별 정보가 사용되지 않고, 서비스의 서비스 식별 정보에 따라 취득된 해시 값이 발견해야 하는 서비스 또는 제공될 수 있는 서비스를 식별하는 데 사용된다. 해시 값의 길이는 서비스의 완전한 서비스 식별 정보의 길이보다 훨씬 짧기 때문에, 서비스 발견 프로세스에서의 질의 요청 메시지 또는 서비스 정보 표시 메시지의 길이를 감소시키고, 그러한 메시지에 의해 점유되는 채널 자원도 감소시켜, 채널 자원의 이용률을 향상시킬 수 있다.
본 발명의 실시예에서의 기술적 방안을 더욱 명확하게 설명하기 위해, 이하에 본 발명의 실시예의 설명에 필요한 첨부도면을 간단하게 소개한다. 명백히, 이하의 설명에서의 첨부도면은 단지 본 발명의 일부 실시예를 보여줄 뿐이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진자(이하, 당업자라고 함)라면 여전히 창의적인 노력 없이 이들 첨부도면에 따라 다른 도면을 도출할 수 있을 것이다.
도 1은 본 발명의 실시예에 따른 서비스 정보 발견 방법의 흐름도이다.
도 2는 본 발명의 다른 실시예에 따른 서비스 정보 발견 방법의 흐름도이다.
도 3은 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 방법의 흐름도이다.
도 4는 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 방법의 흐름도이다.
도 5는 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 방법의 흐름도이다.
도 6은 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 방법의 흐름도이다.
도 7은 본 발명의 실시예에 따른 서비스 정보 발견 기기의 개략 구성도이다.
도 8은 본 발명의 다른 실시예에 따른 서서비스 정보 발견 기기의 개략 구성도이다.
도 9는 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 기기의 개략 구성도이다.
도 10은 본 발명의 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다.
도 11은 본 발명의 다른 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다.
도 12는 본 발명의 또 다른 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다.
도 13은 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 기기의 개략 구성도이다.
도 14는 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 기기의 개략 구성도이다.
도 15는 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 기기의 개략 구성도이다.
도 16은 본 발명의 또 다른 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다.
도 17은 본 발명의 또 다른 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다.
도 18은 본 발명의 또 다른 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다.
본 발명의 실시예의 목적, 기술적 방안, 및 이점이 더욱 분명하게 하기 위해, 이하에 본 발명의 실시예에서의 첨부도면을 참조하여 본 발명의 실시예에서의 기술적 방안을 명확하게 설명한다. 명백히, 설명된 실시예는 본 발명의 모든 실시예가 아니라 단지 일부 실시예일 뿐이다. 당업자가 본 발명의 실시예에 기초하여 창의적인 노력 없이 얻은 모든 다른 실시예는 본 발명의 보호 범위에 속한다.
기존의 WiFi 네트워크에서는, 이웃 기기(neighboring device)가 반드시 필요한 서비스를 구비하고 있는 것은 아니기 때문에, 많은 경우에, 질의 요청 메시지는 낭비되며; 또한 질의 요청 메시지는 완전한 서비스 식별 정보를 포함하고 서비스 식별 정보는 일반적으로 길기 때문에, 소중한 채널 자원을 헛되이 점유하여, 채널 자원의 낭비와 채널 자원 이용률의 저하를 초래하였다. 이와는 달리, 기기에 의해 제공되는 서비스가 이웃 기기가 반드시 필요로 하는 것은 아니기 때문에, 많은 경우에, 브로드캐스트 서비스 정보 표시 메시지가 낭비되고, 서비스 정보 표시 메시지는 완전한 서비스 식별 정보를 포함하고 서비스 식별 정보는 일반적으로 길기 때문에, 소중한 채널 자원을 헛되어 점유하여, 채널 자원의 낭비 및 채널 자원 이용률의 저하를 초래하였다. 종래기술에서의 채널 자원의 낭비 및 낮은 이용률의 문제에 대해, 이하의 본 발명의 실시예는 다른 해결방안을 제공한다.
도 1은 본 발명의 실시예에 따른 서비스 정보 발견 방법의 흐름도이다. 도 1에 도시된 바와 같이, 본 실시예에서의 방법은 이하의 단계를 포함한다:
단계 101: 제1 질의 요청 메시지를 전송하며, 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 제1 해시 값은 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행함으로써 취득된다.
단계 102: 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하며, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 제1 결과 통지 정보는 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용된다.
단계 103: 적어도 제1 결과 통지 정보에 따라, 피어 단에 발견할 서비스가 존재하는지를 판정한다.
본 실시예에서, 로컬 단이 능동적으로 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된 제1 해시 값을 포함하는 질의 요청 메시지를 전송하여, 능동적으로 필요한 서비스를 발견한다. 여기서, 로컬 단이 발견해야 하는 서비스를 발견할 서비스라고 한다. 로컬 단은 STA일 수 있다. 피어 단은 AP 또는 다른 STA일 수 있다. 후속하여 다시 전송된 질의 요청 메시지와 구별하기 위해, 여기서 질의 요청 메시지를 제1 질의 요청 메시지라고 한다.
본 실시예에서, 서비스는 AP 또는 STA에 의해 다른 STA에 제공되는 기능 또는 정보를 가리킨다. 각 서비스는 그 자신의 유일한 신원(unique identity)을 가지는데, 이를 서비스 식별 정보라고 하며, 서비스 식별 정보는 하나의 서비스를 유일하게 식별할 수 있게 해준다. 서비스의 서비스 식별 정보는 주로 서비스의 명칭을 포함하고, 또 프로토콜 명칭 또는 버전 번호를 더 포함할 수 있거나, 또는 특정 정보, 예를 들어 2인용 게임 또는 다인용 게임을 나타내는 정보, 또는 신원(Identity, 약칭하여 ID)를 더 포함할 수 있다. 예를 들어, AP는 IP 연결 서비스를 제공할 수 있고, 그 서비스는 범용 플그앤플레이(Universal Plug and Play, 약칭하여 UPnP) 프로토콜에 의해 WANIPConnection으로 명명되어 있다. 다른 예를 들면, AP를 구비한 프린터의 경우, AP는 프린터가 인쇄 서비스를 제공한다는 것을 나타내고, 그 서비스는 UPnP 프로토콜에 의해 PrintBasic으로 명명되어 있다. UPnP 프로토콜 외에, 관련된 서비스의 명칭을 정의하는 데 사용되는 무설정 네트워킹(zero-configuration networking)(Bonjour)와 같은 다른 프로토콜이 있을 수 있다. Bonjour는 IP 네트워크상의 컴퓨터, 기기, 및 서비스를 자동으로 발견할 수 있다. 다른 예를 들면, 서비스는 게임을 제공한 연결이고, 서비스의 명칭은 게임의 명칭을 채용할 수 있다, 예를 들어 게임 Game1의 연결 기능을 제공하는 서비스의 명칭은 Game1로 부를 수 있다.
일반적으로, 서비스의 서비스 식별 정보는 길다. 제1 질의 요청 메시지가 직접 발견할 서비스의 서비스 식별 정보를 포함하면, 제1 질의 요청 메시지는 크고, 결과적으로 제1 질의 요청 메시지는 많은 채널 자원을 점유하여, 채널 자원의 낭비를 초래한다. 본 실시예에서, 로컬 단은 발견할 서비스의 서비스 식별 정보에 대해 제1 해시(hash) 연산을 수행하여 제1 해시 값을 취득한다. 해시는 해시 알고리즘을 사용하여 임의의 길이의 입력을 고정된 길이의 출력으로 변환하는 것이고, 그 출력이 해시 값이며; 변환은 일종의 압축 매핑(compressed mapping), 즉 해시 값의 길이는 일반적으로 입력의 길이보다 훨씬 짧다. 간단히 말하면, 해시 연산은 임의 길이의 입력을 고정된 길이의 출력으로 압축하는 함수이다. 이상에서 알 수 있듯이, 로컬 단은 발견할 서비스의 서비스 식별 정보를 입력으로 사용하고, 해시 알고리즘을 사용하여 그 입력을 고정된 길이의 출력, 즉 제1 해시 값으로 변환하며, 제1 해시 값의 길이는 발견할 서비스의 서비스 식별 정보보다 짧다. 알 수 있듯이, 제1 질의 요청 메시지에 완전한 서비스 식별 정보를 포함하는 것에 비해, 제1 해시 값을 포함하는 것이 채널 자원을 절약하고 채널 자원의 이용률을 향상시킬 수 있다.
여기서 유의해야 할 것은, 해시 연산 결과의 비트(즉, 길이)를 미리 설정할 수 있다는 것이다. 상이한 해시 연산 결과 길이에 따라, 해시 연산은 예를 들어, 16비트 해시 연산, 32비트 해시 연산, 및 128비트 해시 연산 등의 여러 유형으로 분류될 수 있다. 본 실시예에서는, 로컬 단과 피어 단이 동일한 비트의 해시 연산을 사용하는 것으로 결정하는 한, 해시 연산의 구체적인 비트는 한정되지 않는다.
선택적으로, 로컬 단에 의해 전송된 제1 질의 요청 메시지는 유니캐스트 방식(unicast mode)으로도 전송될 수 있다. 예를 들어, 로컬 단은 포괄 광고 서비스(Generic Advertisement Service, 약칭하여 GAS) 초기 요청(GAS initial request) 메시지를 전송할 수 있고, 피어 단은 유니캐스트 또는 브로캐스트 응답 메시지, 예를 들어 GAS 초기 응답(GAS initial response) 메시지를 반환할 수 있다.
제1 질의 요청 메시지는 GAS initial request 메시지 또는 probe request(탐측 요청) 메시지로 한정되지 않는다. 이에 대응하여, 제1 질의 응답 메시지도 GAS initial response 메시지 또는 probe response 메시지로 한정되지 않는다.
로컬 단이 제1 질의 요청 메시지를 전송한 후, 피어 단은 제1 질의 요청 메시지를 수신한다. 피어 단에 의해 반환된 내용은 상이한 구체적인 상황에 따라 달라진다. 피어 단에, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하면, 피어 단은, 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재한다는 것을 나타내는 응답 메시지를 반환할 수 있다. 피어 단에, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않으면, 피어 단은, 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는다는 것을 나타내는 응답 메시지를 반환할 수 있으며, 이 경우에, 그 피어 단에 로컬 단이 발견할 서비스가 존재하지 않는다는 것을 의미한다. 이에 기초하여, 피어 단은, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정한 후, 피어 단은 제1 결과 통지 정보를 포함하는 제1 질의 응답 메시지를 반환하며, 제1 결과 통지 정보는 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용된다.
로컬 단은 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하고, 제1 질의 응답 메시지로부터 제1 결과 통지 정보를 취득하며; 그 후, 적어도 제1 결과 통지 정보에 따라, 로컬 단이 발견할 서비스가 피어 단에 존재하는지를 판정한다.
실제 애플리케이션에서, 많은 STA가 지속적으로 이웃 기기에 질의 요청 메시지를 전송하여, STA가 발견해야 하는 서비스를 이웃 기기가 갖고 있는지를 알아내려고 시도를 한다. 그러나, 많은 경우에, STA가 발견해야 하는 서비스를 이웃 기기가 갖고 있지 않을 수 있고 질의 요청 메시지는 낭비되지만, 본 실시예에서의 질의 요청 메시지는 짧은 해시 값을 포함함으로써 단축되어, 많은 경우에 낭비에 되는 질의 요청 메시지가 단축된다. 그 결과, 채널 자원의 낭비를 감소시킬 수 있고 또한 무선 자원의 이용률을 향상시킬 수 있다.
결론적으로, 본 실시예에서, 로컬 단이 능동적으로 질의 요청 메시지를 전송하여, 이웃 기기에 로컬 단이 발견해야 하는 서비스가 존재하는지를 알아낸다. 이 프로세스에서, 질의 요청 메시지에 발견할 서비스의 서비스 식별 정보를 직접 포함하는 대신에 서비스 식별 정보의 짧은 해시 값을 포함함으로써, 질의 요청 메시지의 길이가 줄어들어, 질의 요청 메시지가 점유하는 채널 자원을 감소시킬 수 있고, 채널 자원을 절약할 수 있으며; 다른 한편으로, 질의 요청 메시지가 낭비되는 경우에, 질의 요청 메시지의 길이가 줄어들어, 낭비된 질의 요청 메시지를 감소시키는 것에 상당하므로, 또한 채널 자원의 낭비를 감소시킬 수 있고, 무선 자원의 이용률을 향상시킬 수 있다.
이하의 구현 방식에서, 로컬 단이 서비스를 필요로 하고, 그 서비스의 서비스 식별 정보가 "bonjour: printer._ipp._tcp.local"라고 가정한다. 서비스의 서비스 식별 정보는 단지 예일 뿐이며, bonjour는 가장 뒤의 서비스 명칭 printer._ipp._tcp.local에 대응하는 프로토콜 필드이다. 서비스 식별 정보 내의 "bonjour"는 명명의 구별에 사용되는 프로토콜일 뿐이고, 실제 애플리케이션에서, 이 핵심어(keyword)는 포함되지 않을 수도 있다.
로컬 단은 스스로 먼저 서비스의 서비스 식별 정보에 대응하는 해시 값을 계산한다. 계산 방법은 서비스의 서비스 식별 정보를 입력으로 사용하고, 미리 정해진 제1 해시 함수를 사용하여 계산을 수행하는 것일 수 있다. 해시 결과의 비트는 미리 설정된 비트, 예를 들어, 16비트, 32비트, 및 128 비트일 수 있다. 우리는 16비트 해시 함수를 나타내기 위해 H16() 를, 그리고 32비트 해시 함수를 나타내기 위해 H32() 를 사용할 수 있다. 본 구현 방식에서, 16비트 해시 연산이 사용되는 것으로 가정하며, 16비트가 표현할 수 있는 최대 값은 216-1=65535이다, 즉, 0∼65535, 즉 총 65536개의 값을 표현할 수 있다. 여기서, 로컬 단은 먼저 16비트 해시 값을 계산한다. H16("bonjour: printer._ipp._tcp.local")=25568로 가정하면, 25568이 제1 해시 값이고, 로컬 단은 피어 단에 전송할 제1 질의 요청 메시지에 해시 결과 25568을 추가한다. 선택적으로, 로컬 단은 또한, 제1 질의 요청 메시지에 로컬 단이 계산하는 해시 값의 비트 수, 예를 들어 여기서는 16비트 해시 연산을 나타내는 16을 포함할 수 있다. 선택적으로, 로컬 단은 제1 질의 요청 메시지에, 로컬 단이 발견해야 하는 서비스의 수량을 더 포함시킬 수 있다, 예를 들어, 로컬 단이 1개의 서비스를 발견해야 하면, 발견할 1 개의 서비스에 대한 정보가 포함될 수 있다. 예를 들어, 제1 질의 요청 메시지에 포함된 정보는 다음을 포함할 수 있다: 서비스:16, 1, 25568, 이는 발견할 서비스의 해시 알고리즘이 16비트 알고리즘이고, 1개의 서비스를 발견해야 하고, 그 서비스의 해시 값이 25568임을 나타낸다.
제1 질의 요청 메시지를 수신한 후, 피어 단은 먼저, 16비트 해시 연산 후에 취득된 해시 값이 25568인 서비스를 가지는지를 판정한다. 상이한 판정 결과에 따라, 피어 단이 반환하는 제1 질의 응답 메시지에 포함된 제1 결과 통지 정보에 의해 식별되는 의미도 또한 상이하고, 구체적인 구현도 또한 상이하다. 이하에 제1 결과 통지 정보의 구현 방식을 일례를 사용하여 설명한다.
선택적인 구현 방식에서, 피어 단은, 피어 단 자신이 실제 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값(예를 들어, 25568)인 서비스를 가지는지를 찾아내며, 따라서 존재 표시 정보를 제1 결과 통지 정보로 사용할 수 있고, 제1 질의 응답 메시지을 사용하여, 예를 들어 제1 질의 응답 메시지에 1을 포함하는 비트를 사용하여, 로컬 단에 제1 결과 통지 정보를 반환한다. 이에 기초하여, 제1 결과 통지 정보는 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재한다는 것을 나타내는 사용되는 존재 표시 정보이다. 따라서, 로컬 단이 적어도 제1 결과 통지 정보에 따라, 피어 단에 로컬 단이 발견할 서비스가 존재하는지를 판정하는 구현 방식은, 로컬 단이 존재 표시 정보에 따라, 피어 단에 로컬 단이 발견할 서비스가 존재하는 것으로 직접 판정하는 것을 포함한다.
해시 연산의 특징으로 인해 상이한 입력으로부터 동일한 해시 출력이 취득될 수 있다. 즉, 해시 값은 동일하지만, 두 개의 동일한 해시 값에 대응하는 입력은 각각 다를 수 있다. 즉, 두 개의 상이한 서비스의 서비스 식별 정보에 대해 동일한 해시 연산이 수행된 후, 두 개의 상이한 서비스의 서비스 식별 정보의 해시 값은 동일할 수 있다. 결과적으로, 해시 값이 동일한지 여부의 비교만을 피어 단에 발견할 서비스가 존재하는지를 판정하는 조건으로 사용함으로써, 잘못된 서비스를 발견할 수 있다. 제1 결과통지 정보가 존재 표시 정보인 경우, 올바른 서비스를 발견하기 위해, 로컬 단이 적어도 제1 결과 통지 정보에 따라, 피어 단에 로컬 단이 발견할 서비스가 존재하는지를 결정하는 다른 구현 방식은 이하의 단계를 포함할 수 있다:
단계 1a: 존재 표시 정보에 따라 상기 피어 단에 제2 질의 요청 메시지를 전송하며, 제2 질의 요청 메시지는 발견할 서비스의 서비스 식별 정보를 포함한다.
단계 1b: 피어 단에 의해 반환된 제2 질의 응답 메시지를 수신하며, 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 제2 결과 통지 정보는 피어 단에 발견할 서비스가 존재하는지를 식별하는 데 사용된다.
단계 1c: 제2 결과 통지 정보가 피어 단에 발견할 서비스가 존재한다는 것을 식별할 수 있게 해주면, 피어 단에 발견할 서비스가 존재하는 것으로 판정하고; 제1 결과 통지 정보가 피어 단에 발견할 서비스가 존재하지 않는다는 것을 나타내면, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정한다.
본 구현 방식에서, 로컬 단이 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값(예를 들어, 25568)인 서비스가 존재한다는 것을 안 후, 로컬 단은 발견할 서비스의 완전한 서비스 식별 정보, 예를 들어, bonjour: printer._ipp._tcp.local를 포함하는 제2 질의 요청 메시지를 사용하여 피어 단에 다시 질의할 수 있고, 피어 단이 로컬 단이 발견해야 하는 서비스를 가지는지를 더 판정할 수 있으므로, 발견해야 하는 서비스의 발견 정확도 및 성공률을 향상시킬 수 있다. 본 구현 방식에서, 로컬 단이 적어도 제1 결과 통지 정보에 따라, 피어 단에 로컬 단이 발견할 서비스가 존재하는지를 판정하는 것은, 구체적으로, 제1 결과 통지 정보 및 제2 결과 통지 정보에 따라, 피어 단에 로컬 단이 발견할 서비스가 존재하는지를 판정하는 것이다. 본 실시예에서, 로컬 단은 두 번의 질의 프로세스를 수행해야 하지만, 소량의 제2 질의 요청 메시지가 존재하고, 제1 질의 요청 메시지가 줄어들고, 대량의 제1 질의 요청 메시지에 의한 채널 자원의 점유가 줄어들어, 전체적으로 채널 자원의 낭비를 감소시킬 수 있고, 채널 자원의 이용률을 향상시킬 수 있다.
선택적인 구현 방식에서, 피어 단이, 피어 단 자신에게 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값(예를 들어, 25568)인 서비스가 존재하지 않는 것을 알아내고, 따라서, 제1 결과 통지 정보로서 비존재 표시 정보(nonexistence indication information)를 사용할 수 있고, 제1 질의 응답 메시지를 사용하여, 예를 들어 제1 질의 응답 메시지에 0을 포함하는 비트를 사용하여, 로컬 단에 제1 결과 통지 정보를 반환할 수 있다. 이 경우에, 로컬 단이 적어도 제1 결과 통지 정보에 따라, 피어 단에 발견할 서비스가 존재하는지를 판정하는 것의 구현 방식은, 로컬 단이 비존재 표시 정보에 따라, 피어 단에 발견할 서비스가 존재하지 않는 것으로 직접 판정하는 것을 포함한다. 이와 같이, 로컬 단이 지정된 수신 시간 내에 제1 질의 응답 메시지를 수신하지 못하면, 로컬 단은 피어 단에 발견할 서비스가 존재하지 않는 것으로 직접 판정할 수 있다.
선택적인 구현 방식에서, 제1 질의 요청 메시지를 수신한 후, 피어 단은 피어 단 자신에게 정말 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값(예를 들어, 25568)인 서비스가 존재하지 않는다는 것을 알아낸다, 따라서, 피어 단은 해시 값이 25568인 서비스의 서비스 식별 정보를 제1 결과 통지 정보로 직접 사용할 수 있고, 제1 질의 응답 메시지를 사용하여 로컬 단에 제1 결과 통지 정보를 반환할 수 있다. 이에 기초하여, 제1 결과 통지 정보는 제1 해시 연산을 수행하여 취득된 해시 값인 서비스의 서비스 식별 정보, 예를 들어, "bonjour: printer._ipp._tcp.local"일 수 있다. 즉, 제1 질의 응답 메시지는 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값, 예를 들어 25568인 서비스의 서비스 식별 정보를 포함한다. 이에 기초하여, 로컬 단이 적어도 제1 결과 통지 정보에 따라, 피어 단에 발견할 서비스가 존재하는지를 판정하는 것의 실현 방식은, 로컬 단이, 제1 질의 응답 메시지에 발견할 서비스의 서비스 식별 정보가 존재하는 지를 판정하고; 제1 질의 응답 메시지에 발견할 서비스의 서비스 식별 정보가 존재하면, 피어 단에 발견할 서비스가 존재하는 것으로 판정하고; 제1 질의 응답 메시지에 발견할 서비스의 서비스 식별 정보가 존재하지 않으면, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정하는 것을 포함한다.
유의할 것은, 제1 질의 응답 메시지에, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시값인 서비스의 서비스 식별 정보를 포함하는 것의 구현 방식은, 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 소량의 서비스가 존재하는 경우에 적용될 수 있다는 것이다. 여기서, 소량은 미리 설정된 수량 임계값 미만일 수 있고, 수량 임계값은 실제 애플리케이션 상황에 따라 자유롭게 설정될 수 있다. 예를 들어, 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 단 하나 존재하는 경우, 그 서비스의 서비스 식별 정보가 제1 결과 통지 정보로서 제1 질의 응답 메시지에 직접 캡슐화되어, 로컬 단에 반환될 수 있다.
선택적인 구현 방식에서, 제1 질의 요청 메시지를 수신한 후, 피어 단이 피어 단 자신에게 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값(예를 들어 25568)인 서비스가 존재한다는 것을 알아내면, 피어 단은 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 제2 해시 값을 취득할 수 있다. 여기서, 제1 해시 연산과 제2 해시 연산의 비트 길이는 상이할 수 있고, 제2 해시 연산의 비트 길이가 제1 해시 연산의 비트 길이보다 길 수 있다. 그 후, 피어 단은 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값(예를 들어 25568)인 서비스에 대응하는 제2 해시값(예를 들어 32 비트 해시 값 127665)을 제1 결과 통지 정보로 사용하여, 제1 질의 응답 메시지를 사용하여 로컬 단에 제1 결과 통지 정보를 반환할 수 있다. 예를 들어, 제1 해시 연산이 16비트 해시 연산이면, 제1 해시 값은 16비트 해시 값이고, 따라서 제2 해시 연산은 32비트 해시 연산일 수 있고, 제2 해시 값은 32비트 해시 값이거나, 또는 제2 해시 연산은 128비트 해시 연산이고 제2 해시 값은 128비트 해시 값이다. 이에 기초하여, 제1 결과 통지 정보는 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값(예를 들어 25568)인 서비스에 대응하는 제2 해시 값일 수 있다. 따라서, 로컬 단이 적어도 제1 결과 통지 정보에 따라, 피어 단에 발견할 서비스가 존재하는지를 판정하는 것은 이하의 단계를 포함한다:
단계 2a: 발견할 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여, 발견할 서비스에 대응하는 제2 해시 값을 취득한다.
단계 2b: 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하면, 피어 단에 발견할 서비스가 존재하는 것으로 판정하고; 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하지 않으면, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정한다.
구체적으로, 피어 단에 의해 반환된 제1 질의 응답 메시지는 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값을 포함한다. 제1 질의 응답 메시지를 수신한 후, 로컬 단은 피어 단과 동일한 해시 연산을 사용하여 발견할 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여, 발견할 서비스에 대응하는 제2 해시 값을 취득할 수 있으며; 그 후, 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하는지를 판정하고; 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하지 않으면, 피어 단에 발견할 서비스가 존재하지 않는 것으로 직접 판정하고; 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하면, 피어 단에 발견할 서비스가 존재하는 것으로 직접 판정한다. 일반적으로, 상이한 입력에 대한 두 해시 연산 결과가 동일할 확률은 작다. 따라서, 두 유형의 해시 연산 결과가 동일하면, 그것은 두 서비스가 동일한 서비스라는 것을 의미할 수 있다. 발견할 서비스의 서비스 식별 정보에 대해 두 유형의 해시 연산을 수행함으로써 발견할 정확한 서비스의 발견 정확도가 향상된다.
선택적으로, 상이한 입력에 대한 두 해시 연산 결과가 동일할 확률이 작더라도, 로컬 단이 부정확한 서비스를 발견할 가능성을 더욱 감소시키기 위해, 로컬 단은 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하는 것으로 판정한 후, 로컬 단은 발견할 서비스의 완전한 서비스 식별 정보를 포함하는 메시지를 사용하여 피어 단에 다시 질의할 수 있으므로, 부정확한 서비스의 발견 확률을 더욱 감소시킬 수 있다.
전술한 실시예 또는 각 구현 방식에 기초하여, 선택적인 구현 방식에서는, 도 2에 도시된 바와 같이, 단계 102 전에, 본 실시예의 방법은 이하의 단계를 포함할 수 있다:
단계 1011: 미리 설정된 수신 시간에 도달하였는지를 판정하고; 판정 결과가 "아니오(no)", 즉 미리 설정된 수신 시간에 도달하지 않았으면, 단계 102를 수행하고; 판정 결과가 "예(yes)"이면, 단계 104를 수행한다.
단계 104: 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정한다.
본 구현 방식에서는, 수신 시간을 설정함으로써, 피어 단에 의해 반환된 제1 질의 응답 메시지는 수신 시간 내에 수신되고; 미리 설정된 수신 시간이 만료되면, 피어 단에 발견할 서비스가 존재하지 않는 것으로 직접 판정된다. 이에 기초하여, 본 구현 방식은, 피어 단이 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는 것으로 판정하는 경우에 응답하지 않는 것을 지원하며, 이로써 제1 질의 응답 메시지에 의해 점유되는 채널 자원을 더욱 절약할 수 있고 채널 자원의 이용률을 향상시킬 수 있다.
여기서 유의해야 할 것은, 로컬 단이 피어 단에 서비스 정보를 질의하는 경우, 로컬 단은 복수의 서비스 정보를 동시에 질의할 수 있다는 것이다. 이 경우에, 로컬 단에 의해 피어 단에 전송된 제1 질의 요청 메시지는 각각의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된 제1 해시 값을 포함할 수 있고, 피어 단에 의해 반환된 제1 질의 응답 메시지에는, 각각의 서비스 식별 정보의 제1 해시 값이 존재하는지에 따라 응답이 개별적으로 만들어질 수 있으며, 모든 제1 해시 값이 존재하거나, 또는 어떤 제1 해시 값도 존재하지 않거나, 또는 제1 해시 값 중 일부는 존재하고 제1 해시 값 중 일부는 존재하지 않을 수 있다. 피어 단에 의해 반환된 하나 이상의 제1 질의 응답 메시지가 존재할 수 있고(즉, 로컬 단에 의해 질의된 각각의 서비스에 대해 개별적으로 메시지가 반환될 수 있다); 피어 단에 의해 반환된 제1 질의 응답 메시지에 포함한 제1 결과 통지 정보는, 제1 해시 값이 존재하는지에 관한 정보일 수 있거나, 또는 존재하는 제1 해시 값에 대응하는 서비스의 서비스 식별 정보일 수 있거나, 또는 존재하는 제1 해시 값에 대응하는 서비스의 서비스 식별 정보의 제2 해시 값일 수도 있으므로, 로컬 단은 피어 단에 발견할 서비스가 존재하는지를 더 판정한다. 자세한 것은 전술한 실시예의 설명을 참조할 수 있으므로, 여기서는 더 설명하지 않는다.
도 3은 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 방법의 흐름도이다. 도 3에 도시된 바와 같이, 본 실시예의 방법은 이하의 단계를 포함한다:
단계 301: 제1 질의 요청 메시지를 수신하며, 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 제1 해시 값은, 제1 질의 요청 메시지를 전송하는 피어 단이 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된다.
단계 302: 제1 질의 응답 메시지를 전송하며, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하여, 피어 단이 적어도 제1 결과 통지 정보에 따라, 로컬 단에 발견할 서비스가 존재하는지를 판정하도록 하고, 제1 결과 통지 정보는 로컬 단에, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용된다.
본 실시예에서, 피어 단은 STA일 수 있고, 로컬 단은 STA 또는 AP일 수 있다. 피어 단은 능동적으로 제1 질의 요청 메시지를 전송하고, 제1 질의 요청 메시지에, 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된 제1 해시 값을 포함시켜, 발견할 서비스를 식별하도록 한다. 로컬 단은 피어 단에 의해 전송된 제1 질의 요청 메시지를 수신하고, 제1 질의 요청 메시지로부터 제1 해시 값을 취득한 다음, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하고, 판정 결과를 제1 결과 통지 정보로서 제1 질의 응답 메시지를 사용하여 피어 단에 반환한다. 이에 따라, 제1 결과 통지 정보를 수신한 후, 피어 단은 적어도 제1 결과 통지 정보에 따라, 로컬 단에 발견할 서비스가 존재하는지를 판정한다. 피어 단이 적어도 제1 결과 통지 정보에 따라, 로컬 단에 발견할 서비스가 존재하는지를 판정하는 판정 프로세스의 경우, 도 1 또는 도 2에 도시된 실시예에서의 설명을 참조할 수 있다. 그 차이점은, 본 실시예의 "피어 단"이 도 1 또는 도 2에 도시된 실시예에서는 "로컬 단"이라는 것이다. 다른 설명은 반복하지 않는다.
선택적인 구현 방식에서, 로컬 단에 의한 제1 질의 응답 메시지 전송의 구현 방식은 이하의 단계를 포함한다:
단계 3a: 제1 해시 값에 따라, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하고; 판정 결과가 "예(yes)"이면, 즉, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 판정되면, 단계 3b를 수행하고; 판정 결과가 "아니오(no)"이면, 즉 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는 것으로 판정되면, 단계 3c를 수행한다.
단계 3b: 존재 표시 정보를 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송하며, 존재 표시 정보는 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 식별하는 데 사용된다.
단계 3c: 비존재 표시 정보를 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송하며, 비존재 표시 정보는 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해 값인 서비스가 존재하지 않는 것을 식별하는 데 사용된다.
본 구현 방식에서, 제1 결과 통지 정보가 존재 표시 정보인 경우, 도 4에 도시된 바와 같이, 본 실시예에서 방법은 이하의 단계를 더 포함한다:
단계 303: 피어 단에 의해 존재 표시 정보에 따라 전송된 제2 질의 요청 메시지를 수신하며, 제2 질의 요청 메시지는 발견할 서비스의 서비스 식별 정보를 포함한다.
단계 304: 피어 단에 제2 서비스 질의 응답 메시지를 전송하며, 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하여, 피어 단이 제2 결과 통지 정보에 따라, 로컬 단에 발견할 서비스가 존재하는지를 판정하도록 하고, 제2 결과 통지 정보는 로컬 단에 발견할 서비스가 존재하는지를 식별하는 데 사용된다.
전술한 단계 303 및 단계 304는, 제1 결과 통지 정보가 존재 표시 정보인 경우에, 로컬 단이 피어 단에 의해 다시 전송되고 발견할 서비스의 서비스 식별 정보를 포함하는 질의 요청 메시지를 수신하고, 발견할 서비스의 존재 여부에 관한 정보를 포함하는 제2 질의 응답 메시지를 피어 단에 반환하는 프로세스를 설명한다.
여기서는 전술한 프로세스를 더 설명하지 않는다. 자세한 것은, 도 1에 도시된 실시예에서의 대응하는 설명을 참조할 수 수 있다.
선택적인 구현 방식에서, 로컬 단에 의한 제1 질의 응답 메시지 전송의 구현 방식은, 로컬 단이 제1 해시 값에 따라, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하고; 판정 결과가 "예(yes)"이면, 즉 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 판정되면, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보를, 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송한다. 선택적으로, 판정 결과가 "아니오(no)"이면, 즉 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는 것으로 판정되면, 로컬 단은 응답하지 않을 수 있거나, 또는 비존재 표시 정보를 반환할 수 있거나, 등을 할 수 있다.
선택적인 구현 방식에서, 로컬 단에 의한 제1 질의 응답 메시지 전송의 구현 방식은 이하의 단계를 포함한다:
단계 4a: 제1 해시 값에 따라, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하고; 판정 결과가 "예(yes)"이면, 즉, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 판정되면, 단계 40b를 수행하거나; 또는 판정 결과가 "아니오(no)"이면, 즉, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는 것으로 판정되면, 로컬 단은, 응답하지 않을 수 있거나, 또는 비존재 표시 정보를 반환할 수 있거나, 등을 할 수 있다.
단계 4b: 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값을 취득하고 단계 4c를 수행한다. 제1 해시 연산의 해시 값은, 제1 해시 값의 서비스에 대응하는 제2 해시 값이고, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득된다.
단계 4c: 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값을, 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송한다.
본 구현 방식에서, 로컬 단에서의 제1 해시 값에 대응하는 해시 연산을 제1 해시 연산이라고 하고; 제2 해시 연산은 제1 해시 연산과 상이한 해시 연산이다. 제1 해시 값과 제2 해시 값의 비트 길이는 상이할 수 있으며, 제2 해시 연산의 비트 길이는 제1 해시 연산의 비트 길이보다 길 수 있다. 예를 들어, 제1 해시 값이 16비트이면, 제2 해시 값이 32비트 또는 128비트 해시 값일 수 있다. 구체적으로 로컬 단은 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여, 그 서비스에 대응하는 제2 해시 값을 취득할 수 있고, 그 후, 그 서비스의 제2 해시 값을, 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송할 수 있다.
본 실시예에 의해 제공된 방법은 도 1 또는 도 2에 의해 제공된 전술한 방법에 대응하므로, 다른 관점에서 설명한다. 본 실시예의 각 동작에 관한 자세한 것은 도 1 또는 도 2에 도시된 실시예의 설명을 참조할 수 있으므로, 여기서 더 설명하지 않는다.
본 실시예에서, 로컬 단과 피어 단은 협력하므로, 피어 단은, 질의 요청 메시지에, 발견할 서비스의 서비스 식별 정보를 직접적으로 포함하는 대신에 서비스 식별 정보의 짧은 해시 값을 포함할 수 있어, 질의 요청 메시지의 길이를 줄여서, 질의 요청 메시지에 의한 채널 자원의 점유를 감소시킬 수 있고, 채널 자원을 절약할 수 있으며; 다른 한편, 질의 요청 메시지가 낭비되는 경우에, 질의 요청 메시지의 길이가 줄어, 낭비된 질의 요청 메시지의 단축에 상당하므로, 또한 채널 자원의 낭비를 감소시킬 수 있고, 무선 자원의 이용률을 향상시킬 수 있다.
도 5는 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 방법의 흐름도이다. 도 5에 도시된 바와 같이, 본 실시예에서의 방법은 이하의 단계를 포함한다:
단계 501: 서비스 정보 표시 메시지를 수신하며, 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하고, 해시 값 표시 정보는, 서비스 정보 표시 메시지를 전송하는 피어 단에 존재하는 서비스의 서비스 식별 정보에 따라 취득된 해시 값을 식별하는 데 사용된다.
단계 502: 적어도 해시 값 표시 정보에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정한다.
본 실시예에서, 피어 단은 AP 또는 STA일 수 있고, 로컬 단은 STA일 수 있다. 피어 단은 능동적으로 서비스 정보 표시 메시지를 브로드캐스트하여, 서비스 정보 표시 메시지를 사용하여 피어 단이 지원하는 서비스를 이웃 기기에 통지한다. 구체적으로, 피어 단은 종래기술에서처럼, 서비스 정보 표시 메시지에, 피어 단이 지원하는 각 서비스의 서비스 식별 정보를 직접 포함하지 않지만, 피어 단이 지원하는 각 서비스의 서비스 식별 정보에 대해 해시 연산을 수행하여 취득된 해시 값을 식별하는 데 사용되는 해시 값 표시 정보를 포함한다. 해시 연산의 특징으로부터 알 수 있는 바와 같이, 해시 값의 길이는 서비스의 서비스 식별 정보의 길이보다 짧고, 이에 상응하여, 해시 값을 식별하기 위한 해시 값 표시 정보의 길이도 모든 서비스의 서비스 식별 정보의 길이의 합보다 짧다. 그러나, 피어 단의 서비스 정보 표시 메시지를 수신한 후, 로컬 단은 서비스 정보 표시 메시지로부터 해시 값 표시 정보를 취득하고, 그 해시 값 표시 정보에 따라, 피어 단이 지원하는 서비스를 알 수 있고, 또한 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정할 수 있다.
선택적인 구현 방식에서, 피어 단이 서비스 정보 표시 메시지를 사용하여 해시 값 표시 정보를 포함하는 방식은, 서비스 정보 표시 메시지는 비트 테이블 및 비트 테이블 길이를 포함하고, 비트 테이블에서, 피어 단에 존재하는 서비스의 서비스 식별 정보에 따라 취득된 해시 값에 대응하는 위치는 1로 설정되고, 비트 테이블 길이는 피어 단에 존재하는 서비스의 수량에 따라 판정된다.
본 구현 방식에서, 피어 단에 의해 브로드캐스트되는 서비스 정보 표시 메시지는, 피어 단이 지원하는 서비스의 서비스 식별 정보를 직접 포함하는 것이 아니라, 비트 테이블만을 포함하고, 비트 테이블 내의 각 비트는 피어 단에 존재하는 서비스의 해시 값을 식별하는 데 사용된다. 비트가 1인 경우, 해시 값이 그 비트에 대응하는 수인 서비스가 피어 단에 존재한다는 것을 나타낸다. 예를 들어, 비트 테이블의 제5 비트가 1이라고 가정하면, 이는 해시 값이 5인 서비스가 피어 단에 존재한다는 것을 나타낸다. 물론, 비트가 0이면, 이는 해시 값이 그 비트에 대응하는 수인 서비스가 피어 단에 존재하지 않는다는 것을 나타낸다. 예를 들어, 비트 테이블의 제3 비트가 0이라고 가정하면, 이는 해시 값이 3인 서비스가 피어 단에 존재한다는 것을 나타낸다.
피어 단이 각각 "UPnP:Printer"과 "UPnP:Scanner"인 두 개의 서비스를 가진다고 가정하자. 두 서비스에 대해 8비트 해시 연산이 수행된 후에, 취득된 해시 값 중 하나는 2이고, 취득된 해시 값 ND 다른 하나는 5이다. 따라서, 피어 단은, 피어 단이 브로드캐스트하는 서비스 정보 표시 메시지에 비트 테이블을 포함하고, 비트 테이블 내의 제2 비트와 제5 비트는 1로 설정된다. 여기서 유의해야 할 것은, 8비트 해시 연산의 결과는 0∼255, 총 256개의 값이라는 것이다. 이에 기초하여, 비트 테이블 길이는 단지 256 비트만을 필요로 하고, 비트 테이블의 시작 비트는 제0(zeroth) 비트일 수 있고, 후속 비트는 제1 비트, 제2 비트, ..., 제255 비트이다.
전술한 예에서, 피어 단에 의해 사용된 비트 테이블 길이는 256비트이다. 실제 상황에서, 비트 테이블 길이는 유연하게 변경될 수 있다. 예를 들어, 피어 단에 서비스가 몇 개 존재하는 경우, 비트 테이블은, 예를 들어 단 64비트 또는 128비트로 작을 수 있다. 당연히, 대응하는 해시 연산 유형도 다르다. 예를 들어, 64비트 테이블에 대응하여, 6비트 해시 연산이 사용될 수 있고, 연산 결과는 0∼63으로, 총 64개 값이고; 128비트 테이블에 대응하여, 7비트 해시 연산이 사용될 수 있고, 연산 결과는 0∼127로, 총 128개 값이다. 이에 기초하여, 피어 단은 단지, 브로드캐스트 서비스 정보 표시 메시지에, 피어 단에 의해 몇 비트의 비트 테이블(즉, 비트 테이블 길이)이 사용되는지를 나타내기만 하면 된다. 선택적으로, 피어 단에 의해 사용된 비트 테이블 길이는 미리 정해진 고정된 길이일 수도 있다.
본 구현 방식에서, 피어 단은 서비스 정보 표시 메시지에 비트 테이블 및 비트 테이블 길이를 포함할 수 있으므로, 비트 테이블 길이는 유연하고 가변이고, 피어 단이 지원하는 서비스 수량의 변화에 맞출 수 있어 유연성이 뛰어나다. 또, 서비스 정보 표시 메시지는 능동적으로 브로드캐스트되어, 이웃 기기는 자신이 필요로 하는 서비스를 적시에 발견할 수 있고, 비트 테이블 길이는 모든 서비스의 서비스 식별 정보의 길이의 합보다 훨씬 짧아, 서비스 정보 표시 메시지를 줄이고, 서비스 정보 표시 메시지에 의해 점유되는 채널 자원을 감소시켜, 채널 자원의 이용률을 향상시킬 수 있다. 또, 피어 단에 이웃 기기가 필요로 하는 서비스가 존재하지 않는 경우, 피어 단에 의해 브로드캐스트되는 서비스 정보 표시 메시지가 줄어들어, 낭비된 서비스 정보 표시 메시지의 감소 및 낭비된 서비스 정보 표시 메시지에 의해 점유된 채널 자원의 추가적인 감소에 상당하므로, 채널 자원을 절약할 수 있고 채널 자원의 이용률을 향상시킬 수 있다.
전술한 설명에 기초하여, 선택적인 구현 방식에서, 로컬 단이 적어도 해시 값 표시 정보에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 것의 구현 방식은, 로컬 단이 발견해야 하는 서비스에 대응하는, 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득되는 제1 해시 값을 취득하고; 해시 값 표시 정보에 의해 식별된 해시 값 중에 적어도 제1 해시 값이 존재하는지에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 것을 포함한다.
선택적인 구현 방식에, 적어도 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는지에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 것은, 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하면, 로컬 단은 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 직접 판정하는 것을 포함하며, 로컬 단은 그 서비스의 사용하기 위해 직접 시도할 수 있다.
선택적인 구현 방식에서, 적어도 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는지에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 것은, 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하지 않으면, 로컬 단은 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는 것으로 판정하는 것을 포함한다.
선택적인 구현 방식에, 적어도 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는지에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지의 판정은, 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하면, 로컬 단이 피어 단에, 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함하는 제1 질의 요청 메시지를 전송할 수 있고; 그 후 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하며, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 제1 결과 통지 정보는 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용되고; 제1 결과 통지 정보가 피어 단에 로컬 단이 발견해야 하는 서비스가 존재한다는 것을 나타내면, 로컬 단은, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하거나; 또는 제1 결과 통지 정보가 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는다는 것을 나타내면, 로컬 단은, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는 것으로 판정하는 것을 포함한다.
본 구현 방식에서, 적어도 로컬 단이 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는 것으로 판정한 후, 로컬 단은 예비적으로 피어 단에 로컬 단이 발견해야 하는 서비스가 존재할 수 있다고 예비적으로 판정할 수 있고; 로컬 단은 또한 피어 단에 질의 요청 메시지를 전송할 수 있으며, 질의 요청 메시지는 로컬 단이 필요로 하는 서비스의 서비스 식별 정보를 포함하므로, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정할 수 있어, 발견해야 하는 서비스를 발견하는 정확도 및 성공률을 향상시킬 수 있다. 후속하는 선택적인 구현 방식에서의 질의 요청 메시지와 구별하기 위해, 여기서, 질의 요청 메시지를 제1 질의 요청 메시지라고 한다.
선택적인 구현 방식에서, 적어도 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는지에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 것은, 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하면, 로컬 단은 피어 단에 제2 질의 요청 메시지를 전송할 수 있고, 제2 질의 요청 메시지는 제1 해시 값 및 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값을 포함하며; 피어 단에 의해 전송된 제2 질의 응답 메시지를 수신하고, 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 제2 결과 통지 정보는, 피어 단의, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용되며; 제2 결과 통지 정보가, 피어 단의 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재한다는 것을 식별할 수 있게 해주면, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하거나; 또는 제2 결과 통지 정보가, 피어 단의 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재하지 않는다는 것을 식별할 수 있게 해주면, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는 것으로 판정하는 것을 포함한다. 본 구현 방식에서, 적어도 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는지에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 것은, 구체적으로, 해시 값 표시 정보 및 제2 결과 통지 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는지에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 것을 가리킨다.
본 구현 방식에서, 제1 해시 값을 취득하는 데 사용된 해시 연산을 제1 해시 연산이라고 한다. 로컬 단이 해시 값 표시 정보에 의해 식별된 해시 값에 제1 해시 값이 존재하는 것으로 판정한 후, 로컬 단은 예비적으로 피어 단에 로컬 단이 발견해야 하는 서비스가 존재할 수 있다고 예비적으로 판정할 수 있다. 발견해야 하는 서비스를 발견하는 정확도를 향상시키기 위해, 로컬 단은 제1 해시 연산과 다른 제2 해시 연산을 사용하여 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 해시 연산을 수행하여, 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값을 취득한 다음, 피어 단에 제2 질의 요청 메시지를 전송할 수 있으며, 제2 질의 요청 메시지는 제1 해시 값, 및 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값을 포함한다. 따라서, 제2 질의 요청 메시지를 수신한 후, 피어 단은 먼저 존재하는, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값과 동일한 서비스를 판정한 다음, 그 서비스에 대응하는 제2 해시 값을 취득하고, 그 서비스에 대응하는 제2 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한지를 판정한 다음, 판정 결과를 제2 결과 통지 정보로서 로컬 단에 반환하므로, 로컬 단은 제2 결과 통지 정보에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정할 수 있다. 제1 해시 값과 제2 해시 값의 비트 길이는 상이할 수 있고, 제2 해시 연산의 비트 길이는 제1 해시 연산의 비트 길이보다 길 수 있다. 예를 들어, 제1 해시 연산이 16비트 해시 연산이면, 제2 해시 연산은 32비트 또는 128비트 해시 연산일 수 있다.
선택적으로, 제2 결과 통지 정보가, 피어 단의 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재한다는 것을 식별할 수 있게 해주는 경우, 제2 결과 통지 정보는, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스의 서비스 식별 정보일 수 있다.
도 6은 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 방법의 흐름도이다. 도 6에 도시된 바와 같이, 본 실시예에서의 방법은 이하의 단계를 포함한다:
단계 601: 로컬 단에 존재하는 서비스에 대응하는 해시 값을 취득하며, 해시 값은 로컬 단에 존재하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된다.
단계 602: 서비스 정보 표시 메시지를 브로드캐스트하며, 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하여, 서비스 정보 표시 메시지를 수신하는 피어 단이 적어도 해시 값 표시 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 하고, 해시 값 표시 정보는 로컬 단에 존재하는 서비스에 대응하는 해시 값을 식별하는 데 사용된다.
선택적인 구현 방식에서, 서비스 정보 표시 메시지를 브로드캐스트하는 단계의 구현 방식은, 로컬 단에 존재하는 서비스의 수량에 따라 비트 테이블 길이를 판정하는 단계; 및 서비스 정보 표시 메시지에 비트 테이블 및 비트 테이블 길이를 캡슐화하고, 로컬 단에 존재하는 서비스에 대응하는 해시 값에 대응하는 위치를 1로 설정한 다음, 서비스 정보 표시 메시지를 브로드캐스트하는 단계를 포함한다.
선택적인 구현 방식에서, 단계 602 후, 상기 방법은, 피어 단에 의해 전송된 제1 질의 요청 메시지를 수신하는 단계 - 제1 질의 요청 메시지는, 피어 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함함 -; 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 따라 피어 단에 제1 질의 응답 메시지를 전송하는 단계 - 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 제1 결과 통지 정보는 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용되어, 피어 단이 적어도 제1 결과 통지 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 함 -를 더 포함한다.
선택적인 구현 방식에서, 단계 602 후에, 상기 방법은, 피어 단에 의해 전송된 제2 질의 요청 메시지를 수신하는 단계 - 제2 질의 요청 메시지는, 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값, 및 피어 단이 발견해야 하는 서비스에 대응하는 제2 해시 값을 포함함 -; 및 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값 및 제2 해시 값에 따라, 피어 단에 제2 질의 응답 메시지를 전송하는 단계 - 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 제2 결과 통지 정보는, 로컬 단의 제1 해시 연산을 수행하여 취득 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 피어 단에 의해 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용되어, 피어 단이, 제2 결과 통지 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 함 -를 더 포함한다. 제1 해시 값과 제2 해시 값의 비트 길이는 상이할 수 있고, 제2 해시 연산의 비트 길이는 제1 해시 연산의 비트 길이보다 길 수 있다. 예를 들어, 제1 해시 연산이 16비트 해시 연산이면, 제2 해시 연산은 32비트 또는 128비트 해시 연산일 수 있다. 본 구현 방식에서, 피어 단이 적어도 제1 결과 통지 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하는 것은, 구체적으로, 피어 단이 제1 결과 통지 정보 및 제2 결과 통지 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하는 것이다.
본 실시예는 도 5에 도시된 실시예에 대응하는 것이다. 다른 점은, 본 실시예에서의 "피어 단"과 "로컬 단"이, 도 5에 도시된 실시예에서의 "로컬 단"과 "피어 단"에 각각 상당한다는 것이다. 다른 설명에 대해서는, 도 5에 도시된 실시예를 참조할 수 있으므로, 여기서 더 설명하지 않는다.
본 실시예에서, 로컬 단과 피어 단은 협력하고; 서비스 정보 표시 메시지는 비트 테이블과 비트 테이블 길이를 포함하므로, 비트 테이블 길이는 유연하고 가변이며, 피어 단이 지원하는 서비스 수량의 변화에 맞출 수 있고, 유연성이 뛰어나다. 또, 서비스 정보 표시 메시지는 능동적으로 브로드캐스트되어, 이웃 기기는 자신이 필요로 하는 서비스를 적시에 발견할 수 있고, 비트 테이블 길이는 모든 서비스의 서비스 식별 정보의 길이의 합보다 훨씬 짧아, 서비스 정보 표시 메시지를 줄이고, 서비스 정보 표시 메시지에 의해 점유되는 채널 자원을 감소시켜, 채널 자원의 이용률을 향상시킬 수 있다. 또, 로컬 단에 이웃 기기가 필요로 하는 서비스가 존재하지 않는 경우, 로컬 단에 의해 브로드캐스트되는 서비스 정보 표시 메시지가 줄어들고, 이는 낭비된 서비스 정보 표시 메시지의 감소 및 낭비된 서비스 정보 표시 메시지에 의해 점유된 채널 자원의 추가적인 감소에 상당하므로, 채널 자원을 절약할 수 있고 채널 자원의 이용률을 향상시킬 수 있다.
도 7은 본 발명의 실시예에 따른 서비스 정보 발견 기기의 개략 구성도이다. 도 7에 도시된 바와 같이, 본 실시예에서의 서비스 정보 발견 기기는 전송 유닛(71), 수신 유닛(72), 및 발견 처리 유닛(73)을 포함한다.
전송 유닛(71)은 제1 질의 요청 메시지를 전송하도록 구성되어 있으며, 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 제1 해시 값은 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된다.
수신 유닛(72)은 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 구성되어 있으며, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 제1 결과 통지 정보는 피어 단에, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용된다. 수신 유닛(72)은 전송 유닛(71)에 연결되어 있고, 전송 유닛(71)이 제1 질의 요청 메시지를 전송한 후, 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 구성되어 있다.
발견 처리 유닛(73)은 수신 유닛(72)에 연결되어 있고, 적어도 제1 결과 통지 정보에 따라, 피어 단에 발견할 서비스가 존재하는지를 판정하도록 구성되어 있다.
선택적인 구현 방식에서, 제1 결과 통지 정보는, 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재한다는 것을 나타내는 데 사용되는 존재 표시 정보이다.
이에 기초하여, 도 8에 도시된 바와 같이, 발견 처리 유닛(73)의 구현 구성은, 전송 모듈(731), 수신 모듈(732), 및 제1 판정 모듈(733)을 포함한다.
전송 모듈(731)은 수신 유닛(72)에 연결되어 있고, 수신 유닛(72)에 의해 수신된 존재 표시 정보에 따라 피어 단에 제2 질의 요청 메시지를 전송하도록 구성되어 있으며, 제2 질의 요청 메시지는 발견할 서비스의 서비스 식별 정보를 포함한다.
수신 모듈(732)은 피어 단에 의해 반환된 제2 질의 응답 메시지를 수신하도록 구성되어 있으며, 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 제2 결과 통지 정보는 피어 단에 발견할 서비스가 존재하는지를 식별하는 데 사용된다. 수신 모듈(732)은 전송 모듈(731)에 연결되어 있고, 전송 모듈(731)이 제2 질의 요청 메시지를 전송한 후, 피어 단에 의해 반환된 제2 질의 응답 메시지를 수신하도록 구성되어 있다.
제1 판정 모듈(733)은 수신 모듈(732)에 연결되어 있고, 제2 결과 통지 정보가 피어 단에 발견할 서비스가 존재한다는 것을 식별할 수 있게 해주는 경우, 피어 단에 발견할 서비스가 존재하는 것으로 판정하거나, 또는 제2 결과 통지 정보가 피어 단에 발견할 서비스가 존재하지 않는다는 것을 식별할 수 있게 해주는 경우, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다.
선택적인 구현 방식에서, 제1 결과 통지 정보는 피어 단에, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는다는 것을 나타내는 데 사용되는 비존재 표시 정보이다.
이에 근거하여, 도 8에 도시된 바와 같이, 발견 처리 유닛(73)의 다른 구현 구성은 제2 판정 모듈(734)을 포함한다. 제2 판정 모듈(734)은 수신 유닛(72)에 연결되어 있고, 수신 유닛(72)에 의해 수신된 비존재 표시 정보에 따라, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정하도록 구성되어 있다.
선택적인 구현 방식에서, 제1 결과 통지 정보는 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값이다. 제1 해시 연산의 해시 값은, 제1 해시 값의 서비스에 대응하는 제2 해시 값이고, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득된다. 제1 해시 값과 제2 해시 값의 비트 길이는 상이할 수 있고, 제2 해시 연산의 비트 길이는 제1 해시 연산의 비트 길이보다 길 수 있다. 예를 들어, 제1 해시 연산이 16비트 해시 연산이면, 제2 해시 연산은 32비트 또는 128비트 해시 연산일 수 있다.
이에 기초하여, 도 8에 도시된 바와 같이, 발견 처리 유닛(73)의 또 다른 구현 구성은 취득 모듈(735) 및 제3 판정 유닛(736)을 포함한다.
취득 모듈(735)은 발견할 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여, 발견할 서비스에 대응하는 제2 해시 값을 취득하도록 구성되어 있다.
제3 판정 유닛(736)은 취득 모듈(735) 및 수신 유닛(72)에 연결되어 있고, 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하는 경우, 피어 단에 발견할 서비스가 존재하는 것으로 판정하거나, 또는 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하지 않는 경우, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다.
선택적으로, 제1 해시 연산은 16비트 해시 연산일 수 있고, 제2 해시 연산은 32비트 해시 연산일 수 있다.
선택적인 구현 방식에서, 제1 결과 통지 정보는 상기 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보이다.
이에 기초하여, 도 8에 도시된 바와 같이, 발견 처리 유닛(73)의 또 다른 구현 구성은 제4 판정 모듈(737)을 포함한다. 제4 판정 모듈(737)은 수신 유닛(72)에 연결되어 있고, 발견할 서비스의 서비스 식별 정보가 제1 질의 응답 메시지에 존재하는 경우, 피어 단에 발견할 서비스가 존재하는 것으로 판정하거나, 또는 발견할 서비스의 서비스 식별 정보가 제1 질의 응답 메시지에 존재하지 않는 경우, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다.
본 실시예에 의해 제공되는 서비스 정보 발견 기기는 STA일 수 있으나, 이에 한정되는 것은 아니다.
본 실시예에 의해 제공되는 서비스 정보 발견 기기의 기능 유닛 또는 모듈은 도 1 또는 도 2에 도시된 방법 실시예의 절차를 실행하도록 구성될 수 있다. 그 상세한 동작 원리에 대해서는 더 설명하지 않는다. 자세한 것은, 방법 실시예의 설명을 참조할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 발견 기기는 능동적으로 질의 요청 메시지를 전송하여, 이웃 기기에 서비스 정보 발견 기기가 발견해야 하는 서비스가 존재하는지를 알아낸다. 이 프로세스에서, 질의 요청 메시지에 발견할 서비스의 서비스 식별 정보를 직접 포함하는 대신에 서비스 식별 정보의 짧은 해시 값을 포함함으로써, 질의 요청 메시지의 길이가 줄어들어, 질의 요청 메시지에 의한 채널 자원의 점유를 감소시킬 수 있어, 채널 자원을 절약할 수 있으며; 다른 한편으로, 질의 요청 메시지가 낭비되는 경우에, 질의 요청 메시지의 길이가 줄어들고, 이는 낭비된 질의 요청 메시지의 단축에 상당하므로, 또한 채널 자원의 낭비를 감소시킬 수 있고, 또한 무선 자원의 이용률을 향상시킬 수 있다.
도 9는 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 기기의 개략 구성도이다. 도 9에 도시된 바와 같이, 본 실시예의 서비스 정보 발견 기기는 통신 인터페이스(91), 프로세서(92), 및 메모리(93)를 포함한다.
통신 인터페이스(91)는, 제1 질의 요청 메시지를 전송하도록 구성되어 있으며, 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 제1 해시 값은 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득되고; 또 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 구성되어 있으며, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 제1 결과 통지 정보는 피어 단에, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용된다.
메모리(93)는 프로그램을 저장하도록 구성되어 있다. 구체적으로, 프로그램은 프로그램 코드를 포함할 수 있고, 프로그램 코드는 컴퓨터 연산 명령어(computer operation instruction)를 포함한다. 메모리(93)는 고속 RAM 메모리를 포함할 수 있고, 또한 비휘발성 메모리(non-volatile memory), 예를 들어, 적어도 하나의 디스크 스토리지를 포함할 수 있다.
프로세서(92)는 메모리(93)에 저장된 프로그램을 실행하도록 구성되어, 적어도 통신 인터페이스(91)에 의해 수신된 제1 결과 통지 정보에 따라, 피어 단에 발견할 서비스가 존재하는지를 판정하도록 구성되어 있다. 프로세서(92)는 하나 이상의 중앙 처리 유닛(Central Processing Unit, 약칭하여 CPU) 또는 주문형 직접회로(Application Specific Integrated Circuit, 약칭하여 ASIC)를 포함할 수 있거나, 본 발명의 실시예를 구현하는 하나 이상의 집적회로로서 구성되어 있다.
선택적인 구현 방식에서, 제1 결과 통지 정보는, 피어 단에, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재한다는 것을 나타내는 데 사용되는 존재 표시 정보이다. 프로세서(92)는 구체적으로 통신 인터페이스(91)를 제어하여, 수신된 존재 표시 정보에 따라 피어 단에 제2 질의 요청 메시지를 전송하고, 피어 단에 의해 반환된 제2 질의 응답 메시지를 수신하도록 구성되어 있고, 제2 질의 요청 메시지는 발견할 서비스의 서비스 식별 정보를 포함하고, 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 제2 결과 통지 정보는 피어 단에 발견할 서비스가 존재하는지를 식별하는 데 사용되며; 제2 결과 통지 정보가 피어 단에 발견할 서비스가 존재한다는 것을 식별할 수 있게 해주는 경우, 피어 단에 발견할 서비스가 존재하는 것으로 판정하거나, 또는 제2 결과 통지 정보가 피어 단에 발견할 서비스가 존재하지 않는다는 것을 식별할 수 있게 해주는 경우, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다.
선택적인 구현 방식에서, 제1 결과 통지 정보는 피어 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는다는 것을 나타내는 데 사용되는 비존재 표시 정보이다. 프로세서(92)는 구체적으로 통신 인터페이스(91)에 의해 수신된 비존재 표시 정보에 따라, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정하도록 구성되어 있다.
선택적인 구현 방식에서, 제1 결과 통지 정보는 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값이다. 제1 해시 연산의 해시 값은 제1 해시 값의 서비스에 대응하는 제2 해시 값이고, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득된다. 이에 기초하여, 프로세서(92)는 구체적으로, 발견할 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여, 발견할 서비스에 대응하는 제2 해시 값을 취득하고; 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하는 경우, 피어 단에 발견할 서비스가 존재하는 것으로 판정하거나, 또는 발견할 서비스에 대응하는 제2 해시 값이 제1 질의 응답 메시지에 존재하지 않는 경우, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다.
선택적으로, 제1 해시 연산은 16비트 해시 연산일 수 있고, 제2 해시 연산은 32비트 해시 연산일 수 있다.
선택적인 구현 방식에서, 제1 결과 통지 정보는 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보이다. 이에 기초하여, 프로세서(92)는 구체적으로, 발견할 서비스의 서비스 식별 정보가 제1 질의 응답 메시지에 존재하는 경우, 피어 단에 발견할 서비스가 존재하는 것으로 판정하거나, 또는 발견할 서비스의 서비스 식별 정보가 제1 질의 응답 메시지에 존재하지 않는 경우, 피어 단에 발견할 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다.
선택적으로, 전술한 통신 인터페이스(91), 프로세서(92) 및 메모리(93)가 서로 독립적으로 구현되면, 통신 인터페이스(91), 프로세서(92), 및 메모리(93)는 버스를 통해 상호연결 및 통신할 수 있다. 버스는 산업 표준 아키텍처(Industry Standard Architecture, ISA) 버스, 주변 요소 상호연결(Peripheral Component Interconnect, PCI) 버스, 또는 확장된 산업 표준 아키텍처(Extended Industry Standard Architecture, EISA) 버스 등이다. 버스는 주소 버스, 데이터 버스, 제어 버스, 등으로 분류될 수 있다. 설명의 편의를 위해, 도 9에서 버스는 실선으로만 나타나 있지만, 이것이 단 하나의 버스 또는 하나의 유형의 버스만 존재한다는 것을 의미하는 것은 아니다.
전술한 통신 인터페이스(91), 프로세서(92) 및 메모리(93)가 하나의 칩에 통합되어 구현되면, 통신 인터페이스(91), 프로세서(92), 및 메모리(93)는 내부 버스를 통해 서로 통신할 수 있다.
본 발명의 실시예에 의해 제공되는 서비스 정보 발견 기기는 STA일 수 있으나, 이에 한정되는 것은 아니다.
본 발명의 실시예에 의해 제공되는 서비스 정보 발견 기기는 도 1 또는 도 2에 도시된 방법 실시예의 절차를 시행하도록 구성될 수 있다. 그 상세한 동작 원리는 더 설명하지 않는다. 자세한 것은 방법 실시예의 설명을 참조할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 발견 기기는 능동적으로 질의 요청 메시지를 전송하여, 이웃 기기에 서비스 정보 발견 기기가 발견해야 하는 서비스가 존재하는지를 알아낸다. 이 프로세스에서, 질의 요청 메시지에 발견할 서비스의 서비스 식별 정보를 직접 포함하는 대신에 서비스 식별 정보의 짧은 해시 값을 포함함으로써, 질의 요청 메시지의 길이가 줄어들어, 질의 요청 메시지에 의한 채널 자원의 점유를 감소시킬 수 있고, 채널 자원을 절약할 수 있으며; 다른 한편으로, 질의 요청 메시지가 낭비되는 경우에, 질의 요청 메시지의 길이가 줄어들고, 이는 낭비된 질의 요청 메시지의 단축에 상당하므로, 또한 채널 자원의 낭비를 감소시킬 수 있고, 또한 무선 자원의 이용률을 향상시킬 수 있다.
도 10은 본 발명의 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다. 도 10에 도시된 바와 같이, 본 실시예에서의 서비스 정보 제공 기기는 제1 수신 유닛(1001) 및 제1 전송 유닛(1002)을 포함한다.
제1 수신 유닛(1001)은 제1 질의 요청 메시지를 수신하도록 구성되어 있고, 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 제1 해시 값은, 제1 질의 요청 메시지를 전송한 피어 단이 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된다.
제1 전송 유닛(1002)은 제1 질의 응답 메시지를 전송하도록 구성되어 있고, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하여, 피어 단이 적어도 제1 결과 통지 정보에 따라, 로컬 단에 발견할 서비스가 존재하는지를 판정하도록 하고, 제1 결과 통지 정보는 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용된다. 제1 전송 유닛(1002)은 제1 수신 유닛(1001)에 연결되어 있고, 구체적으로, 제1 수신 유닛(1001)이 제1 질의 요청 메시지를 수신한 후, 제1 질의 요청 메시지에 따라 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있다.
선택적인 구현 방식에서, 도 11에 도시된 바와 같이, 제1 전송 유닛(1002)의 구현 구성은 제1 판정 모듈(10021) 및 제1 전송 모듈(10022)을 포함한다.
제1 판정 모듈(10021)은 제1 수신 유닛(1001)에 연결되어 있고, 제1 수신 유닛(1001)에 의해 수신된 제1 해시 값에 따라, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하도록 구성되어 있다.
제1 전송 모듈(10022)은 제1 판정 모듈(10021)에 연결되어 있고, 제1 판정 모듈(10021)이 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 판정하는 경우, 존재 표시 정보를 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있고, 존재 표시 정보는, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 식별하는 데 사용되거나; 또는 제1 판정 모듈(10021)이 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는 것으로 판정하는 경우, 비존재 표시 정보를 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있고, 비존재 표시 정보는, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는 것으로 식별하는 데 사용된다.
전술한 설명에 기초하여, 도 11에 도시된 바와 같이, 서비스 정보 제공 장치는 제2 수신 유닛(1003) 및 제2 전송 유닛(1004)을 더 포함한다.
제2 수신 유닛(1003)은 피어 단에 의해 존재 표시 정보에 따라 전송된 제2 질의 요청 메시지를 수신하도록 구성되어 있고, 제2 질의 요청 메시지는 상기 발견할 서비스의 서비스 식별 정보를 포함한다. 제2 수신 유닛(1003)은 제1 전송 모듈(10022)에 연결되어 있다.
제2 전송 유닛(1004)은 상기 피어 단에 제2 서비스 질의 응답 메시지를 전송하도록 구성되어 있고, 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하여, 피어 단이 제2 결과 통지 정보에 따라, 로컬 단에 발견할 서비스가 존재하는지를 판정하도록 하고, 제2 결과 통지 정보는 로컬 단에 발견할 서비스가 존재하는지를 식별하는 데 사용된다. 제2 전송 유닛(1004)은 제2 수신 유닛(1003)에 연결되어 있고, 구체적으로, 제2 수신 유닛(1003)이 제2 질의 요청 메시지를 수신한 후, 피어 단에 제2 질의 응답 메시지를 전송하도록 구성되어 있다.
선택적인 구현 방식에서, 도 11에 도시된 바와 같이, 제1 전송 유닛(1002)의 다른 구현 구성은 제2 판정 모듈(10023), 취득 모듈(10024), 및 제2 전송 모듈 (10025)를 포함한다.
제2 판정 모듈(10023)은 제1 수신 유닛(1001)에 연결되어 있고, 제1 수신 유닛(1001)에 의해 수신된 제1 해시 값에 따라, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하도록 구성되어 있다.
취득 모듈(10024)은 제2 판정 모듈(10023)에 연결되어 있고, 제2 판정 모듈(10023)이 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 판정하는 경우, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값을 취득하도록 구성되어 있고, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값은, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득된다. 제1 해시 값과 제2 해시 값의 비트 길이는 상이할 수 있고, 제2 해시 연산의 비트 길이는 제1 해시 연산의 비트 길이보다 길 수 있다. 예를 들어, 제1 해시 연산이 16비트 해시 연산이면, 제2 해시 연산은 32비트 또는 128비트 해시 연산일 수 있다.
제2 전송 모듈(10025)은 취득 모듈(10024)에 연결되어 있고, 취득 모듈(10024)에 의해 취득되고 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 해시 값을, 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 상기 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있다.
선택적인 구현 방식에서, 도 11에 도시된 바와 같이, 제1 전송 유닛(1002)의 또 다른 구현 구성은 제3 판정 모듈(10026) 및 제3 전송 모듈(10027)을 포함한다.
제3 판정 모듈(10026)은 제1 수신 유닛(1001)에 연결되어 있고, 제1 수신 유닛(1001)에 의해 수신된 제1 해시 값에 따라, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하도록 구성되어 있다.
제3 전송 모듈(10027)은 제3 판정 모듈(10026)에 연결되어 있고, 제3 판정 모듈(10026)이 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 판정하는 경우, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보를, 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있다.
본 실시예에 의해 제공되는 서비스 정보 제공 기기는 AP 또는 STA일 수 있으나, 이에 한정되는 것은 아니다.
본 실시예에 의해 제공되는 서비스 정보 제공 기기의 기능 유닛 또는 모듈은 도 3 또는 도 4에 도시된 방법 실시예의 절차를 실행하도록 구성될 수 있다. 그 상세한 동작 원리에 대해서는 더 설명하지 않는다. 자세한 것은, 방법 실시예의 설명을 참조할 수 있다.
본 실시예에 의해 제공된 서비스 정보 제공 기기는 전술한 실시예에서 제공되는 서비스 정보 발견 기기와 협력하므로, 서비스 정보 제공 기기는, 질의 요청 메시지에, 발견할 서비스의 서비스 식별 정보를 직접 포함하는 대신에 서비스 식별 정보의 짧은 해시 값을 포함할 수 있고, 이는 질의 요청 메시지의 길이를 줄여, 질의 요청 메시지에 의한 채널 자원의 점유를 감소시킬 수 있고, 채널 자원을 절약할 수 있으며; 다른 한편, 질의 요청 메시지가 낭비되는 경우에, 질의 요청 메시지의 길이가 줄어들고, 이는 낭비된 질의 요청 메시지의 단축에 상당하므로, 또한 채널 자원의 낭비를 감소시킬 수 있고, 무선 자원의 이용률을 향상시킬 수 있다.
도 12는 본 발명의 또 다른 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다. 도 12에 도시된 바와 같이, 본 실시예에서의 서비스 정보 제공 기기는 통신 인터페이스(1201), 메모리(1202), 및 프로세서(1203)를 포함한다.
통신 인터페이스(1201)는, 제1 질의 요청 메시지를 수신하고, 제1 질의 응답 메시지를 전송하도록 구성되어 있고, 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 제1 해시 값은 제1 질의 요청 메시지를 전송하는 피어 단이 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득되고, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하여, 피어 단이 적어도 제1 결과 통지 정보에 따라, 로컬 단에 발견할 서비스가 존재하는지를 판정하도록 하고, 제1 결과 통지 정보는 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용된다.
메모리(1202)는 프로그램을 저장하도록 구성되어 있다. 구체적으로, 프로그램은 프로그램 코드를 포함할 수 있고, 프로그램 코드는 컴퓨터 연산 명령어를 포함한다. 메모리(1202)는 고속 RAM 메모리를 포함할 수 있고, 또한 비휘발성 메모리, 예를 들어, 적어도 하나의 디스크 스토리지를 포함할 수 있다.
프로세서(1203)는 메모리(1202)에 저장된 프로그램을 실행하도록 구성되어 있다. 프로세서(1203)는 하나 이상의 CPU 또는 ASIC을 포함할 수 있거나, 본 발명의 실시예를 구현하는 하나 이상의 집적회로로서 구성되어 있다.
선택적인 구현 방식에서, 프로세서(1203)는 통신 인터페이스(1201)에 의해 수신된 제1 해시 값에 따라, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하여, 통신 인터페이스(1201)에 판정 결과를 제공하도록 구성되어 있다. 통신 인터페이스(1201)는 구체적으로, 프로세서(1203)가 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 판정하는 경우, 존재 표시 정보를 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있고, 존재 표시 정보는 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 식별하는 데 사용되거나; 또는 프로세서(1203)가 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는 것으로 판정하는 경우, 비존재 표시 정보를 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있으며, 비존재 표시 정보는 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하지 않는 것으로 식별하는 데 사용된다.
전술한 설명에 기초하여, 통신 인터페이스(1201)는 존재 표시 정보에 따라 피어 단에 의해 전송된 2질의 요청 메시지를 수신하고, 피어 단에 제2 질의 응답 메시지를 전송하도록 구성되어 있으며, 제2 질의 요청 메시지는 발견할 서비스의 서비스 식별 정보를 포함하고, 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하여, 피어 단이 제2 결과 통지 정보에 따라, 로컬 단에 발견할 서비스가 존재하는지를 판정하도록 하고, 제2 결과 통지 정보는 로컬 단에 발견할 서비스가 존재하는지를 식별하는 데 사용된다.
선택적인 구현 방식에서, 프로세서(1203)는 통신 인터페이스(1201)에 의해 수신된 제1 해시 값에 따라, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하고, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 경우, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값을 취득하고, 취득한 제2 해시 값을 통신 인터페이스(1201)에 제공하도록 구성되어 있으며, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값은, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득된다. 통신 인터페이스(1201)는 구체적으로, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스에 대응하는 제2 해시 값을, 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있다.
선택적으로, 제2 해시 연산의 비트 길이는 제1 해시 연산의 비트 길이보다 길다. 예를 들어, 제1 해시 연산은 16비트 해시 연산일 수 있고, 제2 해시 연산은 32비트 해시 연산일 수 있다.
선택적인 구현 방식에서, 프로세서(1203)는 통신 인터페이스(1201)에 의해 수신된 제1 해시 값에 따라, 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는지를 판정하고, 판정 결과를 통신 인터페이스(1201)에 제공하도록 구성되어 있다. 통신 인터페이스(1201)는 구체적으로, 프로세서(1203)가 로컬 단에 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스가 존재하는 것으로 판정하는 경우, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스의 서비스 식별 정보를, 제1 결과 통지 정보로서 제1 질의 응답 메시지 내에 캡슐화하고, 그 제1 질의 응답 메시지를 피어 단에 전송하도록 구성되어 있다.
선택적으로, 전술한 통신 인터페이스(1201), 메모리(1202), 및 프로세서(1203)가 서로 독립적으로 구현되면, 통신 인터페이스(1201), 메모리(1202), 및 프로세서(1203)는 버스를 통해 상호연결 및 통신할 수 있다. 버스는 ISA 버스, PCI 버스, 또는 EISA 버스 등이다. 버스는 주소 버스, 데이터 버스, 제어 버스, 등으로 분류될 수 있다. 설명의 편의를 위해, 도 12에서 버스는 실선으로만 나타나 있지만, 이것이 단 하나의 버스 또는 하나의 유형의 버스만 존재한다는 것을 의미하는 것은 아니다.
전술한 통신 인터페이스(1201), 메모리(1202), 및 프로세서(1203)가 하나의 칩에 통합되어 구현되면, 통신 인터페이스(1201), 메모리(1202), 및 프로세서(1203)는 내부 버스를 통해 서로 통신할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 제공 기기는 AP 또는 STA일 수 있으나, 이에 한정되는 것은 아니다.
본 발명의 실시예에 의해 제공되는 서비스 정보 제공 기기는 도 3 또는 도 4에 도시된 방법 실시예의 절차를 시행하도록 구성될 수 있다. 그 상세한 동작 원리는 더 설명하지 않는다. 자세한 것은 방법 실시예의 설명을 참조할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 제공 기기는 전술한 실시예에서 제공되는 서비스 정보 발견 기기와 협력하므로, 서비스 정보 발견 기기는, 질의 요청 메시지에, 발견할 서비스의 서비스 식별 정보를 직접 포함하는 대신에 서비스 식별 정보의 짧은 해시 값을 포함할 수 있고, 이는 질의 요청 메시지의 길이를 줄여서, 질의 요청 메시지에 의한 채널 자원의 점유를 감소시킬 수 있고, 채널 자원을 절약할 수 있으며; 다른 한편, 질의 요청 메시지가 낭비되는 경우에, 질의 요청 메시지의 길이가 줄어들고, 이는 낭비된 질의 요청 메시지의 단축에 상당하므로, 또한 채널 자원의 낭비를 감소시킬 수 있고, 무선 자원의 이용률을 향상시킬 수 있다.
도 13은 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 기기의 개략 구성도이다. 도 13에 도시된 바와 같이, 본 실시예에서의 서비스 정보 발견 기기는 수신 유닛(1301) 및 발견 처리 유닛(1302)을 포함한다.
수신 유닛(1301)은 서비스 정보 표시 메시지를 수신하도록 구성되어 있으며, 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하고, 해시 값 표시 정보는, 서비스 정보 표시 메시지를 전송하는 피어 단에 존재하는 서비스의 서비스 식별 정보에 따라 취득된 해시 값을 식별하는 데 사용된다.
발견 처리 유닛(1302)은 수신 유닛(1301)에 연결되어 있고, 적어도 수신 유닛(1301)에 의해 수신된 해시 값 표시 정보에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 구성되어 있다. 본 실시예에서 로컬 단은 서비스 정보 발견 기기 측이다.
선택적인 구현 방식에서, 도 14에 도시된 바와 같이, 발견 처리 유닛(1302)의 구현 구성은 취득 모듈(13021) 및 판정 모듈(13022)을 포함한다.
취득 모듈(13021)은 로컬 단이 발견해야 하는 서비스에 대응하는 제1 해시 값을 취득하도록 구성되어 있으며, 제1 해시 값은, 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된다.
판정 모듈(13022)은 취득 모듈(13021) 및 수신 모듈(1301)에 연결되어 있고, 적어도 수신 유닛(1301)에 의해 수신된 해시 값 표시 정보에 의해 식별된 해시 값 중에 취득 모듈(13021)에 의해 취득된 제1 해시 값이 존재하는지에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 구성되어 있다.
전술한 설명에 기초하여, 도 14에 도시된 바와 같이 판정 모듈(13022)의 구현 구성은 제1 전송 서브모듈(13024), 제1 수신 서브모듈(13025), 및 제1 판정 서브모듈(13026)을 포함한다.
제1 전송 서브모듈(13024)은 취득 모듈(13021) 및 수신 유닛(1301)에 연결되어 있고, 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는 경우, 피어 단에 제1 질의 요청 메시지를 전송하도록 구성되어 있으며, 제1 질의 요청 메시지는 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함한다.
제1 수신 서브모듈(13025)은 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 구성되어 있으며, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 제1 결과 통지 정보는 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용된다. 제1 수신 서브모듈(13025)은 제1 전송 버스모듈(13024)에 연결되어 있고, 제1 전송 서브모듈(13024)이 제1 질의 요청 메시지를 전송한 후, 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 되어 있다.
제1 판정 서브모듈(13026)은 제1 수신 서브모듈(13025)에 연결되어 있고, 제1 수신 서브모듈(13025)에 의해 수신된 제1 결과 통지 정보가 피어 단에 로컬 단이 발견해야 하는 서비스가 존재한다는 것을 식별할 수 있게 해주는 경우, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하거나, 또는 제1 수신 서브모듈(13025)에 의해 수신된 제1 결과 통지 정보가 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는다는 것을 식별할 수 있게 해주는 경우, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다.
전술한 설명에 기초하여, 도 14에 도시된 바와 같이, 판정 모듈(13022)의 구현 구성은 제2 전송 서브 모듈(13027), 제2 수신 서브모듈(13028), 및 제2 판정 서브모듈(13029)을 포함한다.
제2 전송 서브 모듈(13027)은 취득 모듈(13021) 및 수신 유닛(1301)에 연결되어 있고, 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는 경우, 피어 단에 제2 질의 요청 메시지를 전송하도록 구성되어 있으며, 제2 질의 요청 메시지는 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값 및 제1 해시값을 포함하고, 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값은, 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득된다. 제1 해시 값과 제2 해시 값의 비트 길이는 상이할 수 있고, 제2 해시 연산의 비트 길이는 제1 해시 연산의 비트 길이보다 길 수 있다. 예를 들어, 제1 해시 연산이 16비트 해시 연산이면, 제2 해시 연산은 32비트 또는 128비트 해시 연산일 수 있다.
제2 수신 서브모듈(13028)은 피어 단에 의해 전송된 제2 질의 응답 메시지를 수신하도록 구성되어 있으며, 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 제2 결과 통지 정보는, 피어 단의 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용된다. 제2 수신 서브모듈(13028)은 제2 전송 서브모듈(13027)에 연결되어 있고, 제2 전송 서브모듈(13027)이 제2 질의 요청 메시지를 전송한 후, 피어 단에 의해 전송된 제2 질의 응답 메시지를 수신하도록 구성되어 있다.
제2 판정 서브모듈(13029)은 제2 수신 서브모듈(13028)에 연결되어 있고, 제2 수신 서브모듈(13028)에 의해 수신된 제2 결과 통지 정보가, 피어 단의 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재하는 것을 식별할 수 있게 해주는 경우, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하거나, 또는 제2 수신 서브모듈(13028)에 의해 수신된 제2 결과 통지 정보가, 피어 단의 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재하지 않는 것을 식별할 수 있게 해주는 경우, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다.
본 실시예에 의해 제공되는 서비스 정보 발견 기기는 STA일 수 있으나, 이에 한정되는 것은 아니다.
본 실시예에 의해 제공되는 서비스 정보 발견 기기의 기능 유닛 또는 모듈은 도 5에 도시된 방법 실시예의 절차를 실행하도록 구성될 수 있다. 그 상세한 동작 원리에 대해서는 더 설명하지 않는다. 자세한 것은, 방법 실시예의 설명을 참조할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 발견 기기는 피어 단에 의해 능동적으로 브로드캐스트되는 서비스 정보 표시 메시지를 수신하고, 서비스 정보 표시 메시지 내의 해시 값 표시 정보에 따라, 피어 단이 서비스 정보 발견 기기가 발견해야 하는 서비스를 가지는지를 발견한다. 해시 값 표시 정보의 길이는 모든 서비스의 서비스 식별 정보의 길이의 합보다 훨씬 짧아서, 서비스 정보 표시 메시지를 줄이고 또한 서비스 정보 표시 메시지에 의해 점유된 채널 자원을 감소시켜, 채널 자원의 이용률을 향상시킬 수 있다.
도 15는 본 발명의 또 다른 실시예에 따른 서비스 정보 발견 기기의 개략 구성도이다. 도 15에 도시된 바와 같이, 본 실시예의 서비스 정보 발견 기기는 통신 인터페이스(1501), 프로세서(1502), 및 메모리(1503)를 포함한다.
통신 인터페이스(1501)는 서비스 정보 표시 메시지를 수신하도록 구성되어 있으며, 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하고, 해시 값 표시 정보는, 서비스 정보 표시 메시지를 전송하는 피어 단에 존재하는 서비스의 서비스 식별 정보에 따라 취득된 해시 값을 식별하는 데 사용된다.
메모리(1503)는 프로그램을 저장하도록 구성되어 있다. 구체적으로, 프로그램은 프로그램 코드를 포함할 수 있고, 프로그램 코드는 컴퓨터 연산 명령어를 포함한다. 메모리(1503)는 고속 RAM 메모리를 포함할 수 있고, 또한 비휘발성 메모리, 예를 들어, 적어도 하나의 디스크 스토리지를 포함할 수 있다.
프로세서(1502)는 메모리(1503)에 저장된 프로그램을 실행하여, 통신 인터페이스(1501)에 의해 수신된 해시 값 표시 정보에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 구성되어 있다. 본 실시에서 로컬 단은 서비스 정보 발견 측이다. 프로세서(1502)는 하나 이상의 CPU 또는 ASIC을 포함할 수 있거나, 본 발명의 실시예를 구현하는 하나 이상의 집적회로로서 구성되어 있다.
선택적인 구현 방식에서, 프로세서(1502)는 구체적으로, 로컬 단이 발견해야 하는 서비스에 대응하는 제1 해시 값을 취득하도록 구성되어 있으며, 제1 해시 값은, 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득되고; 또 적어도 통신 인터페이스(1501)에 의해 수신된 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는지에 따라, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 구성되어 있다.
전술한 설명에 기초하여, 프로세서(1502)는 구체적으로, 해시 값 표시 정보에 의해 식별된 해시 값 중에 제1 해시 값이 존재하는 경우, 통신 인터페이스(1501)를 제어하여, 피어 단에 제1 질의 요청 메시지를 전송하고, 피어 단에 의해 전송된 제1 질의 응답 메시지 수신하도록 하고; 통신 인터페이스(1501)에 의해 수신된 제1 결과 통지 정보가 피어 단에 로컬 단이 발견해야 하는 서비스가 존재한다는 것을 식별할 수 있게 해주는 경우, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하거나, 또는 통신 인터페이스(1501)에 의해 수신된 제1 결과 통지 정보가 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는다는 것을 식별할 수 있게 해주는 경우, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다. 제1 질의 요청 메시지는 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함하며; 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 제1 결과 통지 정보는 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용된다. 이에 상응하여, 통신 인터페이스(1501)는 프로세서(1502)의 제어로, 피어 단에 제1 질의 요청 메시지를 전송하고 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 더 구성되어 있다.
또는, 프로세서(1502)는 구체적으로, 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는 경우, 통신 인터페이스(1501)를 제어하여, 피어 단에 제2 질의 요청 메시지를 전송하고; 통신 인터페이스(1501)에 의해 수신된 제2 결과 통지 정보가, 피어 단의, 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재하는 것으로 식별할 수 있게 해주는 경우, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하거나, 또는 통신 인터페이스(1501)에 의해 수신된 제2 결과 통지 정보가, 피어 단의 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재하는 않는 것으로 식별할 수 있게 해주는 경우, 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하지 않는 것으로 판정하도록, 구성되어 있다. 제2 질의 요청 메시지는 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값 및 제1 해시 값을 포함하고, 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값은, 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득되며; 제2 질의 응답 메시지는 제2 결과 통지 정보를 포함하고, 제2 결과 통지 정보는, 피어 단의 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 로컬 단이 발견해야 하는 서비스에 대응하는 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용된다. 이에 상응하여, 통신 인터페이스(1501)는, 프로세서(1502)의 제어로, 피어 단에 제2 질의 요청 메시지를 전송하고 피어 단에 의해 전송된 제2 질의 응답 메시지를 수신하도록 더 구성되어 있다.
선택적으로, 전술한 통신 인터페이스(1501), 메모리(1503), 및 프로세서(1502)가 서로 독립적으로 구현되면, 통신 인터페이스(1501), 메모리(1503), 프로세서(1502)는 버스를 통해 상호연결 및 통신할 수 있다. 버스는 ISA 버스, PCI 버스, 또는 EISA 버스 등이다. 버스는 주소 버스, 데이터 버스, 제어 버스, 등으로 분류될 수 있다. 설명의 편의를 위해, 도 15에서 버스는 실선으로만 나타나 있지만, 이것이 단 하나의 버스 또는 하나의 유형의 버스만 존재한다는 것을 의미하는 것은 아니다.
전술한 통신 인터페이스(1501), 메모리(1503), 및 프로세서(1502)가 하나의 칩에 통합되어 구현되면, 통신 인터페이스(1501), 메모리(1503), 및 프로세서(1502)는 내부 버스를 통해 서로 통신할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 발견 기기는 STA일 수 있으나, 이에 한정되는 것은 아니다.
본 발명의 실시예에 의해 제공되는 서비스 정보 발견 기기는 도 5에 도시된 방법 실시예의 절차를 시행하도록 구성될 수 있다. 그 상세한 동작 원리는 더 설명하지 않는다. 자세한 것은 방법 실시예의 설명을 참조할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 발견 기기는 피어 단에 의해 능동적으로 브로드캐스트되는 서비스 정보 표시 메시지를 수신하고, 또한 서비스 정보 표시 메시지 내의 해시 값 표시 정보에 따라, 피어 단이 서비스 정보 발견 기기가 발견해야 하는 서비스를 가지는지를 발견한다. 해시 값 표시 정보의 길이는 모든 서비스의 서비스 식별 정보의 길이의 합보다 훨씬 짧아서, 서비스 정보 표시 메시지를 감소시키고, 또한 서비스 정보 표시 메시지에 의해 점유되는 채널 자원을 감소시켜, 채널 자원의 이용률을 향상시킬 수 있다.
도 16은 본 발명의 또 다른 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다. 도 16에 도시된 바와 같이, 본 실시예에서 서비스 정보 제공 기기는 취득 유닛(1601) 및 브로트캐스팅 유닛(1602)을 포함한다.
취득 유닛(1601)은 로컬 단에 존재하는 서비스에 대응하는 해시 값을 취득하도록 구성되어 있으며, 해시 값은 로컬 단에 존재하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된다.
브로트캐스팅 유닛(1602)은, 취득 유닛(1601)에 연결되어 있고, 서비스 정보 표시 메시지를 브로드캐스트하도록 구성되어 있으며, 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하여, 서비스 정보 표시 메시지를 수신하는 피어 단이 적어도 해시 값 표시 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 하고, 해시 값 표시 정보는 로컬 단에 존재하는 서비스에 대응하는 해시 값을 식별하는 데 사용된다.
선택적인 구현 방식에서, 도 17에 도시된 바와 같이, 브로트캐스팅 유닛(1602)의 구현 구성은 판정 모듈(16021) 및 설정 및 브로드캐스팅 모듈(16022)을 포함한다.
선택적인 구현 방식에서, 도 17에 도시된 바와 같이, 브로트캐스팅 유닛(1602)의 구현 구성은 판정 모듈(16021)과 설정 및 브로드캐스팅 모듈(16022)을 포함한다.
판정 모듈(16021)은 로컬 단에 존재하는 서비스의 수량에 따라 비트 테이블 길이를 판정하도록 구성되어 있다.
설정 및 브로드캐스팅 모듈(16022)은, 판정 모듈(16021)에 연결되어 있고, 서비스 정보 표시 메시지에 비트 테이블 및 상기 비트 테이블 길이를 캡슐화하고, 로컬 단에 존재하는 서비스에 대응하는 해시 값에 대응하는 위치를 1로 설정한 다음, 그 서비스 정보 표시 메시지를 브로드캐스트하도록 구성되어 있다.
선택적인 구현 방식에서, 도 17에 도시된 바와 같이, 서비스 정보 제공 기기는 제1 수신 유닛(1603) 및 제1 전송 유닛(1604)을 더 포함한다.
제1 수신 유닛(1603)은 피어 단에 의해 전송된 제1 질의 요청 메시지를 수신하도록 구성되어 있으며, 제1 질의 요청 메시지는 피어 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함한다. 제1 수신 유닛(1603)은 설정 및 브로드캐스팅 모듈(16022)에 연결될 수 있다.
제1 전송 유닛(1604)은, 제1 수신 유닛(1603)에 연결되어 있고, 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 따라, 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있으며, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 제1 결과 통지 정보는 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용되어, 피어 단이 적어도 제1 결과 통지 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 한다.
선택적인 구현 방식에서, 도 17에 도시된 바와 같이, 서비스 정보 제공 기기는 제2 수신 유닛(1605) 및 제2 전송 유닛(1606)을 더 포함한다.
제2 수신 유닛(1605)은 피어 단에 의해 전송된 제2 질의 요청 메시지를 수신하도록 구성되어 있으며, 제2 질의 요청 메시지는, 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값, 및 피어 단이 발견해야 하는 서비스에 대응하는 제2 해시 값을 포함하고, 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값 및 제2 해시 값은 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산 및 제2 해시 연산을 각각 수행하여 취득된다. 제2 수신 유닛(1605)은 설정 및 브로드캐스팅 모듈(16022)에 연결될 수도 있다. 제1 해시 값과 제2 해시 값의 비트 길이는 상이할 수 있고, 제2 해시 연산의 비트 길이는 제1 해시 연산의 비트 길이보다 길 수 있다. 예를 들어, 제1 해시 연산이 16비트 해시 연산이면, 제2 해시 연산은 32비트 또는 128비트 해시 연산일 수 있다.
제2 전송 유닛(1606)은, 제2 수신 유닛(1605)에 연결되어 있고, 제1 해시 값 및 제2 해시 값에 따라 피어 단에 제2 질의 응답 메시지를 전송하도록 구성되어 있으며, 질의 응답 메시지는 제2 결과 통지 메시지를 포함하고, 제2 결과 통지 메시지는, 로컬 단의 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용되어, 피어 단이 제2 결과 통지 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 한다.
본 실시예에 의해 제공되는 서비스 정보 제공 기기는 AP 또는 STA일 수 있으나, 이에 한정되는 것은 아니다.
본 발명의 실시예에 의해 제공되는 서비스 정보 제공 기기는 도 6에 도시된 방법 실시예의 절차를 시행하도록 구성될 수 있다. 그 상세한 동작 원리는 더 설명하지 않는다. 자세한 것은 방법 실시예의 설명을 참조할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 제공 기기는 전술한 실시예에서 제공되는 서비스 정보 발견 기기와 협력한다. 서비스 정보 표시 메시지는 능동적으로 브로드캐스트되어, 이웃 기기가 자신이 발견해야 하는 서비스를 적시에 발견할 수 있도록 해주고, 서비스 정보 표시 메시지 내의 해시 값 표시 정보의 길이는 모든 서비스의 서비스 식별 정보의 길이의 합보다 훨씬 짧아서, 서비스 정보 표시 메시지를 감소시키고, 또한 서비스 정보 표시 메시지에 의해 점유되는 채널 자원을 감소시켜, 채널 자원의 이용률을 향상시킬 수 있다. 또, 이웃 기기가 필요로 하는 서비스가 서비스 정보 제공 기기에 존재하지 않는 경우, 서비스 정보 제공 기기에 의해 브로드캐스트되는 서비스 정보 표시 메시지는 줄어들고, 이는 낭비되는 서비스 정보 표시 메시지의 감소 및 낭비되는 서비스 정보 표시 메시지에 의해 점유되는 채널 자원의 감소에 상응하므로, 또한 채널 자원의 이용률을 향상시킬 수 있다.
도 18은 본 발명의 또 다른 실시예에 따른 서비스 정보 제공 기기의 개략 구성도이다. 도 18에 도시된 바와 같이, 본 실시예에서의 서비스 정보 제공 기기는 통신 인터페이스(1801), 프로세서(1802), 및 메모리(1803)를 포함한다.
메모리(1803)는 프로그램을 저장하도록 구성되어 있다. 구체적으로, 프로그램은 프로그램 코드를 포함할 수 있고, 프로그램 코드는 컴퓨터 연산 명령어를 포함한다. 메모리(1803)는 고속 RAM 메모리를 포함할 수 있고, 또한 비휘발성 메모리, 예를 들어, 적어도 하나의 디스크 스토리지를 포함할 수 있다.
프로세서(1802)는 메모리(1803)에 의해 저장된 프로그램을 실행하여, 로컬 단에 존재하는 서비스에 대응하는 해시 값을 취득하도록 구성되어 있고, 해시 값은 로컬 단에 존재하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된다. 프로세서(1802)는 하나 이상의 CPU 또는 ASIC을 포함할 수 있거나, 본 발명의 실시예를 구현하는 하나 이상의 집적회로로서 구성되어 있다.
통신 인터페이스(1801)는 서비스 정보 표시 메시지를 브로드캐스트하도록 구성되어 있으며, 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하여, 서비스 정보 표시 메시지를 수신하는 피어 단이 적어도 해시 값 표시 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 하고, 해시 값 표시 정보는 로컬 단에 존재하는 서비스에 대응하는 해시 값을 식별하는 데 사용된다.
선택적인 구현 방식에서, 프로세서(1802)는 또한 로컬 단에 존재하는 서비스의 수량에 따라 비트 테이블 길이를 판정하고, 서비스 정보 표시 메시지에 비트 테이블 및 상기 비트 테이블 길이를 캡슐화하고, 로컬 단에 존재하는 서비스에 대응하는 해시 값에 대응하는 위치를 1로 설정하여, 서비스 정보 표시 메시지를 생성하고, 그 서비스 정보 표시 메시지를 통신 인터페이스(1801)에 제공하도록 구성되어 있다.
선택적인 구현 방식에서, 통신 인터페이스(1801)는 또한, 피어 단에 의해 전송된 제1 질의 요청 메시지를 수신하도록 구성되어 있으며, 제1 질의 요청 메시지는 피어 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함하고; 또 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 따라, 피어 단에 제1 질의 응답 메시지를 전송하도록 구성되어 있으며, 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 제1 결과 통지 정보는 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용되어, 피어 단이 적어도 제1 결과 통지 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 한다.
선택적인 구현 방식에서, 통신 인터페이스(1801)는 또한, 피어 단에 의해 전송된 제2 질의 요청 메시지를 수신하도록 구성되어 있으며, 제2 질의 요청 메시지는, 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값, 및 피어 단이 발견해야 하는 서비스에 대응하는 제2 해시 값을 포함하고, 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값 및 제2 해시 값은 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산 및 제2 해시 연산을 각각 수행하여 취득되고; 또 제1 해시 값 및 제2 해시 값에 따라 피어 단에 제2 질의 응답 메시지를 전송하도록 구성되어 있으며, 질의 응답 메시지는 제2 결과 통지 메시지를 포함하고, 제2 결과 통지 메시지는, 로컬 단의 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 서비스 중에, 제2 해시 연산을 수행하여 취득된 해시 값이 제2 해시 값과 동일한 서비스가 존재하는지를 식별하는 데 사용되어, 피어 단이 제2 결과 통지 정보에 따라, 로컬 단에 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 한다.
선택적으로, 전술한 통신 인터페이스(1801), 프로세서(1802), 및 메모리(1803)가 서로 독립적으로 구현되면, 통신 인터페이스(1801), 프로세서(1802), 및 메모리(1803)는 버스를 통해 상호연결 및 통신할 수 있다. 버스는 ISA 버스, PCI 버스, 또는 EISA 버스 등이다. 버스는 주소 버스, 데이터 버스, 제어 버스, 등으로 분류될 수 있다. 설명의 편의를 위해, 도 18에서 버스는 실선으로만 나타나 있지만, 이것이 단 하나의 버스 또는 하나의 유형의 버스만 존재한다는 것을 의미하는 것은 아니다.
전술한 통신 인터페이스(1801), 프로세서(1802), 및 메모리(1803)가 하나의 칩에 통합되어 구현되면, 통신 인터페이스(1801), 프로세서(1802), 및 메모리(1803)는 내부 버스를 통해 서로 통신할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 제공 기기는 AP 또는 STA일 수 있으나, 이에 한정되는 것은 아니다.
본 실시예에 의해 제공되는 서비스 정보 제공 기기의 기능 유닛 또는 모듈은 도 6에 도시된 방법 실시예의 절차를 실행하도록 구성될 수 있다. 그 상세한 동작 원리에 대해서는 더 설명하지 않는다. 자세한 것은, 방법 실시예의 설명을 참조할 수 있다.
본 실시예에 의해 제공되는 서비스 정보 제공 기기는 전술한 실시예에 의해 제공되는 서비스 정보 발견 기기와 협력한다. 서비스 정보 표시 메시지는 능동적으로 브로드캐스트되어, 이웃 기기가 자신이 발견해야 하는 서비스를 적시에 발견할 수 있도록 해주고, 서비스 정보 표시 메시지 내의 해시 값 표시 정보의 길이는 모든 서비스의 서비스 식별 정보의 길이의 합보다 훨씬 짧아서, 서비스 정보 표시 메시지를 줄이고, 또한 서비스 정보 표시 메시지에 의해 점유되는 채널 자원을 감소시켜, 채널 자원의 이용률을 향상시킬 수 있다. 또, 이웃 기기가 필요로 하는 서비스가 서비스 정보 제공 기기에 존재하지 않는 경우, 서비스 정보 제공 기기에 의해 브로드캐스트되는 서비스 정보 표시 메시지가 줄어들고, 이는 낭비되는 서비스 정보 표시 메시지의 감소 및 낭비되는 서비스 정보 표시 메시지에 의해 점유되는 채널 자원의 감소에 상응하므로, 또한 채널 자원의 이용률을 향상시킬 수 있다.
당업자는 실시예에서의 방법의 단계 중 일부 또는 전부를 관련 하드웨어에 명령하는 프로그램으로 구현할 수 있다는 것을 이해할 수 있을 것이다. 상기 프로그램은 컴퓨터로 판독 가능한 저장 매체에 저장될 수 있다. 프로그램을 실행할 때, 방법 실시예의 단계들이 수행된다. 상기 저장 매체로는 ROM, RAM, 자기 디스크, 또는 광 디스크와 같은, 프로그램을 저장할 수 있는 임의의 매체를 포함한다.
끝으로, 이상의 실시예는 단지 본 발명의 기술적 방안을 설명하기 위한 것 뿐이며, 본 발명을 한정하는 것은 아니라는 것에 유의하기 바란다. 이상의 실시예를 참조하여 본 발명을 자세하게 설명하였지만, 당업자는, 본 발명의 실시예의 기술적 방안의 범위를 벗어나지 않으면서, 전술한 실시예에서 설명한 기술적 방안에 대한 수정 또는 그 기술적 특징의 일부 또는 전부에 대한 동등물의 대체가 이루어질 수 있음을 이해하여야 한다.

Claims (39)

  1. 제1 질의 요청 메시지를 전송하는 단계(101) - 상기 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 상기 제1 해시 값은 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -;
    피어 단(peer end)에 의해 전송된 제1 질의 응답 메시지를 수신하는 단계(102) - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -; 및
    적어도 상기 제1 결과 통지 정보에 따라, 상기 피어 단에 상기 발견할 서비스가 존재하는지를 판정하는 단계(103)
    를 포함하고,
    상기 제1 결과 통지 정보는 하나 이상의 제2 해시 값을 포함하고, 상기 제2 해시 값은, 상기 피어 단에 의해, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 제1 해시 값인 하나 이상의 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득되고;
    상기 판정하는 단계는,
    상기 발견할 서비스의 서비스 식별 정보에 대해 상기 제2 해시 연산을 수행하여, 상기 발견할 서비스에 대응하는 상기 제2 해시 값을 취득하는 단계; 및
    상기 발견할 서비스에 대응하는 상기 제2 해시 값이 상기 제1 결과 통지 정보에 존재하면, 상기 피어 단에 상기 발견할 서비스가 존재하는 것으로 판정하는 단계
    를 포함하는, 서비스 정보 발견 방법.
  2. 제1항에 있어서,
    상기 제2 해시 연산의 비트 길이는 상기 제1 해시 연산의 비트 길이보다 긴 것인, 서비스 정보 발견 방법.
  3. 제1 질의 요청 메시지를 수신하는 단계(101) - 상기 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 상기 제1 해시 값은, 상기 제1 질의 요청 메시지를 전송하는 피어 단이 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
    제1 질의 응답 메시지를 전송하는 단계 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하여, 상기 피어 단이 적어도 상기 제1 결과 통지 정보에 따라, 로컬 단(local end)에 상기 발견할 서비스가 존재하는지를 판정하도록 하고, 상기 제1 결과 통지 정보는 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -
    를 포함하고,
    상기 전송하는 단계는,
    상기 제1 해시 값에 따라, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 판정하는 단계;
    상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는 것으로 판정되면, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스에 대응하는 제2 해시 값을 취득하는 단계 - 상기 제2 해시 값은, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득됨 -; 및
    상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스에 대응하는 상기 제2 해시 값을, 상기 제1 결과 통지 정보로서 상기 제1 질의 응답 메시지 내에 캡슐화하고, 상기 피어 단에 상기 제1 질의 응답 메시지를 전송하는 단계
    를 포함하는, 서비스 정보 발견 방법.
  4. 제3항에 있어서,
    상기 제2 해시 연산의 비트 길이는 상기 제1 해시 연산의 비트 길이보다 긴 것인, 서비스 정보 발견 방법.
  5. 서비스 정보 표시 메시지를 수신하는 단계(501) - 상기 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하고, 상기 해시 값 표시 정보는 상기 서비스 정보 표시 메시지를 전송하는 피어 단에 존재하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득된 해시 값을 식별하는 데 사용됨 -; 및
    적어도 상기 해시 값 표시 정보에 따라, 상기 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 단계(502)
    를 포함하고,
    상기 판정하는 단계는,
    상기 로컬 단이 발견해야 하는 서비스에 대응하는 제1 해시 값을 취득하는 단계 - 상기 제1 해시 값은, 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 상기 제1 해시 연산을 수행하여 취득됨 -; 및
    적어도 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는지에 따라, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 단계
    를 포함하고,
    상기 서비스 정보 표시 메시지가 상기 해시 값 표시 정보를 포함하는 방식은,
    상기 서비스 정보 표시 메시지는 비트 테이블 및 비트 테이블 길이를 포함하고, 상기 비트 테이블에서, 상기 피어 단에 존재하는 서비스의 서비스 식별 정보에 따라 취득된 해시 값에 대응하는 위치는 1로 설정되고, 상기 비트 테이블 길이는 상기 피어 단에 존재하는 서비스의 수량에 따라 판정되는, 서비스 정보 발견 방법.
  6. 제5항에 있어서,
    적어도 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는지에 따라, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하는 단계(502)는,
    상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하면, 상기 피어 단에 제1 질의 요청 메시지를 전송하는 단계 - 상기 제1 질의 요청 메시지는 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함함 -;
    상기 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하는 단계 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용됨 -; 및
    상기 제1 결과 통지 정보가 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재한다는 것을 식별할 수 있게 해주면, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하는 단계
    를 포함하는, 서비스 정보 발견 방법.
  7. 로컬 단에 존재하는 서비스에 대응하는 해시 값을 취득하는 단계(601) - 상기 해시 값은 상기 로컬 단에 존재하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
    서비스 정보 표시 메시지를 브로드캐스트하는 단계(602) - 상기 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하여, 상기 서비스 정보 표시 메시지를 수신하는 피어 단이 적어도 상기 해시 값 표시 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 하고, 상기 해시 값 표시 정보는 상기 로컬 단에 존재하는 서비스에 대응하는 해시 값을 식별하는 데 사용됨 -
    를 포함하고,
    상기 서비스 정보 표시 메시지를 브로드캐스트하는 단계는,
    상기 로컬 단에 존재하는 서비스의 수량에 따라 비트 테이블 길이를 판정하는 단계; 및
    상기 서비스 정보 표시 메시지 내에 비트 테이블 및 상기 비트 테이블 길이를 캡슐화하고, 상기 로컬 단에 존재하는 서비스에 대응하는 해시 값에 대응하는 위치를 1로 설정한 다음, 상기 서비스 정보 표시 메시지를 브로드캐스트하는 단계
    를 포함하는, 서비스 정보 발견 방법.
  8. 제7항에 있어서,
    상기 서비스 정보 표시 메시지를 브로캐스트하는 단계(602) 후에,
    상기 피어 단에 의해 전송된 제1 질의 요청 메시지를 수신하는 단계 - 상기 제1 질의 요청 메시지는 상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함하고, 상기 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값이 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 존재하는 경우, 상기 제1 질의 요청 메시지는 상기 피어 단에 의해 상기 로컬 단에 전송되며, 상기 제1 해시 값은, 상기 피어 단에 의해, 상기 발견해야 하는 서비스의 서비스 식별 정보에 대해 상기 제1 해시 연산을 수행하여 취득됨 -; 및
    상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 따라 상기 피어 단에 제1 질의 응답 메시지를 전송하는 단계 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용되어, 상기 피어 단이 적어도 상기 제1 결과 통지 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 함 -
    를 더 포함하는 서비스 정보 발견 방법.
  9. 제1 질의 요청 메시지를 전송하도록 구성된 전송 유닛(71) - 상기 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 상기 제1 해시 값은 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -;
    피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 구성된 수신 유닛(72) - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -; 및
    적어도 상기 제1 결과 통지 정보에 따라, 상기 피어 단에 상기 발견할 서비스가 존재하는지를 판정하도록 구성된 발견 처리 유닛(73)
    을 포함하고,
    상기 제1 결과 통지 정보는 하나 이상의 제2 해시 값을 포함하고, 상기 제2 해시 값은, 상기 피어 단에 의해, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 하나 이상의 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득되고;
    상기 발견 처리 유닛(73)은,
    상기 발견할 서비스의 서비스 식별 정보에 대해 상기 제2 해시 연산을 수행하여, 상기 발견할 서비스에 대응하는 상기 제2 해시 값을 취득하도록 구성된 취득 모듈(735); 및
    상기 발견할 서비스에 대응하는 상기 제2 해시 값이 상기 제1 결과 통지 정보에 존재하는 경우, 상기 피어 단에 상기 발견할 서비스가 존재하는 것으로 판정하도록 구성된 제3 판정 모듈(736)
    을 포함하는, 서비스 정보 발견 기기.
  10. 제9항에 있어서,
    상기 제2 해시 연산의 비트 길이는 상기 제1 해시 연산의 비트 길이보다 긴 것인, 서비스 정보 발견 기기.
  11. 제1 질의 요청 메시지를 수신하도록 구성된 제1 수신 유닛(1001) - 상기 제1 질의 요청 메시지는 제1 해시 값을 포함하고, 상기 제1 해시 값은, 상기 제1 질의 요청 메시지를 전송한 피어 단이 발견할 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
    제1 질의 응답 메시지를 전송하도록 구성된 제1 전송 유닛(1002) - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하여, 상기 피어 단이 적어도 상기 제1 결과 통지 정보에 따라, 로컬 단에 상기 발견할 서비스가 존재하는지를 판정하도록 하고, 상기 제1 결과 통지 정보는 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 식별하는 데 사용됨 -
    을 포함하고,
    상기 제1 전송 유닛(1002)은,
    상기 제1 해시 값에 따라, 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는지를 판정하도록 구성된 제2 판정 모듈(10023);
    상기 제2 판정 모듈이 상기 로컬 단에 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스가 존재하는 것으로 판정하는 경우, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스에 대응하는 제2 해시 값을 취득하도록 구성된 취득 모듈(10024) - 상기 제2 해시 값은, 상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스의 서비스 식별 정보에 대해 제2 해시 연산을 수행하여 취득됨 -; 및
    상기 제1 해시 연산을 수행하여 취득된 해시 값이 상기 제1 해시 값인 서비스에 대응하는 상기 제2 해시 값을, 상기 제1 결과 통지 정보로서 상기 제1 질의 응답 메시지 내에 캡슐화하고, 상기 피어 단에 상기 제1 질의 응답 메시지를 전송하도록 구성된 제2 전송 모듈(10025)
    을 포함하는, 서비스 정보 제공 기기.
  12. 제11항에 있어서,
    상기 제2 해시 연산의 비트 길이는 상기 제1 해시 연산의 비트 길이보다 긴 것인, 서비스 정보 제공 기기.
  13. 서비스 정보 표시 메시지를 수신하도록 구성된 수신 유닛 - 상기 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하고, 상기 해시 값 표시 정보는, 상기 서비스 정보 표시 메시지를 전송하는 피어 단에 존재하는 서비스의 서비스 식별 정보에 따라 취득된 해시 값을 식별하는 데 사용됨 -; 및
    적어도 상기 해시 값 표시 정보에 따라, 상기 피어 단에 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 구성된 발견 처리 유닛
    을 포함하고,
    상기 발견 처리 유닛은,
    상기 로컬 단이 발견해야 하는 서비스에 대응하는 제1 해시 값을 취득하도록 구성된 취득 모듈 - 상기 제1 해시 값은, 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
    적어도 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는지에 따라, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 구성된 판정 모듈
    을 포함하고,
    상기 판정 모듈은,
    상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 상기 제1 해시 값이 존재하는 경우, 상기 피어 단에 제1 질의 요청 메시지를 전송하도록 구성된 제1 전송 서브모듈 - 상기 제1 질의 요청 메시지는 상기 로컬 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함함 -;
    상기 피어 단에 의해 전송된 제1 질의 응답 메시지를 수신하도록 구성된 제1 수신 서브모듈 - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용됨 -; 및
    상기 제1 결과 통지 정보가 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재한다는 것을 식별할 수 있게 해주면, 상기 피어 단에 상기 로컬 단이 발견해야 하는 서비스가 존재하는 것으로 판정하도록 구성된 제1 판정 서브모듈
    을 포함하는, 서비스 정보 발견 기기.
  14. 로컬 단에 존재하는 서비스에 대응하는 해시 값을 취득하도록 구성된 취득 유닛(1601) - 상기 해시 값은 상기 로컬 단에 존재하는 서비스의 서비스 식별 정보에 대해 제1 해시 연산을 수행하여 취득됨 -; 및
    서비스 정보 표시 메시지를 브로드캐스트하도록 구성된 브로드캐스팅 유닛(1602) - 상기 서비스 정보 표시 메시지는 해시 값 표시 정보를 포함하여, 상기 서비스 정보 표시 메시지를 수신하는 피어 단이 적어도 상기 해시 값 표시 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 하고, 상기 해시 값 표시 정보는 상기 로컬 단에 존재하는 서비스에 대응하는 해시 값을 식별하는 데 사용됨 -
    을 포함하고,
    상기 브로드캐스팅 유닛(1602)은,
    상기 로컬 단에 존재하는 서비스의 수량에 따라 비트 테이블 길이를 판정하는 판정 모듈(16021); 및
    상기 서비스 정보 표시 메시지에 비트 테이블 및 상기 비트 테이블 길이를 캡슐화하고, 상기 로컬 단에 존재하는 서비스에 대응하는 해시 값에 대응하는 위치를 1로 설정한 다음, 상기 서비스 정보 표시 메시지를 브로드캐스트하도록 구성된 설정 및 브로드캐스팅 모듈(16022)
    을 포함하는, 서비스 정보 제공 기기.
  15. 제14항에 있어서,
    상기 피어 단에 의해 전송된 제1 질의 요청 메시지를 수신하도록 구성된 제1 수신 유닛(1603) - 상기 제1 질의 요청 메시지는 상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보를 포함하고, 상기 피어 단이 발견해야 하는 서비스에 대응하는 제1 해시 값이 상기 해시 값 표시 정보에 의해 식별된 해시 값 중에 존재하는 경우 상기 제1 질의 요청 메시지는 상기 피어 단에 의해 상기 로컬 단에 전송되며, 상기 제1 해시 값은, 상기 피어 단에 의해, 상기 발견해야 하는 서비스의 서비스 식별 정보에 대해 상기 제1 해시 연산을 수행하여 취득됨 -; 및
    상기 피어 단이 발견해야 하는 서비스의 서비스 식별 정보에 따라 상기 피어 단에 제1 질의 응답 메시지를 전송하도록 구성된 제1 전송 유닛(1604) - 상기 제1 질의 응답 메시지는 제1 결과 통지 정보를 포함하고, 상기 제1 결과 통지 정보는 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 식별하는 데 사용되어, 상기 피어 단이 적어도 상기 제1 결과 통지 정보에 따라, 상기 로컬 단에 상기 피어 단이 발견해야 하는 서비스가 존재하는지를 판정하도록 함 -
    을 더 포함하는 서비스 정보 제공 기기.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 삭제
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 삭제
  39. 삭제
KR1020157001973A 2012-12-17 2013-12-10 서비스 정보 발견 방법 및 기기 KR101665415B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201210548032.6 2012-12-17
CN201210548032.6A CN103874047B (zh) 2012-12-17 2012-12-17 服务信息发现方法及设备
PCT/CN2013/088911 WO2014094556A1 (zh) 2012-12-17 2013-12-10 服务信息发现方法及设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020167027391A Division KR101730364B1 (ko) 2012-12-17 2013-12-10 서비스 정보 발견 방법 및 기기

Publications (2)

Publication Number Publication Date
KR20150023878A KR20150023878A (ko) 2015-03-05
KR101665415B1 true KR101665415B1 (ko) 2016-10-12

Family

ID=50912096

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020157001973A KR101665415B1 (ko) 2012-12-17 2013-12-10 서비스 정보 발견 방법 및 기기
KR1020167027391A KR101730364B1 (ko) 2012-12-17 2013-12-10 서비스 정보 발견 방법 및 기기

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020167027391A KR101730364B1 (ko) 2012-12-17 2013-12-10 서비스 정보 발견 방법 및 기기

Country Status (6)

Country Link
US (1) US20150110099A1 (ko)
EP (1) EP2858326B1 (ko)
JP (2) JP6014761B2 (ko)
KR (2) KR101665415B1 (ko)
CN (1) CN103874047B (ko)
WO (1) WO2014094556A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105052207B (zh) * 2013-05-08 2020-02-28 麦克赛尔株式会社 一种信息查询方法、设备及系统
US20160113046A1 (en) * 2014-10-17 2016-04-21 Futurewei Technologies, Inc. System and Method for Reducing Communications Overhead
CN105636166A (zh) * 2014-10-31 2016-06-01 华为技术有限公司 设备之间发现的方法及装置
GB2532988B (en) * 2014-12-04 2021-03-03 Arm Ip Ltd Method and device for scanning for data processing devices
CN107646206B (zh) * 2016-05-20 2020-11-27 华为技术有限公司 一种通信方法和装置
CN108024306B (zh) * 2017-12-05 2020-12-18 锐捷网络股份有限公司 一种tcp连接管理方法及网关设备
CN109361666A (zh) * 2018-10-12 2019-02-19 浙江工业大学 一种WiFi物理隔离环境下的隐蔽远程控制方法
US20230033440A1 (en) * 2021-07-29 2023-02-02 Qualcomm Incorporated Wake up signal for multicast group notification
CN117793675A (zh) * 2022-09-21 2024-03-29 华为技术有限公司 通信方法和通信装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070141986A1 (en) * 2005-12-20 2007-06-21 Microsoft Corporation Proximity service discovery in wireless networks

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6775281B1 (en) * 1999-09-30 2004-08-10 Mosaid Technologies, Inc. Method and apparatus for a four-way hash table
ES2321847T3 (es) * 2005-10-03 2009-06-12 Telefonaktiebolaget Lm Ericsson (Publ) Configuracion de conexion en un sistema de telecomunicaciones inalambricas que utiliza valores hash.
US8559350B2 (en) * 2005-12-20 2013-10-15 Microsoft Corporation Mechanism to convey discovery information in a wireless network
US7974574B2 (en) * 2007-07-25 2011-07-05 Microsoft Corporation Base station initiated proximity service discovery and connection establishment
US8170481B2 (en) * 2008-03-24 2012-05-01 Intel Corporation Techniques for discovering services provided in a wireless network
WO2010090252A1 (ja) * 2009-02-09 2010-08-12 日本電気株式会社 アカウント発行システム、アカウントサーバ、サービスサーバおよびアカウント発行方法
US8285860B2 (en) * 2009-03-16 2012-10-09 Apple Inc. Efficient service discovery for peer-to-peer networking devices
EP2514169B1 (en) * 2009-12-16 2019-03-13 Nokia Technologies Oy System, method, and apparatus for performing reliable network, capability, and service discovery
US9306813B2 (en) * 2009-12-23 2016-04-05 Apple Inc. Efficient service advertisement and discovery in a peer-to-peer networking environment with cooperative advertisement
US20120254000A1 (en) * 2011-03-31 2012-10-04 NetCracker Technology Corporation Systems and methods for improved billing and ordering
CN102325167A (zh) * 2011-07-21 2012-01-18 杭州微元科技有限公司 一种网络文件传输的校验方法
CN102438004B (zh) * 2011-09-05 2017-02-08 深圳市创维软件有限公司 获取媒体文件的元数据信息的方法、系统及多媒体播放器

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070141986A1 (en) * 2005-12-20 2007-06-21 Microsoft Corporation Proximity service discovery in wireless networks

Also Published As

Publication number Publication date
JP6014761B2 (ja) 2016-10-25
KR20150023878A (ko) 2015-03-05
EP2858326A1 (en) 2015-04-08
WO2014094556A1 (zh) 2014-06-26
EP2858326A4 (en) 2015-08-26
US20150110099A1 (en) 2015-04-23
JP2015531195A (ja) 2015-10-29
KR20160119278A (ko) 2016-10-12
CN103874047B (zh) 2017-08-04
KR101730364B1 (ko) 2017-04-26
JP2017022763A (ja) 2017-01-26
CN103874047A (zh) 2014-06-18
EP2858326B1 (en) 2017-10-04

Similar Documents

Publication Publication Date Title
KR101665415B1 (ko) 서비스 정보 발견 방법 및 기기
JP6158198B2 (ja) 高速初期ネットワークリンクセットアップのためのシステムおよび方法
JP6009700B2 (ja) ピアツーピアプレアソシエーション発見動作
JP5976823B2 (ja) 高速初期ネットワークリンクセットアップのためのシステムおよび方法
US20140241266A1 (en) Systems and methods for reduced latency when establishing communication with a wireless communication system
JP6430252B2 (ja) 高速初期ネットワークリンクセットアップのためのシステムおよび方法
RU2665894C2 (ru) Система и способ использования сохраненной информации более высокого уровня
US20140313936A1 (en) Method and device for searching for service for terminal using gas protocol
EP3032850A1 (en) Service discovery technique in wireless communication network for forming p2p group
KR20150013587A (ko) 스테이션과 액세스 포인트 간의 연합을 구축하는 방법, 및 장치
US8446917B2 (en) Methods and apparatus for efficiently communicating information using a proxy
WO2018019056A1 (zh) 传输数据的方法和中继节点
EP3081015A1 (en) Switching to advertising locator after connection establishment
US12016081B2 (en) Method of reporting received signal strength on per frame basis in Wi-Fi network
US9723545B2 (en) Discovery of Wi-Fi direct services via discovery probe
US20160316395A1 (en) Service query method, apparatus and system, and station
CN111246398B (zh) 一种低能耗通信方法、装置、系统及存储介质
CN108174434B (zh) 一种自动切换通信方式的方法、终端及智能设备
WO2014146440A1 (zh) 服务发现方法、接入点和站点
TWI715017B (zh) 無線連線設定傳遞方法
JP6698700B2 (ja) ターゲットクエリおよび探査クエリをアグリゲートすること
CN114760719B (zh) 发现和连接到软接入设备的方法、装置、设备及存储介质
CN111866813B (zh) 无线连线设定传递方法
US20170105168A1 (en) Techniques for identifying wi-fi device collocated with a cellular cell
CN107852673B (zh) 一种接入点发现方法及装置

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
A107 Divisional application of patent
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190917

Year of fee payment: 4