ICS 451:
Computer Networks






Edo Biagioni


esb@hawaii.edu



Department of Information and Computer Science



Today's Outline

Homework: Read Chapters 1 and 2 of the textbook.



Course Overview



Goals



Course Outline

Other items covered:



Networking

A computer network is a digital hardware and software system that enables a collection of computers to communicate.

"Computer Networks are able to carry many different types of data and support a wide range of applications"

Networking is the engineering, science and art of designing computer networks.


Notes:




Networking Hardware

Although this course will not focus on designing networking hardware, the design and performance analysis of networks and protocols require a high-level understanding of network hardware.

We will look at a variety of point-to-point links and shared media.


Notes:


This is the first slide in the section "why are networks interesting".



Networking Protocols

Networking protocols are agreeements about how independent computers communicate given a physical way to exchange data.

We will study in some detail both the main LAN protocols and the main of the TCP/IP suite (the Internet protocols).

We will also review protocol structuring principles such as the OSI 7-layer model.



Performance

Throughout the course, we will be considering issues of performance, including:



Software

Projects in this course will focus on providing practice with standard APIs and in implementing standard protocols.



Client-Server

A client is a program that requests a service; a server is a program that provides a service. Clients and servers normally run on different machines, and use computer networks to communicate.





(Picture omitted from HTML version)

Notes:


Let us start with a small example of using computer networks.

A client on one machine can send a request to a server on a different machine. The server will generally respond appropriately.

This is a very generic model, and can encompass all sort of interactions. For example:



Client-Server Examples


Notes:


Can anyone else name other client/server systems? E.g. mail (SMTP), news (NNTP).



Sender-Receiver

A sender in a communication sends the data; a receiver receives the data. The receiver may send acknowledgements to indicate it has received the data.

In a Client-Server system, the client is first a sender, then a receiver.

(Picture omitted from HTML version)