The rapidly growing Internet architecture is causing most recent computer applications to integrate a more or less important part of distributed functionalitiessuch as transport layer services, transport protocols and other services-that need to meet user's necessities in terms of functionalities and Quality of Service (QoS) requirements. Emulation platforms are a classical way for protocol and applicative experiments to check if user and QoS requirements are met. They complement the simulation and real network experiments, since they enable to use real implementation of protocols or applications without having a real network deployed for the experiments. This chapter presents the emulation approach in the context of networking experimentation: First, the different possible utilisations of dynamic emulation in the context of networking and protocol engineering are presented. Then, requirements for a general network emulation framework are proposed. Furthermore, different network emulation platforms and tools implementing the general framework are exposed; we describe how to use them in the context of protocol engineering and discuss their advantages and disadvantages. Finally, the emulation of wireless systems is challenging, due to many parameters affecting the resulting behaviour of the channel. Satellite emulation, a subset of wireless emulation, has unique characteristics concerning the access to the resource that combines static and dynamic assignment. As an example, the emulation of a QoS-oriented satellite system is detailed in a final section.