MyP2PWorld: Highly reproducible application-level emulation of P2P systems
In this paper, we describe an application-level emulator for P2P systems with a special focus on high reproducibil-ity. We achieve reproduciblity by taking control over the scheduling ofconcurrent events from the operating system. We accomplish that for inter-and intra-peer concurrency. The development ofthe system was driven by the need to enhance the testing process ofan already-developed industrial product. Therefore, we were constrained by the architecture ofthe overlying application. However, we managed to provide highly transparent emulation by wrapping standard/widely-used networking and concurrency APIs. The resulting environment has proven to be useful in a production environment. At this stage, it started to be general enough to be used in the testing process ofapplications other than the one it was created to test. © 2008 IEEE.