Enterprise QoS. Tim Chung Google Corporate Netops Architecture Nanog 49 June 15th, 2010



Similar documents
"Charting the Course to Your Success!" QOS - Implementing Cisco Quality of Service 2.5 Course Summary

Implementing Cisco Quality of Service QOS v2.5; 5 days, Instructor-led

IMPLEMENTING CISCO QUALITY OF SERVICE V2.5 (QOS)

Configuring Flexible NetFlow

Description: To participate in the hands-on labs in this class, you need to bring a laptop computer with the following:

Technology Overview. Class of Service Overview. Published: Copyright 2014, Juniper Networks, Inc.

Cisco IOS Flexible NetFlow Technology

IPv6 network management. Where and when?

IPv6 network management. 6DEPLOY. IPv6 Deployment and Support

Certes Networks Layer 4 Encryption. Network Services Impact Test Results

SEC , Cisco Systems, Inc. All rights reserved.

Cisco Performance Monitor Commands

IP videoconferencing solution with ProCurve switches and Tandberg terminals

Cisco Integrated Services Routers Performance Overview

NetFlow The De Facto Standard for Traffic Analytics

Juniper Networks J-series Services Routers Quality of Service (QoS)

Overview. Why use netflow? What is a flow? Deploying Netflow Performance Impact

WAN Optimization in MPLS Networks- the Transparency Challenge!

APPLICATION NOTE 211 MPLS BASICS AND TESTING NEEDS. Label Switching vs. Traditional Routing

Configuring NetFlow-lite

Technology Overview. Lawful Intercept Using Flow-Tap. Published: Copyright 2014, Juniper Networks, Inc.

NetFlow/IPFIX Various Thoughts

PANDORA FMS NETWORK DEVICES MONITORING

Lab Developing ACLs to Implement Firewall Rule Sets

Quality of Service Analysis of site to site for IPSec VPNs for realtime multimedia traffic.

This topic lists the key mechanisms use to implement QoS in an IP network.

REAL-TIME PERFORMANCE MONITORING ON JUNIPER NETWORKS DEVICES

DAY ONE: SECURING THE ROUTING ENGINE ON M, MX, AND T SERIES

Configuring an efficient QoS Map

Internetworking II: VPNs, MPLS, and Traffic Engineering

Configuring NetFlow. Information About NetFlow. NetFlow Overview. Send document comments to CHAPTER

Cisco NetFlow TM Briefing Paper. Release 2.2 Monday, 02 August 2004

PANDORA FMS NETWORK DEVICE MONITORING

Chapter 4 Rate Limiting

Firewall VPN Router. Quick Installation Guide M73-APO09-380

PALO ALTO SAFE APPLICATION ENABLEMENT

A host-based firewall can be used in addition to a network-based firewall to provide multiple layers of protection.

Configuring NetFlow. Information About NetFlow. NetFlow Overview. Send document comments to CHAPTER

Introduction to Cisco IOS Flexible NetFlow

Cisco CCNP Optimizing Converged Cisco Networks (ONT)

ISTANBUL. 1.1 MPLS overview. Alcatel Certified Business Network Specialist Part 2

Netflow Overview. PacNOG 6 Nadi, Fiji

Flow Monitor for WhatsUp Gold v16.2 User Guide

Securing Networks with Juniper Networks

MP PLS VPN MPLS VPN. Prepared by Eng. Hussein M. Harb

Real-Time Performance Monitoring on

Introduction to Netflow

Overview. Firewall Security. Perimeter Security Devices. Routers

DHCP, ICMP, IPv6. Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley DHCP. DHCP UDP IP Eth Phy

Cisco Configuring Commonly Used IP ACLs

DS3 Performance Scaling on ISRs

Jive Core: Platform, Infrastructure, and Installation

NetFlow-Lite offers network administrators and engineers the following capabilities:

VoIP Bandwidth Considerations - design decisions

Chapter 2 - The TCP/IP and OSI Networking Models

