Network Models
2.1 .
A Network is ..
A combination of hardware (HW) and software (SW) that
send data from one location to another.
HW: physical equipment that carries signals from
one point of the network to another
SW: instruction sets that make possible the services
that we expect from a network.
Data transformed into the form
of electromagnetic signals when
sent along a transmission
medium (link).
2.2
Network Protocol
Rules that the sender, receiver and immediate
devices need to follow for communication.
Architecture: General blue prints that guide the
design and implementation of networks.
Examples:
OSI architecture
TCP/IP architecture
2.3
Concept of Layers
We use the concept of layers in our daily life.
Protocol layers helps us to divide complex and long
tasks into several smaller and simpler tasks.
Single layer communication protocol
Two friends living in neighborhood, with lots of
common ideas talking to each other.
What rules should they follow?
2.4
Concept of Layers
Multi layer communication
As an example, let us consider two friends who
communicate through postal mail.
The process of sending a letter to a friend would be
complex if there were no services available from the
post office.
2.5
3 Layer Protocol
2.6
Tasks involved in sending a letter
2.7
Hierarchy
The tasks must
be performed in
the order
specified by the
hierarchy of the
layers!
2.8
Concept of Layers
Each layer provides a specific set of services.
Services are provided through the definition of protocols.
Each layer uses the services provided by the lower/above
layers.
Layers use protocols to communicate with each others.
Layering provides two nice features:
Decomposes the problem of building a network into
more manageable components.
Provides a more modular design, modifying the
functionality of the different layers without affecting the
whole system (Modularity)
Only a layer can be changed instead of replacing the
entire system.
2.9
Advantages of Protocol Layering
Separation of services from implementation becomes
possible
A layer should be able to receive the services from
the lower layers and should be able to provide the
services to the upper layers.
Implementation of layers not need to be known.
Some systems might not need all layers, for example
when connected to the internet.
In case layers were not there, the intermediate
systems would have been as complex as the end
systems.
2.10
Principles of Protocol Layering
2 principles for bidirectional communication
Each layer should be able to perform opposite tasks in
each direction.
First layer: Send/Receive
Second Layer: Encrypt/Decrypt
Third Layer: Talk/Listen
Two objects under each layer at both sides should be
identical
2.11
Layer-to-Layer communication
2.12
TCP/IP PROTOCOL SUITE
• Transmission Control Protocol/Internet Protocol
• Used in the internet today
• TCP/IP is a hierarchical protocol made up of interactive modules, each of
which provides a specific functionality.
• The layers of the TCP/IP protocol suite contain relatively independent
protocols.
• The application uses the best suited protocol from each layer.
• The term hierarchical means that each upper-level protocol is supported
by one or more lower-level protocols.
• The original TCP/IP protocol suite was defined as having four layers:
host-to-network, internet, transport, and application.
• Today TCP-IP is considered to have a 5-layer model
2.13
TCP/IP PROTOCOL SUITE
2.14
• Communication from A to B
• 5 communication devices
• Router connects networks
with different protocols
• Switch connects same links
2.15
2.16
2.17
The Layers in the TCP/IP Protocol Suite
Application
Presentation FTP HTTP DNS NFS …
Session
Transport TCP UDP
ICMP IGMP
Network IP
ARP RARP
Data link
Physical
Figure 2.16 TCP/IP and OSI model
18
2-4 TCP/IP PROTOCOL SUITE
Physical Layer
Carries individual bits in a frame across the link.
Transmission media under the physical layer
Actually, electrical or light signal is sent (bits are
assumed)
2.19
2-4 TCP/IP PROTOCOL SUITE
Data Link Layer
A network in a TCP/IP internetwork can be a local-area
network or a wide-area network.
Router determines the best link and link layer moves
datagram across the link.
The link can be wired or wireless LAN or WAN.
No specific protocol is defined at this layer, rather, TCP/IP
model supports all the standard and proprietary protocols.
Any protocol that can carry a packet across the link can suffice for
the link layer.
Error correction may be provided by the link layer.
2.20
2-4 TCP/IP PROTOCOL SUITE
Network layer (internetwork layer)
Responsible for creating connection between source and
destination computers
Host-to-host communication but routers are responsible for
selecting the best path.
Network layer ensures end-to-end communication by
establishing the route.
2.21
2-4 TCP/IP PROTOCOL SUITE
TCP/IP at this layer supports the Internetworking
Protocol (IP) (for the Internet)
IP defines the format of the packet.
IP also defines the format of addresses used at this layer.
IP routes the packet from the source to destination.
Connection-less protocol: provides no flow control, no
congestion control, no error control.
Network layer also includes unicast & multicast
routing protocols.
IP does the routing but these routing protocols create the
forwarding tables.
2.22
2-4 TCP/IP PROTOCOL SUITE
There are also some other protocols that support data
movement in this layer.
Address Resolution Protocol (ARP)
It is used to find the physical address (NIC) of the node after its
Network address is known.
Reverse Address Resolution Protocol (RARP)
It is used to find the Internet address of the node after its
physical address is known.
Internet Control Message Protocol (ICMP)
It is used by hosts and gateways to send notification of
datagrams ( packets) problem back to the sender.
Internet Group Message Protocol (IGMP)
It is used to facilitate the simultaneous transmission of
messages to a group of recipients (multi-tasking).
Dynamic Host Configuration Protocol (DHCP)
Helps IP to get the network address for a host.
2.23
2-4 TCP/IP PROTOCOL SUITE
Transport Layer
End-to-end communication.
Encapsulates the packet in a transport-layer packet
(segment or user-datagram).
In this layer, the protocol is responsible for delivery of
message from a process to another process through the
logical connection.
2.24
Protocols at The Transport Layer
Transmission Control Protocol (TCP)
It is reliable and connection-oriented.
Creates logical connections between transport layers of 2
hosts for transmitting bytes.
Provides flow control (matches data rate of the source host
with the destination host), error control (ensures that packets
are sent without error or retransmits) and congestion control
(to prevent the packet loss).
2.25
Protocols at The Transport Layer
User Datagram Protocol (UDP)
Connection-less, does not work with the logical connections.
Each user datagram is sent as a separate entity.
Does not provide error, flow or congestion control
functionalities.
Has small overhead and used by the applications having small
packets.
Stream Control Transmission Protocol (STCP)
It supports the newer application e.g. voice over the Internet.
It combines best features of UDP and TCP.
2.26
2-4 TCP/IP PROTOCOL SUITE
Application Layer
Two application layers exchange messages between
each other through the logical connection.
Communication is between the two processes running
at the application layer.
Hypertext Transfer Protocol (HTTP)
For accessing the World Wide Web (WWW)
Simple Mail Transfer Protocol (SMTP)
Email service
File Transfer Protocol (FTP)
Transferring files from one host to another.
Terminal Network (TELNET) & Secure Shell (SSH)
Accessing a site remotely
2.27
2-4 TCP/IP PROTOCOL SUITE
Simple Network Management Protocol (SNMP)
Administrator uses for managing internet or other
global networks
Domain Name System (DNS)
Used by protocols to find the network-layer address
of the computer.
Internet Group Management Protocol (IGMP)
Collects membership in the group.
2.28
Encapsulation & Decapsulation
2.29
Encapsulation At Sender
Application Layer
Message is generated
Transport Layer
Takes application layer message as the payload and adds header to it
Headers contain identifier information of the source & destination and
some information required for the end-to-end delivery.
Information about error control, flow control or congestion control.
User datagram or segment is made
Network layer
Takes transport layer message as the payload and adds header
Headers contain identifier information of the source & destination and
some information for error checking and fragmentation
Datagram is made
Data Link Layer
Takes network layer message as the payload and adds header
Adds link layer addresses of the host or the next hop (router).
Link layer packet is called a frame
2.30
At Router
Both encapsulation and decapsulation
Data link layer decapsulates the received bits (datagram) from the
frame and passes to the network layer.
Network layer inspects the source & destination addresses in the
datagram and uses the forwarding table to find the next hop.
Contents of datagram are only changed by the router in case
fragmentation is needed.
Data link layer of the next link encapsulates the packet again using
the information of the next hop and passes to the physical layer.
2.31
Decapsulation at Destination
Each layer only decapsulates the packets, removes the header and delivers
to the next higher layer.
Decapsulation includes the process of error checking.
2.32
Figure 2.17 Addresses in TCP/IP
2.33
Addressing
2.34
Figure 2.18 Relationship of layers and addresses
in TCP/IP
2.35
Addressing Concepts
Logical connections exist between source and destination
hosts.
Two addresses are needed for communication.
Four pairs of addresses in TCP/IP architecture.
Relationship between address and the packet name at each
layer
Application layer: names (such as websites or email IDs)
Transport Layer: Port numbers (local addresses)
Network layer: Global addresses
Link-Layer: MAC addresses
2.36
2-5 ADDRESSING
Physical/Data Link Addresses
It is known as link address.
It is the address of a node as defined
by its LAN or WAN.
The size and format of the address
depend on the network.
Ethernet uses 6-bytes (48-bits)
NIC
LocalTalk (Apple) uses 1-byte
dynamic address
2.37
Example 2.1
In Figure 2.19 a node with physical address 10 sends a
frame to a node with physical address 87. The two nodes
are connected by a link (bus topology LAN). As the
figure shows, the computer with physical address 10 is
the sender, and the computer with physical address 87 is
the receiver.
2.38
Figure 2.19 Physical addresses
2.39
Example 2.3
Figure 2.20 shows a part of an internet with two
routers connecting three LANs. Each device
(computer or router) has a pair of addresses
(logical and physical) for each connection. In
this case, each computer is connected to only one
link and therefore has only one pair of addresses.
Each router, however, is connected to three
networks (only two are shown in the figure). So
each router has three pairs of addresses, one for
each connection.
2.40
Figure 2.20 IP addresses
2.41
Note
• The physical addresses will change from
hop to hop, but the logical addresses
usually remain the same.
• No two hosts on the Internet have the
same IP address.
2.42
2-5 ADDRESSING
Port Addresses
It is necessary for the receiver device
that runs multiple process to receive
data simultaneously this make a
need to label each process
A port address is 16-bits.
2.43
Example 2.4
Figure 2.21 shows two computers communicating via
the Internet. The sending computer is running three
processes at this time with port addresses a, b, and c.
The receiving computer is running two processes at this
time with port addresses j and k. Process a in the
sending computer needs to communicate with process j
in the receiving computer. Note that although physical
addresses change from hop to hop, logical and port
addresses remain the same from the source to
destination.
2.44
Figure 2.21 Port addresses
2.45
Note
The physical addresses change from hop to hop,
but the logical and port addresses usually remain the same.
2.46
2-5 ADDRESSING
Specific Addresses
Examples
e-mail address
URL address
Those addresses get changed to the
corresponding port and logical
address by the sending computer.
2.47
Multiplexing & Demultiplexing
2.48
Multiplexing & Demultiplexing
A protocol at a layer can encapsulate packets from several protocols
running at the higher layers.
A protocol at a layer can decapsulate packets from several protocols
running at the lower layers.
Packet should have a field in its header field to identify its belonging
protocol
Transport layer: TCP & UDP could receive a message from different
application-layer protocols.
Network: IP can accept segment from TCP or user datagram from
UDP, or packets from ICMP, IGMP.
Data link layer: may carry the packets coming from IP or ARP.
2.49
Summary of TCP/IP
2.50