<?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>Jim Leach</title>
	<atom:link href="http://www.jimleach.co.uk/jimleach-wp/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jimleach.co.uk/jimleach-wp</link>
	<description>Ramblings of a CCIE</description>
	<lastBuildDate>Fri, 30 Dec 2011 21:12:15 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>ACSv5 &#8211; RADIUS Attributes in Authz Responses</title>
		<link>http://www.jimleach.co.uk/jimleach-wp/2011/12/acsv5-radius-attributes-in-authz-responses/</link>
		<comments>http://www.jimleach.co.uk/jimleach-wp/2011/12/acsv5-radius-attributes-in-authz-responses/#comments</comments>
		<pubDate>Fri, 30 Dec 2011 21:02:56 +0000</pubDate>
		<dc:creator>Jim</dc:creator>
				<category><![CDATA[Tech Notes]]></category>
		<category><![CDATA[acs]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[config]]></category>

		<guid isPermaLink="false">http://www.jimleach.co.uk/jimleach-wp/?p=354</guid>
		<description><![CDATA[This is a quick how-to guide on returning RADIUS attributes in ACSv5. After a tweet by Ethan Banks (@ecbanks) it occurred to me that the majority of network engineers out there are used to the &#8216;old school&#8217; of ACS 4.x. I&#8217;ve only really know version 5 &#8211; I was actually part of the team who [...]]]></description>
			<content:encoded><![CDATA[<p>This is a quick how-to guide on returning RADIUS attributes in ACSv5.  After a tweet by Ethan Banks (<a href="http://twitter.com/ecbanks" title="Ethan Banks (@ecbanks)" target="_blank">@ecbanks</a>) it occurred to me that the majority of network engineers out there are used to the &#8216;old school&#8217; of ACS 4.x.  I&#8217;ve only really know version 5 &#8211; I was actually part of the team who did the initial Beta testing and NAC-RADIUS inter-op testing, so I don&#8217;t really have a view of how different it is to version 4.  But I found that&#8217;s a good thing; when I first started the Beta testing, I was working alongside an &#8216;old-school&#8217; engineer who&#8217;d worked on v4 for a long time, and he was totally confused by v5&#8242;s new approach &#8211; for me, it all seemed to make sense.</p>
<p>Anyway &#8211; this was supposed to be a quick how-to returning RADIUS attributes &#8211; firstly, you can&#8217;t define a &#8216;custom&#8217; IETF attribute, else it wouldn&#8217;t be an IETF one. But you can use one of the many pre-defined ones available in the Dictionary.</p>
<p><strong>Q. What&#8217;s the Dictionary?</strong><br />
<em>A. In ACSv5, any attribute or value that can be sent/received with an authentication or accounting interaction is defined in the Dictionary.  A dictionary entry will define the attributes&#8217;s Name and value-type (integer, boolean, string..) as well as any pre-defined values</em></p>
<p>So &#8211; on the left navigation under <em>System Administration -> Configuration -> Dictionaries -> Protocols -> RADIUS -> RADIUS IETF</em> you&#8217;ll find all the RADIUS IETF attributes that are available to ACS &#8211; either for use as a response, or to validate against in a rule.<br />
If you&#8217;re wondering.. RADIUS VSA stands for &#8216;Vendor Specific Attributes&#8217; &#8211; such as Cisco&#8217;s AV-PAIR or Microsoft&#8217;s CHAP or even Juniper&#8217;s &#8216;Allow commands&#8217;.</p>
<p><img src="http://www.jimleach.co.uk/jimleach-wp/wp-content/uploads/2011/12/ACS_RADIUS_Dictionary.png" alt="ACS Radius Dictionary" width="550px" /></p>
<p>So how to make use of these..</p>
<p>RADIUS and other attributes are returned to an authenticating device when a rule in the &#8216;Authorization Policy&#8217; is hit, however in the spirit of &#8216;object-orientated&#8217; doo-hickies, they are not directly defined here. Instead you define an &#8216;Authorization Profile&#8217; under Policy-Elements.  The idea being, you can build up authorization responses (a set of attributes for example) and use them multiple times in multiple Authorization Policies.</p>
<p>Confused yet?</p>
<p>Under <em>Policy Elements -> Authorization and Permissions -> Network Access -> Authorization Profiles</em> &#8211; create yourself a new profile and go to the &#8216;RADIUS Attributes&#8217; tab:</p>
<p><img src="http://www.jimleach.co.uk/jimleach-wp/wp-content/uploads/2011/12/ACS_CreateAuthProfile.png" alt="ACS Auth Profile" width="550px"/></p>
<p>Now you can select and &#8216;Add&#8217; the attributes you want to make use of to your Auth Profile, remembering to set the value you want</p>
<p><img src="http://www.jimleach.co.uk/jimleach-wp/wp-content/uploads/2011/12/ACS_RADIUS_ATT_SEL.png" alt="ACS Attaching RADIUS Attributes to Auth Profile" width="550px"/></p>
<p>The value is set in the bottom box.  If it&#8217;s a custom value, you should be able to enter string text, if it&#8217;s predefined or boolean, then use the Select button to pick the value it should be.</p>
<p><img src="http://www.jimleach.co.uk/jimleach-wp/wp-content/uploads/2011/12/ACS_ADDNEWATTRIBUTE.png" alt="Adding attributes to Auth Profile" width="550px"/></p>
<p>If you Add an attribute and make a mistake &#8211; select it in the list and click &#8216;Edit&#8217; &#8211; this will pull it back down into the boxes.. here you&#8217;ll edit it and click &#8216;Replace&#8217; to apply the changes. (The wording of the buttons isn&#8217;t great, I&#8217;ll admit).</p>
<p>Name and Submit your new profile and it&#8217;ll now be available under &#8216;Authorization Policies&#8217; for use.</p>
<p><img src="http://www.jimleach.co.uk/jimleach-wp/wp-content/uploads/2011/12/ACS_ATTRIBUTE_INTO_AUTHZPROFLE.png" alt="Adding Auth Profile to Auth Rule" width="550px"/></p>
<p>This really was a &#8216;quick and dirty&#8217; post.  I&#8217;ll try and write-up the whole ACSv5 approach to authentication/authorization and accounting in the next few days.</p>
<p>Cheers- Jim.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jimleach.co.uk/jimleach-wp/2011/12/acsv5-radius-attributes-in-authz-responses/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Good CoPP, Bad CoPP &#8211; Balanced Policing</title>
		<link>http://www.jimleach.co.uk/jimleach-wp/2011/10/good-copp-bad-copp-balanced-policing/</link>
		<comments>http://www.jimleach.co.uk/jimleach-wp/2011/10/good-copp-bad-copp-balanced-policing/#comments</comments>
		<pubDate>Thu, 20 Oct 2011 20:23:15 +0000</pubDate>
		<dc:creator>Jim</dc:creator>
				<category><![CDATA[Tech Notes]]></category>
		<category><![CDATA[c6500]]></category>
		<category><![CDATA[copp]]></category>
		<category><![CDATA[multicast]]></category>
		<category><![CDATA[nx-os]]></category>

		<guid isPermaLink="false">http://www.jimleach.co.uk/jimleach-wp/?p=350</guid>
		<description><![CDATA[Right &#8211; this might be a bit long.. I haven&#8217;t yet worked out how to make a &#8216;short but sucint&#8217; blog post.. I had one of those &#8216;tada&#8216; or &#8216;eurika&#8216; or &#8216;bloody hell, why didn&#8217;t that occur to me earlier&#8217; moments this afternoon (it was the latter).  You know what it&#8217;s like:- you&#8217;re at the [...]]]></description>
			<content:encoded><![CDATA[<p>Right &#8211; this might be a bit long.. I haven&#8217;t yet worked out how to make a &#8216;short but sucint&#8217; blog post..</p>
<p>I had one of those &#8216;<strong>tada</strong>&#8216; or &#8216;<strong>eurika</strong>&#8216; or <strong>&#8216;bloody hell, why didn&#8217;t that occur to me earlier&#8217;</strong> moments this afternoon (it was the latter).  You know what it&#8217;s like:- you&#8217;re at the end of your tether trying to get something to work, you&#8217;ve been fumbling around for hours, and out of the corner of your brain a little flicker resembling a thought process occurs.  You give it a moment to surface, chew on it and then &#8216;<em>oh hell, I&#8217;m an idiot&#8217;</em> as you prove you&#8217;ve fixed your own mess of a problem. This happened while staring at a multicast convergence problem today &#8211; and it was all due to bad CoPP.</p>
<p><strong>CoPP &#8211; or <a href="http://www.cisco.com/en/US/docs/ios/qos/configuration/guide/ctrl_plane_policng.html">Control Plane Policing</a></strong> &#8211; is regarded by Cisco as a security feature/mechanism. It&#8217;s designed to protect the switch&#8217;s CPU from being overwhelmed by control-plane traffic (whether that traffic is legitimate, accidental or the likes of a DoS attack).  The <a href="http://www.cisco.com/en/US/docs/switches/lan/catalyst6500/ios/12.2SX/configuration/guide/copp.html">Catalyst 6500 had it</a> &#8211; but no-one ever seemed to configured it. In the Nexus 7000 and all new NX-OS based switches, it&#8217;s a default configuration (unless you&#8217;re a monkey and choose &#8216;none&#8217; during the <a href="http://www.cisco.com/en/US/docs/switches/datacenter/sw/5_x/nx-os/fundamentals/configuration/guide/Cisco_Nexus_7000_Series_NX-OS_Fundamentals_Configuration_Guide_Release_5.x_chapter3.html#con_1108059">startup script</a>).</p>
<p>CoPP is configured using MQC and allows you define classes of traffic that might head to the CPU and apply a policing policy to it..  Usually, the default policies (lenient, moderate or strict) are fine for most network deployments, say 80% of them.  For the other 20% you have to tweak the policy a little.</p>
<p><strong>Case 1</strong> Bad CoPP &#8211; A common [and in my opinion, stupid] method for a server detecting the loss of a gateway is by using ARP. In the old days, this wasn&#8217;t a problem &#8211; the 6500 would just churn through the ARPs and spit out responses, perhaps missing one or two. When a customer decided to test the Nexus 7000, they found that their servers kept seeing gateway losses.  Turns out, the default policy was being exceeded by the sheer number of servers sending out ARPs. The customer moaned. Of course they would, they think the switch is bad and broken and.. anyways. So to get over the [stupid stupid idea] the CoPP is tuned to allow more ARP up to the CPU.  It&#8217;s a solution to a problem that&#8217;s easy to implement, rather than fixing the fact that your servers don&#8217;t need to ARP for the gateway as you have HSRP (but hey, who am I to argue with the customer?).</p>
<p><strong>Case 2</strong> Good CoPP &#8211; A customer has a setup where they need a fast multicast-convergence time but are also receiving the same (S,G) streams on two different interfaces.  Fast multicast-convergence means we need to register the multicast frames with the RP as quickly as possible, so the RP can learn and then (as we happen to be using PIM Anycast-RP) relay the PIM registers to other RPs.  For this, we can increase the policing of PIM protocol messages (the default was 200pps, so we upped it to 600pps).  This is fine, we&#8217;re just allowing the policy to scale upwards.</p>
<p>The trouble of balancing the CoPP came with the (S,G)s being received on two interfaces.  In multicast we can only have one interface being the incoming interface &#8211; this incoming interface is determined by the RPF check (reverse path forwarding) and is programmed into hardware.  Once programmed, all matching multicast on that interface is forwarded in hardware.  The (S,G)s being received at the non-RPF interface would not match a hardware (FIB) entry &#8211; and thus would be forwarded up to CPU for software processing.  The problem with this is we&#8217;re punting useless traffic up to the CPU, wasting CPU resources and preventing that inband bandwidth for being used for other things (such as that fast multicast convergence).  When testing this initially, I identified IPMCMISS as the class which this useless, RPF-failing, traffic was hitting in CoPP and trimmed it right back to 10pps.  When I went to do another convergence test, I found that convergence was super-slow, even though I had tuned the PIMREG upwards.</p>
<p>What I didn&#8217;t realised was that IPMCMISS doesn&#8217;t actually [just] match RPF-failing traffic &#8211; it actually matches any multicast traffic that triggers a &#8216;FIB-miss&#8217; &#8211; <em>this was the &#8216;bloody hell&#8217; moment</em>.  Whenever we receive multicast traffic into hardware, and there&#8217;s no hardware-programmed FIB entry, it&#8217;s a FIB-miss &#8211; and this is punted to CPU for processing or software switching.  FIB-miss would be triggered the first time we see an (S,G), which is how we get into the process of punting to CPU, PIM learning, inserting into MRIB, generating a PIM Register and programming the hardware. So by cutting away the bandwidth available to IPMCMISS, I was also reducing the chance of new (S,G) frames making it to the CPU for learning.</p>
<p>So to summarise &#8211; I now I have to work out how to balance policing of the useless traffic and wasting CPU bandwidth against the need to learn new (S,G)s.  I would never condone opening CoPP up for something like ARP, it sounds silly to me.</p>
<p>The end.</p>
<p>PS &#8211; [Just an updated thought] &#8211; It&#8217;s worth noting that on the N7000 you can define different class-maps for IPMCMISS and RPF-failing traffic, you can&#8217;t yet do this on the N3000, and I have yet to check the N5x00.<br />
<code>class-map type control-plane match-any mc-rpf-fail<br />
  match exception multicast rpf-failure</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jimleach.co.uk/jimleach-wp/2011/10/good-copp-bad-copp-balanced-policing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VM-FEX and VXLAN</title>
		<link>http://www.jimleach.co.uk/jimleach-wp/2011/10/vm-fex-and-vxlan/</link>
		<comments>http://www.jimleach.co.uk/jimleach-wp/2011/10/vm-fex-and-vxlan/#comments</comments>
		<pubDate>Thu, 13 Oct 2011 13:34:33 +0000</pubDate>
		<dc:creator>Jim</dc:creator>
				<category><![CDATA[DC]]></category>
		<category><![CDATA[Tech Notes]]></category>
		<category><![CDATA[Virtualisation]]></category>
		<category><![CDATA[codingrelic]]></category>
		<category><![CDATA[datacenter]]></category>
		<category><![CDATA[etherealmind]]></category>
		<category><![CDATA[UCS]]></category>
		<category><![CDATA[VIF]]></category>
		<category><![CDATA[vm-fex]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[vxlan]]></category>

		<guid isPermaLink="false">http://www.jimleach.co.uk/jimleach-wp/?p=346</guid>
		<description><![CDATA[So yesterday I had a chance to read up on both VXLAN (Virtual eXtensible LAN) and VM-FEX, as well as having a good discussion with Greg Ferro (@etherealmind) about VXLAN and he introduced me to the concept of OpenFlow. My source for VM-FEX was a whitepaper by Cisco on &#8216;Unify Virtual and Physical Networking with [...]]]></description>
			<content:encoded><![CDATA[<p>So yesterday I had a chance to read up on both VXLAN (Virtual eXtensible LAN) and VM-FEX, as well as having a good discussion with Greg Ferro (<a href="http://twitter.com/etherealmind" target="_blank">@etherealmind</a>) about VXLAN and he introduced me to the concept of <strong>OpenFlow</strong>.</p>
<p>My source for <strong>VM-FEX</strong> was a whitepaper by Cisco on &#8216;<a href="http://www.cisco.com/en/US/prod/collateral/modules/ps10277/ps10331/white_paper_c11-618838_ns1124_Networking_Solutions_White_Paper.html" target="_blank">Unify Virtual and Physical Networking with Cisco Virtual Interface Card</a>&#8216; &#8211; which made things pretty easy to understand.  The short story is; we attached vNICs to virtual machines using VMWare&#8217;s DirectPath &#8211; the VM sees a NIC as normal, in vCenter it sees a vNIC, in reality it&#8217;s a hardware-based NIC emulation on the VIC.  Instead of having a virtual switch on the host we do PTS (Pass Thru Switching) and the vNIC is bound to a VIF (Virtual InterFace) further up the path on a real physical switch.  That VIF is presented just like a normal switchport from a configuration point of view.. ie, it looks the same as a switchport on the end of a FEX (Fabric Extender.. aka 2232, 2148 etc).  This VM-FEX vNIC supports vMotion in vSphere 5 by doing some fancy stuff around the NIC registers and state information that&#8217;s on the VIC.  Now, this VM-FEX technology <em>only currently works inside UCS</em> &#8211; so we&#8217;ll have to wait to see how/if it can be implemented outside of that.</p>
<p><strong>Now to VXLAN..</strong> When I read <a href="http://codingrelic.geekhold.com/2011/09/care-and-feeding-of-vxlan.html" target="_blank">Coding Relic&#8217;s write-up</a> on how VXLAN works (there&#8217;s three pages, but they&#8217;re all good), I couldn&#8217;t help thinking &#8220;This is OTV&#8221;.  In fact, even after a quick discussion with Greg about the matter &#8211; I still think it&#8217;s OTV.  The only difference is, we&#8217;re not terminating Layer-2 on a switch somewhere, we&#8217;re terminating it directly on the host machine.  So now, these VXLANS only exist on the hosts &#8211; they don&#8217;t exist on the underlying infrastructure &#8211; which got me to thinking about how this scales.  In a normal vSwitch/dvSwitch/1000v environment, the virtual-switch on the host only needs to learn the MAC addresses of the directly connected VMs &#8211; everything else is northbound on the physical infrastructure, so there&#8217;s only one way to send it (ignoring all the stuff about mac-pinning and port-channeling, blah).  Now, we have VXLANS and only the hosts know what&#8217;s on that VXLAN &#8211; so essentially, the host now needs to have a bunch of MAC lookup tables (much like TCAM in a physical switch). Using similar control-plane methods as OTV, it learns the MAC addresses of VMs on other hosts via multicasts and then stores that information locally.  The whole point of VXLAN is to break out of the 4096-VLAN limit and allow easy multi-tenancy &#8211; but how much overhead does learning all the MACs of all the VMs on all these new VXLANs add to the host itself?  Of course, the obvious bad-points around VXLAN is visibility of traffic on the underlying infrastructure, policy enforcement has to take place on the virtual-switch and there&#8217;s an added layer of troubleshooting to do.</p>
<p><strong>OpenFlow</strong> is the next topic on my reading list.. I&#8217;ve had a quick introduction by Greg but I need to do the reading too.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jimleach.co.uk/jimleach-wp/2011/10/vm-fex-and-vxlan/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The New Job</title>
		<link>http://www.jimleach.co.uk/jimleach-wp/2011/10/the-new-job/</link>
		<comments>http://www.jimleach.co.uk/jimleach-wp/2011/10/the-new-job/#comments</comments>
		<pubDate>Tue, 11 Oct 2011 07:01:15 +0000</pubDate>
		<dc:creator>Jim</dc:creator>
				<category><![CDATA[Professional]]></category>
		<category><![CDATA[Oz]]></category>

		<guid isPermaLink="false">http://www.jimleach.co.uk/jimleach-wp/?p=343</guid>
		<description><![CDATA[So &#8211; time for that promised update on my new role in Cisco.. Datacenter Solution Engineer &#8211; I won&#8217;t give you the complete speil that&#8217;s in the job-spec but suffices to say this brings together my background in DC testing and my interests in virtualisation. The headline reads: TS Data-Centre Solution Engineer &#8211; will be [...]]]></description>
			<content:encoded><![CDATA[<p>So &#8211; time for that promised update on my new role in Cisco..</p>
<p>Datacenter Solution Engineer &#8211; I won&#8217;t give you the complete speil that&#8217;s in the job-spec but suffices to say this brings together my background in DC testing and my interests in virtualisation.  The headline reads:</p>
<blockquote><p>TS Data-Centre Solution Engineer &#8211; will be responsible for orchestrating the end-to-end solution support of Cisco’s Data Centre Solutions ( e.g. UCS &#038; Nexus Architectures, Vblock/FlexPod, VDI/VXI, Cloud solutions – Private and Public, etc). </p></blockquote>
<p>So basically &#8211; I help to deliver DC solutions which encompass the whole DC architecture.  From the R&#038;S side of things (Nexus), end-hosts (UCS), storage networking (MDS), and the virtualisation part (VMWare, Hyper-V, 1000v).  There&#8217;s a flip side to this as well; I help work to bring the Partners, vendors and customers up to speed on new technologies and features. On the side, there&#8217;ll also be some escalation support to the APAC TAC team.</p>
<p>That&#8217;s the short version of what I&#8217;ll be doing.  There&#8217;s still a long way before I feel confident in the role though. DC switching and routing technologies are fairly well known but anything that involves virtualisation appears to be moving at the speed of light in terms of development.  On my list of things I already have to catch up on: VM-FEX, VXLAN, OpenFlow and Hadoop clusters.  I&#8217;m putting <a href="http://blog.scottlowe.org/" target="_blank">Scott Lowe</a>&#8216;s <a target="_blank" href="http://www.amazon.co.uk/Mastering-VMware-VSphere-Scott-Lowe/dp/0470890800/ref=sr_1_1?ie=UTF8&#038;qid=1318316251&#038;sr=8-1">Mastering VMWare vSphere 5</a> on my reading list for this month too.</p>
<p>Next update &#8211; some good virtualisation bloggers and tweeters.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jimleach.co.uk/jimleach-wp/2011/10/the-new-job/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Time for an Update</title>
		<link>http://www.jimleach.co.uk/jimleach-wp/2011/10/time-for-an-update/</link>
		<comments>http://www.jimleach.co.uk/jimleach-wp/2011/10/time-for-an-update/#comments</comments>
		<pubDate>Mon, 03 Oct 2011 10:01:08 +0000</pubDate>
		<dc:creator>Jim</dc:creator>
				<category><![CDATA[Professional]]></category>
		<category><![CDATA[CVD]]></category>
		<category><![CDATA[ECATS]]></category>
		<category><![CDATA[Oz]]></category>
		<category><![CDATA[Safeharbor]]></category>

		<guid isPermaLink="false">http://www.jimleach.co.uk/jimleach-wp/?p=338</guid>
		<description><![CDATA[Yes, it&#8217;s not exactly a lively blog! With no updates between May and September (not that it ever was a wild party) &#8211; but now I have a pretty big update&#8230; I&#8217;m off to Australia. For nearly five years now I&#8217;ve worked for Cisco carrying out network system testing &#8211; initially as part of a [...]]]></description>
			<content:encoded><![CDATA[<p>Yes, it&#8217;s not exactly a lively blog! With no updates between May and September (not that it ever was a wild party) &#8211; but now I have a pretty big update&#8230;</p>
<p><em><strong>I&#8217;m off to Australia.</strong></em></p>
<p>For nearly five years now I&#8217;ve worked for Cisco carrying out network system testing &#8211; initially as part of a group called &#8216;NSITE&#8217;, who carried out internal testing for things like <a href="http://www.cisco.com/en/US/netsol/ns504/networking_solutions_program_category_home.html" title="Safeharbor" target="_blank">Safeharbor</a> and the <a href="http://www.cisco.com/en/US/netsol/ns741/networking_solutions_program_home.html" title="CVD" target="_blank">CVD</a> (Cisco Validated Design) program. In the last three years the same group has evolved to form ECATS &#8211; the Enhanced Customer Aligned Testing Services &#8211; which has been working with some of Cisco&#8217;s enterprise customers, giving them confidence in the stability in our platforms and that they &#8216;play nice&#8217; when pulled together as a network.</p>
<p>As of last week there&#8217;s change afoot.. I&#8217;ve applied (and been accepted) for a new role in the Technical Services part of Cisco as a &#8216;<em>Data Center Solution Engineer</em>&#8216; &#8211; working out of the Chatswood offices in Sydney.</p>
<p>This represents a huge change for me, both on a professional and personal level.  On the personal side of things I&#8217;m leaving behind many very close friends, some old friends, the family and those most important to me.  With any luck, those close to me are going to come to Australia in good time and those who aren&#8217;t moving can come and visit.  On the professional side of things&#8230; well that&#8217;ll be in the next post <img src='http://www.jimleach.co.uk/jimleach-wp/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Jim.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jimleach.co.uk/jimleach-wp/2011/10/time-for-an-update/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Revamp in progress</title>
		<link>http://www.jimleach.co.uk/jimleach-wp/2011/05/revamp-in-progressed/</link>
		<comments>http://www.jimleach.co.uk/jimleach-wp/2011/05/revamp-in-progressed/#comments</comments>
		<pubDate>Tue, 24 May 2011 19:45:03 +0000</pubDate>
		<dc:creator>Jim</dc:creator>
				<category><![CDATA[Personal]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://www.jimleach.co.uk/jimleach-wp/?p=296</guid>
		<description><![CDATA[So if you&#8217;ve ever visited my site before, you&#8217;ll know it looked very different. I&#8217;m having a bit of a revamp. I don&#8217;t have fantastic web skills, or design flare &#8211; so I&#8217;ve borrowed a theme to make things easier and keep it tidy. This may not be the final look (as of 24th May) [...]]]></description>
			<content:encoded><![CDATA[<p>So if you&#8217;ve ever visited my site before, you&#8217;ll know it looked very different.  I&#8217;m having a bit of a revamp.  I don&#8217;t have fantastic web skills, or design flare &#8211; so I&#8217;ve borrowed a theme to make things easier and keep it tidy.  This may not be the final look (as of 24th May) &#8211; I&#8217;m quite tempted to buy a theme from <a href="http://themeforest.net/">themeforest</a>.</p>
<p>Now, the reason for making the change is one of maintenance and content.  There&#8217;s no harder thing to maintain than something you botched together, and something botch together doesn&#8217;t scale.  I need to scale; I keep a lot of technical notes on wikis and files at work, some of it NDA/confidential and some not.  The stuff thats public/unrestricted I&#8217;d like to publish up and make usable outside of work and might be of some use to others.  So from this point I&#8217;ll be adding content related to networking or my personal interest of photography.</p>
<p>Cheers for being interested.. Jim.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jimleach.co.uk/jimleach-wp/2011/05/revamp-in-progressed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>vPC and PIM on the Nexus 7000</title>
		<link>http://www.jimleach.co.uk/jimleach-wp/2011/05/vpc-and-pim-on-the-nexus-7000/</link>
		<comments>http://www.jimleach.co.uk/jimleach-wp/2011/05/vpc-and-pim-on-the-nexus-7000/#comments</comments>
		<pubDate>Tue, 24 May 2011 14:11:40 +0000</pubDate>
		<dc:creator>Jim</dc:creator>
				<category><![CDATA[Tech Notes]]></category>
		<category><![CDATA[7k]]></category>
		<category><![CDATA[config]]></category>
		<category><![CDATA[multicast]]></category>
		<category><![CDATA[nexus]]></category>
		<category><![CDATA[nx-os]]></category>
		<category><![CDATA[vpc]]></category>

		<guid isPermaLink="false">http://www.jimleach.co.uk/jimleach-wp/?p=287</guid>
		<description><![CDATA[In VPC &#8211; PIM no longer decides which router is the multicast forwarder &#8211; VPC carries out a negotiation between peers to see who has the best RPF metric to the source. CFS messags between peers are used to communicate the metrics. If both metrics are equal, then the VPC-Primary peer wins and becomes the [...]]]></description>
			<content:encoded><![CDATA[<p>In VPC &#8211; PIM no longer decides which router is the multicast forwarder &#8211; VPC carries out a negotiation between peers to see who has the best RPF metric to the source.  CFS messags between peers are used to communicate the metrics.  If both metrics are equal, then the VPC-Primary peer wins and becomes the forwarder.</p>
<p><span id="more-287"></span></p>
<h4>VPC Primary / Oper-Primary device with shortest RPF:</h4>
<p><code><br />
AGG1-1-7K-prd# sh ip pim event-history vpc<br />
  vpc events for PIM process<br />
 1) Event:E_DEBUG, length:110, at 277439 usecs after Fri Sep  3 10:40:58 2010<br />
     [130] : Updated RPF-source for local pref/metric: 110/8<br />
  for source 10.113.28.20, rpf-interface port-channel180</p>
<p> AGG1-1-7K-prd# sh ip pim internal vpc rpf-source<br />
 ..<br />
 Source: 10.113.28.1<br />
   Pref/Metric: 110/8<br />
   Source role: secondary<br />
   Forwarding state: Win (forwarding)<br />
</code></p>
<h4>VPC Secondary peer:</h4>
<p><code><br />
 AGG1-2-7K-prd# sh ip pim event-history vpc<br />
  vpc events for PIM process<br />
 1) Event:E_DEBUG, length:140, at 702752 usecs after Fri Sep  3 10:39:21 2010<br />
     [130] : We continue to be loser, our pref/metric: 110/9, peer's pref/metric: 110/8,<br />
     not forwarding to any (S,G) oifs for source 10.113.28.20</p>
<p> AGG1-2-7K-prd# sh ip pim internal vpc rpf-source<br />
 ..<br />
 Source: 10.113.28.1<br />
   Pref/Metric: 110/9<br />
   Source role: primary<br />
   Forwarding state: Lose (not forwarding)<br />
</code></p>
<h4>Forwarding states:</h4>
<ul>
<li>Win (forwarding) &#8211; the RPF metric of this peer is better</li>
<li>Lose (not forwardin) &#8211; the RPF metric of this peer is worse</li>
<li>Win-force (forwarding) &#8211; likely source is in VPC VLAN, thus both required to forward</li>
<li>Tie (forwarding) &#8211; the RPF metrics are equal on each peer, this is the VPC primary so it&#8217;s forwarding</li>
<li>Tie (not forwarding) &#8211; the RPF metrics are equal on each peer, this is the VPC secondary so it&#8217;s not forwarding</li>
<li>Invalid (not forwarding) &#8211; seen when there&#8217;s an entry in the mroute table for a source but with no IGMP subscribers (clearing netstack and mroute will resolve)</li>
</ul>
<h4>Negotiation</h4>
<p>Negotiation takes place every 60 seconds &#8211; the debugs for this can be seen using <strong>debug ip pim vpc<strong>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jimleach.co.uk/jimleach-wp/2011/05/vpc-and-pim-on-the-nexus-7000/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Basic FCoE Configuration</title>
		<link>http://www.jimleach.co.uk/jimleach-wp/2011/05/basic-fcoe-configuration/</link>
		<comments>http://www.jimleach.co.uk/jimleach-wp/2011/05/basic-fcoe-configuration/#comments</comments>
		<pubDate>Tue, 24 May 2011 12:44:53 +0000</pubDate>
		<dc:creator>Jim</dc:creator>
				<category><![CDATA[Tech Notes]]></category>
		<category><![CDATA[5k]]></category>
		<category><![CDATA[config]]></category>
		<category><![CDATA[fcoe]]></category>
		<category><![CDATA[nexus]]></category>
		<category><![CDATA[nx-os]]></category>

		<guid isPermaLink="false">http://www.jimleach.co.uk/jimleach-wp/?p=260</guid>
		<description><![CDATA[Jim&#8217;s basic FCoE config for the Nexus 5000&#8230; In this example we are bringing down VSAN 101 from SAN Fabric-A and VSAN 201 from SAN Fabric-B. We will place the VSANs on Ethernet VLANs of the same number, ie: VSAN 101 will be trunked to the device using 802.1q VLAN 101 and VSAN201 by VLAN [...]]]></description>
			<content:encoded><![CDATA[<p>Jim&#8217;s basic FCoE config for the Nexus 5000&#8230;<br />
In this example we are bringing down VSAN 101 from SAN Fabric-A and VSAN 201 from SAN Fabric-B.  We will place the VSANs on Ethernet VLANs of the same number, ie: VSAN 101 will be trunked to the device using 802.1q VLAN 101 and VSAN201 by VLAN 101.</p>
<p><span id="more-260"></span></p>
<h2> Basic Config<br />
<h2>
<h4>Fabric-A Nx5k</h4>
<p> <code>! Define the Ethernet VLAN to carry the FC VSAN<br />
 vlan 101<br />
   fcoe<br />
   name FCoE_SAN_vsan101</p>
<p> ! Define the FC VSAN<br />
 vsan database<br />
   vsan 101 name "FAB-A-Production"</p>
<p> ! Define the VSAN and a virtual-Fibre Channel interface<br />
 vsan database<br />
   vsan 101 interface vfc1</p>
<p> ! Bind the virtual fibre-channel interface to the physical Ethernet interface<br />
 interface vfc1<br />
   bind interface Ethernet1/1<br />
   no shutdown</p>
<p> ! FC2/1 is our physical Fibre-channel uplink - this one to Fabric-A<br />
 interface fc2/1<br />
   switchport mode F<br />
   switchport trunk mode off<br />
   no switchport trunk allowed vsan 101<br />
   no shutdown</p>
<p> ! Configured the physical Ethernet interface and allow it to trunk the VLAN carrying the VSAN traffic<br />
 interface Ethernet1/1<br />
   switchport mode trunk<br />
   switchport trunk allowed vlan 1,101<br />
   spanning-tree port type edge trunk</code></p>
<h4>Fabric-B Nx5k</h4>
<p><code> ! Define the Ethernet VLAN to carry the FC VSAN<br />
 vlan 201<br />
   fcoe<br />
   name FCoE_SAN_vsan201</p>
<p> ! Define the FC VSAN<br />
 vsan database<br />
   vsan 201 name "FAB-B-Production"</p>
<p> ! Define the VSAN and a virtual-Fibre Channel interface<br />
 vsan database<br />
   vsan 201 interface vfc1</p>
<p> ! Bind the virtual fibre-channel interface to the physical Ethernet interface<br />
 interface vfc1<br />
   bind interface Ethernet1/1<br />
   no shutdown</p>
<p> ! FC2/1 is our physical Fibre-channel uplink - this one to Fabric-B<br />
 interface fc2/1<br />
   switchport mode F<br />
   switchport trunk mode off<br />
   no switchport trunk allowed vsan 201<br />
   no shutdown</p>
<p> ! Configured the physical Ethernet interface and allow it to trunk the VLAN carrying the VSAN traffic<br />
 interface Ethernet1/1<br />
   switchport mode trunk<br />
   switchport trunk allowed vlan 1,201<br />
   spanning-tree port type edge trunk</code></p>
<h2> Validating Config </h2>
<ul>
<li><strong>Use &#8216;show interface brief&#8217; to check port is up</strong></li>
</ul>
<p> <code>! 'show interface brief' - filtered for FC interfaces<br />
 R188-N5020-VMi-1# sh interface brief | i fc<br />
 fc2/1      101    F      off     up               swl    F       4    --<br />
 ..<br />
 vfc1       101    F      on      up               --     F       auto --<br />
 ..</code></p>
<ul>
<li><strong>User &#8216;show interface&#8217; to get stats and port state of vfc</strong></li>
</ul>
<p><code> R188-N5020-VMi-1# show interface vfc 1<br />
 vfc1 is up<br />
     Bound interface is Ethernet1/1<br />
     FCF priority is 128<br />
     Hardware is Virtual Fibre Channel<br />
     Port WWN is 20:08:00:05:9b:2a:9a:bf<br />
     Admin port mode is F, trunk mode is on<br />
     snmp link state traps are enabled<br />
     Port mode is F, FCID is 0x780012<br />
     Port vsan is 101<br />
     5 minute input rate 24 bits/sec, 3 bytes/sec, 0 frames/sec<br />
     5 minute output rate 64 bits/sec, 8 bytes/sec, 0 frames/sec<br />
       785348 frames input, 81707064 bytes<br />
         0 discards, 0 errors<br />
       2375473 frames output, 3441491796 bytes<br />
         0 discards, 0 errors<br />
     last clearing of "show interface" counters never<br />
     Interface last changed at Tue Jan  4 10:30:52 2011</code></p>
<ul>
<li><strong>Verify FCoE end-device has &#8216;FLOGI&#8217; to the fabric</strong></li>
</ul>
<p><code> R188-N5020-VMi-1# show  flogi database interface vfc 1<br />
 --------------------------------------------------------------------------------<br />
 INTERFACE        VSAN    FCID           PORT NAME               NODE NAME<br />
 --------------------------------------------------------------------------------<br />
 vfc1             101   0x780012  21:00:00:c0:dd:14:73:41 20:00:00:c0:dd:14:73:41<br />
 Total number of flogi = 1.</code></p>
<ul>
<li><strong>Check the FCoE WWPN to Ethernet-MAC mapping</strong></li>
</ul>
<p><code> R188-N5020-VMi-1# show fcoe database<br />
 -------------------------------------------------------------------------------<br />
 INTERFACE       FCID            PORT NAME               MAC ADDRESS<br />
 -------------------------------------------------------------------------------<br />
 vfc1            0x780012        21:00:00:c0:dd:14:73:41 00:c0:dd:14:73:41<br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jimleach.co.uk/jimleach-wp/2011/05/basic-fcoe-configuration/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

