mobile computing unit-6

82
UNIT - VI SYNCHRONIZATION

Upload: ramesh-babu

Post on 30-Jun-2015

524 views

Category:

Education


8 download

DESCRIPTION

JNTU, Kakinada Mobile computing UNIT 6 slides

TRANSCRIPT

Page 1: Mobile Computing UNIT-6

UNIT - VI

SYNCHRONIZATION

Page 2: Mobile Computing UNIT-6

INTRODUCTION: • We know that the database management

in mobile computing have two components- database engine and synchronizer.

• Generally a mobile DBMS facilitates insertion, modification, and retrieval of data from local database it also synchronize the change of records at databases in remote central server.

• Data dissemination techniques describes how a server or distributed mobile computing system broadcasts data to

Page 3: Mobile Computing UNIT-6

Mobile devices.• Let us consider a PC is associated with

mobile device and this computer connected to the internet which download applications and large files.

• Now consider the data at the computer is modified at some instant, the disseminated data at the server has changed at another instant, the data at mobile device is also changed at another instant- the changes are take place at one of the three ends at different instants. There be a need to synchronize the data at three ends.

Page 4: Mobile Computing UNIT-6

SYNCHRONIZATION: Data disseminated and replicated at remote stations may occur in number of ways.

• Data replication may done by copying the data from one place to another place, or copying the data from one place to many other places, or copying the data from many other places to many other places.

• For example music files are copied into iPods, iPhones, and to several devices.

• The replicated data may be full copy or a partial copy.

Page 5: Mobile Computing UNIT-6

• Replication from data source to device• Replication from data source to many

devices

Mobile service provider or nearby local computer or Device connected to wireless or wired media

MOBILE DEVICE

Downlink Data copy sent from a system to another system

Device specific platform, OS, and data format

Central server or data server connected through wireless or wired media

Mobile client devices 1…J

Downlink Data copy sent to many devices

Device specific platform, OS, and data format

Page 6: Mobile Computing UNIT-6

• Data replication among many data sources and devices in peer-to-peer architecture.

Mobile computing system or Device - 1 Mobile computing system or Device - 2

Mobile service provider

Uplink DownlinkDownlinkUplink

System specific platform, OS & data formats on each system

Data sent between the systems in peer-to-peer architecture

Page 7: Mobile Computing UNIT-6

Full copy replication: Means that the full set of data records replicates according to certain domain-specific data format rules at the replicating devices or systems.• A server having a set of 8 images with resolution 640 × 640 pixels in the domain of a mobile device, it can replicate and hoard with 160 × 160 pixels when all 8 images copied, though with the different resolution, then it is known as full copy replication.Partial copy replication: A subset of the data set copied according to certain domain-specific rules at the devices or systems.

Page 8: Mobile Computing UNIT-6

• Partial replication should have consistency and do discrepancy and all basic features of original data.

• Generally data replication precedes data synchronization. The synchronization refers to maintaining data consistency among the disseminated or distributed data.

• Data consistency means if there is data modification at the server then the modification should reflect in the data with in the device within a defined period. There are two ways of synchronization.

Page 9: Mobile Computing UNIT-6

One-to-many synchronization: We know that each system stores the data either pushed from the server or by sending the request.

• This type of synchronization is occurred in the client server architecture. Here the server maintains a synchronization server, it may separate accounts of different users for that data.

• The synchronization server, synchronizes the data and disseminates the copies to each and every client.

Page 10: Mobile Computing UNIT-6

Many-to-many synchronization: Here the synchronization system have peer-to-peer architecture.

• In this architecture each system is capable of pushing the data to other systems as well as getting the data by sending pull requests.

• Synchronization within mobile computing comes under the many-to-many synchronization and it is categorizes into fine areas;

Page 11: Mobile Computing UNIT-6

1) Synchronization in mobile computing systems.

2) Usage models for synchronization in mobile computing environment.

3) Domain dependent specific rules for synchronization.

4) Conflict resolution strategies5) The use of synchronizer.

Page 12: Mobile Computing UNIT-6

Synchronization in mobile computing systems:

Data synchronization is defined as the process of maintaining the availability of data generated from the source and maintaining consistency between the copies pushed from the source and local cached or hoarded data at different computing systems without discrepancies or conflicts among the distributed data.

Page 13: Mobile Computing UNIT-6

