<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
In my example (just typed in email), I put the wrong keyid in the response rowsets.  They should have equaled the keyid restriction in the select query.  There should have also been an ‘expired’ column too for it to be proper sql.
<div class=""><br class="">
</div>
<div class="">I’m not saying this is a great network protocol.  It was just offered as a counter example to “impossible."<br class="">
<div class=""><br class="">
</div>
<div class="">Marc</div>
<div class=""><br class="">
<div>
<blockquote type="cite" class="">
<div class="">On Mar 15, 2016, at 12:20 PM, <a href="mailto:Marc.Mosko@parc.com" class="">
Marc.Mosko@parc.com</a> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div style="font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<blockquote type="cite" class="">
<div class=""><br class="Apple-interchange-newline">
On Mar 15, 2016, at 10:58 AM, Alex Afanasyev <<a href="mailto:aa@cs.ucla.edu" class="">aa@CS.UCLA.EDU</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<blockquote type="cite" class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<br class="Apple-interchange-newline">
On Mar 15, 2016, at 10:43 AM, <<a href="mailto:Ignacio.Solis@parc.com" class="">Ignacio.Solis@parc.com</a>> <<a href="mailto:Ignacio.Solis@parc.com" class="">Ignacio.Solis@parc.com</a>> wrote:<br class="">
<br class="">
On 3/15/16, 9:11 AM, "Ndn-interest on behalf of Burke, Jeff" <<a href="mailto:ndn-interest-bounces@lists.cs.ucla.edu" class="">ndn-interest-bounces@lists.cs.ucla.edu</a><span class="Apple-converted-space"> </span>on behalf of<span class="Apple-converted-space"> </span><a href="mailto:jburke@remap.ucla.edu" class="">jburke@remap.UCLA.edu</a>>
 wrote:<br class="">
<br class="">
<br class="">
<blockquote type="cite" class="">
<blockquote type="cite" class="">sure - I don't want to expose names that identify me, or expose my<br class="">
communication activities. given that, the "network" doesn't have the job<br class="">
of finding things for me by partial names - I only want to expose the<br class="">
details of my communication to a service that I have authenticated, and<br class="">
only when those details are encrypted. the "names" visible to the<br class="">
network in that sort of world just get the packets moving - and the only<br class="">
LPM needed is LPM in the FIB to get me to one or more instances of a<br class="">
service.<br class="">
</blockquote>
<br class="">
So in this case you are ok with requests to service names that reflect a plaintext prefix (/com/facebook) but have further components encrypted by ephemeral keys?   What about cert or key names that may reflect your identity being requested by the service during
 authentication?    If "in-network discovery" was used to find a sufficiently current version of the certs in the authentication phase of this scenario, would that be objectionable? Just trying to understand the limits here.<br class="">
</blockquote>
<br class="">
You don’t have to expose names of keys or certs to intermediary nodes. You only need to expose that information to the parties you choose.<br class="">
<br class="">
Let me talk about "In-network discovery” for a second.<br class="">
<br class="">
[5] **In-Network Name Discovery**:<br class="">
  Interests should be able use incomplete names to retrieve data packets.<br class="">
<br class="">
<br class="">
The first thing to say, is that in this phrasing, you mean the network layer, the forwarders, not the network as a whole.<br class="">
<br class="">
Today we do discovery in many ways. Whether it’s mDNS, DNS, a SQL query, a google/bing query or a piece of ajax code. Sometimes we do ping or trace route or god forbid snmp. (Did I mention routing protocols?) There are many ways to do “discovery”.<br class="">
<br class="">
Because of the nature of NDN/CCN in naming everything, we have to do one extra step that other protocols don’t; the discovery of the name of a network packet.  Many times this is not really discovery, it’s mostly like bootstrapping.  We need to figure out where
 to start, and once we have that we can continue. These are all fine goals and problems to have.<br class="">
<br class="">
The way old CCN and NDN try to solve these is by having prefix matching on interests.  The argument is that if the network-layer helps with this, then things will be better.  I have yet to see a good argument of why this is the case.<br class="">
<br class="">
We’ve had this discussion a number of times.  You can do everything the current LPM system can do if you create a simple service that lets you do LPM queries.  Let’s call this service the Selector Service.  Any node running a Selector Service can then process
 interests with selectors and generate replies. Any node running a Selector Service can also verify these replies if it wishes (under the same constraints as the current system).  Any node NOT wishing to reveal what they have in their caches, or not wanting
 to waste the extra compute cycles may decide not to run that service.<br class="">
<br class="">
I would like to know what makes the built in LPM mode advantageous than the Selector Service method.<br class="">
<br class="">
I’m not saying that this Selector Service is what I would implement for discovery, but, there it is in case somebody wants it.<br class="">
<br class="">
LPM matching on interests throws a few wrenches in the system. Here are a few:<br class="">
<br class="">
- You never know what you’re going to get. You don’t know if the data you got is what you wanted. (how could you?, if you had known, you would have asked for it directly).  Almost by definition, the only way for you to know if what you got is what you wanted
 is to ask again to get more information.  Apparently in some solutions that use this system, you actually have calls that to succeed need to time out.<br class="">
