Currently, two main technologies compete to be the standard in home network middleware. The obvious reason is that the market is extremely significant, speaking of systems which will have the ubiquity of televisions, the upgradability of PCs (Personal Computers) and the broad possibilities of software applications. Cahners In-Stat Group [CISG00] expects more than a $2 billion Internet residential gateway market segment by 2003.
Hence, Microsoft [MS] promotes UPnP [UPNP], a technology closely related to its set of products, and Sun Microsystems [SUN] continues to develop its Jini [JINI] technology, a Java-based [JAVA] solution for intelligent network infrastructure. In the following chapters, we will describe how these technologies provide all functionalities for federating those new Web-enabled, network-enabled daily appliances, called smart devices.
These technologies can discover devices that are plugged into the network and speak the same protocol. They also can search for devices of interest. A problem arises. How can a device from one vendor be discovered by middleware belonging to another vendor if the protocols are incompatible? Both of them will also provide different APIs (Application Program Interfaces) for publishing and receiving events at a programmer level, as well as different ways for defining and describing the devices and what they can do. Although APIs are convenient for programmers, end-users would prefer more user-friendly interfaces for using their daily appliances. Furthermore, the end-user would prefer to find all interesting devices by making a single query rather than making one query for the UPnP appliances and another for the Jini ones.
This dissertation presents a high-level service for home networking: the first end user service for simply managing a smart home, locally or remotely over the Web, based on an open architecture, independent of the underlying home network technology. The following chapters will review the current solutions, many services have been created for programmers to build applications for end-users more efficiently. Surprisingly, few services have been built for end-users. No such high-level service has been created to allow end-users to control and to monitor a smart home from the Internet yet. The prototype born from this dissertation is called HOUSE-KEEPER, pronounced “house-e-keeper” to imply an electronic house eeper, as in the e of e-commerce. HOUSE-KEEPER uses the services offered by the current home-network middleware technologies to programmers to offer a real user-friendly service to end-users. The HOUSE KEEPER service is real. The prototype can interact with real X10 [X10] devices wrapped in Jini or Chai [CHAI] pieces of software to switch on a real lamp remotely from the Internet or the coffee machine from a WAP phone [WAP]. The fact that it is controllable from the Internet transparently for different types of home networks is new. For example, as will be described, there are different on-going projects to find a way of using Jini devices from the Internet. One of them is the SOAPUDDI project [SOAPUDDI] of the Jini.org community [JC]. The HOUSE-KEEPER service addresses this issue. In fact, the HOUSE-KEEPER service provides a global and complete view of what is available in the home network. Its design is independent of home network middleware. As a matter of proof, the design has been prototyped with two different home network technologies, Chai and Jini. The HOUSE-KEEPER service also offers aneasy-to-use declarative system of management of this home network rather than the programmatic one actually implemented. This way, it is possible to implement additional access control, even if the native device does not provide such access control.
The focus of this dissertation is on the home, not on corporate buildings or on public buildings. This is important because the requirements are different between corporate or public buildings and homes. By home, we understand a residence in which few people are living, such as a family with the husband, the wife and their children. Concerning the security requirement for example, the assumptions made do not fit very well in a corporate environment. This is the reason the service based on the overall architecture is called HOUSe-KEEPER. The service helps to manage different appliances in the house by storing the devices automatically and helping users to find them. The idea is that a future version of HOUSE-KEEPER could do the traditional job of the human house-keeper, who tidied the house and notified the landlord of the house when something happened and only when it was really needed. A simple example of this behaviour has been added in the prototype, but more intelligent behaviour could be implemented using the help of artificial intelligence technologies.
Contents:
1.INTRODUCTION
1.1. Aims and objectives
1.2. “Road map”
2.DOMAIN
2.1. Home Networking
2.1.1.Definitions
2.1.2.An overview
2.1.3.Technology survey
2.2. Research case studies
2.3. Requirements
3.REVIEW
3.1. Home network “middleware”
3.1.1.Chai
3.1.2.UPnP
3.1.3.Jini
3.2. The missing link
3.2.1.Candidates
3.2.1.1.OSGi
3.2.1.2.The Chai Place Manager
3.2.2.Is it possible to fulfil the requirements with the actual technologies?
4.HOUSE-KEEPER : THE NEW STEP
4.1. The big picture
4.1.2.Multi-tier architecture
4.2. Further detail
4.2.1.The choice of the server
4.2.2.A service independent of the home networking technology
4.2.3.An easy and vendor-independent declarative process for device context
4.2.4.The answer to the multi-user security requirement
4.2.5.The need-to-know issue
4.2.6.More about the Jini proxy for Jini devices
4.3. Critique of the architecture
4.3.1.Place metaphor.
4.3.2.What has to be shipped?
4.3.3.Limitations of the command line paradigm
4.3.4.Is HOUSE-KEEPER a distributed system?
4.3.5.Adaptation to the client capability
4.4. The prototype and its results
4.4.1.Test-bed
4.4.2.“Use-cases”
4.4.3.What did two implementations bring to light?
5.CONCLUSION
6.REFERENCES 7.WORLD WIDE WEB RESOURCES