Mc-Unit I
Mc-Unit I
INTRODUCTION
MOBILE COMPUTING
Mobile computing is widely described as the ability to compute remotely while on the move.
It is also known as ubiquitous computing and nomadic computing.
This is a new and fast emerging discipline that has made it possible for people to access
information from anywhere and at any time.
Mobile computing can be viewed as encompassing two separate and distinct concepts:
1. Mobility – Mobility provides the capability to change location while communicating to
invoke computing services at some remote computers.
2. Computing - Computing denotes the capability to automatically carry out certain
processing related to service invocations on a remote computer.
The main advantage of this type of mobile computing is the tremendous flexibility it provides
to the users.
The user need not be tethered to the chair in front of his desktop, but can move locally or even
to faraway places and at the same time achieve what used to be performed while sitting in front
of a desktop.
Wireless Communication in itself is a very broad concept that is achieved using various inter-
related technologies. Mobile Communication utilizes some of the technologies that are made
available / possible by Wireless Communication. Some of the popular wireless technologies
employed in Mobile Communication include: GPRS (General Packet Radio Service), LTE
(Long Term Evolution), HSPA (High Speed Packet Access), GSM (Global System for Mobile
Communication), EDGE (Enhanced Data GSM Environment), CDMA (Code Division
Multiple Access) and its variants, etc.
Wireless refers to the method of transferring information between a computing device, such as
a personal data assistant (PDA), and a data source, such as an agency database server, without
a physical connection. However, not all wireless communications technologies are created
equally, offer the same uses or are even mobile.
Mobile computing refers to computing devices that are not restricted to a desktop. A mobile
device may be a PDA, a smart phone or a web phone, a laptop computer, or any one of numerous
other devices that allow the user to complete tasks without being tethered, or connected, to a
network. Mobile computing does not necessarily require wireless communication. In fact, it
may not require communication between devices at all.
Wireless communication is simply data communication without the use of a landline. This may
involve a cellular telephone, a two way radio, a fixed wireless connection, a laser, or satellite
communications. Here the computing device is continuously connected to the base network.
Mobile computing essentially refers to a device that is not always connected to a central
network. This group of devices includes laptops, newly created smart phones and also PDA’s.
These products may communicate with a base location, with or without, a wireless connection.
A computing environment is said to be “mobile”, when either the sender or the receiver of
information can be on the move while transmitting or receiving information.
The following are some of the important characteristics of a mobile computing environment.
1. Ubiquity:
The dictionary meaning of ubiquity is present everywhere.
In the context of mobile computing, ubiquity means the ability of a user to perform
computations from anywhere and at anytime.
For example, a business executive can receive business notifications and issue business
transactions as long he is in the wireless coverage area.
2. Location awareness:
A hand-held device equipped with global positioning system (GPS) can transparently
provide information about the current location of a user to a tracking station.
Many applications, ranging from strategic to personalized services, require or get value
additions by location-based services.
For example, a person travelling by road in a car, may need to find out a car maintenance
service that may be available nearby. He can easily locate such a service through mobile
computing where an application may show the nearby maintenance shop.
A few other example applications include traffic control, fleet management and emergency
services. In a traffic control application, the density of traffic along various roads can be
dynamically monitored, and traffic can be directed appropriately to reduce congestions.
In a fleet management application, the manager of a transport company can have up-to-date
information regarding the position of its fleet of vehicles, thus enabling him to plan
accurately and provide accurate information to customers regarding the state of their
consignments.
Location awareness can also make emergency services more effective by automatically
directing the emergency service vehicles to the site of the call.
3. Adaptation:
Adaptation in the context of mobile computing implies the ability of a system to adjust to
bandwidth fluctuation without inconveniencing the user.
In a mobile computing environment, adaptation is crucial because of intermittent
disconnections and bandwidth fluctuations that can arise due to a number of factors such as
handoff, obstacles, environmental noise, etc.
4. Broadcast:
Due to the broadcast nature of the underlying communication network of a mobile
computing environment, efficient delivery of data can be made simultaneously to hundreds
of mobile users.
For example, all users at a specific location, such as those near a railway station, may be
sent advertising information by a taxi service operator.
5. Personalization:
Services in a mobile environment can be easily personalized according to a user’s profile.
This is required to let the users easily avail information with their hand-held devices.
For example, a mobile user may need only a certain type of information from specific
sources. This can be easily done through personalization.
STRUCTURE OF MOBILE COMPUTING APPLICATION
A specific scenario of the types of functionalities provided by each tier is shown below.
The three tiers are named
1. presentation tier
2. application tier and
3. data tier.
1. Presentation tier:
The topmost level of a mobile computing application concerns the user interface.
A good user interface facilitates the users to issue requests and to present the results to the
them meaningfully.
Obviously, the programs at this layer run on the client’s computer.
This layer usually includes web browsers and customized client programs for dissemination
of information and for collection of data from the user.
2. Application tier:
This layer has the vital responsibility of making logical decisions and performing
calculations.
It also moves and processes data between the presentation and data layers.
Consider the middle tier to be like an “engine” of an automobile. It performs the processing
of user input, obtaining information and then making decisions.
This layer is implemented using technology like Java, .NET services, cold fusion, etc.
The implementation of this layer and the functionality provided by this layer should be
database independent.
This layer of functionalities is usually implemented on a fixed server.
3. Data tier:
The data tier is responsible for providing the basic facilities of data storage, access, and
manipulation.
Often this layer contains a database.
The information is stored and retrieved from this database.
But, when only small amounts of data need to be stored, a file system can be used.
This layer is also implemented on a fixed server.
MAC PROTOCOLS
In a wireless network, multiple nodes may contend to transmit on the same shared channel at
the same time.
In this situation, the transmitted data would get garbled unless a suitable medium access
arbitration scheme is deployed.
Usually, it is the responsibility of the medium access control (MAC) protocol to perform this
task.
The MAC protocol is a sublayer of the data link layer protocol and it directly invokes the
physical layer protocol.
The primary responsibility of a MAC protocol is to enforce discipline in the access of a shared
channel when multiple nodes contend to access that channel.
At the same time, two other objectives of any MAC protocol are
Maximization of the utilization of the channel and
Minimization of average latency of transmission.
However, a MAC protocol must be fair and ensure that no node has to wait for an unduly long
time, before it is allowed to transmit.
At present, IEEE 802.11 has emerged as a popular and standard MAC protocol for wireless
networks.
Wireless networks can be divided mainly into two categories:
(a) infrastructure-based wireless networks that include the WLANs, and
(b) infrastructure-less wireless networks that include the mobile ad hoc networks
(MANETs).
Though the MAC protocols for these two environments have many things in common, MAC
protocols for Infrastructure-less networks are surprisingly much more complex as they have
to address certain additional problems that arise in the infrastructure-less environments.
The hidden terminal problem arises when at least three nodes (A, B, and C), as shown below,
communicate among each other.
As shown in the figure, B is in the radio range of A, and B is also within the radio range of C.
However, the nodes A and C are not in the radio range of each other.
Note that if both A and C start to transmit to B at the same time, the data received at node B
would get garbled.
Such a situation can arise because A and C are “hidden” from each other, because they are
outside each other’s transmission range.
In this situation, when one node starts to sense the medium before transmission, it cannot sense
that the other node is also transmitting.
This creates a very difficult and important arbitration problem that a MAC protocol needs to
resolve.
A related problem called exposed terminal could arise in a scenario such as that depicted in
the following figure.
MAC protocols usually inhibit transmission when transmission from another terminal is
detected.
As a result, node A will not be able to transmit to any node when B is transmitting to C.
On the other hand, had A transmitted to D, it would have been received correctly by D and B’s
transmission would have also been correctly received at C.
The problem arise only because A and B are within each other’s transmission range, though the
destination nodes are in the transmission range of only one of the nodes.
In other words, the problem occurs because A is exposed to B’s transmission.
The overall effect of this problem is that it leads to inefficient spectrum usage as well as
unnecessary transmission delays unless these are carefully addressed by a wireless MAC
protocol.
A Taxonomy of MAC Protocols
A large number of MAC protocols have been proposed.
These MAC protocols can be broadly divided into the following three categories:
On the other hand, the random assignment schemes and the reservation schemes are called
packet-switched schemes.
The random assignment schemes are comparable to the connection-less packet-switching
schemes.
In this, no resource reservations are made, the nodes simply start to transmit as soon as they
have a packet to send.
In the reservation schemes, a node makes explicit reservation of the channel for an entire call
before transmitting.
This is analogous to a connection-based packet-switching scheme.
The reservation-based MAC schemes are suitable to handle calls with widely varying traffic
characteristics.
The above figure shows a division of the existing bandwidth into many channels (shown
as Ch 1, Ch 2, etc.).
For full duplex communication to take place, each user is allocated a forward link (channel)
for communicating from it (mobile handset) to the base station (BS), and a reverse channel
for communicating from the BS to it.
Thus, each user making a call is allocated two unique frequency bands (channels), one for
transmitting and the other for receiving signals during the call. Obviously, when a call is
underway, no other user would be allocated the same frequency band to make a call.
Unused transmission time in a frequency band that occurs when the allocated caller pauses
between transmissions, or when no user is allocated a band, goes idle and is wasted.
FDMA, therefore, does not achieve a high channel utilization.
2. Time Division Multiple Access (TDMA)
TDMA is an access method in which multiple nodes are allotted different time slots to
access the same physical channel.
That is, the timeline is divided into fixed-sized time slots and these are divided among
multiple nodes who can transmit.
Note that in this case, all sources use the same channel, but take turns in transmitting.
The below figure shows the situation where time slots are allocated to users in a round
robin manner, with each user being assigned one time slot per frame.
In CDMA, multiple users are allotted different codes that consist of sequences of 0 and 1
to access the same channel.
As shown in Figure, a special coding scheme is used that allows signals from multiple users
to be multiplexed over the same physical channel.
As shown in the figure, three different users who have been assigned separate codes are
multiplexed on the same physical channel.
• ALOHA
• Slotted ALOHA
• CSMA
• CSMA/CD
• CSMA/CA
ALOHA Scheme:
A popular MAC arbitration technique is the Carrier Sense Multiple Access (CSMA).
In this technique, a node senses the medium before starting to transmit.
If it senses that some transmission is already underway, it defers its transmission.
Two popular extensions of the basic CSMA technique are the collision detection (CSMA/CD)
and the collision avoidance (CSMA/ CA) techniques.
Unlike that in a wired network, in a wireless network the CSMA/CD technique does not work
very well.
In the CSMA/CD technique, the sender starts to transmit if it senses the channel to be free.
But, even if it senses the channel to be free, there can be a collision (why?) during transmission.
In a wired network, the implementation of a collision detection scheme is simple.
However, in a wireless network it is very difficult for a transmitting node to detect a collision,
since any received signal from other nodes would be too feeble compared to its own signal and
can easily be masked by noise.
As a result, a transmitting node would continue to transmit the frame, and only the destination
node would notice the corrupted frame after it computes the checksum.
This leads to retransmissions and severe wastage of channel utilization.
In contrast, in a wired network when a node detects a collision, it immediately stops
transmitting, thereby minimizing channel wastage.
In a wireless network, a collision avoidance scheme works much better compared to a collision
detection-based scheme.
A collision avoidance scheme is based on the idea that it is necessary to prevent collisions at
the moment they are most likely to occur, that is, when the bus is released after a packet
transmission.
Reason:
During the time a node is transmitting on the channel, several nodes might be wanting
to transmit.
These nodes would be monitoring the channel and waiting for it to become free.
The moment the transmitting node completes its transmission, these waiting nodes
would sense the channel to be free, and would all start transmitting at the same time.
To overcome such collisions, in the collision avoidance scheme, all nodes are forced to
wait for a random time and then sense the medium again, before starting their
transmission.
If the medium is sensed to be busy, a node waiting to transmit waits for a further random
amount of time and so on.
Thus, the chance of two nodes starting to transmit at the same time would be greatly
reduced.
MACA:
MACA stands for Multiple Access Collision Avoidance.
MACA solves the hidden/exposed terminal problems by regulating the transmitter power.
A node running MACA requests to use the medium by sending an RTS to the receiver.
Since radio signals propagate omni-directionally, every terminal within the sender’s radio range
will hear this and then refrain from transmitting.
As soon as the receiver is ready to receive data, it responds with a CTS.
The above figure schematically shows how MACA avoids the hidden terminal problem.
Before the start of its transmission, it sends a Request To Send (RTS).
B receives the RTS that contains the sender’s name and the receiver’s name, as well as the
length of the future transmission.
In response to the RTS, an acknowledgment from B is triggered indicating Clear To Send
(CTS).
The CTS contains the names of the sender and receiver, and the length of the planned
transmission.
This CTS is heard by C and the medium is reserved for use by A for the duration of the
transmission.
On receipt of a CTS from B, C refrains from transmitting anything for the time indicated in the
CTS.
Thus a collision cannot occur at B during data transmission, and the hidden terminal problem
is solved.
Though this is a collision avoidance protocol, a collision can occur during the sending of an
RTS.
Both A and C could send an RTS at same time.
But an RTS occurs over a very small duration compared to the duration of data transmission.
Thus the probability of collision remains much less.
B resolves this contention problem by acknowledging only one station in the CTS.
No transmission occurs without an appropriate CTS.
IMPORTANT QUESTIONS:
1. What is mobile computing? What are the other names of mobile computing?
2. Write down the applications of mobile computing?
3. What are the types of wireless networking?
4. Distinguish between mobile computing and wireless networking.
5. Distinguish between infrastructure-based networks and infrastructure-less networks with
the help of suitable schematic diagrams.
6. Differentiate piconets and scatternets.
7. What is MANET?
8. What are the characteristics of mobile computing?
9. Explain the architecture of Mobile computing.
10. What is the role of a MAC protocol? At which ISO/OSI layer does it operate?
11. What are the objectives of MAC protocol?
12. List down the properties of MAC protocol.
13. What is a hidden terminal? What problem does it create during wireless communications?
14. When does the exposed terminal problem arise?
15. What are the principal responsibilities of the MAC protocols? How do MAC protocols for
wireless networks differ from those in wired networks?
16. What are the broad categories of MAC protocols?
17. Explain fixed assignment schemes in detail with neat diagram.
18. Explain random assignment schemes in detail.
19. What is m-bit pseudo noise code sequence?
20. Expand RTS and CTS. List the contents available in RTS and CTS.
21. Why are collision-detection based protocols not suitable for wireless networks?
22. What is MACA protocol? In which environment is it suitable? Briefly explain its working.
How does MACA protocol solve the hidden/ exposed terminal problems?