<br class="">
- “What’s in the network?” is fragile.  People claim that you can do this in-network-layer discovery to find if one packet/piece of data (that I only partially know how to prefix-name) is in the connected network. For example, if the producer disconnected or
 if there is a network partition. This doesn’t really work without some very big participation from routing or by flooding the network.  I’m not sure if it’s obvious to people how bad flooding the network is.  The situations where this is considered advisable
 are very special. Why subject the world to this very special case that can lead to disaster?<br class="">
<br class="">
- LPM interests can be abused by malicious nodes.  A malicious cache can reply with valid content in a way that creates extra traffic.<br class="">
<br class="">
<br class="">
I think sometimes there is a misunderstanding that exact matching means you must know everything in advance. This is not the case. It just means that I get to ask a specific question and somebody needs to stand up and answer it.<br class="">
<br class="">
<br class="">
Can we have a clear example of where the in-network-layer name discovery is required and provides a benefit?<br class="">
</blockquote>
<br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<span class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;">In
 order to support data retrieval **not only in infrastructure-based, always connected Internet**, but also in systems that can be infrequently connected (e.g., disaster environment, vehicular environments, some sensor networks, and many more example), you HAVE
 TO have the in-network discovery.  There is simply no way it is possible to have an "oracle" that can tell you what is there.</span><br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<br class="">
</div>
</blockquote>
<blockquote type="cite" class="">
<div class=""><span class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;">I
 think Tai Lin in one of the previous emails correctly noted that with immutable data packets, it is simply impossible to not have in-network discovery.  The communication will not work otherwise without having an out-of-band channel to tell you what to fetch.
  What is the best way to achieve this is a completely different question.</span><br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
</div>
</blockquote>
<div class=""><br class="">
</div>
<div class="">
<div class="">So it is impossible to run a discovery agent on each content store that runs a different discovery protocol than NDN’s in-network discovery?</div>
<div class=""><br class="">
</div>
<div class="">consumer interest: </div>
<div class="">/foo/bar/_discovery_/(nonce1), </div>
<div class="">payload = “query = select * from CS where name like ‘%superman.mov/h264/%/manifest’ and keyid=0x1234 and expired=false”</div>
<div class=""><br class="">
</div>
<div class="">From content store: </div>
<div class="">/foo/bar/_discovery_/(nonce1), </div>
<div class="">payload = LINK /acme/5/_content_store_/ver=12/chunk=0</div>
<div class=""><br class="">
</div>
<div class="">/acme/5/_content_store_/ver=12/chunk=0</div>
<div class="">payload = rowset {</div>
<div class="">{ /WarnerBros/1978/superman.mov/h264/rate1/manifest, hash 0x12777, keyid 0x884844 },</div>
<div class="">
<div class="">{ /WarnerBros/1978/superman.mov/h264/rate3/manifest, hash 0xaaaaa, keyid 0xbbbbb },</div>
<div class="">}</div>
</div>
<div class=""><br class="">
</div>
<div class="">consumer interest:</div>
<div class="">/acme/5/_content_store_/ver=12/chunk=1</div>
<div class=""><br class="">
</div>
<div class="">Acme #5:</div>
<div class="">more rowset</div>
<div class=""><br class="">
</div>
<div class="">consumer interest:</div>
<div class="">
<div class="">/foo/bar/_discovery_/(nonce2), </div>
<div class="">payload = “exclude /acme/5, query = select * from CS where name like ‘%superman.mov/h264/%/manifest’ and keyid=0x1234 and expired=false”</div>
</div>
<div class=""><br class="">
</div>
<div class="">and so on….</div>
</div>
<br class="">
<blockquote type="cite" class="">
<div class=""><br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<span class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;">And
 a note note.  It is not LPM!  It is fetching data with interests that don't have a full name (if needed with hash digest.</span><br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<span class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;">---</span><br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<span class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;">Alex</span><br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<span class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;">_______________________________________________</span><br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<span class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;">Ndn-interest
 mailing list</span><br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<a href="mailto:Ndn-interest@lists.cs.ucla.edu" class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">Ndn-interest@lists.cs.ucla.edu</a><br class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<a href="http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest" class="" style="font-family: Menlo-Regular; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest</a></div>
</blockquote>
</div>
<br class="" style="font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;">
<span style="font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">_______________________________________________</span><br style="font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<span style="font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; float: none; display: inline !important;" class="">Ndn-interest
 mailing list</span><br style="font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<a href="mailto:Ndn-interest@lists.cs.ucla.edu" style="font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">Ndn-interest@lists.cs.ucla.edu</a><br style="font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<a href="http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest" style="font-family: Helvetica; font-size: 14px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest</a></div>
</blockquote>
</div>
<br class="">
</div>
</div>
</body>
</html>