From jburke at remap.ucla.edu Sun Feb 2 00:15:04 2014 From: jburke at remap.ucla.edu (Burke, Jeff) Date: Sun, 2 Feb 2014 08:15:04 +0000 Subject: [Ndn-interest] How to develop & run an appplication program on NDNx ? In-Reply-To: Message-ID: Hi Daiki, Thanks for your interest! There are a few different libraries for NDN development right now: Included in the NDNx package are a C library and Java library, which are older and do not follow the CCL API. These are based on the original CCNx libraries (of which NDNx is a fork) and will be deprecated. However, you could use these for application development of simple applications - and the apps in the NDNx distribution use them. The NDN-CCL is an emerging set of libraries for general purpose application development that have the advantage of being largely wire format independent but simpler than the NDNx Java library. They will be supported into the future as the codebase evolves. There is a C++ library, a Python library, and a Javascript library, referred to here: http://named-data.net/codebase/platform/ For the CCL, we also have a preliminary but incomplete Java library - https://github.com/named-data/jndn. All of the libraries (NDNx C and Java, NDN-CCL C++, Javascript, Python and eventually Java) work with the NDNx forwarder (ndnd). So you can take your pick. There are also other libraries that we use for development, but I would stick with these for simplicity. Example code for serving files can be found in these projects: https://github.com/named-data/NDNFS and https://github.com/named-data/ChronoShare. I hope this helps. Please let us know more about your language preferences and we can point you to some good starting places. Jeff On 1/30/14, 11:51 PM, "Daiki Kaneko" wrote: >Hello, all. > >I would like to develop and run an application program over NDN, using >NDNx. >I built NDNx, and succeeded to put a file in a repository, and to let >a colleague retrieve the file. > >However, when it comes to develop an application software that runs on >NDNx, I don't know what to do at all. >I found "NDN Common Client Libraries API" >(http://named-data.net/codebase/platform/documentation/ndn-ccl-api/ ), >and I think I can use this API to develop a program running on NDNx. >Is it right? >Even if it's right, the question is still remaining: how to run my >program? > >Besides, I wonder why the ndnChat program (in /apps directory) is >written in Java, though the API supports only C++, JS, and Python, >and, >"Function and class documentation" is available only for C, C++, and JS ? > >-- >Dept. of Comp. Sci. and Eng., Waseda Univ., Japan >Daiki Kaneko (?? ??) >kaneko_daiki at y.akane.waseda.jp >_______________________________________________ >Ndn-interest mailing list >Ndn-interest at lists.cs.ucla.edu >http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest From jburke at remap.ucla.edu Sun Feb 16 13:49:27 2014 From: jburke at remap.ucla.edu (Burke, Jeff) Date: Sun, 16 Feb 2014 21:49:27 +0000 Subject: [Ndn-interest] How to develop & run an appplication program on NDNx ? In-Reply-To: Message-ID: Apologies for the long-delayed reply. We are a little bit away from announcing a new forwarder project that should make your application much easier to attempt (in C++). It will be easier to deal with for this sort of thing than NDNx. What is your timeline for the project? Regarding the chat, I would encourage this to be written in the C++, Python, or Javascript APIs rather than C. It will be easier to write and debug. Is this a possibility? best, Jeff On 2/4/14, 12:40 AM, "Daiki Kaneko" wrote: >Thanks for your reply, Jeff. > >Now I plan to develop an application software in C. >The application needs >- to produce new interest packets based on received interest packets ,and >- to modify some PIT entries. >I want to add these features to normal NDN nodes. > >In addition, one of my peers ( ryo-iwane-ryo923 at akane.waseda.jp ) >wants to make a chat program. >The program is different from ndnChat, in that: >- There is no chat rooms. >- There will be a manager node, which manages users' IDs. >- The manager will return a content name prefix, which represents each >user in content names of his/her messages. >- The queries to the manager will be done by interest packets. > >I have seen the reference for NDNx C ( >http://named-data.net/doc/0.2/ccode/html/index.html ), but frankly >speaking, I don't understand what to do even after seeing the >reference. > >-- >Park Lab., Dept. of Comp. Sci. and Eng., Waseda Univ., Japan >Daiki Kaneko (?? ??) >kaneko_daiki at y.akane.waseda.jp > > >2014-02-02 Burke, Jeff : >> >> Hi Daiki, >> >> Thanks for your interest! >> >> There are a few different libraries for NDN development right now: >> >> Included in the NDNx package are a C library and Java library, which are >> older and do not follow the CCL API. These are based on the original >>CCNx >> libraries (of which NDNx is a fork) and will be deprecated. However, you >> could use these for application development of simple applications - and >> the apps in the NDNx distribution use them. >> >> The NDN-CCL is an emerging set of libraries for general purpose >> application development that have the advantage of being largely wire >> format independent but simpler than the NDNx Java library. They will be >> supported into the future as the codebase evolves. There is a C++ >> library, a Python library, and a Javascript library, referred to here: >> http://named-data.net/codebase/platform/ >> For the CCL, we also have a preliminary but incomplete Java library - >> https://github.com/named-data/jndn. >> >> All of the libraries (NDNx C and Java, NDN-CCL C++, Javascript, Python >>and >> eventually Java) work with the NDNx forwarder (ndnd). So you can take >> your pick. There are also other libraries that we use for development, >> but I would stick with these for simplicity. Example code for serving >> files can be found in these projects: >>https://github.com/named-data/NDNFS >> and https://github.com/named-data/ChronoShare. >> >> I hope this helps. Please let us know more about your language >>preferences >> and we can point you to some good starting places. >> >> Jeff >> >> >> On 1/30/14, 11:51 PM, "Daiki Kaneko" >> wrote: >> >>>Hello, all. >>> >>>I would like to develop and run an application program over NDN, using >>>NDNx. >>>I built NDNx, and succeeded to put a file in a repository, and to let >>>a colleague retrieve the file. >>> >>>However, when it comes to develop an application software that runs on >>>NDNx, I don't know what to do at all. >>>I found "NDN Common Client Libraries API" >>>(http://named-data.net/codebase/platform/documentation/ndn-ccl-api/ ), >>>and I think I can use this API to develop a program running on NDNx. >>>Is it right? >>>Even if it's right, the question is still remaining: how to run my >>>program? >>> >>>Besides, I wonder why the ndnChat program (in /apps directory) is >>>written in Java, though the API supports only C++, JS, and Python, >>>and, >>>"Function and class documentation" is available only for C, C++, and JS >>>? >>> >>>-- >>>Dept. of Comp. Sci. and Eng., Waseda Univ., Japan >>>Daiki Kaneko (?? ??) >>>kaneko_daiki at y.akane.waseda.jp >>>_______________________________________________ >>>Ndn-interest mailing list >>>Ndn-interest at lists.cs.ucla.edu >>>http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest >> From gts at ics.uci.edu Mon Feb 17 08:30:44 2014 From: gts at ics.uci.edu (GTS) Date: Mon, 17 Feb 2014 08:30:44 -0800 Subject: [Ndn-interest] elements of trust in NDN Message-ID: <53023934.90602@ics.uci.edu> Folks: some of you might be interested in the following report: C. Ghali, G. Tsudik and E. Uzun, Elements of Trust in Named-Data Networking, arXiv:1402.3332, February 13, 2014. URL: http://arxiv.org/pdf/1402.3332v1 Cheers, Gene ====================== Gene Tsudik Chancellor's Professor of Computer Science University of California, Irvine From kaneko_daiki at y.akane.waseda.jp Tue Feb 18 00:04:17 2014 From: kaneko_daiki at y.akane.waseda.jp (Daiki Kaneko) Date: Tue, 18 Feb 2014 17:04:17 +0900 Subject: [Ndn-interest] How to develop & run an appplication program on NDNx ? In-Reply-To: References: Message-ID: Hello again, Jeff. Oh, you plan to release another implementation of NDN. I want some result in about a month (not complete one is OK). It is possible for us to write source codes in C++. We can study that if we don't understand it enough. I have a question about compiling source codes using CCL API for C++. I reached a hypothesis that, when compiling (& linking), I can use the command below: g++ my_source_code_1.cpp [my_source_code_2.cpp ...] /.libs/libndn-cpp.a Is that right? And do my source codes need any #include other than "#include ?" -- Park Lab., Dept. of Comp. Sci. and Eng., Waseda Univ. Daiki Kaneko (?? ??) kaneko_daiki at y.akane.waseda.jp 2014-02-17 6:49 GMT+09:00 Burke, Jeff : > Apologies for the long-delayed reply. > > We are a little bit away from announcing a new forwarder project that > should make your application much easier to attempt (in C++). It will be > easier to deal with for this sort of thing than NDNx. What is your > timeline for the project? > > Regarding the chat, I would encourage this to be written in the C++, > Python, or Javascript APIs rather than C. It will be easier to write and > debug. Is this a possibility? > > best, > Jeff > > > On 2/4/14, 12:40 AM, "Daiki Kaneko" wrote: > >>Thanks for your reply, Jeff. >> >>Now I plan to develop an application software in C. >>The application needs >>- to produce new interest packets based on received interest packets ,and >>- to modify some PIT entries. >>I want to add these features to normal NDN nodes. >> >>In addition, one of my peers ( ryo-iwane-ryo923 at akane.waseda.jp ) >>wants to make a chat program. >>The program is different from ndnChat, in that: >>- There is no chat rooms. >>- There will be a manager node, which manages users' IDs. >>- The manager will return a content name prefix, which represents each >>user in content names of his/her messages. >>- The queries to the manager will be done by interest packets. >> >>I have seen the reference for NDNx C ( >>http://named-data.net/doc/0.2/ccode/html/index.html ), but frankly >>speaking, I don't understand what to do even after seeing the >>reference. >> >>-- >>Park Lab., Dept. of Comp. Sci. and Eng., Waseda Univ., Japan >>Daiki Kaneko (?? ??) >>kaneko_daiki at y.akane.waseda.jp >> >> >>2014-02-02 Burke, Jeff : >>> >>> Hi Daiki, >>> >>> Thanks for your interest! >>> >>> There are a few different libraries for NDN development right now: >>> >>> Included in the NDNx package are a C library and Java library, which are >>> older and do not follow the CCL API. These are based on the original >>>CCNx >>> libraries (of which NDNx is a fork) and will be deprecated. However, you >>> could use these for application development of simple applications - and >>> the apps in the NDNx distribution use them. >>> >>> The NDN-CCL is an emerging set of libraries for general purpose >>> application development that have the advantage of being largely wire >>> format independent but simpler than the NDNx Java library. They will be >>> supported into the future as the codebase evolves. There is a C++ >>> library, a Python library, and a Javascript library, referred to here: >>> http://named-data.net/codebase/platform/ >>> For the CCL, we also have a preliminary but incomplete Java library - >>> https://github.com/named-data/jndn. >>> >>> All of the libraries (NDNx C and Java, NDN-CCL C++, Javascript, Python >>>and >>> eventually Java) work with the NDNx forwarder (ndnd). So you can take >>> your pick. There are also other libraries that we use for development, >>> but I would stick with these for simplicity. Example code for serving >>> files can be found in these projects: >>>https://github.com/named-data/NDNFS >>> and https://github.com/named-data/ChronoShare. >>> >>> I hope this helps. Please let us know more about your language >>>preferences >>> and we can point you to some good starting places. >>> >>> Jeff >>> >>> >>> On 1/30/14, 11:51 PM, "Daiki Kaneko" >>> wrote: >>> >>>>Hello, all. >>>> >>>>I would like to develop and run an application program over NDN, using >>>>NDNx. >>>>I built NDNx, and succeeded to put a file in a repository, and to let >>>>a colleague retrieve the file. >>>> >>>>However, when it comes to develop an application software that runs on >>>>NDNx, I don't know what to do at all. >>>>I found "NDN Common Client Libraries API" >>>>(http://named-data.net/codebase/platform/documentation/ndn-ccl-api/ ), >>>>and I think I can use this API to develop a program running on NDNx. >>>>Is it right? >>>>Even if it's right, the question is still remaining: how to run my >>>>program? >>>> >>>>Besides, I wonder why the ndnChat program (in /apps directory) is >>>>written in Java, though the API supports only C++, JS, and Python, >>>>and, >>>>"Function and class documentation" is available only for C, C++, and JS >>>>? >>>> >>>>-- >>>>Dept. of Comp. Sci. and Eng., Waseda Univ., Japan >>>>Daiki Kaneko (?? ??) >>>>kaneko_daiki at y.akane.waseda.jp >>>>_______________________________________________ >>>>Ndn-interest mailing list >>>>Ndn-interest at lists.cs.ucla.edu >>>>http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest >>> > From jefft0 at remap.ucla.edu Wed Feb 19 11:55:16 2014 From: jefft0 at remap.ucla.edu (Thompson, Jeff) Date: Wed, 19 Feb 2014 19:55:16 +0000 Subject: [Ndn-interest] How to develop & run an appplication program on NDNx ? In-Reply-To: References: Message-ID: Hello. When you install with sudo make install does it put the NDN-CPP libraries in your system's normal library include path? > do my source codes need any #include other than "#include ? You only need to include iostream if your application needs cout or other iostream functions. For includes from NDN-CPP, your application may only need to include . For example, see the following test code: https://github.com/named-data/ndn-cpp/blob/master/tests/test-get-async.cpp Thanks, - Jeff T On 2/18/14 12:04 AM, "Daiki Kaneko" > wrote: Hello again, Jeff. Oh, you plan to release another implementation of NDN. I want some result in about a month (not complete one is OK). It is possible for us to write source codes in C++. We can study that if we don't understand it enough. I have a question about compiling source codes using CCL API for C++. I reached a hypothesis that, when compiling (& linking), I can use the command below: g++ my_source_code_1.cpp [my_source_code_2.cpp ...] /.libs/libndn-cpp.a Is that right? And do my source codes need any #include other than "#include ?" -- Park Lab., Dept. of Comp. Sci. and Eng., Waseda Univ. Daiki Kaneko (?? ??) kaneko_daiki at y.akane.waseda.jp 2014-02-17 6:49 GMT+09:00 Burke, Jeff >: Apologies for the long-delayed reply. We are a little bit away from announcing a new forwarder project that should make your application much easier to attempt (in C++). It will be easier to deal with for this sort of thing than NDNx. What is your timeline for the project? Regarding the chat, I would encourage this to be written in the C++, Python, or Javascript APIs rather than C. It will be easier to write and debug. Is this a possibility? best, Jeff On 2/4/14, 12:40 AM, "Daiki Kaneko" > wrote: Thanks for your reply, Jeff. Now I plan to develop an application software in C. The application needs - to produce new interest packets based on received interest packets ,and - to modify some PIT entries. I want to add these features to normal NDN nodes. In addition, one of my peers ( ryo-iwane-ryo923 at akane.waseda.jp ) wants to make a chat program. The program is different from ndnChat, in that: - There is no chat rooms. - There will be a manager node, which manages users' IDs. - The manager will return a content name prefix, which represents each user in content names of his/her messages. - The queries to the manager will be done by interest packets. I have seen the reference for NDNx C ( http://named-data.net/doc/0.2/ccode/html/index.html ), but frankly speaking, I don't understand what to do even after seeing the reference. -- Park Lab., Dept. of Comp. Sci. and Eng., Waseda Univ., Japan Daiki Kaneko (?? ??) kaneko_daiki at y.akane.waseda.jp 2014-02-02 Burke, Jeff >: Hi Daiki, Thanks for your interest! There are a few different libraries for NDN development right now: Included in the NDNx package are a C library and Java library, which are older and do not follow the CCL API. These are based on the original CCNx libraries (of which NDNx is a fork) and will be deprecated. However, you could use these for application development of simple applications - and the apps in the NDNx distribution use them. The NDN-CCL is an emerging set of libraries for general purpose application development that have the advantage of being largely wire format independent but simpler than the NDNx Java library. They will be supported into the future as the codebase evolves. There is a C++ library, a Python library, and a Javascript library, referred to here: http://named-data.net/codebase/platform/ For the CCL, we also have a preliminary but incomplete Java library - https://github.com/named-data/jndn. All of the libraries (NDNx C and Java, NDN-CCL C++, Javascript, Python and eventually Java) work with the NDNx forwarder (ndnd). So you can take your pick. There are also other libraries that we use for development, but I would stick with these for simplicity. Example code for serving files can be found in these projects: https://github.com/named-data/NDNFS and https://github.com/named-data/ChronoShare. I hope this helps. Please let us know more about your language preferences and we can point you to some good starting places. Jeff On 1/30/14, 11:51 PM, "Daiki Kaneko" > wrote: Hello, all. I would like to develop and run an application program over NDN, using NDNx. I built NDNx, and succeeded to put a file in a repository, and to let a colleague retrieve the file. However, when it comes to develop an application software that runs on NDNx, I don't know what to do at all. I found "NDN Common Client Libraries API" (http://named-data.net/codebase/platform/documentation/ndn-ccl-api/ ), and I think I can use this API to develop a program running on NDNx. Is it right? Even if it's right, the question is still remaining: how to run my program? Besides, I wonder why the ndnChat program (in /apps directory) is written in Java, though the API supports only C++, JS, and Python, and, "Function and class documentation" is available only for C, C++, and JS ? -- Dept. of Comp. Sci. and Eng., Waseda Univ., Japan Daiki Kaneko (?? ??) kaneko_daiki at y.akane.waseda.jp _______________________________________________ Ndn-interest mailing list Ndn-interest at lists.cs.ucla.edu http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest _______________________________________________ Ndn-interest mailing list Ndn-interest at lists.cs.ucla.edu http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest -------------- next part -------------- An HTML attachment was scrubbed... URL: From mkuai at crimson.ua.edu Fri Feb 21 14:37:53 2014 From: mkuai at crimson.ua.edu (Meng Kuai) Date: Fri, 21 Feb 2014 16:37:53 -0600 Subject: [Ndn-interest] question Message-ID: <002501cf2f55$8f6c0360$ae440a20$@crimson.ua.edu> About this problem, I have a question. Since there is no matching entry in content store, does the incoming interest trigger application to generate content? Thanks, Meng Kuai Graduate student, University of Alabama -----Original Message----- Message: 2 Date: Tue, 7 Jan 2014 19:44:06 -0800 From: Lixia Zhang To: ?? Cc: ndn-interest Subject: Re: [Ndn-interest] question Message-ID: <927147A7-7283-432E-96E9-A151D257359E at cs.ucla.edu> Content-Type: text/plain; charset="gb2312" On Jan 7, 2014, at 7:20 PM, ?? wrote: > Hi, > I'm a new learner . I have a question about NDN. If NDN has the ability to request content that has not yet been published, route that request to potential publishers, and have them create,and then publish, the desired content in response. Could you describe it in details? > Many thanks, > yusuf thanks for the question, and here is my understanding: 1/ keep in mind that NDN is a network layer protocol (thus it is not NDN requesting content, but some application is asking for content, and an NDN Interest packet will carry that request towards the content producer) 2/ Since one is asking for some data that does not exist yet, the Interest will reach (one of) the server and server produced the requested data. Web is doing today to produce dynamically tailored data for individual users. 3/ the NDN network can then deliver that newly created content back to the requestor. Hope this answered your question? From christos at cs.colostate.edu Fri Feb 21 14:52:09 2014 From: christos at cs.colostate.edu (Christos Papadopoulos) Date: Fri, 21 Feb 2014 15:52:09 -0700 Subject: [Ndn-interest] question In-Reply-To: <002501cf2f55$8f6c0360$ae440a20$@crimson.ua.edu> References: <002501cf2f55$8f6c0360$ae440a20$@crimson.ua.edu> Message-ID: <5307D899.2050800@cs.colostate.edu> On 02/21/2014 03:37 PM, Meng Kuai wrote: > About this problem, I have a question. > Since there is no matching entry in content store, does the incoming > interest trigger application to generate content? Yes. If there is no entry in the content store, this means that there is no cached content to serve the interest. The interest is thus delivered to the publisher (the application that advertises the name prefix). The publisher is now responsible for parsing the interest and generating the appropriate content. We actually do exactly that when we use NDN in climate data. The datasets are very big, and often a client may request a subset of a dataset. The client generates the appropriate content name according to the namespace rules that specify a subset of a dataset. The publisher may then read this name, extract the requested subset from the main dataset and return it to the client. Does that make sense? Christos. > > Thanks, > Meng Kuai > Graduate student, University of Alabama > > > -----Original Message----- > > Message: 2 > Date: Tue, 7 Jan 2014 19:44:06 -0800 > From: Lixia Zhang > To: ?? > Cc: ndn-interest > Subject: Re: [Ndn-interest] question > Message-ID: <927147A7-7283-432E-96E9-A151D257359E at cs.ucla.edu> > Content-Type: text/plain; charset="gb2312" > > > On Jan 7, 2014, at 7:20 PM, ?? wrote: > >> Hi, >> I'm a new learner . I have a question about NDN. If NDN has the ability to > request content that has not yet been published, route that request to > potential publishers, and have them create,and then publish, the desired > content in response. Could you describe it in details? >> Many thanks, >> yusuf > thanks for the question, and here is my understanding: > 1/ keep in mind that NDN is a network layer protocol (thus it is not NDN > requesting content, but some application is asking for content, and an NDN > Interest packet will carry that request towards the content producer) > > 2/ Since one is asking for some data that does not exist yet, the Interest > will reach (one of) the server and server produced the requested data. > Web is doing today to produce dynamically tailored data for individual > users. > > 3/ the NDN network can then deliver that newly created content back to the > requestor. > > Hope this answered your question? > > > > _______________________________________________ > Ndn-interest mailing list > Ndn-interest at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest >