Network Programming
0%
Course Title: Network Programming
Course No: CACS355
Nature of the Course: Theory + Lab
Semester: 6
Full Marks: 20 + 20 + 60
Pass Marks: 8 + 8 + 24
Credit Hours: 3
Course Description
Course Objectives
Course Contents
1. Introduction
3 hrs
3. URLs and URIs
5 hrs
4. HTTP
2 hrs
5. URLConnections
5 hrs
5.5. Configuring the Connection
- protected URL url
- protected boolean connected
- protected boolean allowUserInteraction
- protected boolean doInput
- protected boolean doOutput
- protected boolean ifModificationSince
- protected boolean useCaches and Timeouts
6.3. Constructing and Connecting Sockets
- Basic Constructors
- Picking a Local Interface to Connect From
- Constructing Without Connecting
- Socket Addresses and Proxy Servers
8. Secure Socket
4 hrs
9. Nonblocking I/O
3 hrs
9.2. Buffers
- Creating Buffers
- Filling and Draining
- Bulk Methods
- Data Conversion
- View Buffers
- Compacting Buffers
- Duplicating Buffers
- Slicing Buffers
- Marking and Resetting Object Methods
9.3. Channels
- SocketChannel
- ServerSocketChannel
- The Channels Class
- Asynchronous Channels
- Socket Options
10. UDP
5 hrs
11. IP Multicast
2 hrs
Laboratory Works
- 1.Laboratory Work
Reference Books
- 1.Elliotte Rusty Harold, "Java Network Programming", O'Reilly, 2014.
- 2.Douglas E. Comer, David L. Stevens, "Internetworking with TCP_IP, Vol. III Client-Server Programming and Applications, Linux_Posix Sockets Version", Addison-Wesley, 2000.
- 3.David Reilly, Michael Reilly, "Java Network Programming and Distributed Computing", Addison-Wesley Professional, 2002.
- 4.Kenneth L. Calvert, Michael J. Donahoo, "TCP-IP Sockets in Java. Practical Guide for Programmers", Morgan Kaufmann, 2008.
- 5.Andrew S. Tanenbaum, David J. Wetherall, "Computer Networks, 5/e", Prentice Hall, 2011.
- 6.Kurose, Ross, "Computer Networking: A Top-Down Approach", Pearson Education Limited, 2017.