While the possible applications and scenarios outlined above may be very interesting,the demands placed on the underlying technology are substantial. Progressing from the Internet of computers to the remote and somewhat fuzzy goal of an Internet of Things is something that must therefore be done one step at a time. In addition to the expectation that the technologymust be available at low cost if a large number of objects are actually to be equipped, we are also faced with many other challenges, such as:
− Scalability: An Internet of Things potentially has a larger overall scope than the conventional Internet of computers. But then again, things cooperate mainly within a local environment. Basic functionality such as communication and service discoverytherefore need to function equally efficiently in both smallscale and large-scale environments.
− “Arrive and operate”: Smart everyday objects should not be perceived as computers that require their users to configure and adapt them to particular situations. Mobile things,which are often only sporadically used, need to establish connections spontaneously, and organize and configure themselves tosuit their particular environment.
− Interoperability: Since the world of physical things is extremely diverse, in an Internet of Things each type of smart object is likely to have different information, processing and communication capabilities. Different smart objects would also be subjected to very different conditions such as the energy available and the communications bandwidth required.However, to facilitate communication and cooperation, common practices and standards are required. This is particularly important with regard to object addresses. These should comply with a standardized schema if at all possible, along the lines of the IP standard used in the conventional Internet domain.
− Discovery: In dynamic environments, suitable services for things must be automaticallyidentified, which requires appropriate semantic means of describing their functionality. Users will want to receive product-related information, and will want to use search engines that can find things or provide information about an object’s state.
− Software complexity: Although the software systems in smart objects will have to function with minimal resources, as in conventional embedded systems, amore extensive software infrastructure will be needed on the network and on background servers in order to manage the smart objects and provide services to support them.
− Data volumes: While some application scenarios will involve brief, infrequent communication, others, such as sensor networks, logistics and large-scale “real-world awareness” scenarios, will entail huge volumes of data oncentral network nodes or servers.
− Data interpretation: To support the users of smart things, we would want to interpret
the local context determined by sensors as accurately as possible. For service providers to profit from the disparate data that will be generated, we would need to be able to draw some generalizable conclusions from the interpreted sensor data. However, generating usefulinformation from raw sensor data that can trigger further action is by no means a trivial undertaking.
− Security and personal privacy: In addition to the security and protection aspects of the Internet with which we are all familiar (such as communications confidentiality, the authenticity and trustworthiness of communication partners, and message integrity), other requirements would also be importantin an Internet of Things. We might want to give things only selective access to certain services, or prevent them from communicating with other things at certain times or in an uncontrolled manner; and business transactions involving smart objects would need to be protected from competitors’ prying eyes.
− Fault tolerance: The world of things is much more dynamic and mobile than the world of...