Just as every human being has a name, every computer is identified by a unique IP address. While humans are intelligent enough to distinguish two people with the same name, computers aren't so clever. Computer IP addresses have to be unique. Luckily, domain names make it easier to remember popular Web addresses; after all, Internet searches would be very difficult if you had to remember unique IP numbers, which can run between 4 and 12 digits long. But even though domain names are widely used on the Internet, they are still an unexplored topic on mobile phones. In this article, I propose implementing DNS on mobile phones to simplify calls and service transfers.
About the Domain Name System
The Webopedia definition for DNS is "an Internet service that translates domain names into IP addresses." Because domain names are alphabetic, they are easier to remember.
A computer in an IBM research lab has the domain name: alpha.research.in.ibm.com. Domain names are hierarchical, with the most significant part of the domain name on the right and the least significant part on the left. In alpha.research.in.ibm.com, "com" is the most significant part; it identifies that the address is for a commercial organization. "alpha" is the least significant part; it identifies the name of individual computer in the domain research.in.ibm.com.
The domain name can have multiple segments; for example, alpha, research, in, ibm, com are different segments in the above address. It depends on the organization as to how many segments it needs in order to identify an individual computer. The Domain Name System does not specify an exact number of segments in each name, nor does it specify what each segment represents. However, it does specify the value for the most significant segment, the top-level segment. Table 1 lists the values for most the significant segment of a domain name.
Table 1. Available domain names
|arpa||Temporary ARPA domain|
|country code||A country|
|org||Organization other than above|
To obtain a domain name, an organization must register with the IANA (Internet Assigned Number Authority). Each organization is assigned a unique domain suffix. For example, IBM has the domain suffix: ibm.com.
Most organizations with an Internet connection will run a DNS server or outsource it to a third party to run it. DNS works in a client/server model, where an application that needs to translate a name to an IP address becomes a client of the DNS server. The client sends a request with a domain name to the DNS server; the DNS server translates it and returns an equivalent IP address. For more on DNS, see Resources.
Note: In the next section, cell phones and mobile phones are used interchangeably.
How mobile phones work
I'll compare a mobile phone to a CB Radio. A CB radio is a simplex device with which two people communicate using the same frequency (only one person can talk at a time). A mobile phone is a duplex device. It uses one frequency for talking and a second for listening.
A mobile phone operates in a cell. A large city is divided into small cells; this allows extensive frequency reuse across the city. Two cells can reuse the frequency as long as sufficient distance separates them. This also allows mobile phones to consume power at a very low rate. Low power consumption means you can use smaller batteries and thus smaller handsets.
Each cell has a base station, which has a tower and radio equipment. Cells are designed to broadcast their presence and availability, and relay communications to the mobile handsets.
The cell phone transmits a registration request to the base station. The base station further transfers this registration request to the Mobile Telephone Switching Office (MTSO). The MTSO tracks your phone's location in a database. This way the MTSO knows which cell you are in when it wants to ring your phone. The cell phone also alerts the network that it is ready and standing-by to receive telephone calls. It then periodically repeats this information to the tower and seeks out new towers over the duration that it is powered.
The mobile phone and base station communicate with each other on dedicated paired frequencies called channels. The base station uses one frequency and mobile phones use the other. There are two types of channels: control channel and voice channel.
Control channels are usually the first channel in each cell. They are responsible for setting up the call. If no control channel is found, the cell phone displays an out-of-range message. MTSO assigns voice channels. Voice channels handle the call's traffic, whether it is voice or data. A call starts on the control channel first, and then drops out after MTSO assigns the call to the voice channel.
Now, what happens when somebody calls you? The caller's cell phone transmits the call request to its base station over a control channel. This request is forwarded to MTSO, which finds out which cell you are in. It then picks up a frequency pair (voice channels) that your cell phone will use in that cell to take the call. For more on mobile phones, see Resources.
Advantages of DNS for mobile phones
So what makes a domain name better than an actual cell number? Here are five things that do:
- All mobile numbers are 10 or more digits, which makes them difficult to remember. With an alphabetic or alphanumeric domain name, remembering a mobile ID will be easier.
- Rather than replacing the existing system, it is just added to it. With such a solution, a mobile can have more than one number; for example, one numeric and one or more alphanumeric IDs.
- A user can make his alphanumeric mobile number the same as his personal e-mail ID, appended by some service provider tag. Alternatively, if a company gives a mobile phone to its employee, it can make the alphanumeric number equal to the company e-mail ID.
- When a user changes city or state, the number changes. However, with alphanumeric numbers, you need minimal changes when you move.
- If a you change a service provider, you may not need to change your alphanumeric name as long as no one else uses the same alphanumeric name in the new service provider. Only the service provider tag might change.
Implementing DNS on mobile phones
When implementing DNS on mobile phones, the function of a cell phone remains the same; all you need is a system that maps a name-to-number relationship. To start, when the user makes a call, the request first goes to the base station of its cell. The base station forwards the call to MTSO, where you can implement the DNS server. You can program the MTSO to check if the dialed characters are pure numbers or a combination of characters and numbers. In the latter case, the MTSO can make a request to the DNS server to get the corresponding number for it. The DNS server replies back to the MTSO with the number and the MTSO finally gets the number. The flowchart in Figure 2 explains this process in detail.
Figure 2. Implementing DNS on mobile phones
For public services, such as police, fire, and railways, people often don't store numbers in their phones. Implementing DNS into the mobile phone makes it easier for users to remember those numbers, or in this case, domain names. Think of it like programming your most-dialed numbers into your cell phone. While setting up a DNS server might be a bit cumbersome at first, it requires little maintenance after completion.
- "Domain Name System (DNS)" (developerWorks, November 2005): David Mertz introduces you to DNS and shows you how to use Linux as a DNS server.
- "Using the Domain Name System -- A Primer" (developerWorks, February 2005): Discusses different aspects of DNS, including a step-by-step procedure to set it up. The article includes samples of several data files, otherwise known as DNS databases, which form the backbone of DNS.
- developerWorks Wireless technology zone: Expand your mobile development skills.
Get products and technologies
- Mobile Phones -- The Basics: Learn more about precall validation.
- How Cell Phones Work: Learn more about cell phone basics.
- developerWorks blogs: Get involved in the developerWorks community.
Dig deeper into Open source on developerWorks
Get samples, articles, product docs, and community resources to help build, deploy, and manage your cloud apps.
Experiment with new directions in software development.
Software development in the cloud. Register today to create a project.
Evaluate IBM software and solutions, and transform challenges into opportunities.