<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Aaron&#039;s Worthless Words &#187; marking</title>
	<atom:link href="http://aconaway.com/tag/marking/feed/" rel="self" type="application/rss+xml" />
	<link>http://aconaway.com</link>
	<description>It&#039;s possible that someone somewhere needs to see this.</description>
	<lastBuildDate>Fri, 10 Feb 2012 02:36:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>ONT Notes &#8211; Queuing</title>
		<link>http://aconaway.com/2010/01/23/ont-notes-queuing/</link>
		<comments>http://aconaway.com/2010/01/23/ont-notes-queuing/#comments</comments>
		<pubDate>Sun, 24 Jan 2010 04:22:06 +0000</pubDate>
		<dc:creator>Aaron Conaway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[642-845]]></category>
		<category><![CDATA[cbwfq]]></category>
		<category><![CDATA[ccnp]]></category>
		<category><![CDATA[certification]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[classification]]></category>
		<category><![CDATA[diffserv]]></category>
		<category><![CDATA[fifo]]></category>
		<category><![CDATA[llq]]></category>
		<category><![CDATA[marking]]></category>
		<category><![CDATA[ont]]></category>
		<category><![CDATA[policing]]></category>
		<category><![CDATA[pq]]></category>
		<category><![CDATA[qos]]></category>
		<category><![CDATA[queueing]]></category>
		<category><![CDATA[queuing]]></category>
		<category><![CDATA[round robin]]></category>
		<category><![CDATA[test]]></category>
		<category><![CDATA[voice]]></category>
		<category><![CDATA[voip]]></category>
		<category><![CDATA[wfq]]></category>

		<guid isPermaLink="false">http://aconaway.com/?p=452</guid>
		<description><![CDATA[Here are some more notes from my studies.  Of course, no one cares about them but me, but it&#8217;s my blog.  I’m sure someone will find it useful.  Please help to correct dumbass mistakes. Congestion Speed mismatch &#8211; traffic leaves a lower-bandwidth interface than the one it came in on Aggregation problem &#8211; lots of links with one egress of equal bandwidth Confluence problem &#8211; a bunch of traffic needs to egress out of the same interface Queuing Transmit queue (TxQ) &#8211; hardware queue; there&#8217;s only one you can&#8217;t touch Software queue &#8211; where packets wait to be sent; there are many queue-types that you modified to police traffic FIFO If I beat you to the router, I leave the router first. Possible long delays, jitter, and starvation Priority queuing (PQ) Four queues High-priority Medium-priority Normal-priority Low-priority Scheduler starts from high and work to low When the high queue is empty, it processes a packet from medium, then starts all over Can you say starvation? Round robin queuing (RR) One packet from this queue, one from the next, etc., then start over again Custom queuing (CQ) Weighted round robin Queues are given weights (bandwidth guarantees) Weighted Fair Queuing (WFQ) Default [...]]]></description>
			<content:encoded><![CDATA[<p>Here are some more notes from my studies.  Of course, no one cares about them but me, but it&#8217;s my blog.  I’m sure someone will find it useful.  Please help to correct dumbass mistakes.</p>
<ul>
<li>Congestion
<ul>
<li>Speed mismatch &#8211; traffic leaves a lower-bandwidth interface than the one it came in on</li>
<li>Aggregation problem &#8211; lots of links with one egress of equal bandwidth</li>
<li>Confluence problem &#8211; a bunch of traffic needs to egress out of the same interface</li>
</ul>
</li>
<li>Queuing
<ul>
<li>Transmit queue (TxQ) &#8211; hardware queue; there&#8217;s only one you can&#8217;t touch</li>
<li>Software queue &#8211; where packets wait to be sent; there are many queue-types that you modified to police traffic</li>
</ul>
</li>
<li>FIFO
<ul>
<li>If I beat you to the router, I leave the router first.</li>
<li>Possible long delays, jitter, and starvation</li>
</ul>
</li>
<li>Priority queuing (PQ)
<ul>
<li>Four queues
<ul>
<li>High-priority</li>
<li>Medium-priority</li>
<li>Normal-priority</li>
<li>Low-priority</li>
</ul>
</li>
<li>Scheduler starts from high and work to low</li>
<li>When the high queue is empty, it processes a packet from medium, then starts all over</li>
<li>Can you say starvation?</li>
</ul>
</li>
<li>Round robin queuing (RR)
<ul>
<li>One packet from this queue, one from the next, etc., then start over again</li>
</ul>
</li>
<li>Custom queuing (CQ)
<ul>
<li>Weighted round robin</li>
<li>Queues are given weights (bandwidth guarantees)</li>
</ul>
</li>
<li>Weighted Fair Queuing (WFQ)
<ul>
<li>Default queuing on slow links ( &lt; E1 )</li>
<li>Divides traffic into flows</li>
<li>Equal bandwidth is given to each flow</li>
<li>Provides faster scheduling to low-volume flows</li>
<li>Provides more bandwidth to higher-priority flows</li>
<li>Flows identified by a hash
<ul>
<li>Source IP</li>
<li>Destination IP</li>
<li>Protocol number</li>
<li>ToS</li>
<li>Source port</li>
<li>Destination port</li>
</ul>
</li>
<li>Each unique has is a new flow</li>
<li>No way to allocate bandwidth among the flows</li>
<li>By default, up to 256 queues are made, but that is changeable to a power of 2 between 16 and 4096</li>
<li>If the max number of flows is reached, queues are reused for other flows</li>
<li>If a queue is full, a packet may be dropped.</li>
<li>WFQ early dropping drops packets when the queue reaches the congestive discard threshold (CDT)</li>
<li>Advantages
<ul>
<li>Simple configuration</li>
<li>No starvation</li>
<li>Guarantee processing of all flows</li>
<li>Drops packets from big-hitter flows</li>
<li>Faster service no low-hitters (interactive) flows</li>
<li>Standard on (nearly) all IOS devices</li>
</ul>
</li>
<li>Disadvantages
<ul>
<li>Classification and scheduling are not configurable</li>
<li>Only on slow links</li>
<li>No guarantee of bandwidth or delay</li>
</ul>
</li>
</ul>
</li>
<li>Class-based Weighted Fair Queuing (CBWFQ)
<ul>
<li>User-defined queues for flexibility</li>
<li>Configured with class-maps via MQC</li>
<li>Weights are calculated based on values give in class-map
<ul>
<li>Bandwidth &#8211; guarantee this much bandwidth</li>
<li>Bandwidth percent &#8211; give me this much of the available bandwidth</li>
<li>Bandwidth remaining percent</li>
</ul>
</li>
<li>Advantages
<ul>
<li>User-defined traffic classes</li>
<li>Each queue gets its own bandwidth</li>
<li>Scalability</li>
</ul>
</li>
<li>Disadvantages
<ul>
<li>No delay guarantee (not good for real-time application like voice)</li>
</ul>
</li>
<li>Configuring
<ul>
<blockquote>
<pre>class-map TESTCM1
 match access-group 100
!
class-map TESTCM2
 match access-group 200
!
policy-map TESTPM
 class TESTCM1
  bandwidth 64
 class TESTCM2
  bandwidth 128</pre>
</blockquote>
</ul>
</li>
</ul>
</li>
<li>Low-latency Queuing
<ul>
<li>Includes strict priority queue for delay-sensitive data</li>
<li>Strict priority queue is policed to avoid starvation of other queues</li>
<li>Configured the same way as normal CBWFQ, but with the <em>priority</em> keyword</li>
<li>This configuration makes <em>TESTCM2</em> a priority queue</li>
<blockquote>
<pre>class-map TESTCM1
 match access-group 100
!
class-map TESTCM2
 match access-group 200
!
policy-map TESTPM
 class TESTCM1
  bandwidth 64
 class TESTCM2
  priority bandwidth 128</pre>
</blockquote>
</ul>
</li>
</ul>
<div class="wp-about-author-containter-around" style="background-color:#ffffff;"><div class="wp-about-author-pic"><img alt='' src='http://1.gravatar.com/avatar/14352aa939196349e4b9f2a272ca5112?s=100&amp;d=&amp;r=G' class='avatar avatar-100 photo' height='100' width='100' /></div><div class="wp-about-author-text"><h3><a href='http://aconaway.com/author/jac/' title='Aaron Conaway'>Aaron Conaway</a></h3><p>I like to lean my head to the left, hit it with the palm of my right hand, and document what knowledge falls out.</p><p><a href='http://aconaway.com' title='Aaron Conaway'>Website</a> - <a href='http://aconaway.com/author/jac/' title='More posts by Aaron Conaway'>More Posts</a> </p></div></div>]]></content:encoded>
			<wfw:commentRss>http://aconaway.com/2010/01/23/ont-notes-queuing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ONT Notes – Classification, Marking, and NBAR</title>
		<link>http://aconaway.com/2010/01/22/ont-notes-classification-marking-and-nbar/</link>
		<comments>http://aconaway.com/2010/01/22/ont-notes-classification-marking-and-nbar/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 16:32:58 +0000</pubDate>
		<dc:creator>Aaron Conaway</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[642-845]]></category>
		<category><![CDATA[autoqos]]></category>
		<category><![CDATA[ccnp]]></category>
		<category><![CDATA[certification]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[classification]]></category>
		<category><![CDATA[diffserv]]></category>
		<category><![CDATA[dscp]]></category>
		<category><![CDATA[marking]]></category>
		<category><![CDATA[ont]]></category>
		<category><![CDATA[policing]]></category>
		<category><![CDATA[qos]]></category>
		<category><![CDATA[test]]></category>
		<category><![CDATA[voice]]></category>
		<category><![CDATA[voip]]></category>

		<guid isPermaLink="false">http://aconaway.com/?p=441</guid>
		<description><![CDATA[Here&#8217;s another set of notes from my ONT studies.  I&#8217;m sure someone will find it useful.  Please help to correct dumbass mistakes. Classification is done with traffic desriptors Ingress interface CoS value on ISL or 802.1P frames Source/destination IP address IP Precedence or DSCP value MPLS EXP Application type Layer 3 QoS Type of Service (ToS) is 8-bit field. First 3 bits of ToS are the IP precedence. First 6 bits of ToS are the DSCP value. Last 2 bits of ToS are explicit congestion notification (ECN). Layer 2 QoS Ethernet Class of Service (CoS) On 802.1P frame 3-bit priority (PRI) field 000 &#8211; Routine &#8211; Best-effort 001 &#8211; Priority &#8211; Medium priority 010 &#8211; Immediate &#8211; High priority 011 &#8211; Flash &#8211; Call signaling 100 &#8211; Flash-Override &#8211; Video conferencing 101 &#8211; Critical &#8211; Voice bearer 110 &#8211; Internet &#8211; Reserved 111 &#8211; Network &#8211; Reserved Frame Relay 1-bit discard eligible (DE) field ATM 1-bit cell loss priority (CLP) field MPLS (layer 2 1/2) 3-bit experimental (EXP) field By default, the 3 most significant ToS bits (IP Precedence bits) are copied to EXP Per-hop Behavior (PHB) &#8220;an externally observable fowarding behavior of a network node toward a group of [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s another set of notes from my ONT studies.  I&#8217;m sure someone will find it useful.  Please help to correct dumbass mistakes.</p>
<ul>
<li>Classification is done with traffic desriptors
<ul>
<li>Ingress interface</li>
<li>CoS value on ISL or 802.1P frames</li>
<li>Source/destination IP address</li>
<li>IP Precedence or DSCP value</li>
<li>MPLS EXP</li>
<li>Application type</li>
</ul>
</li>
<li>Layer 3 QoS
<ul>
<li>Type of Service (ToS) is 8-bit field.</li>
<li>First 3 bits of ToS are the IP precedence.</li>
<li>First 6 bits of ToS are the DSCP value.</li>
<li>Last 2 bits of ToS are explicit congestion notification (ECN).</li>
</ul>
</li>
<li>Layer 2 QoS
<ul>
<li>Ethernet
<ul>
<li>Class of Service (CoS)</li>
<li>On 802.1P frame</li>
<li>3-bit priority (PRI) field
<ul>
<li>000 &#8211; Routine &#8211; Best-effort</li>
<li>001 &#8211; Priority &#8211; Medium priority</li>
<li>010 &#8211; Immediate &#8211; High priority</li>
<li>011 &#8211; Flash &#8211; Call signaling</li>
<li>100 &#8211; Flash-Override &#8211; Video conferencing</li>
<li>101 &#8211; Critical &#8211; Voice bearer</li>
<li>110 &#8211; Internet &#8211; Reserved</li>
<li>111 &#8211; Network &#8211; Reserved</li>
</ul>
</li>
</ul>
</li>
<li>Frame Relay
<ul>
<li>1-bit discard eligible (DE) field</li>
</ul>
</li>
<li>ATM
<ul>
<li>1-bit cell loss priority (CLP) field</li>
</ul>
</li>
<li>MPLS (layer 2 1/2)
<ul>
<li>3-bit experimental (EXP) field</li>
<li>By default, the 3 most significant ToS bits (IP Precedence bits) are copied to EXP</li>
</ul>
</li>
</ul>
</li>
<li>Per-hop Behavior (PHB)
<ul>
<li>&#8220;an externally observable fowarding behavior of a network node toward a group of IP packets that have the same DSCP value&#8221;</li>
<li>In other words, treat packets with the same DSCP value in the same manner &#8211; scheduling, queuing, policing, etc.</li>
<li>Behavior aggregate (BA) is a group of packets with the same DSCP value</li>
</ul>
</li>
<li>DSCP
<ul>
<li>DSCP is chopped up into 4 PHBs
<ul>
<li>Class selector PHB &#8211; (000) old IP precedence compatibility</li>
<li>Default PHB &#8211; (000) best effort</li>
<li>Assured forwarding (AF) PHB &#8211; (001, 010, 011, 100) guarantee bandwidth
<ul>
<li>Provides 4 queues for 4 classes of traffic (AF1-4)</li>
<li>Also specifies drop preference (ex., AF41, A13) where second number is preference (higher is more probable to be dropped)</li>
<li>Each queue must have (W)RED to avoid drops</li>
<li>No queue is any better than the other</li>
<li>Backward compatible with IP precedence</li>
</ul>
</li>
</ul>
</li>
</ul>
<ul>
<li>
<ul>
<li>Expedited forwarding (EF) PHB &#8211; (101) low delay
<ul>
<li>Minimum delay</li>
<li>Bandwidth guarantee</li>
<li>Policing</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li>Trust boundaries
<ul>
<li>Establish DSCP values as close to the source as possible
<ul>
<li>On the device (IP phone), access switch, or distribution switch</li>
<li>The core should never assign DSCP values</li>
</ul>
</li>
<li>Only trust DSCP values from devices you trust</li>
<li>Examine and rewrite values from untrust sources</li>
</ul>
</li>
<li>Network-based Application Recognition (NBAR)
<ul>
<li>Protocol discovery &#8211; discovers what protocols you&#8217;re running on your network</li>
<li>Traffic statistics collection &#8211; keeps tracks of stats on each protocol</li>
<li>Traffic classification &#8211; NBAR protocols can be used in <em>class-maps</em> to define traffic to be services</li>
<li>Packet description language models (PDLMs) &#8211; table of what protocols NBAR recognizes</li>
<li>Limitations
<ul>
<li>Doesn&#8217;t work on EtherChannel interfaces</li>
<li>Only handles 24 URLs, hosts, or MIME types</li>
<li>Only analyzes first 400 bytes of the packets</li>
<li>Requires CEF</li>
<li>Doesn&#8217;t work on HTTPS, multicasts, or fragments</li>
<li>Ignored traffic destined for the router itself</li>
</ul>
</li>
<li>NBAR commands
<ul>
<li>Router(config)# <strong>ip nbar pdlm </strong><em>pdlm-name</em> : Update the PDLM table</li>
<li>Router(config)# <strong>ip nbar port-map </strong><em>protocol-name</em><em></em><strong> [tcp|udp] </strong><em>port-number</em> : Adds an entry to the PDLM table</li>
<li>Router# <strong>show ip nbar port-map</strong> <em>protocol-name</em> : Shows what&#8217;s in the PDLM table</li>
<li>Router# <strong>show ip nbar protocol-discovery</strong> : Shows what&#8217;s been discovered</li>
<li>Router(config-cmap)# <strong>match protocol</strong> <em>name </em>: a class-map match for an NBAR-discovered protocol</li>
</ul>
</li>
<li>Special protocol matching
<ul>
<li>Can match beyond the port number with deep packet inspection</li>
<li>Matches HTTP hostname, URL, or MIME type</li>
<li>Matches fast-track P2P</li>
<li>Matches RTP content</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="wp-about-author-containter-around" style="background-color:#ffffff;"><div class="wp-about-author-pic"><img alt='' src='http://1.gravatar.com/avatar/14352aa939196349e4b9f2a272ca5112?s=100&amp;d=&amp;r=G' class='avatar avatar-100 photo' height='100' width='100' /></div><div class="wp-about-author-text"><h3><a href='http://aconaway.com/author/jac/' title='Aaron Conaway'>Aaron Conaway</a></h3><p>I like to lean my head to the left, hit it with the palm of my right hand, and document what knowledge falls out.</p><p><a href='http://aconaway.com' title='Aaron Conaway'>Website</a> - <a href='http://aconaway.com/author/jac/' title='More posts by Aaron Conaway'>More Posts</a> </p></div></div>]]></content:encoded>
			<wfw:commentRss>http://aconaway.com/2010/01/22/ont-notes-classification-marking-and-nbar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

