The OSI Reference Model and What the Protocols do



Similar documents
Protocols. Packets. What's in an IP packet

Protocols and Architecture. Protocol Architecture.

Objectives of Lecture. Network Architecture. Protocols. Contents

Ethernet. Ethernet. Network Devices

Transport Layer Protocols

Understanding TCP/IP. Introduction. What is an Architectural Model? APPENDIX

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT COMPUTER NETWORKS

EITF25 Internet Techniques and Applications L5: Wide Area Networks (WAN) Stefan Höst

WAN Data Link Protocols

Overview of Computer Networks

Chapter 2 - The TCP/IP and OSI Networking Models

Transport and Network Layer

CPS221 Lecture: Layered Network Architecture

Networking Test 4 Study Guide

Protocol Data Units and Encapsulation

1 Introduction to mobile telecommunications

Computer Networks CS321

Indian Institute of Technology Kharagpur. TCP/IP Part I. Prof Indranil Sengupta Computer Science and Engineering Indian Institute of Technology

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring

Data Communication Networks and Converged Networks

technology standards and protocol for ip telephony solutions

Computer Network. Interconnected collection of autonomous computers that are able to exchange information

EE4367 Telecom. Switching & Transmission. Prof. Murat Torlak

Communication Networks. MAP-TELE 2011/12 José Ruela

CSE 3461 / 5461: Computer Networking & Internet Technologies

FIREWALLS & NETWORK SECURITY with Intrusion Detection and VPNs, 2 nd ed. Chapter 2 An Introduction to Networking

OSI Seven Layers Model Explained with Examples

What is CSG150 about? Fundamentals of Computer Networking. Course Outline. Lecture 1 Outline. Guevara Noubir noubir@ccs.neu.

Chapter 5. Data Communication And Internet Technology

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Chapter 9. IP Secure

Guide to TCP/IP, Third Edition. Chapter 3: Data Link and Network Layer TCP/IP Protocols

Internet Concepts. What is a Network?

SFWR 4C03: Computer Networks & Computer Security Jan 3-7, Lecturer: Kartik Krishnan Lecture 1-3

Data Communication and Computer Network

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

Lecture (02) Networking Model (TCP/IP) Networking Standard (OSI) (I)

Transport Layer. Chapter 3.4. Think about

Asynchronous Transfer Mode: ATM. ATM architecture. ATM: network or link layer? ATM Adaptation Layer (AAL)

PART OF THE PICTURE: The TCP/IP Communications Architecture

Encapsulating Voice in IP Packets

Communications and Computer Networks

How To Design A Layered Network In A Computer Network

2. What is the maximum value of each octet in an IP address? A. 128 B. 255 C. 256 D. None of the above

Nortel Technology Standards and Protocol for IP Telephony Solutions

The OSI model has seven layers. The principles that were applied to arrive at the seven layers can be briefly summarized as follows:

ICOM : Computer Networks Chapter 6: The Transport Layer. By Dr Yi Qian Department of Electronic and Computer Engineering Fall 2006 UPRM

User Datagram Protocol - Wikipedia, the free encyclopedia

Computer Networks. Chapter 5 Transport Protocols

Overview of TCP/IP. TCP/IP and Internet

Layered Architectures and Applications

Lecture 28: Internet Protocols

ESSENTIALS. Understanding Ethernet Switches and Routers. April 2011 VOLUME 3 ISSUE 1 A TECHNICAL SUPPLEMENT TO CONTROL NETWORK

An Introduction to VoIP Protocols

DATA COMMUNICATION AND NETWORKS

IP - The Internet Protocol

Architecture and Performance of the Internet

Computer Networks - Xarxes de Computadors

Topics. Computer Networks. Let s Get Started! Computer Networks: Our Definition. How are Networks Used by Computers? Computer Network Components

The OSI and TCP/IP Models. Lesson 2

How To Understand The Layered Architecture Of A Network

Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages

Protocol Architecture

How do I get to

Link Layer. 5.6 Hubs and switches 5.7 PPP 5.8 Link Virtualization: ATM and MPLS

Data Communication Networks Introduction

Network Programming TDC 561

A host-based firewall can be used in addition to a network-based firewall to provide multiple layers of protection.

Glossary of Terms and Acronyms for Videoconferencing

VPN. Date: 4/15/2004 By: Heena Patel

Lecture 2: Protocols and Layering. CSE 123: Computer Networks Stefan Savage

Internet Protocol: IP packet headers. vendredi 18 octobre 13

[Prof. Rupesh G Vaishnav] Page 1

Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages

High Performance VPN Solutions Over Satellite Networks

Module 1. Introduction. Version 2 CSE IIT, Kharagpur

