<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;"><br><div><div>On Apr 9, 2015, at 11:55 AM, Peter Lee <<a href="mailto:peter@corenova.com">peter@corenova.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><meta http-equiv="content-type" content="text/html; charset=utf-8"><div dir="auto"><div>One more observation (sorry for all the chatter as the new guy)...</div><div><br></div><div>Since every NFD has a built-in content store, it seems that Repo related operations can be expressed as NDN protocol, not necessarily as augmentation of namespace as currently modeled in the repo-ng project?</div><div><br></div><div>It seems that every NFD can be thought of as a DataStore and all transactions a series of data store manipulations.</div></div></blockquote><div><br></div><div>NFD’s storage is transient, packets come and go at any moment. Repo provides resilient storage that can be managed.</div><br><blockquote type="cite"><div dir="auto"><div><br></div><div>It just doesn't feel right to append a method to a named data, especially basic CRUD operators since they are first order operators when dealing with data in nearly all cases.  Since the protocol is content distribution centric, READ/GET can be considered an implicit operator but shouldn't at least insert/delete be some form of a native protocol specification?</div></div></blockquote><div><br></div><div>Insert/delete is an application layer, right? So it should’t be a part of native NDN spec. HTTP’s GET/POST/DELETE are not a part of TCP/IP specs.</div><br><blockquote type="cite"><div dir="auto"><div><br></div><div>With HTTP being a rather predominant application layer protocol, capturing some subset of common HTTP transactions natively as NDN extension would go a long way in collapsing the protocol stack and garner interest from the web development community. </div></div></blockquote><div><br></div><div>Ok, so if you specify these verbs in NDN protocol itself, what is it going to give you? There are other significant problems with supporting web apps in NDN. Method names don’t even make a top 10 list.</div><br><blockquote type="cite"><div dir="auto"><div><br></div><div>Also, even the FIB is a collection of data records so it can be operated on as similarly to repo transactions (insert/status/remove) - as long as the requestor is an authority for a specific named prefix.</div></div></blockquote><div><br></div><div>I believe nfdc tool does something like this already.</div><br><blockquote type="cite"><div dir="auto"><div> </div><div><br></div><div>Furthermore, while I see a number of references to data integrity (encryption/signing), I haven't been able to dig up much info on transactional security (particularly dealing with confidentiality and access control).  Is this area deferred to be handled at the application layer?  How do you hide the existence of named data and still forward to the data producer that can authorize the transaction?</div></div></blockquote><div><br></div><div>People have different opinions on that matter. You are welcome to make a contribution.</div><div><br></div><div>Ilya</div><br><blockquote type="cite"><div dir="auto"><div><br>Peter Lee<div><br></div></div><div><br>On Apr 9, 2015, at 10:13 AM, Chengyu Fan <<a href="mailto:chengyu@cs.colostate.edu">chengyu@cs.colostate.edu</a>> wrote:<br><br></div><blockquote type="cite"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Apr 9, 2015 at 11:05 AM, Peter Lee <span dir="ltr"><<a href="mailto:peter@corenova.com" target="_blank">peter@corenova.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="auto"><div>I'm new to the list/project and curious to understand how client initiated upload of content is facilitated in ndn protocol. </div><div><br></div><div>Does Interest packet carry data to named destination?  Or does the client "register" a new named data source and the destination reciprocates Interest back to the client for streaming Data packets the other direction?</div></div></blockquote><div><br></div><div>It is the repository to pull data out.</div><div>You may refer to the repo-ng wiki (<a href="http://redmine.named-data.net/projects/repo-ng/wiki">http://redmine.named-data.net/projects/repo-ng/wiki</a>) for more details.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="auto"><span class=""><font color="#888888"><br>Peter Lee<div><br></div></font></span><div><div class="h5"><div><br>On Apr 9, 2015, at 9:45 AM, Chengyu Fan <<a href="mailto:chengyu@cs.colostate.edu" target="_blank">chengyu@cs.colostate.edu</a>> wrote:<br><br></div><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Apr 9, 2015 at 2:44 AM, Urs Schnurrenberger <span dir="ltr"><<a href="mailto:urs.schnurrenberger@unibas.ch" target="_blank">urs.schnurrenberger@unibas.ch</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">





