330 likes | 349 Views
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
E N D
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
Virtual Circuit #15 M2 M1 M3 M2 M1 M7 M6 M1 M5 M3 M2 M8 M4 M5 M1 M4 M7 M2 M6 M3 M7 M4 M6 M5 M3 M8 M2 M1 M2 M6 M8 M7 M3 M5 M4 M1 M8 M6 M4 M1 M5 M2 M3 M7 M3 M2 M1 M4 M6 M3 M2 M5 M4 M1 M8 M7 M2 M1 M4 M6 M3 M5 M2 M4 M3 M1 M5 M2 M7 M8 M5 M1 M6 M3 M4 M8 M3 M7 M2 M4 M6 M1 M5 Disconnect: N1 M3 M5 M4 M2 M7 M8 M6 ATM Messaging N1 S5 S3 S6 S2 Connect: N1 Connect: N1 M1 S4 N2 S1
M4 M5 M6 M7 M3 M5 M6 M4 M8 M7 M8 M8 M5 M6 M7 M7 M8 M6 M7 M8 Disconnect: N1 ATM Messaging N1 S5 M8 S3 S6 S2 S4 N2 S1
ATM Cell Format: Data Cells • 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 GFC VPI VCI PT HEC Data CLP 8 16 3 1 8 48x8 4
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: • Permanent Virtual Circuits • 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 Application Software Device Driver (Data Link) Adaptation Layer Hardware 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
H H H H D D D D CRC AAL5 Logical Packets ATM Cells D CRC AAL5 Logical Packet
ATM Switching Application Application Device Driver (Data Link) Device Driver (Data Link) Adaptation Layer Adaptation Layer AAL5 Cell Transport Cell Transport Cell Transport Signal Signal Signal Switch
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 non-TCP/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 hardware-oriented
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