WAN Backbones - University of Windsor
Download
Report
Transcript WAN Backbones - University of Windsor
ATM
Asynchronous Transfer Mode
ATM Networks
Use optical fibre similar to that used for FDDI networks
ATM runs on network hardware called SONET
ATM cells (packets) are 53 octets long
5 bytes of header information
48 bytes of data
ATM networks are packet-switched, but still create a
(virtual) circuit through the network
Before transfer can occur, the network must create a path (called a
virtual circuit) between the two machines
Once the virtual circuit (VC) has been established, packets can be
transferred between the machines
SONET Hardware
ATM/SONET network interface cards use
photodetectors to read optical signals and
photoreactors to generate them
Instead of network hubs, ATM networks use
switches to generate virtual circuits
These are not the same as Ethernet switches
ATM cells do not pass through routers or
network nodes
• As a result, cells are transferred very quickly
Creating Virtual Circuits
Creating a virtual circuit has been compared to
making a telephone call
A network node sends a request to the ATM switch
specifying the destination
The switch interacts with any other switches
necessary to align themselves to form a complete
path
When communication is complete, the node sends
a disconnect message to the switch
The switch will then notify all switches involved
to release the connection
ATM Switches
In ATM, switches act as network hubs and
routers
They provide interconnection between network
nodes
They establish a path between source and
destination
The difference between switches and
routers is that switches create this path
once, not once for each message
Virtual Circuits
Virtual circuits are also often called virtual paths
For reduced bandwidth usage for path
identification, these are numbered
A virtual path identifier is used to indicate which virtual
path is intended for a cell
Within virtual circuits, a number of channels is
available
Nodes can share virtual paths
Virtual paths can be used to communicate between
more than one pair of nodes
ATM Messaging
N1
S5
Virtual
Circuit #15
M1
M2
M1
M2
M3
M1
M2
M3
M4
S2
S3 M7
M8 M7
M1
M2
M3
M4
M5
M6
M7
M1
M2
M3
M4
M5
M6
M8 M7
M1
M2
M3
M4
M5
M6
M8 M7
M1
M2
M3
M4
M5
M6
M8 M7
M1
M2
M3
M4
M5
M6
M6
M1
M2
M3
M4
M5
M8 S6
M1
M2
M3
M4
M5
M6
M5
M1
M2
M3
M4
M1
M2
M5
M6
M7
M8
M3
M4
Connect: N1
M1
M2
M3
M4
M5
M6
M7
M8
S4
S1
Disconnect:
Connect:
M1 N1
M2
M3
M4
M5
M6
M7
M8
N1
N2
ATM Messaging
N1
S5
M4
M5
M6
M7
M3
M8
M5
M6
M7
M8
M4
M6
M7
M8
M5
S2
M8
M7 M7
M8
M6
M8
S3
S6
Disconnect: N1
S4
S1
N2
ATM Cell Format: Data Cells
4
8
VCI
PT
16
3
CLP
GFC VPI
HEC
Data
1
8
48x8
Generic flow control: Not currently used
Virtual path identifier: An identifier for the virtual
path/circuit
Virtual channel identifier: An identifier to identify which
channel within the specified virtual path/circuit
Payload Type: 3 flag bits
Cell loss priority: Should the cell be discarded in the
event of a congested switch?
Header error check: Cyclical redundancy check for the
cell header
Cell Header Field: Payload Type
The payload type field contains three bits of
flags, which are used for different purposes
Let’s focus on the bits for user data
First bit: User data or control data?
• Control cells could include call setup cells
Second bit: Is the sending switch congested?
Third bit: Is this the last cell in a logical packet?
• Logical packets will be discussed later when we
talked about AAL5
ATM Efficiency
ATM switches do not suffer from router-like
slowdowns where cells would be buffered and
processed
Also hub-like duplicates are avoided
The fixed size of ATM cells allows for hardware
optimizations
The time to transmit a 53 octet cell is constant
Assembling cells can also be done more quickly by
hardware
Virtual Circuits
A Detailed Discussion
Virtual Circuits
Virtual circuits can be created in 2 ways:
1. Permanent Virtual Circuits
2. Switched Virtual Circuits
Permanent Virtual Circuits
PVCs are circuits that are configured
manually (through software)
Thus they require more effort to create
PVCs provide compatible service between
any two ATM networks
PVCs are used when connections between
two computers will be required for long
periods of time
Switched Virtual Circuits
SVCs are created automatically (by the
hardware) when they are needed
SVCs are the VCs that were described in the
previous class
When an SVC is to be created:
Each switch communicates with the next switch in
the path
When an SVC has been created the switches closest
to the source and destination send those nodes the VC
identifier (VCI: a 24 bit number)
The VCI need not be the same value for each node
Virtual Circuit Creation
Creation of virtual circuits (PVCs and SVCs) takes a long
time
While the VC is being created, the VC is not yet useable
Creating a VC, sending one cell (packet), and closing the
VC is very inefficient and should be avoided
The cell transport layer handles circuit management
If a VC already exists and is open, the cell transport layer uses the
existing VC for transmission
If no VC is available to the node, a VC is created, and the VC’s
identifier is added to the switches circuit table
ATM Service Model
Most ATM layers are implemented in
hardware
This means that ATM network device drivers
are typically high level, where technologies
such as TCP/IP tunneling can be implemented
easily (discussed later)
ATM Service Model
Software
Application
Device Driver
(Data Link)
Hardware
Adaptation
Layer
Cell Transport
Signal
Optical Fibre
Adaptation Layer
The adaptation layer provides an abstraction
which hides hardware concerns from the
application
e.g. The 53 octet limit for cell sizes
ATM networks use ATM Adaptation Layer 5
(AAL5) technology to provide this abstraction
AAL5 provides a high level interface, allowing packets
between 1 and 65,535 octets of data
AAL5 also handles data integrity maintenance (using a
CRC check inside the packets)
AAL5
As stated previously, AAL5 provides a high-level
abstraction to the software
AAL5 layers appear to accept larger chunks of data, which
is segmented into 48 octet cells and managed transparently
This process is known as Segmentation and Reassembly (SAR)
AAL5 also ensures data integrity by using a checksum
(CRC)
AAL5 does not deal with cell delivery (as the cell transport
layer does), so AAL5 is not necessary inside switches
AAL5 is considered an end-to-end layer
Whereas cell transport is considered a machine-to-machine layer
Segmentation
Segmentation is the process of turning a chunk of
data into a group of ATM cells
For example, the chunk of data might be a packet from
another type of network
• e.g. An Ethernet frame
Since ATM cells travel on the same virtual circuit,
they do not arrive out of order
Thus sequencing information is not necessary
Each sequence of 48 octets is sent in its own cell
Reassembly
Reassembly is the process of recombining
ATM cells into the original data chunk
As the destination node receives cells, it
removes the 48 octets and appends it to the
end of a buffer
One of the configuration parameters, called
‘Payload Type’ is used to indicate the final
cell
Data Integrity
As mentioned before, the AAL5 subsystem
uses a checksum to ensure data integrity
The checksum is sent in the last cell
A 32 bit (4 octet) CRC
AAL5 Logical Packets
ATM Cells
H
D
H
D
D
AAL5 Logical Packet
H
D
H D
CRC
CRC
ATM Switching
Application
Application
Device Driver
(Data Link)
Device Driver
(Data Link)
Adaptation
Layer
AAL5
Adaptation
Layer
Cell Transport
Cell Transport
Cell Transport
Signal
Signal
Switch
Signal
ATM Switching
As can be seen in the diagram, ATM
switches exist entirely in the hardware layer
As a result, they are much faster than
routers, which require software execution
Routers must read packets from electronic
signals into a memory buffer (which is slow)
Routers then convert packets back into
electronic signals onto a new network
connection
TCP/IP Tunneling
Using ATM As an Example
(Chapter 18)
ATM Networking Drawbacks
Small, finite sized cells provide faster
transmission speeds
However, 53 octet cells are incompatible with other
technologies which are in widespread use
ATM addressing also differs significantly from
other forms of addressing
For example the TCP/IP protocol suite is the most
common network protocol system
• Most Internet applications are based on TCP/IP
ATM networks are not broadcast networks
Each cell only arrives at its intended destination
Broadcasting & multicasting are not directly supported
TCP/IP Tunneling
TCP/IP tunneling allows transmission of
TCP/IP packets over ATM (and other nonTCP/IP) networks
The use of TCP/IP over these networks
allows applications which normally only
run on TCP/IP networks to operate on all
networks
TCP/IP Tunneling with AAL5
AAL5 provides a convenient means to send large
IP datagrams over an ATM network
The IP datagrams, including the header
information can be inserted into an AAL5 logical
packet
The AAL5 logical packet will be sent, using ATM
cells, to the destination
The destination will extract the IP datagram and
use it as if the datagram were sent across a normal
TCP/IP network
IP Switching
Researchers are interested to see if they can
use switching technology to route IP
packets
Switching happens faster than routing
Techniques for IP switching are hardwareoriented
LAN Emulation
Many people are using ATM network
hardware in order to achieve ATM speeds in
a LAN network
Most ATM hardware can be configured to
simulate an emulated LAN (E-LAN)
E-LANs use the same techniques as TCP/IP
tunneling to forward packets such as
Ethernet frames using AAL5
ATM Service Categories
ATM provides 4 service categories:
CBR (Constant Bit Rate): A constant bandwidth is reserved and
guaranteed by the network
UBR (Unspecified Bit Rate): Data is transmitted when bandwidth is
available, and not when bandwidth is not available
ABR (Available Bit Rate): The network will provide feedback about
network congestion, under the assumption the node will adjust its
transmission to meet the current availability of network bandwidth
VBR (Variable Bit Rate): A minimum bandwidth is reserved and
guaranteed by the network, although available bandwidth may
increase/peak above this value
• RT (Real Time): Fluctuation of bandwidth is minimized
Used for non-guaranteed streaming audio/video
• NRT (Non Real Time): Any bandwidth available is used
Used for downloads