SlideShare a Scribd company logo
1 of 17
Download to read offline
VIRTUAL TIME MACHINE FOR
LARGE-SCALE REPRODUCIBLE
DISTRIBUTED EMULATION
Jason Liu
Florida International University
GEFI Workshop, Oct 26-27, 2017, Rio de Janeiro, Brazil
ABOUT REPRODUCIBILITY
• Simulation observes strict event timestamp ordering
time
event eventevent event event
eventevent event
E2E1 E7E3 E8E5E4 E6
time
event eventevent event event
eventevent event
timeLP1
LP2 E1 E8E4 E6
E2 E7E5
E3
ABOUT REPRODUCIBILITY
• Simulation observes strict event timestamp ordering
ABOUT REPRODUCIBILITY
• Simulation observes strict event timestamp ordering
• Pseudo-randomness (same seed, same sequence)
• Explicit tie-breaking rules for simultaneous events
• Totally repeatable
GTNeTS
SSFNet
ABOUT REPRODUCIBILITY
• Emulation and physical testbeds provide “best effort” timing fidelity
• Inherent nondeterministic behavior
• Interference from competing applications and background services
• Interference from cross traffic
• Assuming reproducible if with “same“ hardware/software provisioning
• Nondeterminism amplified by resource contention
H3
H2H5
H6
H1
H4
R1
R2
R3
R4
R5 R6
R7 R8
R9 R10
R11
R12
R13
R14
R15
R16
6
OpenVSwitch Linux namespace
Case in Point: Mininet
Bob Lantz, Brandon Heller, and Nick McKeown. 2010. A network in a laptop: rapid prototyping for
software-defined networks. In Proceedings of the 9th ACM Workshop on Hot Topics in Networks. 19:1–19:6.
H3
H2H5
H6
H1
H4
R1
R2
R3
R4
R5 R6
R7 R8
R9 R10
R11
R12
R13
R14
R15
R16
7
OpenVSwitch Linux namespace
Maxinet is a Distributed Mininet
P. Wette, M. Draxler, A. Schwabe, F. Wallaschek, M. Zahraee, and H. Karl, “Maxinet: Distributed emulation of
software-defined networks,” in Proceedings of the 2014 IFIP Networking Conference, 2014, pp. 1–9.
MININET/MAXINET
• Virtualization:
• Linux containers (LXC, namespace)
• OVS, veth, GRE tunnels
• CPU limit: cgroup
• Bandwidth and latency: netem, tc
• Problems in experiment capacity and fidelity
• Mininet has processing and memory limitations
• For small experiments only (both in network size and activities)
• Fidelity severely deteriorated by resource underprovisioning
• Maxinet allows large experiments, but limited by cross-machine latency and throughput
• No timing fidelity ☛ no reproducibility
STUDY SHREW DDOS ATTACK ON MININET
0
0.2
0.4
0.6
0.8
1
sequential/normal
sequential/dos
distributed/normal
distributed/dos
NormalizedThroughput
RTT=40ms
RTT=120ms
RTT=200ms
RTT=280ms
RTT=360ms
9
Victim
Attacker
Common
Bottleneck
Link
RESOURCE UNDERPROVISIONING: VIRTUAL TIME
• Time dilation [1]:
• Slow down clock time in VMs w.r.t. real time
• Time dilation factor (TDF) = real time / virtual time
• Equivalent to be an update in system resources
• Observable time:
• gettimeofday(): return t = t0 + (r - r0) * TDF
• sleep(t): hrtimer_nanosleep(t * TDF)
• Implementation through kernel modification [2]
• Change Linux task_struct: add TDF, t0, r0, …
• Add/replace system calls, such as clone(), gettimeofday(), sleep()
Real Time
VirtualTime
r0 r = now()
t0
t
[1] D. Gupta, K. Yocum, M. McNett, A. C. Snoeren, A. Vahdat, and G. M. Voelker, “To infinity and beyond:
time warped network emulation,” SOSP 2005.
[2] J. Lamps, D. M. Nicol, and M. Caesar, “Timekeeper: a lightweight virtual time system for linux,”
SIGSIM-PADS 2014.
PRIME Emulation Infrastructure
PRIME Network Simulator
Applications
TCP/IP
Stack
Virtual NICs
VM1
Applications
TCP/IP
Stack
Virtual NICs
VM2
TCP EVALUATION USING TIME DILATION
• SVEET: Scalable Virtualized Evaluation Environment for TCP
• M. A. Erazo, Y. Li, and J. Liu, “SVEET! A scalable virtualized evaluation environment
for TCP,” TRIDENTCOM 2009.
• Static time dilation for all VMs and real-time simulator
11
WSC'10 12JASON LIU, FLORIDA INTERNATIONAL UNIVERSITY
Throughput under random loss over 100 Mb/s bottleneck link
13
Throughput under random loss over 10 Mb/s bottleneck link
TIMING FIDELITY: TRADITIONAL EMULATION
Real Time
VirtualTime
VM1
VM2
VM3
VM4
• No time dilation: virtual time = real time
• Timing depends on CPU scheduling
• CPU contention deteriorates timing fidelity
TIMING FIDELITY: FIXED TIME DILATION
Real Time
VirtualTime
VM1
VM2
VM3
VM4
• Upgraded resources: more throughput, less latency
• TDF derived from bottleneck constraint
• Timing still depends on CPU scheduling
TIMING FIDELITY: VIRTUAL TIME SCHEDULING
Real Time
VirtualTime
• Dynamic time dilation for each VM:
• TDF derived from resource (e.g., processing speed)
• TDF from degree of multiplexing (e.g., #VMs)
• TDF from utilization (e.g., packet send rate)
• CPU scheduling: schedule VMs according to virtual time
• Ability to start and stop any VM
• Virtual-time aware netem, tc, GRE tunnel
• Better VM control ☛ improved timing fidelity
• Improved timing fidelity ☛ better reproducibility
VM1
VM2
VM3
VM4
VIRTUAL TIME MACHINE
• Local controller
• Coordinate virtual time by communicating/schedulingVMs and SIMs
• Monitor resource utilization, manage network traffic between VMs
• Global controller
• VM migration and model repartitioning
• Manage overall virtual time advancement
• Manage network traffic between machines
17

More Related Content

What's hot

Supporting Time-Sensitive Applications on a Commodity OS
Supporting Time-Sensitive Applications on a Commodity OSSupporting Time-Sensitive Applications on a Commodity OS
Supporting Time-Sensitive Applications on a Commodity OSNamHyuk Ahn
 
Achieving Performance Isolation with Lightweight Co-Kernels
Achieving Performance Isolation with Lightweight Co-KernelsAchieving Performance Isolation with Lightweight Co-Kernels
Achieving Performance Isolation with Lightweight Co-KernelsJiannan Ouyang, PhD
 
Instrumenting the real-time web: Node.js in production
Instrumenting the real-time web: Node.js in productionInstrumenting the real-time web: Node.js in production
Instrumenting the real-time web: Node.js in productionbcantrill
 
Lisa12 methodologies
Lisa12 methodologiesLisa12 methodologies
Lisa12 methodologiesBrendan Gregg
 
Micro-Architectural Attacks on Cyber-Physical Systems
Micro-Architectural Attacks on Cyber-Physical SystemsMicro-Architectural Attacks on Cyber-Physical Systems
Micro-Architectural Attacks on Cyber-Physical SystemsHeechul Yun
 
What every Java developer should know about network?
What every Java developer should know about network?What every Java developer should know about network?
What every Java developer should know about network?aragozin
 
NTP Server - How it works?
NTP Server - How it works?NTP Server - How it works?
NTP Server - How it works?Davoud Teimouri
 
DoS and DDoS mitigations with eBPF, XDP and DPDK
DoS and DDoS mitigations with eBPF, XDP and DPDKDoS and DDoS mitigations with eBPF, XDP and DPDK
DoS and DDoS mitigations with eBPF, XDP and DPDKMarian Marinov
 
Security Monitoring with eBPF
Security Monitoring with eBPFSecurity Monitoring with eBPF
Security Monitoring with eBPFAlex Maestretti
 
Nexenta at VMworld Hands-on Lab
Nexenta at VMworld Hands-on LabNexenta at VMworld Hands-on Lab
Nexenta at VMworld Hands-on LabNexenta Systems
 
Whole Genome Sequencing - Data Processing and QC at SciLifeLab NGI
Whole Genome Sequencing - Data Processing and QC at SciLifeLab NGIWhole Genome Sequencing - Data Processing and QC at SciLifeLab NGI
Whole Genome Sequencing - Data Processing and QC at SciLifeLab NGIPhil Ewels
 
Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Hajime Tazaki
 
DIY Java Profiler
DIY Java ProfilerDIY Java Profiler
DIY Java Profileraragozin
 
Instrumenting the real-time web
Instrumenting the real-time webInstrumenting the real-time web
Instrumenting the real-time webbcantrill
 

What's hot (17)

Supporting Time-Sensitive Applications on a Commodity OS
Supporting Time-Sensitive Applications on a Commodity OSSupporting Time-Sensitive Applications on a Commodity OS
Supporting Time-Sensitive Applications on a Commodity OS
 
Achieving Performance Isolation with Lightweight Co-Kernels
Achieving Performance Isolation with Lightweight Co-KernelsAchieving Performance Isolation with Lightweight Co-Kernels
Achieving Performance Isolation with Lightweight Co-Kernels
 
Instrumenting the real-time web: Node.js in production
Instrumenting the real-time web: Node.js in productionInstrumenting the real-time web: Node.js in production
Instrumenting the real-time web: Node.js in production
 
Lisa12 methodologies
Lisa12 methodologiesLisa12 methodologies
Lisa12 methodologies
 
Micro-Architectural Attacks on Cyber-Physical Systems
Micro-Architectural Attacks on Cyber-Physical SystemsMicro-Architectural Attacks on Cyber-Physical Systems
Micro-Architectural Attacks on Cyber-Physical Systems
 
What every Java developer should know about network?
What every Java developer should know about network?What every Java developer should know about network?
What every Java developer should know about network?
 
NTP Server - How it works?
NTP Server - How it works?NTP Server - How it works?
NTP Server - How it works?
 
.ppt
.ppt.ppt
.ppt
 
DoS and DDoS mitigations with eBPF, XDP and DPDK
DoS and DDoS mitigations with eBPF, XDP and DPDKDoS and DDoS mitigations with eBPF, XDP and DPDK
DoS and DDoS mitigations with eBPF, XDP and DPDK
 
Security Monitoring with eBPF
Security Monitoring with eBPFSecurity Monitoring with eBPF
Security Monitoring with eBPF
 
Nexenta at VMworld Hands-on Lab
Nexenta at VMworld Hands-on LabNexenta at VMworld Hands-on Lab
Nexenta at VMworld Hands-on Lab
 
Whole Genome Sequencing - Data Processing and QC at SciLifeLab NGI
Whole Genome Sequencing - Data Processing and QC at SciLifeLab NGIWhole Genome Sequencing - Data Processing and QC at SciLifeLab NGI
Whole Genome Sequencing - Data Processing and QC at SciLifeLab NGI
 
Preempt_rt realtime patch
Preempt_rt realtime patchPreempt_rt realtime patch
Preempt_rt realtime patch
 
Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)Network Stack in Userspace (NUSE)
Network Stack in Userspace (NUSE)
 
