Realizing the Internet of Things in Service-Centric Environments Yanbo Wu Supervised by Dr Michael Sheng School of Computer Science, The University of Adelaide, SA 5005, Australia yanbo.wu@adelaide.edu.au Abstract. “Internet of things” is a seminal vision of future techno- logical ubiquity. It endows everyday objects with the ability to iden- tify themselves, communicate with other objects, and possibly compute. While Radio-Frequency Identification (RFID) technologies have laid the foundation, the development of Service-Oriented Computing poses new opportunities for fully realizing the vision. The research proposal in- troduced in this paper proposes a methodology to realize the Internet of things in the service-centric environments. Major research challenges targeted by this methodology and possible solutions have been discussed. Key words: Internet of Things, RFID, Service-Oriented Computing, scalability 1 Introduction Although the phrase “Internet of Things” was first mentioned in an article of Forbes in 2002 [1], the idea was proposed by the Auto-ID Center at MIT in 2000 [2]. It was depicted as a world in which objects or people are equipped with a sensor which can report host’s location, identity or some other information via a wireless network. The network connects objects and locations in the real world to information on the web and considers active participation and creation of information/content and services by citizens. This network is promised to be able to maximize the availability of objects with minimum visibility. The realization of this vision will yield a wide of range of promising benefits in diverse areas including supply-chain management, inventory control, product tracking and tracing, and human computer interaction. To connect massive objects to large databases and networks, a simple and cost-effective system for identification is crucial. RFID (Radio-Frequency Iden- tification) provides this functionality. Using radio frequency, the identification process is automatic since RFID does not require line-of-light to capture the information. RFID has laid the foundation for the realization of “Internet of Things”. However, in order to be fully supporting it, there are still some ob- stacles. For example, the price is still not low enough to tag goods at item level. To achieve lower price, the functionality of RFID tags has to be simplified. Researchers are still working on these issues. With the development of semicon- ductor technologies, the price is expected to be as cheap as 5 cents. The most crucial challenge in building such a network lies in the lack of a common software fabric underlying, i.e., lack of how the softwares in the different environments can be combined to build larger, composite system. More specifi- cally, the problem is to find a way to build a coherent application out of a large collection of unrelated software modules [5]. In recent years, Service-Oriented Computing (SOC) is emerging as a new computing paradigm for developing dis- tributed and federated applications. Web service is a software system designed to support interoperable machine-to-machine interaction over a network [4, 3]. It is based on the Internet protocols, and on top of that, defines new protocols to describe (e.g., using WSDL) and address (e.g., using UDDI) the service in- stance. SOC loosely organizes the Web services and makes it a virtual network. This architecture does not require the modules of the system to be isomorphic. Therefore it’s suitable to build the infrastructure for the Internet of things. In this paper, we discuss a proposal that applies SOC in realizing scalable and Internet-based RFID traceability networks. This proposal is one part of a large research effort1 . The rest of this paper is organized as follows. Section 2 discusses the chal- lenges in realizing the “Internet of Things”. Section 3 focuses on our preliminary proposed methodology. In particular, we propose an initial architecture design and discuss solutions for several technical challenges. Finally, Section 4 concludes this paper. 2 Problem Statement The “Internet of Things” is a technological revolution. It represents the future of communication and computing. The realization of the “Internet of Things” depends on the development of technical innovations in some important fields. One most important field is about software architecture design. With “Internet of Things”, we are able to connect everything we care in the world to the same network, to process and manage the massive collected data in this network. As a fact, Wal-Mart is generating terabytes of data everyday if tagging the goods at item level. To extend this small society to the whole world, the number of data entries will be huge. To manage such a large-scale applica- tion platform, an efficient system architecture becomes paramount important. In addition, the RFID data has the fundamental characteristics of inaccurate, dynamic, temporal and implicit inferences. To successfully realize the “Internet of Things”, the following factors should be taken into consideration [5]: – Scalability. This refers to a system’s ability to grow in one or more dimen- sions such as the volume of RFID data and the number of transactions without affecting performance. Organizations that adopt RFID technology must handle data from thousands of readers distributed across various sites. 1 PeerTrack research project, http://www.cs.adelaide.edu.au/∼peertrack/. – Heterogeneity. The system may be deployed across multiple sites, companies, or even countries using different hardwares, data structures, and standards. It must support the distribution of message preprocessing functionality for example, filtering and aggregation as well as business logic across multiple nodes to better map to existing company and cross-company structures. – Manageability. Good support of administration and testing is a prerequisite for the successful deployment of a solution in large-scale, distributed appli- cations. RFID systems must facilitate the supervision, testing, and control of their individual components as well as end-to-end processing of RFID data. – Openness. System interoperability is another important parameter in data integration. For instance, a well-designed reader adapter at the edge server makes the integration reader-agnostic. In addition to being hardware-agnostic, The systems should be based on existing communication protocols such as TCP/IP and HTTP as well as syntax and semantics standards such as XML, PML (Physical Markup Language2 , and EPC (Electronic Product Code3 ). An open architecture will allow use of RFID devices from a wide array of hardware providers and, more importantly, support the deployment of RFID solutions across institutional or country boundaries. To provide the above features, the system realizing “Internet of Things” should first be a single, open architecture system for networking physical ob- jects [2]. And it should: i) require a minimum of performance from the tag tech- nology embedded in the objects, and ii) be flexible and adaptable to changes. 3 Proposed Approach and Methodology Service-Oriented Computing is the computing paradigm that utilizes Web ser- vices as fundamental elements for developing applications and solutions. The ser- vices are self-described, platform-agnostic and loosely coupled. Then the service- centric environment composed by the services is naturally open, platform inde- pendent, flexible and adaptable [3, 4]. It’s evident that Service-Oriented Architec- ture(SOA) is suitable for the application/solution level design for the “Internet of Things”. In this section, we will discuss how the two ideas can be integrated. 3.1 Approach Our approach to realize the “Internet of Things” is depicted in Figure 1. There are four types of major services in this architecture: – Provider Service (PS). Each provider service provides the collected RFID data for an autonomous organization. The service can specify the data access level and format using the standard service description protocol. When a provider service joins the system, it will publish itself to both the ONS and DS. 2 http://web.mit.edu/mecheng/pml/. 3 http://www.epcglobalinc.org/home. Fig. 1. A SOC architecture for Internet of Things – Object Naming Service (ONS). ONS is a service to get the required object information for which only its ID is supplied from a PS where its information is stored. This is used to answer intra-service queries. – Discovery Service (DS). DS is a service to break the query into sub-queries and find corresponding provider services to answer each sub-query, and then compose the answers together for the inter-service queries. Intra-service and inter-service queries will be discussed later. – Query Analyzing Service (QAS). QAS is a service to analyze a query, classi- fying the query as either intra-service or inter-service query. QAS also directs the query to ONS or DS, based on the classification. The whole architecture works as the following: i) the client sends a re- quest(query) to QAS, ii) QAS analyzes the request and redirects it to either ONS or DS, iii) if it is an intra-service query, the ONS finds the corresponding PS to answer this query and binds the client and PS, iv) if it is an inter-service query, the DS breaks the query into sub-queries and tries to find all relevant provider services. Then the answer will be composed after all sub-queries are answered. During the process, provider services may need to cooperate with each other. 3.2 The Services Services specified in the system of “Internet of Things” possess some unique characteristics. For example, provider services are software modules that offer read-only interfaces, i.e. there are no data modification requests that can be handled. This characteristic eases the system design because there is no need to consider issues on system-level transactions. Another important characteristic is that each service in this system repre- sents an abstract location entity which can be a geographical information like city, state or even country, or an organization like financial department, human- resource department. Locatablity is in fact the most important feature of “In- ternet of Things”. 3.3 Query Types There are two main query types defined in the system, namely intra-service query and inter-service query. The former represents the queries that can be answered by the computations within one single service instance. Examples of intra-service queries are: i) “Where is object x?”, ii) “When is object x last appeared at location l?”, or iii) “What happened to object x when it was at location l?”. In contrast, inter-service queries are used to answer questions like “Where have object x been from the time tstart to tend” or “Where did object x go when it left location x?”. Those queries need two or more service instances involved in order to answer them. Generally, it is easier to answer intra-service queries since they can be pro- cessed by individual provider services. However, it is more difficult to answer inter-service queries. To track or trace an object, there must be some interac- tions between individual service instances with different locations. Our solution here is to build provider services in a Peer-to-Peer (P2P) network so that the services can talk with each other to get the information. For example, when tracing an object, the Discovery Service first finds out the start point of the route and sends the request to it (the root), then the root starts a P2P query to its neighbors, when the object’s current location is found, the tracing is done and the result is returned by the root. The P2P network obviously decreases the workload of the DS and leave most of the work to the provider services. Currently, we are in the process of designing such a P2P network, as well as the associated algorithms. 3.4 Data Model The most challenging part of the design is what kind of data should be published and how should it be stored in the ONS and DS so that the query can be efficiently processed. For both types of queries, there have been some research done to ensure the performance basing on the improvement of data model about RFID systems [7, 6]. However, these data models are not adequate for the realization of “Inter- net of Things”, especially in the service-centric environment. The data models proposed so far are largely constrained on some particular application domains such as supply chain management, which assume data shares some common properties—for example, moving together in bulk mode or having the same ex- piration date—and can be grouped based on such properties. In the vision of the “Internet of Things”, all different types of objects might be connected. We can not expect and assume that RFID data share the common characteristics. In our approach, considering the proposed P2P network, we are going to use a probabilistic data model. In this model, the DS collects information only about statistics of data flow. For example, the percentage of objects moved between locations. It uses statistic information to choose neighbors for further search. Furthermore, it is possible to add more intelligence on the DS in order to accelerate the process using some existing probabilistic models such as Markov chain. 4 Conclusion In this paper, we have proposed an initial architecture design to realize the “In- ternet of Things” in the service-centric environments. We discussed the technical challenges and investigated the possibility of combining Service-Oriented Com- puting and the RFID technology for this purpose. We advocate that a P2P, Web service-based architecture could achieve the scalability of large-scale applications such as the “Internet of Things”. The proposal reported in this paper is one part of a large research project aiming at developing a scalable, Internet-based RFID traceability network. Cur- rently, we are investigating several technical challenges such as data models and service design on query processing. We will continue to implement the system and perform experimental studies to validate our approach. References 1. Forbes.com, http://www.forbes.com/global/2002/0318/092.html 2. S. Sarma, D. L. Brock, Kevin Ashton. The Networked Physical World, Proposals for Engineering the Next Generation of Computing, Commerce and Automatic- Identification (2000) 3. M. P. Papazoglou, P. Traverso, S. Dustdar, and F. Leymann. Service-Oriented Com- puting: State of the Art and Research Challenges. In IEEE Computer, Vol 40, No 11. pp 38-45, (2007) 4. Q. Yu, A. Bouguettaya, and B. Medjahed: Deploying and Managing Web Services: Issues, Solutions, and Directions. In The VLDB Journal, Vol 17, No 3. pp 537-572 (2008) 5. Q. Z. Sheng, X. Li, S. Zeadally. Enabling Next-Generation RFID Applications: Solutions and Challenges. In IEEE Computer, September 2008, Vol 41 No 9. pp 21–28 (2008) 6. F. Wang, P. Liu. Temporal management of RFID data. In The 31st international conference on Very Large Database, Trondheim, Norway (2005) 7. H. Gonzalez, J. Han, X. Li, D Klabjan. Warehousing and Analyzing Massive RFID Data Sets. In International Conference on Data Engineering (ICDE’06), 2006, At- lanta, Georgia, USA (2006)