380 likes | 558 Views
CSE 4340/5349 Mobile Systems Engineering. M. Kumar Spring 2010 Week 9 Pervasive Computing. Evolution of Computing Paradigms. Computing – 1940s … Uniprocessor architectures, limited applications Parallel Computing - 1970s … Multiprocessor systems, computationally intensive tasks
E N D
CSE 4340/5349Mobile Systems Engineering M. Kumar Spring 2010 Week 9 Pervasive Computing
Evolution of Computing Paradigms • Computing – 1940s … • Uniprocessor architectures, limited applications • Parallel Computing - 1970s … • Multiprocessor systems, computationally intensive tasks • Distributed Computing – 1980s … • Collaboration in networked systems, resource Sharing, business applications, the Internet, WWW • Mobile Computing, Wireless Communications – Mid 90s … • Anytime anywhere computing • Grid Computing – 90s … • Effective utilization of resources • Pervasive Computing – 00s … • User centric, improve quality of life, • Adapting to users’ social behavior, • Interface with the physical environment
Pervasive Computing • User’s point of view • Quality of life • Ease of use • Focus on the application • Access and provide resources seamlessly • Mobile, social, and multitasking • Autonomous trust, privacy and security • Energy efficient • System’s point of view • Mask unevenness • Distribution, selection and cyber foraging • Adapt to changes in context • Identify and isolate malicious/faulty nodes • Utilize resources efficiently • Spend less and earn more What you want, when you want where you want, how you want
Issues and Challenges • Proactivity and transparency • Delays, resource utilization, unobtrusive services • Heterogeneity and interoperability • Unevenness, incompatibility, h/w, s/w, communication channel • Location awareness and mobility • Handoff- vertical/horizontal • data dissemination/acquisition • Authentication and security • Privacy vs. services, cost, agents, active networks, availability • Smart environments • Deployment,interference M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Computing, August 2001.
Enabling Technologies • Networking Technologies • Registration and Auto-configuration • Mobility management • Wireless access • Opportunistic networking • Computer Systems Technologies • Distributed systems • Mobile computing • Software agent technologies • Information acquisition and dissemination • Sensor Systems • Privacy, Trust, Authentication and Security • Human-Computer Interfaces • Multi-modal • Voice, touch, GUI,
Ubiquity • Devices • Laptops, PDAs, embedded computers • Smart cell phones • Sensors • RFID tags and readers • Communications • Access to Internet • Cellular Communications • WiFi • Mesh Networks • Bluetooth, Zigbee, UWB • Google, Facebook, Twitter, …
Fading Distinctions • Servers and clients • Distributed systems, P2P systems • Cost and time • Producers and consumers of information • Users are producers as well as consumers of information • User with a cell phone camera • SMS, Blogs, Tweets, .. • Service providers and consumers • Resources on user devices can be shared • Complementary resources • Resourceful and resource-poor entities • Servers, desktops, laptops, mobile phones • Grid computing • Cyber foraging
Hospital Ambulance Doctors Nurses Scenario The scenario uses existing basic component technologies Laptops, cameras, cell phones, PDAs etc. Accident The whole is much greater than the sum of its parts Devices around the victim exchange data M. Kumar et al., Pervasive Information Communities Organization PICO: A Middleware Framework for Pervasive Computing, IEEE Pervasive Computing, July-September 2003, pp. 72-79.
How can pervasive computing help? • Desired actions • Detect and recognize events • Recognize high-level events • Discover and deploy services • Combine services • Match services to resources • Address dynamic issues • … • TIMELY, AUTOMATED, TRANSPARENT
Applications • Smart environments • Aged care, hospitals, factory floors • Transportation • Context-aware GPS, Automatic highways • Military • Guidance, information/service provisioning • Entertainment • Gaming, social networking, news/movies/sports • Education • …
Research Areas • Networking • Wireless, Mobile and Ad Hoc Networking • Middleware Services • SOAs, Service Composition • Privacy and Security • Autonomous Trust • Context-aware Computing • Understanding contexts and situations • Stream Data Processing • Quick, accurate, consistent
Issues and Challenges • Proactivity and transparency • Delays, resource utilization, unobtrusive services • Heterogeneity and interoperability • Unevenness, incompatibility, h/w, s/w, communication channel • Location awareness and mobility • Handoff- vertical/horizontal • data dissemination/acquisition • Authentication and security • Privacy vs. services, cost, agents, active networks, availability • Smart environments • Deployment,interference M. Satyanarayanan, “Pervasive Computing: Vision and Challenges,” IEEE Personal Computing, August 2001.
Proactivity and Transparency • Current services • Reactive or interactive • Existing proactive services are obtrusive • Need to provide ‘What I want’ type of services • User-centric rather than device-centric • Cost of proactive services • Interrupts and preemptions • Resource utilization • Bandwidth, battery power, CPU etc. • Just-in-time services • Context-aware services • Location-aware • Energy-aware
Proactivity and Transparency… • Methods and techniques • Middleware • Tools for context-aware computing • Profile-based services • User, application, or device • Networking infrastructure • Overlay networks, Active networks • Software Agents • Static and mobile • Intelligent
Files uploaded from laptop to PDA Working while on the move Files uploaded from PDA to Projector Involve proactive actions Meeting Proactivity and Transparency
Heterogeneity and Interoperability • Cooperation and Collaboration • Overcome challenges due to heterogeneity • Devices and O/S, Networks, Software • Adaptive software, Bridges • Overheads • Network Physical Layer • Communication speeds • Protocols • Services and Software agents • Interoperability • Mask Uneven Conditions
Files uploaded from laptop to PDA Working while on the move Files uploaded from PDA to Projector Meeting Heterogeneity and Interoperability Laptop, PDA, Projector, Camera LAN, Wireless LAN, X10
Heterogeneity • Scenario 1 • Laptop – Windows XP • PDA – Palm OS • Projector – Embedded Linux • Scenario 2 • Devices on the ambulance are resource limited • Hospital devices are not resource limited - relative • Integrating disparate entities is important to provide user transparency in the presence of heterogeneity
Authenticity and Security • Pervasivity vs. Security • Proactivity vs. Security • QoS vs. Security • Privacy Issues • Resource Availability and Utilization • Enabling Technologies • Software Agents • Wireless Communications • Active Networks
Files uploaded from laptop to PDA Working while on the move Files uploaded from PDA to Projector Laptop/PDA should be authenticated before the files can be uploaded to the projector Meeting Authentication and Security
Mobility • Mobile-aware services • Location-aware services • Wireless communications • Mobile IP and Enhancements • GPS services • Wireless LANs • Cellular Networks • Integration • Information acquisition and dissemination
Mobility and Location Awareness Seamless Files uploaded from laptop to PDA Working while on the move Files uploaded from PDA to Projector Connection at different locations and user mobility Meeting
Smart Environment Files uploaded from laptop to PDA Working while on the move Files uploaded from PDA to Projector Detect identities of personnel, interact with speaker Meeting
Community PICO Middleware Services Middleware Architecture Telemedicine Manufacturing Smart home Delegents Bluetooth 802.11b Cellular … Devices
Basic Building Blocks • Physical devices – • Computer-enabled devices: small, wearable to large supercomputer • Sensing capabilities • Computational power • Communication capability • Actuators • Software entities – Delegents (IntelligentDelegate) • Intelligent SW agents – service provisioning • Proxy-capable: exist on the infrastructure • Event-driven • Execute on host devices • Need a host for execution • Mobile, capable of communicating
Devices C = CID, S, F CID: Device identifier S: System characteristics Fc: Functionality of device For example, C = Heart Monitor S = operating system;processor type; memory; I/O type; battery; wireless transceiver F = ECG monitoring; processing; communicating IntelligentDelegate: Works diligently on behalf of a device, user, application or service D = Did, Fd Did: Delegent ID: Id, C, P Id: Delegent ID C: Host Device ID P: Community Fd: Functionality of delegent: M, R, S M: Program modules R: Delegent rules S: Delegent services Devices and Delegents
Delegent Example • A Delegent for ECG monitoring • Functionality: Modules, Rules, Goals> • Modules: Signal processing module, Arrhythmia detector, Software filter, Timer, Communication module. • Rules: State transitions, Migration rules, Communication rules, Community engagement rules. • Services: Detect arrhythmia, Upload ECG window, Communicate status. • Rules are defined according to goals • If heart-rate irregular • Start saving sensory data • Contact cell phone delegent (a new community) • Contact ambulance delegent (next level community) • If heart-rate high/fast • Start saving sensory data • Collect data for a while • Contact physician …
A Delegent for ECG monitoring Functionality: Modules, Rules, Goals> Modules: Signal processing module, Arrhythmia detector, Software filter, Timer, Communication module. Rules: State transitions, Migration rules, Communication rules, Community engagement rules. Services: Detect arrhythmia, Upload ECG window, Communicate status. Service Abstraction ECG Window ST segment > threshold Arrhythmia detected Authenticated Yes? Place Call Contact EMS
Aggregate Store Compose Services Services 1,2, 3 and compositions Response Service 1 Application request Resource 1 Service 2 Service 3 Resource 2 Resource 3
Stype: Audio PType: Wav Rate: 56kbps Stype: Text PType: ASCII Rate: 56kbps Text to audio Location: 238 ELB Cost: $0.5/min Delay: 0.05mS Service model • Each service is represented by GS = {Vs, Es, µs, ξs} Vs node (s) representing service (or the state machine for the service) Es Edges to and from the service (I/O). µsVertex attribute function. • Service Name, location, address, cost, etc. ξs Edge attribute function • Type and size of parameters and messages • Attributes can also contain semantic descriptions of entities.
S4 S1 A M K B SType: B Ptype: b SType: A Ptype: a1 SType: K Ptype: k SType: M Ptype: m SType: A Ptype: a1 SType: M Ptype: m1 SType: K Ptype: k1 SType: K Ptype: k SType: B Ptype: b SType: T Ptype: t1 SType: M Ptype: m SType: M Ptype: m S4 S2 S6 S5 S1 S3 T S6 S2 S4 a1 b m S1 k S5 m1 k1 S3 t1 Service graphs Service aggregation at the directory Semantic aggregation Syntactic aggregation Aggregation of services (GP)
Task resolution Stype:A Ptype:a1 S4 Stype:A Ptype:a1 S1 S6 A M K B Stype:M Ptype:m X T S4 Stype:B Ptype:b S6 Stype:B Ptype:b S2 X S4 a1 b S2 m Stype:K Ptype:k S1 Stype:T Ptype:t1 k S5 S5 m1 k1 S3 t1 Stype:T Ptype:t
Service Manager Service Aggregation Incoming Ads Advertise Service store Request Result Service Composer Service aggregation process(Centralized scheme, managed networks) • Well known directory structure • Services register at the directory • Directory maintains all available services by aggregating them • Directory acts as the point of contact for task support • Service composition performed at the directory • Execution of composition left to the client
Middleware Support P = < U, G, E > U = { Detect Accident(-->(c)), Alert, Call contact, file system} High level complex services D G = {auto phone, file browse, file save} Alert E = {phonebook, 30sec data...} D D HM CALL =< > , , P U G E " Î ' Î » , ( ) | u U s S D u s i j i j Community Operation D = <M , R, S> Manifestation of resources as services M = <sense, Transceiver> Hs > D D D R = {E = If then C= While …} D Alert Save Alert HM HS ready" A = "render voice" } S = {Temp Monitor, Light Detector} D CALL =< > , , D M R S " Î ' Î » ( ), ( ) | ( ) m M D h H C req m Delegent hosting i i i i ' Î Î ( ) | " " ( ) s S D s projects f F C i i j Device Abstractions C C C =< > , C H F HS LAPTOP PHONE " ' » " . " , ( ) | { } { } d installed on C H C M H i j i Device abstraction Bluetooth C = <H,F> C = <H , F > Headset Headset Headset H {mem = 3MB, power_level = normal, Devices HM communication = bluetooth (-->(b)) }, Bluetooth F ={accelerometer, light meter} HM GPRS