CSE 4225

Course Name : Network Programming

Credit Hour : 3.0

--------------------------------------------------------------------------------------------------------------------------

Textbooks:

  1. Elliotte Rusty Harold, Java Network Programming, 3rd Edition, O'Reilly & Ass., Inc., 2004. (JNP)
  2. An Introduction to Network Programming with Java by Jan Graba (INPJ)
  3. Java Network Programming and Distributed Computing by David Reilly, Michael Reilly (JNPDC)

--------------------------------------------------------------------------------------------------------------------------

Class 1:

Introduction, Outline Discussion

Class 2:

Class 3-6:

  • Networking Basics
  • Layers of Network
  • IP Networking Stack
  • Transport Protocol: TCP, UDP
  • Internet Protocol: IP
  • Application Layer protocol
  • IP Addresses, CIDR, NAT
  • Host Names, DNS
  • Socket & Port
  • NetPro_Lecture 2.pdf

Class 9-11:

  • URL & WWW
  • Application Layer Protocols
    • HTTP, HTTPS, S-HTTP
    • FTP, SMTP, POP3, IMAP, SOAP, Telnet
  • Materials:

--------------------------------------------------------------------- CLASS TEST 1 Syllabus till here --------------------------------------------------------------------------------------

Class 7:

Class 12-13:

  • Socket Programming
    • The InetAdress class
    • TCP sockets
    • Client server communication by TCP sockets - 1
      • Single Server, Single Client
      • Code: one.zip, tcpmsg.zip [covered in labs]
  • Client server communication - 2
    • With TCP Sockets
    • Single Server, Multiple Client
    • Threading, Creating Threads
    • Code: SimpleChat.zip
  • NetPro_Lecture 5.pdf

Class 14-15: Quiz 1

Class 16-17:

Class 18:

Class 19: No Lecture

Class 20:

  • URL, URLConnection and Web Resources
  • NetPro_Lecture 8.pdf
  • Reference:
    • JNPDC: Chapter 9, section 9.2, HTTP and Java; pp. 192 – 214
    • JNP: Chapter 15

Class 21-22: Quiz 2

Class 23-24:

  • Distributed Objects: RMI – Conceptual model
    • Distributed computing architecture
    • Basics of distributed objects
    • CORBA, RMI, Introduction to EJBs
  • NetPro_Lecture 9.pdf
  • Reference:
    • JNP: Chapter 18 (Only Sections that are in the Slide)
    • CORBA - JNPDC: Chapter 12.1,12.2

Class 25-28:

Class 29: No Lecture

Class 30- 32:

  • Secure Sockets
    • Network security: Authentication and encryption, Secure Socket Layer (SSL)
    • Java Secure Socket Extension (JSSE)
  • JNP: Chapter 11 (Only Sections that are in the Slide)
  • NetPro_Lecture 11.pdf

Class 33- 35:

Self Study: NetPro_Lecture 4.pdf

Thank You and Best Of Luck