Generic wireless services discovery

Embodiments of the invention relate to wireless communications. More particularly, embodiments of the invention relate to generic discovery mechanisms that may be utilized in wireless communications.

TECHNICAL FIELD

Embodiments of the invention relate to wireless communications. More particularly, embodiments of the invention relate to generic discovery mechanisms that may be utilized in wireless communications.

BACKGROUND

When a mobile device engages in wireless communications, the mobile device must discover what services are available. The mobile device may then determine whether the services are compatible and/or what services may be provided by the mobile device. Currently, available services are discovered by the mobile device receiving a service advertisement from a network node, for example, a base station. When many services are offered, the complexity of the client device may increase, which may increase the cost associated with the mobile device.

DETAILED DESCRIPTION

In the following description, numerous specific details are set forth. However, embodiments of the invention may be practiced without these specific details. In other instances, well-known circuits, structures and techniques have not been shown in detail in order not to obscure the understanding of this description.

The generic discovery services described herein may be applicable to any wireless communications network. For example, the wireless network may be a Worldwide Interoperability for Microwave Access (WiMAX) network. WiMAX is defined by standards available from the WiMAX Forum, formed in June 2001 to promote conformance and interoperability of the IEEE 802.16 standard, officially known as WirelessMAN. IEEE 802.16 corresponds to IEEE 802.15-2005 entitled “Air Interface for Fixed Broadband Wireless Access Systems” approved Dec. 7, 2005 as well as related documents. Other wireless network protocols may also be supported including, for example, Time Division, Multiple Access (TDMA) protocols, Global System for Mobile Communications (GSM) protocols, Code Division, Multiple Access (CDMA) protocols, and/or any other type of wireless communications protocol.

FIG. 1is a conceptual diagram of one embodiment of a wireless network. The wireless network may support communications utilizing WiMAX and/or any other type of protocol. The wireless network may be used, for example, for cellular voice communications and/or data transfer.

Base station100may provide an access point for wireless communications for one or more mobile wireless devices such as, for example, wireless mobile device175. Any number of wireless mobile devices may be supported. A wireless mobile device may be, for example, a cellular telephone, a laptop computer, a personal digital assistant, a smart phone, or any other wireless-enabled device. Base station100may have a range (e.g., 1 km) corresponding to cell110.

As mobile wireless device175moves within cell110, it may communicate with base station100. If mobile wireless device175exits cell110, it may be transferred to another base station. For example, if mobile wireless device175moves toward base station130and moves within cell135, mobile wireless device175may be handed over to base station130. In general, handovers have an associated overhead that may consume network resources.

Mobile wireless device175may be any type of electronic device configured to communicate using a wireless communications protocol. In one embodiment, mobile wireless device175may be a cellular enabled device (e.g., cellular telephone, smartphone, cellular-enabled personal digital assistant). In another embodiment, mobile wireless device175may be a mobile computing device (e.g., a laptop computer, a palmtop computer).

When mobile wireless device175interacts with a base station, wireless mobile device may discover the services provided by the base station. Described herein is a generic mechanism by which mobile wireless device175can discover the relevant services available. In general, the mechanism may be robust enough that it can work for various scenarios including, but not limited to, roaming as well as non-roaming, Common Management Information Protocol (CMIP), Proxy Mobile Internet Protocol (PMIP), Internet Protocol version 4 (IPv4), Internet Protocol version 6 (IPv6), etc.

The services discovered may include, but are not limited to, Voice over IP (VoIP), Multicast and Broadcast Service (MBS), and Location Based Service (LBS). Other services may also be supported. While the examples herein are generally associated with WiMAX, the generic discovery techniques are applicable to other wireless protocols as well.

FIG. 2is a block diagram of one embodiment of a WiMAX network. In one embodiment the WiMAX network has a domain name server (DNS)200local to the home connectivity service network (CSN)210. The local DNSconfiguration may be pushed to the mobile device when it obtains its Home Address (HoA), Care of Address (CoA) and/or Point of Attachment (PoA). The home CSN210may also include authentication, authorization and accounting (AAA) server220and home agent (HA) server225. The home CSN210may also include Voice Over IP (VoIP) services230, Multicast and Broadcast services (MBS)235and/or Location Based Services (LBS)240. Home CSN210may include additional, fewer, or different servers and services.

In one embodiment, visited CSN250may include DNS server270, AAA server265, HA server260. Visited CSN250may also provide VoIP services275and MBS service280that function as described above. Visited CSN250may include additional, fewer, or different servers and services.

In one embodiment, the DNS can resolve Universal Resource Indicators (URIs) to a local IP server on the WiMAX network. The table below illustrates one technique to inform the mobile device295of the DNS configuration under various connection types.

TypeDNS push mechanismIPv4/PMIPv4DHCP options.CMIPv4MIP optionsAlternatively, even though HOA is obtained via MIP,the mobile device can also use DHCP to obtain DNSconfiguration information.IPv6/PMIPv6DHCPv6 optionsCMIPv6MIP6 optionsAlternatively, even though HOA is obtained via MIP,the mobile device can also use DHCP to obtain DNSconfiguration information.
In one embodiment, if a particular service is not offered by the WiMAX network, the local DNS can return the standard DNS name resolution error.

