CS 368 : Distributed Computing
Course Description
CS368 Distributed Computing: This course provides an overview of distributed computing: that is, programs that operate on multiple computers that are connected by a network. The course will be programming intensive, and will include, but not be limited to, course topics such as: the basic client/server programming model, the sockets programming API, client and server development in C and Java, remote procedure calls (RPC), remote method Invocation (Java), connectionless v. connection-oriented clients and servers and multithreaded servers. Prerequisites: CS321 and CS365. 3:0:3
Learning Outcomes
- Explain and apply basic distributed computing concepts including (but not limited to): *Client-server paradigm *IP addresses, ports, and sockets *Connection oriented versus connectionless communications *Multi-threaded servers and/or clients
- Explain and apply several common distributed computing applications in depth. For example, explain one or more of these applications in depth: *Telnet *FTP *NFS *HTTP web server
- Explain and apply to distributed computing these protocol concepts: *UDP / TCP protocols *IP protocol *Reliable data transfer *Flow control *Congestion control
- Explain and apply one or more of these alternative distributed computing approaches: *Remote Procedure Calls *Remote Method Invocation (Java) *Java Database Connectivity
Teaching Directives: | Linkage to Learning Outcome #: |
Homework Assignments: |
|
Assign a sufficient amount of homework such that all of the above objectives are covered.
| All |
|
For each homework assignment, include short answer questions that require
the student to apply the above objectives.
| All |
|
For certain homework assignments, the student will be asked to solve problem(s)
by applying appropriate client-server networking techniques.
| All |
Optional Projects (The teacher may include these projects at his/her discretion):
Write a client and server application using Java's or C's socket classes. The student
must demonstrate proper functionality in his/her program.
| All |
Implement a program that uses some of the following:
remote procedure calls, Java's remote method invocation, and Java's database connectivity.
| All |
Exams: |
Include one or more of:
short answer, multiple choice, mathematical calculation problems.
| All |
|
Given a problem description, apply an appropriate client-server technique.
| All |
Textbooks
View the approved textbook list.
^ Back to the Top
---------------------------------
University Resources
This page was last modified on Monday, September 12, 2011