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

<channel>
	<title>mrz&#039;s noise &#187; Networking</title>
	<atom:link href="http://blog.mozilla.com/mrz/category/networking/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.mozilla.com/mrz</link>
	<description>noise from a mozilla IT/Operations wrangler</description>
	<lastBuildDate>Mon, 30 Jan 2012 17:07:54 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>World IPv6 Day, Chickens, Eggs &amp; Mozilla</title>
		<link>http://blog.mozilla.com/mrz/2011/02/10/world-ipv6-day-chickens-eggs-mozilla/</link>
		<comments>http://blog.mozilla.com/mrz/2011/02/10/world-ipv6-day-chickens-eggs-mozilla/#comments</comments>
		<pubDate>Fri, 11 Feb 2011 02:07:43 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[Networking]]></category>
		<category><![CDATA[ipv6]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=760</guid>
		<description><![CDATA[Mozilla has a long history of being a technology leader on the web and open standards. A short, and certainly not exhaustive, list includes: Firefox (of course) HTML5 Geolocation Do Not Track IT/Operations is often the unglamorous side of Mozilla. We work in the shadows and you generally don&#8217;t see us unless something&#8217;s broken. However,&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2011/02/10/world-ipv6-day-chickens-eggs-mozilla/" title="Read the rest of &#8220;World IPv6 Day, Chickens, Eggs &#38; Mozilla&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<p>Mozilla has a long history of being a technology leader on the web and open standards.  A short, and certainly not exhaustive, list includes:</p>
<ol>
<li><a href="http://getfirefox.com">Firefox</a> <i>(of course)</i>
<li><a href="http://blog.mozilla.com/standards/2009/07/02/revolution-number-5/">HTML5</a>
<li><a href="http://blog.mozilla.com/webdev/2009/05/01/geolocation-in-the-browser/">Geolocation</a>
<li><a href="http://blog.mozilla.com/blog/2011/02/08/mozilla-firefox-4-beta-now-including-do-not-track-capabilities/">Do Not Track</a>
</ol>
<p>IT/Operations is often the unglamorous side of Mozilla.  We work in the shadows and you generally don&#8217;t see us unless something&#8217;s broken.  However, we want to push technology forward too.  We like to be thought leaders.  We like to solve the  &#8220;chicken-and-egg&#8221; problem.  For example, over the summer of 2010, we laid the infrastructure ground work for <a href="http://blog.mozilla.com/fox2mike/2010/10/implementing-dnssec-for-mozilla-org/">DNSSEC</a> and published a signed <code>mozilla.org</code> zone.</p>
<p>This year we&#8217;re ready for another challenge and are excited to join others in support of the <a href="http://isoc.org/wp/worldipv6day/">World IPv6 Day</a>!  June 8, 2011 will be the first global-scale &#8220;test flight&#8221; of IPv6 and we&#8217;re going to be a part of it.  This will also be our chance to see which parts of the network already support IPv6 and which parts require software (or hardware) upgrades. </p>
<p>As part of World IPv6 Day, we&#8217;ll offer a couple marquee Mozilla web properties over IPv6.  We&#8217;ll be able to measure how many users are already dual-stack (both IPv4 &#038; IPv6) vs. those who don&#8217;t yet have IPv6 capabilities.  In short, we&#8217;ll have a view on the state of the Internet&#8217;s IPv6 end-user deployment.</p>
<blockquote><p>
<b>What is IPv6?</b><br />
<a href="http://en.wikipedia.org/wiki/IPv6">IPv6</a> is the next generation protocol for the Internet.  The current protocol, <a href="http://en.wikipedia.org/wiki/IPv4">IPv4</a>, is based on 32-bit addressing and has the familiar syntax of <code>63.245.209.10</code>.  Unfortunately, after more than 30 years, the Internet is running out of available IPv4 address space.</p>
<p>IPv6 (and it&#8217;s 128-bit addressing) provides a vast increase in available address space &#8211; 4 billion times the number that are available under IPv4.  Addresses take on an entirely new syntax &#8211; <code>2620:101:8003:200:217:f2ff:fe09:d8ea</code>, for example.
</p></blockquote>
<p>When I started at Mozilla in 2006, I continued the IPv6 work I was doing at my last job and for some time now Mozilla&#8217;s had a production v6 network announced out of our San Jose data center.  I even <a href="http://blog.mozilla.com/mrz/2007/06/22/secret-ipv6-sites/">experimented</a> with a couple websites back in 2007.  Unfortunately, there&#8217;s been a lack of user demand and, as such, the &#8220;chicken-and-egg&#8221; problem.</p>
<p>We recently traded in our original /48 allocation in exchange for a /44 and are slowly renumbering and bringing up native IPv6 peering with Mozilla&#8217;s transit providers.  My Network Engineers even pushed out native IPv6 connectivity within Mozilla&#8217;s Mountain View office.</p>
<p>Those interested in tracking our progress can follow along in bug <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=630581">630581</a>.</p>
<p>I hope you&#8217;ll follow along with us in the coming months and join us for World IPv6 Day on June 8, 2011!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2011/02/10/world-ipv6-day-chickens-eggs-mozilla/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Phoenix to San Jose, in 18ms</title>
		<link>http://blog.mozilla.com/mrz/2010/02/08/phoenix-to-san-jose-in-18ms/</link>
		<comments>http://blog.mozilla.com/mrz/2010/02/08/phoenix-to-san-jose-in-18ms/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 04:41:30 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Phoenix]]></category>
		<category><![CDATA[sanjose]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=706</guid>
		<description><![CDATA[[root@ip-ns01 ~]# mtr www.mozilla.com --report ip-ns01.phx.mozilla.org Snt: 10 Loss% Last Avg Best Wrst StDev 10.8.75.1 0.0% 0.4 0.4 0.4 0.4 0.0 v500.core1.phx.mozilla.net 0.0% 1.1 1.3 1.0 3.1 0.6 xe-1-1-0.border1.phx.mozilla.net 0.0% 0.7 0.7 0.7 0.8 0.0 64.124.201.177 0.0% 1.1 1.1 1.1 1.1 0.0 ge-0-3-0.mpr3.lax9.us.above.net 0.0% 9.4 13.0 9.4 44.3 11.0 xe-0-1-0.er1.lax9.us.above.net 0.0% 9.5 13.7 9.4 51.4&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2010/02/08/phoenix-to-san-jose-in-18ms/" title="Read the rest of &#8220;Phoenix to San Jose, in 18ms&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<pre>
[root@ip-ns01 ~]# mtr www.mozilla.com --report
ip-ns01.phx.mozilla.org           Snt: 10    Loss%  Last   Avg  Best  Wrst StDev
10.8.75.1                                     0.0%   0.4   0.4   0.4   0.4   0.0
v500.core1.phx.mozilla.net                    0.0%   1.1   1.3   1.0   3.1   0.6
xe-1-1-0.border1.phx.mozilla.net              0.0%   0.7   0.7   0.7   0.8   0.0
64.124.201.177                                0.0%   1.1   1.1   1.1   1.1   0.0
ge-0-3-0.mpr3.lax9.us.above.net               0.0%   9.4  13.0   9.4  44.3  11.0
xe-0-1-0.er1.lax9.us.above.net                0.0%   9.5  13.7   9.4  51.4  13.3
xe-0-1-0.mpr1.lax12.us.above.net              0.0%  94.3  21.3   9.3  94.3  27.8
xe2-3.cr01.lax01.mzima.net                    0.0%  10.0  14.0  10.0  23.0   4.6
xe1-0.cr01.lax02.mzima.net                    0.0%  16.9  15.7  10.2  22.8   4.8
te1-3.cr02.sjc02.us.mzima.net                 0.0%  18.1  22.5  18.1  30.0   4.9
ge1-mozilla.cust.sjc02.mzima.net              0.0%  18.4  18.6  18.4  19.1   0.2
v8.core2.sj.mozilla.com                       0.0%  18.4  19.7  18.2  30.8   3.9
mozcom.acelb.sj.mozilla.com                   0.0%  18.5  18.6  18.4  19.5   0.3
</pre>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2010/02/08/phoenix-to-san-jose-in-18ms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Geolocation &amp; Zeus ZXTM 6.0</title>
		<link>http://blog.mozilla.com/mrz/2009/10/22/geolocation-zeus-zxtm-6-0/</link>
		<comments>http://blog.mozilla.com/mrz/2009/10/22/geolocation-zeus-zxtm-6-0/#comments</comments>
		<pubDate>Thu, 22 Oct 2009 23:07:29 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[load balancing]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[zeus zxtm geo]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=629</guid>
		<description><![CDATA[Mozilla&#8217;s North American store has been down in maintenance mode (you can read about the why) but not the International Store. The old store used to redirect non-North American users to the International Store, but unfortunately that redirect wasn&#8217;t carried over when we took the store offline. I was inspired Sunday night to put together&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2009/10/22/geolocation-zeus-zxtm-6-0/" title="Read the rest of &#8220;Geolocation &#38; Zeus ZXTM 6.0&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<p>Mozilla&#8217;s <a href="http://store.mozilla.org/">North American store</a> has been down in maintenance mode (you can read about the <a href="http://blog.mozilla.com/blog/2009/08/04/mozilla-store-vendor-security-breach/">why</a>) but not the <a href="http://intlstore.mozilla.org/">International Store</a>.  </p>
<p>The old store used to redirect non-North American users to the <a href="http://intlstore.mozilla.org/">International Store</a>, but unfortunately that redirect wasn&#8217;t carried over when we took the store offline.  </p>
<p>I was inspired Sunday night to put together a ZXTM TrafficScript rule based off the <a href="http://knowledgehub.zeus.com/articles/2007/09/18/geolocation">code sample</a> on Zeus&#8217;s knowledgehub (and because of bug <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=521914">521914</a>).</p>
<p>And then on Wednesday Zeus finally released <a href="http://knowledgehub.zeus.com/news/2009/10/20/zeus_traffic_manager_6_0_released">ZXTM 6.0</a> <i>with</i> geolocation support!</p>
<p>What was 40 some lines of code is now like 5.</p>
<p><b>Before:</b></p>
<blockquote>
<pre>
$ipaddr = request.getRemoteIP();

# Integer representation of $ipaddr >> 1
string.regexmatch( $ipaddr, "(\\d+)\\.(\\d+)\\.(\\d+)\\.(\\d+)" );
$ip = ((($1*256+$2)*256+$3)*128+$4/2);

$arr = resource.get( "geoip.dat" );

# initialize indices
$i = 0; $j = string.len( $arr )/6-1;

# $arr[$i] <= $ip < $arr[$j]
# iteratively halve the distance between $i and $j until they are adjacent

while( $j-$i > 1 ) {
   # midpoint between $i and $j
   $k = ($i+$j)/2;

   # compare $ip with $arr[$k]
   if( string.bytesToInt( string.subString( $arr, $k*6, $k*6+3 ) ) > $ip ) {
      $j = $k;
   } else {
      $i = $k;
   }
}

# Now, $arr[$i] <= $ip < $arr[$j] and $j == $i+1
# Look up the 2-character country code (returns '??' if unknown)
$ccode = string.subString( $arr, $i*6+4, $i*6+5 );

if ( ($ccode != "US") &#038;&#038; ($ccode != "CA") ) {
}
else {
   http.redirect("https://intlstore.mozilla.org/");
}
</pre>
</blockquote>
<p><b>After:</b></p>
<blockquote>
<pre>
$ipaddr = request.getRemoteIP();

$country = geo.getCountryCode( $ipaddr );

if ( ($country != "US") &#038;&#038; ($country != "CA") ) {
      http.redirect("https://intlstore.mozilla.org/");
}
​</pre>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2009/10/22/geolocation-zeus-zxtm-6-0/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Where in the world is AMO? (Part VI: We did it again!)</title>
		<link>http://blog.mozilla.com/mrz/2009/09/25/where-in-the-world-is-amo-part-vi-we-did-it-again/</link>
		<comments>http://blog.mozilla.com/mrz/2009/09/25/where-in-the-world-is-amo-part-vi-we-did-it-again/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 16:08:28 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[load balancing]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=567</guid>
		<description><![CDATA[(See Part V.) I have a confession.  We secretly did something last night (we only barely announced it to Metrics). No, we didn&#8217;t secretly replace the fine coffee at some four-star restaurant but pretty close. Hot off our 2 second gain in average page load times for addons.mozilla.org, we shaved another 2 seconds off by&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2009/09/25/where-in-the-world-is-amo-part-vi-we-did-it-again/" title="Read the rest of &#8220;Where in the world is AMO? (Part VI: We did it again!)&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<p>(See <a href="http://blog.mozilla.com/mrz/2007/06/13/where-in-the-world-is-amo-part-v-it%E2%80%99s-live-again/">Part V</a>.)</p>
<p>I have a confession.  We secretly did something last night (we only barely announced it to Metrics).</p>
<p>No, we didn&#8217;t secretly replace the <a href="http://en.wikipedia.org/wiki/Folgers#Advertising_the_brand">fine coffee at some four-star restaurant</a> but pretty close.</p>
<p>Hot off our <a href="http://blog.mozilla.com/mrz/2009/09/18/2-seconds/">2 second</a> gain in average page load times for <a href="https://addons.mozilla.org/"><code>addons.mozilla.org</code></a>, we shaved <span style="text-decoration: underline;"><i>another 2 seconds</i></span> off by duplicating <a href="http://blog.mozilla.com/mrz/2009/08/24/the-amsterdam-reboot/">The Amsterdam Reboot</a> platform in Singapore (<i>as a proof-of-concept</i>).  Don&#8217;t take my word for it &#8211; take Gomez&#8217;s word:</p>
<p style="text-align: center;"><a href="http://blog.mozilla.com/mrz/files/2009/09/amo-sg-gomez.png"><img class="aligncenter size-full wp-image-569" title="AMO page load times (Gomez)" src="http://blog.mozilla.com/mrz/files/2009/09/amo-sg-gomez.png" alt="AMO page load times (Gomez)" width="845" height="311" /></a></p>
<h3><b>A little background</b></h3>
<p><a href="http://blog.mozilla.com/mrz/files/2009/09/amo-glb.png"><img src="http://blog.mozilla.com/mrz/files/2009/09/amo-glb-300x142.png" alt="Zeus GLB" title="Zeus GLB" width="300" height="142" class="alignright size-medium wp-image-568" /></a>For what seems like ages I&#8217;ve been trying to figure out how to best serve Asia-Pacific users.  It&#8217;s a tough case to make because I didn&#8217;t have a method to easily measure how much bandwidth traffic I&#8217;d need or how it would change page load times or user perceptions.</p>
<p>But I&#8217;m a network guy and I&#8217;ve had this feeling that we need something in this region.  We certainly have a growing population in the area &#8211; 5 of the top 9 countries we&#8217;ve seen > 20% growth in the last five months have been in Asia.  I&#8217;ve only been lacking operational data.</p>
<p><img src="http://blog.mozilla.com/mrz/files/2009/09/amo-sg-bw2-300x199.png" alt="AMO .sg bandwidth" title="AMO .sg bandwidth" width="300" height="199" class="alignleft size-medium wp-image-603" />Over the summer I&#8217;ve been playing and testing <a href="http://voxel.net/">Voxel&#8217;s</a> Silverlining Technology Preview, their global cloud computer platform.  On October 1, it&#8217;s going to move out of Preview and their cloud platform would be generally available in all their POPs, including Singapore.</p>
<p>Seemed like a good way to get data&#8230;</p>
<p>In a matter of hours I had spun up two Zeus <a href="http://www.zeus.com/products/zxtm/index.html">ZXTM</a> and one <a href="http://www.zeus.com/products/zxtmglb/index.html">GLB</a> cloud servers with Voxel in Singapore.  I waited till our normal Thursday night window before turning it live.</p>
<h3><b>A couple take away notes on this</b></h3>
<ol>
<li>We did it right.  We built a proxy/caching platform as part of The Amsterdam Reboot that can easily be replicated anywhere and instantly provide real quantifiable performance benefits.</li>
<li>Clouds make perfect sense to do proof-of-concepts.</li>
<li>IT can move really fast.  We had these three servers ready to go Wednesday morning in a couple hours..</li>
<li>Mozilla&#8217;s webdev crew does an awesome job writing extremely cachable webapps.  I&#8217;m seeing a 91% cache hit rate (350,000 objects, 1.5GB).</li>
<li>If this is a sustainable location, pushing user-focused sites like <a href="http://support.mozilla.com/"><code>support.mozilla.com</code></a> to Singapore are next on my list.
<li>I&#8217;d love to run this concept in other geographies like South America.  Who does clouds down there?
</ol>
<p>What I most like about this platform is that it&#8217;ll allow us to strategically get content closer to users where it most makes sense.  </p>
<p><i>This is right now just a proof-of-concept.  It lets me experiment and get real metrics. I&#8217;m very interested in hearing from people who actually live in the area &#8211; does this make you happier?</i></p>
<h3><b>One more thing</b></h3>
<p>I was lucky to have two providers who stepped in and provided resources to let me run this POC.  Both deserve a special thanks.</p>
<ol>
<li><a href="http://www.zeus.com/"><b>Zeus</b>.</a>  These  guys are great and quickly issued temporary licenses for both ZXTM and GLB.</li>
<li><a href="http://voxel.net/"><b>Voxel</b></a>.  You  guys have a nice platform in the right part of the world.  I like working with you.</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2009/09/25/where-in-the-world-is-amo-part-vi-we-did-it-again/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Fx 3.0.7 release &amp; this morning&#8217;s network performance issues</title>
		<link>http://blog.mozilla.com/mrz/2009/03/05/fx-307-release-this-mornings-network-performance-issues/</link>
		<comments>http://blog.mozilla.com/mrz/2009/03/05/fx-307-release-this-mornings-network-performance-issues/#comments</comments>
		<pubDate>Fri, 06 Mar 2009 01:17:47 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[release]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=413</guid>
		<description><![CDATA[In computers systems (and with others) there are often bottlenecks and removing those often reveals new ones. Today&#8217;s an example of just that. During a normal release we have tools we can use to adjust the rate at which we offer updates. We use this to reduce load on the back end systems or to&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2009/03/05/fx-307-release-this-mornings-network-performance-issues/" title="Read the rest of &#8220;Fx 3.0.7 release &#38; this morning&#8217;s network performance issues&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<p>In computers systems (and with others) there are often <a href="http://en.wikipedia.org/wiki/Bottleneck_%28engineering%29">bottlenecks</a> and removing those often reveals new ones.  Today&#8217;s an example of just that.</p>
<p>During a normal release we have tools we can use to adjust the rate at which we offer updates.  We use this to reduce load on the back end systems or to help reduce load on the download mirrors.</p>
<p>Our preference is to do a release completely unthrottled so users get timely updates.</p>
<p>During the Firefox 3.0.6 release we had a number of system problems that prevented us from releasing updates unthrottled.  These were all detailed in the <a href="https://wiki.mozilla.org/Releases/Firefox_3.0.6/Post_Mortem#IT">Post Mortem</a>.</p>
<p>To the Operations Team&#8217;s credit (and I&#8217;m <u>serious</u> here), most of those issues were removed prior to yesterday&#8217;s Firefox 3.0.7 release and by 9am this morning we were cranking along &#8211; no throttling.</p>
<p>Unfortunately the Mirror Network started showing pressure and instead of throttling back on the release, we opted to augment the Mirror Network with our own download servers in San Jose.</p>
<p>That pushed our aggregate bandwidth out of San Jose to nearly 3Gbps:</p>
<p><a href="http://blog.mozilla.com/mrz/files/2009/03/globalbw10am.png"><img class="alignnone size-full wp-image-414" title="Global Bandwidth over 2Gbps" src="http://blog.mozilla.com/mrz/files/2009/03/globalbw10am.png" alt="Global Bandwidth over 2Gbps" width="603" height="286" /></a><a href="http://blog.mozilla.com/mrz/files/2009/03/globalbw10am.png"></a></p>
<p>At around this time offsite monitors starting alerting about a sharp increase in page load times to various Mozilla website properties.  Took a bit to track down but the <a href="http://blog.mozilla.com/it/2009/02/17/mozilla-scheduled-downtime-02172009-7pm-11pm-pst-0300-0700-02182009-utc/">newly turned up</a> Level 3 peer was saturated:</p>
<p><a href="http://blog.mozilla.com/mrz/files/2009/03/l3-flat.png"><img class="alignnone size-full wp-image-415" title="Level3" src="http://blog.mozilla.com/mrz/files/2009/03/l3-flat.png" alt="Level3" width="603" height="286" /></a></p>
<p>Any outbound traffic whose best route was out through Level3 was impacted.  We fixed this temporarily by turning down Level3.</p>
<p><i>(I should note that our design requirements for upstream transit is at least two connections per provider so we can push 2Gbps.  Level 3 is no exception, however, the second connection has been offline because Derek was seeing a lot of packet loss across the optical connection which coincidentally got resolved today.)</i></p>
<p>These problems are solvable and we&#8217;ve had plans to put tools in place to balance load during situations like this.  Unfortunately, today&#8217;s issues came up a lot quicker than we had planned.</p>
<p>A couple things we&#8217;ll be looking at before the next release:</p>
<ol>
<li>Evaluating <a href="http://www.internap.com/internet-services/internet-access/network-performance/fcp/">Internap&#8217;s FCP</a> to dynamically shift traffic based on cost and performance metrics. (And as luck would have it, this showed up this afternoon!)</li>
<li>Looking to see how we can better balance outbound traffic outside of using FCP.</li>
<li>Adding capacity to our Mirror Network (can <a href="http://www.mozilla.org/mirroring.html">you help</a>?).</li>
<li>Evaluating options around upgrading from several 1GE upstream connections to 10GE connections.</li>
</ol>
<p>This is a great problem to have, to be sure, and a far cry from the panic three  years ago of <i>&#8220;OMG we&#8217;re about to push 100Mbps!&#8221;</i>.  </p>
<p>I&#8217;m really interested in how others have gone about solving problems like this.  Leave me comments.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2009/03/05/fx-307-release-this-mornings-network-performance-issues/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>More traffic analysis with NetFlow</title>
		<link>http://blog.mozilla.com/mrz/2009/02/19/more-traffic-analysis-with-netflow/</link>
		<comments>http://blog.mozilla.com/mrz/2009/02/19/more-traffic-analysis-with-netflow/#comments</comments>
		<pubDate>Thu, 19 Feb 2009 23:52:25 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[bandwidth]]></category>
		<category><![CDATA[netflow]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=311</guid>
		<description><![CDATA[I&#8217;ve been working on a couple capacity planning projects and have been knee deep in bandwidth metrics. That, combined with turning up Level3 yesterday got me looking more into where that bandwidth is coming from (and Reed asked). The first chart shows a breakdown by protocol. Shouldn&#8217;t be any surprise that 82% of Mozilla&#8217;s traffic&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2009/02/19/more-traffic-analysis-with-netflow/" title="Read the rest of &#8220;More traffic analysis with NetFlow&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.mozilla.com/mrz/files/2009/02/bandwidth-by-port.png"><img class="alignleft size-medium wp-image-322" title="Bandwidth usage by port" src="http://blog.mozilla.com/mrz/files/2009/02/bandwidth-by-port-300x180.png" alt="Bandwidth usage by port" width="300" height="180" /></a></p>
<p>I&#8217;ve been working on a couple capacity planning projects and have been knee deep in bandwidth metrics.  That, combined with turning up <a href="http://blog.mozilla.com/mrz/2009/02/18/level3-post-bgp-turn-up/">Level3 yesterday</a> got me looking more into where that bandwidth is coming from (and Reed asked).</p>
<p>The first chart shows a breakdown by protocol.  Shouldn&#8217;t be any surprise that 82% of Mozilla&#8217;s traffic is web related (SSL being the larger which, of course, make sense since it is out to destroy me).  The &#8220;Other&#8221; category was filled with services under 1%.</p>
<p><a href="http://blog.mozilla.com/mrz/files/2009/02/bandwidth-by-site.png"><img class="alignright size-medium wp-image-323" title="Bandwidth usage by site" src="http://blog.mozilla.com/mrz/files/2009/02/bandwidth-by-site-300x192.png" alt="Bandwidth usage by site" width="300" height="192" /></a><br />
I took a look at the same bandwidth data and broke it down by source.  Most of the traffic is from <a href="https://addons.mozilla.org/"><code>addons.mozilla.org</code></a> (which isn&#8217;t surprising &#8211; it alone causes all my SSL scaling headaches).</p>
<p>The other sites aren&#8217;t too surprising to me after a couple rounds of load balancer testing.  I expected and do see <code>fxfeeds.mozilla.com</code> (<a href="http://www.mozilla.com/en-US/firefox/livebookmarks.html">Firefox Live Bookmarks</a>), <code>versioncheck.addons.mozilla.org</code> and <code>services.addons.mozilla.org.</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2009/02/19/more-traffic-analysis-with-netflow/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Level3, post BGP turn up</title>
		<link>http://blog.mozilla.com/mrz/2009/02/18/level3-post-bgp-turn-up/</link>
		<comments>http://blog.mozilla.com/mrz/2009/02/18/level3-post-bgp-turn-up/#comments</comments>
		<pubDate>Wed, 18 Feb 2009 23:11:09 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Networking]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=301</guid>
		<description><![CDATA[Derek turned up BGP peering with Level3 this morning out of San Jose (this was supposed to be part of last night&#8217;s maintenance but he ran into turn up problems on Level3&#8242;s side). We&#8217;ve grown (bandwidth-wise) to the extent that having two transit providers wasn&#8217;t sufficient. Should either fail, I wouldn&#8217;t have felt comfortable pushing&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2009/02/18/level3-post-bgp-turn-up/" title="Read the rest of &#8220;Level3, post BGP turn up&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<p>Derek turned up BGP peering with Level3 this morning out of San Jose (this was supposed to be part of <a href="http://blog.mozilla.com/it/2009/02/17/mozilla-scheduled-downtime-02172009-7pm-11pm-pst-0300-0700-02182009-utc/">last night&#8217;s maintenance</a> but he ran into turn up problems on Level3&#8242;s side).<br />
<a href="http://blog.mozilla.com/mrz/files/2009/02/sj-outboundbw.png"><img class="alignleft size-medium wp-image-302" title="sj-outboundbw" src="http://blog.mozilla.com/mrz/files/2009/02/sj-outboundbw-300x142.png" alt="sj-outboundbw" width="300" height="142" /></a></p>
<p>We&#8217;ve grown (bandwidth-wise) to the extent that having two transit providers wasn&#8217;t sufficient.   Should either fail, I wouldn&#8217;t have felt comfortable pushing ~800Mbps out a single provider without any backup.</p>
<p>The trick will be making sure to hit bandwidth commits across all three&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2009/02/18/level3-post-bgp-turn-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Switch IOS Upgrade Post-Mortem</title>
		<link>http://blog.mozilla.com/mrz/2009/01/12/switch-ios-upgrade-post-mortem/</link>
		<comments>http://blog.mozilla.com/mrz/2009/01/12/switch-ios-upgrade-post-mortem/#comments</comments>
		<pubDate>Mon, 12 Jan 2009 18:00:09 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Networking]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=243</guid>
		<description><![CDATA[Last night Derek attempted to upgrade IOS on core1 &#38; core2 to pickup software support for Cisco’s ACE module. We ran into several issues and postponed the upgrade on core2 until those issues are resolved. The switch&#8217;s Compact Flash cards weren&#8217;t formatted in a format that rommon (the low level boot loader) could read and&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2009/01/12/switch-ios-upgrade-post-mortem/" title="Read the rest of &#8220;Switch IOS Upgrade Post-Mortem&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<p>Last night <a href="http://blog.mozilla.com/it/2009/01/11/mozilla-scheduled-downtime-01112009-8pm-11pm-pst-0500-0700-01122009-utc/">Derek attempted to upgrade</a> IOS on <code>core1</code> &amp; <code>core2</code> to pickup software support for <a href="http://www.cisco.com/en/US/products/ps6906/index.html">Cisco’s ACE module</a>.</p>
<p>We ran into several issues and postponed the upgrade on <code>core2</code> until those issues are resolved.</p>
<ol>
<li>The switch&#8217;s Compact Flash cards weren&#8217;t formatted in a format that <code>rommon</code> (the low level boot loader) could read and the switch failed to load any OS when rebooted (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=473084">bug 473084</a>).<br />
<blockquote><p><i>&lt;rant&gt;</i><br />
Unfortunately IOS didn&#8217;t flag that as an error when reading/writing to it. It didn&#8217;t even flag an error when the boot variable was set to boot off of it which is stupid because IOS clearly knew as shown in the log when I had remote-hands re-seat the card:</p>
<p><code> Jan 11 22:44:23 core2 3927937: Jan 11 22:44:21.978 PDT: %PCMCIAFS-SP-5-DIBERR: PCMCIA disk 0 is formatted from a different router or PC. A format in this router is required before an image can be booted from this device</code><br />
<i>&lt;/rant&gt;</i></p></blockquote>
</li>
<li>Two of the VMware ESX storage arrays are single-homed, connected to one switch (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=473113">bug 473113</a>).  This is fallout from <a href="http://blog.mozilla.com/justin/2008/06/16/build-storage-issues-resolved/">previous NetApp performance issues</a> that were forgotten and never addressed and caused a number of build VMs to go offline (<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=473112">bug 473112</a>) .</li>
<li>A number of non-user facing, multi-homed hosts went offline.  All of the RHEL Linux servers have an active/standby network setup.  In several cases the standby interface didn&#8217;t work or wasn&#8217;t properly configured.  This was more of an annoyance to the IT Team than to anyone else but did cause outages for some backend services (most notably the VMware <a href="http://www.vmware.com/products/vi/vc/">VC</a> server and <code>mradm01</code>, one of the Nagios servers).</li>
</ol>
<p>We&#8217;ll be addressing those issues before scheduling the remaining upgrade to <code>core2</code>.  We&#8217;ll also be looking at implementing some routine (perhaps quarterly) test of the infrastructure in a controlled environment to ensure its high &#8220;availbility-ness&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2009/01/12/switch-ios-upgrade-post-mortem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Uptime</title>
		<link>http://blog.mozilla.com/mrz/2009/01/11/uptime/</link>
		<comments>http://blog.mozilla.com/mrz/2009/01/11/uptime/#comments</comments>
		<pubDate>Sun, 11 Jan 2009 20:37:02 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[Networking]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=233</guid>
		<description><![CDATA[I&#8217;m fairly conservative when it comes to upgrading switches. I generally only upgrade to pick up security fixes. It&#8217;s rare that I&#8217;ll upgrade just to stay current. Tonight&#8217;s one of those rare exceptions. Derek is upgrading both core1 and core2 to pickup software support for Cisco&#8217;s ACE module. We&#8217;re planning on using this in conjunction&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2009/01/11/uptime/" title="Read the rest of &#8220;Uptime&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m fairly conservative when it comes to upgrading switches.  I generally only upgrade to pick up security fixes.  It&#8217;s rare that I&#8217;ll upgrade just to stay current.</p>
<p>Tonight&#8217;s one of those rare exceptions.  <a href="http://blog.mozilla.com/it/2009/01/11/mozilla-scheduled-downtime-01112009-8pm-11pm-pst-0500-0700-01122009-utc/">Derek is upgrading</a> both <code>core1</code> and <code>core2</code> to pickup software support for <a href="http://www.cisco.com/en/US/products/ps6906/index.html">Cisco&#8217;s ACE module</a>.  We&#8217;re planning on using this in conjunction with the Zeus ZXTM cluster <a href="http://blog.mozilla.com/mrz/2008/12/04/load-balancer-performance-issues-fxfeedsmozillaorg-versioncheck/">we setup</a>.</p>
<p>A little sad though.  It&#8217;s going to reset <code>uptime</code>:</p>
<blockquote><p><code>core1#sh ver | inc uptime<br />
core1 uptime is 2 years, 28 weeks, 2 days, 20 hours, 40 minutes</code></p>
<p><code>core2#sh ver | inc uptime<br />
core2 uptime is 2 years, 28 weeks, 2 days, 20 hours, 51 minutes</code></p></blockquote>
<p>Love &#8216;em or hate &#8216;em, Cisco gear is solid.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2009/01/11/uptime/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Load Balancer performance issues, fxfeeds.mozilla.org &amp; versioncheck</title>
		<link>http://blog.mozilla.com/mrz/2008/12/04/load-balancer-performance-issues-fxfeedsmozillaorg-versioncheck/</link>
		<comments>http://blog.mozilla.com/mrz/2008/12/04/load-balancer-performance-issues-fxfeedsmozillaorg-versioncheck/#comments</comments>
		<pubDate>Thu, 04 Dec 2008 07:08:36 +0000</pubDate>
		<dc:creator>mrz</dc:creator>
				<category><![CDATA[load balancing]]></category>
		<category><![CDATA[Mozilla]]></category>
		<category><![CDATA[citrix]]></category>
		<category><![CDATA[netscaler]]></category>

		<guid isPermaLink="false">http://blog.mozilla.com/mrz/?p=178</guid>
		<description><![CDATA[I mentioned briefly in Monday&#8217;s meeting the performance issues we&#8217;re having with our load balancers.  Since then, we&#8217;ve been hustling to turn up something in the short term to handle Thursday&#8217;s Major Update and Firefox 3.0.5/2.0.0.19 release (see here). For a number of months we&#8217;ve been looking at Zeus and their ZXTM product.  It has&#8230; <a class="more-link" href="http://blog.mozilla.com/mrz/2008/12/04/load-balancer-performance-issues-fxfeedsmozillaorg-versioncheck/" title="Read the rest of &#8220;Load Balancer performance issues, fxfeeds.mozilla.org &#38; versioncheck&#8221;">Read more</a>]]></description>
			<content:encoded><![CDATA[<p>I mentioned briefly in <a href="https://wiki.mozilla.org/WeeklyUpdates/2008-12-01#IT">Monday&#8217;s meeting</a> the performance issues we&#8217;re having with our load balancers.  Since then, we&#8217;ve been hustling to turn up <em>something</em> in the short term to handle Thursday&#8217;s Major Update and Firefox 3.0.5/2.0.0.19 release (see <a href="https://wiki.mozilla.org/Releases">here</a>).</p>
<p>For a number of months we&#8217;ve been looking at <a href="http://www.zeus.com/">Zeus</a> and their <a href="http://www.zeus.com/products/zxtm/index.html">ZXTM</a> product.  It has some advantages (and some disadvantages) and one of the biggest is that it&#8217;s all software and I can quickly deploy it on any available hardware we have.  <a href="http://www.zeus.com/">Zeus</a> has been extremely helpful in quickly issuing unlimited node eval license keys on short notice (so thanks Jasper/Chris) and providing the level of supported I&#8217;d more likely expect to be given to a paying customer.</p>
<p>We&#8217;ve shifted two of the highest traffic back-end infrastructure services for Firefox over to a Zeus ZXTM cluster:</p>
<ol>
<li><tt>fxfeeds.mozilla.org</tt> &#8211; Live Bookmarks feed URL in a default Firefox install.</li>
<li><tt>versioncheck.addons.mozilla.org</tt> &#8211; URL Firefox uses to check for Add-On updates.</li>
</ol>
<p><tt>fxfeeds.mozilla.org</tt> is nothing more than an RSS feed.  The site itself has no real content &#8211; there isn&#8217;t even a DocumentRoot defined in Apache.  In fact, the config is nothing but 40 HTTP redirects:</p>
<pre style="padding-left: 30px;">[root@mradm02 domains]# egrep 'Redirect|Rewrite' fxfeeds.mozilla.org.conf  | wc -l
40</pre>
<p><tt>versioncheck.addons.mozilla.org</tt> is my one Firefox 3 <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=416416">claim-to-fame</a>.  Without that change, a lot of the scalability work we&#8217;re doing would be extremely difficult and require a lot more QA time.</p>
<p>Since Firefox checks for Add-On updates after updating itself (and periodically on its own), <tt>versioncheck.addons.mozilla.org</tt> is one of the sites that sees a large spike in traffic around release time.  It&#8217;s also highly cachable content and easy to scale with CPU (for SSL) and memory (for cache).</p>
<p>I moved <tt>fxfeeds.mozilla.org </tt>over yesterday and was astonished to see what sort of traffic that site alone generated &#8211; staggering might be a better way to say it.  Nearly 40Mbps of basically 302 redirects and upwards of 400,000 connections/second (and incidentally, moving that site off the Netscalers significantly dropped its resources issues).</p>
<p><tt>versioncheck.addons.mozilla.org </tt>was moved Monday morning onto a test ZXTM cluster and again later this afternoon on a more production capable ZXTM cluster.  It&#8217;ll push 30Mbps on its own during non-release periods and 2-3x that during a full release.</p>
<p>Since no post is good without pictures, I grabbed two graphs from the ZXTM cluster.  The first shows connections/second and the other shows bandwidth (bits per second).</p>
<p style="text-align: center;"><a href="http://blog.mozilla.com/mrz/files/2008/12/zxtm-fxfeeds-vamo-hits.png"><img class="size-full wp-image-181 aligncenter" title="Connections/second, fxfeeds &amp; versioncheck" src="http://blog.mozilla.com/mrz/files/2008/12/zxtm-fxfeeds-vamo-hits.png" alt="" width="500" height="396" /></a><a href="http://blog.mozilla.com/mrz/files/2008/12/zxtm-fxfeeds-vamo-bw.png"><img class="alignnone size-full wp-image-180" title="Bandwidth, fxfeeds &amp; versioncheck" src="http://blog.mozilla.com/mrz/files/2008/12/zxtm-fxfeeds-vamo-bw.png" alt="" width="500" height="388" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.mozilla.com/mrz/2008/12/04/load-balancer-performance-issues-fxfeedsmozillaorg-versioncheck/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