DIY Java Profiler
DIY Java ProfilerDIY Java Profiler
DIY Java Profiler
 
Real time Linux
Real time LinuxReal time Linux
Real time Linux
 
Instrumenting the real-time web
Instrumenting the real-time webInstrumenting the real-time web
Instrumenting the real-time web
 

Similar to Virtual Time Machine for Large-Scale Reproducible Distributed Emulation

Distributed Mininet with Symbiosis
Distributed Mininet with SymbiosisDistributed Mininet with Symbiosis
Distributed Mininet with SymbiosisJason Liu
 
Enabling Carrier-Grade Availability Within a Cloud Infrastructure
Enabling Carrier-Grade Availability Within a Cloud InfrastructureEnabling Carrier-Grade Availability Within a Cloud Infrastructure
Enabling Carrier-Grade Availability Within a Cloud InfrastructureOPNFV
 
VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...
VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...
VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...VMworld
 
Real-Time Systems Intro.pptx
Real-Time Systems Intro.pptxReal-Time Systems Intro.pptx
Real-Time Systems Intro.pptx20EUEE018DEEPAKM
 
Reactive Revealed Part 2: Scalability, Elasticity and Location Transparency i...
Reactive Revealed Part 2: Scalability, Elasticity and Location Transparency i...Reactive Revealed Part 2: Scalability, Elasticity and Location Transparency i...
Reactive Revealed Part 2: Scalability, Elasticity and Location Transparency i...Legacy Typesafe (now Lightbend)
 
