Understanding Class of Service (CoS) Profiles
When a network experiences congestion and delay, some packets must be prioritized to avoid random loss of data. Class of service (CoS) (also known as QoS) accomplishes this prioritization by dividing similar types of traffic, such as e-mail, streaming video, voice, large document file transfer, into classes. You then apply different levels of priority, such as those for throughput and packet loss, to each group, and thereby control traffic behavior. For example, when packets must be dropped, you can ensure that packet loss takes place according to your configured rules. CoS also enables you to rewrite the Differentiated Services code point (DSCP), IP precedence, or 802.1p CoS bits of packets exiting a specific interface, thus enabling you to tailor outgoing packets to meet the network requirements of remote peers.
On Data Center Switching devices, CoS can be used to configure Ethernet interfaces to support Fibre Channel over Ethernet (FCoE) traffic.
How Would I Use CoS (also known as QoS)?
On an Ethernet trunk, you can mark frames with a class-of-service (CoS) value. CoS is used to define trunk connections as full-duplex, incoming only, or outgoing only.
Network devices such as routers and switches can be configured to use existing CoS values on incoming packets from other devices (trust mode), or can rewrite the CoS values to something completely different. Layer 2 markings also can extend to the WAN; for example, with a frame relay network. CoS is usually limited to use within an organization's intranet.
With legacy telephone systems, CoS can be used to define the permissions an extension will have on a private branch exchange (PBX) or Centrex. Some users might need extended voicemail message retention or the ability to forward calls to a cell phone, while others have no need to make calls outside the office. Permissions for a group of extensions can be changed by modifying a CoS variable applied to the entire group.
CoS configurations can be complicated, so unless it is required, we recommend that you do not alter the default class names or queue number associations.
How Do I Create CoS Groups?
Use 802.1Q tagged VLANs to group users and enable CoS to set priorities supported by downstream devices.
How Is CoS Different From QoS?
CoS operates only on 802.1Q VLAN Ethernet at the data link layer (layer 2), while quality-of-service (QoS) mechanisms operate at the IP network layer (layer 3). 802.1p Layer 2 tagging can be used by QoS to differentiate and shape network traffic.
How Does CoS Work?
CoS is a 3-bit field in an Ethernet frame header when 802.1Q VLAN tagging has been applied. The 3-bit field specifies a priority value between 0 and 7 that can be used by QoS to differentiate and shape network traffic. Different devices use different priority values. When you choose to create a CoS profile, Connectivity Services Director displays the priority based on the device family that you chose. You can modify these or add more priority values
It is helpful to think of forwarding classes as output queues. In effect, the end result of classification is the identification of an output queue for a particular packet. For a classifier to assign an output queue to each packet, it must associate the packet with one of the forwarding classes listed in Table 1.
Best-effort is a backward compatibility feature.
Assured-forwarding offers a high-level of assurance that the packets are delivered as long as the packet flow from the client stays within a certain Service profile that you define.
Multicast assured-forwarding offers a high level of assurance that the multicast packets are delivered as long as the packet flow from the customer stays within a certain Service profile that you define. The software accepts excess traffic, but it applies a tail drop profile to determine if the excess packets are dropped and not forwarded. Up to two drop probabilities (low and high) are defined for this service class.
Multicast expedited-forwarding delivers assured bandwidth, low loss, low delay, and low delay variation (jitter) end-to-end for multicast packets in this service class. The software accepts excess traffic in this class, but in contrast to the multicast assured forwarding class, out-of-profile multicast expedited-forwarding class packets can be forwarded out of sequence or dropped.
Multicast best-effort does not apply any special CoS handling to the multicast packets. These packets are usually dropped under congested network conditions.
Expedited-forwarding delivers assured bandwidth, low loss, low delay, and low delay variation (jitter) end-to-end for packets in this service class.
Note: The forwarding classes multicast expedited-forwarding, multicast assured-forwarding, and multicast best-effort are applicable to ACX, M, MX, PTX Series routers.
Differentiated Services indicate how a packet is forwarded. Because the three bits used in Layer 2 simple priority tagging provide minimal direction in managing traffic, the protocol Differentiated Services (DS or DiffServ) was developed to enhance traffic differentiation.
What CoS Parameters Can I Control?
You can use CoS profiles to group a set of class of service (CoS) parameters and apply it to one or more interfaces. You can configure the following parameters within a CoS profile:
Classifiers—Packet classification refers to the examination of an incoming packet. This function associates the packet with a particular CoS servicing level.
Scheduler maps—Schedulers define the properties of output queues. These properties include the amount of interface bandwidth assigned to the queue, the size of the memory buffer allocated for storing packets, the priority of the queue, and the drop profiles associated with the queue. You associate the schedulers with forwarding classes by means of scheduler maps. You can then associate each scheduler map with an interface, thereby configuring the queues, packet schedulers, and tail drop processes that operate according to this mapping.
Rewrite values—A rewrite rule modifies the appropriate CoS bits in an outgoing packet. Modification of CoS bits enables the next downstream device to classify the packet into the appropriate service group. Rewriting or marking outbound packets is useful when the device is at the border of a network and must alter the CoS values to meet the policies of the targeted peer.
Traffic-control profile—Traffic-control profiles enable traffic limitation of a certain class to a specified bandwidth and burst size. Packets exceeding the limits can be discarded, or can be assigned to a different forwarding class, a different loss priority, or both.
What Are the Default CoS Traffic Types?
On EX Series switches, the system provides you with these four predefined traffic types—Data, Voice, Video, and Network Control—with these default traffic configuration and shaping details:
Data—Forwarding queue 0 (nd_best-effort), Buffer size 50%, Bandwidth reserved 30%
Voice—Forwarding queue 5 (nd_expedited-forwarding), Buffer size 20%, Bandwidth reserved 0%
Video—Forwarding queue 4 (nd_video-forwarding), Buffer size 20%, Bandwidth reserved 70%
Network Control—Forwarding queue 7 (nd_network-control), Buffer size 10%, Bandwidth reserved 0%
For Campus Switching ELS, the system provides you with these four predefined traffic types—Data, Voice, Video, and Network Control—with these default traffic configuration and shaping details:
Data—Forwarding queue 0 (nd_best-effort), Buffer size 50%, Bandwidth reserved 30%
Voice—Forwarding queue 1 (nd_expedited-forwarding), Buffer size 20%, Bandwidth reserved 0%
Video—Forwarding queue 2 (nd_video-forwarding), Buffer size 20%, Bandwidth reserved 70%
Network Control—Forwarding queue 3 (nd_network-control), Buffer size 10%, Bandwidth reserved 0%
For Campus Switching ELS with Hierarchal Post Scheduling (Juniper Networks EX4600 Ethernet switches), Connectivity Services Director provides you with predefined forwarding classes—nd_cs_best-effort, nd_cs_video-forwarding, nd_cs_expedited-forwarding, and nd_cs_network-control. These forwarding classes are grouped under two priority groups—data_video_pg and voice_control_pg.
On data center switches, the system provides you with forwarding classes—nd_dc_best-effort, nd_dc_network-control, nd_dc_fcoe, nd_dc_no-loss, and nd_dc_mcast. These forwarding classes are grouped under three priority groups—data_control_pg, fcoe_noloss_pg, and multicast_pg.
For both Campus Switching ELS with Hierarchal Post Scheduling and Date Center Switching, you can modify and customize each of these priority groups and forwarding classes. For more details, see Creating and Managing Wired CoS Profiles.
Data Center Switching CoS Configuration
For data center switching devices, these additional CoS features are available:
Hierarchical Port Scheduling (ETS)—Hierarchical port scheduling (Enhanced Transmission Selection, or ETS) is a two-tier process that provides better port bandwidth utilization and greater flexibility to allocate resources to queues and to groups of queues.
Priority-based flow control (PFC)—A link-level flow control mechanism.
How Do I Implement Class of Service?
CoS can be implemented from the MSS CLI, from Connectivity Services Director. RingMaster configures unicast traffic but does not configure multicast traffic. For directions to implement CoS from Connectivity Services Director, see Creating and Managing Wired CoS Profiles.
Editing Discovered CoS Profiles
Duplicate scheduler configuration is deployed to the device when you edit a CoS profile that are automatically created by Connectivity Services Director as part of device discovery or out-of-band changes. In CoS configuration, a single classifier can be associated to multiple ports regardless of the other CoS configuration. When Connectivity Services Director discovers a device with such configuration it will create multiple profiles, based on the difference in other CoS configurations, and mapped to same classifier configuration. If you modify classifier settings in such a CoS profile that is created automatically by Connectivity Services Director, Connectivity Services Director cannot modify the configuration because it is mapped to multiple profiles. Whenever you modify such a CoS profile that is created automatically, Connectivity Services Director will create new classifier settings configuration on the device and map the same to it, without affecting the existing classifier settings. Newly created classifier settings will have a name generated based on the profile name. Even if only one profile is mapped to the classifier settings, Connectivity Services Director creates new classifier settings and the old settings are orphaned.
This behavior is applicable to both hierarchical and non hierarchical profiles, and is applicable for congestion notification profile name, traffic control profile name, scheduler map name, classifier name and rewrite rule settings.