<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>Hi Junxiao,</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<p>Hi Jeff</p>
<p>DNS is a complex affair that has many details to take care of.</p>
</blockquote>
</span>
<div>I don't understand exactly what's complex for NFD here;  is it the asynchronous nature of the resolution process that you prefer not be handled in the daemon?    </div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<p><br>
NFD isn't the right place to perform DNS resolution, so we have decided to off-load this operation to the client library.<br>
ndn-cxx provides FaceUri::isCanonical method that determines whether a FaceUri is canonical.<br>
ndn-cxx provides FaceUri::canonize method to perform DNS resolution, and obtain a canonical FaceUri.</p>
</blockquote>
</span><span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<p>Most users shouldn't be affected, because nfdc command line tool will canonize FaceUri before creating face.</p>
</blockquote>
</span><span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<p><br>
NLSR is the only known app that uses faces/create command through ndn-cxx Controller API, and NLSR has been updated</p>
</blockquote>
</span>
<div>I'm not sure that it's good practice to assume you know the cases in which the library and daemon are being used in the research community.  </div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<p><br>
Apps based on ndn-ccl shouldn't be affected because ndn-ccl API doesn't have a face creation method.</p>
<p>udp and udp4 are not equivalent. udp can be resolved to either udp4 or udp6.<br>
udp://<a href="http://192.0.2.1">192.0.2.1</a> will be canonized as udp4://<a href="http://192.0.2.1:6363">192.0.2.1:6363</a></p>
</blockquote>
</span>
<div>Yes, all I was getting at is that the convention could be similarly defined at the NFD level.  </div>
<div><br>
</div>
<div>Is the use of udp and tcp in URI schemes, rather than, say, ndnudp or ndntcp going to cause any conflicts with registered URI schemes in  the future? <a href="http://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml">http://www.iana.org/assignments/uri-schemes/uri-schemes.xhtml</a> </div>
<div><br>
</div>
<div>Jeff</div>
<span id="OLK_SRC_BODY_SECTION">
<blockquote id="MAC_OUTLOOK_ATTRIBUTION_BLOCKQUOTE" style="BORDER-LEFT: #b5c4df 5 solid; PADDING:0 0 0 5; MARGIN:0 0 0 5;">
<p>Yours, Junxiao</p>
<div class="gmail_quote">On Nov 28, 2014 12:45 PM, "Burke, Jeff" <<a href="mailto:jburke@remap.ucla.edu">jburke@remap.ucla.edu</a>> wrote:<br type="attribution">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word;color:rgb(0,0,0);font-size:14px;font-family:Calibri,sans-serif">
<div><br>
</div>
<div>Hi Junxiao,</div>
<div><br>
</div>
<div>Thanks.  What's the design rationale for the changes?   (In general, I'd suggest that API updates should include at least a brief statement on
<i>why</i> they're being made.) </div>
<div><br>
</div>
<div>The removal of support for DNS names seems odd from a usability standpoint, and I don't understand why udp and udp4 can't just be considered equivalent. </div>
<div><br>
</div>
<div>Thanks,</div>
<div>Jeff</div>
<div><br>
</div>
<span>
<div style="font-family:Calibri;font-size:11pt;text-align:left;color:black;BORDER-BOTTOM:medium none;BORDER-LEFT:medium none;PADDING-BOTTOM:0in;PADDING-LEFT:0in;PADDING-RIGHT:0in;BORDER-TOP:#b5c4df 1pt solid;BORDER-RIGHT:medium none;PADDING-TOP:3pt">
<span style="font-weight:bold">From: </span>Junxiao Shi <<a href="mailto:shijunxiao@email.arizona.edu" target="_blank">shijunxiao@email.arizona.edu</a>><br>
<span style="font-weight:bold">Date: </span>Thu, 27 Nov 2014 20:59:27 -0700<br>
<span style="font-weight:bold">To: </span>"<a href="mailto:ndn-app@lists.cs.ucla.edu" target="_blank">ndn-app@lists.cs.ucla.edu</a>" <<a href="mailto:ndn-app@lists.cs.ucla.edu" target="_blank">ndn-app@lists.cs.ucla.edu</a>>, "<a href="mailto:ndn-lib@lists.cs.ucla.edu" target="_blank">ndn-lib@lists.cs.ucla.edu</a>"
 <<a href="mailto:ndn-lib@lists.cs.ucla.edu" target="_blank">ndn-lib@lists.cs.ucla.edu</a>>, "<<a href="mailto:nfd-dev@lists.cs.ucla.edu" target="_blank">nfd-dev@lists.cs.ucla.edu</a>>" <<a href="mailto:nfd-dev@lists.cs.ucla.edu" target="_blank">nfd-dev@lists.cs.ucla.edu</a>><br>
<span style="font-weight:bold">Subject: </span>[Ndn-app] NFD faces/create: requires canonical FaceUri<br>
</div>
<div><br>
</div>
<blockquote style="BORDER-LEFT:#b5c4df 5 solid;PADDING:0 0 0 5;MARGIN:0 0 0 5">
<div dir="ltr">Dear folks
<div><br>
</div>
<div>Please be aware of an upcoming NFD Management API change: <b>faces/create command requires canonical FaceUri</b>.</div>
<div>This change will happen no sooner than Dec 04 12:00 UTC.</div>
<div><br>
</div>
<div>A canonical FaceUri for UDP and TCP tunnels should specify either IPv4 or IPv6, have IP address instead of hostname, and contain port number.</div>
<div><br>
</div>
<div>Examples of canonical FaceUri:</div>
<div>
<div>udp4://<a href="http://192.0.2.1:6363" target="_blank">192.0.2.1:6363</a></div>
<div>udp6://[2001:db8::1]:6363</div>
<div>
<div>tcp4://<a href="http://192.0.2.1:6363" target="_blank">192.0.2.1:6363</a></div>
<div>tcp6://[2001:db8::1]:6363</div>
</div>
<div><br>
</div>
<div>Examples of non-canonical FaceUri that will be rejected by faces/create command after the change:</div>
<div>udp://<a href="http://192.0.2.1" target="_blank">192.0.2.1</a></div>
<div>udp://<a href="http://example.net:6363" target="_blank">example.net:6363</a></div>
<div>udp4://<a href="http://example.net:6363" target="_blank">example.net:6363</a></div>
<div>udp6://<a href="http://example.net:6363" target="_blank">example.net:6363</a></div>
<div>tcp://<a href="http://192.0.2.1" target="_blank">192.0.2.1</a><br>
</div>
<div>tcp://<a href="http://example.net:6363" target="_blank">example.net:6363</a></div>
<div>tcp4://<a href="http://example.net:6363" target="_blank">example.net:6363</a></div>
<div>tcp6://<a href="http://example.net:6363" target="_blank">example.net:6363</a></div>
</div>
<div><br>
</div>
<div><b>If you have a library / application that utilizes NFD faces/create command, please canonize the FaceUri before sending the command</b>.<br>
</div>
<div>
<div>Scripts calling nfdc command line tool are unaffected by this change.<br>
</div>
</div>
<div><br>
</div>
<div>Yours, Junxiao</div>
</div>
_______________________________________________ Ndn-app mailing list <a href="mailto:Ndn-app@lists.cs.ucla.edu" target="_blank">
Ndn-app@lists.cs.ucla.edu</a> <a href="http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-app" target="_blank">
http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-app</a> </blockquote>
</span></div>
</blockquote>
</div>
</blockquote>
</span>
</body>
</html>