A COMMUNICATION SYSTEM THAT PROVIDES ACCESS QUEUING FOR COMMUNICATION SERVICES

Abstract: A communication system (10) provides access to communication services used by a plurality mobile devices (12). A host processor (302) manages wireless service access to the mobile devices (12) over one or more communication links. A link manager (202) manages the one or more links in response to commands from the host processor (302). The system (10) includes an access queue (306) that queues service access requests from a group of mobile devices (12). The host processor (302) grants and terminates service access to the mobile devices in the group of mobile devices based on a predefined access policy that, for example, corresponds to the attributes of a service type and/or a subscription to the service by a user.

Description: A Communication System that Provides Access Queuing For Communication Services Field of the Invention In general, the present invention relates to the field of commiinication systems, more particularly, to communication systems that provide communication services to mobile devices. Background of the Invention Communication systems that provide services over wireless links are known. One such system is specified by Bluetooth that supports both asynchronous and synchronous services, where the services are offered to the mobile devices over point-to-point or point- to-multipoint communication links. Under Bluetooth specification, a Service Discovery Protocol (SDP) defines the procedure for locating available services provided by or available through the system. More specifically, SDP provides the means for client applications, which may be running on the mobile devices, to discover the existence of services provided by server applications as well as the attributes of those services. The attributes of a service include the type or class of service offered and the mechanism or protocol information needed to utilize the service. In order to provide point-to-point or point-to-multipoint communication links, Bluetooth uses a combination of circuit and packet switching. A point-to-point link is shared between only two Bluetooth-enabled mobile devices, whereas a point-to-multipoint link is shared among several mobile devices. Bluetooth can support one asynchronous data channel, up to three simultaneous synchronous voice channels, or a channel that simultaneously supports asynchronous data and synchronous voice. Under the Bluetooth specification, two or more mobile devices that share the same channel form a piconet, and multiple piconets with overlapping coverage areas form a scatternet. One mobile device acts as the master device of the piconet, whereas the other mobile device(s) acts as slave device(s). Thus, each piconet can only have a single master device. However, slave devices can participate in different piconets on a time-division multiplex basis. In addition, a master device in one piconet can be a slave device in another piconet. Communication resources of the Bluetooth system can support up to seven active slave devices in a piconet. At times, however, the number of Bluetooth mobile devices requesting access to system services may exceed the available communication resources of the system. Sharing communication resources, such as radio frequency channels or bus bandwidth, amongst a number devices, e.g., processing units, is known. Fairness rules have been applied to share communication bus bandwidth amongst multiple processors for transfer of data. Also known are conventional multi-tasking computer systems that share limited resources amongst a plurality of applications in synchronous or asynchronous manner. In general, a multitasking operating system, such as Windows NT, is designed to share the processing power of one or more processing units in accordance with a predefined rule. For example, when running one or more applications under Windows NT in a single- or multi-processing environment, the operating system may allocate the processing power to the applications in a round robin fashion, giving each application equal access to the processing resources. It is also known to allocate such resources based on priorities of the applications. It should be noted that conventional computer systems that share processing power amongst application or bus bandwidth amongst processing devices do so without terminating any of the applications or abandoning an ongoing data transfer over a bus. Because a Bluetooth system has a limited capacity to provide access to communication services over its supported links, the system allows some of the slave devices to remain locked to the master device in a so-called "parked" state. The parked slave devices cannot be active on the channel, but remain synchronized to the master device. Both for active and parked slave devices, the channel access is controlled by the master device. Under this arrangement, once a communication resource of the system becomes available, a parked mobile device is activated to access a requested service. However, until activated, this arrangement deprives the parked mobile devices from enjoying the benefits of the provided services. Thus, there exists a need to allocate the available communication resources of such system or similar systems in a manner that allows the mobile devices to take advantage of the available services Brief Description of the Drawings FIG. 1 is a block diagram of an exemplary system that utilizes the present invention. FIG. 2 is a block diagram of a Service Discovery Protocol (SDP) that is used in the system of FIG. 1. FIG. 3 is a block diagram of a network access point that operates in accordance with the present invention. FIG. 4 is a flow chart of a method for providing service access to mobile devices in accordance with the present invention. Detailed Description of the Invention According to the present invention, a plurality of mobile devices access offered services over a communication system. A host processor manages service access to the mobile devices over one or more wireless asynchronous connectionless links. A link manager manages the one or more wireless asynchronous connectionless links in response to commands from the host processor. The system of the invention includes an access queue that queues service access requests from a group of mobile devices. The host processor issues commands that grant and terminate service access to all or each of the mobile devices in the group of mobile devices in accordance with a predefined access policy. For example, the predefined access policy may correspond to the attributes of a service type and/or a subscription to the service by a user. According to some of the more detailed features of the present invention, access for an ongoing service by one of the mobile devices in the group of mobile devices is terminated in accordance with a predefined service termination policy. For example, when one of the mobile devices in the group of mobile devices requests service access, the request is granted based on a priority assigned to a response to the requested service. If a response to a request for service has an assigned priority that is higher than an ongoing service, the ongoing service may be terminated so that the response may be communicated to the requesting mobile device based on the assigned priority. Thereafter, the service access to the terminated service may be resumed in accordance with a predefined service resumption policy. According to other more detailed features of the invention, the mobile devices can either request a priority status in the access queue or request to be periodically informed of their priority in the access queue. Further, a mobile device can be informed about availability of service, while other mobile devices in the access queue are being serviced. Another aspect of the invention relates to a method of accessing communication services that require receiving service access requests from a group of mobile devices. The received access requests are queued and service access is granted to all of the mobile devices in the group of mobile devices based on a predefined access policy. Access to an ongoing service by one of the mobile devices in the group is terminated in accordance with a predefined service termination policy, and the terminated ongoing service is resumed in accordance with a predefined service resumption policy. At least one of the predefined access policy, service termination policy and predefined service resumption policy is dependent on communication link resources of the communication system, for example, the available communication channels of the system. In one exemplary embodiment, the wireless communication channels include a predefined number of time-slots within a time frame of a radio frequency channel. Further, at least one of the predefined access policy, service termination policy and predefined service resumption policy corresponds to the attributes of a service type and/or the attributes of a subscription to a service by a user. Referring to FIG. 1, a system 10 that advantageously implements the present invention is shown. The system of the invention is preferably implemented over a communications network that provides wired or wireless links for one or more mobile devices 12 that operate within coverage areas 14. One such wired communications link is provided over the Internet 16, which is a collection of interconnected (public and/or private) networks that are linked together by a set of standard protocols (such as WAP, or TCP/IP) to form a global, distributed network. In this way, service provider servers 26 may provide various mobile-device services via the Internet 16. Various wireless links 17 that support defined protocols may be used in connection with the present invention. Examples of such protocols include those defined by Bluetooth, IEEE 802.11 , GSM, IS- 136, and IS-95. In the preferred embodiment, the system 10 is implemented based on the Bluetooth System, as disclosed in Specification of the Bluetooth System (vl.B December 1 st 1999), which is hereby incorporated by reference. Although Bluetooth is well understood the operation of one such system is described to the extent necessary to enable on of ordinary skill in the art to make and use the present invention. Generally, a Bluetooth system provides short-range radio links over an unlicensed ISM band within which information is communicated using shaped binary frequency modulation to provide an information symbol rate of 1 Ms/s. The Bluetooth system uses slotted channels in the form of time slots. On each channel, information is exchanged through packets that are transmitted on different hopping frequencies. A packet nominally covers a single slot, but can be extended to cover up to five slots. As shown in FIG. 1, the system 10 consists of a radio module 18, a link controller 20, and a link manager 22 that interfaces via a host processor 24 which interface with the link manager 22 through a Host Controller Interface (HCI). The radio module 18 operates in the 2.4 GHz band to provide the physical medium over which mobile devices 12 communicate with the system 10. The band has a 83.5 MHz width that contains 79 RF channels that are spaced 1 MHz apart from each other. Each channel is represented by a pseudo-random hopping sequence through the 79 RF channels. The hopping sequence is unique for each piconet and is determined by the device address of a corresponding master device, with the clock of the master device setting the phase in the hopping sequence. The link controller 20 carries out the baseband protocols and other low-level link routines and includes hardware and software parts that perform baseband processing and manage physical layer protocols as well as ARQ-protocol and FEC coding. The link controller 20 controls two types of links: Synchronous Connection-Oriented (SCO) links, and Asynchronous Connection-Less (ACL) links. The SCO link, which typically supports time-bounded information like voice, is a point-to-point link between a master device and a single slave device in a piconet. A master device can maintains up to three SCO links to the same slave device or to different slave devices using reserved slots at regular intervals that form circuit-switched like connections. A slave device can support up to three SCO links from the same master device or two SCO links if the links originate from different master devices. Because SCOs are synchronous links, they do not support packet transmissions. In contrast, the ACL link is a point-to-multipoint link that supports packet transmissions. An ACL link is established between a master device and all slave devices that participate on a piconet. In the slots not reserved for the SCO link(s), the master device can establish an ACL link on a per-slot basis to any slave device, including the slave device(s) already engaged in an SCO link. Between a master device and a slave device, however, only a single ACL link can exist. ACL packets not addressed to a specific slave device are considered as broadcast packets and are read by every slave device. The host processor 24 interfaces with the link manager 22 through a Host Controller Interface (HCI). The HCI provides a command interface to the link manager 22, and access to hardware status and control registers. The HCI is a subset of the host processor 24 and is responsible for communications with the link manager 22. Using an HCI firmware 25, which is a part of the host processor 24, this interface provides a uniform method of accessing the baseband capabilities. The HCI firmware 25 implements the HCI commands for the system hardware by accessing baseband commands, link manager commands, hardware status registers, control registers, and event registers. The host processor 24 utilizes link policy commands controlled by the HCI to manage traffic in a localized network. The localized networks can be, for example, a Bluetooth piconet, and/or scatternet. Other examples of localized networks that utilize the present invention include those specified by IEEE, under standard 802.11, which is hereby incorporated by reference. Several layers may exist between an HCI driver on the host 24 and the HCI firmware 25 in the system hardware. These intermediate layers, known as the Host Controller Transport Layer, provide the ability to transfer data without intimate knowledge of the data. HCI events are used for notifying the host processor 24 when something occurs. Once the host processor discovers that an event has occurred, it parses the received event packet to determine the nature of the event. For example, the host processor 24 uses the HCI events to detect a service request that is generated by a mobile device 12. Referring to FIG. 2, a block diagram for supporting a Service Discovery Protocol (SDP) in the system of FIG. 1 is depicted. The SDP is supported by the service provider 26, which runs a suitable server application, while the mobile devices 12 run corresponding client applications. The SDP defines the protocol for locating available services provided by or available through a service provider. The SDP provides for discovery of a server application and the attributes of those services contained in service records by a client application. For providing services in accordance with this embodiment of the invention, a SDP server 202 and a mobile SDP client application 204 communicate with each other. . The SDP server 202 maintains a list of service records 208 that uniquely describe the characteristics of the services associated with the server. In this way, a mobile client may retrieve information from the service records maintained by the SDP server by issuing an SDP or client service request 212. In the case of an SDP Service Search request, an SDP Service Search response is returned with an SDP or server response 214 providing a list of all available services that meet the search pattern provided in the request. A single device may function both as an SDP server and as an SDP client. If multiple applications on a device provide services, an SDP server may act on behalf of those service providers to handle requests for information about the services that they provide. Similarly, multiple client applications may utilize an SDP client to query servers on behalf of the client applications. The set of SDP servers that are available to an SDP client can change dynamically based on the RF proximity of the servers to the client. When a server becomes available, a potential client must be notified by a means other than SDP so that the client can use SDP to query the server about its services. Similarly, when a server leaves the proximity area or becomes unavailable for any reason, there is no explicit notification via the service discovery protocol. However the client may use SDP to poll the server and may infer that the server is not available if it no longer responds to requests. Referring to FIG. 3, a block diagram of a system that operates in accordance with the present invention is shown. A host processor 302 uses the link policy commands to control service access to mobile devices 12 that form a piconet 303 (or scatternet with other mobile devices) via an access point 304. In the exemplary embodiment, the access point 304 includes the radio module 18, link controller 20, link manager 22, and HCI of FIG. 1. Based on the status of mobile devices 12 in the piconet 303 (or scatternet), the host processor 302 can set the link policy commands to several modes. The modes imposed by the host processor 302 affects how the link manager manages the piconet. The modes can be, for example, a hold mode, a sniff mode, and a park mode. The host processor 302 interfaces with the Internet 16 using an I/O 308 via a well known interface 312, such as the Ethernet. The host processor also controls the access point 304 and the radio module via a physical interface 310, such as USB. Because the piconet can only support a finite number of mobile devices, the present invention uses an access queue 306, which in an exemplary embodiment is a FIFO queue, for queuing mobile devices that exceed the number of allowable devices in the piconet. If, for example, a device 12 initiates an access request over an ACL, the host processor 302 detects the event and places the device in the back of the access queue 306, where it enters the park mode. The park mode is a low power state, when the parked device does not participate in the piconet, but remains synchronized to the piconet. While in the park mode, the mobile device 12 is active for a short time interval called a beacon instant. During the beacon instant, the device can be granted access to the piconet by a broadcast signal from the master device of the piconet. After the device is placed in the park mode, the host processor 302 determines the number of active devices in the piconet. If the number of devices in the piconet does not exceed the number of allowable devices, the host processor 302 initiates a link policy command called exit park mode. The exit park mode command switches the device from park mode to active mode, which allows the device to participate in the piconet 303. The host processor 302 then increments an internal register to maintain a count of the number of active devices in the piconet 303. It would be appreciated that although the present invention is described in connection with the park mode as specified by the Bluetooth specification, similar modes as specified by other standards, such as IEEE 802.11 may also be used to implement the present invention. In accordance with the invention, if the number of devices 12 in the piconet exceeds the number of allowable devices, the host processor 302 grants service access to all of the mobile devices in a group of mobile devices 12 based on a predefined access policy that defines the criteria for terminating and resuming an ongoing service. In one exemplary embodiment, the predefined access policy may be dependent on communication link resources of the system, for example, the number of available wireless communication channels. As stated above, in the Bluetooth implementation of the invention, the wireless communication channels include a predefined number of time-slots within a time frame of a radio frequency channel. In another embodiment, the predefined access policy corresponds to the attributes of a service type. For example, a user subscribing to a premium service may get higher priority for service access than a user that subscribes to a basic service. Under this arrangement, access for an ongoing service by one of the mobile devices in the group of mobile devices 12 may be terminated based on the predefined access policy. As stated above, the access policy defines the terms for terminating and later resuming an on going service. Thus, the termination of service may also be dependent upon a predefined service termination policy based on which commands from the host processor are issued for terminating the service. Similarly, service resumption may be predefined in accordance with a service resumption policy that governs how the host processor issues commands for resuming a terminated service. Thus, in accordance with one feature of the present invention, service access to a terminated ongoing service is resumed in accordance with a predefined service resumption policy. The service termination and resumption policies themselves may be dependent on communication link resources or the attributes of a service type or a user subscription independent of each other. In another embodiment, access to a requested service by one of the mobile devices in the group of mobile devices is granted based on a priority assigned to a response to a requested service. For example, if a device is requesting access to a flight information service in an air port by a user who needs departure flight information, the response to such access request may have a higher priority that access request to other services. Under this arrangement, each mobile device may request its corresponding priority in the access queue. In response, mobile devices are periodically informed of their requested priority in the access queue. In yet another embodiment, the mobile devices is informed about availability of service, after other mobile devices in the access queue have been serviced. FIG. 4 depicts accessing communication services in accordance with the method of the present invention. The method requires receiving service access requests from a group of mobile devices, block 410. The received service access requests are queued in the access queue described above, block 420. Service access to all of the mobile devices in the group of mobile devices is granted based on a predefined access policy, block 430. An ongoing service provided to one or more of the mobile devices in the group of mobile devices may then be terminated in accordance with a predefined service termination policy block 440, and later resumed in accordance with a predefined service resumption policy, block 450. From the forgoing description it is apparent that the present invention facilitates access to communication services by providing such services based on a service access policy. The service access policy may be tailored to satisfy various service applications requirements. For example, based on specific requirement of offering communication services in such places as airports, parks, shopping malls, etc., the access policy may de defined to meet user requirements, such that one user may not be deprived of service access when users exceed the maximum communication limits.

