| |||||
Required textbook 7th Edition (2016), by James F. Kurose and Keith W. Ross Interactive Other good references 2nd Edition (2015) By Olivier Bonaventure - Free download! 3rd Edition (2014), by Brandon Rhodes and John Goerzen 5th Edition (2011), By Larry L. Peterson and Bruce S. Davie 5th Edition (2010), By Andrew S. Tannebaum and David J. Wetherall Your environment You will need access to a Unix/Linux-based machine: this will enable you to easily use the network tools we discuss. If you do not have a laptop, or use Windows but do not wish to create a virtual machine, then one option is to use a lab computer since they use Mac OS which is Unix-based. Since the computers are wiped daily, you should make sure to copy any files saved there back to your Wesleyan file directory, email them to yourself, or save them to a USB stick.Linux or Mac OS Open a terminal and you should be all set for the beginning part of the class. Windows The preferred option is to create a Linux Virtual Machine (VM) using VirtualBox. If you find you are having trouble doing this, please bring your laptop to my office and we will set it up together.
Installing Python Very likely python is already installed on your machine: check by typing "python --version" in a terminal. We'll be using Python 3.x. If Python 3.x is installed, you should be able to type python3 in a terminal.If you need to install Python 3, you can download it from here: A better python command line shell is Python and Socket Programming Another UTF-8 (Unicode Transformation Format - 8 bit): Bitwise operators: Struct module which is useful for creating packet headers: Regular expressions (more effective ways to search and manipulate strings): Network tools list interfaces: list processes: kill a process: Editors Make your editor work nicely with python: Python Unix/Linux |