Mobile Client
-
Upload
chethan-bheemaiah -
Category
Documents
-
view
222 -
download
0
Transcript of Mobile Client
-
7/25/2019 Mobile Client
1/58
Mobile Client and Mobile IP
-
7/25/2019 Mobile Client
2/58
CONTENTS Mobile Client
Moving beyond desktop Mobile handset overview
Mobile phones and their features
PDA
Design Constraints in applications for handheld
devices
-
7/25/2019 Mobile Client
3/58
CONTENTS MOBILE IP
Introduction Discovery
Registration
Tunneling
Cellular IP
Mobile IP with IPv6
-
7/25/2019 Mobile Client
4/58
Client Programming
Introduction ArthurC Clark (1997) quoted information is not
knowledge, knowledge is not wisdom and wisdom is
not foresight. Each grows out of the other and we need
them all
In essence hardware, software and network together make
powerful applications possible, each is not more or less than
theother
-
7/25/2019 Mobile Client
5/58
MOVING BEYOND DESKTOP
Handheld devices have evolved Mobile devices have been traditionally classified as phones,
pagers and personal data assistants (PDAs)
Cell phone- used for communication, similar to wired phones
Pagers provides text message
PDAs provide portable data applications like calendar and
notepad
Most cell phones now include address books and SMS, e-mail
access and almost all contemporary PDAs includecommunication capabilities
Today devices offer many permutation and combinations of these
features leading to one-size-fits-all devices
-
7/25/2019 Mobile Client
6/58
EVOLUTION OF CELLULAR TECHNOLOGY
-
7/25/2019 Mobile Client
7/58
EVOLUTION OF PDA
-
7/25/2019 Mobile Client
8/58
COMPARISON OF CAPABILITIES OF DIFFERENT DEVICES
-
7/25/2019 Mobile Client
9/58
EVOLUTION OF MOBILE TECHNOLOGY
-
7/25/2019 Mobile Client
10/58
SUMMARIZING
All applications thus have basic requirement The least they require is:
Some input to provide some useful output
Memory for runtime and persistent storage
Some communication capabilities
Most of these are device capabilities , but programming
at a device level is cumbersome and generally not
advisable
There is a need for some level of abstraction on thebare hardware this layer of abstraction is the device
operating system
-
7/25/2019 Mobile Client
11/58
Palm programming is mostly done in C / C++ Symbian in C++ / Java
WinCE or PocketPC in embedded VB or embedded VC
-
7/25/2019 Mobile Client
12/58
STRUCTURE OF A MOBILE DEVICE
-
7/25/2019 Mobile Client
13/58
A PEEK UNDER THE HOOD: HARDWARE OVERVIEW
Modern devices have a Million Instructions PerSecond(MIPS) capability to process information stream
(voice/data) stream
Both classes of devices essentially consists of:
A microprocessor A power source
A signal converter
An I/O unit
Some memory (both persistent and volatile)
-
7/25/2019 Mobile Client
14/58
Overview of a Digital Communication Device
-
7/25/2019 Mobile Client
15/58
MOBILE PHONES
-
7/25/2019 Mobile Client
16/58
The above diagram depicts the internal components of a cell phone
Antenna: the signal reception unit
Circuit board: this is the control unit of the system, it has several important chipsmounted on it, the prominent amongst these are:
1.The analog-to-digital and digital-to-analog conversion chips This is represented as RF to Digital block
This is the entry and exit point to the phone
This chip is designed to convert analog network signals to digital for the phone toprocess and reverse
2. The microprocessor
This controls and co-ordinates the handset functions It includes the user input / output and network interfaces that include
communication with the base station
3. The ROM and Flash memory chips provide storage for the phones storagerequirements, which include system memory and application memory
Additional memory is also provided through external detachable memory cards
4. The Digital Signal Processor (DSP) is a highly sophisticated chip that managesthe signal manipulations
5. The radio frequency chip manages the signal channels while the power section isresponsible fro power management and recharging
-
7/25/2019 Mobile Client
17/58
Other components are
Display unit is the output, generally a Liquid CrystalDisplay (LCD) panel
Keyboard (qwerty or T): This is the input unit
Microphone: To facilitate speech transmission
Speaker: The microphones listener counter part
Battery: The source of electrical energy
-
7/25/2019 Mobile Client
18/58
FEATURES OF MOBILE PHONES
Features Baseband architecture
Processor
Audio / video components
Data storage Display
-
7/25/2019 Mobile Client
19/58
Baseband
Functionality is architecturally a larger concept
Helpful in provision of cellular control logic, signal processingand user interface management
Contributes in memory and energy management
Conglomeration of tradeoffs between electromagnetic
capability, performance, power consumption and cost Electromagnetic capability is determined by placement of
high speed circuits and RF transmitter location along withother mechanical constructions
Performance is calibrated in terms of user requirements (likeuser interfaces, mobile phone execution engine etc.),instructions processed per second and other systemrequirements
-
7/25/2019 Mobile Client
20/58
Design constraints in Applications for Handheld Devices
Device characteristics: Low-end processors
Small screen size
Cumbersome input device
Limited battery power Memory limitations
-
7/25/2019 Mobile Client
21/58
Design Constraint 1: Processing Power
Processing speed starts from 16MHz Some heavy duty computations like encryption key
generation is a drain on the devices resources, thus
needs a good processor design
Offloading the computations to the server is always agood idea, but will leads to poor response, which is
frustrating experience for the user
Too many computations on the client while allowing
for faster response eat into valuable memory
-
7/25/2019 Mobile Client
22/58
Categorizing client based on the functionality and
specificity of the software
Thin clients:
Generic, cater to wide range of sources
Similar to web browsers
Communication from the server is mainly based ondifferent flavors of Markup Language(ML)
Requires a local parser The server needs to send large amount of display
information to the client, to adequately represent data,chocking up the transmission channel
Thus the thin client offers generality at the cost of bandwidth
This is a major consideration in networks where the userspay for the data and not call time
-
7/25/2019 Mobile Client
23/58
Thick Clients: The intelligence resides in the device and a call is made to
the server only for data
Computation is done locally
While this approach resolves the bandwidth problem but
introduces two major concerns viz., size of the application
on the device and the distribution of the application when
an update of fix happens
-
7/25/2019 Mobile Client
24/58
Thin plus or semi-thick clients: These lie somewhere in between thick and thin
Based on the functionality of the application
The bandwidth availability
Cost constraints
-
7/25/2019 Mobile Client
25/58
Design Constraint 2: Screen Size:
Handheld device characterized by Small screen size
Limiting information that we can display at one time
Screen should be designed very carefully to fit the small
screen display
Good practice to limit the scrolling to two screens below
Navigation should be easy using a single click
General thumb rule is to consider the depth of the
navigation should be at most four clicks
-
7/25/2019 Mobile Client
26/58
Design Constraint 3: Cumbersome Input Devices
Most devices sport stylus or T keypad or very smallqwerty keyboard keying is a pain
Input should be kept to the minimum
Try to device inputs as a single click kind of option like
Yes / No may be substituted by a radio button as scrolland click in most devices is easier than clicking
-
7/25/2019 Mobile Client
27/58
Design Constraint 4: Application Load Time
Generally, user switch on their handhelds for shortduration
Eg: Often it is used to retrieve a contact number
The load time for such application should be low as the
user would not like to wait for the application to loadeach time
-
7/25/2019 Mobile Client
28/58
Design Constraint 5: Battery
Batteries are scarce resource One of the keys to the success of the application is long
battery life
Sound, extended animations, Serial or IR
communications and many MIME intensiveapplications use CPU for longer period and thus
consume large amounts of power
-
7/25/2019 Mobile Client
29/58
Design Constraint 6: Memory
Most of the handheld devices have limited storagespace, ranging from 512MB to 8GB
Dynamic heap ranging from 32K to 256K
Such circumstances optimization is very crucial
The optimization mantra is heap first
speed second
code size third
-
7/25/2019 Mobile Client
30/58
Design Constraint 7: Data Storage
All devices provide some amount of persistent storage
This is very limited
Different devices organize data in different ways
Palm OS-based devices
Treat all storage as database blocks
-
7/25/2019 Mobile Client
31/58
Design Constraint 8: Backward Compatibility
Devices are rapidly evolving and in very short span of
time the user feel their device a being obsolete
Users are not expected to upgrade their system every
time an advanced version becomes available
So, to gain wider acceptance, there is a need to writeapplications in such a manner that they will run on all
versions of the device
At the same time give the users of a later version better
functionality
-
7/25/2019 Mobile Client
32/58
Design Constraint 9: Application Size
Applications need to be stored on the devices
Most devices have limit on the size of executables
This needs to be taken care during the design phase
Should ensure that only absolutely necessary stuffresides on the device
-
7/25/2019 Mobile Client
33/58
RECENT DEVELOPMENTS IN CLIENT TECHNOLOGIES
Mobile devices are becoming increasingly popular
Grown upto 3.5 billion by the end of 2009
Dividing line between mobile phones, PDAs or mobilecomputers are slowly disappearing
Host of multimedia features introduced Services and portals having specific affinity to support
these devices are gaining popularity
Several independent service providers catering tovarious sets of use cases
Range of OS like Symbian, Windows Mobile, Samsung'sBada, Palm OS, Blackberry OS, Iphone OS, GooglesAndroid etc.
-
7/25/2019 Mobile Client
34/58
MOBILE IP
-
7/25/2019 Mobile Client
35/58
INRODUCTION TO MOBILE IP
Mobile computing aids user with continuous access to
data and services in a state of mobility
Mobile Computing vs Portable Computing
Portable Computing
We move with the computing device from one location to another Use network while stationary
Mobile Computing
Offers seamless computing and data networking facility even if the
user is in a state of mobility and changes the network
Handling Mobility Management where a user is at a
vehicular state and accessing the network
-
7/25/2019 Mobile Client
36/58
IP and TCP working
IP routes packets from a source endpoint to thedestination endpoint
IP address of a node is a combination of network address and the node address
The network portion of an IP address is used by routers
to deliver the packet to the last router in the chain towhich the target computer is attached
The last router then uses the host portion of the IPaddress to deliver the IP packet to the destination
computer In addition to IP we need TCP / UDP port of the
applications
-
7/25/2019 Mobile Client
37/58
Connections scenario
A TCP connection is identified by a quadruplet that contains
the IP address and the port number of the senderendpointalong with the IP address and the port number ofthe receiving endpoint
In case the users are mobile, it is essential that all of these four
identifiers remain constant(physically / virtually) The TCP ports are application specific and thus are generally
constant
IP address will change when a node moves from one subnet toanother
To fix this problem, Mobile IP allows the mobile node to usetwo IP addresses
The IP addresses are called home address and care-of-address
-
7/25/2019 Mobile Client
38/58
Home address and Care-of-address
Home address
Original static IP address of the node
Known to everybody as the identity of the node
Care-of-address
Changes at each new point of attachment Is mobile nodes location specific address
These are similar to MSISDN number and the MSRN(Mobile
Station Roaming Number) respectively as in GSM network
-
7/25/2019 Mobile Client
39/58
Two more network elements in Mobile IP that play a
very significant role in routing of the packets as part of
mobility management are home agent and foreign
agent
Home agent It is a router on a mobile nodes home network
It forwards datagrams for delivery to the mobile node
through a tunnel when it is away from home
The home agent also maintains current locationinformation of the mobile node
-
7/25/2019 Mobile Client
40/58
Foreign Agent
It is a router on a mobile nodes visited network which
provides routing services to the mobile node while registered
The foreign agent detunnels and delivers datagrams to the
mobile node that were tunneled by the mobile nodes home
agent
For datagrams sent by a mobile node, the foreign agent may
serve as a default router for registered mobile nodes
This is similar to the concept of HLR and VLR in cellular
network
Step 1:
-
7/25/2019 Mobile Client
41/58
Step 1: When a mobile node is located on its home network, it operates with its
mobility services
Step 2: When the mobile node detects that it has moved to a foreign network,
it registers with the foreign agent and obtains a care-of address on theforeign network
Step 3: The care-of address can either be determined from a foreign agents
advertisement or by some external assignment mechanism like DHCP
Step 4: The mobile node registers its new care-of address with its home agent
informing its new location and new care-of address
Step 5: The home agent forwards all the incoming data packets to the foreign
network using the care-of address
Step6: The delivery requires that the packet header is modified so that the
care-of address becomes its destination IP address
-
7/25/2019 Mobile Client
42/58
Step 7:
The new header encapsulates the original packet, causing the
mobile nodes home address to have no impact on the
encapsulated packet routing Diagram depicting how Mobile IP works
The diagram shows
General terms how Mobile IP deals with the problem of
dynamic IP addressesOn returning to its home network from being registered
elsewhere, the mobile node deregisters with its foreign agent,
through exchange of a Registration Request and the
Registration Reply message
-
7/25/2019 Mobile Client
43/58
Mobile IP Architecture
-
7/25/2019 Mobile Client
44/58
Let us look at the example of IP datagrams being
exchanged over a TCP connection between the mobile
node A and another host Server X, following are the
steps involved: Step 1:
Server X wants to transmit an IP datagram to node A
The home address of A is advertised and known to X
X does not know whether A is in the home network or somewhereelse, thus X sends the packet to A with As home address as the
destination IP address in the IP header
The IP datagram is routed to As home network
-
7/25/2019 Mobile Client
45/58
St 3
-
7/25/2019 Mobile Client
46/58
Step 3:
At the foreign network, the incoming IP datagram isintercepted by the foreign agent
The foreign agent is the counterpart of the home agent in theforeign network
The foreign agent strips off the outer IP header, and deliversthe original datagram to A
Step 4:
A intends to respond to this message and sends traffic to X In this example X is fixed IP address
For routing As IP datagram to X, each datagram in sent tosome router in the foreign network
This router is the foreign agent A uses Xs static IP address as the destination address in the
IP header
S 5
-
7/25/2019 Mobile Client
47/58
Step 5:
The IP datagram from A to X travels directly across the
network using the Xs IP address as the destination address
-
7/25/2019 Mobile Client
48/58
-
7/25/2019 Mobile Client
49/58
Discovery
Agent advertisement is transmitted by both home and
foreign agents to advertise their services on a link
Mobile node uses these advertisements to determinetheir current point of attachment to the Internet
The Mobile IP discovery procedure has been built on
top of existing ICMP (Internet Control MessageProtocol)
router discovery
router advertisement
router solicitation procedure Mobile IP uses control messages that are sent to and
rom UDP port number 434
-
7/25/2019 Mobile Client
50/58
Additional ICMP router information includes
0 One-byte Padding
16 Mobility Agent Advertisement
19 Prefix-Length
Mobile IP control messages include extension like 1 Registration Request
3 Registration Reply
32 Mobile-Home Authentication
33 Mobile Foreign Authentication 34 Foreign-Home Authentication
-
7/25/2019 Mobile Client
51/58
The discovery process
For discovery
The router or an agent periodically issues a router advertisementICMP message
The mobile mode on receiving the advertisement packetcompares the network portion of the router IP address with thenetwork portion of its own IP address allocated by the home
network If they do no match then the mobile node knows that it is in a
foreign network
What is router advertisement?
A router advertisement can carry information about default router
and one or more care-of address If a mobile node needs a care-of address without waiting for the
agent advertisement, then the mobile node can broadcast asolicitation that will be answered by any foreign agent
-
7/25/2019 Mobile Client
52/58
Registration
Once a mobile node obtained a care-of address from
the foreign network, same needs to be registered with
the home agent
The mobile node sends a registration request to a
home agent with the care-of address information When the home agent receives this request, it updates
its routing table and sends a registration reply back to
the mobile node
-
7/25/2019 Mobile Client
53/58
Authentication
As part of registration, the mobile node needs to be
authenticated Each mobile node, foreign agent and the home agent
support a mobility security association (SA) for mobileentities
This is indexed by their security parameters index (SPI)and IP address, which must be its Home Address
Registration messages between a mobile node and its homeagent MUST be authenticated with an authorization-enabling extensions
Eg: The Mobile-Home Authentication Extension, this MUST be thefirst authentication extension, foreign agent-specificationextensions MAY be added to the message after the mobile nodecomputes the authentication
The registration process involves the following four
-
7/25/2019 Mobile Client
54/58
The registration process involves the following four
steps:
The mobile node requests for forwarding service from the
foreign network by sending a registration request to theforeign agent
The foreign agent relays this registration request to the home
agent of that mobile node
The home agent either accepts or rejects the request and
sends a registration reply to the foreign agent
The foreign agent relays this reply to the mobile node
-
7/25/2019 Mobile Client
55/58
-
7/25/2019 Mobile Client
56/58
Tunneling
In mobile IP, an IP-within-IP encapsulation mechanism
is used
Here the home agent adds a new IP header called the
tunnel header
The new tunnel header uses the mobile nodes care-ofaddress as the tunnel destination IP address
The tunnel source IP address is the home agents IP address
The tunnel header uses 4 as the protocol number
In IP-within-IP, the entire original IP header is preserved sthe first part of the payload of the tunnel header
The foreign agent after receiving the packet, drops the
tunnel header and delivers the rest tit he mobile node
-
7/25/2019 Mobile Client
57/58
Tunneling in Mobile IP
-
7/25/2019 Mobile Client
58/58
IP header in Mobile IP