Claims: Claims What is claimed is: 1. A communication system that provides access to communication services used by a plurality mobile devices over one or more wireless asynchronous connectionless links, comprising: a host processor that manages wireless service access to the mobile devices over the one or more wireless asynchronous connectionless links; a link manager that manages the one or more wireless asynchronous connectionless links in response to commands from the host processor; and an access queue that queues service access requests from a group of mobile devices, wherein the host processor grants and terminates service access based on a predefined access policy. 2. The communication system of claim 1 , wherein the predefined access policy is dependent on communication link resources of the communication system. 3. The communication system of claim 2, wherein the communication link resources include wireless communication channels. 4. The communication system of claim 3, wherein the wireless communication channels include a predefined number of time-slots within a time frame of a radio frequency channel. 5. The communication system of claim 1 , wherein the predefined access policy corresponds to the attributes of a service type. 6. The communication system of claim 1 , wherein the predefined access policy corresponds to the attributes of a subscription to a service by a user. 7. The communication system of claim 1 , wherein access to an ongoing service is terminated in accordance with a predefined service termination policy. 8. The communication system of claim 7, wherein service access to the terminated ongoing service is resumed in accordance with a predefined service resumption policy. 9. The communication system of claim 1, wherein access to a requested service by one of the mobile devices in the group of mobile devices is granted based on a priority assigned to a response to a requested service. 10. The communication system of claim 1, wherein a mobile device requests its priority in the access queue. 11. The communication system of claim 1, wherein a mobile device is periodically informed of its priority in the access queue. 12. The communication system of claim 1, wherein a mobile device is informed about availability of service, after other mobile devices in the access queue have been serviced. 13. A method for providing communication services over one or more wireless asynchronous connectionless links, comprising: receiving service access requests from a group of mobile devices; queuing service access requests from the group of mobile devices; granting service access to all of the mobile devices in the group of mobile devices based on a predefined access policy; terminating access for an ongoing service by one of the mobile devices in the group of mobile devices in accordance with a predefined service termination policy; and resuming the terminated ongoing service in accordance with a predefined service resumption policy. 14. The method of claim 13, wherein at least one of the predefined access policy, service termination policy and predefined service resumption policy is dependent on communication link resources of the communication system. 15. The method of claim 14, wherein the communication link resources include wireless communication channels. 16. The method of claim 15, wherein the wireless communication channels include a predefined number of time-slots within a time frame of a radio frequency channel. 17. The method of claim 13, wherein at least one of the predefined access policy, service termination policy and predefined service resumption policy corresponds to the attributes of a service type. 18. The method of claim 13, wherein at least one of the predefined access policy, service termination policy and predefined service resumption policy corresponds to the attributes of a subscription to a service by a user.

Inventors: FISHER JOY, MOORE MORRIS ANTHONY, FISHER, JOY, MOORE, MORRIS, ANTHONY
Applicants: MOTOROLA INC, MOTOROLA INC.
Application year: 2001
Main classification: H04M
IPC codes: H04L12, H04W28, H04W48, H04W74, H04W84