att_abstract={{Wireless reprogramming of sensor nodes is an essential requirement for long-lived networks because software functionality needs to be changed over time. The amount of information that needs to be wirelessly transmitted during reprogramming should be minimized to reduce reprogramming time and energy. In this paper, we present a multi-hop incremental reprogramming protocol called Hermes that transfers over the network the delta between the old and new software and lets the sensor nodes rebuild the new software using the received delta and the old software. It reduces the delta by using techniques to mitigate the effects of function and global variable shifts caused by the software modifications. Then it compares the binary images at the byte level with a method to create a small delta that needs to be sent over the wireless network to all the nodes. For the wide range of software change scenarios that we experimented with, we find that Hermes transfers up to 201 times less information than Deluge, the standard reprogramming protocol for TinyOS, and 64 times less than an existing incremental reprogramming protocol by Jeong and Culler. }},
	att_copyright_notice={{The definitive version was published in IEEE Transactions on Parallel and Distributed Systems {{, 2012-08-27}}}},
	att_tags={sensor networks,  reprorgramming},
	author={Rajesh Panta and Saurabh Bagchi},
	institution={{IEEE Transactions on Parallel and Distributed Systems}},
	title={{Mitigating the Effects of Software Component Shifts for Incremental Reprogramming of Wireless Sensor Networks}},