In another embodiment, when the mobile device295obtains an IP address using DHCP, the IP address of the local servers can be sent via DCHP using DHCP options in the form of a list. For example, the list may read, “IP1, IP2, . . . IPn” where n is the maximum number of services supported and each IP address indicates a server corresponding to an available service. For example, IP1 may be the address of a VoIP server while IP2 is the address of a MBS server. If the network does not offer a particular service, the IP address may be a designated value, for example, 0.0.0.

When the mobile device295receives the list it can parse the list. The mobile device will then be able to determine what services are offered on the network and/or obtain the IP address of the relevant servers for the services that are offered. In one embodiment, an autonomous system number290is used to communicate with the mobile device295. Once the available servers/services are determined by the mobile device295, the available servers/services may be accessed by the mobile device295using the IP addresses provided in the list.

FIG. 3is a flow diagram of one embodiment of a technique for generic services discovery within a wireless network. The operations ofFIG. 3may be performed by, for example, one or more mobile electronic devices such as those described herein. The operations ofFIG. 3may be performed, for example, by hardware components and/or software executed by a processing component of the mobile electronic devices.

One or more lists of servers and/or services available are transmitted to one or more mobile devices,300. In one embodiment, option fields on in various formats may be utilized. The list may include servers available to the mobile device(s) and/or services available to the mobile device(s). Additional related information may also be available to the mobile device(s).

The one or more mobile devices can then parse the received list,310. The mobile devices may parse the information received in the list in any manner known in the art. The mobile devices then have extracted information related to severs and/or services available to the mobile devices without the mobile devices being required to discovered in the manner utilized by the prior art.

From the information extracted from the provided list, the mobile devices can determine the services available to it,320. The mobile devices can then access the available services,330. Thus, a less complex and more efficient technique to determine the services available to the mobile devices has been described.

FIG. 4is a block diagram of one embodiment of a mobile electronic device. Alternative electronic devices can include more, fewer and/or different components. In one embodiment, the electronic device ofFIG. 4is a mobile device that may function as the mobile device ofFIG. 1. In one embodiment, the mobile device is a smartphone or other cellular-enabled device.

Electronic system400includes bus405or other communication device to communicate information, and processor410coupled to bus405to process information. While electronic device400is illustrated with a single processor, electronic device400can include multiple processors and/or co-processors. Electronic device400further includes random access memory (RAM) or other dynamic storage device420(referred to as memory), coupled to bus405to store information and instructions to be executed by processor410. Memory420also can be used to store temporary variables or other intermediate information during execution of instructions by processor410.

Electronic device400also includes read only memory (ROM) and/or other static storage device430coupled to bus405to store static information and instructions for processor410. Data storage device440is coupled to bus405to store information and instructions. Data storage device440such as a magnetic disk or optical disc and corresponding drive can be coupled to electronic device400.

Electronic device400can also be coupled via bus405to display device450, such as liquid crystal display (LCD) or other display device, to display information to a user. Input device(s)460may include any type of user input device and may be coupled to bus405to communicate information and command selections to processor410. Electronic device400further includes network interface470to provide access to a network, such as a local area network. Network interface470may include one or more antennae480to communicate utilizing wireless protocols.

FIG. 5is a block diagram of one embodiment of a base station. The base station illustrated inFIG. 4is intended to represent a range of base stations. Alternative base stations may include more, fewer and/or different components.

Base station500may include bus505or other communication device to communicate information, and processor510coupled to bus505that may process information. While base station500is illustrated with a single processor, base station500may include multiple processors and/or co-processors. Base station500further may include random access memory (RAM) or other dynamic storage device520, coupled to bus505and may store information and instructions that may be executed by processor510. For example, the process ofFIG. 4may be implemented as instructions stored in memory520that are executed by processor510. Memory520may also be used to store temporary variables or other intermediate information during execution of instructions by processor510.

Base station500may also include read only memory (ROM) and/or other static storage device530coupled to bus505that may store static information and instructions for processor510. Data storage device540may be coupled to bus505to store information and instructions. Data storage device540such as a magnetic disk or optical disc and corresponding drive may be coupled to base station500.

Base station500further may include network interface(s)580to provide access to a network. Network interface(s)580may include, for example, a wireless network interface having antenna585, which may represent one or more antenna(e) that may communicate utilizing any of the protocols described herein. Network interface(s)580may also include, for example, a wired network interface to communicate with remote devices via network cable587, which may be, for example, an Ethernet cable, a coaxial cable, a fiber optic cable, a serial cable, or a parallel cable.

A computer-readable medium includes any mechanism that provides (e.g., memory520, ROM530, storage device540) content (e.g., computer executable instructions) in a form readable by an electronic device (e.g., a computer, a personal digital assistant, a cellular telephone). For example, a computer-readable medium includes read only memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices, etc.