and reporting Slavko Gajin

Outline VLAN. Inter-VLAN communication. Layer-3 Switches. Spanning Tree Protocol Recap

How to Keep Video From Blowing Up Your Network

RFC 2547bis: BGP/MPLS VPN Fundamentals

Open Source in Network Administration: the ntop Project

IPV6 流 量 分 析 探 讨 北 京 大 学 计 算 中 心 周 昌 令

Chapter 5 Configuring QoS

- Multiprotocol Label Switching -

Load Balance Router R258V

AT&T Managed IP Network Service (MIPNS) MPLS Private Network Transport Technical Configuration Guide Version 1.0

Multi-Homing Dual WAN Firewall Router

Cisco IOS Flexible NetFlow Command Reference

Cisco - Catalyst 2950 Series Switches Quality of Service (QoS) FAQ

Network traffic monitoring and management. Sonia Panchen 11 th November 2010

WAN OPTIMIZATION. Srinivasan Padmanabhan (Padhu) Network Architect Texas Instruments, Inc.

IPv6 network management

Network Monitoring and Management NetFlow Overview

Stream Deployments in the Real World: Enhance Opera?onal Intelligence Across Applica?on Delivery, IT Ops, Security, and More

Configuring QoS in a Wireless Environment

Quality of Service (QoS) for Enterprise Networks. Learn How to Configure QoS on Cisco Routers. Share:

Configuring QoS and Per Port Per VLAN QoS

How To Lower Data Rate On A Network On A 2Ghz Network On An Ipnet 2 (Net 2) On A Pnet 2 On A Router On A Gbnet 2.5 (Net 1) On An Uniden Network On

Flow Monitor for WhatsUp Gold v16.1 User Guide

PREPARED FOR ABC CORPORATION

IPv6, Perspective from small to medium ISP

5. DEPLOYMENT ISSUES Having described the fundamentals of VoIP and underlying IP infrastructure, let s address deployment issues.

Digi Connect WAN Application Helper NAT, GRE, ESP and TCP/UPD Forwarding and IP Filtering

NetStream (Integrated) Technology White Paper HUAWEI TECHNOLOGIES CO., LTD. Issue 01. Date

Configure Policy-based Routing

OpenFlow and Software Defined Networking presented by Greg Ferro. OpenFlow Functions and Flow Tables

Monitoring and analyzing audio, video, and multimedia traffic on the network

Understanding Quality of Service on the Catalyst 6500 Switch

SIMPLE NETWORK MANAGEMENT PROTOCOL (SNMP)

Cisco Certified Security Professional (CCSP)

Voice Over IP Performance Assurance

Network Management for Common Topologies How best to use LiveAction for managing WAN and campus networks

Network Security. Computer Security & Forensics. Security in Compu5ng, Chapter 7. l Network Defences. l Firewalls. l Demilitarised Zones

A message from Plixer International:

Transcription:

Enterprise QoS Tim Chung Google Corporate Netops Architecture Nanog 49 June 15th, 2010

Agenda Challenges Solu5ons Opera5ons Best Prac5ces

Note: This talk pertains to Google enterprise network only, not google.com

Challenges WAN connec5ons are bandwidth boflenecks QoS essen5al for latency and jifer sensi5ve real 5me apps Many applica5ons require different QoS level Applica5on classifica5on granularity necessary on WAN Links Interac5on with different MPLS provider requires different egress policies Mul5- Vendor network Diverse Hardware: 4 Queue vs 8 Queue systems QoS over IPSec poses interes5ng challenge Performance: Need line rate Tput QoS MF Classifica5on changes/update on weekly basis Sta5s5cal analysis for capacity planning

Classifica5on as Close to Edge as Possible

MF Classifica5on on LAN Switching To trust or not to trust Decide where and what you want to classify LAN switches typically use port based classifica5on Permit tcp any any eq 80 Permit tcp any eq 80 any Permit udp any any range 12000 13000 Permit udp any range 12000 13000 any Permit udp any range 12000 13000 any range 12000 13000 Port based classifica5on is not ideal but may be sufficient