Network Models OSI vs. TCP/IP

Security (II) ISO : Security Architecture of OSI Reference Model. Outline. Course Outline: Fundamental Topics. EE5723/EE4723 Spring 2012

ICS 153 Introduction to Computer Networks. Inst: Chris Davison

OPEN SYSTEMS INTERCONNECTION OVERVIEW OF PROTOCOL LAYERING AND OSI MODEL OF NETWORK STACKS

ICTTEN8195B Evaluate and apply network security

Ethernet and IP A slightly less introductory networking class. Drew Saunders Networking Systems Stanford University

Internet Control Protocols Reading: Chapter 3

The OSI Model: Understanding the Seven Layers of Computer Networks

Outline. CSc 466/566. Computer Security. 18 : Network Security Introduction. Network Topology. Network Topology. Christian Collberg

TCP/IP and the Internet

High-Level Data Link Control

Master Course Computer Networks IN2097

R2. The word protocol is often used to describe diplomatic relations. How does Wikipedia describe diplomatic protocol?

RARP: Reverse Address Resolution Protocol

Data Networking and Architecture. Delegates should have some basic knowledge of Internet Protocol and Data Networking principles.

Protocol Architecture. ATM architecture

Advanced Higher Computing. Computer Networks. Homework Sheets

Internet Architecture and Philosophy

Network: several computers who can communicate. bus. Main example: Ethernet (1980 today: coaxial cable, twisted pair, 10Mb 1000Gb).

Terms VON. VoIP LAN WAN CODEC

CCNA R&S: Introduction to Networks. Chapter 5: Ethernet

Data Link Layer(1) Principal service: Transferring data from the network layer of the source machine to the one of the destination machine

OSI Reference Model: An Overview

Transcription:

The OSI Reference Model and What the Protocols do

Contents OSI Reference model Protocols and services, the difference Protocol stacks and implementations What services protocols provide

Layered Protocols Protocols connect entities on same level, within the layer Higher layers use services provided by lower layers Layers are independent and defined by interface provided to the higher layer and required from the lower layer Entity provides an interface Entity Entity uses an interface Protocol Peer Entity Entities communicate by exchanging Protocol Data Units (PDUs) with entities on the same level

Why layers? Layers may be exchanged as long as interfaces stay unchanged WWW was built on top of existing TCP/IP implementations WWW does not have to care about the media (modem, Ethernet, radio link etc.) ATM can be used to transport IP packets without any changes to applications IPv6 will replace the entire IP part of the TCP/IP layer Layering makes development easier and adds flexibility

Protocol standardization International Organization for Standardization (ISO) http://www.iso.ch/ Internet Society & Internet Engineering Task Force http://www.isoc.org/ http://www.ietf.org/ International Telecommunications Union (ITU) http://www.itu.ch/ The Institute of Electronics and Electrical Engineers (IEEE) http://www.ieee.org/ Industry consortiums WAP, 3GPP, ATM World Wide Web Consortium De-facto standards IBM PC

Protocol stacks Term protocol stack refers to all layers of a protocol family E.g. having TCP/IP stack implemented in an operating system means that part of the OS software uses device drivers (Ethernet, PPP+serial driver etc.) to receive IP packets and provides socket services to applications programs Protocol stack has nothing to do with push/pop stacks (data structures) TCP/IP by IETF is the most popular protocol stack in data communications Signaling System 7 is the most popular telecoms stack OSI protocol stack is hardly used in entirety except as a theoretical model (parts of it are in use) Implementations of protocol stacks often co-exist (OSI X.500 directory system over TCP/IP, TCP/IP communications over telephone network and SS7)

OSI Stack OSI IETF 7 Application Sovellus 6 Presentation Esitys Application 5 Session Yhteys 4 Transport Kuljetus Transport (TCP & UDP) 3 Network Verkko Network (IP) 2 Data link Siirto Link 1 Physical Fyysinen Physical

OSI Model Two (N)-level entities in different systems communicate using (N)-level protocol The services give by layer (N) to layer (N+1) are realized in (N)-level protocol by encapsulation and decapsulation Encapsulation means embedding each layer's Service Data Units (SDU) into the Protocol Data Units (PDU) of the layer immediately below it, decapsulation is the reverse process Entities at the same level in separate systems are called peer entities (N+1)-level entities are using (N)-level services through (N)- level Service Access Points ((N)-SAPs) One (N+1)-entity can be simultaneously connected to one or more (N)-SAPs One (N)-SAP is connected to one (N)-entity

