20588 Workshop: Computer Communication

Credits: 3 advanced seminar credits in Computer Science

Prerequisites: 36 credits in Computer Science, including Introduction to Computer Networks.1 Students must also fulfill all English requirements and take bibliographic instruction in the Library.

Required: Operating Systems2

The workshop is based on C# Network Programming, by R. Blum (Sybex, 2003).

In this workshop, students learn to develop computer communication applications, emphasizing developing solutions to communication problems using various protocols. Students are required to present topics to the class and to design and develop a large-scale final project. The software development environment is C#.NET. No previous experience in this environment is required, but previous experience in developing software in object-oriented language such as C++ or Java is desirable.

Topics: C# language, programming network applications, C# support, synchronous and asynchronous sockets, developing multithreaded applications, using threads, IP multicasting, packet capture and analysis, implementation of network protocols.

Note: The number of participants in the workshop is limited.

1or Computer Networks II (20550), which is no longer offered.

2or Principles of Operating Systems (20354), which is no longer offered.