120 likes | 138 Views
This solution enables access to home features from multiple locations, ensures fault tolerance in the controlling computer, and provides a common GUI for personalized interfaces.
E N D
Multi-Station and Fault Tolerance • A single computer controlling all features of the Home is problematic. • In multi-floor homes access to Home features should be available on all floors • When you call from the 2nd floor you still need the address book no matter where it’s stored • When you talk on the phone and get a meeting date and time from someone you want to enter it into the calendar and not on a piece of paper for future use
Requirement • Access to PIM from different locations in the home • Update of PIM database from different locations in the home • A common interface to computers in the house (The, by now infamous, Common GUI for which we wait now for more than 2 months.) • Each computer may have a customized facet of the common GUI • Calendar on one, To-Do-List on another
Faults • A failure of the home computer, if only one exists, causes a traumatic experience to the resident. • We suggest a solution to handle faults in the controlling computer. • Unless the home is a collection of gadgets, facilities and services are connected to a computer to provide: • Archival repository • Sophisticated services cannot be provided by bare bones gadgets
Faults - continued • A pressure tile may response with the weight of two kids stepping on it concurrently. • They may weigh exactly as much as an adult • This conflict has to resolved • Can be resolved easily by a computer consulting previous weight measures
Fault Tolerance - continued • Additional computers IPAQs, Web Tablets, and similar devices connected wirelessly will get periodic updates of essential data required for home functioning. • In the case of a backup computer, it will have the identical software. • In the case of more limited devices such as Web Tablets, such devices will have a smaller of Personalization and data.
Requirements • A common denominator Personalization and PIM • This may not be a major problem • PIM is essentially a set of operations on a small database • The local database has to be synchronized with the other databases • The database should fit easily any of the computers connected • Can use 2PC • Small enough to: • Fit all computers • Sufficient for regular activities • An alternative is to provide remote services • Looking up a phone number may travel to the main computer, an answer be located and sent back to requesting computer • Many remote services exist; easy to mimic
Requirements - continued • RM has to be duplicated or loaded only at computers connected to external devices • JAVAphone • We must find a way to have devices connected to more than a single box • Otherwise, a failure in the main box is fatal
Requirements - continued • Database version • Sufficient for regular activities or • Needed data will be acquired, if exist, from another node through a simple protocol • A simple solution is to use on the more powerful computers a Web server to which access is simple HTTP and data itself can be XML. • Implies Personalization at the controlling computer must run with a Web server
Fault Tolerance - continued • Upon failure, a new control computer will be elected and it will take over home support. • Since the infrastructure already exists, access to home services will be available through any of the computing devices at all times.
Requirements • Create middleware consisting of: • Data send/receive APIs • Facility for remote services • Basic hand shake protocol • Database synchronization and 2PC • Election algorithm • Home Computer Status
Requirements - continued • Data send/receive APIs • A basic service • Can use a simple socket interface • Facility for remote services • Several versions are possible: • RPC-like except that marshalling is not needed; use XML • Rewrite Personalization to work off messages • Then a local message or a remote message have the same effect except for Windows. • Basic hand shake protocol to find out who is up and who is down • Such protocols are simple and can be copied
Requirements - continued • Database synchronization and 2PC • 2PC code can be found on the Web • It should be invoked when the local database changes • Election algorithm • Typically use the Bully Algorithm • Takes care of both failure and recovery • This algorithm is simple and can be copied • Home Computer Network Status • Maintained by each node • Displayed upon request • No need to bother residents with this information unless they ask for it