• a consistent copy of data is a copy which may not be identical to the present data record at the data generating source, but must satisfy all the required functions and domain dependent specific rules .

• The domain specific rules are in terms of resolution, precision, data format, and time interval permitted for replication. A consistent copy should not be in conflict with the data at the data generating source.

• Data generating source for synchronization may be a server, distributed mobile computing system, a device. The source device sends the data, configuration

Page 14: Mobile Computing UNIT-6

Information, and new subscriptions for the services required by the source device.

• Data synchronization helps mobile users in accessing data and using it for computing on mobile devices, When a device not connected to a source or server, the user may employ data that is not in conflict with the present state of data at the source.

• synchronization also helps mobile users in hoarding the data at the personal area computer and vice versa.

Page 15: Mobile Computing UNIT-6

•Synchronization helps storage at enterprise server a large chunks of information for the many devices connected to it and update partial copies of data at frequent intervals.• the following are the different processes in data synchronization;1)Synchronization between the server and device when the server sends full copy.2)Synchronization between device as a data generating source and server when device sends full copy.3)Synchronization between server and device when partial but consistent copy stored at device and updated as soon as

Page 16: Mobile Computing UNIT-6

the copy modifies.4) Synchronization between server and

device for partial but consistent copy stored at the device, but the modified copy at server need not be send to the device on next transaction.

Types of synchronization:Data synchronization has happened in

between the mobile device and service provider (server), mobile device and personal computer or between the mobile devices which are enabled Wi-Fi or Bluetooth.

Page 17: Mobile Computing UNIT-6

The following are different synchronization categories;

1)Two way synchronization: Partial or full copies of data are synchronized between device and server. For example consider the same data set at the device and at the server, two way synchronization mean, any changes made at one side it should be consistent at other side.

2)Server alerted synchronization: In this method when the data is modified at server, then it generates the alerts the to the clients, now the client synchronizes

Page 18: Mobile Computing UNIT-6

modified data by placing the pull request to the server.

3) One way server initiated synchronization: In this method server initiates synchronization of any new modifications since the communication of last modification. Now the server sends the modified copy to the client.

4) Refresh synchronization at client: In this method, client initiates the synchronization with the server for refreshing its data and refreshing its configuration parameters saved at server.

Page 19: Mobile Computing UNIT-6

For example, when the connecting device parameters are changed or a new device connected to the server, then the configuration information is send to the server to takes place the data dissemination from server or refresh synchronization at client in future.

5) Client initiated synchronization: Here the client initiates synchronization with the server for sending its modifications.

For example, the client mobile device initiates synchronization of ring tones or music files available at server, in periodic

Page 20: Mobile Computing UNIT-6

Intervals, or as and when it connects to the server.

6) Refresh from client for backup and update synchronization: Here the client initiates the synchronization and sends backup to the server for updating its data.

For example, a mobile device initiates refreshing of the hoarded data at the server in periodic intervals, or as and when it connects to the server.

7) Slow (full data copy) synchronization: In this method client and server data copies are compared field by field and are

Page 21: Mobile Computing UNIT-6

synchronized as per conflict resolution rules.

The full copy synchronization is takes place when device is in idle state and immediately not connected to the server. For this reason it is called slow synchronization, but it is a thorough synchronization.

Formats of Synchronization Data copies: During the synchronization the data formats at a server and at the device may different from each other.

• When the data at the source is synchronized with data at the receiver, it

Page 22: Mobile Computing UNIT-6

should be done as per the formats of the receiver. The following are different formats of data at the receiver;

1)Database Records: Here the records are indexed to facilitate search operation by placing the query.

For example, the contacts in the mobile are indexed as per the first alphabet of the name.

2) Flat Files: In the flat file format the data should be interpreted as a single unit. That is we should read the file from beginning to end, data should not picked

Page 23: Mobile Computing UNIT-6

from the middle of the file. For example, an XML or HTML file at the

server is synchronized with the file at device which is in text or binary file format, the total file should transmitted to the device.

3) Device specific storage: Some times a device may use the specific storage format for synchronize data with the server. The device specific format is depending upon a specific protocol used by the device.

For example, AAC (Apple Audio Communication) is used to music files

Page 24: Mobile Computing UNIT-6

synchronization with in Apple iPod. Contact information in vCard format, vToDO, vCalender, vjournal are used in some mobile devices.