Sync in an NFV World (Ram, ITSF 2016)
Sync in an NFV World  (Ram, ITSF 2016)Sync in an NFV World  (Ram, ITSF 2016)
Sync in an NFV World (Ram, ITSF 2016)Adam Paterson
 
Sync in an NFV World (Ram, ITSF 2016)
Sync in an NFV World (Ram, ITSF 2016)Sync in an NFV World (Ram, ITSF 2016)
Sync in an NFV World (Ram, ITSF 2016)Calnex Solutions
 
Tsinghua University: Two Exemplary Applications in China
Tsinghua University: Two Exemplary Applications in ChinaTsinghua University: Two Exemplary Applications in China
Tsinghua University: Two Exemplary Applications in ChinaDataStax Academy
 
Donatas Mažionis, Building low latency web APIs
Donatas Mažionis, Building low latency web APIsDonatas Mažionis, Building low latency web APIs
Donatas Mažionis, Building low latency web APIsTanya Denisyuk
 
Summit 16: Yardstick: Pre-deployment Tool
Summit 16: Yardstick: Pre-deployment ToolSummit 16: Yardstick: Pre-deployment Tool
Summit 16: Yardstick: Pre-deployment ToolOPNFV
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating SystemsPawandeep Kaur
 
Test scenario simulator
Test scenario simulatorTest scenario simulator
Test scenario simulatortahmed
 
