Cell switching is a method of transmitting information wherein a frame of information is broken into equal sized units called "cells." The cells of information are usually grouped into larger units called "frames." The individual cells of information are transmitted from a source node to a destination node through a network constructed of communication lines and switches. At the destination node, the individual cells of information are reconstructed into a frame.
Each frame of information usually includes some type of data integrity mechanism such as a data integrity value that is used to determine if the information in the frame was reliably transmitted across the network. If any information in the frame was corrupted during transmission, then the data integrity value will indicate that a transmission error has occurred.
Digital communication networks have a limited amount of bandwidth such that only a certain amount of information can be transmitted across the network per unit time. To allocate the available bandwidth in a network, a network provider and the network customers enter into a communication "traffic contract" that specifies the rates at which customers may transmit data into the network.
The traffic contract is enforced at the entry point of the network with a traffic policing function at the network interface. Each arriving cell is checked to determine whether the cell complies with the traffic contract. If a cell is deemed non-conforming (the cell does not comply with the traffic contract), the network provider may discard the cell. Alternatively, the network provider may transmit the non-conforming cell of information at a reduced priority. Reduced priority cells are the first cells to be discarded when congestion is detected within the network. An example of a traffic policing function is the "leaky bucket" algorithm as described in CCITT Document I.371.
When a network provider discards a single non-conforming data cell from a frame, the data integrity mechanism for that frame will indicate a transmission error has occurred while transmitting the frame. When transmission errors occur during the transmission of a frame, the entire frame is discarded by the receiver and must be retransmitted across the network. Thus, all the individual cells from a corrupted frame must be retransmitted regardless whether or not these cells contained transmission errors. The result is that the percent of frames that must be retransmitted may be much larger than the percent of cells discarded by the network. Additionally, the network wastes resources by transmitting cells from corrupted frames that midst ultimately be retransmitted from the sender to the receiver.