QoS Classifica5on at the WAN Links

MF Classifica5on on WAN links Conges5on at the WAN links More Granular classifica5on needed to minimize misclassifica5on Port based classifica5on not sufficient Granular classifica5on prevents flows from gaming the system by ge_ng into a befer QoS class Precious WAN bandwidth is u5lized more effec5vely Classifica5on based on Layer 4 is imperfect!

MF Classifica5on Granularity term qos- App1 { from { source- address { 10.32.0.0/24; 172.24.1.0/25; 192.168.0.0/20; 192.168.28.0/22; 192.168.32.0/19; 192.168.64.0/18; 192.168.128.0/17; } des5na5on- address { 10.11.0.1/32; 10.32.0.2/32; 172.16.1.0/24; } protocol udp; source- port 2001-3002; des5na5on- port 2001-3002; } then { count CS4- app1; forwarding- class CS4; } }

Juniper Commit Scripts Goal: Manage and deploy one generic MF classifier on all edge plaiorm Challenges 4 Queue Systems - M7i/M10i 8 Queue Systems J/M120/MX/M7i/10i with CFEB- E Unique Rou5ng- instances on a subset of routers Unique Business logic/requirements Use commit script to modify forwarding- class and PLP to tailor it for 4 Queue vs 8 Queue plaiorms Use commit scripts to customize MF classifier for routers with rou5ng instances

Juniper Commit Scripts Use commit script to customize shaping rate based on Bandwidth statement, not Port speed Use commit scripts look for bandwidth statement, interface tag, plaiorm, and WAN provider and tailor policer/shaper Remove/modify policer/shaper if input values change Business logic encoded inside commit scripts

Policers (Cascading markdown) Traffic agreement with transit provider may require sop policers on your CE router E.g., If exceed 500 Mbps budget of CS4, then drop Place control back on customer (CE) side Use a sop policer to mark down excess traffic over 500 Mbps to a lower classs Account and graph bps of markdown

Policers (Cascading markdown) Example so@ policer config set firewall family inet filter markdown interface- specific set firewall family inet filter markdown term count- CS3- pre from forwarding- class CS3 set firewall family inet filter markdown term count- CS3- pre then count count- CS3- pre set firewall family inet filter markdown term count- CS3- pre then next term set firewall family inet filter markdown term police- CS3 from forwarding- class CS3 set firewall family inet filter markdown term police- CS3 then policer markdown- CS3 set firewall family inet filter markdown term police- CS3 then next term set firewall family inet filter markdown term count- CS3 from forwarding- class CS3 set firewall family inet filter markdown term count- CS3 then count count- CS3- post set firewall family inet filter markdown term count- CS3 then accept Calculate BPS markdown (count- CS3- pre - count- CS3- post) * 8 = xxxx Mbits marked down by policer - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - interval (sec)

Policers (Cascading markdown) set firewall policer markdown- CS3 filter- specific set firewall policer markdown- CS3 if- exceeding bandwidth- limit 500m set firewall policer markdown- CS3 if- exceeding burst- size- limit 20250000 set firewall policer markdown- CS3 then loss- priority low set firewall policer markdown- CS3 then forwarding- class CS2 set firewall policer markdown- CS2 filter- specific set firewall policer markdown- CS2 if- exceeding bandwidth- limit 600m set firewall policer markdown- CS2 if- exceeding burst- size- limit 20250000 set firewall policer markdown- CS2 then loss- priority high set firewall policer markdown- CS2 then forwarding- class CS1

Opera5onal aspects of QoS Requirements Need to effect QoS changes globally in 10 mins Need to account for traffic in each class Solu5on Use Capirca Meta Language to generate Juniper and Cisco syntax and push ACLs to all edge devices Use firewall counters to track byte and packet count Use SNMP to poll counters and graph them Counters provide alterna5ve look at u5liza5on graph compared to neilow exports

