<div dir="ltr">Chris can you share details of the brokenness check? What variables are considered?</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Oct 10, 2013 at 12:02 AM, Christopher Palmer <span dir="ltr"><<a href="mailto:Christopher.Palmer@microsoft.com" target="_blank">Christopher.Palmer@microsoft.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div lang="EN-US" link="blue" vlink="purple">
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">John and Lorenzo beat me to it
</span><span style="font-size:11.0pt;font-family:Wingdings;color:#1f497d">J</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Example:<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Samantha has native IPv6 and Teredo.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Albert has Teredo only.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Albert, in destination address selection, will chose Samantha’s Teredo address. Samantha, in source address selection, will use her Teredo address. This will
avoid relay traversal.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Xbox P2P policy is a bit more sophisticated than RFC 6724, but I note that the avoidance of Teredo relays is also part of Windows behavior. Windows address
selection is a fairly clean implementation of RFC 6724. In RFC 6724 terms, Teredo -> Teredo is a label match (Rule 5), Teredo -> Native IPv6 is not. The biggest difference between us and the standard is the brokenness check.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">This does complicate the dream. In order for a set of peers to use native IPv6 – BOTH peers have to have native available. In the pathological case, if half
of the world has IPv6 and connects only to the other half that only has Teredo, and no one actually uses native IPv6.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Realistically, matchmaking is going to prefer users “close to you” (and a bunch of other things, like their gamer behavior and stuff). Naively I expect IPv6
traffic to start as local pockets, Albert playing against his neighbor, both with the same ISP. As IPv6 penetration grows hopefully we’ll see significant P2P traffic across the Internet use native IPv6 transport.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif"">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri","sans-serif""> ipv6-ops-bounces+christopher.palmer=<a href="mailto:microsoft.com@lists.cluenet.de" target="_blank">microsoft.com@lists.cluenet.de</a> [mailto:<a href="mailto:ipv6-ops-bounces%2Bchristopher.palmer" target="_blank">ipv6-ops-bounces+christopher.palmer</a>=<a href="mailto:microsoft.com@lists.cluenet.de" target="_blank">microsoft.com@lists.cluenet.de</a>]
<b>On Behalf Of </b>Lorenzo Colitti<br>
<b>Sent:</b> Wednesday, October 9, 2013 8:26 PM<br>
<b>To:</b> Geoff Huston<br>
<b>Cc:</b> IPv6 Ops list; Christopher Palmer</span></p><div class="im"><br>
<b>Subject:</b> Re: Microsoft: Give Xbox One users IPv6 connectivity<u></u><u></u></div><p></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal">On Thu, Oct 10, 2013 at 12:19 PM, Geoff Huston <<a href="mailto:gih@apnic.net" target="_blank">gih@apnic.net</a>> wrote:<u></u><u></u></p><div><div class="h5">
<div>
<div>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<p class="MsoNormal">But I've thought about your response, and if I'm allowed to dream (!), and in that dream where the efforts of COmcast, Google etc with IPv6 bear fruit, and I'm allowed to contemplate a world of, say, 33% IPv6 and 66% V4, then wouldn't we
then see the remaining Teredo folk having 33% of their peer sessions head into Teredo relays to get to those 33% who are using unicast IPv6? And wouldn't that require these Teredo relays that we all know have been such a performance headache?<u></u><u></u></p>
</blockquote>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Can't you fix that by telling the app "if all you have is Teredo, prefer Teredo even if the peer has native IPv6 as well"?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Of course this breaks down when IPv4 goes away, once IPv4 starts going away then there's really way to do peer-to-peer without relays, right? (Also, IPv4 going away is relatively far away at this point.)<u></u><u></u></p>
</div>
</div>
</div>
</div></div></div>
</div>
</div>
</blockquote></div><br></div>