<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<a href="http://named-data.net/doc/ndn-tlv/data.html#contenttype">http://named-data.net/doc/ndn-tlv/data.html#contenttype</a>
<div><br>
</div>
<div>says that NACK was removed.  I think NACK has problems when combined with MustBeFresh and FreshnessPeriod.</div>
<div><br>
</div>
<div>A Data object with a FreshnessPeriod of, say 1s, can still circle around in the network for much longer than 1s, especially if stale responses are allowed.  Someone trying to discover the latest version, for example, can be mislead by the NACK.</div>
<div><br>
</div>
<div>Another example:</div>
<div><br>
</div>
<div>Alice: get latest version for /news</div>
<div>Cache: /news/v=100</div>
<div><br>
</div>
<div>Alice: get latest version for /news greater than 100</div>
<div>Publisher: /news/v=110</div>
<div><br>
</div>
<div>Eve: Fetch /news/v=1000</div>
<div>Publisher: NACK /news/v=1000</div>
<div><br>
</div>
<div>Alice: Get latest version greater than 110</div>
<div>Cache: /news/v=1000</div>
<div><br>
</div>
<div>1000 now becomes the latest version for /news.  An attacker could force the publisher — if they want to use ContentType=NACK response — to increase their version number to arbitrary lengths.  And FreshnessPeriod does not provide a deterministic way to
 expire that content or prevent it from being cached.</div>
<div><br>
</div>
<div>I don’t think using a ContentType=NACK is a good idea with these cache control directives.</div>
<div><br>
</div>
<div>Marc</div>
<div><br>
<div>
<div>On Oct 15, 2014, at 8:49 AM, Junxiao Shi <shijunxiao@email.arizona.edu> wrote:</div>
<br class="Apple-interchange-newline">
<blockquote type="cite">
<div dir="ltr">Hi Marc
<div><br>
</div>
<div>I'm explicitly referring to producer-generated NACK, a type of Data (ContentType=NACK).</div>
<div><br>
</div>
<div>Yours, Junxiao<br>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Wed, Oct 15, 2014 at 8:47 AM, <span dir="ltr"><<a href="mailto:Marc.Mosko@parc.com" target="_blank">Marc.Mosko@parc.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div style="word-wrap:break-word">I thought the Interest NACK is a type of control message that is not cached in the content store.  
<div><br>
</div>
<div>That is different than the publisher issuing a Data object of ContentType = NACK.  Or even issuing a Data object with type = Data, but a body like a 403.  I thought that the ContentType = NACK was removed from the NDN spec. 
<div><br>
</div>
<div>So, Junxiao answer that the NACk could stay in the content store was surprising to me.</div>
<span class="HOEnZb"><font color="#888888">
<div><br>
</div>
<div>Marc</div>
</font></span>
<div>
<div class="h5">
<div><br>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</body>
</html>