AD-HOC NETWORK AND GATEWAY
BACKGROUND OF THE INVENTION
Technical Field of the Invention This invention relates to telecommunication systems and, more particularly, to an ad-hoc network and a gateway that provides an interface between external wireless IP networks and devices in the ad-hoc network. Description of Related Art
Around the world, people are connecting more than ever. Cellular phones, personal digital assistants (PDAs), and Internet-enabled computers are commonplace in both businesses and homes. Even where a formal network is not recognized, users want their devices to communicate, and they want easy access to the services made possible by network technology. For example, there are networks in the home connecting audio/visual equipment such as televisions and stereo equipment to home office computers. There are also devices to control networks such as security surveillance systems and temperature-control thermostats.
A problem arises in today's environment because traditional networks are much too complex to set up, expand, and manage. For example, adding hardware or software to an office environment usually requires a network administrator to load drivers and configure systems. Even in a home environment, connecting all of the components of a home entertainment system can be a daunting task for the average consumer. Networks today are also too brittle and inflexible. A slight change in a network can cause havoc that can be extremely difficult to fix. From the consumer's perspective, what is needed is a simple way to connect digital devices into impromptu, expandable networks for immediate access to a wide variety of services.
New technologies are being developed to make it easier to network multiple devices. Bluetooth, for example, is a wireless communication technology for data and voice. It is based on a low-cost short-range radio link that operates in the unlicensed ISM band at 2.4 GHz. Bluetooth is a layer 1 (physical layer) and layer 2 (data link layer) technology that allows one universal short-range radio link to replace many proprietary cables that are currently required to connect one device to another. The
physical layer provides transmission of signals and the activation and deactivation of physical connections, while the data link layer may include signal synchronization, error correction, sequencing, and flow control. This layer may also provide a data transmission link across one or several physical connections. Bluetooth, however, does not have any knowledge of the upper level network, transport, session, or application layers.
The Bluetooth wireless technology allows users to make effortless, wireless, and instant connections between various communication devices such as mobile phones and desktop and laptop computers. Transfer of both voice and data is real- time, and the transmission mode provides security of data and protection from interference. A small chipset is utilized to implement Bluetooth radio technology in a communication device. Two power levels are provided, a lower power level that is sufficient to cover the area within a single room, and a higher power level that can cover a medium range such as within a home. Each chipset includes software controls and identity coding that ensure that only those devices preset by the user can communicate over the radio link.
A Piconet consists of a collection of devices connected via Bluetooth technology in an ad-hoc fashion. A Piconet may comprise as few as two connected devices, such as a computer and a printer, and may comprise as many as eight connected devices (a "master" device and seven "slave" devices). Both point-to-point and point-to-multipoint connections are supported. When first establishing a Piconet, one device acts as a master and the other devices act as slaves for the duration of the Piconet network establishment. Thereafter, the devices behave as peer units. All devices in the same Piconet have priority synchronization, but other devices can be set to enter at any time. Multiple independent and non-synchronized Piconets form a
Scatternet.
A JINI system is a Java-technology-centered, distributed software system designed for simplicity, flexibility, and federation. The JINI architecture provides mechanisms for machines or programs to enter into a federation where each machine or program offers resources to other members of the federation and uses resources as needed. The design of the JINI architecture exploits the ability to move Java
programming language code from machine to machine, and it unifies, under the notion of a service, the user, the software, and the hardware components of the machines themselves.
JINI connection technology simplifies the processes of establishing, configuring, and controlling a network. From the user's perspective, JINI technology makes connecting to new levels of services as simple as turning on a light switch. From the traditional service provider's perspective, JINI connection software simplifies delivery and management of services. When a PC connects to a Local Area Network (LAN), for example, it uses an IP multicast mechanism to find a server. The server then assigns an IP address to the PC and provides the address of a JINI Lookup Service
(LUS). The LUS contains a list of available services provided by other devices on the network. The LUS is also used by the PC to publish the services that it can provide to other devices on the network. Services are invoked by transferring a small amount of code written, for example, in Java code. Devices announce not only value-added services, but also their attributes and capabilities to the network. JINI technology
"communities" are resilient, and adapt very quickly to changes as users come and go.
The Session Initiation Protocol (SIP) is an application-layer control protocol that can establish, modify, and terminate sessions or calls. These multimedia sessions include multimedia conferences, distance learning, Internet telephony, and similar applications. H. 323 is another call control protocol for IP telephony defined by the
International Telecommunications Union (ITU).
Utilizing existing technologies, the following scenario can be realized. A user creates an ad hoc network based on Bluetooth technology (i.e., a Bluetooth Piconet). There are three Bluetooth devices in the Piconet: a third generation Internet Protocol (3G IP) mobile telephone, a Personal Digital Assistant (PDA), and a multimedia laptop computer. The mobile phone is the master unit, and the PDA and laptop are slaves to the mobile phone. Neither the PDA nor the laptop have a cellular radio modem or call control client software (H.323 or SIP) installed. Thus, neither the PDA nor the laptop know anything about the cellular IP network. Therefore, a problem arises when the user wants to establish a video call from his laptop.
Today, the only way to solve this problem is to insure that each device contains
a cellular radio modem, a Bluetooth chipset, and a call control client. Bluetooth radio units and baseband are very inexpensive when compared to cellular radio modems. Consequently, it is inappropriate, expensive, and cumbersome to install a cellular radio modem in every device in the Bluetooth Piconet. Furthermore, loading the right call control mechanism (H.323 or SIP client) into a PDA or laptop requires the user to have a higher level of technical knowledge regarding the characteristics of the 3G wireless Internet network.
Additionally, it is inefficient from the resource point of view to require loading a call control client such as H.323 (about 4 MB) in multiple devices on the Piconet. Moreover, even if every device had its own cellular radio modem and call control client, the IP address scheme in the Piconet will certainly be different than the addressing scheme as currently used in wireless IP networks such as the General Packet Radio Service (GPRS).
There are no known prior art teachings of a solution to the deficiencies and shortcomings discussed above. It would be advantageous, therefore, to have an ad-hoc network that can be efficiently, easily, and inexpensively established for a plurality of devices, and a gateway that provides access through the ad-hoc network to external wireless IP networks. The present invention provides such a network and gateway.
SUMMARY OF THE INVENTION
In one aspect, the present invention is a gateway for an ad-hoc network that provides a call-control interface between an external wireless Internet Protocol (IP) network and devices in the ad-hoc network. The gateway includes a first interface toward the ad-hoc network that establishes the gateway as a call-control server for client devices in the ad-hoc network, and a second interface toward the wireless IP network that establishes the gateway as a call-control client for a server in the wireless IP network. The ad-hoc network may be a Bluetooth Piconet, and the gateway is preferably implemented in a mobile phone. The first interface may include a private IP address recognized in the Piconet while the second interface may include a public IP address recognized in the wireless IP network.
In another aspect, the present invention is a Bluetooth Piconet comprising a
plurality of devices having Bluetooth chipsets, the devices being linked by a wireless J-P network based on Bluetooth technology. The Piconet also includes a JINI Lookup Service (LUS) for making services available to the plurality of devices in the Piconet, and a gateway which may be implemented in a mobile phone that provides a call- control interface between an external wireless IP network and the devices in the
Piconet.
In another aspect, the present invention is an integrated network comprising a wireless IP network and a Bluetooth Piconet. The wireless J-P network includes a call- control server and a Home Subscriber Server (HSS) that stores location information for mobile subscribers, and stores bearer capabilities and application capabilities for
J-P devices registered with the network. The Bluetooth Piconet includes a plurality of devices having Bluetooth chipsets that are linked by a Bluetooth radio link. The Piconet also includes a JINI LUS for making services available to the plurality of devices in the Piconet, and a gateway that provides a call-control interface between the wireless IP network and the devices in the Piconet.
BRIEF DESCRIPTION OF THE DRAWINGS
The invention will be better understood and its numerous objects and advantages will become more apparent to those skilled in the art by reference to the following drawings, in conjunction with the accompanying specification, in which:
FIG. 1 (Prior Art) is an illustrative drawing of an existing Bluetooth ad-hoc network;
FIG. 2 is an illustrative drawing illustrating a protocol stack for a Bluetooth Piconet that has been extended into an IP wireless LAN implementing JINI and Java technologies in accordance with the teachings of the present invention;
FIG. 3 is an illustrative drawing of an ad-hoc network utilizing Bluetooth, IP, and JINI technologies in accordance with the teachings of the present invention to enable the use of a gateway mobile phone; and
FIG. 4 is a simplified functional block diagram of a connection between a laptop computer and a mobile phone utilizing the ad-hoc network of FIG. 3.
DETAILED DESCRIPTION OF EMBODIMENTS
The present invention relies on several technologies. First, a wireless IP network is established between devices utilizing Bluetooth technology. Then, JINI (Java) technology is utilized to publish and share services between the devices, and to establish a client/server relationship between the devices and one of the devices having a cellular radio modem and a call control client. Finally SJP and/or H.323 are utilized to implement the call control client. The use of SIP is preferred, but the invention may utilize H.323 technology as well.
FIG. 1 is an illustrative drawing of an existing Bluetooth ad-hoc network 10. A laptop computer 11 , a printer 12, and an office telephone 13 are each equipped with a Bluetooth chipset that enables them to communicate over the Bluetooth radio link 14. The office phone must contain an H.323 or SIP client connected via Asychronous Digital Subscriber Line (ADSL) or cable modem.
FIG. 2 is an illustrative drawing illustrating a protocol stack for a Bluetooth Piconet that has been extended into an IP wireless LAN implementing JINI and Java technologies in accordance with the teachings of the present invention. The layers include a physical layer 15 and a link layer 16 which, together, are provided in the present invention by the Bluetooth Piconet. On top of that, a network transport layer 17 is implemented using the Internet Protocol (IP). After an operating system layer 18, a Java technology layer 19 and a JINI technology layer 20 implement the JINI technology providing the capability for an application 21 to discover, join, and download services 22 from a JINI LUS.
In the present invention, a mobile phone is equipped with a Bluetooth chipset. Thus, the mobile phone can simultaneously be connected to a cellular network and to an ad-hoc Buletooth Piconet. Additionally, the Piconet is extended into an IP wireless
LAN in order to utilize JINI technology for the sharing of services between devices in the Piconet. Moreover, the mobile phone includes an interface/Application Programming Interface (API) which is an abstraction of a SIP and/or H.323 call control client. Just prior to execution, this API is downloaded to the Bluetooth device involved in an external wireless call in order to have the device behave as a slave device toward the mobile phone which is the master. The API is downloaded only to
the device involved in the call since the other Bluetooth devices that are not making the call do not need this particular code. The present invention also anticipates the fact that many consumer products will be modified to provide multimedia and telephony capabilities. Multimedia laptop computers, for example, will soon contain microphones, speakers, and video cameras. PDAs will also have similar features and potentially act as hands-free phones, etc.
FIG. 3 is an illustrative drawing of an ad-hoc network 30 utilizing Bluetooth, IP, and JINI technologies in accordance with the teachings of the present invention to enable the use of a gateway mobile phone. A laptop computer 31, printer 32, and mobile phone 33 are all Bluetooth-compliant and JINI/Java-capable, enabling JINI
APIs to be transported between the devices utilizing the Bluetooth radio link 34.
The present invention positions the mobile phone 33 as a gateway between the ad-hoc network and a 3G wireless IP network 35 such as the General Packet Radio Service (GPRS) network. The mobile phone receives IP packets from the GPRS network through its public IP address, and forwards the received packets to the private
IP address of the destination device in the Piconet. It also translates in the other direction for data going out of the Piconet to the GPRS network. With this invention, any Bluetooth-compliant device in a Piconet that is multimedia capable is able to establish a call as long as one of the devices in the Piconet (e.g., the mobile phone) contains a cellular radio modem and a call control client, and is connected to the wireless EP network. The cellular radio modem may be, for example, a Wideband Code Division Multiple Access (WCDMA) modem, an EDGE radio access modem, or equivalent. Any Bluetooth-compliant device entering into the Piconet utilizes JINI technology in order to discover and publish lookup services that the device can receive or offer to other devices in the Piconet.
FIG. 4 is a simplified functional block diagram of a connection between two devices such as the laptop computer 3 land the mobile phone 33 utilizing the ad-hoc network 30 of FIG. 3. The present invention establishes three new interfaces or Application Programming Interfaces (APIs) between the slave device placing the call and the master mobile phone, and enhances the H.323 and/or SIP clients in the mobile phone to act as a server application. The interfaces are preferably implemented as JINI
services. The first interface/ API is an abstraction of a SIP and/or H.323 call control client 41. This interface enables any of the Bluetooth devices on the Piconet to behave as a slave device toward the mobile phone which is the master. This allows the establishment of voice calls in a simple fashion regardless of the. call control mechanism supported in the mobile phone or network. The second interface/ API is a SIP client 42 which enables the use of the full SIP client capabilities. The SIP client interfaces via SIP signaling with a SIP proxy server 43 in the 3G wireless IP network. The third interface/API is an H.323 client 44 which enables the use of the full H.323 client capabilities. The H.323 client interfaces via H.323 signaling with an H.323 gatekeeper 45.
Utilizing the JINI Lookup Service (LUS) 46, the gateway mobile phone 33 must "publish" in the Bluetooth Piconet, the call control services that it offers. The other Bluetooth devices on the Piconet perform an add-in protocol called "discovery and join" to locate the LUS and upload all of its services' interfaces, including the call control services. The H.323 and/or SIP clients in the mobile phone are enhanced to behave as a server application in order for Bluetooth compliant devices to talk to other devices that contain a SIP and/or an H.323 client.
In addition to defining a set of protocols for discovery, join, and lookup, JINI technology also defines a leasing and transaction mechanism to provide resilience in a dynamic networked environment. The technology and services architecture is powerful enough to support a fully distributed system on a network of workstations, while small enough to build a community of devices out of simple devices such as home entertainment devices or mobile phones.
Devices in a network employing JINI technology may be tied together using Java Remote Method Invocation (RMI). By using the Java programming language, a JINI connection architecture is secure. The discovery and join protocols, as well as the lookup service depend on the ability to move Java objects, including their code, between Java virtual machines.
Alternatively, JINI call control APIs may be transmitted to and from the call control server in the mobile phone with the Internet Inter-ORB Protocol (HOP). An
ORB is an Object Request Broker utilized in the Common Object Request Broker
Architecture (CORBA). CORBA is a strategy, a set of specifications, an infrastructure, and a set of tools that enables reusable programming objects to be used by many applications in a platform-independent manner. The architecture provides general services and request and response capabilities at a low level, independent of the upper level architecture. The distribution of a variety of programming languages is supported.
Fixed telecommunications protocols such as ANSI-41 or SS7 have a problem when a new parameter is added to an existing message, or a new message is added because existing applications may not be able to handle the changes. The applications then do not work when a node in the network is updated with the latest revision of the protocol. As noted above, the present invention overcomes this problem by using a solution that is more closely aligned with the approach developed by the computer industry. The solution is more API-centric in that, rather than defining a large set of protocols, an API is published toward an application, and the application uses the API as a client. Of course, the API, which may be a small piece of Java code, is transmitted as messages over the wire; but rather than having a large number of distinct messages, the present invention uses a call control client such as a SIP client in the mobile phone that can only generate a few generic messages such as Get, Send, Receive, etc. In the present invention, a JINI call control API 47 is published by the mobile phone 33 and enables the applications 21 in the laptop and other devices in the Piconet to make use of the facilities of, for example, the SIP client 42 in the mobile phone. The JINI call control API is an abstraction of both SIP and H.323 since at this time it is not known whether SIP or H.323 will be the accepted standard. Once a standard is determined, the API may be constructed as an abstraction of one or the other, or an equivalent call control protocol.
Assuming that the preferred standard is SIP, when the user desires to send a call, he is actually instructing the mobile phone to send a SIP INNITE message, which is the initial SIP message to establish a call. The mobile phone, regardless of whether it supports SIP or H.323 generates the right sequence of messages to SIP the call. This approach is substantially simpler than the direct utilization of these protocols, and it
decouples all the applications from the underlying infrastructure.
Many useful network activities are possible with the network architecture of the present invention. For example, a user with a Bluetooth-compliant mobile phone may walk into a room that has a printer and a laptop computer, both of which are also Bluetooth-compliant. However, in this example, there is no WCDMA or EDGE radio access modem in the laptop. Regardless of this fact, with the present invention, he can still print a file from the laptop on the printer, and can also establish a voice or video call from the laptop. Today, the user would have to purchase a SIP client and install the SIP client in the laptop in order to do so. Since installing the SIP client involves configuring the laptop to get a static or dynamic J-P address, and many other specialized tasks, it is beyond the capability of most consumers.
In the present invention, the laptop uses the mobile phone as a gateway toward the wireless IP network. When all these Bluetooth devices are located within approximately 10 meters of each other for a low power Bluetooth Piconet, or within approximately 100 meters of each other for a high power Bluetooth Piconet, the mobile phone connects to the Bluetooth Piconet as well as to the wireless network. At that point, all of the devices on the Piconet publish the services they can provide to the other devices through the JINI LUS. If a visitor with a communication device such as a PDA comes to the office location and wants to send some e-mail, but does not have a connection, he may register with the Piconet and use the call control client that the host's mobile phone is providing. He can then send and receive his e-mail through the host's mobile phone. A password may be required to access the services available in the Piconet.
The services menu on the laptop indicates all services available on the Piconet. When the user places a call from the laptop, the SIP client in the mobile phone sends an API to the laptop that is used to route the call through the mobile phone to the wireless IP network. The SIP client in the mobile phone behaves as a server application for the Piconet, and another API is downloaded to the laptop in order to connect to the server. The phone acts as a server application toward the laptop, and acts as a client and gateway toward the wireless IP network.
In the preferred embodiment, the mobile phone has two IP addresses: a public
IP address recognized by the wireless IP network such as an external GPRS network, and a private IP address recognized by the other devices on the Piconet. The use of private IP addresses on the Piconet is beneficial in two ways. First, security is enhanced on the Piconet since outside entities do not know the private IP address of each device and therefore cannot gain direct access to those devices. Second, the use of private IP addresses helps with the problem of the depletion of public IP address. The mobile phone has a radio access modem and a Bluetooth chipset, so it has two interfaces. The two physical interfaces may appear with the same logical IP address, but this is not preferred since the other Bluetooth devices would then require public IP addresses as well.
In the wireless IP network 35, the existence of the laptop 31 is not known. The only IP address that is known is the public IP address of the mobile phone 33 which is published in the wireless IP network. All incoming IP packets toward the mobile phone that are targeted toward the laptop application 21 are received on the public DP address of the mobile phone and are then pushed to the private J-P address of the appropriate device (the laptop) on the Bluetooth Piconet.
Several potential problems involving public and private EP addresses are resolved by the API that is sent from the SIP client in the mobile phone to the laptop. First, the use of private IP addresses in public IP networks can cause problems since the assignment of private IP addresses is not controlled at a higher level, and duplicate private IP addresses can be assigned to different parties. In the present invention, the public IP address of the mobile phone is used for communications in the public network. An additional problem may arise if a National Access Translator (NAT), as proposed by the Internet Engineering Task Force (IETF), is used in an attempt to overcome the problem of duplicate private IP addresses. The NAT device temporarily provides a networked device with a global public IP address when the device desires to communicate outside of its private network. However, in real-time applications such as Noice-over-D? (NoD?), the IP addresses of the parties are contained in the payload itself in addition to the packet headers. The situation may arise, therefore, when the NAT device changes the source IP address in the header to a temporary public IP address, but the payload still identifies the source IP address as the private
IP address. Thus, there is an IP address mismatch that creates problems for real-time applications such as NoIP. In the present invention, the API ensures that this mismatch does not occur.
The invention is not limited to wireless office applications, but has many other potential uses. For example, a user may have a Bluetooth-compliant screen phone in his house, and the phone is connected to a cable modem. When he enters his house with his Bluetooth-compliant mobile phone, the mobile phone recognizes that there is already a Bluetooth device on the Piconet that enables the user to place calls. The mobile phone may then disconnect from the external wireless network while remaining connected to the Bluetooth Piconet. Thereafter, if the user places a call with his mobile phone from within his house, the mobile phone behaves as a cordless phone that is linked to the screen phone as a base unit. Therefore, the call goes through the screen phone that is connected to the cable or DSL modem. Thus, the Piconet enables the call to be placed in the most cost-effective manner. Upon exiting the house, the mobile phone loses the Bluetooth connection and re-connects to the external wireless network.
The mobile phone may connect to multiple independent Piconets since each Piconet is limited to eight devices on the network. This configuration requires that the mobile phone utilize a different IP address for each Piconet. Due to the problem of the depletion of public IP addresses, these addresses are preferably private IP addresses, although this is not required.
The present invention also provides a sending device with the capability to determine the terminal class and terminal configuration (i.e., bearer capability and application capability) of the target device. The sending device can then intelligently select the correct target device to receive a particular application. For example, if a first user wants to send both voice and color video to a second user, the connection should not be made to a mobile phone which may only have a 2-line, non-color display. If a multimedia laptop computer is also connected on a Piconet with the mobile phone, the call should be directed to the laptop instead. In 3G wireless IP networks, the Home Location Register (HLR) 48 is complemented by a Home Subscriber Server (HSS) 49. The HSS adds capabilities to
the location register and subscriber database in the HLR making it an IETF Authorization, Authentication, and Accounting (AAA) Server. In the present invention, each time the user of the Piconet registers an IP device with the Piconet, the terminal class and terminal configuration (bearer capability and the application capability of the IP device) are passed to the HSS. The application capability indicates, for example, whether the device is a 1/4-NGA screen or a laptop with full VGA screen, etc. When a party calls the mobile phone which is registered in the Bluetooth Piconet, the HSS returns the public IP address of the mobile phone to the caller along with an indication of the terminal classes and terminal configurations of the devices on the Piconet. The caller can then pick the device ahead of time that makes sense for the intended application.
The present invention may also be used to connect a plurality of devices such as Bluetooth-compliant home appliances in a Piconet that is connected through a telephone to an IP -based network such as the Internet. Many new appliances are digitally controlled, and when the homeowner is away from home, he can call the network and remotely control any of the appliances on the Piconet. Additionally, repairmen can call the Piconet and remotely diagnose problems that the homeowner has reported, or remotely download new software versions into the digital control systems of the appliances. If the telephone is equipped with a WCDMA modem or EDGE radio access modem, the connection can be made over a wireless IP network.
Once again, the telephone includes a SD? or H.323 call control client which is enhanced to behave as a server application for the Bluetooth-compliant devices on the Piconet.
Additional applications for the present invention are found in the automotive industry. Automobiles already have dozens of micro-processors imbedded in various control systems, and the number of microprocessors is expected to grow significantly in the future. With the present invention, automobile manufacturers can implement a Scatternet in every car consisting of multiple independent Piconets. A Bluetooth- compliant 3G mobile terminal can also be implemented in each car to act as a gateway for the other IP devices in the car to access the wireless IP network. This would allow manufacturers to perform remote diagnostics and software upgrades.
It is thus believed that the operation and construction of the present invention will be apparent from the foregoing description. While the method, apparatus and system shown and described has been characterized as being preferred, it will be readily apparent that various changes and modifications could be made therein without departing from the scope of the invention as defined in the following claims.