IP Library Granted Patent US 9,679,336
Granted Patent B2
US 9,679,336 · App. 13/276,451 · Granted Jun 13, 2017

Social ad hoc networking protocol and presentation layer

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 9,679,336
App. No.
13/276,451
Granted
Jun 13, 2017
Kind
B2
Abstract

In one embodiment, a method includes implementing an ad hoc network protocol comprising transmitting, from a first mobile device, one or more neighbor messages that includes a first user identifier corresponding to a first user of the first mobile device, wherein the first user identifier corresponds to a user account of the first user in a social networking system, receiving, at the first mobile device, one or more second neighbor messages from one or more second mobile devices that include second user identifiers corresponding to respective second users of the one or more second mobile devices, wherein the second user identifiers correspond to respective user accounts of one or more second users in the social networking system, and storing, at the first mobile device, information received in the one or more second neighbor messages for access by one or more applications hosted on the first mobile device.

Claims (61)

1. A method for implementing a mobile ad hoc network (MANET) protocol, the method comprising:

sending, from a first mobile device, one or more first MANET neighbor discovery messages to one or more second mobile devices, each of the first messages including a first user identifier corresponding to a first user of the first mobile device, wherein the first user identifier corresponds to a user account of the first user in a social networking system;

receiving, at the first mobile device, one or more second MANET neighbor discovery messages from the second mobile devices,

wherein at least a portion of the second messages include second user identifiers corresponding to respective second users of the second mobile devices,

wherein the second user identifiers correspond to respective user accounts of one or more second users in the social networking system,

wherein the second user identifiers are encrypted using a key of the social networking system, the key being a private key of the social networking system that only users of the social networking system can decrypt, and

wherein the encrypted second user identifiers are received for access by one or more applications hosted on the first mobile device;

decrypting one of the encrypted second user identifiers to identify a valid path between the first mobile device and a second mobile device of the one or more second mobile devices that is associated with the decrypted second user identifier, the valid path being one of a plurality of valid paths comprising encrypted connections for messages sent using the MANET protocol between users identified in a social graph within the same social networking system; and

sending one or more messages along the valid path to the one of the one or more second mobile devices of the second user,

wherein when it is determined that the first mobile device has no access to an external communication network and the one or more second mobile devices have access to the external communication network, the first mobile device sends the one or more messages along the valid path to the one or more second mobile devices.

2. The method of claim 1 , wherein the valid path between the first mobile device and the second mobile device associated with the decrypted second user identifier comprises one or more hops.

3. The method of claim 2 , wherein the valid path comprising one or more hops utilizes only those second mobile devices where the first user of the first mobile device and the second user of the second mobile device have an association in the social networking system.

4. The method of claim 1 , wherein the first user and the second user have an association in the social networking system.

5. The method of claim 1 , further comprising:

sending, from the first mobile device, one or more update messages that includes the first user identifier;

receiving, at the first mobile device, one or more second update messages from the one or more second mobile devices that include the second user identifiers;

updating, at the first mobile device, the encrypted second user identifiers previously received with information in the one or more second update messages for access by the one or more applications hosted on the first mobile device.

6. The method of claim 1 , further comprising:

accessing, at the first mobile device, the one of one or more second devices of the second user; and

placing a call, at the first mobile device, between the first mobile device and a number dialed at the first mobile device through the one of one or more second devices.

7. A system comprising:

a memory comprising instructions executable by one or more processors; and

the one or more processors coupled to the memory and operable to execute the instructions to implement a mobile ad hoc network (MANET) protocol, the one or more processors being operable when executing the instructions to:

send, from a first mobile device, one or more first MANET neighbor discovery messages to one or more second mobile devices, each of the first messages including_a first user identifier corresponding to a first user of the first mobile device, wherein the first user identifier corresponds to a user account of the first user in a social networking system;

receive, at the first mobile device, one or more second MANET neighbor discovery messages from the second mobile devices,

wherein at least a portion of the second messages include second user identifiers corresponding to respective second users of the second mobile devices,

wherein the second user identifiers correspond to respective user accounts of one or more second users in the social networking system,