<div lang="DE-CH" link="blue" vlink="purple">
<div><p class="MsoNormal"><span style="font-family:'Malgun Gothic',sans-serif">Thanks Chengyu!<u></u><u></u></span></p><p class="MsoNormal"><span style="font-family:'Malgun Gothic',sans-serif"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">Yes, I also had to increase the max-packets value. How do you increase the segment size?</span></p></div></div></blockquote><div><br></div><div>I modified the ndnputfile code.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div lang="DE-CH" link="blue" vlink="purple"><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"><u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">The strange thing is that I can retrieve (a segment of) the 50 MB file right after insertion into the repo, but one day later (at the latest) the
 retrieval fails. I get neither an error nor data. Smaller files always work.</span></p></div></blockquote><div><br></div><div>I need to try this ...</div><div>Could you tell me how do you run the repo-ng? Do you keep it running, or relaunch it one day later?</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div lang="DE-CH" link="blue" vlink="purple"><div><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"><u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">Urs<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"><u></u> <u></u></span></p><p class="MsoNormal"><b><span lang="DE" style="font-size:11pt;font-family:Calibri,sans-serif">Von:</span></b><span lang="DE" style="font-size:11pt;font-family:Calibri,sans-serif"> <a href="mailto:chengy.fan@gmail.com" target="_blank">chengy.fan@gmail.com</a> [mailto:<a href="mailto:chengy.fan@gmail.com" target="_blank">chengy.fan@gmail.com</a>]
<b>Im Auftrag von </b>Chengyu Fan<br>
<b>Gesendet:</b> Mittwoch, 8. April 2015 19:27<br>
<b>An:</b> Urs Schnurrenberger<br>
<b>Cc:</b> Alex Afanasyev; <a href="mailto:ndn-interest@lists.cs.ucla.edu" target="_blank">ndn-interest@lists.cs.ucla.edu</a></span></p><div><br>
<b>Betreff:</b> Re: [Ndn-interest] Tcp Bulk Insert Repo Insertion Protocol in NDN-repo-ng<u></u><u></u></div><div><br class="webkit-block-placeholder"></div><div><p class="MsoNormal"><u></u> <u></u></p>
<div><p class="MsoNormal"><u></u> <u></u></p>
<div><p class="MsoNormal"><u></u> <u></u></p>
<div><p class="MsoNormal">On Wed, Apr 8, 2015 at 5:08 AM, Urs Schnurrenberger <<a href="mailto:urs.schnurrenberger@unibas.ch" target="_blank">urs.schnurrenberger@unibas.ch</a>> wrote:<u></u><u></u></p>
<blockquote style="border-style:none none none solid;border-left-color:rgb(204,204,204);border-left-width:1pt;padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">Hi,</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">why not using ndnputfile? Encoding is done automatically.</span><u></u><u></u></p>
</div>
</div>
</blockquote>
<blockquote style="border-style:none none none solid;border-left-color:rgb(204,204,204);border-left-width:1pt;padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">ndnputfile reponame ndnname filename:</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">e.g.</span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">ndnputfile /localhost/repo-ng /ndn/ch/unibas/hello hello.txt</span><u></u><u></u></p>
</div>
</div>
</blockquote>
<div><p class="MsoNormal"><u></u> <u></u></p>
</div>
<div><p class="MsoNormal">Yes, we tried ndnputfile. It is a little bit slow.<u></u><u></u></p>
</div>
<div><p class="MsoNormal">However, the segment size is 1000 by default, and takes about 30 minutes to insert a 1.2GB file.<u></u><u></u></p>
</div>
<div><p class="MsoNormal">I changed the segment size to 8000 (the max NDN packet size is 8800), then the time reduced to 4 minutes.<u></u><u></u></p>
</div>
<div><p class="MsoNormal"> <u></u><u></u></p>
</div>
<div><p class="MsoNormal">I wonder if the Tcp Bulk Insert protocol can improve this more ...<u></u><u></u></p>
</div>
<div><p class="MsoNormal"><br>
BTW, such large file will generate a lots of segments, I have to set the max-packets to a larger number in repo-ng.conf.<u></u><u></u></p>
</div>
<div><p class="MsoNormal">However if the number is too large, repo-ng would complain "ERROR: conversion of data to type "i" failed". I think it is a bug.<u></u><u></u></p>
</div>
<div><p class="MsoNormal"><u></u> <u></u></p>
</div>
<blockquote style="border-style:none none none solid;border-left-color:rgb(204,204,204);border-left-width:1pt;padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">Interesting as well would be how to delete files from the repo? I still do it by directly manipulating the database.
 Seems that there is no tool around</span><span style="font-family:'Malgun Gothic',sans-serif">…<span lang="EN-US">?</span></span><u></u><u></u></p>
