CENG 564/463 Network Programming

Home
Up

 


This page provides dynamic information and materials for the lecture, as it becomes available; please check it at least once in a week.

Lecture Announcements

   7-January-2005

bullet

Your final exam is on Tuesday, 11 January 2004, at 14:30.

bullet

You are responsible from all topics covered in this course.

bullet

The midterm will be a closed book and notes exam.
 

   22-November-2004

bullet

Please look at the Project Page.
 

   4-November-2004

bullet

Here is your first take-home midterm exam.

bullet

I may do some announcements about this take-home midterm exam, please look at this page at least once a day until the last date.

bullet

I may also update this take-home document. Download it and look at its version number and date.
 

   22-September-2003

bullet

Welcome to CENG 564/463 Network Programming! This course teaches how to design and implement network programs, protocols and systems for distributed systems.  

Course Materials

Lecture Slides

bullet

Purpose: To allow better concentration in lecture by reducing note-taking pressure and to provide a study-aid before (unfortunately not this year) and after lecture.

bullet

Disclaimers: (a) I may not follow these slides exactly in class. (b) Students are responsible for what I say in class. (c) Reading these slides is not a substitute for attending lecture.
 

 Updated

Material

Topic(s) Covered
30/9 Lec 1 Course Overview,
Introduction and Characterization of Distributed Systems

Introduction to Distributed Systems and Network Programming, Reasons for Distributed Systems, Examples of Distributed Systems, Challenges in the Design of Distributed Systems
26/10 Lec 2 System Models
Software Layers, An Overview of Architectural Models, Client/Server Model, Further Variants of Client/Server Model, Fundamental Models
26/10 Lec 3-1 Interprocess Communication (IPC)
Introduction to Interprocess Communication: Primitives for Interprocess Communication, Message Passing, Forms of Communication
26/10 Lec 3-2 and Handouts Advanced Socket Programming: Quick Review of TCP/UDP Socket Programming, Advanced Sockets Programming and Design Issues in Client/Server Programming, Writing a non-blocking Client/Server Application using the New I/O in JDK 1.4 for Non-Blocking Sockets
26/10 Lec 3-3
Lec 3-4
RMI Samples
Introduction to Distributed Computing (Objects) using Java RMI: Introduction to Remote Procedure Call (RPC), Distributed Computing, RMI System Architecture, Developing an RMI Application, RMI Architectural Details, Parameters in RMI, Building a Generic Compute Engine, Dynamic Class Loading, Creating a Peer-to-Peer RMI Application, A 3-tier RMI-JDBC Application, Activable RMI Server Objects
26/10 1. J2EE Tutorial: Chapter 33 The Java Message Service API
2. Advanced Java How to Program, Chapter 16, Messaging with JMS 
Lec 3-5
Message-Oriented Middleware (MOM)
Point-to-point and publish/subscribe messaging models, the Java Message Service (JMS) API to build messaging applications in Java, Introduction to J2EE and Sun Java Application Server Platform Edition 8 (J2EE 1.4 compatible server)
  Lec Multimedia
Project
Multimedia Networking: Communication of Continuous Media (Streams)
Multimedia Networking Applications, Streaming stored audio and video, RTSP, Real-time Multimedia: Internet Phone Case Study, Protocols for Real-Time Interactive Applications: RTP
 

Introduction to Mobile Agents
Code Migration 
Sample Project and Project

Mobile Agents
 

J2EE Tutorial, Chp. 23-27,
Lec J2EE, Lec J2ME

A good EJB Tutorial showing how to link EJBs to relational databases.
Project

Introduction to Enterprise Applications Development using J2EE and J2ME
Distributed Multitiered Applications, J2EE Platform Architecture, Enterprise JavaBeans (EJBs), Overview J2EE Platform Software Development Kit (J2EE 1.4 SDK), J2EE vs. .NET
Introduction to J2ME and Wireless Network Programming with J2ME

 

 

Home | CENG 564/463 Network Programming | CENG 564/463 Design Project | CENG 564/463 References and Readings