Course: CISC450/650 ELEG651 CPEG419 Computer Networks
Professor: Paul D. Amer
Title: Project/Program 1 - Simple File Transfer over TCP or UDP
Assignment last updated: 2/26/2015
Due Date:

Tasks

REQUIREMENT: For all parts, the client and server MUST run on different computers, not over a single machine's loopback interface. Afterall, this course is networking!
  1. (10pts) Starting Easy

  2. (35pts) Simple File Transfer using TCP
  3. (35pts) Simple File Transfer using UDP

Rules

  1. For this assignment, students may work in groups of 2. If you do not know Python, now is the opportunity to learn. Find a partner who is Python proficient.
  2. Groups should submit one answer clearly identifying both partners. In total, 8 well-labelled (e.g., "Part 1 MakeUpperCaseClientUsingTCP") scripts should be submitted in class, and 4 programs need to be uploaded to the class Sakai web site.
  3. Students may get assistance with general Python language questions from anyone. Try your best to debug your own programs.
  4. Clearly document your well known port numbers, and the handling of the control connection in Questions 2 and 3.
  5. Programs are expected to be professionally prepared.
    • In the header of every module, comment your Name, Date, Course, Project, and Project Description.
    • REQUIREMENT: All code within the module must be commented.
    • REQUIREMENT: All variable names must be meaningful. The following varible names are not meaningful: x, data, value, number, count, input, infile, done.
    • REQUIREMENT: Readability of your ouput including consistency of indentation is vital. PRINTED SOURCE LISTINGS WITH LINES THAT WRAPAROUND TO THE NEXT LINE MAKE THE CODE UNREADABLE. They will be returned without being graded.
    • See Amer's coding standard.
  6. Academic Honesty: A clear distinction exisits between getting general help from other students, and having someone else write your program. A student is responsible for understanding each and every line of code that s/he submits. You are all advanced computer science students, and by now should have a clear understanding of how much outside help one is permitted. When in doubt, ask the professor. Do NOT copy and edit another past or present student's program, and submit it as your own. It is better to not turn in an assignment, and accept the grade penalty than to be academically dishonest.

Grading

  • Submit your answers clearly labeled and IN ORDER (-2 points otherwise) - all papers dealing with Question 1, followed by all papers dealing with Question 2, followed by all papers for Question 3.
  • correctness (60%)
  • readability and documentation - comments, variable names, consistency of spacing and indentation (40%).