</div>
</div>
</blockquote>
<div><p class="MsoNormal"><u></u> <u></u></p>
</div>
<div><p class="MsoNormal">I didn't see any tool for data deletion either, but the protocol specification is given, so it is possible to take some time to  implement it.<u></u><u></u></p>
</div>
<div><p class="MsoNormal"> <u></u><u></u></p>
</div>
<blockquote style="border-style:none none none solid;border-left-color:rgb(204,204,204);border-left-width:1pt;padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"> </span><u></u><u></u></p><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif">Chengyu, don't you have problems to retrieve so large files from the repo? I have already problems with files around
 50MB. The developers told me that it might be a memory issue.</span><u></u><u></u></p>
</div>
</div>
</blockquote>
<div><p class="MsoNormal"><u></u> <u></u></p>
</div>
<div><p class="MsoNormal">I don't have this problem. <u></u><u></u></p>
</div>
<div><p class="MsoNormal"><u></u> <u></u></p>
</div>
<div><p class="MsoNormal"> <u></u><u></u></p>
</div>
<blockquote style="border-style:none none none solid;border-left-color:rgb(204,204,204);border-left-width:1pt;padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div><p class="MsoNormal"><span lang="EN-US" style="font-family:'Malgun Gothic',sans-serif"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-family:'Malgun Gothic',sans-serif">Best,</span><u></u><u></u></p><p class="MsoNormal"><span style="font-family:'Malgun Gothic',sans-serif">Urs</span><u></u><u></u></p><p class="MsoNormal"><span style="font-family:'Malgun Gothic',sans-serif"> </span><u></u><u></u></p><p class="MsoNormal"><span style="font-family:'Malgun Gothic',sans-serif"> </span><u></u><u></u></p>
<div>
<div style="border-style:solid none none;border-top-color:rgb(225,225,225);border-top-width:1pt;padding:3pt 0cm 0cm"><p class="MsoNormal"><b><span lang="DE" style="font-size:11pt;font-family:Calibri,sans-serif">Von:</span></b><span lang="DE" style="font-size:11pt;font-family:Calibri,sans-serif"> Ndn-interest
 [mailto:<a href="mailto:ndn-interest-bounces@lists.cs.ucla.edu" target="_blank">ndn-interest-bounces@lists.cs.ucla.edu</a>]
<b>Im Auftrag von </b>Alex Afanasyev<br>
<b>Gesendet:</b> Mittwoch, 8. April 2015 02:03<br>
<b>An:</b> Chengyu Fan<br>
<b>Cc:</b> <a href="mailto:ndn-interest@lists.cs.ucla.edu" target="_blank">ndn-interest@lists.cs.ucla.edu</a><br>
<b>Betreff:</b> Re: [Ndn-interest] Tcp Bulk Insert Repo Insertion Protocol in NDN-repo-ng</span><u></u><u></u></p>
</div>
</div>
<div>
<div><p class="MsoNormal"> <u></u><u></u></p><p class="MsoNormal"> <u></u><u></u></p>
<div>
<blockquote style="margin-top:5pt;margin-bottom:5pt">
<div><p class="MsoNormal"><span lang="EN-US">On Apr 7, 2015, at 5:01 PM, Chengyu Fan <</span><a href="mailto:chengyu@cs.colostate.edu" target="_blank"><span lang="EN-US">chengyu@cs.colostate.edu</span></a><span lang="EN-US">>
 wrote:</span><u></u><u></u></p>
</div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
<div>
<div><p class="MsoNormal"><span lang="EN-US">Okay, so the TcpBulkInsert is to push the </span><span lang="EN-US" style="font-size:9.5pt">NDN packet format encoding data packets into the repo.</span><u></u><u></u></p>
<div><p class="MsoNormal"><span lang="EN-US" style="font-size:9.5pt">If need to insert the raw data, I must convert them into NDN packet format encoding in advance. Correct?</span><u></u><u></u></p>
</div>
</div>
</div>
</blockquote>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">Yes.</span><u></u><u></u></p>
</div><p class="MsoNormal" style="margin-bottom:12pt"><u></u> <u></u></p>
<blockquote style="margin-top:5pt;margin-bottom:5pt">
<div>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
<div><p class="MsoNormal"><span lang="EN-US">On Tue, Apr 7, 2015 at 5:38 PM, Alex Afanasyev <</span><a href="mailto:alexander.afanasyev@ucla.edu" target="_blank"><span lang="EN-US">alexander.afanasyev@ucla.edu</span></a><span lang="EN-US">>
 wrote:</span><u></u><u></u></p>
