IP Library Granted Patent US 8,255,469
Granted Patent B2
US 8,255,469 · App. 12/475,356 · Granted Aug 28, 2012

Method and apparatus for locating communities over an ad-hoc mesh network

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,255,469
App. No.
12/475,356
Granted
Aug 28, 2012
Kind
B2
Abstract

An approach is provided for locating communities over an ad-hoc mesh network. Community identifiers are used to locate communities and community members over an ad-hoc mesh network. The community identifiers are also associated with keys to authenticate members of the community and to protect the privacy and anonymity of information exchanged between the members.

Claims (85)

1. A method comprising:

identifying a community of a plurality of wireless nodes using a community identifier corresponding to the community by broadcasting a community search message over a wireless ad-hoc mesh network, wherein the community is active among one or more neighboring wireless nodes over the ad-hoc mesh network, and the community search message propagates to all devices that are in proximity of the community whether the devices belong to the community or not; and

updating a list of active communities based on the identification, wherein the community is part of a connectionless low-power awareness information network, the community search message searches for the presence of multiple communities by including a set of pseudonym,

the community search message is transmitted to the neighboring nodes in connectionless manner without a need to send any prior control signals or messages to the neighboring nodes before the transmission and without knowledge of the addresses of the neighboring nodes, and

reception and processing of the community search message does not require any prior knowledge about a sending node.

2. A method of claim 1 , further comprising:

receiving a message directed to the community from a neighboring wireless node;

determining whether a receiving wireless node is a member of the community;

identifying the community as an active community if the receiving node is a member of the community; and

updating the list of active communities based on the identification.

3. A method of claim 1 , further comprising:

receiving input requesting a search for the community;

retrieving a community pseudonym corresponding to the community;

generating the community search message containing a community query identifier and any number of community pseudonyms;

initiating broadcast of the community search message to neighboring wireless nodes, wherein each neighboring wireless node that is associated with the community pseudonym automatically replies to the community search message;

identifying the community as an active community if at least one reply is received in response to the community search message; and

updating the list of active communities based on the identification.

4. A method of claim 1 , further comprising:

receiving input requesting a search for one or more members of the community;

retrieving a community pseudonym corresponding to the community;

generating a member search message containing a community query identifier and the community pseudonym;

initiating transmission of the member search message to one or more neighboring wireless nodes, wherein each neighboring wireless node that is visible and that is associated with the community pseudonym automatically replies to the member search message;

updating a list of visible community members based on one or more replies to the member search message;

identifying the community as an active community if at least one reply is received in response to the member search message; and

updating the list of active communities based on the identification.

5. A method of claim 4 , wherein the community is set to a visible state in which members of the community are visible, and the method further comprising:

retrieving a user alias corresponding to a member of the community; and

including the user alias in the member search message,

wherein a neighboring wireless node corresponding to the user alias automatically replies to the member search message.

6. A method of claim 1 , further comprising:

monitoring for one or more messages related to the community over a predetermined period of time;

designating the community as an inactive community if no messages related to the community are observed during the predetermined period of time; and

updating the list of active communities based on the designation.

7. A method of claim 1 , further comprising:

anonymizing the community identifier by intermittently calculating a pseudonym from the original community identifier in one or more messages directed to the community; and

encrypting information related to an identity of a member of the community in one or more messages directed to the community.

8. A method of claim 1 , wherein a wireless node joins the community by receiving, over a secure communication channel, the community identifier and a corresponding authentication key and storing the received community identifier and the corresponding authentication key in a community directory within the wireless node.

9. A method of claim 1 , wherein the community is specific to a first wireless node and a second wireless node and represents a bond between the first wireless node and the second wireless node, the community is created by exchanging the community identifier and a corresponding authentication key between the first wireless node and the second wireless, and discovery of other wireless nodes which have a bond with the first wireless node is accomplished by the first wireless node broadcasting community search messages containing a pseudonym corresponding to the community of the first wireless node related to this bond.

10. An apparatus comprising:

at least one processor; and

at least one memory including computer program code,

