OSI reference model
Intruduction of Reference Models
* To reduce design complexity, most networks are organised as a series of layers.
* Each layer is built on top of the one below.
* Layer n on one machine has a conversation with layer n on another machine.
* Two reference models are the ISO Reference model and the TCP/IP reference model
The ISO OSI Reference Model
* ISO - International Standards Organisation
* OSI - Open Systems Interconnection
The OSI Reference Model has seven layers.
The Physical Layer
* Concerned with transmitting raw bits over a communication channel.
* Typical issues include how many volts should be used to represent a 1, and how many for a 0.
* How many microseconds a bit lasts.
* Is communication allowed in both directions simultaneously.
* How the initial connection is established and killed.
* What each pin is used for.
The Data Link Layer
* The main task is to provide a communication line free of undetected transmission errors.
* It breaks the input into a number of data frames (100 → 10,000 Bytes), transmits the frames sequentially, and processes acknowledgement frames.
* Must create and recognise frame boundaries.
* Must handle problems of corrupted frames and multiple transmissions of the same frame.
* Also implements some traffic regulation so a fast transmitter doesn't drown a slow receiver.
* Access control of channel in broadcast networks.
The Network Layer
* Concerned with controlling the operation of the subnet.
* Key issue is determining how packets are routed from source to destination.
* Routing can be prewired (static), determined at the start of a conversation (eg terminal session), or determined separately for each packet (dynamic).
* Also keeps track of accounting information.
* May be very thin in a broadcast network.
The Transport Layer
* Basic function is accept data from the session layer, possibly split it into smaller units, pass these to the network layer, and ensure that the pieces all arrive correctly at the other end.
* Also determines what type of service to provide (eg error-free point-to-point).
* Is the first end-to-end layer (previous layers were between neighbouring machines).
The Session Layer
* The session layer allows users on different machines to establish sessions between them.
* Examples include remote logins, file transfer or talk.
The Presentation Layer
* Performs functions that are requested often enough to warrant general solutions.
* Eg encoding data in a standard way (ASCII, bigendian, littleendian).
The Application Layer
* Contains a variety of protocols that are commonly needed.
* Eg the problems of a screen editor working on many different terminals.
Other problems to be solved include defining standard formats for text files, electronic mail, directory lookup