<div dir="ltr"><div>Hi,</div><div>Do not post very often, but I thought this was worth posting.</div><div><br></div><div>We have been having an "interesting" issue with one of our suppliers, and thought I would post this as it could affect you and/or your customers as well. </div><div><br></div><div>Customer reports poor TCP performance.</div><div><br></div><div>The presentation linked to goes into a lot more detail.</div><div><br></div><div>In summary though </div><div><br></div><div>MPLS P Routers are not aware of what type of traffic is flowing through them.</div><div><br></div><div><div>Vendors naively speculate what actual payload is</div><div><br></div><div>They might look at first octet: </div><div>– > if “4”, the packet must be an IPv4 packet </div><div>– > if “6”, the packet must be an IPv6 packet </div></div><div><br></div><div>So what happens if the traffic passing is part of a MPLS pseudo wire, and your mac address starts with a 6 or 4.</div><div><br></div><div>The P router then decides that the packet is IP and uses the next part as the seed for the hash to balance traffic across links, to keep a flow on the same path, and reduce out of order packet delivery.</div><div><br></div><div>If your MAC addr starts with a 4 the seed is smaller, and does not really effect you.</div><div><br></div><div>If your MAC addr starts with 6 the seed is massive and includes lots of the payload ( inc checksum, size etc) which will cause your traffic to be sprayed randomly across the load balanced core links</div><div><br></div><div>This results in out of order TCP packets, ( which as we call know TCP loves that ), which results in very poor performance, and unhappy customers</div><div><br></div><div><br></div><div>Further reading</div><div><br></div><div>Understanding MPLS Hashing And how it affects your brand new equipment<br></div><div><br></div><a href="https://www.nanog.org/meetings/nanog57/presentations/Tuesday/tues.general.SnijdersWheeler.MACaddresses.14.pdf">https://www.nanog.org/meetings/nanog57/presentations/Tuesday/tues.general.SnijdersWheeler.MACaddresses.14.pdf</a><div><a href="https://www.nanog.org/meetings/nanog57/presentations/Tuesday/tues.general.SnijdersWheeler.MACaddresses.14.pdf"><br></a><div>*there is a mistake in the above presentation example showing a MAC addr that is 06 when it should be 60, but the rest of it stands.</div><div><br></div><div><b style="font-weight:normal" id="gmail-docs-internal-guid-cf619db7-66f5-550d-1d74-49cec104f8eb"><span style="text-decoration:underline;font-size:11pt;font-family:Arial;color:rgb(17,85,204);background-color:transparent;font-weight:400;font-style:normal;font-variant:normal;vertical-align:baseline;white-space:pre-wrap"><a href="https://tools.ietf.org/html/bcp128" style="text-decoration:none">https://tools.ietf.org/html/bcp128</a></span></b></div><div><span style="background-color:transparent;color:rgb(0,0,0);font-family:Arial;font-size:11pt;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap"><br></span></div><div><span style="background-color:transparent;color:rgb(0,0,0);font-family:Arial;font-size:11pt;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wrap">Cisco bug: </span><span style="background-color:transparent;font-family:Arial;font-size:11pt;white-space:pre-wrap;text-decoration-line:underline;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:baseline"><a href="https://quickview.cloudapps.cisco.com/quickview/bug/CSCup45387" style="background-color:transparent;font-family:Arial;font-size:11pt;white-space:pre;text-decoration-line:none">https://quickview.cloudapps.cisco.com/quickview/bug/CSCup45387</a></span></div><div><br></div><div><b style="font-weight:normal"><br></b></div><div><b style="font-weight:normal">This might help close a few weird performance tickets you might have. :-)</b></div><div><b style="font-weight:normal"><br></b></div><div>regards</div><div>Ben Roeder</div><div><br></div></div></div>