Usage Models for Synchronization:• Four usage models employed for

synchronization in mobile computing systems.

1) Synchronization between two APIs with in a mobile computing system: The usage model for synchronization between two application programming interfaces is the data generated by an application is

Page 25: Mobile Computing UNIT-6

synchronized and used in another application. An API running at the device synchronizes data with another application on the same device or another device.

The following diagram shows synchronization between two APIs of the same mobile computing system.

Mobile computing system application j

Mobile computing system application i

Data Synchronization

Page 26: Mobile Computing UNIT-6

• Data records at personal information manager (PIM) API synchronized with the email API, when email from a new source retrieves at the email API in the device, the name and email address data fields at the application saved as new data record at PIM API. Next time an email is to be sent to the same person, the email API uses the same data record from the PIM API.2) Synchronization between the device and nearby local computer or device connected through a wireless or wired network: This type of synchronization fall into to another usage model to synchronize the data.

Page 27: Mobile Computing UNIT-6

• This type of synchronization is also called Personal Area Synchronization (PAS) using PAS software HotSync or ActiveSync.

For example, synchronization with nearby PC through a serial port using a wired connection to PC and device, synchronization with the nearby computer through a wireless personal area network (WPAN) using ZigBee or Bluetooth. The following diagram shows the device and local computer connected through wire or wireless network.

Page 28: Mobile Computing UNIT-6

3) Synchronization between remote systems and device: The device data records synchronize with the mobile service provider server records and vice versa. Here the device connects to remote systems on Internet through the wired, wireless mobile service provider, or WiFi network.

Mobile Device

Computer connected to device by wireless, Bluetooth, IrDA or ZigBee protocol

Data synchronization

Computer specific platform, OS, and data formats

Device specific platform, OS, and data format at the device

Page 29: Mobile Computing UNIT-6

For example, IntelliSync is a synchronizer synchronizes data at the remote systems with PAS, it is able to do the synchronization through wireless. It is a open architecture, thus can be integrated with enterprise architecture.

4) Synchronization between the device and remote system through local computer: In this case the synchronization is happened between remote server and mobile device through a local system.

• Here first the synchronization takes place between local system and mobile node

Page 30: Mobile Computing UNIT-6

by using the ActiveSync, or Bluetooth, then the local system synchronizes the data at remote server by using WLAN, WiFi etc.

Mobile Device

Computer connected to device by wire, wireless, Bluetooth, IrTA, or ZigBEE

Remote System or Server

Data synchronization between device & Server

Device specific platform, OS, & Data format at each device

Page 31: Mobile Computing UNIT-6

Domain dependent specific rules for data synchronization:

• A mobile computing system consists of multiple domains in which data synchronization takes place.

• Data in mobile device domain has different rules for storage and usage compared with remote system.

• For example data in a system domain is identified by alphabets maximum of 255 characters, and the same data in mobile domain may identified with 8 bit number.

Page 32: Mobile Computing UNIT-6

• The following are the some domain specific rules for data synchronization.

1)Data synchronization in domain specific platforms and data formats: Here data synchronization can takes place between data generating domain and destined domain, both have different platforms and formats.

For example, a database record at the device may be in structured text or XML format and its OS is Symbian. Now the record is synchronized with database record at server where it can be in DB2

Page 33: Mobile Computing UNIT-6

or oracle format and its OS may be windows.

2) Domain specific data property dependent synchronization: Data synchronization takes place one domain with one data property and another domain having different property.

For example, a data record ID at the device is specified in byte format, after the synchronization the same record is specified in 16-bit word at the server.

Another one is a device use 8-bit ASCII for ID, while server uses 16-bit Unicode.

Page 34: Mobile Computing UNIT-6

3) Synchronization up to last successful act of synchronization: One of the domain specific rule is the data record is considered to be synchronized if it was updated at the last connection.

For example, the call log in phone has the records of missed calls, dialled numbers, and received calls. A data record at the access point is synchronized with phone it was updated at the last connection, then it eventually updated on the next connection.

Page 35: Mobile Computing UNIT-6

4) Memory infrastructure dependent rule based synchronization at two different domains: Here the domain specific rule is the data records are synchronized up to the allotted memory.

For example, At the remote server data is maintained in the allotted memory of 8 MB and a device allotted 128KB only for that data. Thus only part of the data items can be synchronized and saved at the device. The device synchronizes data from the remote server for each time.