wherein the second user identifiers are encrypted using a key of the social networking system, the key being a private key of the social networking system that only users of the social networking system can decrypt, and

wherein the encrypted second user identifiers are received for access by one or more applications hosted on the first mobile device;

decrypt one of the encrypted second user identifiers to identify a valid path between the first mobile device and a second mobile device of the one or more second mobile devices that is associated with the decrypted second user identifier, the valid path being one of a plurality of valid paths comprising encrypted connections for messages sent using the MANET protocol between users identified in a social graph within the same social networking system; and

send one or more messages along the valid path to the one of the one or more second mobile devices of the second user,

wherein when it is determined that the first mobile device has no access to an external communication network and the one or more second mobile devices have access to the external communication network, the first mobile device sends the one or more messages along the valid path to the one or more second mobile devices.

8. The system of claim 7 , wherein the valid path between the first mobile device and the second mobile device associated with the decrypted second user identifier comprises one or more hops.

9. The system of claim 8 , wherein the valid path comprising one or more hops utilizes only those second mobile devices where the first user of the first mobile device and the second user of the second mobile device have an association in the social networking system.

10. The system of claim 7 , wherein the first user and the second user have an association in the social networking system.

11. The system of claim 7 , further comprising:

send, from the first mobile device, one or more update messages that includes the first user identifier;

receive, at the first mobile device, one or more second update messages from the one or more second mobile devices that include the second user identifiers;

update, at the first mobile device, the encrypted second user identifiers previously received with information in the one or more second update messages for access by the one or more applications hosted on the first mobile device.

12. The system of claim 7 , further comprising:

access, at the first mobile device, the one of one or more second devices of the second user; and

place a call, at the first mobile device, between the first mobile device and a number dialed at the first mobile device through the one of one or more second devices.

13. One or more computer-readable non-transitory storage media embodying software operable to implement a mobile ad hoc network (MANET) protocol when executed by one or more computer systems to execute instructions to:

send, from a first mobile device, one or more first MANET neighbor discovery messages to one or more second mobile devices, each of the first messages including a first user identifier corresponding to a first user of the first mobile device, wherein the first user identifier corresponds to a user account of the first user in a social networking system;

receive, at the first mobile device, one or more second MANET neighbor discovery messages from the second mobile devices,

wherein at least a portion of the second messages include second user identifiers corresponding to respective second users of the second mobile devices,

wherein the second user identifiers correspond to respective user accounts of one or more second users in the social networking system,

wherein the second user identifiers are encrypted using a key of the social networking system, the key being a private key of the social networking system that only users of the social networking system can decrypt, and

wherein the encrypted second user identifiers are received for access by one or more applications hosted on the first mobile device;

decrypt one of the encrypted second user identifiers to identify a valid path between the first mobile device and a second mobile device of the one or more second mobile devices that is associated with the decrypted second user identifier, the valid path being one of a plurality of valid paths comprising encrypted connections for messages sent using the MANET protocol between users identified in a social graph within the same social networking system; and

send one or more messages along the valid path to the one of the one or more second mobile devices of the second user,

wherein when it is determined that the first mobile device has no access to an external communication network and the one or more second mobile devices have access to the external communication network, the first mobile device sends the one or more messages along the valid path to the one or more second mobile devices.

14. The media of claim 13 , wherein the valid path between the first mobile device and the second mobile device associated with the decrypted second user identifier comprises one or more hops.

15. The media of claim 14 , wherein the valid path comprising one or more hops utilizes only those second mobile devices where the first user of the first mobile device and the second user of the second mobile device have an association in the social networking system.

16. The media of claim 13 , further comprising:

send, from the first mobile device, one or more update messages that includes the first user identifier;

receive, at the first mobile device, one or more second update messages from the one or more second mobile devices that include the second user identifiers;

update, at the first mobile device, the encrypted second user identifiers previously received with information in the one or more second update messages for access by the one or more applications hosted on the first mobile device.

17. The media of claim 13 , further comprising:

access, at the first mobile device, the one of one or more second devices of the second user; and

place a call, at the first mobile device, between the first mobile device and a number dialed at the first mobile device through the one of one or more second devices.

Assignments (1)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →