|
|
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
|
Your final exam is on Tuesday, 11
January 2004, at 14:30. |
|
You are responsible from all topics
covered in this course. |
|
The midterm will be a closed book and
notes exam.
|
22-November-2004
|
Please look at the
Project Page.
|
4-November-2004
|
Here
is your first take-home midterm exam. |
|
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. |
|
I may also update
this take-home document. Download
it and look at its version number and date.
|
22-September-2003
|
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
|
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.
|
|
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 |
|