Test scenario simulator
Test scenario simulatorTest scenario simulator
Test scenario simulatorguest4ebcd7b
 
Lab streaming layer
Lab streaming layerLab streaming layer
Lab streaming layerRADHA KUMARI
 
Fdp embedded systems
Fdp embedded systemsFdp embedded systems
Fdp embedded systemsKavya G
 
RT15 Berkeley | ARTEMiS-SSN Features for Micro-grid / Renewable Energy Sourc...
RT15 Berkeley |  ARTEMiS-SSN Features for Micro-grid / Renewable Energy Sourc...RT15 Berkeley |  ARTEMiS-SSN Features for Micro-grid / Renewable Energy Sourc...
RT15 Berkeley | ARTEMiS-SSN Features for Micro-grid / Renewable Energy Sourc...OPAL-RT TECHNOLOGIES
 
Tech 2 tech low latency networking on Janet presentation
Tech 2 tech low latency networking on Janet presentationTech 2 tech low latency networking on Janet presentation
Tech 2 tech low latency networking on Janet presentationJisc
 
LCA14: LCA14-506: Comparative analysis of preemption vs preempt-rt
LCA14: LCA14-506: Comparative analysis of preemption vs preempt-rtLCA14: LCA14-506: Comparative analysis of preemption vs preempt-rt
LCA14: LCA14-506: Comparative analysis of preemption vs preempt-rtLinaro
 

Similar to Virtual Time Machine for Large-Scale Reproducible Distributed Emulation (20)

Distributed Mininet with Symbiosis
Distributed Mininet with SymbiosisDistributed Mininet with Symbiosis
Distributed Mininet with Symbiosis
 
Enabling Carrier-Grade Availability Within a Cloud Infrastructure
Enabling Carrier-Grade Availability Within a Cloud InfrastructureEnabling Carrier-Grade Availability Within a Cloud Infrastructure
Enabling Carrier-Grade Availability Within a Cloud Infrastructure
 
VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...
VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...
VMworld 2013: Silent Killer: How Latency Destroys Performance...And What to D...
 
Real-Time Systems Intro.pptx
Real-Time Systems Intro.pptxReal-Time Systems Intro.pptx
Real-Time Systems Intro.pptx
 
POTASSIUM: Penetration Testing as a Service
POTASSIUM: Penetration Testing as a ServicePOTASSIUM: Penetration Testing as a Service
POTASSIUM: Penetration Testing as a Service
 
Reactive Revealed Part 2: Scalability, Elasticity and Location Transparency i...
Reactive Revealed Part 2: Scalability, Elasticity and Location Transparency i...Reactive Revealed Part 2: Scalability, Elasticity and Location Transparency i...
Reactive Revealed Part 2: Scalability, Elasticity and Location Transparency i...
 
