Ping Application to Give Statistical Overview of Network Latency
I developed my ping application on a VMWare Ubuntu virtual machine. I coded in Python on the IDLE IDE. The socket operations require the user to be logged in as root. The most useful reference I found was https://gist.github.com/pyos/10980172. Other helpful pages were https://www.pythoncentral.io/pythons-time-sleep-pause-wait-sleep-stop-your-code/ and https://docs.python.org/3/library/socket.html#socket.AF_UNIX. My checksum function is from the GitHub page. That page also inspired my ping function. It was a great, simple to understand reference to keep me on the right track as I implemented my ping application. I used arbitrary numbers for some of the header, however I made sure to set type to 8 and code to 0. My application allows the terminal user to input what address she wants to ping as well as how many times to execute the ping. I made sure to space my pings out by at least .9 sec to avoid accidently flooding anyone with ping requests. Once the pings finish, the statistical information is displayed.