| Literature DB >> 22346646 |
Mohammad Mehdi Faghih1, Mohsen Ebrahimi Moghaddam.
Abstract
Although much research in the area of Wireless Multimedia Sensor Networks (WMSNs) has been done in recent years, the programming of sensor nodes is still time-consuming and tedious. It requires expertise in low-level programming, mainly because of the use of resource constrained hardware and also the low level API provided by current operating systems. The code of the resulting systems has typically no clear separation between application and system logic. This minimizes the possibility of reusing code and often leads to the necessity of major changes when the underlying platform is changed. In this paper, we present a service oriented middleware named SOMM to support application development for WMSNs. The main goal of SOMM is to enable the development of modifiable and scalable WMSN applications. A network which uses the SOMM is capable of providing multiple services to multiple clients at the same time with the specified Quality of Service (QoS). SOMM uses a virtual machine with the ability to support mobile agents. Services in SOMM are provided by mobile agents and SOMM also provides a t space on each node which agents can use to communicate with each other.Entities:
Keywords: TinyOS; Wireless Multimedia Sensor Networks; code mobility; middleware; service oriented architecture
Year: 2011 PMID: 22346646 PMCID: PMC3274288 DOI: 10.3390/s111110343
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.576
Figure 1.Overall view of a GWMSN designed based on SOMM.
Figure 2.SOMM Architecture in a server node.
Figure 3.Network configuration phases at startup.
Figure 4.Service description for a simple video streaming service.
Figure 5.A symbolic tuple space. Read and write can be synchronous or asynchronous.
Figure 6.A sample code for registering a service in service registry using regserv instruction.
Figure 7.Key interfaces in SOMM (a) tuple space interface; (b) agent transmitter interface; (c) instruction interface; and (d) interpreter interface.
Figure 8.Key interfaces of SOMM (a) service manager interface; (b) QoS aware routing interface; (c) message dispatcher interface; and (d) agent manager interface.
Figure 9.The key components of SOMM.
Figure 10.Sequence diagram for the startup process of a node.
Comparing SOMM with other middlewares.
| Mate [ | Virtual machine, small size applications, permodule reprogramming | Medium | Medium | Medium | Medium | Low | High |
| Cougar [ | Virtual relational database, Abstract DataTypes, SQL Like Language, In-network query processing | Low | Medium | Low | Low | High | High |
| MiLAN [ | Macro-programming with high level concerns, QoS based efficient execution planning, Network protocol stack | Low | High | Low | Low | High | High |
| Middleware | Key features | Scalability | Power awareness | Modifiability | Heterogeneity | Ease of use | General purpose |
| TinyDB [ | Virtual relational database, Acquisitional query processing, Semantic routing tree, Power aware query optimization | Low | High | Low | Low | High | High |
| Agilla [ | Virtual machine, Autonomous mobile agents, Tuple space, supporting self-adaptive applications | Medium | Medium | Medium | Medium | Medium | High |
| Kairos [ | Macro-programming, Caching with eventual consistency, Language independent | Low | Medium | Medium | Low | High | High |
| Impala [ | Modular programming, Mobile agents, Dynamic code update | Medium | Medium | Medium | Low | Medium | Low |
| TinySOA [ | Service oriented model, Internet accessible via web services | High | Medium | Medium | Medium | High | High |
| SOMM | Multimedia support, QoS awareness, Service oriented model, Virtual machine, Mobile Agents, Tuple space | High | Medium | High | High | Medium | Medium |