Sync in an NFV World (Ram, ITSF 2016)
Sync in an NFV World  (Ram, ITSF 2016)Sync in an NFV World  (Ram, ITSF 2016)
Sync in an NFV World (Ram, ITSF 2016)
 
Sync in an NFV World (Ram, ITSF 2016)
Sync in an NFV World (Ram, ITSF 2016)Sync in an NFV World (Ram, ITSF 2016)
Sync in an NFV World (Ram, ITSF 2016)
 
Tsinghua University: Two Exemplary Applications in China
Tsinghua University: Two Exemplary Applications in ChinaTsinghua University: Two Exemplary Applications in China
Tsinghua University: Two Exemplary Applications in China
 
Donatas Mažionis, Building low latency web APIs
Donatas Mažionis, Building low latency web APIsDonatas Mažionis, Building low latency web APIs
Donatas Mažionis, Building low latency web APIs
 
Summit 16: Yardstick: Pre-deployment Tool
Summit 16: Yardstick: Pre-deployment ToolSummit 16: Yardstick: Pre-deployment Tool
Summit 16: Yardstick: Pre-deployment Tool
 
Real Time Operating Systems
Real Time Operating SystemsReal Time Operating Systems
Real Time Operating Systems
 
Test scenario simulator
Test scenario simulatorTest scenario simulator
Test scenario simulator
 
Test scenario simulator
Test scenario simulatorTest scenario simulator
Test scenario simulator
 
Lab streaming layer
Lab streaming layerLab streaming layer
Lab streaming layer
 
Fdp embedded systems
Fdp embedded systemsFdp embedded systems
Fdp embedded systems
 
RT15 Berkeley | ARTEMiS-SSN Features for Micro-grid / Renewable Energy Sourc...
RT15 Berkeley |  ARTEMiS-SSN Features for Micro-grid / Renewable Energy Sourc...RT15 Berkeley |  ARTEMiS-SSN Features for Micro-grid / Renewable Energy Sourc...
RT15 Berkeley | ARTEMiS-SSN Features for Micro-grid / Renewable Energy Sourc...
 
Tech 2 tech low latency networking on Janet presentation
Tech 2 tech low latency networking on Janet presentationTech 2 tech low latency networking on Janet presentation
Tech 2 tech low latency networking on Janet presentation
 
IAC 2020
IAC 2020IAC 2020
IAC 2020
 
LCA14: LCA14-506: Comparative analysis of preemption vs preempt-rt
LCA14: LCA14-506: Comparative analysis of preemption vs preempt-rtLCA14: LCA14-506: Comparative analysis of preemption vs preempt-rt
LCA14: LCA14-506: Comparative analysis of preemption vs preempt-rt
 

Recently uploaded

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 

