OPTIMIZED AD HOC NETWORKING
First Claim
1. An apparatus, comprising:
- a protocol handler coupled to a service discovery protocol module and at least one internet protocol stack configured for exchanging service discovery packets over at least one channel of an ad hoc wireless network;
a service table coupled to the protocol handler configured for storing information on relationships between available services, wireless devices, and channels on the ad hoc wireless network;
said protocol handler configured for receiving a service discovery protocol inquiry message from the service discovery protocol module and transferring one or more inquiry messages corresponding to the received service discovery protocol inquiry message to the at least one internet protocol stack for respective transmission over the at least one channel of the ad hoc wireless network;
said protocol handler further configured for receiving at least one service response message from the at least one internet protocol stack, the message including information relating to services available from wireless devices operating on the at least one channel of the ad hoc wireless network, and storing the information in said service table about the services indicated as available in the response message.
1 Assignment
0 Petitions
Accused Products
Abstract
Method, apparatus, and computer program product embodiments are disclosed to improve network performance for ad hoc WLANs save power in service discovery phase and provide service availability information quickly and independently from the wireless channels used in the WLAN ad hoc networks. The embodiments perform link-local addressing, Multicast Domain Name Service (DNS), and DNS Service Discovery operations one or more channels of an ad hoc IEEE 802.11 Wireless LAN. A protocol handler in a wireless device is coupled between a standard service discovery protocol module in the device, such as a Zeroconf protocol module or a UPnP protocol module, and at least one internet protocol stack in the device. The Transport, Internet, and Network Interface layers of the IP protocol stack are mapped by the protocol handler to corresponding functions in the standard service discovery protocol module, using a service table for storing information on relationships between available services, wireless devices, and channels on one or more ad hoc wireless networks.
-
Citations
34 Claims
-
1. An apparatus, comprising:
-
a protocol handler coupled to a service discovery protocol module and at least one internet protocol stack configured for exchanging service discovery packets over at least one channel of an ad hoc wireless network; a service table coupled to the protocol handler configured for storing information on relationships between available services, wireless devices, and channels on the ad hoc wireless network; said protocol handler configured for receiving a service discovery protocol inquiry message from the service discovery protocol module and transferring one or more inquiry messages corresponding to the received service discovery protocol inquiry message to the at least one internet protocol stack for respective transmission over the at least one channel of the ad hoc wireless network; said protocol handler further configured for receiving at least one service response message from the at least one internet protocol stack, the message including information relating to services available from wireless devices operating on the at least one channel of the ad hoc wireless network, and storing the information in said service table about the services indicated as available in the response message. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method, comprising:
-
receiving in a protocol handler in a wireless device, a service discovery protocol inquiry message from a service discovery protocol module in the wireless device, and transferring one or more inquiry messages corresponding to the received service discovery protocol inquiry message to at least one internet protocol stack for transmission over at least one channel of a first ad hoc wireless network; exchanging service discovery packets over at least one channel of the first ad hoc network; maintaining upper layers of the internet protocol stack open to enable exchanging service discovery packets over at least one channel of a second ad hoc network; receiving in the protocol handler at least one service response message from the at least one internet protocol stack, the response message including information relating to services available from wireless devices operating on the at least one channel of either the first or the second ad hoc wireless network; and storing the information in a service table coupled to the protocol handler, on services indicated as available in the response message and on relationships between available services, wireless devices, and channels on the ad hoc wireless networks. - View Dependent Claims (8, 9, 10)
-
-
11. A computer program product, comprising:
-
a computer readable medium containing program code executable on a data processor; program code in said computer readable medium for receiving in a protocol handler in a wireless device, a service discovery protocol inquiry message from a service discovery protocol module in the wireless device, and transferring one or more inquiry messages corresponding to the received service discovery protocol inquiry message to at least one internet protocol stack for transmission over at least channel of a first ad hoc wireless network; program code in said computer readable medium for exchanging service discovery packets over at least one channel of a first ad hoc WLAN network; program code in said computer readable medium for maintaining upper layers of the internet protocol stack open to enable exchanging service discovery packets over at least one channel of a second ad hoc WLAN network; program code in said computer readable medium for receiving in the protocol handler at least one service response message from the at least one internet protocol stack, the response message including information relating to services available from wireless devices operating on the at least one channel of either the first or the second ad hoc wireless network; and program code in said computer readable medium for storing the information in a service table coupled to the protocol handler, on services indicated as available in the response message and on relationships between available services, wireless devices, and channels on the ad hoc wireless networks. - View Dependent Claims (12)
-
-
13. A method comprising:
-
receiving signals in a protocol handler in a wireless device, from a service discovery protocol module in the device, for enabling the device to query a plurality of wireless channels in an ad hoc network, to determine what services are available in the network; and controlling with the protocol handler, an IP protocol stack in the device, for sending service discovery queries over the plurality of wireless channels. - View Dependent Claims (14)
-
-
15. A method comprising:
-
receiving signals in a protocol handler in a wireless device, from a service discovery protocol module in the device, for enabling the device to advertise services over a plurality of wireless channels in an ad hoc network; and controlling with the protocol handler, an IP protocol stack in the device, for sending packets advertising the services over the plurality of wireless channels. - View Dependent Claims (16, 17)
-
-
18. A method comprising:
-
receiving link-local addressing signals in a protocol handler in a wireless device, from a service discovery protocol module in the device, for enabling the device to select a trial address at random for one or more of a plurality of channels in an ad hoc network; and controlling with the protocol handler, an IP protocol stack in the device, for sending packets containing the trial address over each of the plurality of wireless channels to test whether any other ad hoc wireless device within range on the same channel, uses the same trial address. - View Dependent Claims (19, 20, 21)
-
-
22. A method comprising:
-
receiving Multicast DNS signals in a protocol handler in a wireless device, from a service discovery protocol module in the device, for enabling the device to select a trial device name for one or more of a plurality of channels in an ad hoc network; and controlling with the protocol handler, an IP protocol stack in the device, for sending packets containing the trial device name over each of the plurality of wireless channels to test whether any other ad hoc wireless device within range on the same channel, uses the same trial device name. - View Dependent Claims (23, 24, 25)
-
-
26. A method, comprising:
-
receiving signals in a protocol handling module in a wireless device, from a service discovery protocol module in the device; commanding with the protocol handling module, a medium access control (MAC) layer in an IP protocol stack to perform WLAN scan in selected channels; prioritizing with the protocol handling module, service discoveries with peer devices that have a corresponding protocol handler indicated by their transmissions, before the protocol handling module interacts with other devices that do not have a corresponding protocol handler; running a service discovery phase with the protocol handling module, wherein service discovery occurs first in networks having peer devices that have a similar protocol handler; commanding with the protocol handling module, the medium access control (MAC) layer in the IP protocol stack to establish a WLAN connection; and selecting with the protocol handling module after the discovery phase, a target WLAN ad hoc network to which a WLAN connection is created or maintaining an existing WLAN connection to a target WLAN ad hoc network, said protocol handling module giving a higher priority to target WLAN ad hoc networks having devices with a corresponding protocol handling module. - View Dependent Claims (27, 28)
-
-
29. An apparatus, comprising:
-
a protocol handler coupled to a service discovery protocol module and at least one internet protocol stack configured for exchanging service discovery packets over at least one channel of an ad hoc wireless network; said protocol handler configured for receiving signals from the service discovery protocol module; a service table coupled to the protocol handler configured for storing information on relationships between available services, wireless devices, and channels on the ad hoc wireless network; said protocol handler configured for commanding the at least one internet protocol stack to perform WLAN scan in selected channels; said protocol handler configured for commanding the at least one internet protocol stack to establish a WLAN connection and perform WLAN service discoveries in selected channels during a discovery phase; said protocol handler configured for prioritizing service discoveries with peer devices that have a corresponding protocol handler, before the protocol handling module interacts with other devices that do not have one; said protocol handler configured for running a service discovery phase, wherein service discovery occurs first in networks having peer devices transmitting information indicating that the peer devices have a similar protocol handler; and said protocol handler configured for selecting, after the discovery phase, a target WLAN ad hoc network to which a WLAN connection is created or maintaining an existing WLAN connection to a target WLAN ad hoc network, said protocol handler configured for giving a higher priority to target WLAN ad hoc networks having devices with a corresponding protocol handler.
-
-
30. A computer program product, comprising:
-
a computer readable medium containing program code executable on a data processor; program code in said computer readable medium for receiving signals in a protocol handling module in a wireless device, from a service discovery protocol module in the device; program code in said computer readable medium for commanding with the protocol handling module, a medium access control (MAC) layer in the IP protocol stack to perform WLAN scan in selected channels; program code in said computer readable medium for prioritizing with the protocol handling module, service discoveries with peer devices that have a corresponding protocol handler indicated by their transmissions, before the protocol handling module interacts with other devices that do not have a corresponding protocol handler; program code in said computer readable medium for running with the protocol handling module, service discovery first in networks having peer devices that have a similar protocol handler during a discovery phase; program code in said computer readable medium for commanding with the protocol handling module, the medium access control (MAC) layer in the IP protocol stack to establish a WLAN connection; and program code in said computer readable medium for selecting with the protocol handling module after the discovery phase, a target WLAN ad hoc network to which a WLAN connection is created or maintaining an existing WLAN connection to a target WLAN ad hoc network, said protocol handling module giving a higher priority to target WLAN ad hoc networks having devices with a corresponding protocol handling module.
-
-
31. A method, comprising:
-
determining link local addresses common for all networks or channels for a discovery phase, using a protocol handler coupled to a service discovery protocol module and at least one internet protocol stack in a wireless device; recording information about services provided by the wireless device itself; detecting ad hoc networks formed by other devices having a similar protocol handler; prioritizing service discoveries with those other devices having a similar protocol handler before performing service discoveries with devices that do not have one; running a service discovery protocol with a similar protocol handler in one of said other devices; and providing network interface services to the IP stack and the service discovery protocol by mapping service discovery protocol messages from the other device'"'"'s similar protocol handler to service discovery protocol messages.
-
-
32. An apparatus, comprising:
-
a protocol handler in a wireless device configured for receiving signals from a service discovery protocol module in the device, the protocol handler further configured for enabling the device to query a plurality of wireless channels in an ad hoc network, to determine what services are available in the network; and an IP protocol stack in the device controlled with the protocol handler, the IP protocol stack configured for sending service discovery queries over the plurality of wireless channels. - View Dependent Claims (33)
-
-
34. An apparatus, comprising:
-
means for exchanging service discovery packets over at least one channel of an ad hoc wireless network; means for storing information on relationships between available services, wireless devices, and channels on the ad hoc wireless network into a service table; means for receiving a service discovery protocol inquiry message from a service discovery protocol module and transferring one or more inquiry messages corresponding to the received service discovery protocol inquiry message to at least one internet protocol stack for respective transmission over the at least one channel of the ad hoc wireless network; means for receiving at least one service response message from the at least one internet protocol stack, the message including information relating to services available from wireless devices operating on the at least one channel of the ad hoc wireless network, and storing the information in said service table about the services indicated as available in the response message.
-
Specification