Capirca (hfp://code.google.com/p/capirca/) Built by Google Security team for ACL management Open sourced under Apache2 license in Sept 2009 Same tool used to generate QoS MF classifica5on ACL as security ACLs One policy file, generate many vendor specific ACLs ( Out of One, Many

ACL Genera5on Process (high level) Network Definition Policy File Service Definition cisco generator juniper generator iptables generator Generated ACL Filter

Network Defini5on File RFC1918 = 10.0.0.0/8 # non-public 172.16.0.0/12 # non-public 192.168.0.0/16 # non-public INTERNAL = RFC1918 LOOPBACK = 127.0.0.1/32 # loopback ::1/128 # ipv6 loopback NYC_OFFICE = 100.1.1.0/24 # new york office SFO_OFFICE = 100.2.2.0/24 # san francisco office CHI_OFFICE = 100.3.3.0/24 # chicago office OFFICES = NYC_OFFICE SFO_OFFICE CHI_OFFICE

Service Defini5on File WHOIS = 43/udp SSH = 22/tcp TELNET = 23/tcp SMTP = 25/tcp VOICE = 12000-13000/udp MAIL_SERVICES = SMTP ESMTP SMTP_SSL POP_SSL DNS = 53/tcp 53/udp

Example Policy File header { comment:: ACL for QoS classification" target:: juniper qosfilter not-interface-specific } term qos-voice-cs4 { comment:: Voice Traffic" source-address:: CORP_VOICE destination-address:: CORP_VOICE source-port:: VOICE destination-port:: VOICE protocol:: udp counter:: CS4-Voice qos:: CS4 policer:: markdown-cs4 action:: accept }

firewall { family inet { replace: /* ** ACL for QoS classification" */ filter qosfilter { /* ** Voice Traffic */ term qos-voice-cs4 { from { source-address { 172.22.0.0/16; } destination-address { 172.22.0.0/16; } protocol udp; source-port 1200-1300; destination-port 1200-1300; } then { count CS4-Voice; policer markdown-cs4; forwarding-class CS4; accept; } } Generated Vendor ACL

QoS over IPSec You will always have offices that need to IPSec back to headquarters due to circuit availability Use BGP as routing protocol to glue all offices together Juniper Make sure DSCP bit are written to inner header and outer header Juniper services PIC by default copies inner DSCP to outer Rewrite rule necessary on inside of SP interface This is slightly counterintuitive. Inside or outside is from the perspective of the PFE, not the services PIC MF Classifier necessary on inside interface of SP if you run BGP over IPSec to learn routes; otherwise, BGP gets dumped into BE. Cisco Use the pre-classify knob to classify flows before encryption

Best Prac5ces Need to know your traffic pafern How many Apps do you care to classify? Move applica5ons in higher QoS class to the top of the firewall filter Need to know your Plaiorm Juniper Flows matching the last term of a complex 100 term firewall filters with firewall counters enabled will not yield Line rate Tput at 64 byte frames Check to see if you have info cell drops Cisco Be aware of TCAM size limita5ons

Best Prac5ces - Con5nue Test everything! You need your own Qualifica5on Lab/Testbed You need to weigh in on cost vs performance Work with vendor on bugs/feature requests before going live in produc5on Monitor everything Snmp poll appropriate QoS MIBs Neilow Know your usage pafern/trend

References Google Capirca hfp://code.google.com/p/capirca/ Default Rou5ng Engine Protocol Queue Assignment hfp://www.juniper.net/techpubs/sopware/junos/junos92/swconfig- cos/default- rou5ng- engine- protocol- queue- assignments.html#id- 10346810 Understanding ACL on Catalyst 6500 hfp://www.cisco.com/en/us/products/hw/switches/ps708/ products_white_paper09186a00800c9470.shtml Configuring QoS for Virtual Private Networks hfp://www.cisco.com/en/us/docs/ios/12_2/qos/configura5on/guide/qcfvpn.html