Recently uploaded (20)

Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Virtual Time Machine for Large-Scale Reproducible Distributed Emulation

  • 1. VIRTUAL TIME MACHINE FOR LARGE-SCALE REPRODUCIBLE DISTRIBUTED EMULATION Jason Liu Florida International University GEFI Workshop, Oct 26-27, 2017, Rio de Janeiro, Brazil
  • 2. ABOUT REPRODUCIBILITY • Simulation observes strict event timestamp ordering time event eventevent event event eventevent event E2E1 E7E3 E8E5E4 E6
  • 3. time event eventevent event event eventevent event timeLP1 LP2 E1 E8E4 E6 E2 E7E5 E3 ABOUT REPRODUCIBILITY • Simulation observes strict event timestamp ordering
  • 4. ABOUT REPRODUCIBILITY • Simulation observes strict event timestamp ordering • Pseudo-randomness (same seed, same sequence) • Explicit tie-breaking rules for simultaneous events • Totally repeatable GTNeTS SSFNet
  • 5. ABOUT REPRODUCIBILITY • Emulation and physical testbeds provide “best effort” timing fidelity • Inherent nondeterministic behavior • Interference from competing applications and background services • Interference from cross traffic • Assuming reproducible if with “same“ hardware/software provisioning • Nondeterminism amplified by resource contention
  • 6. H3 H2H5 H6 H1 H4 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15 R16 6 OpenVSwitch Linux namespace Case in Point: Mininet Bob Lantz, Brandon Heller, and Nick McKeown. 2010. A network in a laptop: rapid prototyping for software-defined networks. In Proceedings of the 9th ACM Workshop on Hot Topics in Networks. 19:1–19:6.
  • 7. H3 H2H5 H6 H1 H4 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R13 R14 R15 R16 7 OpenVSwitch Linux namespace Maxinet is a Distributed Mininet P. Wette, M. Draxler, A. Schwabe, F. Wallaschek, M. Zahraee, and H. Karl, “Maxinet: Distributed emulation of software-defined networks,” in Proceedings of the 2014 IFIP Networking Conference, 2014, pp. 1–9.
  • 8. MININET/MAXINET • Virtualization: • Linux containers (LXC, namespace) • OVS, veth, GRE tunnels • CPU limit: cgroup • Bandwidth and latency: netem, tc • Problems in experiment capacity and fidelity • Mininet has processing and memory limitations • For small experiments only (both in network size and activities) • Fidelity severely deteriorated by resource underprovisioning • Maxinet allows large experiments, but limited by cross-machine latency and throughput • No timing fidelity ☛ no reproducibility
  • 9. STUDY SHREW DDOS ATTACK ON MININET 0 0.2 0.4 0.6 0.8 1 sequential/normal sequential/dos distributed/normal distributed/dos NormalizedThroughput RTT=40ms RTT=120ms RTT=200ms RTT=280ms RTT=360ms 9 Victim Attacker Common Bottleneck Link
  • 10. RESOURCE UNDERPROVISIONING: VIRTUAL TIME • Time dilation [1]: • Slow down clock time in VMs w.r.t. real time • Time dilation factor (TDF) = real time / virtual time • Equivalent to be an update in system resources • Observable time: • gettimeofday(): return t = t0 + (r - r0) * TDF • sleep(t): hrtimer_nanosleep(t * TDF) • Implementation through kernel modification [2] • Change Linux task_struct: add TDF, t0, r0, … • Add/replace system calls, such as clone(), gettimeofday(), sleep() Real Time VirtualTime r0 r = now() t0 t [1] D. Gupta, K. Yocum, M. McNett, A. C. Snoeren, A. Vahdat, and G. M. Voelker, “To infinity and beyond: time warped network emulation,” SOSP 2005. [2] J. Lamps, D. M. Nicol, and M. Caesar, “Timekeeper: a lightweight virtual time system for linux,” SIGSIM-PADS 2014.
  • 11. PRIME Emulation Infrastructure PRIME Network Simulator Applications TCP/IP Stack Virtual NICs VM1 Applications TCP/IP Stack Virtual NICs VM2 TCP EVALUATION USING TIME DILATION • SVEET: Scalable Virtualized Evaluation Environment for TCP • M. A. Erazo, Y. Li, and J. Liu, “SVEET! A scalable virtualized evaluation environment for TCP,” TRIDENTCOM 2009. • Static time dilation for all VMs and real-time simulator 11
  • 12. WSC'10 12JASON LIU, FLORIDA INTERNATIONAL UNIVERSITY
  • 13. Throughput under random loss over 100 Mb/s bottleneck link 13 Throughput under random loss over 10 Mb/s bottleneck link
  • 14. TIMING FIDELITY: TRADITIONAL EMULATION Real Time VirtualTime VM1 VM2 VM3 VM4 • No time dilation: virtual time = real time • Timing depends on CPU scheduling • CPU contention deteriorates timing fidelity
  • 15. TIMING FIDELITY: FIXED TIME DILATION Real Time VirtualTime VM1 VM2 VM3 VM4 • Upgraded resources: more throughput, less latency • TDF derived from bottleneck constraint • Timing still depends on CPU scheduling
  • 16. TIMING FIDELITY: VIRTUAL TIME SCHEDULING Real Time VirtualTime • Dynamic time dilation for each VM: • TDF derived from resource (e.g., processing speed) • TDF from degree of multiplexing (e.g., #VMs) • TDF from utilization (e.g., packet send rate) • CPU scheduling: schedule VMs according to virtual time • Ability to start and stop any VM • Virtual-time aware netem, tc, GRE tunnel • Better VM control ☛ improved timing fidelity • Improved timing fidelity ☛ better reproducibility VM1 VM2 VM3 VM4
  • 17. VIRTUAL TIME MACHINE • Local controller • Coordinate virtual time by communicating/schedulingVMs and SIMs • Monitor resource utilization, manage network traffic between VMs • Global controller • VM migration and model repartitioning • Manage overall virtual time advancement • Manage network traffic between machines 17