CSC 544 - Network Programming
Course Syllabus - Fall 2022

Tuesday, 5:00pm to 7:50pm – Congdon Hall 1012


Instructor:

Dr. Ron Vetter

The instructor is available by email at vetterr@uncw.edu, by cell phone (910-538-3523), and by appointment.


Textbook:

Internetworking with TCP/IP: Principles, Protocols and Architecture, Douglas Comer, Volume 1, 6th Edition, 2014, ISBN: 978-01-3608530-0

Web Site: Comer Books on Networking


Course Description:

CSC 544. Prerequisite: CSC 344 or MIS 323 or equivalent. Implementation of network and distributed programming concepts using C, C++, Python, or JAVA on Unix or Windows platforms. Networking programming interfaces, security, management, design, and applications. Hands on experience with network components. Student’s plan, configure, install, diagnose, performance tune, operate and manage state-of-the-art computer networks, internetworking devices, and protocols.


Homework, Labs, and Exams:

 


Grading:

Grades will be based on the quality of homework’s, labs, exams, and the project. Final grades will be based on the +/- grading system.

 

You are expected to attend all lectures. Absence does not relieve you from meeting all course requirements. You are responsible for all reading, assignments, and exams. Keep up with the day-to-day reading requirements of the class.

 

All students are expected to attend and participate in person at an assigned day/time – determined by instructor within assigned class schedule.  Some course content will be delivered online asynchronously. (see schedule below).

 


Health and Safety Considerations:

Following CDC Guidelines, UNC System directives, and out of mutual respect as outlined in the UNCW Seahawk Respect Compact, all faculty, staff, and students will wear face coverings while inside buildings. Students who are unprepared or unwilling to wear protective face coverings will not be permitted to participate in face-to-face sessions and will need to leave the building. Noncompliant students will be referred to the Dean of Students for an Honor Code Violation. Any student who has a medical concern with wearing a face covering should contact the Disability Resource Center at (910) 962-7555.

 

Students who experience COVID-19 symptoms should immediately contact the Abrons Student Health Center at (910) 962-3280.

 


Students with Disabilities:

Students with diagnosed disabilities should contact the Disability Resource Center.

 

If you require accommodation for test-taking, please make sure you have registered with the Disability Resource Center no fewer than three days before the test.


Code of Academic Responsibility and Conduct:

Students are responsible for submitting their own work. Students who cooperate on oral or written examinations or work without authorization share the responsibility for violation of academic principles, and the students are subject to disciplinary action even when one of the students is not enrolled in the course where the violation occurred.

 


The weekly schedule for this course is as follows:

DATES:

TOPIC

READING

Week 1 (8/30)

Introduction to Course

 

Chapters 1-3 and the article As We May Think by Vannevar Bush

 

Paper: Mosaic and the World Wide Web

 

Video: History of Supercomputing Research with Larry Smarr

 

Video: Alan Turing at Bletchley Park

 

Week 2 (9/6)

 

 

TCP/IP Reference Model, Internet Addressing,

ARP Protocol

 

 

 

Chapters 4-6 (ARP slides)

 

Video: Len Kleinrock on the Theory of Packets

 

Video: Len Kleinrock - The First Two Packets on the Internet

 

Video: The Second-Order Effects of Steve Jobs

 

Week 3 (9/13)

 

 

Assignment #1 Due

 

IP Addressing/Subnetting

 

 

 

Complete the Wireshark INTRO and Wireshark Ethernet/ARP labs. Write up a report answering the questions and email it to the instructor by 9/20.

 

Video: IP Addressing and Subnetting

IP Chalk: IP Addressing Worksheets

Online Practice: Subnetting IPv4

 

Week 4 (9/20)

 

IPv4, IPv6, Forwarding IP Datagrams, ICMP

 

Chapter 7-9 (Slides)

Complete the Wireshark ICMP labs. Write up a report answering the questions and email it to the instructor by 9/27.

 

Week 5 (9/27)

 

Assignment #2 Due

Catch up week

Week 6 (10/4)

 

Exam 1

 

Chapters 1-9

 

 

 

 

 

 

 

 

Week 7 (10/11)

 

 

 

 

 

 

 

 

UDP

 

 

 

 