the at least one memory and the computer program code configured to, with the at least one processor, cause the apparatus to perform at least the following,

identify a community of a plurality of wireless nodes using a community identifier corresponding to the community by broadcasting a community search message over a wireless ad-hoc mesh network, wherein the community is active among one or more neighboring wireless nodes over an ad-hoc mesh network, and the community search message propagates to all devices that are in proximity of the community whether the devices belong to the community or not, and

update a list of active communities based on the identification, wherein

the community is part of a connectionless low-power awareness information network,

the community search message searches for the presence of multiple communities by including a set of pseudonym,

the community search message is transmitted to the neighboring nodes in connectionless manner without a need to send any prior control signals or messages to the neighboring nodes before the transmission and without knowledge of the addresses of the neighboring nodes, and

reception and processing of the community search message does not require any prior knowledge about a sending node.

11. An apparatus of claim 10 , wherein the apparatus is further caused to:

receive a message directed to the community from a neighboring wireless node;

determine whether a receiving wireless node is a member of the community;

identify the community as an active community if the receiving node is a member of the community; and

update the list of active communities based on the identification.

12. An apparatus of claim 10 , wherein the apparatus is further caused to:

receive input requesting a search for the community;

retrieve a community pseudonym corresponding to the community;

generate a community search message containing a community query identifier and any number of community pseudonyms;

initiate broadcast of the community search message to neighboring wireless nodes, wherein each neighboring wireless node that is associated with the community pseudonym automatically replies to the community search message;

identify the community as an active community if at least one reply is received in response to the community search message; and

update the list of active communities based on the identification.

13. An apparatus of claim 10 , wherein the apparatus is further caused to:

receive input requesting a search for one or more members of the community;

retrieve a community pseudonym corresponding to the community;

generate a member search message containing the community pseudonym;

initiate transmission of the member search message to one or more neighboring wireless nodes, wherein each neighboring wireless node that is visible and that is associated with the community pseudonym automatically replies to the member search message;

update a list of visible community members based on one or more replies to the member search message;

identify the community as an active community if at least one reply is received in response to the member search message; and

update the list of active communities based on the identification.

14. An apparatus of claim 13 , wherein the community is set to a visible state in which members of the community are visible, and the apparatus is further caused to:

retrieve a user alias corresponding to a member of the community; and

include the user alias in the member search message,

wherein a neighboring wireless node corresponding to the user alias automatically replies to the member search message.

15. An apparatus of claim 10 , wherein the apparatus is further caused to:

monitor for one or more messages related to the community over a predetermined period of time;

designate the community as an inactive community if no messages related to the community are observed during the predetermined period of time; and

update the list of active communities based on the designation.

16. An apparatus of claim 10 , wherein the apparatus is further caused to:

anonymize the community identifier by intermittently calculating a pseudonym from the original community identifier in one or more messages directed to the community; and

encrypt information related to an identity of a member of the community in one or more messages directed to the community.

17. An apparatus of claim 10 , wherein a wireless node joins the community by receiving, over a secure communication channel, the community identifier and a corresponding authentication key and storing the received community identifier and the corresponding authentication key in a community directory within the wireless node.

18. An apparatus of claim 17 , wherein the community is specific to a first wireless node and a second wireless node and represents a bond between the first wireless node and the second wireless node, the community is created by exchanging the community identifier and the corresponding authentication key between the first wireless node and the second wireless, and discovery of other wireless nodes which have a bond with the first wireless node is accomplished by the first wireless node broadcasting community search messages containing a pseudonym corresponding to the community of the first wireless node related to this bond.

19. An apparatus of claim 10 , wherein the apparatus is a mobile phone further comprising:

user interface circuitry and user interface software configured to facilitate user control of at least some functions of the mobile phone through use of a display and configured to respond to user input; and

a display and display circuitry configured to display at least a portion of a user interface of the mobile phone, the display and display circuitry configured to facilitate user control of at least some functions of the mobile phone.

20. An apparatus of claim 19 , wherein the mobile phone includes a radio for device-to-device communication.