CloudRouter -- Performance comparison of cloud networking versus a Weaved docker network
Introduction
The premise of this test is to understand the impact of running cloudrouter on a 8 core vm google cloud instance versus running them on docker containers that has been weaved together on top of google cloud.
Test Hardware
Google cloud 8 core VMs - n1-highcpu-8
Test Setup
Run two cloudrouter instances on google cloud with instance type n1-highcpu-8 in the same zone. Run iperf to measure bandwidth obtained on the raw cloudrouter instance. Then run two cloudrouter bird docker containers on each of the VMs and weave them together to be on the same network using https://github.com/weaveworks/weave. Run iperf again for comparison.
Test Results
Test ID | Testcase Description | Results | Notes |
---|---|---|---|
1 | Run iperf between two google cloud 8 core vms | Averaging 6.55 Gbits/sec. | |
2 | Run iperf on top of docker containers that are weaved together over google cloud network running on 8 core vms | Averaging 180 Mbits/sec |
Artifacts:
Google Cloud - n1-highcpu-8 - CloudRouter TCP Throughput (Gbits/sec):
Google Cloud - n1-highcpu-8 - CloudRouter TCP Throughput for weaved docker containers:
Conclusion
Couple of important observations were made during this test run.
- We have hereby observed that we are only able to push through on average 6.5 Gbits/sec on the CloudRouter instances on Google Cloud when utilizing the 8 core vms.
- there's a significant performance drop to run weaved docker containers on top of Google Cloud.