第1章 移动计算简介 §1.1 基本概念 §1.2 相关概念分析 §1.3 移动应用 The Era of “Mobile Computing” Mobile Computing Mobile/Wireless Network 2 Mobile Computing Architecture 3 Mobile Computing Is "taking a computer and all necessary files and software out into the field." " being able to use a computing device even when being mobile and therefore changing location. Portability is one aspect of mobile computing." " the ability to use computing capability without a predefined location and/or connection to a network to publish and/or subscribe to information . " " a variety of wireless devices that has the mobility to allow people to connect to the internet, providing wireless transmission to access data and information from where ever location they may be. " 4 Mobile Computing Mobile computing refers to computing in a distributed system in which some processes or processors can move. Moving processes logical mobility, realized by agents. Moving processors physical mobility, realized by moving devices. Mobile computing extends a distributed computing environment with a new dimension of mobility. Most existing mobile computing systems are based on client-server computing systems. Recent mobile computing solutions consider general distributed computing, namely, peer-to-peer computing environments. Mobility generalizes the network reconfiguration problem. Many mobile computing techniques have their root in distributed systems. Mobile Computing Motivations Availability of wireless network at reducing communication cost. Widespread use of handheld devices with increasing computing power and lower cost. Integration of communication and computing devices (Tablet computer, SmartPhones). Detection of the physical or logical location of a device. Making use of wireless network to access information and perform data processing, resource sharing at high capacity servers. Extend the ability and usefulness of handheld devices. Goal Access to information anywhere, anytime, anyway. Mobile Computing vs. Others Related concepts Wireless computing computing without a wire. the most primitive form, e.g. using 802.11b, 802.11g or bluetooth. Nomadic computing computing on the move. clients or users are moving. physically mobile computing, perhaps prolonged disconnection. Ubiquitous computing a term coined by Mark Weiser in 1991. invisible computing or subconscious computing. computers and their functionality available to users without being noticed. Pervasive computing immersive computing. use of wearable computers. a current name for ubiquitous computing. Mobile Computing vs. Others built upon distributed computing discipline closely related to networking and wireless communications, internet computing and cloud computing, pervasive computing. 8 Mobile Computing vs. Others Networking is the base layer, with communication primitives. Wireless networking and communications extends networking protocols to cover lack of link and movement of devices GPRS, 3G (WCDMA), IPv6, WLAN. Distributed computing covers fundamental issues to utilize computers over a network. coordination mechanism to make the solutions work general problem solving approaches Internet computing is more on the practical issues of developing programs and applications that work over internet. using Java and related technology. can be considered a case of distributed computing. Mobile Computing vs. Others Mobile computing relies on wireless networking and communications and extends distributed computing new issues of client movement, location management and context-awareness, not to mention the limitations of devices. Pervasive computing extends again mobile computing, making use of small equipment and sensors. The number of devices and volume of data can increase several orders of magnitude new issues like data streaming need to be handled. Pervasive Computing Industry revolution vs information revolution Pervasive Computing Devices Pervasive Computing Principles Decentralization based on distributed systems. with information synchronization. devices and applications are embedded into wireless networking infrastructure. Diversification should target on different users with different needs. must be able to manage the diversity. Connectivity boundless connectivity. Simplicity convenient and intuitive to use. good and mature human computer interface. Pervasive Computing The MIT wearable computer project PolyU ITC is doing something similar now. MicroOptical display IR tag reader CerfBoard (developin Internet appliance) Body bus junction 802.11 bridge Battery BSEV core (single Board computer) Body network hub Recap on Distributed Systems A distributed system is a system supporting distributed computing. There is no universal definition. It is generally a collection of autonomous computers, connected together by some communication media, usually a network. They are capable of sharing resources and capable of providing service for one another. The processors cooperate to achieve an overall goal. Users may view the resulting environment as a single computing facility. Recap on Distributed Systems Distributed hardware Processors and memory are physically separated, connected only via communication media. Distributed control Each processor is autonomous, running its own program. They cooperate together in a voluntary manner. Distributed data Data for a program may scatter around and need to be exchanged to carry out a task. Resources sharing Expensive resources can be shared among different users. Recap on Distributed Systems Openness System is visible to user, and can be modified and extended when needs arise. For example, Unix is an open system and IBM PC has an open architecture. Concurrency Processors are autonomous and running concurrently. Several jobs may be executed simultaneously. Scalability It is relatively easy to build a large system using similar approach to build a small system. For example, Internet is built from smaller networks. Recap on Distributed Systems Fault tolerance Processors more available (high availability), independent failure mode and preferably graceful degradation. System can still function when some parts are down. Transparency User should not perceive the system as being composed of different parts and the lower level of functionality must be concealed. For example, send/receive using a socket should not be concerned with data link and network connections. Forms of transparency include access, location, concurrency, replication, failure, migration, performance, scaling. New Features in Mobile Computing Limited asymmetric bandwidth and high latency Wireless channels are of limited bandwidth and asymmetric. Perhaps of speed of grade of modems. Weak connectivity and low reliability Disconnection to channels can easily occur (planned or unplanned) and can be prolonged. Messages may be lost with much higher probability. Low processing power and energy Battery is expensive and limited. Screen or display is small. Mobility of devices Need to track location of devices and to provide proper services. Invalidation to data upon change of location. Low physical security Mobile devices are easily lost, broken or stolen. High degree of heterogeneity Devices are very different in nature, e.g., Palm and Pocket PC are programmed differently, worse for embedded systems and devices. Objectives of Mobile Computing To run existing distributed applications To provide distributed services To share data and resources To maintain efficiency To keep communication and operational cost down To conserve energy To achieve consistency among views of different users To be scalable in supporting numerous users New Solutions to Old Problems Solve problems in distributed systems Hardware and computer architecture Communication architecture and protocols Distributed operating systems Synchronization need File systems Databases systems Real-time processing Multimedia support with QoS Dynamic system reconfiguration Security Application requirement and design User interfaces design (on mobile devices) Mobile Computing Architecture Fixed network can be dedicated proprietary network for the mobile system. Fixed network can also be the Internet or Intranet. Infrastructured Systems MSS (mobile support station, or base station) + MU (Mobile unit, mobile station, mobile client) WLAN, Cellular Net., etc. Ad hoc systems Mobile nodes + mobile nodes MANET, WSN, VANET, etc. Mobile Computing Architecture Server MU (mobile unit) MSS Fixed network (mobile support station) Wireless radio cell (19.2Kbps) WLAN 23 Mobile Computing Architecture 24 Applications Personal applications Web and email access. ICQ. Personal information management. Personalized use of computer resources. Weather and traffic report. Network games. Commercial applications personal/tourism personal logistics/tourism personal finance Stock price quotation. e-commerce/finance Inventory control for traveling salesperson. finance Banking activities. tourism Bus-stop information kiosk at major bus terminals. Push-based advertisement on vehicle. e-commerce/tourism e-coupon. e-commerce Generic M-commerce applications. Location Tracking Active badge/RFID card with sensor technology An early application of sensor technology in location tracking, developed by AT&T Cambridge Lab, for tracking and locating of individuals within a building. Each building office is equipped with one or more networked sensors to detect these transmission signals. Biometrics cards with bluetooth and RFID deployed at US Homeland Security Office May 2005. Requirement: strong resistance to terrorist exploitation and rapid electronic authentication. Could Hong Kong smart ID do that? Problem: signal could be detected. Location-Awareness Location and mobility are the two major factors to be capitalized in a mobile application. Applications can be based on the current location of a user. Example Emergency vehicle routing to caller of 999. Deliver me a pizza as I am hungry! Deliver value-added information based on current position. Targeted advertisement to customer: E-coupon. Logistics arrangement can be made based on location. Send the goods to an alternative location if traffic jam is out-of-control for receiving the goods. Context-Awareness A context-aware application is an application that adapts its behavior to a changing environment. It needs to gather contextual information about its environment, usually through the use of sensors. User does not need to give all information and the application should try to figure out the rest. The follow-me type of applications: Application knows the location of a user: Smart map (Telenor Research) that always maintain the current user position at center. Nearest restroom/toilet depends on gender. When in a room, system can look up user profile for preferred room setting, or mode of operation for a speaker. Context vs. Location? M-commerce Example of three stages??? Intelligent Home Intelligent home networking system with general technology Use mobile phone technology to instruct a home control computer for home automation equipment. WiMAX (802.16), 802.11, Bluetooth etc. Transmit signal and control electronic devices via power line. Smart TV Killer App. of Mobile Computing Instant messaging? 10 million iMode users in Japan since 18 months of introduction, also used by Greece Olympics. 15.6 billion SMS messages in China January 2004. Mobile games? $9 billion sold in 2004. Mobile web access? WAP, iMode, WWW How to resolve the bandwidth problem? 3G?4G? Location-dependent services? Sensor network infrastructure cost? Context-aware services? Locating a best restaurant closest by sensing e-cash in e-wallet and dining preference. How can the communication infrastructure match with the application functionality and bandwidth / mobility requirement? High bandwidth can be resulted, using pico-cells, but the client movement speed must be limited. Bandwidth Requirement 3G wireless LAN current Ethernet Summary Concept of mobile computing Mobile computing vs. related concepts Pervasive computing Mobile applications 33