Layered Communication
Network
communication models are generally organised into layers. The OSI model specifically
consists of seven layers, with
each layer representing
a specific networking function. These functions are controlled by protocols, which govern
end-to-end communication between devices.
As
data is passed from the user application down the virtual layers of the OSI
model, each of the lower layers adds a header
(and sometimes a trailer)
containing protocol information specific to that layer. These headers are called Protocol Data Units (PDUs),
and the process of adding these headers is referred to as encapsulation.
The
PDU of each lower layer is identified with a unique term:
#
|
Layer
|
PDU Name
|
7
|
Application
|
-
|
6
|
Presentation
|
-
|
5
|
Session
|
-
|
4
|
Transport
|
Segments
|
3
|
Network
|
Packets
|
2
|
Data-link
|
Frames
|
1
|
Physical
|
Bits
|
Commonly,
network devices are identified by the OSI layer they operate at (or, more
specifically, what header
or PDU the device
processes).
For
example, switches
are generally identified as Layer-2 devices, as switches process information
stored in the Data-Link
header of a frame (such as MAC addresses in Ethernet). Similarly, routers are identified as
Layer-3 devices, as routers process logical
addressing information in the Network
header of a packet (such as IP addresses).
However, the strict definitions
of the terms switch
and router have blurred over
time, which can result in confusion. For example, the term switch can now refer to
devices that operate at layers higher than Layer-2. Will explain in greater
detail below.
Below are Some of the Best Explained Videos on Hubs/Switches/Routers
===========================================================
https://www.youtube.com/watch?v=Ofjsh_E4HFY
https://www.youtube.com/watch?v=reXS_e3fTAk
https://www.youtube.com/watch?v=zfF01O9m9Ro
https://www.youtube.com/watch?v=dd_fKRA7lBA&list=PLh94XVT4dq02frQRRZBHzvj2hwuhzSByN&index=6
Below are Some of the Best Explained Videos on Hubs/Switches/Routers
===========================================================
https://www.youtube.com/watch?v=Ofjsh_E4HFY
https://www.youtube.com/watch?v=reXS_e3fTAk
https://www.youtube.com/watch?v=zfF01O9m9Ro
https://www.youtube.com/watch?v=dd_fKRA7lBA&list=PLh94XVT4dq02frQRRZBHzvj2hwuhzSByN&index=6
============
Hubs are
Layer-1 devices that physically connect network devices together for
communication. Hubs can also be referred to as repeaters.
Hubs provide no
intelligent forwarding
whatsoever. Hubs are incapable of processing either Layer-2 or Layer-3
information, and thus cannot make decisions based on hardware or logical
addressing.
Thus, hubs will always forward every frame out every
port, excluding the port originating the
frame. Hubs do not differentiate between frame types, and thus will always
forward unicasts, multicasts, and broadcasts out every
port but the originating port.
Ethernet hubs operate at half-duplex, which allows a device to either transmit or receive data,
but not simultaneously. Ethernet utilizes Carrier Sense Multiple Access with Collision Detect
(CSMA/CD) to control media
access. Host devices monitor the physical link, and will only transmit a frame
if the link is idle.
However, if two devices transmit a
frame simultaneously, a collision will occur. If a collision is
detected, the hub will discard the frames and signal the host devices. Both
devices will wait a random amount of time before resending their respective
frames.
Remember, if any
two devices connected to a hub send a frame simultaneously, a collision will
occur. Thus, all ports on a hub belong to the same collision domain. A collision domain is simply
defined as any physical segment where a collision can occur.
Multiple hubs that are uplinked
together still all belong to one collision domain. Increasing the
number of host devices in a single collision domain will increase the number of
collisions, which can significantly degrade performance.
Hubs
also belong to only one broadcast
domain – a hub will
forward both broadcasts and multicast out every port
but the originating port. A broadcast domain is a logical segmentation of a
network, dictating how far a broadcast (or multicast) frame can propagate.
Only
a Layer-3 device, such as a router, can separate broadcast domains.
Layer-2 Switching
===============
Layer-2 devices build hardware address tables, which will contain the following at
a minimum:
• Hardware
addresses for host devices
• The
port each hardware address is associated with
Using this information, Layer-2
devices will make intelligent forwarding decisions based on frame (Data-Link) headers. A frame can
then be forwarded out only the appropriate destination port,
instead of all ports.
Layer-2 forwarding was originally
referred to as bridging. Bridging is a largely deprecated
term (mostly for marketing purposes), and Layer-2 forwarding is now commonly
referred to as switching.
There are some subtle technological
differences between bridging and switching.
Switches usually have a higher port-density, and can perform forwarding
decisions at wire speed, due to specialised hardware circuits called ASICs (Application-Specific Integrated
Circuits). Otherwise,
bridges and switches are nearly identical in function.
Ethernet switches build MAC-address tables through a dynamic learning process.
A switch behaves much like a hub when first powered on. The switch will flood
every frame, including unicasts, out every port but the originating port.
The switch will then build the
MAC-address table by examining the source MAC address of
each frame. Consider the following diagram:
Switch
is in a perpetual state of learning. However, as the MAC-address table becomes
populated, the flooding of frames will decrease, allowing the switch to perform
more efficient forwarding decisions.
While hubs were limited to
half-duplex communication, switches can operate in full duplex. Each individual
port on a switch belongs to its own
collision domain. Thus, switches create more
collision domains,
which results
in fewer collisions.
Like hubs though, switches belong to
only one
broadcast domain. A Layer-2 switch will forward both
broadcasts and multicasts out every port but the originating port. Only
Layer-3 devices separate broadcast domains.
Because of this, Layer-2 switches
are poorly suited for large, scalable networks. The Layer-2 header provides no
mechanism to differentiate one network
from another, only one host from
another.
This poses significant difficulties. If only hardware addressing existed, all
devices would technically be on the same network. Modern inter networks like
the Internet could not exist, as it would be impossible to separate my
network from your network.
Imagine if the entire Internet
existed purely as a Layer-2 switched environment. Switches, as a rule, will
forward a broadcast out every port. Even with a conservative
estimate of a billion devices on the Internet, the resulting broadcast storms
would be devastating. The Internet would simply collapse.
Both hubs and switches are
susceptible to switching loops, which result in destructive
broadcast storms. Switches utilise the Spanning
Tree Protocol (STP) to
maintain a loop-free environment
Remember, there are three things
that switches do that hubs do not:
•
Hardware address learning
•
Intelligent
forwarding of frames
•
Loop avoidance
Layer-3 Routing
=============
Layer-3 routing
is the process of forwarding a packet from one network
to another network, based on the Network-layer header.
Routers build routing tables to
perform forwarding decisions, which contain the following:
•
The
destination network and subnet mask
•
The next hop
router to get to the destination network
•
Routing
metrics
and Administrative Distance
Note: Layer-3 forwarding is based on the
destination network, and not the destination host.
It is possible to have host routes, but this is less common.
The routing table is concerned with
two types of Layer-3 protocols:
• Routed
protocols - assigns logical
addressing to devices, and routes packets between networks. Examples
include IP and IPX.
• Routing
protocols - dynamically
builds the information in routing tables. Examples include RIP, EIGRP,
and OSPF.
Each individual interface on a router belongs to its own collision domain. Thus, like
switches, routers create more
collision domains,
which results in fewer collisions.
Unlike
Layer-2 switches, Layer-3 routers also separate
broadcast domains.
NOTE: A router will never
forward broadcasts from one network to another network
(unless, of course, you explicitly configure it to).
Routers will not forward multicasts
either, unless configured to participate in a multicast tree.
VLANs – A Layer-2 or Layer-3 Function?
=================================
By default, a switch will forward
both broadcasts and multicasts out every port but the originating port.
However, a switch can be logically
segmented into multiple broadcast domains, using Virtual LANs (or VLANs). VLANs are covered in extensive
detail in another guide.
Each VLAN represents a unique
broadcast domain:
• Traffic
between devices within the same VLAN is switched (forwarded at
Layer-2).
• Traffic
between devices in different VLANs requires a Layer-3 device to
communicate.
Broadcasts
from one VLAN will not be forwarded to another VLAN. This separation provided
by VLANs is not a Layer-3 function. VLAN tags are inserted into the Layer-2 header.
Thus, a switch that supports VLANs
is not necessarily a Layer-3 switch. However, a purely Layer-2 switch cannot
route between VLANs.
Remember, though VLANs provide separation for Layer-3 broadcast domains,
and are often associated with IP subnets, they are still a Layer-2
function.
Layer-3 Switching
===============
In addition to performing Layer-2
switching functions, a Layer-3
switch must also meet
the following criteria:
• The
switch must be capable of making Layer-3 forwarding decisions (traditionally
referred to as routing).
• The
switch must cache network traffic flows, so that Layer-3 forwarding can occur
in hardware.
Many
older modular switches support Layer-3 route processors – this alone does not
qualify as Layer-3 switching. Layer-2 and Layer-3 processors can act
independently within a single switch chassis, with each packet requiring a
route-table lookup on the route processor.
Layer-3 switches leverage ASICs to
perform Layer-3 forwarding in hardware. For the first packet of a particular
traffic flow, the Layer-3 switch will perform a standard route-table lookup.
This flow is then cached in hardware – which preserves
required routing information, such as the destination network and the MAC
address of the corresponding next-hop.
Subsequent packets of that flow will
bypass the route-table lookup, and will be forwarded based on the cached
information, reducing latency. This concept is known as route once, switch many.
Layer-3 switches are predominantly
used to route between VLANs:
Traffic between devices within the
same VLAN, such as ComputerA and ComputerB, is switched
at Layer-2 as normal. The first packet between devices in different VLANs, such
as ComputerA and ComputerD, is routed. The switch will then cache that IP
traffic flow, and subsequent packets in that flow will be switched
in hardware.
The evolution of network
technologies has led to considerable confusion over the terms switch
and router.
Remember the following:
• The
traditional definition of a switch is a device that performs Layer-2
forwarding decisions.
• The
traditional definition of a router is a device that performs Layer-3
forwarding decisions.
Remember also that, switching
functions were typically performed in hardware,
and routing functions were typically
performed in software. This resulted
in a widespread perception that switching was fast, and
routing was slow (and expensive).
Once
Layer-3 forwarding became available in hardware, marketing gurus muddied the
waters by distancing themselves from the term router.
Though Layer-3 forwarding in hardware is still routing
in every technical sense, such devices were rebranded as Layer-3 switches.
Ignore
the marketing noise. A Layer-3 switch is still a router.
Compounding matters further, most
devices still currently referred to as routers
can perform Layer-3 forwarding in
hardware as well. Thus, both Layer-3 switches and
Layer-3 routers perform nearly identical functions at the same performance.
There are some differences in implementation between Layer-3 switches and routers, including (but not
limited to):
• Layer-3
switches are optimized for Ethernet, and are predominantly used for inter-VLAN routing.
Layer-3 switches can also provide Layer-2 functionality for intra-VLAN traffic.
• Switches
generally have higher port densities than routers, and are considerably cheaper
per port than routers (for Ethernet, at least).
• Routers
support a large number of WAN technologies, while Layer-3 switches generally do
not.
• Routers
generally support more advanced feature sets.
Layer-3 switches are often deployed
as the backbone of LAN or campus networks. Routers are predominantly used on
network perimeters, connecting to WAN environments.
(Fantastic Reference: http://blog.ioshints.info/2011/02/how-did-we-ever-get-into-this-switching.html)
Multilayer Switching
=================
=================
Multilayer switching is a generic term, referring to any
switch that forwards traffic at layers higher
than Layer-2. Thus, a Layer-3 switch is considered a multilayer switch, as it
forwards frames at Layer-2 and packets at Layer-3.
A Layer-4 switch
provides the same functionality as a Layer-3 switch, but will additionally
examine and cache Transport-layer
application flow
information, such as the TCP or UDP port.
By caching application flows, QoS (Quality of Service) functions can be applied to
preferred applications.
Consider the below example:
Network
and application traffic flows from ComputerA to the Webserver and Fileserver
will be cached. If the traffic to the Webserver is preferred, then a higher QoS
priority can be assigned to that application flow.
Some advanced multilayer switches
can provide load balancing, content management, and other application-level
services. These switches are sometimes referred to as Layer-7 switches.