Testing ec2 packet limits and throttling
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
results/2018-10-blue-matador
.gitignore
LICENSE
README.md
packets.go

README.md

EC2 Packet Limits

This is the code for a test we ran against AWS EC2 instances. The test floods the network with single byte packets to see if EC2 instances have a max number of packets.

Prerequisites

A server We used AWS, but this code could run on any cloud and any server. Sign up for AWS

Golang We used go1.10.3 on linux/amd64, but this code should run on most versions of Golang. Download Golang

Building the executable

Once you have golang installed, run the following:

cd <folder with packets.go>
go build packets.go

Running the test

  1. Copy the executable packets or packets.exe to the test system using FTP, scp, or your preferred file transfer mechanism.
  2. Open a terminal on the test system
  3. Run the executable: ./packets

By default, it will run for 48 hours, but can safely be killed using Ctrl-c at any time without loss of data. If you do plan to run this program for an extended period of time, use tmux, screen, or another tool to prevent the login session from dying and the process being killed prematurely.

Results

The results of the test will be visible in three places:

  • Amazon Cloudwatch Or the metric provider from your cloud of choice
  • stdout Every second, statistics will be printed to the screen
  • file About once an hour, and once when the process dies, the statistics will be saved to a gzipped JSON file in the same directory as the executable.

Built With

Authors

License

This project is licensed under the MIT License - see the LICENSE file for details