ecet 581/cpet/ecet 499 mobile computing technologies & apps
DESCRIPTION
ECET 581/CPET/ECET 499 Mobile Computing Technologies & Apps. Introduction to Mobile Computing & Technologies Lecture 1 Paul I-Hai Lin, Professor Electrical and Computer Engineering Technology Indiana University-Purdue University Fort Wayne. Mobile Computing?. - PowerPoint PPT PresentationTRANSCRIPT
January 10, 2007January 10, 2007 11
ECET 581/CPET/ECET 499ECET 581/CPET/ECET 499 Mobile Computing Technologies & AppsMobile Computing Technologies & Apps
Introduction to Mobile Computing & Introduction to Mobile Computing & TechnologiesTechnologies
Lecture 1Lecture 1
Paul I-Hai Lin, Professor Paul I-Hai Lin, Professor Electrical and Computer Engineering TechnologyElectrical and Computer Engineering Technology
Indiana University-Purdue University Fort WayneIndiana University-Purdue University Fort Wayne
January 10, 2007January 10, 2007 22
Mobile Computing?Mobile Computing? Computer History & ApplicationsComputer History & Applications
http://www.ecet.ipfw.edu/~lin/Presentation/CompNetApps11_17_files/frame.htmhttp://www.ecet.ipfw.edu/~lin/Presentation/CompNetApps11_17_files/frame.htm
• Mainframe (IBM 360)Mainframe (IBM 360)• MicrocomputersMicrocomputers• MicrocontrollersMicrocontrollers
NetworkingNetworking• Dialup, TCP/IP, Ethernet LAN, WAN, Wi-Fi, WLANDialup, TCP/IP, Ethernet LAN, WAN, Wi-Fi, WLAN
Client-Server ComputingClient-Server Computing• Web serverWeb server• File ServerFile Server• Database serverDatabase server
Distributed ComputingDistributed Computing Mobile ComputingMobile Computing Peer-to-peer ComputingPeer-to-peer Computing Grid ComputingGrid Computing Wireless CommunicationWireless Communication
January 10, 2007January 10, 2007 33
Distributed ComputingDistributed Computing
January 10, 2007January 10, 2007 44
What is Mobile Computing?What is Mobile Computing? Mobile ComputingMobile Computing
• Computing Platforms: PDAs, Smartphone, Pocket Computing Platforms: PDAs, Smartphone, Pocket PCs, Tablet PCs, LaptopsPCs, Tablet PCs, Laptops
• Networked embedded processors & appsNetworked embedded processors & apps• Information & computing anytime, anywhereInformation & computing anytime, anywhere
Distributed computingDistributed computing• Nodes (computers)Nodes (computers)• CommunicationsCommunications• Computing tasksComputing tasks
Wireless communicationWireless communication
January 10, 2007January 10, 2007 55
Mobile Computing Applications Mobile Computing Applications User GroupsUser Groups
Cellular phone/VoIPCellular phone/VoIP Personal Information Management (PIM)Personal Information Management (PIM) Mobile Internet AccessMobile Internet Access Mobile Multimedia EntertainmentMobile Multimedia Entertainment Business User ApplicationsBusiness User Applications Mobile EnterpriseMobile Enterprise Retail/Supply ChainRetail/Supply Chain Intelligent TransportationIntelligent Transportation Maintenance and Field ServiceMaintenance and Field Service HealthcareHealthcare Homeland Security/EmergencyHomeland Security/Emergency MilitaryMilitary
January 10, 2007January 10, 2007 66
Mobile Computing ApplicationsMobile Computing Applications EmailEmail Internet accessInternet access Personal Information Management (PIM)Personal Information Management (PIM) Instant MessagingInstant Messaging Data & information accessData & information access Context-aware applicationsContext-aware applications Audio streaming Audio streaming Video streamingVideo streaming Cell phoneCell phone VoIP via WiFiVoIP via WiFi
January 10, 2007January 10, 2007 77
Mobile Computing ConstraintsMobile Computing Constraints Resource-poorResource-poor
• Battery packsBattery packs• Hardware: Memory, CPU, peripheralsHardware: Memory, CPU, peripherals• Software – MiddlewareSoftware – Middleware
Less secure and less reliableLess secure and less reliable• Lost or stolenLost or stolen• Hostile or unfriendly environmentHostile or unfriendly environment
Mobile connectivityMobile connectivity• Dynamic changes in environment: infrastructureDynamic changes in environment: infrastructure• Highly variable: bandwidth, latencyHighly variable: bandwidth, latency• Reliability: disconnectionsReliability: disconnections
January 10, 2007January 10, 2007 88
Adaptability – the Key to Mobile ComputingAdaptability – the Key to Mobile Computing VisionVision
• Dynamic changes in computing environmentDynamic changes in computing environment• System agilitySystem agility• Roam seamlesslyRoam seamlessly• Perform computing and communication task Perform computing and communication task
uninterrupteduninterrupted A scenarioA scenario
• Video streaming applicationVideo streaming application Routing video stream packetsRouting video stream packets Access pointsAccess points New IP address New IP address
January 10, 2007January 10, 2007 99
Mobility TransparencyMobility Transparency Mobile computing - a form of distributed Mobile computing - a form of distributed
computing computing Application-Transparent AdaptationApplication-Transparent Adaptation
• Access transparencyAccess transparency• Location transparencyLocation transparency• Failure transparencyFailure transparency
Adaptive system is responsible for Adaptive system is responsible for adaptation (sufficient?)adaptation (sufficient?)
January 10, 2007January 10, 2007 1010
Application-Aware AdaptationApplication-Aware Adaptation Multimedia ApplicationMultimedia Application
• Video Conferencing Video Conferencing Mobile devicesMobile devices Remote serverRemote server
• Operating condition changesOperating condition changes Move/bandwidth changesMove/bandwidth changes
• Request other peer/serverRequest other peer/server• Lower quality videoLower quality video
Battery power level changesBattery power level changes• Conserve energyConserve energy• Reducing the intensity of the back light Reducing the intensity of the back light
(display) (display)
January 10, 2007January 10, 2007 1111
Mechanism for AdaptationMechanism for Adaptation Adapting Functionality of Mobile ApplicationAdapting Functionality of Mobile Application Adapting Data – deliveredAdapting Data – delivered Partition of dutiesPartition of duties
• Connected - Client-Server (CS) modelConnected - Client-Server (CS) model• Disconnected – Mobile client works autonomouslyDisconnected – Mobile client works autonomously
January 10, 2007January 10, 2007 1212
Adapting FunctionalityAdapting Functionality Change dynamically the functionality of the Change dynamically the functionality of the
computational entitiescomputational entities Client/ServerClient/Server
• Resource-poor mobile client requests a resource-rich Resource-poor mobile client requests a resource-rich server to perform expensive computationserver to perform expensive computation
• Request-Response modelRequest-Response model• Persistent connection state modelPersistent connection state model
January 10, 2007January 10, 2007 1313
Adapting FunctionalityAdapting Functionality Extended Client/ServerExtended Client/Server
• Maintain the state of the clients: hard state, soft stateMaintain the state of the clients: hard state, soft state• Request service Request service → Sleep (conserve energy) → Wake → Sleep (conserve energy) → Wake
up (get result)up (get result)• Resource Reservation Protocol (RSVP, RFC 4604, Resource Reservation Protocol (RSVP, RFC 4604,
4605)4605)• Internet Group Management Internet Group Management
Middleware request servicesMiddleware request services• Web pages Web pages ← ← Web serversWeb servers• Database serverDatabase server• Temporary IP addressesTemporary IP addresses• Name translationName translation
January 10, 2007January 10, 2007 1414
Adapting DataAdapting Data Information QualityInformation Quality PerformancePerformance
• Latency: from the Mobile client’s perspectiveLatency: from the Mobile client’s perspective• Throughput: from the system’s perspectiveThroughput: from the system’s perspective
Data maintained at remote server Data maintained at remote server • Reference copy Reference copy • Up-to-dateUp-to-date
Mobile client – may choose to access or Mobile client – may choose to access or manipulate data item of lower fidelitymanipulate data item of lower fidelity
January 10, 2007January 10, 2007 1515
Adapting DataAdapting Data Fidelity Fidelity AgilityAgility ConsistencyConsistency Data qualityData quality
• Video data – frame rate and image qualityVideo data – frame rate and image quality• Spatial data such as topographic maps – Spatial data such as topographic maps –
minimum feature sizeminimum feature size• Telemetry data – sampling rate and timelinessTelemetry data – sampling rate and timeliness
January 10, 2007January 10, 2007 1616
Adaptations How ToAdaptations How To SoftwareSoftware
• Middleware layersMiddleware layers• Operating systemOperating system
State TransitionsState Transitions• Strongly connectedStrongly connected• Weak connectivityWeak connectivity• Weak connectivity/Disconnected Weak connectivity/Disconnected → Strong → Strong
connectivityconnectivity• DisconnectedDisconnected
January 10, 2007January 10, 2007 1717
Where ? AdaptationsWhere ? Adaptations Client /Proxy/ServerClient /Proxy/Server Proxies:Proxies:
• Filtering dataFiltering data• Connections (security firewalls)Connections (security firewalls)• Modifying control data (network address translator)Modifying control data (network address translator)• Transcoding (converting data, content transformation)Transcoding (converting data, content transformation)
Adapting to the hardware/software capabilities – Adapting to the hardware/software capabilities – in the proxy and/or at the serverin the proxy and/or at the server
Adapting to the connectivity of the mobile Adapting to the connectivity of the mobile device: at the server and/or the clientdevice: at the server and/or the client
Adapting to the resource availability at the Adapting to the resource availability at the mobile device: at the clientmobile device: at the client