<?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/"
	xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Quality of Service</title>
	<atom:link href="http://qualityofservice.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://qualityofservice.wordpress.com</link>
	<description>Any sufficiently advanced incompetence is indistinguishable from malice.</description>
	<lastBuildDate>Mon, 19 Oct 2009 19:41:52 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='qualityofservice.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/7601195e42284cbefb9a5acefe07f264?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>Quality of Service</title>
		<link>http://qualityofservice.wordpress.com</link>
	</image>
			<item>
		<title>Fun with EIGRP</title>
		<link>http://qualityofservice.wordpress.com/2009/10/19/fun-with-eigrp/</link>
		<comments>http://qualityofservice.wordpress.com/2009/10/19/fun-with-eigrp/#comments</comments>
		<pubDate>Mon, 19 Oct 2009 19:40:37 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[EIGRP]]></category>
		<category><![CDATA[EIGRP stub]]></category>
		<category><![CDATA[static routing]]></category>
		<category><![CDATA[T1]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/?p=144</guid>
		<description><![CDATA[Recently had a chance to play around  with my very first T1, interfacing two routers in a place we&#8217;ll call Branch1, across a T1 link between  buildings on the site.  Fun times!  I&#8217;ve only ever interfaced with a T1 initially configured by the provider, or by way of a frame-relay switch, but have [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=144&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Recently had a chance to play around  with my very first T1, interfacing two routers in a place we&#8217;ll call Branch1, across a T1 link between  buildings on the site.  Fun times!  I&#8217;ve only ever interfaced with a T1 initially configured by the provider, or by way of a frame-relay switch, but have never had to go from serial interface directly into CSU/DSU, oddly enough.  Spent the better part of a week wondering what cable  I should use, though I needn’t have worried…a router that’s already connected to  a CSU/DSU will give you the right answer if you know what question to  ask:</p>
<p style="padding-left:60px;">R3#<strong><span style="text-decoration:underline;">sho controllers serial  0/0</span></strong></p>
<p style="padding-left:60px;">Interface  Serial0/0<br />
Hardware is PowerQUICC  MPC860<br />
<strong><span style="text-decoration:underline;">DTE  V.35</span></strong> TX and RX clocks  detected.<br />
idb at 0&#215;81122904, driver data  structure at 0&#215;8112A398<br />
…</p>
<p>The truly fun part came in figuring  out how to do the routing.  My newly acquired remote sites are all set up as  EIGRP stub routers, since I don’t need them transiting traffic for other sites.   Sites that are NOT set up as stub routers (i.e. the default when bringing up  EIGRP), when brought into a dual-hub-and-spoke topology such as ours (where all  the remote sites have at least two VPN tunnels: one to  each &#8220;hub&#8221; site), will  advertise routes learned from Hub1 back to Hub2 and vice versa.  That makes for a  messy and complicated EIGRP topology table, and makes routes from Hub1 appear  (from Hub2&#8217;s perspective) to be available via Branch1 (and vice versa), meaning if the links between Hub1 and Hub2, Branch1 could be used as a transit site for Hub1-Hub2  traffic.  EIGRP stubs stop this behaviour; they will accept routes from their  peers, <em><span style="text-decoration:underline;">but EIGRP stub routers by default  will only advertise connected and summary routes back to their  peers</span></em>.</p>
<p>This is fine when the site has just  one router; it’s more complicated when there are routers downstream from your  stub router, as is the case with Branch1.  A router downstream of the EIGRP Stub router carries traffic for the 172.29.18.0/24 LAN in a  different building at the facility.  Setting up EIGRP between this router and  the Stub router will cause 172.29.18.0/24 to be advertised to the Stub router, but  the Stub router will not advertise the 172.29.18.0/24  route to Hub1 or Hub2, making the network unreachable from our hub sites.  You could just point default on the downstream router, and redistribute a static route on the Stub router, but where&#8217;s the fun in that&#8230;</p>
<p>In my case, the Branch1  office LAN and the adjacent building&#8217;s LAN are bitwise-adjacent: 172.29.19.0/24 and  172.29.18.0/24, respectively.  This neatly summarizes to 172.29.18.0/23, so all  I had to do was configure the summary route to be advertised on the tunnel  interfaces of R2, and point default on R3 &#8211;  since stub routers will by default advertise summaries, no more  work had to be done.  There are other options to do this, for the curious  (mostly covered here: <a title="blocked::http://www.nil.com/ipcorner/EigrpStub/" href="http://www.nil.com/ipcorner/EigrpStub/">http://www.nil.com/ipcorner/EigrpStub/</a>).</p>
<p>Config on the stub is as follows (for simplicity, the link to only one hub site is shown).  No need to configure a static route to 172.29.18.0/24 on R2, because it will learn the route from its neighbour R3 &#8212; but since R2 is a stub, it won&#8217;t advertise the 172.29.18.0/24 upstream to R1.  I had a static route in anyway from earlier testing, and I&#8217;ll get to that in a second.</p>
<p style="padding-left:60px;">interface  Tunnel1011105<br />
description &#8220;To R1 Hub Site&#8221;<br />
bandwidth  3072<br />
ip summary-address  eigrp 102 172.29.18.0 255.255.254.0 5<br />
!<br />
i<br />
!<br />
router eigrp  102<br />
eigrp stub connected  summary</p>
<p>As mentioned a second ago, for a while I was using a static  route on the Stub router, pointing to the downstream router in the other  building, and redistributing static into EIGRP.  When I actually brought up  EIGRP between the two, got a chance to see something neat.  Picture attached for  ease of reference.</p>
<p style="padding-left:60px;"><img title="eigrp" src="../files/2009/10/eigrp.jpg" alt="eigrp" width="775" height="331" /></p>
<p>Doing a “show ip route” showed the  proper next hop as per the configured static route:</p>
<p style="padding-left:60px;">R2#sho ip route  172.29.18.0<br />
Routing entry for  172.29.18.0/24<br />
Known via “static”, <strong><span style="text-decoration:underline;">distance  1</span></strong>, metric 0<br />
Routing Descriptor  Blocks:</p>
<ul style="padding-left:60px;">
<li>172.29.254.62</li>
</ul>
<p style="padding-left:60px;">Route metric is 0, traffic  share count is 1</p>
<p>Admin distance of 1 beats everything  but a better-match (i.e. longer prefix) or a directly connected route.</p>
<p>But with EIGRP now running between  the two, it also showed up in the EIGRP topology table, but with a max metric  (note that the <em>composite</em> metric is actually correct; it’s a function of min  bandwidth and total delay along with path, and the configured K values i.e.  “eigrp metric …” and we use weird K-values in our environment, so YMMV):</p>
<p style="padding-left:60px;">R2#sho ip eigrp topology  172.29.18.0 255.255.255.0<br />
IP-EIGRP (AS 102): Topology entry  for 172.29.18.0/24<br />
State is Passive, Query origin  flag is 1, 0 Successor(s), <strong><span style="text-decoration:underline;">FD is  4294967295</span></strong><br />
Routing Descriptor  Blocks:<br />
172.29.254.62 (Serial0/0/1), from  172.29.254.62, Send flag is 0&#215;0<br />
Composite metric is  (4230656/38400), Route is Internal<br />
Vector  metric:<br />
Minimum bandwidth is 1544  Kbit<br />
Total delay is 20100  microseconds<br />
Reliability is  255/255<br />
Load is  1/255<br />
Minimum MTU is  1500<br />
Hop count is  1</p>
<p>I then removed the static route, and  ran the same commands.  EIGRP took over, and nary a packet was lost.  The metric  given by FD also correctly matches that given by the “composite metric”:</p>
<p style="padding-left:60px;">R2#sho ip route  172.29.18.0<br />
Routing entry for  172.29.18.0/24<br />
Known via “eigrp 102”, <strong><span style="text-decoration:underline;">distance 90, metric  4230656</span></strong>, type internal<br />
Redistributing via eigrp  102<br />
Last update from 172.29.254.62 on  Serial0/0/1, 00:00:51 ago<br />
Routing Descriptor  Blocks:</p>
<ul style="padding-left:60px;">
<li>172.29.254.62, from 172.29.254.62,  00:00:51 ago, via Serial0/0/1</li>
</ul>
<p style="padding-left:60px;">Route metric is 4230656,  traffic share count is 1<br />
Total delay  is 20100 microseconds, <strong><span style="text-decoration:underline;">minimum bandwidth is 1544  Kbit</span></strong><br />
Reliability 255/255, minimum  MTU 1500 bytes<br />
Loading 1/255, Hops  1</p>
<p style="padding-left:60px;">R2#sho ip eigrp topology  172.29.18.0 255.255.255.0<br />
IP-EIGRP (AS 102): Topology entry  for 172.29.18.0/24<br />
State is Passive, Query origin  flag is 1, 1 Successor(s), <strong><span style="text-decoration:underline;">FD is  4230656</span></strong><br />
Routing Descriptor  Blocks:<br />
172.29.254.62 (Serial0/0/1), from  172.29.254.62, Send flag is 0&#215;0<br />
Composite metric is  (<strong><span style="text-decoration:underline;">4230656</span></strong>/38400),  Route is Internal<br />
Vector  metric:<br />
Minimum bandwidth is 1544  Kbit<br />
Total delay is 20100  microseconds<br />
Reliability is  255/255<br />
Load is  1/255<br />
Minimum MTU is  1500<br />
Hop count is  1</p>
<p>Of course, the rest of the network  doesn’t see any of this complexity at all.  It just sees the summary route.   From R1:</p>
<p style="padding-left:60px;">R1#sho ip route  172.29.18.0<br />
Routing entry for  172.29.18.0/23<br />
Known via “eigrp 102”, distance  90, metric 7246080, type internal<br />
Redistributing via eigrp  102<br />
Last update from 10.1.1.106 on  Tunnel1011105, 01:29:47 ago<br />
Routing Descriptor  Blocks:</p>
<ul style="padding-left:60px;">
<li>10.1.1.106, from 10.1.1.106,  01:29:47 ago, via Tunnel1011105</li>
</ul>
<p style="padding-left:60px;">Route metric is 7246080,  traffic share count is 1<br />
Total delay is 50100  microseconds, <strong><span style="text-decoration:underline;">minimum bandwidth is 3072  Kbit</span></strong><br />
Reliability 255/255, minimum  MTU 1440 bytes<br />
Loading 1/255, Hops  1</p>
<p>Also note the change in minimum  bandwidth; locally in Branch1,  the minimum bandwidth to 172.29.18.0/24 is that of  the T1 interconnecting the two EIGRP peers: 1544 kbps.  When this route gets  hidden behind the summary, it inherits the minimum bandwidth as seen on the path  between remote sites and the originator of the summary route.  Since the  bandwidth of the tunnel between R1 and the summary originator (a tunnel on  vpn-01.mtj with configured bandwidth of 3072), that explains the change in min  bandwidth.</p>
<p>The delay value comes from the sum of delays along the path: the  delay of the lowest-delay component route on the summary-originating router  (which is the fa0/1 interface – 172.29.19.0/24 &#8212; on vpn-01.mtj, with a delay of  100 usec) + the delay of the next-hop tunnel interface (default 50,000 usec,  seen with “sho int tunnel…” command) == 50,100  usec.</p>
<p>So if you ever see something like  that max metric in the EIGRP topology table, that’s where it came from: there  was already a route with a better administrative distance on the router, but  EIGRP keeps its route installed in its topology table “just in case.”  Contrast  with RIP, which only keeps a route in its database if it’s the best route; all  others will not show up in the output of “show ip rip database.&#8221;</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/144/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/144/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/144/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/144/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/144/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/144/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/144/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/144/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/144/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/144/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=144&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/10/19/fun-with-eigrp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>

		<media:content url="../files/2009/10/eigrp.jpg" medium="image">
			<media:title type="html">eigrp</media:title>
		</media:content>
	</item>
		<item>
		<title>Catalyst Campus Design</title>
		<link>http://qualityofservice.wordpress.com/2009/09/02/catalyst-campus-design/</link>
		<comments>http://qualityofservice.wordpress.com/2009/09/02/catalyst-campus-design/#comments</comments>
		<pubDate>Wed, 02 Sep 2009 17:10:52 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[Miscellany]]></category>
		<category><![CDATA[Switching]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/?p=136</guid>
		<description><![CDATA[Appears to be a work in progress here, but since it flatters my own approach to design where I can get away with it, I consider it worth sharing. ^_^
http://www.cisco.com/en/US/docs/solutions/Enterprise/Campus/campover.html
Among the highlights: “proper” use of the 3750 series Catalyst switches.  Apart from what may be ever-so-slightly higher backplane capacity that will never be used in [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=136&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Appears to be a work in progress here, but since it flatters my own approach to design where I can get away with it, I consider it worth sharing. ^_^</p>
<p><a href="http://www.cisco.com/en/US/docs/solutions/Enterprise/Campus/campover.html">http://www.cisco.com/en/US/docs/solutions/Enterprise/Campus/campover.html</a></p>
<p>Among the highlights: “proper” use of the 3750 series Catalyst switches.  Apart from what may be ever-so-slightly higher backplane capacity that will never be used in a my existing $dayJob environment anyway, there is one architectural difference between the 3750 and the 3650, and one architectural difference only: the ability to do a proper switch stack via the StackWise feature.</p>
<p>If one does not plan to stack the switches, there is no reason to shell out the extra money for a 3750 when the 3650 line will do the job more than adequately.  If the money’s already been spent, however, you can do some great things to simplify and optimize your network.  These include reduced sevice requirements (no need to run STP* or HSRP), simplified configuration and manageability (done only once on the master switch in the stack as opposed to two physical switches) and increased availability and load-balancing.  Of course, this precludes physical separation of the switches by distances greater than the longest available StackWise cable; but if its physical separation one wanted, it’s cheaper to do so with the 3560.</p>
<p>By running etherchannels (which can span multiple switches in the stack) to your up/downstream switches, you can make use of multiple links to your “core” stack instead of having the redundant links blocked by STP.  By definition, loops cannot form, reducing complexity associated with STP (especially in multi-vendor environments, with HP defaulting to MSTP, Cisco defaulting to proprietary PVST+, Dell defaulting to god knows what…), and more easily facilitating the spanning of VLANs across access-layer switches – generally not desired for your user-access, but sometimes preferred for server-access where layer-2 adjacencies are preferred for convenience/clustering’s sake.  This is best illustrated on page 18 of the document, with the next page illustrating the benefit in terms of number of active, traffic-passing links vs. an STP design.</p>
<p>Not running HSRP elimates the risk of split-braining, which occurs with physically separated layer-3 switches when they lose connectivity to one another; both switches go active for the HSRP virtual IP address, but return traffic only goes towards one of the two switches, blackholing traffic destined for one of the switches.</p>
<p>And it’s certainly easy enough to do; assuming your existing separate 3xxx series each have links to the same upstream and downstream devices, just take one ‘of ‘em offline, configure the other with a nice high priority (“switch priority 15”), connect the “secondary” switch via the StackWise cables and power it up.  Recommend administratively disabling all the ports until the appropriate EtherChannels have been set up on all switches.</p>
<p>In summation, a quick general-usage guide for the current models of Catalyst switches, all of which come in PoE and non-PoE, and 12/24/48-port flavours of various speeds (10/100/1000); FYI, their QoS architectures and configuration are identical, differing only in buffer pool size and policer granularity (1Mbps policer intervals on the 2960, 8kbps intervals on the 3560/3750):</p>
<p style="padding-left:30px;">2960: Dumb layer-2 wiring closet switch.  Replaces the 2950.  No layer-3, no routing protocols, no VRF stuff, nothing.  Can be managed via IPv4/v6.</p>
<p style="padding-left:30px;">3560: Smarter layer-3 wiring-closet/distribution/core switch; successor to the 3550.  Can route IPv4 and v6 over all protocols.</p>
<p style="padding-left:30px;">3750: Smartest layer-3 1RU switch.  Exactly the same as the 3560, but with the StackWise feature to enable virtual switching &#8212; presenting multiple physical switches as a single switch.</p>
<p style="padding-left:30px;">3650-E and 3750-E: Same as their counterparts, but more backplane capacity (StackWise backplane doubles from 32 Gbps to 64 Gbps), dual AC power supplies, and support for 10GigE.</p>
<p>Save for the E-series, all of the above feature a single AC power supply, and a proprietary DC power input.  It can be fed redundant power to this DC input via the RPS 675 (EoS) and RPS 2300.  Each RPS can feed up to six different devices; however, the RPS 675 can only actively back up one device.  The 2300 can provide redundant power for up to two.  If you load up 6 switches on a 2300 and all of their internal supplies fail, four of the switches are out of luck.</p>
<p>As far as dual AC supplies go (again, save for the E-series), one has to take a large step up to the 4500 and 6500-series chassis.  Each features the potential for in-box power and supervisor redundancy.  4500 is relatively (of the two) low-cost choice for port-density and minimal features; 6500 fully loaded can hold most if not all of the internet routing table, all manner of line-cards for all manner of port types, and a variety of service modules (load-balancing and SSL-terminating ACE modules, firewall modules, network analysis modules, etc), and a ton of features.  Not likely to see deployment in $dayJob any time soon, but the datacenter aggregation switch of choice in large environments.</p>
<p>*Yah, yah, you should still &#8220;run&#8221; STP so as to prevent accidental loops from forming, I know, I know: http://www.cisco.com/web/strategy/docs/gov/turniton_stpt.pdf</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/136/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/136/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/136/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=136&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/09/02/catalyst-campus-design/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>
	</item>
		<item>
		<title>Browsing safely</title>
		<link>http://qualityofservice.wordpress.com/2009/07/29/browsing-safely/</link>
		<comments>http://qualityofservice.wordpress.com/2009/07/29/browsing-safely/#comments</comments>
		<pubDate>Wed, 29 Jul 2009 15:20:35 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[Miscellany]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/?p=125</guid>
		<description><![CDATA[A lot of my real-life friends ask me how I go about securing my PC, mistakenly believing that because I&#8217;m a network guy, I also know something about security.  I know enough to secure the devices for which I&#8217;m typically responsible, but the home-user use-case tends to be so widely different and varied that the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=125&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>A lot of my real-life friends ask me how I go about securing my PC, mistakenly believing that because I&#8217;m a network guy, I also know something about security.  I know enough to secure the devices for which I&#8217;m typically responsible, but the home-user use-case tends to be so widely different and varied that the answer is always &#8220;it depends,&#8221; and there are infinite dependent variables.  It&#8217;s easy for me to secure my LAN against rogue DHCP servers, but less so to (cheaply, in terms of time and money) secure a family PC from a teenager who opens every attachment in their email, or clicks through every page on 4chan.  So take what follows with a grain of salt.  It&#8217;s also written with Windows in mind (in other words, spare me the &#8220;use linux!&#8221;).</p>
<p>As far as personal, home-use computing goes, I find the talk that goes on about the relative insecurity of my Windows Vista and XP boxes to be little more than histrionics.  If someone wants the pictures from my digital camera, it&#8217;s easier just to add themselves to the Ottawa, ON network on Facebook, and they can probably get a look at them that way.  There are lots of easier ways to steal information about a person than breaking into their PC, when we so readily make information about ourselves available publicly.</p>
<p>(And even once they&#8217;ve done that, what can happen, exactly?  Steal my banking information?  That&#8217;s not exactly &#8220;risky.&#8221; A phone-call to my bank, and the problem goes away.  At worst, I show up to a branch in person to verify my identity with all manner of official documentation.  Inconvenient, but hardly life-endangering.)</p>
<p>Want to get someone&#8217;s phone number?  Look them up on Facebook.  Check out their friends list.  Randomly send messages to people on the list, say that you&#8217;re an old friend trying to contact them for a high-school reunion, but they aren&#8217;t responding to your notes and you&#8217;re not sure if they check Facebook that often.  Use your imagination.</p>
<p>From there, you can start to draw the conclusion that security isn&#8217;t just technical;  it&#8217;s social.  It&#8217;s about who and what you trust.</p>
<p>But since not everyone can root through my trash for banking statements and hydro bills, remote compromise of my machine may be their only convenient option.  The goal isn&#8217;t complete and total security; as the saying goes, the only way to completely secure your PC is to turn it off.  The goal is to make accessing your PC as inconvenient as possible.  For many users, sticking their PC behind a broadband router provides a cheap form of firewalling that&#8217;s more than enough to protect them from outside threats.  Personally, I just turn on Windows Firewall and connect directly to my cable modem.  Never was one for trying to hide my PC behind a router.</p>
<p>Next up, the absolute minimum required to easily get around the internets is a browser.  I&#8217;m primarily a Firefox man; Google Chrome is incredibly fast and lightweight, but seems a bit lacking in the feature department.  I&#8217;ll confess to not giving it a true college try.</p>
<p>But here&#8217;s what I use:</p>
<p style="padding-left:30px;">Firefox: http://www.mozilla.com/en-US/firefox/personal.html</p>
<p>With the following addons:</p>
<p style="padding-left:30px;">AdBlock Plus: http://adblockplus.org/en/</p>
<p style="padding-left:30px;">NoScript:  http://noscript.net/getit</p>
<p>Install the add-ons, configure ABP to subscribe to the easylist filter, and that&#8217;s it.  NoScript is a bit annoying to work with at first, but you&#8217;ll soon get a feel for it.  Under Firefox&#8217;s menu, go Tools -&gt; Options -&gt; Advanced -&gt; Update, and make sure everything is checked off to automatically check for and install updates to the browser and add-ons.</p>
<p>After that, configure Windows Update to check for updates frequently, and to download and install frequently.</p>
<p>I don&#8217;t run real-time signature-based AV e.g. Norton Anti-Virus, at all.  Vista takes up 800MB of RAM on its own; I don&#8217;t need a few million signatures adding another 250MB.  Every month, Microsoft releases an updated Malicious Software Removal Tool (MSRT website: http://www.microsoft.com/security/malwareremove/default.aspx) which runs in the background and is very quiet (as in, you don&#8217;t even know it&#8217;s running unless it finds something).  You can force it to run manually so that you can actually watch what it&#8217;s doing by going Start -&gt; Run -&gt; mrt.exe.</p>
<p>As a backup to the MSRT, I&#8217;ll occassionally run MalwareBytes&#8217; Anti-Malware tool: http://www.malwarebytes.org/mbam.php</p>
<p>I run Threatfire (http://www.threatfire.com/) on its most sensitive settings.  It&#8217;s another one of those things that appears obnoxious at first, but you get use to it.</p>
<p>For generic cleanup, I run ccleaner (http://www.ccleaner.com/).  I check off just about everything possible, with the exception of &#8220;Wipe Free Space,&#8221; because that takes FOREVER.  I clear out all histories and saved-form information.  If you&#8217;re the kind of person who checks off &#8220;Have browser remember passwords,&#8221; you may find using this annoying.  But that&#8217;s the kind of person who makes themselves most vulnerable when sharing their PC/laptop with someone else.  If you&#8217;re incredibly serious about wanting to secure your information, clear out that crap and start getting better at memorizing complicated passwords.  You can configure the program to add itself to your Recycle Bin, so you can just right-click the bin and open it up.  Close all your browsers (so it can access and delete browser caches) and run it every few days.  Clean out everything, and do the &#8220;Clean Registry&#8221; step, too.</p>
<p>As a bonus, the program also includes a feature to uninstall programs and disable programs that start on bootup.  Check to see if there are programs listed that you don&#8217;t recognize, or those which you know don&#8217;t need to actually start on boot.  Disable them until needed.</p>
<p>Complicated passwords are another obvious thing;  the more valuable the information, the harder it should be to access.  If you protect it with a username and password of admin/admin, it obviously isn&#8217;t that valuable to you.</p>
<p>If you need to fill out a  registration form or something, make up a gmail account that you&#8217;ll never  actually use (I sign up to things using <a title="blocked::mailto:qos.recyclebin@gmail.com" href="mailto:qos.recyclebin@gmail.com">qos.recyclebin@gmail.com</a>, for  example, and if you need a gmail invite, let me know), and fill in all the  registration forms with fake information unless absolutely  necessary.</p>
<p>That way, you hide as many things  as you can from being harvested, and you have a convenient place to find your  account info when you use it to sign up for something.  If you&#8217;re trying to get  vendor whitepapers from a place like <a title="blocked::http://techrepublic.com.com/" href="http://techrepublic.com.com/">http://techrepublic.com.com/</a>, for  example, do they REALLY need your work email and phone number?  Hell no.  Make  some up.  The only reason you need a &#8220;real&#8221; fake email address that you never  check is so that you can check it occassionally in the event that they require  you to verify your email address.  You can publish this email address ANYWHERE and never worry because you know for a fact that there&#8217;s nothing useful in it anyway.</p>
<p>If you approach every form on the  internet with the attitude that it might some day be used against you, you  protect yourself against all manner of information  harvesting.</p>
<p>Last and most importantly, I don&#8217;t install anything I don&#8217;t need, and I don&#8217;t open weird shit that I&#8217;m not expecting.</p>
<p>The more you add to anything, the more you have to protect/trust.  The larger your friends list, the higher probability of someone telling someone else something you don&#8217;t want them to know.  Do you really need 4-5 different cellphone related applications on your PC?  No, get them off there.  Limit your exposure to applications to only those which you can easily update, and update often.</p>
<p>And don&#8217;t bother giving someone&#8217;s chain-letter email due courtesy.  It doesn&#8217;t deserve it.  Especially if there&#8217;s some sort of weird attachment or link.  Most web-based email clients can disable the display of images or running of scripts, and have good anti-spam and malware practices established.   Don&#8217;t turn on the display of images or run weird attachments.  Chances are, you didn&#8217;t request it, ergo you&#8217;re unlikely to need it.</p>
<p>As mentioned at the beginning, I am hardly a security professional, and am quite amenable to comments and adjustments.  Happy internetting!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/125/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/125/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/125/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=125&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/07/29/browsing-safely/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>
	</item>
		<item>
		<title></title>
		<link>http://qualityofservice.wordpress.com/2009/07/02/123/</link>
		<comments>http://qualityofservice.wordpress.com/2009/07/02/123/#comments</comments>
		<pubDate>Thu, 02 Jul 2009 12:40:24 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[Miscellany]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/2009/07/02/123/</guid>
		<description><![CDATA[Light posting in the last little while due to a death in the family.
Will resume over the coming days with more than one could ever care to learn about QoS architecture of the Catalyst 2960/2970/3560/3750 series switches!
       <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=123&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Light posting in the last little while due to a death in the family.</p>
<p>Will resume over the coming days with more than one could ever care to learn about QoS architecture of the Catalyst 2960/2970/3560/3750 series switches!</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/123/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/123/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/123/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=123&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/07/02/123/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>
	</item>
		<item>
		<title>NetFlow</title>
		<link>http://qualityofservice.wordpress.com/2009/06/20/netflow/</link>
		<comments>http://qualityofservice.wordpress.com/2009/06/20/netflow/#comments</comments>
		<pubDate>Sun, 21 Jun 2009 03:16:51 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[Management]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[ipfix]]></category>
		<category><![CDATA[netflow]]></category>
		<category><![CDATA[ntop]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/?p=112</guid>
		<description><![CDATA[NetFlow is a Cisco proprietary standard, soon to become (if it&#8217;s not already) an international standard in the form of IPFIX (http://www.ietf.org/html.charters/ipfix-charter.html). It tracks flows ingress into an interface and does accounting based on source/dest IP/port, TOS, originating autonomous system, and all manner of other cool things.  This info can be exported to central collectors [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=112&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>NetFlow is a Cisco proprietary standard, soon to become (if it&#8217;s not already) an international standard in the form of IPFIX (<a href="http://www.ietf.org/html.charters/ipfix-charter.html" target="_blank">http://www.ietf.org/html.charters/ipfix-charter.html</a>). It tracks flows ingress into an interface and does accounting based on source/dest IP/port, TOS, originating autonomous system, and all manner of other cool things.  This info can be exported to central collectors which can store the data in a DB and mangle it as they see fit.</p>
<p>NetFlow is supported on any and all recent IOS routers (read as: 1800/2800/3800 ISR series, 7200/7600, etc).  Alas, no support on Catalyst dumb Layer-2 and multilayer switches outside of the 4500/6500 line, and even then it requires special hardware in the form of proper line cards/Supervisor Engine(s).</p>
<p>However, you can do a poor-man’s NetFlow by building a “probe” that accepts mirrored traffic from a SPAN port on a switch, and crafts its own NetFlow data from the observed traffic (see also: <a href="http://www.ntop.org/nProbe.html" target="_blank">nTop</a>).  Your mileage may vary depending on your IOS version; this note’s test router uses 12.4(15)T7.</p>
<p>You don’t need a collector to get some use out of the feature, though; it maintains a local cache and that’s what this note’s going to be about.  Quite easy to turn on:</p>
<p style="padding-left:30px;">interface FastEthernet0/1<br />
ip address x.x.x.x y.y.y.y<br />
ip flow ingress</p>
<p>Verification:</p>
<p style="padding-left:30px;">TEST-VPN-Hub-01#sho ip flow interface<br />
FastEthernet0/1<br />
ip flow ingress</p>
<p>Then turn on the top-talkers feature:</p>
<p style="padding-left:30px;">TEST-VPN-Hub-01#conf t<br />
TEST-VPN-Hub-01(config)#ip flow-top-talkers<br />
TEST-VPN-Hub-01(config-flow-top-talkers)#top 100</p>
<p>Then we get the option of viewing un-aggregated cache data, or aggregated cache data:</p>
<p style="padding-left:30px;">TEST-VPN-Hub-01#sho ip flow top-talkers ?</p>
<p style="padding-left:30px;">Display aggregated top talkers:<br />
&lt;1-100&gt;  Number of aggregated top talkers to show</p>
<p style="padding-left:30px;">Display unaggregated top flows:<br />
verbose  Display extra information about unaggregated top flows<br />
|        Output modifiers</p>
<p>Un-aggregated provides a very granular view of flows stored in cache; one flow per source/dest IP/port and IP Protocol number (with protocol number and src/dst ports reported in very obnoxious hex), and by default sorted by bytes ingress to the interface:</p>
<p style="padding-left:30px;">TEST-VPN-Hub-01#sho ip flow top-talkers</p>
<p style="padding-left:30px;">SrcIf         SrcIPaddress    DstIf         DstIPaddress    Pr SrcP DstP Bytes<br />
Tu110232      10.0.30.63      Fa0/1         192.168.141.81  06 170C 88ED  2074K<br />
Tu110232      10.0.30.40      Fa0/1         192.168.141.71  06 0FD9 F727  1519K<br />
Tu110232      10.0.30.140     Fa0/1         192.168.141.144 06 0BFE DB22  1275K<br />
Tu110232      10.0.30.140     Fa0/1         10.1.250.81     06 0BFE B70E  1243K<br />
Tu110232      10.0.30.140     Fa0/1         10.1.250.81     06 0BFE B70F  1242K<br />
Tu110232      10.0.30.62      Fa0/1         192.168.141.80  06 170C 83ED   532K<br />
Tu110232      10.0.30.140     Fa0/1         10.1.250.81     06 0BFE A204   340K<br />
Tu110232      10.0.30.140     Fa0/1         192.168.141.144 06 0BFE D3D8   251K<br />
Fa0/1         192.168.141.81  Tu110232      10.0.30.63      06 88ED 170C    69K<br />
Fa0/1         192.168.141.80  Tu110232      10.0.30.62      06 83ED 170C    60K<br />
Fa0/1         192.168.141.144 Tu110232      10.0.30.140     06 D3D8 0BFE    38K</p>
<p>Useful if you have a source that’s just pounding away; you can easily see where it’s coming from (and the interface through which it enters) and where it’s going (and the interface through which it leaves).</p>
<p>Aggregated view allows you to aggregate the NetFlow data a whole bunch of different ways (I’ve cut a bunch of ways out for sake of brevity):</p>
<p style="padding-left:30px;">TEST-VPN-Hub-01#sho ip flow top-talkers 100 aggregate ?<br />
bytes                  number of bytes<br />
destination-address    Destination address<br />
destination-interface  Destination interface<br />
destination-port       Destination port<br />
icmp                   ICMP type and code<br />
ip-nexthop-address     IP nexthop address<br />
max-packet-length      Maximum packet length<br />
min-packet-length      Minimum packet length<br />
packets                number of packets<br />
source-address         Source address<br />
source-interface       Source interface<br />
source-port            Source port<br />
tcp-flags              TCP flags</p>
<p>What follows are ways to find the hot destination ports from your router’s point of view:</p>
<p style="padding-left:30px;">TEST-VPN-Hub-01#sho ip flow top-talkers 100 aggregate destination-port sorted-by packets</p>
<p style="padding-left:30px;">There are 20 top talkers:</p>
<p style="padding-left:30px;">TRNS DST PORT       bytes        pkts       flows<br />
=============  ==========  ==========  ==========<br />
35053     1638362        8922           1<br />
54232     1462512        4017           1<br />
33773      861529        3757           1<br />
63271     1161960        2904           1<br />
56098      950000        2609           1<br />
46862      916876        2518           1<br />
46863      916472        2516           1<br />
5900      110858        2226           2<br />
0      688278        1030          13<br />
2048      658800         549           1<br />
3070       12480         312           5<br />
4056        3492          70           1<br />
4057        2680          67           1<br />
57556        6804          67           1<br />
41476       15288          42           1<br />
3092        2860          35           3<br />
161        2556          35           3</p>
<p>Note that “Port 0” shows up in the above; I believe this may be related to packet fragmentation.  Non-initial fragments will not contain a transport-layer header; rather, they’ll simply have more transport-layer payload.  NetFlow can relate such a packet to a particular transport-layer protocol on account of the IP Protocol field of the IP packet (6 = UDP, 17 = TCP), but that’s as good as it can do without reassembling the entire packet.</p>
<p>Mind you, the traffic could also be IPSEC, which uses IP Protocol 50 or 51 for AH or ESP, respectively, and does not have port numbers for NetFlow to count.  This test bed was also running EIGRP and GRE tunnels; this traffic may have also been counted as “Port 0” traffic.</p>
<p>And to see some equally hot source hosts:</p>
<p style="padding-left:30px;">TEST-VPN-Hub-01#sho ip flow top-talkers 100 aggregate source-add sorted-by packets</p>
<p style="padding-left:30px;">There are 25 top talkers:</p>
<p style="padding-left:30px;">IPV4 SRC ADDR         bytes        pkts       flows<br />
===============  ==========  ==========  ==========<br />
10.0.30.63          1758749        9609           1<br />
10.0.30.140         3161180        8681           5<br />
10.0.30.62           996875        4319           1<br />
10.0.30.40          1266040        3226           5<br />
192.168.141.80       121738        2444           1<br />
10.1.250.81           35960         899           3<br />
192.168.139.66       990000         825           1<br />
192.168.139.129      988800         824           1<br />
192.168.141.144       24640         616           2<br />
192.168.141.81        22520         451           2<br />
192.168.141.71        12372         309           2<br />
192.168.191.234       19008         288           1<br />
192.168.191.242        9900         150           1<br />
192.168.141.70         3944          81           2<br />
192.168.141.66         3360          56           1<br />
192.168.141.65         3300          55           1<br />
192.168.191.238        2508          38           1<br />
192.168.141.70         1680          28           1<br />
192.168.141.76         1680          28           1<br />
192.168.141.75         1680          28           1<br />
192.168.141.71         1620          27           1<br />
192.168.141.72         1620          27           1<br />
192.168.191.230        1650          25           1<br />
10.1.40.169              72           1           1</p>
<p>The command “show ip cache flow” also produces interesting results, including timers associated with the flow cache.</p>
<p style="padding-left:30px;">TEST-VPN-Hub-01#sho ip cache flow</p>
<p style="padding-left:30px;">IP packet size distribution (26090 total packets):<br />
1-32   64   96  128  160  192  224  256  288  320  352  384  416  448  480<br />
.001 .500 .155 .007 .005 .005 .006 .007 .007 .007 .006 .204 .045 .004 .004</p>
<p style="padding-left:30px;">512  544  576 1024 1536 2048 2560 3072 3584 4096 4608<br />
.003 .002 .002 .012 .008 .000 .000 .000 .000 .000 .000</p>
<p style="padding-left:30px;">IP Flow Switching Cache, 278544 bytes<br />
60 active, 4036 inactive, 675 added<br />
29520 ager polls, 0 flow alloc failures<br />
Active flows timeout in 30 minutes<br />
Inactive flows timeout in 15 seconds<br />
IP Sub Flow Cache, 25800 bytes<br />
0 active, 1024 inactive, 0 added, 0 added to flow<br />
0 alloc failures, 0 force free<br />
1 chunk, 0 chunks added<br />
last clearing of statistics 00:07:23</p>
<p style="padding-left:30px;">Protocol         Total    Flows   Packets Bytes  Packets Active(Sec) Idle(Sec)<br />
&#8212;&#8212;&#8211;         Flows     /Sec     /Flow  /Pkt     /Sec     /Flow     /Flow<br />
TCP-other          338      0.7        29   155     22.6      18.6       9.6<br />
UDP-NTP             37      0.0         1    76      0.0       0.0      15.4<br />
UDP-other          184      0.4        13    75      5.8       6.2      15.5<br />
ICMP               100      0.2         2   757      0.5       0.5      15.6<br />
Total:             659      1.4        19   151     29.1      11.4      12.5</p>
<p>From the above output, you can see that flows will age out of the cache 15 seconds after data associated with the flow stops flowing.  You can test this by pinging something through the router (in my tests, locally-originated ICMP traffic was not counted by NetFlow, but there’s a chance I may have just been doing it wrong), and filtering the output of “show ip flow top-talkers” or “show ip cache flow”, until there’s been enough transferred data associated with the flow for it to work its way into the cache.</p>
<p>Then stop the ping.  15 seconds later, the flow won’t be there anymore; so by definition, flows that have accumulated a lot of traffic have been active for a very, very long time.  This technique is incredibly handy for tracking DoS activity; if you’re able to log into a terminal, you can work backwards to find the source address and input interface of potential DoS’ers, misbehaving hosts, etc.  Taken to its logical conclusion – assuming cooperation with a supportive and clueful ISP &#8212; you can even trace a spoofed IP address back to its real source. How this would be accomplished is left as an exercise for the reader.</p>
<p>There’s also a packet-size histogram; from the above, you can deduce that 50% of the packets transiting the router are between 32-64 bytes; 15.5% are between 64-96 bytes; and 20% are between 352-384 bytes.</p>
<p>Over at $dayJob, I use <a href="http://www.plixer.com/products/free-netflow.php" target="_blank">http://www.plixer.com/products/free-netflow.php</a> to keep track of a day’s worth of NetFlow data; for a free tool, it’s incredible for providing point-in-time analysis of application use on my network.  As they say,  in network analysis, there is no substitute for knowing your network.  While longer-term analysis would be ideal, I don’t have long-term enterprise NetFlow collection in my budget, nor the time to build out my own; though after you’ve kept a watchful eye on links for a few weeks, you start to see patterns, and deviations from that pattern should be either easily explained or quickly investigated.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/112/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/112/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/112/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=112&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/06/20/netflow/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>
	</item>
		<item>
		<title>Monitoring/managing logins and config changes with IOS</title>
		<link>http://qualityofservice.wordpress.com/2009/06/09/monitoringmanaging-logins-and-config-changes-with-ios/</link>
		<comments>http://qualityofservice.wordpress.com/2009/06/09/monitoringmanaging-logins-and-config-changes-with-ios/#comments</comments>
		<pubDate>Tue, 09 Jun 2009 16:51:00 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[Management]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[configuration management]]></category>
		<category><![CDATA[router access]]></category>
		<category><![CDATA[ssh]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/?p=105</guid>
		<description><![CDATA[For the purposes of this note, I’m  going to pretend Telnet doesn’t exist.  Most of the stuff applies regardless of  whether you use it or not, but I’m happier working under the assumption that all  VTY configs look like this:
line vty 0 15
transport input  ssh
I’m going to digress already and say [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=105&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>For the purposes of this note, I’m  going to pretend Telnet doesn’t exist.  Most of the stuff applies regardless of  whether you use it or not, but I’m happier working under the assumption that all  VTY configs look like this:</p>
<p style="padding-left:30px;">line vty 0 15<br />
transport input  ssh</p>
<p>I’m going to digress already and say  that it’s a good idea to restrict access to certain  networks:</p>
<p style="padding-left:30px;">line vty 0 15<br />
access-class 101  in<br />
transport input  ssh</p>
<p>And that some go a step further and  protect the last VTY line as a last resort in the event that the other 14 or so  are occupied by someone with less-than-benevolent purposes; that way, the  host(s) specified in ACL 102 can still manage the  router:</p>
<p style="padding-left:30px;">line vty 0 14<br />
access-class 101  in<br />
transport input  ssh</p>
<p style="padding-left:30px;">line vty  15<br />
access-class 102  in<br />
transport input  ssh</p>
<p>But back to the point.  In the early  days of IOS 12.3, they introduced the “login” command-set for login security  enhancement (<a title="blocked::http://www.cisco.com/en/US/docs/ios/12_3t/12_3t4/feature/guide/gt_login.html" href="http://www.cisco.com/en/US/docs/ios/12_3t/12_3t4/feature/guide/gt_login.html">http://www.cisco.com/en/US/docs/ios/12_3t/12_3t4/feature/guide/gt_login.html</a>).</p>
<p style="padding-left:30px;">login block-for 60 attempts 3 within  60<br />
login delay  3<br />
login on-failure  log<br />
login on-success  log</p>
<p>This gives you three chances to pass  the test before the router blocks all logins for 60 seconds (this period is  called “quiet mode”).  There’s also a 3-second delay between attempts.  This  mitigates someone throwing the kitchen sink at your device; it takes them 9  seconds just to try three times, and they can only do so once a minute without  changing IP addresses.  A “quiet mode” list can be configured to allow certain  hosts to get around these restrictions; this is a good idea, because someone  spamming login attempts can lock you out, and it’s a race to log in when quiet  time ends.  Luckily, the “on-failure log” will tell you which IP address is  responsible for the attack. Info on configuring quiet-mode bypass is in the  documentation linked at the end of this note.</p>
<p>Of course, the problem with this is  that by default, IOS will let you attempt four SSH logins before terminating the  session.  You can fix that, too. I use this:</p>
<p style="padding-left:30px;">ip ssh authentication-retries  2<br />
ip ssh logging  events<br />
ip ssh version  2</p>
<p>“authentication-retries” is,  literally, retries.  It lets you make two additional attempts after the first  failed attempt; hence three in total, which matches up with the three attempts  before you’re locked out for a minute, configured above in the “login” section.  “Version 2” forces the use of SSHv2 by the client side; SSHv1/v1.5 considered  insecure and deprecated for well over a decade.</p>
<p>Finally, the built-in config-change  archiver/logger:</p>
<p style="padding-left:30px;">archive<br />
log  config<br />
logging  enable<br />
logging size  200<br />
notify  syslog<br />
hidekeys</p>
<p>This will take any change made in  config mode, save a small local copy of said changes to a local buffer, and spit  them out to syslog. “hidekeys” keeps sensitive info obscured (syslog packets  being unencrypted and all).  How many times have you asked yourself “well,  what’s changed?”  This lets you know in real-time.</p>
<p>All this and more over at the IOS  Security Configuration Guide and Command Reference, which can be found here for  IOS 12.4: <a title="blocked::http://www.cisco.com/en/US/docs/ios/security/configuration/guide/12_4/sec_12_4_book.html" href="http://www.cisco.com/en/US/docs/ios/security/configuration/guide/12_4/sec_12_4_book.html">http://www.cisco.com/en/US/docs/ios/security/configuration/guide/12_4/sec_12_4_book.html</a></p>
<p>Whole bunch of examples below the cut!</p>
<p><span id="more-105"></span></p>
<p>=======================================================================</p>
<p>Ex 1: failure logged by &#8220;ip ssh logging events&#8221;</p>
<p>SSH-5-SSH2_USERAUTH    Notice    11443: 19963486: Jun  9 2009 15:05:31.145 UTC: %SSH-5-SSH2_USERAUTH: User &#8216;rawn&#8217; authentication for SSH2 Session from x.x.x.x (tty = 1) using crypto cipher &#8216;aes256-cbc&#8217;, hmac &#8216;hmac-sha1&#8242; Failed</p>
<p>=======================================================================</p>
<p>Ex 2: success logged by &#8220;ip ssh logging events&#8221;</p>
<p>SEC_LOGIN-5-LOGIN_SUCCESS    Notice    9494: 252827: Jun  9 16:01:32.087: %SEC_LOGIN-5-LOGIN_SUCCESS: Login Success [user: rawn] [Source: 172.16.6.166] [localport: 22] at 16:01:32 UTC Tue Jun 9 2009</p>
<p>=======================================================================</p>
<p>Ex 3: Verify &#8220;login&#8221; config</p>
<p>vpn-01.xxx#sho login<br />
A login delay of 3 seconds is applied.<br />
No Quiet-Mode access list has been configured.<br />
All successful login is logged.<br />
All failed login is logged.</p>
<p>Router enabled to watch for login Attacks.<br />
If more than 3 login failures occur in 60 seconds or less,<br />
logins will be disabled for 60 seconds.</p>
<p>Router presently in Normal-Mode.<br />
Current Watch Window<br />
Time remaining: 2 seconds.<br />
Login failures for current window: 0.<br />
Total login failures: 15.</p>
<p>=======================================================================</p>
<p>Ex 4: Monitor failed logins (held in a local buffer, cleared after a reboot):</p>
<p>vpn-01.xxx#sho login failures<br />
Total failed logins: 9<br />
Detailed information about last 50 failures</p>
<p>Username        SourceIPAddr    lPort Count TimeStamp<br />
fwwed           x.x.x.x    22    3     09:53:48 EDT Tue Jun 9 2009<br />
fw3552          x.x.x.x    22    3     10:32:23 EDT Tue Jun 9 2009<br />
rawn            x.x.x.x    22    3     16:21:16 UTC Tue Jun 9 2009</p>
<p>=======================================================================</p>
<p>Ex 5: syslog produced by failure and subsequent blocking of all login attempts configured with the &#8220;login&#8221; command set (reverse chronological order, ending with the router &#8220;unlocking&#8221; itself and permitting logins again)</p>
<p>6/9/2009 12:22:18 PM        x.x.x.x    SEC_LOGIN-5-QUIET_MODE_OFF    Notice    6618: 20268049: Jun  9 2009 16:22:16.775: %SEC_LOGIN-5-QUIET_MODE_OFF: Quiet Mode is OFF, because block period timed out at 16:22:16 UTC Tue Jun 9 2009</p>
<p>6/9/2009 12:21:17 PM        x.x.x.x    SEC_LOGIN-1-QUIET_MODE_ON    Alert    6615: 20267993: Jun  9 2009 16:21:16.775: %SEC_LOGIN-1-QUIET_MODE_ON: Still timeleft for watching failures is 6 secs, [user: rawn] [Source: x.x.x.x] [localport: 22] [Reason: Login Authentication Failed] [ACL: sl_def_acl] at 16:21:16 UTC Tue Jun 9 2009</p>
<p>6/9/2009 12:21:17 PM        x.x.x.x    SEC_LOGIN-4-LOGIN_FAILED    Warning    6614: 20267992: Jun  9 2009 16:21:16.775: %SEC_LOGIN-4-LOGIN_FAILED: Login failed [user: rawn] [Source: x.x.x.x] [localport: 22] [Reason: Login Authentication Failed] at 16:21:16 UTC Tue Jun 9 2009</p>
<p>6/9/2009 12:21:14 PM        x.x.x.x    SEC_LOGIN-4-LOGIN_FAILED    Warning    6613: 20267988: Jun  9 2009 16:21:13.331: %SEC_LOGIN-4-LOGIN_FAILED: Login failed [user: rawn] [Source: x.x.x.x] [localport: 22] [Reason: Login Authentication Failed] at 16:21:13 UTC Tue Jun 9 2009</p>
<p>6/9/2009 12:21:11 PM        x.x.x.x    SEC_LOGIN-4-LOGIN_FAILED    Warning    6612: 20267984: Jun  9 2009 16:21:09.918: %SEC_LOGIN-4-LOGIN_FAILED: Login failed [user: rawn] [Source: x.x.x.x] [localport: 22] [Reason: Login Authentication Failed] at 16:21:09 UTC Tue Jun 9 2009</p>
<p>=======================================================================</p>
<p>Ex 6: syslog of config change produced by &#8220;Archive&#8221; command set:</p>
<p>6/9/2009 11:55:09 AM        x.x.x.x    PARSER-5-CFGLOG_LOGGEDCMD    Notice    605: 359657: Jun  9 2009 15:55:08.167: %PARSER-5-CFGLOG_LOGGEDCMD: User:lsdb  logged command:service timestamps log datetime msec year</p>
<p>6/9/2009 11:55:07 AM        x.x.x.x    PARSER-5-CFGLOG_LOGGEDCMD    Notice    604: 359655: %PARSER-5-CFGLOG_LOGGEDCMD: User:lsdb  logged command:service timestamps debug datetime msec year</p>
<p>6/9/2009 11:55:06 AM        x.x.x.x    PARSER-5-CFGLOG_LOGGEDCMD    Notice    603: 359654: %PARSER-5-CFGLOG_LOGGEDCMD: User:lsdb  logged command:no service timestamps debug</p>
<p>6/9/2009 11:55:04 AM        x.x.x.x    PARSER-5-CFGLOG_LOGGEDCMD    Notice    602: 359653: %PARSER-5-CFGLOG_LOGGEDCMD: User:lsdb  logged command:no service timestamps log</p>
<p>=======================================================================</p>
<p>Ex 7: locally buffered config changes produced by &#8220;archive&#8221; commands:</p>
<p>vpn-01.xxx#sho archive log config all | inc service<br />
295    29   rawn@vty0     |service nagle<br />
296    29   rawn@vty0     |service tcp-keepalives-in<br />
297    29   rawn@vty0     |service tcp-keepalives-out<br />
298    29   rawn@vty0     |service timestamps debug datetime msec show-timezone year<br />
299    29   rawn@vty0     |service timestamps log datetime msec show-timezone year<br />
300    29   rawn@vty0     |service password-encryption<br />
301    29   rawn@vty0     |service sequence-numbers<br />
302    30   rawn@vty0     |no service timestamps debug datetime msec show-timezone year<br />
303    30   rawn@vty0     |no service timestamps log datetime msec show-timezone year<br />
304    30   rawn@vty0     |service timestamps debug datetime msec year<br />
305    30   rawn@vty0     |service timestamps log datetime msec year</p>
<p>=======================================================================</p>
<p>Appendix: All commands in convenient copy/paste format.</p>
<p>login block-for 60 attempts 3 within 60<br />
login delay 3<br />
login on-failure log<br />
login on-success log</p>
<p>ip ssh authentication-retries 2<br />
ip ssh logging events<br />
ip ssh version 2</p>
<p>archive<br />
log config<br />
logging enable<br />
logging size 200<br />
notify syslog<br />
hidekeys</p>
<p>=======================================================================</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/105/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/105/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/105/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=105&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/06/09/monitoringmanaging-logins-and-config-changes-with-ios/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>
	</item>
		<item>
		<title>What is a &#8220;slow link&#8221;?</title>
		<link>http://qualityofservice.wordpress.com/2009/05/21/what-is-a-slow-link/</link>
		<comments>http://qualityofservice.wordpress.com/2009/05/21/what-is-a-slow-link/#comments</comments>
		<pubDate>Thu, 21 May 2009 16:49:49 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[QoS]]></category>
		<category><![CDATA[LFI]]></category>
		<category><![CDATA[LLQ]]></category>
		<category><![CDATA[MLPPP]]></category>
		<category><![CDATA[VoIP]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/?p=97</guid>
		<description><![CDATA[Cisco&#8217;s slightly-outdated QoS SRND (http://www.cisco.com/univercd/cc/td/doc/solution/esm/qossrnd.pdf) refers to slow, medium, and fast-speed links.
What&#8217;s the distinction? Why is anything less than 768kbps considered &#8220;slow&#8221;?
Well, one of the large ones is serialization delay.  This is somewhat covered in the SRND, but I wanted to highlight some of the key reasonings behind the distinction, as they&#8217;re applicable regardless of [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=97&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Cisco&#8217;s slightly-outdated QoS SRND (http://www.cisco.com/univercd/cc/td/doc/solution/esm/qossrnd.pdf) refers to slow, medium, and fast-speed links.</p>
<p>What&#8217;s the distinction? Why is anything less than 768kbps considered &#8220;slow&#8221;?</p>
<p>Well, one of the large ones is serialization delay.  This is somewhat covered in the SRND, but I wanted to highlight some of the key reasonings behind the distinction, as they&#8217;re applicable regardless of how you define &#8220;slow.&#8221;</p>
<p>Slow links suck, on that everyone can agree, but for real-time traffic &#8211;voice and interactive-video, for example&#8211;  they suck even more than only being able to torrent at 80 KB/s.</p>
<p>First, a few constants, some of which influence the &#8220;slow&#8221; characterization moreso than others, and are specified for informational purposes only:</p>
<p>Well-designed VoIP expects a one-way delay &#8212; mouth of speaker to ear of receiver &#8212; of approx 150ms.  This is largely going to be a function of processing and propagation delays along the link; as link speeds increase, the effects of serialization delay on the total delay budget are reduced.</p>
<p>Second, standard G.729 codec specifies 10ms of voice per frame.  Cisco IP phones pack two G.729 frames into each VoIP packet, for a total of 20ms of voice carried per packet; I&#8217;m focusing exclusively on the G.729 codec as it is the de-facto standard for VoIP over the WAN, due to its compression algorithm producing an 8kbps voice stream &#8211;before IP overhead is taken into account&#8211; compared to the 64kbps of G.711.</p>
<p>G.729 codecs can compensate for approx. 30ms of lost voice.  Given that a single VoIP packet contains 20ms, a loss of two consecutive VoIP packets (40ms worth of voice) will be noticed by the receiver.  Naturally you want to avoid losses, but moreso in a real-time voice environment than any other.  This is what Low-Latency Queuing is for, but it will not be the focus of this note.</p>
<p>Third, IP phones expect a relatively constant stream of voice packets.  Non-constant delays experienced along the path produce jitter; if one packet takes 160ms to get to the receiver, and the following packet takes 170ms, the stream has experienced 10ms of jitter.  DSPs in IP phones can compensate for approx 40ms of jitter by buffering received packets and replaying them to the receiver at a constant rate.  For this reason, you always want to have packets falling in the window of the jitter buffer (20ms to 50ms is a decent target for the IP phones I&#8217;ve read about).</p>
<p>So, given the above, what makes a 768kbps link slow?</p>
<p>Well, you want to stay within the jitter-buffer window, which means approx 30ms of jitter.  Cisco&#8217;s speed characterization is based on the assumption of 10ms of jitter per hop.</p>
<p>If we take one extreme, a link that carries a single voice call experiences very low jitter, as there is extremely low delay between voice packets :</p>
<p style="padding-left:30px;"><span style="color:#0000ff;">&#8212;&#8212;&#8212;-<strong><span style="color:#00ff00;">[voice][voice][voice]</span></strong> &#8212;&#8212;&#8212;&#8211;&gt;</span></p>
<p>But what happens when you throw a large data, unfragmented data packet into the mix?</p>
<p style="padding-left:30px;"><span style="color:#0000ff;">&#8212;&#8212;&#8212;-<span style="color:#00ff00;"><strong>[voice]</strong></span><strong><span style="color:#ff0000;">[------Data Payload-----]</span></strong><strong><span style="color:#00ff00;">[voice]</span></strong> &#8212;&#8212;&#8212;&#8211;&gt;</span></p>
<p>If that data packet is 1500 bytes, and the line speed is 768kbbps, it takes 15ms to clock that packet onto the physical line (warning: math!):</p>
<p style="padding-left:30px;"><span style="color:#0000ff;">(1500*8) = 12000 bits/data-packet</span></p>
<p style="padding-left:30px;"><span style="color:#0000ff;">12kb / 768kbps = 15.625ms</span></p>
<p>Thus, the 2nd voice packet in the stream experiences over 15ms of jitter.  This is fine if you have a site-to-site WAN link, but less fine if your voice path transits multiple routers, as it significantly impacts your jitter and delay budget.</p>
<p>Remember, these numbers are based on Cisco&#8217;s assumptions.  If you can get within ~30ms jitter while going through a single slow link and multiple extremely fast links (with very little serialization delay), then the number of routers you transit becomes less of a concern; whereas Cisco&#8217;s numbers are based on a three-hop path experiencing 10ms of jitter per hop.</p>
<p>The important thing to take away is that you want to stay within the window, and that at low speeds, serialization delays profoundly impact your jitter budget.  See the following spreadsheet for reference:</p>
<table style="border-collapse:collapse;height:238px;" border="0" cellspacing="0" cellpadding="0" width="833">
<col style="width:48pt;" width="64"></col>
<col style="width:63pt;" width="84"></col>
<col style="width:65pt;" span="2" width="87"></col>
<col style="width:63pt;" width="84"></col>
<col style="width:65pt;" span="2" width="87"></col>
<col style="width:63pt;" span="2" width="84"></col>
<col style="width:65pt;" width="87"></col>
<tbody>
<tr style="height:12.75pt;padding-left:60px;">
<td style="height:12.75pt;width:48pt;" width="64" height="17"></td>
<td style="width:63pt;" width="84">Packet Size</td>
<td style="width:65pt;" width="87"></td>
<td style="width:65pt;" width="87"></td>
<td style="width:63pt;" width="84"></td>
<td style="width:65pt;" width="87"></td>
<td style="width:65pt;" width="87"></td>
<td style="width:63pt;" width="84"></td>
<td style="width:63pt;" width="84"></td>
<td style="width:65pt;" width="87"></td>
</tr>
<tr style="height:12.75pt;">
<td style="height:12.75pt;" height="17">Bandwidth</td>
<td class="xl25" align="right">20</td>
<td class="xl25" align="right">40</td>
<td class="xl25" align="right">80</td>
<td class="xl25" align="right">128</td>
<td class="xl25" align="right">256</td>
<td class="xl25" align="right">512</td>
<td class="xl25" align="right">1024</td>
<td class="xl25" align="right">1200</td>
<td class="xl25" align="right">1500</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">56</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">2.86</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">5.71</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">11.43</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">18.29</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">36.57</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">73.14</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">146.29</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">171.43</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">214.29</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">128</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">1.25</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">2.50</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">5.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">8.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">16.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">32.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">64.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">75.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">93.75</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">256</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.63</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">1.25</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">2.50</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">4.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">8.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">16.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">32.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">37.50</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">46.88</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">512</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.31</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.63</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">1.25</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">2.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">4.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">8.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">16.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">18.75</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">23.44</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">768</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.21</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.42</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.83</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">1.33</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">2.67</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">5.33</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">10.67</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">12.50</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">15.63</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">1024</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.16</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.31</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.63</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">1.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">2.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">4.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">8.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">9.38</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">11.72</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">1544</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.10</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.21</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.41</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.66</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">1.33</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">2.65</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">5.31</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">6.22</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">7.77</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">4632</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.03</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.07</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.14</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.22</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.44</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.88</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">1.77</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">2.07</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">2.59</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">10000</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.02</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.03</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.06</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.10</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.20</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.41</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.82</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.96</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">1.20</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">100000</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.01</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.01</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.02</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.04</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.08</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.10</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.12</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">1000000</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.01</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.01</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.01</td>
</tr>
<tr style="height:12.75pt;">
<td class="xl24" style="height:12.75pt;" height="17" align="right">10000000</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
<td class="xl26" style="border-top:medium none;border-left:medium none;" align="right">0.00</td>
</tr>
</tbody>
</table>
<p>Note that above 768kbps, the influence of serialization delays on the links can only get better than 15ms, regardless of packet size; at these speeds, serialization delays become less of a concern.</p>
<p>There are a few things you can do to overcome the serialization limitations imposed by slow-speed links, and there are good reason why [some of] these same techniques should NOT be employed on high-speed links; these will be covered in a future note.</p>
<p>Right now, I&#8217;ve got a buddy&#8217;s 30th birthday to attend and I plan on getting drunk enough to forget most of this.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/97/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/97/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/97/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=97&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/05/21/what-is-a-slow-link/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>
	</item>
		<item>
		<title>Add a little flash (to your IOS router)</title>
		<link>http://qualityofservice.wordpress.com/2009/05/19/add-a-little-flash-to-your-ios-router/</link>
		<comments>http://qualityofservice.wordpress.com/2009/05/19/add-a-little-flash-to-your-ios-router/#comments</comments>
		<pubDate>Tue, 19 May 2009 00:20:04 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[Awesome]]></category>
		<category><![CDATA[Management]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/?p=95</guid>
		<description><![CDATA[Can’t believe I’ve never played with these before, they’re brilliant.   12.4T Advanced IP Services images are over 32MB in size and it&#8217;s not possible to store two different images on the same stock flash drive, which introduces a risk when remote upgrades are required.  If an upgrade goes bad, there are some sites where I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=95&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Can’t believe I’ve never played with these before, they’re brilliant.   12.4T Advanced IP Services images are over 32MB in size and it&#8217;s not possible to store two different images on the same stock flash drive, which introduces a risk when remote upgrades are required.  If an upgrade goes bad, there are some sites where I can count on remote hands capable of solid support; others, I&#8217;m not so fortunate.  So all the remote sites are getting USB keys, now, which will do more for my ability to keep my sites consistent and stable than any other measure implemented in my three years in this position.</p>
<p> The ISR routers come with a USB port.  Insert USB stick, router recognizes it immediately. </p>
<p> Do a “format usbflash0” and it was ready to go.  TFTP’d an image, and set it to boot from the USB stick with “boot system usbflash0:[imagename]”, rebooted, and came back up on an upgraded image.  Removed the memory key, rebooted, and it ignored the “boot system” specification and booted back into the old image from flash.</p>
<p> Copied the old image from flash onto the USB stick (“copy flash:[oldimage] usbflash0:”), deleted the old image from flash, copied the new image to flash, and done.  Known working image in flash, and both old and new images stored on the USB stick.  In my case, an 1841 recognized a 4GB USB key, which provides 16x more image storage capacity over the default 64MB of Flash that ships with the ISR bundles I order. </p>
<p> No need to worry about a reboot leaving you high-and-dry mid-upgrade after you’ve removed an old image to make room for the new one; which should remove any reticence to keeping IOS images current.  Just copy to USB and boot from the stick, first (caveat: takes about 220 seconds to load a 36MB image from USB into RAM on an 1841; takes about 120 seconds to load the same image from flash).  Worst case, you fall back to a known good image in flash.</p>
<p> For the security conscious, yes, this opens up the ability to have someone stick their own file onto the USB key and somehow get your router to load it; but if they have the physical access to permit them to do this in the first place, it’s simpler for them to just reboot into password recovery mode and do whatever they like.</p>
<p> Caveats: Cisco will sell you their own USB keys, but they&#8217;re about $300 after discount to add 256MB (part number: MEMUSB-64/128/256FT);   I&#8217;d rather pay $10 to add 4GB.  I&#8217;ve only tested this with a Kingston DataTraveller stick; YMMV.  I also move the &#8220;new&#8221; image to Flash once I&#8217;m ready to go into production with it; the risk being that if you find yourself having to work through a TAC case and they notice that you&#8217;re booting from a non-Cisco flash, they may tell you to suck rocks &#8212; which is a risk I&#8217;m willing to take in order to be able to test and upgrade on my own terms</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/95/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/95/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/95/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/95/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/95/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/95/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=95&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/05/19/add-a-little-flash-to-your-ios-router/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>
	</item>
		<item>
		<title>Eponymous.</title>
		<link>http://qualityofservice.wordpress.com/2009/05/18/eponymous/</link>
		<comments>http://qualityofservice.wordpress.com/2009/05/18/eponymous/#comments</comments>
		<pubDate>Mon, 18 May 2009 23:43:55 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[Deprecated practice]]></category>
		<category><![CDATA[QoS]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/?p=92</guid>
		<description><![CDATA[I&#8217;m currently studying/practicing for the Cisco 642-642 QoS exam, and I&#8217;ve gotta say, it&#8217;s opened up an entirely new toolset for me.  I&#8217;m but a mere enterprise admin, but I&#8217;ve seen a lot of routers and switches in my day, and it&#8217;s rare that I&#8217;ve seen anything (configuration-wise) that&#8217;s truly difficult.  We&#8217;ve all got our [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=92&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I&#8217;m currently studying/practicing for the Cisco 642-642 QoS exam, and I&#8217;ve gotta say, it&#8217;s opened up an entirely new toolset for me.  I&#8217;m but a mere enterprise admin, but I&#8217;ve seen a lot of routers and switches in my day, and it&#8217;s rare that I&#8217;ve seen anything (configuration-wise) that&#8217;s truly difficult.  We&#8217;ve all got our own little configuration quirks (given a device with a legacy configuration at $dayJob, I can likely tell you who configured it within a 95% confidence interval*) that we&#8217;ve either picked up from our peers &#8212; or on our own and thought &#8220;neat, I&#8217;m going to try that everywhere!&#8221; &#8212; but this is the first &#8220;feature&#8221; I&#8217;ve seen that requires some truly in-depth planning; I&#8217;ve no doubt this perceived difficulty contributes to my lack of having never seen it in production, so I&#8217;ll likely spend some time in an upcoming post ruminating over some of the reasons for or against QoS deployment in enterprise networks.** </p>
<p>But first up, a quick note on what actually constitutes a &#8220;small link,&#8221; as far as Cisco documentation is concerned.  I say Cisco doc, but there is math involved and I believe the concepts to be vendor-independent.</p>
<p>But before that, there&#8217;s a hockey game on. ^_^</p>
<p>*We still have some routers that are explictly denying IP protocols 53, 55, 77, 103 ingress on all interfaces, for anyone with memories stretching back a few years: <a href="http://www.cisco.com/warp/public/707/cisco-sa-20030717-blocked.shtml">http://www.cisco.com/warp/public/707/cisco-sa-20030717-blocked.shtml</a></p>
<p>**I make the distinction because those with service provider backgrounds have the luxury of bandwidth; bandwidth can solve any QoS-related problem, but I think there&#8217;s still a home for the concepts in MPLS VPN networks.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/92/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/92/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/92/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=92&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/05/18/eponymous/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>
	</item>
		<item>
		<title>1841 Modules.</title>
		<link>http://qualityofservice.wordpress.com/2009/05/06/1841-modules/</link>
		<comments>http://qualityofservice.wordpress.com/2009/05/06/1841-modules/#comments</comments>
		<pubDate>Wed, 06 May 2009 15:08:41 +0000</pubDate>
		<dc:creator>qualityofservice</dc:creator>
				<category><![CDATA[Miscellany]]></category>

		<guid isPermaLink="false">http://qualityofservice.wordpress.com/?p=90</guid>
		<description><![CDATA[I&#8217;m putting this here for my own reference.  I forget this all the time.  Stemmed from an argument with another admin who insisted that his Cisco SE told him that an 1841 supported FXS/FXO and E&#38;M modules.
FAQ: http://www.cisco.com/en/US/prod/collateral/routers/ps5853/prod_qas0900aecd80181208.html
Module support: http://www.cisco.com/en/US/prod/collateral/routers/ps5853/product_data_sheet0900aecd8016a59b.html (bottom of page)
Long story short: supports wireless  and every WAN under the sun (DSL/Cable/T1/E1/ISDN/Serial); [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=90&subd=qualityofservice&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>I&#8217;m putting this here for my own reference.  I forget this all the time.  Stemmed from an argument with another admin who insisted that his Cisco SE told him that an 1841 supported FXS/FXO and E&amp;M modules.</p>
<p>FAQ: <a title="blocked::http://www.cisco.com/en/US/prod/collateral/routers/ps5853/prod_qas0900aecd80181208.html" href="http://www.cisco.com/en/US/prod/collateral/routers/ps5853/prod_qas0900aecd80181208.html">http://www.cisco.com/en/US/prod/collateral/routers/ps5853/prod_qas0900aecd80181208.html</a></p>
<p>Module support: <a title="blocked::http://www.cisco.com/en/US/prod/collateral/routers/ps5853/product_data_sheet0900aecd8016a59b.html" href="http://www.cisco.com/en/US/prod/collateral/routers/ps5853/product_data_sheet0900aecd8016a59b.html">http://www.cisco.com/en/US/prod/collateral/routers/ps5853/product_data_sheet0900aecd8016a59b.html</a> (bottom of page)</p>
<p>Long story short: supports wireless  and every WAN under the sun (DSL/Cable/T1/E1/ISDN/Serial); <em>no support for voice  cards.</em></p>
<p>Voice can transit it like any other  data packet, but the router itself cannot terminate voice  circuits.</p>
<p>If the above is <em>untrue</em>, then Cisco’s documentation is  woefully out of date.</p>
  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/qualityofservice.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/qualityofservice.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/qualityofservice.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/qualityofservice.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/qualityofservice.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/qualityofservice.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/qualityofservice.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/qualityofservice.wordpress.com/90/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/qualityofservice.wordpress.com/90/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/qualityofservice.wordpress.com/90/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=qualityofservice.wordpress.com&blog=4177732&post=90&subd=qualityofservice&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://qualityofservice.wordpress.com/2009/05/06/1841-modules/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/db75df6ba937891430ca64b3632d8422?s=96&#38;d=http%3A%2F%2Fa.wordpress.com%2Fi%2Fmu.gif" medium="image">
			<media:title type="html">qualityofservice</media:title>
		</media:content>
	</item>
	</channel>
</rss>