OSI Layers Physical Layer Defines the physical, electrical, mechanical, and functional procedures to use the physical characteristics of the communications path Electrical, electromagnetic, optical, acoustic, printed E.g. lower half of the Ethernet standard, RS-232 Data Link Layer Transfers frames (packets) over the physical layer Hides the features of the physical implementation E.g. Ethernet, PPP, HDLC Network Layer Transfers packets over the entire communications network over various physical networks Independent of physical implementations E.g. IP, X.25

OSI Layers... Transport Layer Provides end to end transport of session (application) data E.g. TCP, UDP Session Layer Provides dialogue (communications path) control E.g. HTTP Connection: keep-alive ; TCP urgent pointer Presentation Layer Provides device independent presentation of data E.g. HTTP Accept: image/gif ; MIME headers Application Layer How applications communicate E.g. HTTP, SMTP...

A data packet Host SMTP IP TCP SMTP Encapsulation and decapsulation over different types of links Application contents do not change IP protocol crosses over different link layer protocols Eth IP TCP SMTP CRC Eth IP TCP SMTP CRC IP TCP SMTP PPP IP TCP SMTP FCS IP TCP SMTP PPP IP TCP SMTP FCS Router... Next router

Application Level Protocol Sample 220 tcm.hut.fi SMTP/smap Ready. helo jalopeno.nixu.fi 250 (jalopeno.nixu.fi) pleased to meet you. mail from: kiravuo@jalopeno.nixu.fi 250 kiravuo@jalopeno.nixu.fi... Sender Ok rcpt to: kiravuo@hut.fi 250 kiravuo@hut.fi OK data 354 Enter mail, end with "." on a line by itself From: kiravuo@jalopeno.nixu.fi To: kiravuo@hut.fi Subject: terveisia Heipparallaa. 250 Mail accepted quit 221 Closing connection

Service Interface Protocols are usually internationally standardized Service interface implementations are usually operating system specific Different implementations can communicate, with common protocol Application programs need to be modified to use different interfaces Unix socket interface example: 1. open socket 2. parse address 3. connect to server 4. write request 5. read response 6. close socket

What Protocols do? A protocol shall be: Completely and unambiguously defined Free of dead-locks and live-locks Able to recover from all error conditions Some possible functions of protocols Addressing Connections and confirmations Error detection and correction Flow control Prioritization Multiplexing, segmentation and blocking

Protocol Addressing On the Internet: People usually use domain names (max 255 chars, e.g. www.nixu.fi) IP-protocol uses numeric addresses (four octets, e.g. 194.197.118.20) TCP and UDP use 16 bit port addresses (e.g. 80), separate address spaces LANs and data link level protocols have their own addressing (e.g. Ethernet, six octets) Application level programs must be able to handle both IP addresses and port addresses (Unix socket service), but not data link addresses Application level protocols sometimes have their own addresses (e-mail, URL) E.g. Telnet protocol does not do any addressing Other Telephone numbers Postal addresses

Connections Some protocols, like TCP provide a connection from end to end, some, like UDP are connectionless TCP must store the state and sub-states of the connection No connection Link set-up Data transmission Link disconnect Three packets to open a TCP connection and four to close Stateless and connectionless UDP is easier to implement and lighter on the network Applications must worry about data loss, e.g. domain name rerequests

Confirmation Protocol can provide a receipt Example: TCP header contains the sequence numbers of traffic UDP itself provides only a single datagram transmission SMTP server acknowledges when an e-mail message is received SNMP traps are not acknowledged and may be lost

Error control Lowest level transmission channels are analog and somewhat unreliable Data may be changed, entire frames (packets) may be lost For reliable communications we need: Error detection Error correction Data retransmission Having no error control is also option E.g. old modems and terminals

Checksums Trivial checksum example 1+2+3+4=10, we transmit 1,2,3,4,10 We receive: 1,3,3,4,10 and check 1+3+3+4=11 -> Error detected Our algorithm is not very good, how about: 1,3,2,4,10? Actual algorithms are more complex CRC-CCITT catches certainly all burst errors of 16 bits or less And is most likely to catch all other errors, too Parity bits Odd parity, make data element always to have odd number of ones, e.g.: 11100010 -> 111000101 Cryptographic checksums (often called also hashes) make it very hard or impossible to replace or change the data Checksum design depends on the type of error expected Physical media errors often come in bursts

Error Detection Checksums can be done at different protocol levels and for different sized chucks of data Parity bit for old terminals IP has header checksum TCP and UDP checksums check both header and payload TCP/IP application level protocols do not usually do error detection, they trust TCP and UDP Encryption protocols (e.g. SSH) usuallyt have internal checksums to protect against tampering

Error Detected, then What? Ignore the faulty data Used with redundant real time data, like voice Freeze totally (e.g. old IBM PC and memory parity check) Report error and let higher level protocol decide Correct error The usual response And how about losing an entire frame (packet, cell) in transmission Nothing received, nothing detected Sender must wait and after a timeout retransmit Or receiver polls for more data Or it does not matter (real time voice and picture transmission)

