EN.601.414/614: Computer Networks Programming Assignment 1 (Virtual Machine Setup & Socket Programming) Programming Assignment 2 (Reliable Transport) Programming Assignment 3 (Intra-Domain Routing Algorithms) Programming Assignment 4 (Programmable Networks)