Page 36: Mobile Computing UNIT-6

• Memory infrastructure dependent rule, that maximum data be synchronized at the device and arranged in order such that the last cached data is at top and least recently cached is on last.

• Memory infrastructure dependent rule, that minimum data be synchronized at the device and arranged in order such that the last cached data is at top and least recently cached is on last.

5) Synchronization with temporal properties of data: A domain specific rule that data records synchronized within specific time

Page 37: Mobile Computing UNIT-6

interval and within time specified by the domain.

For example, certain data records are synchronized every day, week or in a month.

A critical data record must be updated before using the data within least time, otherwise the data is considered to be in temporal conflict.

Page 38: Mobile Computing UNIT-6

Personal Information Manager:Personal Information Manager is a software

that manages the data. Now a days most of the smart phones have a specialized API for PIM.

• The PIM API may also include the synchronizer with other devices and applications.

• The function of the PIM is, creation of data copies, updating, replacement, addition and deletion of data records.

• The PIM is also responsible for sending of data to API and receiving of data from

Page 39: Mobile Computing UNIT-6

another API, as well as sorting of the records.

• PIM may also manages the data copies at the devices for user. It also provide multiple selections and various options through PIM API.

• The PIM API has several applications such as calendar, address book, tasks to do etc..

• The PIM address book consists list of contacts with office, home, mobile, fax, web addresses and email Ids.

• Tasks-to-do consists a list of planned tasks by the user. It also reminds the user

Page 40: Mobile Computing UNIT-6

Of the task as per the planned time.• The PIM data is able to synchronize with

PC, WPAN, remote system, or at another mobile device.

• Suppose the mobile device may loose the PIM data records due to accidental deletion or battery power loss, there is an option for synchronization called “restore” which helps restoring the copies at the device.

• When the mobile device connected to a PC, WPAN, remote system, or another mobile the copies are synchronized with that device to use later.

Page 41: Mobile Computing UNIT-6

• Here the system may store (backup) the hole data or only the selected content.

Synchronization & Conflict resolution strategies:

• Conflict in synchronization arises when a data copy changed at one end but not simultaneously modified at other ends therefore, the same data item at two

ends, is not same.• Let the data items P and Q, in conflict

during computation in the time interval between t1 and t2, where t1 and t2 are the instants when P and Q are modified.

Page 42: Mobile Computing UNIT-6

•A conflict resolution strategy adopted in such cases to resolve conflicts, the strategy specifies the rules that need to be applied for conflict resolution.1)Priority based resolution rule: Data-server can be specified as dominant higher priority entity for conflict resolution of synchronized data records.For example, let us consider mobile-service-provider server S having a list of missed, dialed, and received calls for the device D. D has a synchronized list of missed, dialed, and received calls. When the list at D in conflict with the list at S,

Page 43: Mobile Computing UNIT-6

priority-based resolution rule specifies that the server priority is higher.2) Time based resolution rule: Data node P specified as dominant entity when P always receives copies first from the server S.For example, S having the emails disseminated to the device D at an instant t1 D connects to a personal area computer (PC) to which the device always synchronizes the mails at a later instant t2 Time-based resolution rule specifies that D dominant because it receives the mails earlier than the PC.

Page 44: Mobile Computing UNIT-6

3) Information based resolution rule: Data node can be specified as dominant entity when information specific to it is synchronized with other nodes.For example, Server S having the device configuration record disseminated from the device D Information-based resolution rulespecifies that since the information is for the device D hence D is dominant node. For device-specific information, the device data accepted rather than the server data.

Page 45: Mobile Computing UNIT-6

4) Time stamp based resolution rule:Time-stamp-based resolution rule necessitates that a time-stamp must be used while sending a data copy. The copy found to be latest resolves the conflict.For example, Server S having the flight information which it always disseminates at regular intervals with a time stamp over it to the device D and as well as to a PC.5) User interaction based resolution: An API at a device allows a user to interact with the device and this interaction resolves the conflict arising out of the duplicate or multiple entries.

Page 46: Mobile Computing UNIT-6

User interaction resolution rule specifies that the duplicate data entries permitted atthe node when a receiver API later on resolves the conflict after interaction withUser.For example, Two phone number entries found for same name and address, the device prompts user to resolve the conflict, user resolves the conflict by opting for one of it.