Error correction Forward Error Control Add enough redundancy to data to correct errors without delay (this costs) E.g. Hamming code Usually used for time critical or one way protocols Several low level protocols also do this Backward Error Control Catch error Discard data Ask for a retransmission TCP does this

Flow Control What to do when the receiver s memory is full? Special characters in data stream E.g. XON/XOFF, ctrl-s/ctrl-q Used by terminals Limited receive window (e.g. TCP, Kermit) Sliding window increases efficiency The sender can not send more than a certain amount of data above what is acknowledged as received Receiver polls for individual data units Not quite a flow control, really UDP-based SNMP does this No flow control E.g. IP

Prioritization and Quality of Service Currently not implemented in TCP/IP Will likely change in future Operators offer QoS inside their own networks Several technologies RSVP, reservation of bandwidth Diffserv, higher service classes first MPLS, Multi Protocol Label Switching QoS services compete with trivial solutions Dedicated circuits to define the bandwidth to one customer Massive bandwidth (e.g. Gigabit Ethernet) 3G (UMTS) telephone networks will use Voice over IP (VoIP) and require QoS

Segmentation and Concentration Underlying layers might have special limitations Typically (Ethernet) packet maximum size is less than IP packet maximum size A protocol can perform segmentation and concentration operations to the higher level SDUs IP packet fragmentation and reassembly is a sample of this A large SDU is split to numbered smaller chunks The chunks are sent separately The receiver constructs the original SDU

Multiplexing and Blocking Multiplexing The joining of several data streams in one connection Usually done at low level of the network (at telephone system level) Packet data networks do statistical multiplexing inherently Everybody does not usually send at same time Blocking Packing several SDUs into one PDU

Transparency How to transmit any data? How to do in-band signaling? Out of band signaling = we have a separate channel for signaling E.g. classical telephony In-band signaling = control and data share same channel E.g. Internet Encapsulate data in frames Frames can have a start and stop marker Markers in data have to be passed Frame header can hold the count of objects in the frame This is what TCP/IP and Ethernet do Frames can be of fixed size (or time) ATM cells

Transparency, Stuffing and Data Stuffing Counting The frame is limited by markers The marker starts a control sequence One control sequence just passes data looking like the marker E.g. send the marker twice to pass the marker E.g. & > < in HTML Telnet has control codes in the data stream Data counting The header of a frame holds count of the amount of data Used by HTTP

Routing and switching How to get a packet to a socket over the net? Routing and forwarding: Grab each packet, read its address and push it to right direction Switching (two operations): 1. Reserve a path between the endpoints 2. Transmit data along the path

Routing Router is a computer with two or more network interfaces Router receives a packet at its network interface Router reads the recipient address on the packet Routing table tells the router which interface to forward this packet to Tables can be dynamic or static Each packet is an individual case IP routers can peek into TCP data, too, for security reasons A routing network can usually recover from link loss, sometimes without data loss Terms: Routing: the decision about where to forward the packet Forwarding: the actual task of moving the data

Circuit Switching A channel is allocated over the network for each host to host connection before any data is transferred Channels are reserved, even if no data is transmitted Used in telephone systems Other kinds of switching IP packet switching is used on LANs for performance and security Data paths are formed on the fly ATM cell switching uses small, 53-byte cells Easier to implement in hardware than variable length IP packets ATM supports bandwidth reservation A switching network can usually recover from link loss, but connections over the missing link will be broken

Discovering the Features of the Transmission Path A protocol can optimize its behaviour TCP discovers the Maximum Transmittable Unit for efficiency Is likely to become more important in future with the mobile devices, which move from low speed high latency 2G mobile networks to high speed low latency wireless LAN networks

Discovering the Features of the Protocol Entities Enables optimal use of features E.g. a handheld device might not support colour E.g. two implementations of an encryption protocol must agree on which algorithm to use E.g. compression algorithm to be used None is often considered a feature and provides a lowest common level between implementations Several encryption protocols have none as one of the standard encryption algorithms which must be implemented, while this is useful for debugging it is also potentially dangerous

Conclusion If the label on the cable on the table at your house, Says the network is connected to the button on your mouse, But your packets want to tunnel on another protocol, That's repeatedly rejected by the printer down the hall, And your screen is all distorted by the side effects of gauss, So your icons in the window are as wavy as a souse, Then you may as well reboot and go out with a bang, 'Cause as sure as I'm a poet, the sucker's gonna hang! http://www.netfunny.com/rhf/jokes/96q1/seuss.html