Networking and Client/Server Computing

First Semester AY 2026-2027

About

Catalog Description

Course Number IT 238
Course Title Networking and Client/Server Computing
Description Client/Server computing techniques and applications.
Prerequisites CMSC 137 or COI
Semester Offered 1st Semester
Credit 3 units
Number of Hours 5 (2 lecture, 3 laboratory)

Aim

Academic and business organizations are moving their computer processing and operations to a distributed environment and client/server architecture to take advantage of the Internet revolution. These large re-engineering and system integration projects require a significant investment in resources. However, the lack of proper expertise and the confusion surrounding the issues of open systems and client/server architecture often lead to project failures.

This course will introduce students to the evolution, advantages, and pitfalls of client/server computing. Understanding client/server architecture and relevant issues are central to the success of distributed and cooperative processing applications such as electronic commerce and data warehousing.

Objectives

At the end of this course the student should be able to:
  1. discuss issues on the implementation and management of client/server systems;
  2. develop client/server database applications;
  3. develop client/server applications using components and distributed objects; and
  4. implement a client/server project.

Topics

  1. Introduction
  2. System Models
  3. Networking and Internetworking
  4. Interprocess Communications
  5. Remote Invocation
  6. Indirect Communications
  7. Operating System Support
  8. Distributed Objects and Components
  9. Web Services
  10. Peer-to-Peer Systems
  11. Mobile and Ubiquitous Computing
  12. Distributed Multimedia Systems
  13. Google Case Study

Course Requirements

  • Internet Access
  • At least a laptop/computer and another device or VM
  • Optional: Network device switch or WiFi router

Evaluation/Grading

On-site Exams 40%
Laboratory Exercises 40%
Group Project 20%
Total 100%
Grading scale is shown below, or Statistical Averaging whichever gives a better grade.
0.00 54.99 5.00
55.00 59.99 3.00
60.00 64.99 2.75
65.00 69.99 2.50
70.00 74.99 2.25
75.00 79.99 2.00
80.00 84.99 1.75
85.00 89.99 1.50
90.00 94.99 1.25
95.00 100.00 1.00

Permission

Note that the course pack provided to you in any form is intended only for your use in connection with the course that you are enrolled in. It is not for distribution or sale. Permission should be obtained from your instructor for any use other than for what it is intended.

Academic Integrity

Intellectual honesty is one of the most important values the university upholds. Any work you submit for this course is your own. Cheating in exercises and other forms of intellectual dishonesty will not be tolerated. It is said that each of us has his brilliant idea and therefore you should not miss the chance of discovering yours.

If caught cheating in this course, you will receive a score of zero for that quiz, exam, or exercise. For the second offense, you will receive a final grade of 5.0 for the course.

Staff

Name Role Email Consultation Hours
Danilo J. Mercado Lecture djmercado@up.edu.ph 1-5PM Mon; 10AM-12N, 1-5PM Tue
Joseph Anthony C. Hermocilla Laboratory jchermocilla@up.edu.ph 1PM-3PM MW

Schedule

Week Date Topic Learning Materials Assessment Laboratory
1 Aug 7, 2026 Introduction
  • Distributed System Applications
  • Types of Network Transparencies
  • The World Wide Web
Module 1 Introduction
2 Aug 14, 2026 Architectural Models
  • Physical Models
  • Architectural Models
  • Fundamental Models
Module 2 Socket Programming Fundamentals
3 Aug 21, 2026 Networking and Internetworking
  • Types of Networks
  • Network Principles
  • TCP/IP Protocols
Module 3 TBA
4 Aug 28, 2026 Interprocess Communications
  • API for Internet Protocols
  • Data Representation and Marshalling
  • Multicast Communication
  • Overlay Networks
Module 4 Project Presentation 1 (F2F 5:00 PM) TBA
5 Sep 4, 2026 Exam 1 (F2F 5:00 PM) TBA
6 Sep 11, 2026 Remote Invocation
  • Request-reply Protocols
  • Remote Procedure Call
  • Remote Method Invocation
Module 5 TBA
7 Sep 18, 2026 Indirect Communications
  • Group Communication
  • Publish-subscribe
  • Message Queues
  • Shared Memory
Module 6 Project Presentation 2 (F2F 5:00 PM) TBA
8 Sep 25, 2026 Operating System Support
  • Operating System Layers
  • Protection
  • Processes and Threads
  • Communication and Invocation
  • Operating System Architecture
  • Operating System Virtualization
Module 7 TBA
9 Oct 2, 2026 Distributed Objects and Components
  • Distributed Objects
  • Distributed Components
Module 8 TBA
10 Oct 9, 2026 Exam 2 (F2F 5:00 PM) TBA
11 Oct 16, 2026 Web Services
  • Service Descriptions
  • Directory Service
  • XML Security
  • Coordination
  • Applications
Module 9 Project Presentation 3 (F2F 5:00 PM) TBA
12 Oct 23, 2026 Peer-to-Peer Systems
  • Peer-to-Peer Middleware
  • Routing Overlays
  • Applications
Module 10 TBA
13 Oct 30, 2026 READING BREAK TBA
14 Nov 6, 2026 Mobile and Ubiquitous Computing
  • Association
  • Interoperation
  • Sensing and Context Awareness
  • Security and Privacy
  • Internet of Things
Module 11 TBA
15 Nov 13, 2026 Distributed Multimedia Systems
  • Characteristics of Multimedia Data
  • Quality of Service Management
  • Resource Management
  • Stream Adaptation
  • Applications
Module 12 TBA
16 Nov 20, 2026 Google Case Study
  • Architecture and Design Philosophy
  • Underlying Communication Paradigms
  • Data Storage and Coordination Services
  • Distributed Computation Services
Module 13 Project Presentation 4 (F2F 5:00 PM) TBA
17 Nov 27, 2026 EXAM 3 (F2F 5:00 PM)

Resources

Main Resources

  • G. Coulouris, J. Dollimore, T. Kinberg, G. Blair, Distributed Systems: Concepts and Design (5th Ed), Addison-Wesley 2012.
  • F. Kurose, Keith W. Ross, Computer Networking: A Top-Down Approach (7th Edition), Pearson Education Limited 2017.

Software and Others