## 8 Challenges and Future Work
* There are different types of sensors with diverse physical layer protocols, there is a need of a middleware platform on which they can combine, and coordinate to achieve the goals. * Sensor nodes as they are tiny devices with small battery, processing power, and memory. They are prone to different failures of hardware and software, the software errors are to be minimized by the middleware software architecture. * Ease of programming provided by the middleware to the developer should not affect the network performance. * Middleware based on virtualization demands more memory, so the middleware design should be light weight. * Middleware for virtualization need to discover services demanded by the user and applications in an efficient manner, so as decoupling between applications and network should be at optimum level. * Service and resource discovery algorithms need significant improvement for virtualization middleware. * Security of sensed data is a major challenge where multiple applications accessing different services and the sense data where as simple middleware has only one application to serve. * The middleware design for virtualization should support cost effective business models as it opens new horizons for investments and business opportunities. * Unlike conventional middleware, virtualization middleware design must support both the service providers and infrastructure providers to meet fluctuating and impulsive services and resource demands. * Processing limitations of the sensor node, and high computational requirements for middleware supporting virtualization is an immense challenge. * Lack of standardization is another key challenge there is still no consensus on the software and hardware platforms and heterogeneity keeps on growing. * The middleware for virtualization should support widespread networks of wireless sensors using distinct radios and deal with the integration problem of the heterogeneous WSN. * The virtualization middleware should be fault tolerant and adaptable to multiple network requirements. * Virtualization middleware design should separate application dependent services from the network dependent services. * Redundancy in virtualization has to be eliminated for efficient network operations. * Efficient localization and clustering techniques in middleware for virtualization are required so as to reduce processing overhead. * Middleware must incorporate new efficient algorithms for delay tolerance, load balancing and errors minimization, the conventional techniques will not work in the virtualized environment efficiently. Heterogeneity, reliability, adaptability, re-usability, scalability, QoS and context awareness techniques for the virtualized environment need significant improvement and are the other key issues of a middleware design for WSN virtualization. Therefore, demand of lightweight design of a middleware that address the fundamental challenges identified above for virtualization of sensor network and IoE to be a reality. Even though numerous constraints make these problems computationally intractable, in the presence of multiple networks, topologies, links, services and applications provide opportunities to exploit and leave enough room for researchers to modify solutions, techniques and algorithms. All of the above mentioned challenges need to be addressed by the research community as they are the key to the future WSN virtualization and building blocks of IoE.