<blockquote style="border-style:none none none solid;border-left-color:rgb(204,204,204);border-left-width:1pt;padding:0cm 0cm 0cm 6pt;margin:5pt 0cm 5pt 4.8pt">
<div>
<div><p class="MsoNormal"><span lang="EN-US">TcpBulkInsert is not really a protocol, rather a socket that accepts a stream of data packets.</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">Assuming file bulk-data.tlv contains a collection of data packets in NDN packet format encoding (just piled up, one after another one), you can use ‘nc’ command
 to push them into the repo</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">nc localhost 7376 < bulk-data.tlv</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">—</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US" style="color:rgb(136,136,136)">Alex</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US" style="color:rgb(136,136,136)"> </span><u></u><u></u></p>
</div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
<div>
<blockquote style="margin-top:5pt;margin-bottom:5pt">
<div><p class="MsoNormal"><span lang="EN-US">On Apr 7, 2015, at 3:28 PM, Chengyu Fan <</span><a href="mailto:chengyu@cs.colostate.edu" target="_blank"><span lang="EN-US">chengyu@cs.colostate.edu</span></a><span lang="EN-US">>
 wrote:</span><u></u><u></u></p>
</div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
<div>
<div>
<div>
<div><p class="MsoNormal"><span lang="EN-US">Hi,</span><u></u><u></u></p>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">Do anyone know the "</span><strong><span lang="EN-US" style="font-size:9pt;font-family:Verdana,sans-serif;color:rgb(72,72,72)">Tcp Bulk Insert Repo Insertion Protocol</span></strong><span lang="EN-US">"
 in NDN-repo-ng?</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">We have lots of data need to insert into the repository, and each one typically contains about 1.2GB.</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">According to the wiki (</span><a href="http://redmine.named-data.net/projects/repo-ng/wiki" target="_blank"><span lang="EN-US">http://redmine.named-data.net/projects/repo-ng/wiki</span></a><span lang="EN-US">),
 the "</span><strong><span lang="EN-US" style="font-size:9pt;font-family:Verdana,sans-serif;color:rgb(72,72,72)">Tcp Bulk Insert Repo Insertion Protocol</span></strong><span lang="EN-US">" might be the right option.</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">However, the wiki doesn't contain the protocol specification, and there is no tool for this protocol either ...</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">Thanks,</span><u></u><u></u></p>
</div>
<div><p class="MsoNormal"><span lang="EN-US">Chengyu</span><u></u><u></u></p>
</div>
</div>
</div>
</div><p class="MsoNormal"><span lang="EN-US">_______________________________________________<br>
Ndn-interest mailing list<br>
</span><a href="mailto:Ndn-interest@lists.cs.ucla.edu" target="_blank"><span lang="EN-US">Ndn-interest@lists.cs.ucla.edu</span></a><span lang="EN-US"><br>
</span><a href="http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest" target="_blank"><span lang="EN-US">http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest</span></a><u></u><u></u></p>
</div>
</blockquote>
</div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
</blockquote>
</div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
</div>
</blockquote>
</div><p class="MsoNormal"><span lang="EN-US"> </span><u></u><u></u></p>
</div>
</div>
</div>
</div>
</blockquote>
</div><p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>
</div></div>
</div>

</blockquote></div><br></div></div>
</blockquote><blockquote type="cite"><span>_______________________________________________</span><br><span>Ndn-interest mailing list</span><br><span><a href="mailto:Ndn-interest@lists.cs.ucla.edu" target="_blank">Ndn-interest@lists.cs.ucla.edu</a></span><br><span><a href="http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest" target="_blank">http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest</a></span><br></blockquote></div></div></div></blockquote></div><br></div></div>
</blockquote></div>_______________________________________________<br>Ndn-interest mailing list<br><a href="mailto:Ndn-interest@lists.cs.ucla.edu">Ndn-interest@lists.cs.ucla.edu</a><br>http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest<br></blockquote></div><br></body></html>