31
Function of osi model Physical The bits that are transmitted over the communication media Deals with network hardware, bit encoding Ex: copper, fiber, radio, satellite Data Link Activates, maintains, and deactivates the physical link between two adjacent nodes (node-to-node delivery) Deals with framing, windowing, flow control, error detection and recovery Network Determines how best to route packets of data from source to destination via intermediate network nodes Deals with addressing, routing, fragmentation, and congestion Transport Provides end-to-end message delivery and error recovery Deals with end-to-end integrity and quality of service Session To establish, manage and terminate sessions Controls the dialogue between two host applications Reports exceptions to upper layers

Web view14.10.2015 · ARP – Address Resolution Protocol. Reverse ARP. 4. Different Timeout [1] Problem: different networks use different timeout mechanisms

Embed Size (px)

Citation preview

Function of osi model

Physical

The bits that are transmitted over the communication media

Deals with network hardware, bit encoding

Ex: copper, fiber, radio, satellite

Data Link

Activates, maintains, and deactivates the physical link

between two adjacent nodes (node-to-node delivery)

Deals with framing, windowing, flow control, error detection

and recovery

Network

Determines how best to route packets of data from source to

destination via intermediate network nodes

Deals with addressing, routing, fragmentation, and

congestion

Transport

Provides end-to-end message delivery and error recovery

Deals with end-to-end integrity and quality of service

Session

To establish, manage and terminate sessions

Controls the dialogue between two host applications

Reports exceptions to upper layers

Presentation

Resolves data representation differences

To translate, encrypt and compress data

Application

Perform functions to implement network applications

Ex: email, teleconferencing

The OSI model also has different Protocol Data Units (PDUs) associated with the

different layers. The OSI diagram shown above defines these as follows:

Layer 1 – bit streams

Layer 2 – frames

Layer 3 – packets

Layer 4 – segments

Layer 5,6,7 – data

The ideas introduced above are essential in order to properly understand basic

network principles such as line configuration, topology, transmission mode,

categories of networks and internetworks.

Line Configuration

[1]

 

[1]

 

Topology

[1]

 

[1]

 

[1]

Transmission Mode

 

 

[1]

Network Categories

[1]

[1]

[1]

An internetwork, the most famous of which is the Internet, is a connection of all of

these different types networks together! Of course, knowing the different types of

networks is only part of understanding how they communicate together. At the

physical layer we have all of the physical components of these different networks,

such as the hardware and communication media. At the next layer, we have

the data link layer which responds to service requests from the network layer

above it and and issues service requests to the physical layer below it.

The data link layer provides the functional and procedural means to transfer data

between network entities and might provide the means to detect and possibly

correct errors that may occur in the Physical layer. Examples of data link protocols

are Ethernet for local area networks and PPP, HDLC and ADCCP for point-to-point

connections. [3]

The three main services provided by the data link layer are:

line discipline – who should send now?

flow control – how much data should be sent?

error control – how can erros be corrected?

[1]

[1]

[1]

[1]

[1]

[1]

[1]

[1]

[1]

[1]

[1]

[1]

[1]

[1]

 

 

Connection Devices

Networking Devices

Repeaters

Bridges

Internetworking Devices

Routers

Gateways

[1]

Routers [4]

Routers are specialized computers that send the messages of every Internet user

speeding to their destinations along thousands of pathways. Much of the work to

get a message from one computer to another is done by routers, because they’re

the crucial devices that let messages flow between networks, rather than within

networks.

One of the tools a router uses to decide where a packet should go is

a configuration table. A configuration table is a collection of information,

including:

Information on which connections lead to particular groups of

addresses

Priorities for connections to be used

Rules for handling both routine and special cases of traffic

A configuration table can be as simple as a half-dozen lines in the smallest routers,

but can grow to massive size and complexity in the very large routers that handle

the bulk of Internet messages. A router, then, has two separate but related jobs:

The router ensures that information doesn’t go where it’s not

needed. This is crucial for keeping large volumes of data from

clogging the connections of “innocent bystanders.”

The router makes sure that information does make it to the

intended destination.

Gateway [5]

In a communications network, a network node equipped for interfacing with another

network that uses different protocols.

A gateway may contain devices such

as protocol translators, impedance matchingdevices, rate

converters, fault isolators, or signal translators as necessary to

provide system interoperability. It also requires the establishment of

mutually acceptable administrative procedures between the two

networks.

A protocol translation/mapping gateway interconnects networks

with different network protocol technologies by performing the

required protocol conversions.

Repeater [6]

A repeater is an electronic device that receives a signal and retransmits it at a

higher level or higher power, or onto the other side of an obstruction, so that the

signal can cover longer distances without degradation.

Because repeaters work with the actual physical signal, and do not attempt to

interpret the data being transmitted, they operate on the Physical layer, the first

layer of the OSI model.

Bridge [7]

A network bridge connects multiple network segments at the data link layer (layer

2) of the OSI model. Bridges are similar to repeaters or network hubs, devices that

connect network segments at the physical layer, however a bridge works by using

bridging where traffic from one network is managed rather than simply rebroadcast

to adjacent network segments.

[1] Prof. Shervin Shirmohammadi, University of Ottawa CEG4183 Course Notes,

Lecture 1

[2] HowStuffWorks.com – How OSI Works

[3] Wikipedia – Data Link Layer

[4] HowStuffWorks.com – How Routers Work

[5] Wikipedia – Gateway (telecommunications)

[6] Wikipedia – Repeater

[7] Wikipedia – Network Bridge

Posted in Courses, Higher Layer Network Protocols | Tagged network, osi, protocols | Leave a

reply

Internetworking and the Internet ProtocolPosted on July 2, 2013

Network Layer [1]

Provides the upper layers with independence from data transmission

and physical networking technologies

Responsible for sending data from source to destination (this

includes the nodes in between and is therefore not end-to-end)

Responsible for requesting network facilities such as priority, bit-

rate, etc…

Responsible for routing

Routing [1]

Autonomous System (AS) – set of networks and routers operated by

a single organization

Interior Router Protocol (IRP) – passing routing information within an

autonomous system

Exterior Router Protocol (ERP) – passing routing information

between different autonomous systems

Routing Approaches [1]

Distance Vector Routing – each node exchanges information with its

neighboring nodes (ex: Routing Information Protocol, RIP)

Link-state Routing – sends link costs of each of its network

interfaces to all routers (not just neighboring). Typically used with a

Dijkstra-based algorithm (ex: Open Shortest Path First, OSPF)

Path-vector Routing – router provides information about which

networks can be reached by a given router and the autonomous

systems that must be crossed (ex: Border Gateway Protocol, BGP)

[1]

Internet Architecture

In a TCP/IP internet, IP Routers provide interconnection among physical networks.[1]

Internet Protocol (IP)

The most-widely used internetworking protocol

Internetworking Requirements [1] – accommodate the differences among the

networks which form the intenetwork.

1. different addressing schemes

2. different maximum packet size

3. different network access mechanism

4. different timeouts

5. different transmission modes (connection oriented, connectionless)

6. error control

7. flow control

[1]

1. Different Addressing Scheme [1]

Introduce IP Address as a global address

All hosts on the internet must have a unique IP address

NOTE: Techniques such as IP-forwarding allow private IP

addresses that might be duplicated somewhere else.

[1]

[1]

Subnet and Subnet Masks [1]

Allow arbitrary complexity of internetworked LANs within an

organization

Insulate overall internet from growth of network numbers and

routing complexity

To rest of internet, site looks like single network

Each LAN is assigned a subnet number

Host portion of address is partitioned further into subnet number

and host number

Local routers route within subnetted network

Subnet mask indicates which bits are subnet number and which are

host number by doing a bitwise AND

2. Different Maximum Size [1]

Different networks have different Maximum Transmission Unit (MTU) sizes. What if a

packet reaches a network and it exceeds the networks MTU? This can be solved

with the following solution:

Use fragmentation to split large packets into smaller ones

Use reassembly at the destination only to put the fragments

together and build the original packet

Fragmentation and Reassembly [1]

When to re-assemble

At destination – results in packets getting smaller as data traverses

internet

Intermediate re-assembly

Need large buffers at routers

Buffers may fill with fragments

All fragments must go through same router

Inhibits dynamic routing

IP Fragmentation [1]

IP re-assembles at destination only

Uses fields in header

Data Unit Identifier (ID)

Identifies end system originated diagram

Source and destination address

Protocol layer generating data (ex: TCP)

Identification supplied by that layer

Data Length

Length of user data in octets

Offset

Position of fragment of user data in original datagram

In multiples of 64 bits (8 octets)

More flag

Indicates that this is not the last fragment

Dealing with Failure [1]

Re-assembly may fail if some fragments get lost

Re-assembly time out

Assigned to first fragment to arrive

If timeout expires before all fragments arrive, discard partial

data

3. Different Network Access [1]

Solved by abstracting networking functions in the networking layer,

and relying on Data Link Layer for networking access

Routers handle the difference in network access mechanism.

Address Mapping [1]

Sometimes, in order to reach a destination, there is no need to go

through an IP router.

In such a case, the physical address can be used directly

ARP – Address Resolution Protocol

Reverse ARP

4. Different Timeout [1]

Problem: different networks use different timeout mechanisms.

Solution: Introduce the concept of Datagram Lifetime.

Datagrams could loop indefinitely

Consumes resources

Transport protocol may need upper bound on datagram life

Datagram marked with lifetime

Time to Live (TTL) field in IP

Once lifetime expires, datagram discarded (not forwarded)

Hop count

Decrement time to live on passing through each router

5. Different Transmission Modes [1]

Use a connectionless architecture

Advantage:

Flexibility

Robust

No unnecessary overhead

Disadvantages

Not guaranteed delivery

Not guaranteed order of delivery

Reliability is responsibility of upper layers (ex: TCP)

6. Error Control [1]

Minimal error control, done only for the header

Router should attempt to inform source if packet discarded (using

ICMP)

Not guaranteed delivery

May inform higher layer protocol

7. Flow Control [1]

 Allows routers and/or stations to limit rate of incoming data

Limited in connectionless systems

Send flow control packets

Requesting reduced flow

ex: ICMP

—[1] Prof. Shervin Shirmohammadi, University of Ottawa CEG4183 Course Notes,

Lecture 2

Posted in Courses, Higher Layer Network Protocols | Tagged network, protocol, tcp-ip | Leave

a reply

Transmission Control Protocol (TCP)Posted on December 9, 2007

The Transmission Control Protocol (TCP) is used to provide reliable, in-order delivery

of messages over a network.

Reasons for TCP

The Internet Protocol (IP) works by exchanging groups of information called packets.

Packets are short sequences of bytes consisting of a header and a body. The header

describes the packet’s destination, which routers on the Internet use to pass the

packet along, in generally the right direction, until it arrives at its final destination.

The body contains the application data.

Continue reading →

Posted in Courses, Higher Layer Network Protocols | Tagged ip, network, packets, rtp, tcp, udp

|Leave a reply

The Transport Layer and UDPPosted on December 8, 2007

2

Transport Layer

The transport layer is one of the 7 layers of the OSI model. It’s purpose is to provide

robust end-to-end service to to the upper layers and is responsible for end-to-end

delivery of the message. Therefore, the transport layer must consider addressing,

reliability, flow control and multiplexing in order to accomplish it’s main goals.

Reliable delivery is not a compulsory service for the transport layer, however since

this layer is expected to be responsible for delivering the messages from end-to-

