Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Introduction Instructor: Visiting Instructor Adomas Svirskas, Vilnius University, Lithuania Vilnius University Learning Resources: –Computer Networks, Third Edition, Andrew S. Tanenbaum, Prentice Hall, 1996 –Computer Networks and Internets, Second Edition, Douglas E. Comer, Prentice Hall, 1999 –
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Course Goals Understanding of key concepts of computer networking architecture Coverage of ISO/OSI and TCP/IP reference models Coverage of TCP/IP protocol stack and data transmission over the Internet Practical experience with TCP/IP protocols
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Definition of Computer Network Computer network - interconnected collection of autonomous computers Mainframe computer with terminals is not a computer network Computer network is not a Distributed system Distributed system is a software, built on top of a network
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Uses of Computer Networks Networks for companies –Resource sharing –High reliability –Saving money –Communication medium Networks for people –Access to remote information –Person-to-person communication –Interactive entertainment
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Classification of Computer Networks By transmission technology: –Broadcast networks –Point-to-point networks By scale: –Local area networks –Metropolitan area networks –Wide area networks –The Internet
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Figure from book Computer Networks 3rd ed., by A.S. Tanenbaum Classification of Networks
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Figure from book Computer Networks 3rd ed., by A.S. Tanenbaum Structure of Computer Network
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Network Software Networks are organized as set layers or levels Purpose of each layer is to provide set of services Entities of the same layer on different machines are called peers Peers communicate using a protocol Protocol is set of rules and conventions of the communication
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Figure from book Computer Networks 3rd ed., by A.S. Tanenbaum Layered Communication Model
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Protocol Stacks Upper layer uses an interface to access services, provided by lower layer Comprehensive interface in a crucial thing in protocol stack implementation A set of layers and protocols is called a network architecture A set of protocols is referred to as a protocol stack
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Figure from book Computer Networks 3rd ed., by A.S. Tanenbaum Multi-layer communication example
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Figure from book Computer Networks 3rd ed., by A.S. Tanenbaum Multi-layer communication principles
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Design Issues for the Layers Addressing of entities Rules for data transfer Error control Message order Message size Routing of messages Multiplexing/demultiplexing Transfer rate, quality of service
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Figure from book Computer Networks 3rd ed., by A.S. Tanenbaum Interfaces and services Layer n - service provider Layer n+1 - service user
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Types of services Connection-oriented - like telephone system works Reliable message stream - Sequence of pages Reliable byte stream - Remote login Unreliable connection - Digitized voice Connectionless - like postal system works Unreliable datagram - Electronic junk mail Acknowledged datagram - Registered mail Request-reply - Database query
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Classification of service primitives Request - an entity wants the service to do some work Indication - an entity is to be informed about an event Response - an entity wants to respond to an event Confirm - the response to an earlier request has come back
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Example of Interaction CONNECT.request - Request a connection to be established CONNECT.indication - Signal the called party CONNECT.response - Used by callee to accept/reject calls CONNECT.confirm - Tell the caller whether the call was accepted DATA.request - Request that data be sent DATA.indication - Signal the arrival of data DISCONNECT.request - Request a connection to be released DISCONNECT.indication - Signal the peer about the request Note: Services can be confirmed or unconfirmed
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas Figure from book Computer Networks 3rd ed., by A.S. Tanenbaum Example of Interaction
Microcomputer Networking II St. Cloud State University MCS 426, Fall 1999 Instructor: Adomas Svirskas The Relationship of Services and Protocols A service - set of primitives (operations) provided by supplier to user A protocol - set of rules governing the format and meaning the frames, packets, or messages that are exchanged by the peer entities within a layer. A protocol can be referred to as an implementation of the service