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 thedata link layerwhich 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 areEthernetfor local area networks andPPP,HDLCandADCCPfor 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 aconfiguration 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 asprotocoltranslators,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]

Arepeateris 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]

Anetwork bridgeconnects multiple network segments at the data link layer (layer 2) of the OSI model. Bridges are similar to repeaters ornetwork 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. ShervinShirmohammadi, 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 inCourses,Higher Layer Network Protocols |Taggednetwork,osi,protocols |Leave a reply

Internetworking and the Internet Protocol

Posted onJuly 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. ShervinShirmohammadi, University of Ottawa CEG4183 Course Notes, Lecture 2

Posted inCourses,Higher Layer Network Protocols |Taggednetwork,protocol,tcp-ip |Leave a reply

Transmission Control Protocol (TCP)

Posted onDecember 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 inCourses,Higher Layer Network Protocols |Taggedip,network,packets,rtp,tcp,udp |Leave a reply

The Transport Layer and UDP

Posted onDecember 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 inCourses,Higher Layer Network Protocols |Taggedflow control,multiplexing,osi model,reliable delivery,tcp,transport layer,udp |2Replies

THIS WEBSITE HOSTED BY:

RECENT POSTS

  • 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

Top of Form

Search

Bottom of Form

CATEGORIES

  • 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

SPONSORS

  • PPIclaimer