0% found this document useful (0 votes)
0 views3 pages

Course Outline-Network Programming

The document outlines the Network Programming course (ICT 420) at Christ Apostolic University College, targeting Level 400 students and offering 3 semester hours of credit. It covers essential topics such as socket programming, network protocols, security, and advanced networking concepts, with a focus on practical skills through hands-on projects. The course emphasizes active participation, adherence to academic integrity, and includes a variety of teaching methods including lectures and group work.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
0 views3 pages

Course Outline-Network Programming

The document outlines the Network Programming course (ICT 420) at Christ Apostolic University College, targeting Level 400 students and offering 3 semester hours of credit. It covers essential topics such as socket programming, network protocols, security, and advanced networking concepts, with a focus on practical skills through hands-on projects. The course emphasizes active participation, adherence to academic integrity, and includes a variety of teaching methods including lectures and group work.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

Network Programming

Christ Apostolic University College


School of Information and Communication Technology

Course Title Network Programming

Course Code ICT 420


Course Instructor Andrene Nii Ayitey Addy
Mobile: 0505472404/0544660554

Course Credit 3 semester hours of credit


Target Group Level 400
Course Content This course provides an in-depth exploration of network programming technologies. Students will
learn the principles of network programming to build, secure, and maintain robust network
systems.

Course Objective By the end of this course, students will be able to:

1. Understand the fundamentals of computer networks and network programming.


2. Learn how to develop network applications using sockets in various programming
languages (e.g., C, Python, Java).
3. Gain knowledge of different network protocols such as TCP/IP, UDP, HTTP, FTP, and
SMTP.
4. Implement client-server architectures and handle concurrent network connections.
5. Work with secure network communication, including encryption and authentication
techniques.
6. Explore advanced networking topics such as multi-threaded programming, IPv6, and cloud-
based networking.
7. Develop hands-on projects to strengthen practical networking skills.

Detailed Course Outline: Contact time, and Topics


Week Contact Topic/Subtopic/Chapter
Hour

1 3 Module 1: Introduction to Networking

 Basics of Computer Networks


 Network Protocols & OSI Model
 TCP/IP Model and Internet Architecture
 Client-Server Communication

2 3 Module 2: Socket Programming


 Introduction to Sockets
 TCP vs. UDP Sockets
 Creating a Simple Client-Server Program
 Blocking vs. Non-Blocking Sockets

3 3 Module 3: Advanced Socket Programming

 Handling Multiple Clients (Threading & Multiprocessing)


 Select, Poll, and Epoll Mechanisms
 Raw Sockets and Packet Sniffing
 Secure Socket Layer (SSL) & TLS

4 3 Module 4: Protocols and Application Layer

 HTTP, HTTPS, FTP, SMTP, and DNS


 RESTful APIs and WebSockets
 Network File Transfers and Remote Procedure Calls (RPC)

5 Module 5: Network Security & Performance Optimization


3
 Encryption and Authentication (SSL/TLS, OpenSSL)
 Firewalls and Intrusion Detection Systems
 Performance Tuning in Network Applications

6 3 Module 6: Advanced Topics in Network Programming

 IPv6 and Its Implementation


 Cloud Networking and Virtualization
 Wireless & Mobile Networking Considerations

7 Module 7: Network Debugging & Performance Optimization

 Debugging network applications with Wireshark and tcpdump


 Performance testing with tools like Apache JMeter
 Optimizing network latency and bandwidth usage
 Identifying and mitigating common network programming issues
8
Module 8: Network Programming in Cloud & Web Services

 Introduction to cloud networking


 Using WebSockets for real-time communication
 Implementing network applications with cloud APIs (AWS, Google Cloud, Azure)
9  Load balancing and scalability considerations
Module 9: Project & Case Studies

10,11,12
 Developing a Real-World Network Application
 Debugging and Performance Testing of Network Code
 Industry Use Cases & Emerging Trends in Networking

Mode of Delivery Lectures (face-to-face, online, using a student-centered learning approach), tutorials, seminars,
group work, and extensive practicals and assignments.

Course policy All students are expected to abide by the code of conduct of students of our University
throughout this course.
 Academic dishonesty, including cheating, fabrication, and plagiarism will not be tolerated.
 Class activities will vary day to day, ranging from lectures to discussions. Students will be
active participants in the course.
 You are required to submit and present the assignments provided according to the time
table indicated.
 80 % of class attendance is mandatory! Please try to be on time for class.
 Active participation in class is essential and it will have its own value in your grade
Text Books: Textbooks and online resources
 TCP/IP Sockets in C: Practical Guide for Programmers" – Michael J. Donahoo & Kenneth L.
Calvert

 A hands-on guide for writing socket programs in C.


 "TCP/IP Sockets in Java: Practical Guide for Programmers" – Kenneth L. Calvert &
Michael J. Donahoo

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy