Skip to main content

Quality of Service (QoS) - Key concepts

 Quality of Service Overview

QoS is crucial for managing bandwidth, latency, jitter, and packet loss, which impact application performance, especially for real-time services like voice and video. Key quality issues include lack of bandwidth, latency (packet delay), jitter (variability in delay), and packet loss (lost data during transmission). Technical Tip: Keep latency under 150 ms for real-time traffic and packet loss below 1%.

End-to-End Layer 3 QoS using MQC

DiffServ QoS Model

DiffServ is scalable and classifies traffic into classes, marking it for varying levels of priority. Technical Tip: Use DiffServ for efficient traffic management at the network edge for classification and marking, while relying on Per-Hop Behavior (PHB) in the core network.

CoS and DSCP Mapping

CoS marks traffic in Layer 2 headers, while DSCP marks it at Layer 3 for end-to-end traffic prioritization. Technical Tip: DSCP is more versatile for end-to-end QoS as CoS is limited to Layer 2 domains.

Classification and Marking

Classification identifies traffic based on multiple factors (Layer 2 to Layer 7), and marking assigns a QoS value for treatment. Technical Tip: Always classify and mark traffic close to the network ingress to optimize bandwidth.

Network-Based Application Recognition (NBAR)

NBAR classifies applications using Layer 7 inspection. Technical Tip: Use NBAR with Modular QoS CLI (MQC) for advanced traffic classification, and update NBAR with Packet Description Language Modules (PDLM) for new protocols.

Policing and Shaping

Policing drops or marks traffic that exceeds bandwidth limits, while shaping buffers excess traffic to smooth it out. Technical Tip: Use shaping for outbound traffic at network edges to comply with service provider limits, and policing to enforce strict traffic limits. Example:

policy-map POLICING_POLICY

 class CLASS1

  police 1000000 20000 exceed-action drop

Congestion Management and Avoidance

Congestion management uses queuing to prioritize traffic (e.g., CBWFQ), while avoidance tools like WRED preemptively drop packets to prevent congestion. Technical Tip: Use WRED to reduce tail drops and prevent global synchronization issues.

Queueing Algorithms

Different queuing methods include Priority Queueing (PQ), which gives absolute priority, and Class-Based Weighted Fair Queuing (CBWFQ), which allocates bandwidth to multiple queues. Technical Tip: Be cautious with PQ as it can starve lower-priority traffic.

Auto QoS

AutoQoS simplifies the setup of QoS for voice and video applications by automating configurations. Technical Tip: Enable AutoQoS before manual QoS setup to ensure proper interface settings. Use:

interface gigabitethernet0/1

 auto qos voip trust

Advanced QoS Concepts

RSVP

RSVP reserves bandwidth for real-time applications like voice and video. Technical Tip: Implement RSVP for applications that need guaranteed bandwidth, marking traffic with DSCP for Expedited Forwarding (EF).

Hierarchical QoS (HQoS)

HQoS manages traffic across different levels of the network, such as service provider and enterprise levels. Technical Tip: Use HQoS to manage traffic for different service levels efficiently, especially in environments with multiple service agreements.

QoS Configuration Example

class-map VOICE

 match ip rtp 16384 16383

policy-map VOICE_POLICY

 class VOICE

  set dscp ef

  priority 300

 class class-default

  bandwidth 1000

Key QoS Technical Tips

Classification and marking should be done at the network ingress. Use shaping to buffer excess traffic and avoid packet loss, and employ policing for strict rate enforcement. WRED prevents tail drops and mitigates global synchronization problems in congestion.

Comments

Popular posts from this blog

How to import Putty Saved Connections to mRemoteNG

Just started using mRemoteNG and its being very cool to connect to different remote connection with different protocols e.g Window Remote Desktop, VNC to Linux, SSH, HTTP connection etc. from a single application. As new user I configured some remote desktop connection which was quite easy to figure out. But when I wanted to add SSH connections, it came in my mind to import all of the saved connections in the putty. But I couldn't figure it out how can it be done, though it was quite easy and here are the steps. Open your mRemoteNG Create a folder if you want segregation of multiple networks Create a new connection Enter the IP address of remote server under connection in Config pane Under the config pane, select protocol " SSH version 2 ".  Once you select protocol to SSH version 2 you are given option to import putty sessions, as shown in the snap below. In the above snap, I have imported CSR-AWS session from my saved sessions in Putty.

Authoritative DNS Servers Delegation and Internal DNS Explained

DNS (Domain Name System) plays a critical role in how users and systems find resources on the internet or within internal networks. Whether it's managing an internal domain in an enterprise or delegating parts of a domain for traffic distribution, DNS setups vary widely depending on needs. In this blog post, we’ll break down the different types of DNS setups, including authoritative DNS servers, DNS delegation, and how internal DNS functions within organizations. 1. Authoritative DNS Server An Authoritative DNS server is the final source of truth for a specific domain. When someone queries a domain (e.g., example.com ), the authoritative DNS server for that domain holds the DNS records (A records, CNAME, MX, etc.) and responds with the corresponding IP address. Key Points: Who can host it? Authoritative DNS servers are often hosted by domain registrars (e.g., GoDaddy, Namecheap) or cloud DNS providers (e.g., AWS Route 53, Cloudflare). However, organizations can also host their ...

BGP MED: Managing Inbound Traffic with Multi-Exit Discriminator

The Multi-Exit Discriminator (MED) is used in BGP to control inbound traffic into your AS. It tells a neighboring AS which entry point into your network it should prefer when there are multiple links between your AS and the neighboring AS. The lower the MED value , the more preferred the path. MED is only honored between the same neighboring AS . Example Scenario : You are connected to ISP1 via two routers, CE1 and CE2 , and want to control which router ISP1 uses to send traffic into your AS. Network Topology : CE1 (connected to ISP1): 10.0.1.1/30 CE2 (connected to ISP1): 10.0.2.1/30 iBGP Router (Internal) connected to both CE1 (10.0.1.2/30) and CE2 (10.0.2.2/30). Configuration on CE1 (Lower MED, More Preferred) : Create a route map to set the MED to 50 for CE1: route-map SET_MED permit 10 set metric 50 Apply this route map to the neighbor in the BGP configuration for CE1: router bgp 65001 neighbor 10.0.1.1 remote-as 65000 neighbor 10.0.1.1 route-map SET_MED out Configuratio...