Page 47: Mobile Computing UNIT-6

Synchronizer:• Synchronizer is a software tool for

synchronization. It resides at the host. If the synchronizer host is a server then it is called synchronization server.

• Synchronizer is configured as per specified domain dependent and conflict resolution rules.

• Synchronizer finds any data item or record appended at the data set.

• The synchronizer discovers modifications with respect to the last action of synchronization on specified data copies

Page 48: Mobile Computing UNIT-6

Which has been deleted, added, or modified. It resolves the conflict as per the resolution rules.

• Synchronizer disseminates the changes to other devices or systems so that other devices incorporate changes in their data copies.

A synchronizer adopts the method for synchronization more efficient compared to one in which the synchronizer directly retrieves the changed records.

Page 49: Mobile Computing UNIT-6

• First logs in the information about the records which have been changed and then retrieves the changed records by just setting or resetting a flag called dirty or invalid flag.

• When associated flag in set state (=1),record R state is modified or invalidated since previous synchronization. When in reset state (=0), R is not modified or invalidated since previous synchronization. Reduces the possibility of using conflicting entries at the server (or device) hosting the synchronizer.

Page 50: Mobile Computing UNIT-6

Mobile Agent: • Mobile agent consists of software with

data, which can move from one computing system to another autonomously and does functions for a device or system.

• The mobile agent can also described as an autonomous software which runs on a host with some data and which dynamically moving to another host as and when required.

• Mobile agent is a powerful tool for distributed applications and retrieval of remote host information.

Page 51: Mobile Computing UNIT-6

• Mobile agent has dynamic software that runs on different hosts at different times. It makes available the resources of the host to the resource-scarce devices, discovers new resources, and monitors the distribution of resources. • It also manages the network and the distributed computing systems. It is very effective alternative to the use of application-specific server(s) and device middleware for retrieving information and Messages.• the following diagram shows mobile agent based architecture.

Page 52: Mobile Computing UNIT-6

Page 53: Mobile Computing UNIT-6

•Here the agent moves at instants T1, T2, and T3 to process a request, get email, and get records from a database, respectively, when a mobile agent moves at instant T1, T2, or T3, it saves its own state at the host and transmits this saved state to the next host in order to resume execution of the codes starting from the saved state.Mobile agent characteristics:1. Mobility of code and data from one computing system (host) to another.2. Ability to learn in order to adapt code anddata to the host computing system.

Page 54: Mobile Computing UNIT-6

3. Ability to clone, extend, or dispose itself after its role finishes.4. Compatibility to the hosts.5. Ability to continuously and autonomously process requests and send responses and alerts.Advantages of mobile agents: 1. Asynchronous running of codes on diversified heterogeneous hosts.2. Reduced computational and data requirements on the devices with limited resources.3. Tolerance to connection failures.

Page 55: Mobile Computing UNIT-6

4. Only the agent source (for example, device middleware, which sends the agent) needs to be modified in order to redefine the functions expected from the agent.• There is no need of a centralized or an application-specific server.5. An agent can send the requests to a computing system as well as generate responses for requests from the system. An agent thus has certain similarities to peer-to-peer architecture.6. The connection protocol and the connecting network between host and source are immaterial.

Page 56: Mobile Computing UNIT-6

• The main objective of mobile agents is application virtualization environment. An agent may have strong or weak mobility.

• An agent may also have migration and collaboration latencies. Migration latency means the waiting period in migrating from one host to another.

• Collaboration latency means waiting period in start of collaboration between application server and service requesting system.

• There is some environmental and platform specific difficulties in implementing mobile

Page 57: Mobile Computing UNIT-6

agents due to adaptability and compatibility of diversified hosts and also some security specific is there.

Aglets: Aglet is a Java base agent. Java is a mobile agent platform and library which are used for building applications based on mobile agents.

• An aglet can move autonomously and spontaneously and its code can move from one host to another.

• Aglet code can able to execute on remote host and it adopt the behaviour according to the host.

Page 58: Mobile Computing UNIT-6

• Java security classes are used to provide security to the aglets.

Application Server:• Application server (AS) is a software

which executes on server computer.• The application server implements

application level logic for business functions.

• Here application logic means, the logic commands or instructions are used for sending and receiving logic results from computing systems (clients) by the application server.

Page 59: Mobile Computing UNIT-6