end, it only makes sense to implement reliable delivery at this layer. Reliable

delivery is provided by using error control, sequence control, loss control and

duplication control.

Sequence control is very important because messages not arriving in order can

cause very important information to be lost or even overwritten. For example, when

one process relies on another, the order in which messages arrive will influence the

final result meaning that sequence errors will lead to errors in the application. This

is similar to the complexities encountered when working with databases or other

applications that are multi-threaded. Consider performing a mathematical

calculation. If one process retrieves the stored value to be used in the calculation

just before the second process updates that value, then even if that value is

updated, the first process is unfortunately using the incorrect value for its

calculation.

Of course, if sequence control is an important issue, obviously so it loss control! If

messages are not even received, the complexity in dealing with such is far more

complex than worrying about putting messages back in order which can be

accomplished by the use of sequence numbers. If messages are being lost after

transmission over a network, it is not necessary to somehow make sure the lost

messages are re-sent in a timely fashion. All this must be accomplished in a way

such that performance of the system and entire network is not compromised.

Duplication control is important to consider as well because as the speed of

networks continue to increase, it becomes possible for different messages to be

identified as duplicated and discarded. Similarly, if a packet can become corrupted

or erroneous, it is possible then for the sequence number of a real message to be

incorrect and cause a duplicate. Also it is entirely possible for a duplicate message

to be sent by the sender itself, and therefore this duplicate should be detected to

avoid errors.

Flow control is yet another important component of transport to consider. Imagine

all these messages that are being delivered over a network, some coming from very

high-speed users, others from slower users possibly still using a dial-up connection.

Without flow control, a slower user could quickly become completely flooded with

messages and suddenly be unable to do anything. Flow control therefore

establishes window sizes to try and make sure the network or users do not run into

this problem.

Multiplexing refers to the process where multiple messages are combined into a

single signal. Demultiplexing is the reverse process of taking a single signal and

splitting it into multiple messages. The transport layer performs a multiplexing (to

data link layer)/demultiplexing(from data link layer) function with respect to the

interface between itself and the layers below it.

With regard to the transport layer, a connection is not necessarily required since

messages can be sent by UDP which is connectionless. Therefore, a connection is

only required when a connection-oriented transport protocol is being used. If using

a connection-oriented transport protocol, then it is important to consider the

complexities involved with connection establishment and connection release.

Establishing a connection is a rather straight-forward concept. A connection request

is sent, and then the sender waits for an acknowledgment confirming the

connection. However, problems can occur when duplicate or expired connection

requests or acknowledgments show up!

UDP – User Datagram Protocol

UDP is a way of sending data over a network, however unlike TCP, ordering and

reliability is not part of the protocol. Because this reduces a significant amount of

overhead, UDP is actually faster and more efficient than TCP. However, for

applications that require reliable or guaranteed delivery, UDP will not be acceptable.

There is also no flow control or congestion control. UDP can have optional error

detection, but does not have any method for recovery. Unlike TCP, UDP is

compatible with packet broadcasting which is the sending of a message to everyone

on a network

Posted in Courses, Higher Layer Network Protocols | Tagged flow control, multiplexing, osi

model, reliable delivery, tcp, transport layer, udp | 2 Replies

T H IS WEB S IT E H O ST E D B Y :

REC ENT PO S TS

The Oldest Profession in the World

Webalizer Server Log Viewer Web Stats Explained

People for the Ethical Treatment of Software (PETS)

Raspberry Pi Assembly Language Beginners: Hands On Guide

Software Size Estimation

Search

CAT E GO R IES

Books

Code

Computer Architecture

Computer Programming

Courses

Hardware

Higher Layer Network Protocols

Open Source

Papers

Questions and Answers

Security in Computing

Software

Software Development

Software Engineer Humor

Software Project Management

Telecommunicatins Software Design and Analysis

Web Development

SP O NSO RS

PPIclaimer