Read Chapter 10 – User Datagram Protocol (UDP Slides)

 

Setup your web space and MySQL database on satoshi.cis.uncw.edu (see homework #3).

 

Learn some Basic HTML and complete the Basic Linux Primer Lab.  You can also use simple PHP code to help you with homework #3.

 

Video: The Rise of JavaScript with Brendan Eich

 

Video: Inventing PHP – with Rasmus Lerdorf

Article: Inventing PHP with Rasmus Lerdorf

 

Week 8 (10/18)

 

 

TCP

 

 

 

Read Chapter 11 – Transmission Control Protocol (TCP Slides – part 1)

 

Complete the Wireshark TCP lab. Write up a report answering the questions asked and email it to the instructor by 10/25.

 

Animations for Go-Back-N and Selective Repeat

 

Video: The Slow-Start Algorithm with Van Jacobson

Week 9 (10/25)

 

 

TCP, continued

 

 

 

Read Chapter 11 – Transmission Control Protocol (TCP Slides – part 2)

 

Read and be prepared to discuss the articles:

 

Improving TCP Performance over Mobile Networks

 

Thank This World War II-Era Film Star for Your Wi-Fi

 

Week 10 (11/1)

 

 

Routing Architecture and Protocols

 

 

Chapters 12-15 – Slides from Textbook

 

Video: IP Multicast Routing (Basics & Addressing)

 

Video: IP Multicast Routers

 

Week 11 (11/8)

 

Assignment #3 Due

 

Network Virtualization, Client-Server Model, and the Socket API

 

 

 

Java socket programming slides here.

 

Python socket programming slides here.

 

Multithreaded Chat Server – Example1 and Example2.

 

Chapters 19, 20, and 21 – Slides from Textbook

 

Week 12 (11/15)

 

 

DHCP, DNS, SMTP, HTTP

 

 

 

Chapters 22, 23, 24, and 25 – Slides from Textbook

 

Watch: Bruce Schneier: The Security Mindset and Bruce Schneier: Building Cryptographic Systems

 

Week 13 (11/22)

 

Exam 2

 

Chapters 10-15 and Chapters 19-25

Week 14 (11/29)

 

Student Presentations

(15 minutes each)

 

Zoom Link

 

Assignment #4 Due

 

 

Aaron Csetter/Steven McCarthy: Intrusion Detection Systems

Jeramy Dichiera: Space Networks

Ian Pena/Elijah Tripp: Interplanetary File System

Manasa Sangana/Priyanka Poosapati: Firewalls

 

Morgan Glisson/Savannah Evonko: The Role of AI/ML in Networks

Mark Karels/David Hollock: Mesh Networks

Thomas Smith/Leslie Aguilarpiedra: IP Security

Brenda Segda: History of NAT

 

Michaela Pierce: Honeypots

Leah Schneidereit: IoMT (IoT Medical) Security

Alex Johnson: Transition from IPv4 to IPv6

Ethan Lee: Applications of Zero Knowledge Proofs in Network/Cyber Security

 

Week 15 (12/6)

 

Student Presentations

(15 minutes each)

 

Zoom Link

 

Assignment #5 Due

 

 

Tristan Freeman/Liam Coyle: Zigbee

Colin Choquette - Wi-Fi Security

Michael Maloney: Network APIs

Andrew Lawson: IPv5

 

Bala Sri Santosh Bikkina /Krishna Vamsi Bommireddy: 5G Wireless Networks

Ashish Goli /Madhav Reddy Muli: PGP

Maurisio Zaldivar: Social Engineering

Temo Meza-Pantoja /Llacki Bautista-Perez: Bluetooth Security

 

Andrew Davison /Terrence Hernandez: 5G Wireless

Blake Blackport/Bryce Atkins: Wi-Fi Security

Bipin KC/Bulut Tok: Secure Sockets Layer (SSL)

Kenneth Gatobu/Mimi Moss: Wi-Fi Standards

 

Savitha Rachuri: Mobile IP

Audrey Warrene/Kyle Moran: DDoS attacks?

 

Finals Week (12/9 - 12/15)


Final Research Paper Due

Tuesday, December 13, 2022 – 5:00pm

 


Page Last Updated: November 29, 2022