• The business functions means how the logical transactions carried out between the server and the client.

• The following are some example transactions carried out by the mail AS.

(a) Establishing connection between mail APIs (application program interfaces) and mail server.

(b) Updating mails by inserting, adding, replacing, or deleting.

(c) Querying for the mails.(d) Terminating the connection between

the API and the mail server.

Page 60: Mobile Computing UNIT-6

• The application server gets the requests from collaborating or independent mobile devices of an enterprise or from distributed mobile computing system.

• All the requests are processed by the application server and responses are send back.

• The following are different functions exhibit by the application server.

1)It provides application services and runtime environment.

2)It handles presentation services to the systems (clients) for this purpose it

Page 61: Mobile Computing UNIT-6

maintains a separate database records.3)An application server itself integrates

with backend databases and systems.The following diagram shows N tire

application server.

Page 62: Mobile Computing UNIT-6

• Here consider that there are j clients which can request to the server. A client 1 … or j sends the request from collaborating or independent mobile devices of an enterprise or from a distributed mobile computing system.• Now the requests are passed through tire-1 to tire N and then responses are sent to the backend system, tire-1.The following are the some of the services provided by the application server at tire-21. Service i: application logic processing at the server

Page 63: Mobile Computing UNIT-6

2. Service j: presentation services for device responses and decoding the device requests.3. Service k : transaction services with support to pervasive computing model of mobile applications.4. Application l: system integration service for backend services and database at Tiers 3, …, N.The following are the examples of web database and enterprise application servers;1.IBM DB2 is an RDBMS (Relational Database Management System) data server from IBM,

Page 64: Mobile Computing UNIT-6

and its versions run on handheld devices and in enterprises where application logic processing at the server.

2. Oracle 9i database Server-RDBMS Oracle9i server has a large number of features and it supports XML documents and has an option for cluster database.

Enterprise Server:• A server which is centralized data server

in an enterprise in known as enterprise server.

• The enterprise server holds most of the information about the enterprise and it responds to the request that are from authenticated and authorized clients.

Page 65: Mobile Computing UNIT-6

• The enterprise servers consists of at least 3 to N tires. These servers has backend database.

The following are examples for enterprise servers

1.Web Generic application servers for Java-based web applications (Microsoft, Sun, and Netscape) with additional support for wireless network and mobile devices.

2. IBM Web Sphere Application Server with specialized mobile Web computing application server.

Page 66: Mobile Computing UNIT-6

3. IBM Domino Application Server for workgroups, email applications, and support for handheld and Windows CE devices.4.Microsoft Mobile Information Server. (e.g., for messenger and email).5. Oracle 9i Application Server for database services with mobile support.6. Puma and Synchrologic iMobile Suite for data-synchronization services.7. Nokia WAP (Wireless Application Protocol) Server for wireless Internet WAP apps.8. BlackBerry Enterprise Server (BES)─ a middleware software for BlackBerry wireless devices.

Page 67: Mobile Computing UNIT-6

Sun Java System Web Server 6 • Sun Java System web server 6 is used for

large business applications. It is compatible with number of operating systems and allows the deployment of CGI, PHP, ColdFusion, Servelets, JSP and ASP.

• CGI-Common Gateway Interface is a protocol, it is a language neutral interface for processing. It use PERL or PHP.

• PHP-Pre Hypertext Processor, is a language for processing the text and preparing it in hypertext format and enables dynamic web pages.

Page 68: Mobile Computing UNIT-6

• ColdFusion creates pages by joining different entities, elements, and databases before a web server sends the response to the client.

• Servelets are Java classes at the server side and JSP is a web page at the server which does the following using servelets;

a)Process the web page.b)Connects the page to database.c)Deploy Java script code, Java components

and directives.d)Generates responses when client send

request in HTML.

Page 69: Mobile Computing UNIT-6

• ASP-Active Server Page is also a web page do the following;

a)Process the web page.b)Connects to the database.c)Deploy Java script, VB script and

directives.d)Generates responses when client send

request in HTML. e)Provide application services include email

service, security, file system, and session management.

Page 70: Mobile Computing UNIT-6

• In ASP an access manager provides secure access to web based resources and session management lead to starting a session, carrying transactions and closing the session.

Content Engine:• Sun Java web server 6 has a content

engine. It is a software layer, used for publishing web application response.

