1 / 32

Appliance-Based Computing

Appliance-Based Computing. Reference. Appliance Data Services: Making Steps Towards and Appliance Computing World by A. Huang, B. Ling, J. Barton and A. Fox. Introduction. A digital appliance is defined as a single-purpose device. Examples include the following:

Télécharger la présentation

Appliance-Based Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Appliance-Based Computing

  2. Reference • Appliance Data Services: Making Steps Towards and Appliance Computing World by A. Huang, B. Ling, J. Barton and A. Fox

  3. Introduction • A digital appliance is defined as a single-purpose device. • Examples include the following: • Network-enabled household appliances like NetFridge • Single-purpose computing facility such as a storage server that can be plugged in and used with minimal configuration. • Single-purpose handheld devices such as digital cameras and PDAs

  4. Introduction • Appliances are often thought of as special-purpose devices that are less computer-like than general-purpose PCs but they are not embedded devices. • General purpose PCs may be more useful when connected to the Internet, but they are useful without the Internet. • An ActiveBadge is useless without infrastructure software for location. • An appliance such as Netfridge would fall in between.

  5. Introduction • We can classify appliances by their degree of sharing. • Mobile devices (e.g., PDA)s have little or no sharing. • Environmental devices (e.g., household appliances) is explicitly shared among a few people. • Enterprise devices such as storage are shared among many people.

  6. Introduction • The intention of digital appliances is the following: • Make our life easier • Provide powerful improvement over their non-digital counterparts. • “Infrastructure enabled” • Able to leverage computational power, network b/w, content and aggregate user base of services in infrastructure • Example: Viewing Web content on handhelds made possible by transformation proxies.

  7. Problems with Digital Appliances • Usability • Often the digital appliance is more difficult to use. • May have too many features. • Lack of an infrastructure • Quote from Dan Carp, CEO of Kodak • “The industry has made picture-taking more difficult and more complicated by cramming onto digital cameras more features, more buttons and more bells and whistles than most people want or need…The one lesson that 100 years of consumer marketing should have taught us: In the picture business, simple tramps megapixels, every time.”

  8. digital photo frames digital cameras Web pages PDAs wall-mounted displays Illustrating the Problem Move this picture from my camera to my Web page Display the notes taken on my PDA on this wall monitor

  9. digital photo frames digital cameras Web pages PDAs wall-mounted displays Illustrating the Problem

  10. Illustrating the Problem • Current process for putting pictures from digital camera on web page: • We take the picture • Transfer it to the PC • Transform it • Upload it to destination • Edit the HTML • Desired: • Take the picture • Specify the destination • Next thing you know it’s at the desired location.

  11. Appliance Computing World • Vision of Appliance Computing World • An appliance computing world is one in which people move data effortlessly among artifacts to accomplish a variety of simple and advanced tasks • Attributes • Some attributes are inherent to the way people interact with appliance computing world. These are discussed next.

  12. Attributes of Appliance Computing World • People move data using concrete artifacts • People think of devices in terms they understand • People don’t care how pictures are stored, but only that camera takes a picture, film stores it, end of story. • People don’t care what format the file is in. They want it to be on a webpage. • Devices are simple, single-purpose appliances • Moving functionality from the computer onto a camera complicates things, as opposed to making life easier.

  13. Attributes of Appliance Computing World • People perform a variety of traditional tasks, as well as a new set of advanced tasks with their devices • The new cool digital device needs to perform at least the tasks an old, traditional device was able to perform and then some • Tradeoff between this, and the previous two attributes

  14. Principles That Enable Appliance Computing • Today dealing with digital devices is difficult since extracting information from a digital device usually requires interacting with a PC. • The user has to deal with both file location and file format conversions. For example, a user may have to take TIFF files (from a scanner) and convert it to GIF or JPEG for a web page. • Bring devices to the forefront • User deals only with source/destination, and not with intermediate computation. • A file’s actual location and format should be hidden from everyday users.

  15. Principles That Enable Appliance Computing • Some features can make a device easier to use. • Examples: The voice command on cell phones or the picture previewing on digital cameras. • This can still be a burden. For example, the digital camera user has to learn how to set the modes on the camera to preview a picture. • Keep the number of user-controllable features users must learn to operate a device to a minimum • User should not have to know anything about “preview” camera mode to turn camera on and off. • There is tension between ease of use and placing potentially useful features on the device.

  16. Principles That Enable Appliance Computing • The emphasis is on making the steps required to perform a high-level task simple. • The implication of the previous two principles is that devices are simple. • What if a user wants more complex functionality?

  17. Principles That Enable Appliance Computing • Place the software required to accomplish tasks in the Internet infrastructure. • Logically centralized software (easy upgrades) • Functionality is moved from the PCs and devices to the supporting infrastructure. • This can make upgrades and administration simpler. • It is easier to reason about reliability and availability.

  18. Appliance Data Services • Appliance Data Services refers to a general application framework on top of which appliance computing applications are built. • The framework implements previously mentioned principles

  19. Scenario Used • Jane is traveling through Europe. • During the trip, she uses her digital camera to take pictures and her PDA to jot down descriptions of her pictures. • She periodically goes to an ADS access point at an Internet Café. • Jane logs in by inserting her SmartCard and entering her PIN. • She selects the “photoalbum” application. • She is prompted for her pictures followed by the descriptions, both of which she transfers using the IR ports on her digital camera and PDA.

  20. The Architecture

  21. Architecture: Basic Data Unit • Basic data unit controlling framework operation is a triplet containing the following fields: • User identifier • Command to be executed • Data to be operated on • The triplet is useful for • Application selection (command-tag) • Access Control (userid) • Other service features (command-tag + userid) • Billing, security

  22. Architecture: Main Stages • Data Receive Stage • Collects data, and transfers to next stage once userid/command-tag/data received • Application Control Stage • Determines desired application, determines all needed parameters, sends to Services Execution Stage • Services Execution Stage • Invokes required service on a template it receives • Services are very modular and composable

  23. Architecture: Data Receive Stage • Access Point • Receive data from Appliances • Isolates device heterogeneity to a single architectural component. • Possible Implementations: • A commodity PC outfitted with the appropriate hardware interfaces or it can be designed as a special-purpose network appliance. • Example: The Access Point Jane uses requires a Smartcard reader, IR receiver and software and a touch-screen monitor to display Jan’es application options.

  24. Architecture: Data Receive Stage • Access Point (continued) • The software on the Access Point is organized as a set of device adapters, each enabling the access point to “speak” a different device communication protocol. • This isolation of device heterogeneity to one component allows the rest of the system independence from device-specific communication protocols. • Key Challenge: Extensibility in supporting devices and protocols; this arises from the lack of standardization among device vendors and the increase in the variety of devices being introduced.

  25. Architecture: Data Receive Stage • Aggregator • Manages session state • Gathers data sent from the Access Point and sends to the data to the next stage once all pieces of (userid, command-tag,data) triple are received. • Simplifies adding support for new devices in a robust, easy-to-deploy way • Scenario: • Jane enters janedoe for the user identifier and photoalbum for the command-tag. • The aggregator maintains this state so that each picture and text description from Jane creates a triple (janedoe, photoalbum, [picture or description]). This is forwarded to the next stage.

  26. Architecture: App. Control Stage • The user identifier and command tag are used to determine the chosen application. • Command Canonicalizer • Converts command-tag from its original data type to plain text • Facilitates the design of devices with simple user interfaces • Example from scenario • Jane takes a picture and speaks the desired command-tag into the camera. • When the pictures are transferred into an Access Point, the command-tag has been specified.

  27. Architecture: App. Control Stage • Template Database • This is where templates are stored. • Templates are looked up by command-tag + userid • Templates describe application’s behavior by describing data, and specifying services to be performed. • Minimizes device configuration • Provides a level of indirection between application selection and application specifications which separates the concerns of applications users and applications creators.

  28. Architecture: App. Control Stage • Template Database (continued) • Templates may be developed by the manufacturer and placed within the infrastructure. • Customers can get new applications (or an upgrade) without having to worry about configuring the applications on their devices. • Example: • Kodak wants to make a set of ADS applications available to customers who purchase a Kodak camera. • If templates are shipped with the application, it makes it more difficult to upgrade or add new applications; Pirating is easier.

  29. Architecture: App. Control Stage • Dataflow Manager • Coordinate data received from the user to make certain that an application has all the data it requires. • Uses application template to place data into proper parameter slots. • Data from different devices at different times may be coordinated. • Example • Photos could be input from the camera, and their description from the PDA at a later time. Later these can be combined.

  30. Architecture: Services Execution • Application Dispatcher • Invoke the services specified in the application template on the data it receives. • Example: • For Jane’s photoalbum application, these services include a service that scales her pictures by an appropriate amount and FTPs’ the pictures and descriptions to the appropriate site.

  31. Developmental Experience • Set of services and device adaptors to support two applications: Web Photo album and Guest book • Web Photo album • Users create and publish web-based photo albums. • Guest Book • Takes input from a web cam, business card scanner and PDA to create a web-based guest book containing people’s pictures and business card information. • XML application template used to describe the input data and services to invoke.

  32. Conclusion • Does this make good business? • Could potentially be useful as digital devices becomes more widespread. • Just how powerful is this model of computing?

More Related