Traffic shaping is a
bandwidth management
Bandwidth management is the process of measuring and controlling the communications (traffic, packets) on a network link, to avoid filling the link to capacity or overfilling the link,https://www.internetsociety.org/wp-content/uploads/2017/08/BWro ...
technique used on
computer networks
A computer network is a set of computers sharing resources located on or provided by network nodes. The computers use common communication protocols over digital interconnections to communicate with each other. These interconnections are ma ...
which delays some or all
datagram
A datagram is a basic transfer unit associated with a packet-switched network. Datagrams are typically structured in header and payload sections. Datagrams provide a connectionless communication service across a packet-switched network. The del ...
s to bring them into compliance with a desired ''traffic profile''. Traffic shaping is used to optimize or guarantee performance, improve
latency, or increase usable
bandwidth
Bandwidth commonly refers to:
* Bandwidth (signal processing) or ''analog bandwidth'', ''frequency bandwidth'', or ''radio bandwidth'', a measure of the width of a frequency range
* Bandwidth (computing), the rate of data transfer, bit rate or thr ...
for some kinds of packets by delaying other kinds. It is often confused with
traffic policing, the distinct but related practice of
packet dropping and
packet marking.
The most common type of traffic shaping is application-based traffic shaping. In application-based traffic shaping, fingerprinting tools are first used to identify applications of interest, which are then subject to shaping policies. Some controversial cases of application-based traffic shaping include
bandwidth throttling
Bandwidth throttling consists in the intentional limitation of the communication speed (bytes or kilobytes per second) of the ingoing (received) data and/or in the limitation of the speed of outgoing (sent) data in a network node or in a network ...
of
peer-to-peer file sharing
Peer-to-peer file sharing is the distribution and sharing of digital media using peer-to-peer (P2P) networking technology. P2P file sharing allows users to access media files such as books, music, movies, and games using a P2P software program tha ...
traffic. Many application protocols use
encryption
In cryptography, encryption is the process of encoding information. This process converts the original representation of the information, known as plaintext, into an alternative form known as ciphertext. Ideally, only authorized parties can decip ...
to circumvent application-based traffic shaping.
Another type of traffic shaping is route-based traffic shaping. Route-based traffic shaping is conducted based on previous-
hop
A hop is a type of jump.
Hop or hops may also refer to:
Arts and entertainment
* ''Hop'' (film), a 2011 film
* Hop! Channel, an Israeli TV channel
* ''House of Payne'', or ''HOP'', an American sitcom
* Lindy Hop, a swing dance of the 1920s and ...
or next-hop information.
Functionality
If a link becomes utilized to the point where there is a significant level of
congestion, latency can rise substantially. Traffic shaping can be used to prevent this from occurring and keep latency in check. Traffic shaping provides a means to control the volume of traffic being sent into a network in a specified period (
bandwidth throttling
Bandwidth throttling consists in the intentional limitation of the communication speed (bytes or kilobytes per second) of the ingoing (received) data and/or in the limitation of the speed of outgoing (sent) data in a network node or in a network ...
), or the maximum rate at which the traffic is sent (
rate limiting
In computer networks, rate limiting is used to control the rate of requests sent or received by a network interface controller. It can be used to prevent DoS attacks and limit web scraping.
Research indicates flooding rates for one zombie machine ...
), or more complex criteria such as
generic cell rate algorithm The generic cell rate algorithm (GCRA) is a leaky bucket-type scheduling algorithm for the network scheduler that is used in Asynchronous Transfer Mode (ATM) networks. It is used to measure the timing of cells on virtual channels (VCs) and or Virt ...
. This control can be accomplished in many ways and for many reasons; however traffic shaping is always achieved by delaying packets.
Traffic shaping is commonly applied at the network edges to control traffic entering the network, but can also be applied by the traffic source (for example, computer or
network card
A network interface controller (NIC, also known as a network interface card, network adapter, LAN adapter or physical network interface, and by similar terms) is a computer hardware component that connects a computer to a computer network.
Ear ...
) or by an element in the network.
Uses
Traffic shaping is sometimes applied by traffic sources to ensure the traffic they send complies with a contract which may be enforced in the network by
traffic policing.
Shaping is widely used for
teletraffic engineering
Teletraffic engineering, telecommunications traffic engineering, or just traffic engineering when in context, is the application of transportation traffic engineering theory to telecommunications. Teletraffic engineers use their knowledge of stat ...
, and appears in
domestic ISPs' networks as one of several Internet Traffic Management Practices (ITMPs). Some
ISP
An Internet service provider (ISP) is an organization that provides services for accessing, using, or participating in the Internet. ISPs can be organized in various forms, such as commercial, community-owned, non-profit, or otherwise private ...
s may use traffic shaping to limit resources consumed by peer-to-peer file-sharing networks, such as
BitTorrent.
Data center
A data center (American English) or data centre (British English)See spelling differences. is a building, a dedicated space within a building, or a group of buildings used to house computer systems and associated components, such as telecommunic ...
s use traffic shaping to maintain service level agreements for the variety of applications and the many tenants hosted as they all share the same physical network.
[M. Noormohammadpour, C. S. Raghavendra]
"Datacenter Traffic Control: Understanding Techniques and Trade-offs,"
IEEE Communications Surveys & Tutorials, vol. PP, no. 99, pp. 1-1.
Audio Video Bridging
Audio Video Bridging (AVB) is a common name for the set of technical standards which provide improved synchronization, low-latency, and reliability for switched Ethernet networks. AVB embodies the following technologies and standards:
* IEEE 8 ...
includes an integral traffic-shaping provision defined in IEEE 802.1Qav.
Nodes in an IP network which buffer packets before sending on a link which is at capacity produce an unintended traffic shaping effect. This can appear across, for example, a low bandwidth link, a particularly expensive WAN link or satellite hop.
Implementation
A traffic shaper works by delaying metered traffic such that each packet complies with the relevant
traffic contract
If a network service (or application) wishes to use a broadband network (an ATM network in particular) to transport a particular kind of traffic, it must first inform the network about what kind of traffic is to be transported, and the performanc ...
. Metering may be implemented with, for example, the
leaky bucket
The leaky bucket is an algorithm based on an analogy of how a bucket with a constant leak will overflow if either the average rate at which water is poured in exceeds the rate at which the bucket leaks or if more water than the capacity of the ...
or
token bucket
The token bucket is an algorithm used in packet-switched and telecommunications networks. It can be used to check that data transmissions, in the form of packets, conform to defined limits on bandwidth and burstiness (a measure of the unevenness ...
algorithms (the former typically in
ATM and the latter in
IP networks). Metered packets or cells are then stored in a
FIFO buffer, one for each separately shaped class, until they can be transmitted in compliance with the associated traffic contract. Transmission may occur immediately (if the traffic arriving at the shaper is already compliant), after some delay (waiting in the buffer until its scheduled release time) or never (in case of
packet loss
Packet loss occurs when one or more packets of data travelling across a computer network fail to reach their destination. Packet loss is either caused by errors in data transmission, typically across wireless networks, or network congestion.Kur ...
).
Overflow condition
All traffic shaper implementations have a finite buffer, and must cope with the case where the buffer is full. A simple and common approach is to drop traffic arriving while the buffer is full
a strategy known as
tail drop
Tail drop is a simple queue management algorithm used by network schedulers in network equipment to decide when to drop packets. With tail drop, when the queue is filled to its maximum capacity, the newly arriving packets are dropped until the qu ...
and which results in traffic policing as well as shaping. A more