Scalable computer network emulation using node virtualization and resource monitoring [Elektronische Ressource] / vorgelegt von Steffen Dirk Maier
186 Pages
English

Scalable computer network emulation using node virtualization and resource monitoring [Elektronische Ressource] / vorgelegt von Steffen Dirk Maier

-

Downloading requires you to have access to the YouScribe library
Learn all about the services we offer

Informations

Published by
Published 01 January 2011
Reads 14
Language English
Document size 1 MB

ScalableComputerNetworkEmulation
UsingNodeVirtualization
andResourceMonitoring
Von der Fakultät Informatik, Elektrotechnik und
Informationstechnik der Universität Stuttgart
zur Erlangung der Würde eines Doktors der
Naturwissenschaften (Dr. rer. nat.) genehmigte Abhandlung
Vorgelegt von
Steffen Dirk Maier
aus Filderstadt
Hauptberichter: Prof. Dr. rer. nat. Dr. h. c. Kurt Rothermel
Mitberichter: Prof. Dr.-Ing. Bernd Freisleben
Tag der mündlichen Prüfung: 16.02.2011
Institut für Parallele und Verteilte Systeme (IPVS)
der Universität Stuttgart
20112Acknowledgments
First of all, I would like to thank my PhD advisor Prof. Dr. Kurt Rothermel for
providing the opportunity and the support to pursue a PhD within the Distributed
Systems research group at the Universität Stuttgart. For kindly serving on my PhD
committee and reviewing this thesis, I am grateful to Prof. Dr. Bernd Freisleben at
the Philipps-Universität Marburg.
The colleagues and friends of the research group as well as of neighboring
groups made this a memorable experience. Thank you for all the interesting
discussions on research and everything else. My thanks also go to the students
who contributed to the “Network Emulation Testbed” (NET) research project.
Part of this work was funded by the German Research Foundation (DFG) under
grant DFG-GZ RO 1086/9-1. Grants of the State of Baden-Württemberg allowed
for the acquisition of the NET hardware without which this research would not
have been possible. A PPP-USA grant of the German Academic Exchange Service
(DAAD) enabled face to face research with our Emulab/Netbed colleagues at the
Flux Group, University of Utah, USA. I would like to express my gratitude for the
support.
My thanks go to the colleagues at IBM Deutschland Research & Development
for coping with my sometimes unusual working time and making it possible to
finish my thesis after I had left the research group.
Last but not least, I am deeply grateful to my parents and grandparents for
their continuous support and patience.
34Contents
List of Abbreviations 9
Abstract 11
Deutsche Zusammenfassung 13
1 Introduction 27
1.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
1.2 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.3 Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2 Foundations of Computer Network Emulation 33
2.1 Architecture of a Network Emulation System . . . . . . . . . . . . . . 33
2.1.1 Protocol Layers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.1.2 Emulation Modules . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.1.3 Functionality . . . . . . . . . . . . . . . . . . . . . . 42
2.2 The “Network Emulation Testbed” . . . . . . . . . . . . . . . . . . . . 48
2.2.1 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.2.2 Emulation Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.2.3 Emulation Control and Global Network Model . . . . . . . . . 52
2.2.4 Application Case Studies . . . . . . . . . . . . . . . . . . . . . . 53
2.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3 Node Virtualization 55
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.2.1 Parallelization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.2.2 Emulation Model Abstraction . . . . . . . . . . . . . . . . . . . 58
3.2.3 Node Virtualization . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.2.4 Conclusion of Related Work . . . . . . . . . . . . . . . . . . . . 65
3.3 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.4 Foundations of Protocol Stacks . . . . . . . . . . . . . . . . . . . . . . 66
56 CONTENTS
3.5 Approaches and Qualitative Comparison . . . . . . . . . . . . . . . . 69
3.5.1 Virtual Machines . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.5.2 Operating System Partitioning . . . . . . . . . . . . . . . . . . 74
3.5.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
3.6 Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
3.6.1 Software Communication Switch . . . . . . . . . . . . . . . . . 77
3.6.2 Virtual Protocol Stack . . . . . . . . . . . . . . . . . . . . . . . . 80
3.6.3 Virtual Node Configuration . . . . . . . . . . . . . . . . . . . . 81
3.6.4 Hierarchical Emulation Control . . . . . . . . . . . . . . . . . . 84
3.7 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
3.7.1 Quantitative Comparison of Node Virtualization Approaches 87
3.7.2 Micro Benchmarks . . . . . . . . . . . . . . . . . . . . . . . . . . 93
3.7.3 Macro Benc . . . . . . . . . . . . . . . . . . . . . . . . . 99
3.7.4 Application Case Studies . . . . . . . . . . . . . . . . . . . . . . 108
3.8 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
4 Resource Contention in Virtualized Emulation 111
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
4.2 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
4.2.1 Network Monitoring . . . . . . . . . . . . . . . . . . . . . . . . . 113
4.2.2 Scalable Network Emulation . . . . . . . . . . . . . . . . . . . 116
4.2.3 Code Instrumentation . . . . . . . . . . . . . . . . . . . . . . . . 116
4.3 Requirements for Detection of Resource Contention . . . . . . . . . . 118
4.4 Quality Criteria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
4.4.1 Approaches to Definition . . . . . . . . . . . . . . . . . . . . . . 119
4.4.2 Empirical Approach . . . . . . . . . . . . . . . . . . . . . . . . . 120
4.4.3 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.5 Monitoring Approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
4.5.1 Instrumentation of Basic Events . . . . . . . . . . . . . . . . . 131
4.5.2 User Notification . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
4.6 Evaluation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
4.6.1 Effectiveness of Quality Criteria . . . . . . . . . . . . . . . . . 142
4.6.2 of Monitoring . . . . . . . . . . . . . . . . . . . . 146
4.6.3 Overhead of . . . . . . . . . . . . . . . . . . . . . . 149
4.7 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
5 Conclusion 153
5.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
5.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
List of Figures 159CONTENTS 7
List of Tables 161
List of Equation Symbols 163
Bibliography 1658 CONTENTSList of Abbreviations
ABI application binary interface
AODV ad-hoc on-demand distance vector
API application programming interface
ARP address resolution protocol
BER bit error rate
BSD Berkeley Software Distribution
CPU central processing unit
CSMA/CA carrier sense multiple access with collision avoidance
CSMA/CD carrier sense multiple access with collision detection
CSMA carrier sense multiple access
FER frame error rate
GUI graphical user interface
I/O input/output
ICMP Internet control message protocol
IOCTL input/output control
IP Internet protocol
ISA instruction set architecture
LAN local area network
LLC logical link control
910 LISTOFABBREVIATIONS
MAC medium access control
MANET mobile ad hoc network
MSS maximum segment size
MTU transfer unit
NET Network Emulation Testbed
NIC network interface card
OS operating system
PCB protocol control block
PDES parallel discrete event simulator
pnode physical node
QoS quality of service
RTT round trip time
SNR signal to noise ratio
TCP transmission control protocol
UDP user datagram protocol
UML User Mode Linux
VLAN virtual local area network
VM virtual machine
VMM virtual machine monitor (hypervisor)
vnode virtual node
VR virtual routing
VRF Virtual Routing and Forwarding
WLAN wireless local area network