18bit62c U2
18bit62c U2
UNIT II:
Mobile Computing Architecture: History of computers and Internet – Architecture for mobile computing –
Three-tier architecture – Design considerations for mobile computing Mobile computing through Internet –
Making exiting applications mobile enabled.
TEXT BOOK:
• After 1957, in the US ARPA (Advanced Research Project Agency) was formed to fund Science and
Technology projects
• Internet was developed through ARPA
• In 1971, Ray Tomlinson wrote a software to send Email
• In 1986, US developed NSFNET (National Science Foundation Network) for Internet
• In 1995, Internet was officially defined as “the global information system that
i) is logically linked together by a globally unique address space based on theInternet
Protocol (IP)
ii) is able to support communications using the Transmission Control Protocol / Internet
Protocol (TCP / IP)
iii) provides, uses or makes accessible high level services layered on the communications
and related infrastructure
Internet – The Ubiquitous Network
Segments of a Network
• Network can be divided into three segments:
i) Core – Innermost part of the network. Primary function of core is to deliver traffic
efficiently at the least cost
ii) Edge – Outer part of the network. Managed and owned by ISP (Internet Service
Provider). Responsible for the distribution of traffic
iii) Access – This part of the network services the device which needs the service.
Responsible for the transmission of data
Architecture for Mobile Computing
• Mobile computing architecture uses Three tier Architecture
• First tier is User Interface or Presentation Tier
• Second tier is Process Management or Application Tier
• Third tier is Database Management or Data Tier
Architecture for Mobile Computing (contd.)
1) Presentation Tier (Tier I):
- User facing system tier
- These applications run on the client device and offer all the user interfaces
- Responsible for presenting the information to the end user
- Eg: web browsers, web scrapers etc
- Web scraper picks up part of the data from the web page and filters off the remaining data
according to some predefined template
2) Application Tier (Tier II):
- It is the middle tier and acts as the engine.
- It is responsible for processing user input, obtaining data and making decisions
- Tier II functions are implemented using Middleware software
- Types of Middleware are
i) Message Oriented Middleware (MOM) – connects different applications through
exchange of messages. A temporary message queue is used to store the messages until it
can be processed
Architecture for Mobile Computing (contd.)
ii) Transaction Processing (TP) Middleware – a TP system takes input data to the system at
the source and delivers the output of the system at the sink. TP middleware maps client
requests to different application tasks
iii) Communication Middleware – used to connect one application to another
iv) Distributed Objects and Components – Eg: CORBA (Common Object Request Broker
Architechture). It is a distributed infrastructure. It is used in servers which handle large
number of clients
v) Transcoding Middleware – used to transcode one format of data to suit the need of the
client. Eg: If we want to access a website through a mobile phone supporting WAP, we
need to transcode the HTML page to WML page so that the mobile phone can access it.
Transcoding means content adaptation to fit the need of the device
3) Data Tier (Tier III) :
- Used to store data needed by the application and acts as a repository for both temporary
and permanent data.
- Database middleware runs between the application program and the database.
Eg: ODBC, JDBC etc.
Design Considerations for Mobile Computing
• Mobile Computing Environment should be Context-Independent as well as Context-Sensitive
• “Context” means all the information the helps determine the state of an object in the environment
• “Object” can be a person, device, place, surroundings etc
• Because of “mobility”, attributed associated with devices and users will change constantly
• So content and behaviour of applications should be adapted to suit the current situation
• There are many ways in which content and behaviour can be adapted. They are:
1) Content with context awareness – Build different applications for different context.
Eg: A bank decides to offer mobile banking application through Internet, PDA and
mobile phone using WAP. Three different applications are used. They are
www.mybank.com/inet.html – contains big pages with text boxes and drop down
menus, animated pictures etc
www.mybank.com/palm.html – as the display size is small, the screen is designed to
be compact for the PDA, animation is changed
www.mybank.com/wap.wml – user interface is completely different, drop down
options are available through option button of mobile phone, graphics and animations
are removed
2) Content switch on Context – There user sees only one application www.mybank.com/
A software is used to identify the type of device and the context. At runtime, this
software adapts according to the device. Then the client request is routed to /inet.html/ or
/palm.html/ or /wap.wml/
3) Content transcoding on Context – Instead of three application programs, there is only one
application program. The same code is transcoded according to the device by a
middleware
• For mobile computing, the access network will be both wireless and wired networks
• In the case of wireless access network, it could be Infrared, Bluetooth, WiFi, GSM, GPRS etc
• For wired access network, it could be a LAN
• For wired network,
- bandwidth is higher and stable
- device has large memory and display
- there is no limitation in battery power
- complexity and challenges are less
• But wireless access network has many constraints
Making Existing Applications Mobile Enabled
• Existing applications running on fixed networks will be used by limited number of users
• But mobile applications need to be ubiquitous (everywhere at the same time)
• There are many ways to achieve this:
1) Enhance existing application – make changes in the code to support mobile environment
2) Rent an application from an ASP (Application Service Provider) – many organizations
develop mobile applications and give them for rent
3) Write a new application – develop new application to meet mobile environment
4) Buy a packaged solution – solutions for various business areas like manufacturing, sales,
marketing etc are offered by many companies
5) Bridge the gap through middleware – use middleware techniques to convert the existing
application to suit the mobile environment