• In other words, it is a program which uses content sources at a server and drives them to destination.

Page 71: Mobile Computing UNIT-6

• Here driving means, sending publishing, or generating response to web applications so that the client gets the required content from the source (server).

• The content engine has three components- search engine, content management engine, and HTTP engine.

• The content engine is a layer for web content creation, addition to existing contents, and storage of content page using HTML, JSP, and ASP.

• It maintains integrity of clients content at the server.

Page 72: Mobile Computing UNIT-6

IBM WebSphere MQe: • IBM websphere is an application server

for web applications on mobile devices with Messaging and Queuing Everyplace (MQe).

• Every place means for mobile devices at all places including sensors, phones, PDAs,IBM

WebSphere Voice Server, text-to-speech(TTS) software, and IBM WebSphere RFID Premises Server.

• It runs on mobile devices with application accelerator, which accelerates the running of an application so the results obtain much faster.

Page 73: Mobile Computing UNIT-6

• The functions of websphere is deployment and integration of client data.

• The following are the feature of MQe;1.It assure secure messaging.2.It decouples from the application.3.It uses queue manager that sends

messages onto a queue.4.It has adapters that adapt to device

interfaces.5.It enables remote connection to mobile

devices.

Page 74: Mobile Computing UNIT-6

• MQe has a development kit used for developing applications for messaging for mobile devices.

• MQe includes portal, transcoding, and personalization servers. A web portal or server deploys data formats and codes which are different from each mobile device.

• Websphere provides three basic services- configuration services, directory services, and networking protocols.

• The basic service of websphere is configuration service and next one is

Page 75: Mobile Computing UNIT-6

Directory service. It deploys JNDS-Java Naming and Directory Service and LDAP- Light weight Directory Access Protocol.

• Websphere also has a HTTP server which functions as a web server.

• The following are other services of websphere;

1. Device management and management of subscriptions for the applications, websphere provides the devices with connectivity protocols, such as TCP/IP, CDMA, GSM and WAP.

Page 76: Mobile Computing UNIT-6

2. It provides a synchronization engine, which synchronizes the data at the device with the server. It maintains consistency without conflicts.

3. It facilitates device caching.4. It enables load balancing, that is

distribution of time between multiple client requests.

Oracle Application Server:• We know that oracle is a popular RDBMS,

the oracle application server enables web based transactions with the database.

Page 77: Mobile Computing UNIT-6

• The latest version of oracle AS is 12G- here G refers the grid computing.

• The oracle 9i AS is used in both windows and UNIX platforms. It includes oracle XML parser and oracleJSP.

• The oracle 9i AS has two components – one is HTTP server and other is 9iAS portal, which has OC4J (Oracle AS container for J2EE1.4)

• In oracle 9i AS, the HTTP server responds to simple SQL requests from the clients. Here a client send the request and getting response through 9iAS enterprise web cash.

Page 78: Mobile Computing UNIT-6

• The HTTP server is also interfaces with 9iAS portal.

• The oracle 9iAS portal has Parallel Page Engine (PPE), which retrieves the pages in parallel to the portal.

• In oracle AS J2EE supports the web applications and EJB establish sessions with the client.

• The 9iAS containing business logic, management, security, e-business and portal functions.

Page 79: Mobile Computing UNIT-6

Portals: • The web portal is a web site, which

supports the following actions;1.It provides application specific programs.2.It provides services available from

number of websites.3.It provide services to PC as well as mobile

devices.4.It provide diversified middleware to

enable transactions with client.5.It enables personalized capabilities like

business transactions to clients.

Page 80: Mobile Computing UNIT-6

6. It provides a path for running distributed or collaboration applications.

7. It has portlets.8. It may have page processing Engine

(PPE)IBM web sphere:• This portal provide a software

architecture for applications and business transactions.

• It has scalability to fit to any size organization and it is a extension of voice based applications.

Page 81: Mobile Computing UNIT-6

Java portal: The Java portlet define a contract between portlet container and portlets.

• To use java portal we may deploy JSR-Java Specification Recommendation 168.

• In Java portlet the WSRP- web service for remote portlet, is a software works as a content aggregator.

• WSRP access and display content which are at remote sites or at portals.

• Finally a portal includes an authentication server, a content aggregator and APIs for service.

Page 82: Mobile Computing UNIT-6

End of UNIT VI