MC4028 Network Programming and Security Syllabus:

MC4028 Network Programming and Security Syllabus – Anna University PG Syllabus Regulation 2021

COURSE OBJECTIVES:

 To understand the basics of Network Programming
 To be familiar with building network applications
 To design and implement client server Applications using TCP and UDP Sockets
 To expose with various socket options
 To get aware of Network security for Network Programming

UNIT I INTRODUCTION

TCP/IP Layer Model – Multicast, broadcast and Anycast – Socket address Structures – Byte ordering functions – address conversion functions – Elementary TCP Sockets – socket, connect, bind, listen, accept, read, write , close functions – Iterative Server – Concurrent Server
Lab Components
1. Socket Creation
2. Implementation of Client-Server Communication Using TCP

UNIT II UNIT TITLE

TCP Echo Server – TCP Echo Client – Posix Signal handling – Server with multiple clients – boundary conditions: Server process Crashes, Server host Crashes, Server Crashes and reboots, Server Shutdown
Lab Components
1. Implementation of TCP Echo Client Server
2. Design a multiuser TCP client – server chat application

UNIT III SOCKET OPTIONS AND MULTIPLEXING

Socket options – getsocket and setsocket functions – generic socket options – IP socket options – ICMP socket options – TCP socket options I/O multiplexing – I/O Models – select function – shutdown function – TCP echo Server (with multiplexing) – poll function – TCP echo Client (with Multiplexing)
Lab Components
1. TCP echo server with multiplexing to estimate round trip time from client to server.
2. Design a server for multi-player tic tac toe game

UNIT IV ELEMENTARY UDP SOCKETS

UDP echo Server – UDP echo Client – Multiplexing TCP and UDP sockets – Domain name system – gethostbyname function – Ipv6 support in DNS – gethostbyadr function – getservbyname and getservbyport functions
Lab Components
1. Design a UDP client/server Chat application
2. Design a UDP Domain Name Server (DNS)

UNIT V NETWORK SECURITY

SSL – SSL Architecture, SSL Protocols, SSL Message, Secure Electronic Transaction (SET). TLS –TLS Protocols, DTLS Protocols, PKI – Fundamentals, Standards and Applications
Lab Components
1. Automated Attack and Penetration Tools Exploring N-Stalker, a Vulnerability Assessment Tool.

COURSE OUTCOMES:

Upon completion of the course, the student will be able to
CO1:Design and implement the client/server programs using variety of protocols
CO2:Understand the key protocols which support Internet
CO3:Demonstrate advanced knowledge of programming interfaces for network communication
CO4:Use the basic tools for design and testing of network programs in Unix environment.
CO5:Identify some of the factors driving the need for network security

TOTAL: 75 PERIODS

REFERENCES

1. W. Richard Stevens, Bill Fenner, Andrew M. Rudoff ,”Unix Network Programming, Volume 1: The Sockets Networking API”, Third Edition, ISBN:0-13-141155-1, Addison Wesley Pearson Education,2004
2. Behrouz A Forouzan, Debdeep Mukhopadhyay “Cryptography and Network Security” ,Second Edition, ISBN -13:978-0-07—070208-0 Tata McGraw Hill Education Private Limited 2010
3. William Stallings, “Cryptographic and network security Principles and Practices”, Fourth Edition, Publisher Prentice Hall, November 2005
4. Andre Perez, ”Network Security”, First Edition, Publisher John Wiley & Sons, 2014
5. Gary R. Wright , W. Richard Stevens, ”TCP/IP Illustrated: The Implementation” , ISBN 0- 201-63354-X , Vol. 2, 1st Edition , Addison Wesley Professional, January 2008