Course Details

Course Information Package

Course Unit TitleNETWORK APPLICATION PROGRAMMING
Course Unit CodeACSC424
Course Unit DetailsBSc Computer Science (Computer Electives) -
Number of ECTS credits allocated6
Learning Outcomes of the course unitBy the end of the course, the students should be able to:
  1. Outline network protocols in general, OSI and TCP/IP reference models including naming, addressing etc.
  2. Develop programs that use sockets in TCP and UDP programming models (client server).
  3. Describe the main web server protocol HTTP and develop programs to communicate with a web server.
  4. Understand Send Mail (SMTP), POP3 and FTP protocols and develop programs to communicate with email servers.
  5. Develop programs that employ several network security techniques.
Mode of DeliveryFace-to-face
PrerequisitesNONECo-requisitesNONE
Recommended optional program componentsNONE
Course Contents·  Introduction to networks: Overview of Network Programming. The OSI and TCP/IP reference models. Data Link and Application Layers Protocols. Sockets. Ports. Streams.
·  TCP/IP: Understand TCP/IP naming, addressing etc.  Use sockets TCP and UDP programming models (client server)
· 
Web protocols, mail, naming, network monitoring: Understand the main web server protocol HTTP and communicate with a web server. Send Mail Transfer Protocol (SMTP). POP3 protocol. FTP protocol. DNS and commands for monitoring a network
· 
Secure a network and setup a network: Firewalls. Proxy servers. Routers
· 
Next generation of Internet and IPv6: An introduction to IPv6 and the next generation of internet
·  Laboratory Work:
o  Windows and .NET environment
o  Programming in .NET using C#
o  Understanding network programming
o  Using SDKs etc.

o  Working with sockets
o  Create TCP/IP client server program
o  Create UDP client server program
o  HTTP protocol and communicating with web servers
o  SMTP and POP3 protocols, communicating with email servers
o  FTP communicating with file servers
o  Network security, building a network, firewalls, proxy servers routers

Ping, DNS, network monitoring, packets analysis
Recommended and/or required reading:
Textbooks
  • Fiach Reid, Network Programming in .NET with C# and Visual Basic .NET, Elsevier Digital Press, 2004, ISBN – 13: 978-1-55558-315-6
References
  • MSDN network (Windows developer center) http://msdn.microsoft.com/en-us/library/ms817952.aspx
  • www.sockets.com
  • Winsock 2 Overview and Pointers, http://www.sockets.com/winsock2.htm
Planned learning activities and teaching methodsThe course is mainly delivered through lectures an practical lab sessions that illustrate the core concepts. Practical sessions are held in computer laboratories where Windows Environment and Microsoft Visual c# are being used and programming exercises are given to gain practical skills and to implement the theoretical concepts taught.
Assessment methods and criteria
Tests20%
Laboratory Work/homework20%
Final Exam60%
Language of instructionEnglish
Work placement(s)NO

 Εκτύπωση  Ηλεκτρονικό ταχυδρομείο