CS 1 Wireless Communication and Mobile Programming Mobile
CS 1: Wireless Communication and Mobile Programming Mobile Computing Architecture Dr. Khaled Mahmud Laurentian University International Global Experience Program Summer 2016
Agenda �Internet- Ubiquitous network �Mobile computing architecture �Presentation �Application �Data �Mobile computing design consideration �Content �Context �Platform �Security (c) Khaled Mahmud 2
Reference �Chapter 2 [TEL] �Web references (c) Khaled Mahmud 3
Hierarchy of Networks �Core �Distribution �Access (c) Khaled Mahmud Source: Cisco 4
Next Generation Network (NGN) (c) Khaled Mahmud Source: Huawei 5
The Internet �The network of networks: The biggest network of all �Ubiquitous (almost there) �IP-based network �Ready to carry any content/service (voice, video, data) (c) Khaled Mahmud Source: Cisco 6
3 -Tier Architecture of Mobile Computing: Network-centric Approach �Presentation Tier �Application Tier �Data Tier User Interface Tier-1: Presentation Tier (c) Khaled Mahmud Proxies/ Adaptation Middleware Process Business Logic Management Middleware Access Network Tier-2: Application Tier Database Management Middleware Data Store Tier-3: Data Tier 7
Components of 3 -Tier JDBC Internet Explorer i. Planet web server Java server pages RMI SOAP Android browsers Apache Opera mobile Servlets Oracle Web. Logic SAP Net Weaver Enterprise Java Beans JBOSS XSLT Jakarta IIOP HTML XML IBM Web. Spehere . NET Tier Glass Fish CGI (C, Perl, Python) WAP browser Java. Script RPC Zend PHP Jetty HTTPS Google’s cloud computing –based tier XML RTSP Voice Internet Information Server Active Server Page (c) Khaled Mahmud Aggregation service XML Data and web feed Pike Roxen Oracle and its applications MS Exchange Equipment . NET & Transaction server MS Commerce Server COM Database Other applications and web services WML/HDML HTTP J 2 ME SQL XML ZOPE SOAP XML Data Store COM adapters Legacy applications Appliances 8
Presentation Tier �Related to User Interface �Audio, visual, other mechanical (e. g. touch screen, gyro, vibration, pen) �Runs on client device �Includes browsers, customized client programs �Can involve various agent software �Functions range from simple HTTP-based service access to complex data access and management (c) Khaled Mahmud 9
Application Tier �‘Middle Tier’ �Runs Business Logic �Process user input �Obtain data �Make decision �Performs transcoding �Technologies include CGI, Java, JSP, . NET, PHP �Usually (should be) independent of Presentation or Data Tier (c) Khaled Mahmud 10
Application Tier (cont…) �Mobile computing environment specific functions �Decisions on rendering �Network management �Security �Datastore access �Most of these functions are implemented in middlewares (c) Khaled Mahmud 11
Categories of Middleware �Message-oriented middleware �Transaction Processing middleware �Database middleware �Communication middleware �Distributed objects and components �Transcoding middleware (c) Khaled Mahmud 12
Web Services �Standard means of information exchange �Between different software application �Running on variety of platforms �Identified by URI �Uses XML/JSON to define public interfaces �Basic architecture include �Service requester �Service provider �Discovery agency �Interaction flow: �Publish Find Bind (c) Khaled Mahmud 13
Data Tier �Datastore or database �Can be permanent or temporary �Can be �Text-based �Hierarchical �Relational �XML/JSON format �A legacy system can be considered as data source or a document �Through proper adapter (middleware) (c) Khaled Mahmud 14
Database Middleware �Database should be independent of Application Tier (business logic) �Database middleware helps to create that isolation �Database middleware runs between application program and database �Database middleware also called connectors �ODBC, JDBC �Connectors enable program to access various data sources from various database vendors (c) Khaled Mahmud 15
OMA Data Synchronization and Device Management (Sync. ML) � Developed under the project called � Open Mobile Alliance Data Synchronization and Device Management � Formerly called Sync. ML � Vendor independent data synchronization solution � The protocol supports � HTTP 1. 1 � Browser and Content (previously called WAP browsing): XHTML Mobile Profile � OBEX (used in Bluetooth) � SMTP/POP 3/IMAP � Supported by � Motorola � Samsung � Nokia/Siemens � and others (c) Khaled Mahmud Source: https: //en. wikipedia. org/wiki/Open_Mobile_Alliance 16
Design Consideration of Mobile Computing �Mobile computing development needs to be �Context-sensitive �But context independent (c) Khaled Mahmud 17
Context-based Service Adaptation �Service needs to be adapted according to the context �Content can be adapted �Behavior can be adapted �Approaches �Content with context awareness �Content switch on context �Content transcoding (c) Khaled Mahmud 18
What is Context in Mobile Computing? �Definition by feature: �Contextual Information �User � Preferences, Goals, State of Mind, etc. �Task � Difficulty, Criticality, etc. �Environment � Temperature, location and settings, nearby services& people, etc. �Time � Time of day, day of week, etc. (c) Khaled Mahmud Source: Ed Sykes, et. al. 19
Contextual Information (c) Khaled Mahmud 20
Context-aware System �Context-aware system can handle context-related information �Extract �Interpret �Use �Adapts functionality to match the current context �Challenge for machines �Context capture �Context representation �Filtering and interpretation of contextual data (c) Khaled Mahmud 21
Context Management �Involves �Context sensing �Context representation �Context interpretation (c) Khaled Mahmud 22
Context Representation �W 3 C approach �Composite Capabilities/Preference Profile (CC/PP) �Resource Description Framework (RDF) �Semantic Web (c) Khaled Mahmud 23
Client Context Management �Involves �Policy Manager �Security Manager �Adaptability Manager (c) Khaled Mahmud 24
Security Manager �Provides secure connection between client device and origin server �Main security issues �Confidentiality �Integrity �Availability �Non-repudiation �Trust (c) Khaled Mahmud 25
Adaptability �Needs to consider �Physical capability of the device �Logical capabilities of the device �Available network bandwidth �Payload �May require transcoding (c) Khaled Mahmud 26
Content Transcoding �Spatial Transcoding �Temporal Transcoding �Color Transcoding �Code Transcoding �Object or Semantic Transcoding (c) Khaled Mahmud 27
- Slides: 27