From M.AbdollahiSabet at mail.sbu.ac.ir Fri Apr 1 02:19:03 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Fri, 1 Apr 2016 13:49:03 +0430 Subject: [ndnSIM] Link resolver server References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A0E@m-pdc.sbu.ac.ir> <37644B3A-0B96-468E-A5D8-3EF983EC0778@cs.ucla.edu> <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A15@m-pdc.sbu.ac.ir> <98812244-73A2-4B28-86C3-849718D1F227@cs.ucla.edu> Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1A@m-pdc.sbu.ac.ir> Dear Spyridon, I greatly appreciate your help. 3- What is the difference between Name(Name to be resolved) and Hint(Name Hint) in digApp? They are both set to "/ndn" According to the SNAMP paper, a name of some data should be resolved directly to a LINK object that contains a number of globally routable name (forwarding hints). In the current implementation, I think that the name of some data is resolved to a globally routable name directly. So, apart from what is set in the scenario, a query for /ndn (Name) may retrieve /ucla (Hint), right? 4- From consumer's perspective, firstly a digApp should query for a "hint" for a prefix, then attach query's answer as a Link object to Interest? In theory, the application should retrieve the LINK object directly from NDNS. However, in this case you are right. You mean in your scenario digApp sends interest for some entity other than NDNS? I suppose any node on which NdnsServerApp is running would be an instance of NDNS. 5- What relation is in place between what has been done in your scenario, and Link related functions in ndnSIM? Sorry, but I do not understand the question. I mean, currently we have this class in ndnSIM: http://ndnsim.net/2.1/doxygen/classndn_1_1Link.html For example, where does addDelegation() stores a Link object? Or, where does getDelegations() retrieve Link objects from? Is there any relation between extensions in your scenario and ndn::Link Class? Because I didn't see any reference to ndn::Link in the extensions. Anything you say helps. I've put Alex in cc. Hope he sees. Many thanks, Sabet ________________________________ From: Spyridon (Spyros) Mastorakis [mailto:mastorakis at cs.ucla.edu] Sent: Fri 4/1/2016 1:57 AM To: Muhammad Hosain Abdollahi Sabet Cc: ndnsim at lists.cs.ucla.edu Subject: Re: [ndnSIM] Link resolver server Please see my answer inline. I am not that familiar with the NDNS implementation, so I will try to answer the questions that I know in the best possible way: Thank you. You scenario works. Regarding to that, there are questions I need to ask you: 1- What is the content of test.db? It is the database of the current NDNS instance (storing the records). 2- What is the procedure to add a zone or identity? I guess there should be some key-chain related routine I'm not familiar with. I think that this has to do with this file: https://github.com/spirosmastorakis/ndns-scenario/blob/master/extensions/ndns-create-zone.hpp 3- What is the difference between Name(Name to be resolved) and Hint(Name Hint) in digApp? They are both set to "/ndn" According to the SNAMP paper, a name of some data should be resolved directly to a LINK object that contains a number of globally routable name (forwarding hints). In the current implementation, I think that the name of some data is resolved to a globally routable name directly. 4- From consumer's perspective, firstly a digApp should query for a "hint" for a prefix, then attach query's answer as a Link object to Interest? In theory, the application should retrieve the LINK object directly from NDNS. However, in this case you are right. 5- What relation is in place between what has been done in your scenario, and Link related functions in ndnSIM? Sorry, but I do not understand the question. NDNS was Alex's thesis, so he can elaborate more on the implementation details. Hope that my answer helped though. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA -------------- next part -------------- An HTML attachment was scrubbed... URL: From don1559 at gmail.com Fri Apr 1 09:16:28 2016 From: don1559 at gmail.com (Ahmed Sadek) Date: Fri, 1 Apr 2016 18:16:28 +0200 Subject: [ndnSIM] Consumer without predefined interest rate Message-ID: Hi All, I was wondering if there is a consumer that generate interests without predefined rate from the start of simulation and try to take advantage of the link bandwidth as much as available, similar to file download with TCP. If not then any hints on the design of such app. Thanks and have a nice weekend! Ahmed -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Fri Apr 1 09:27:51 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Fri, 1 Apr 2016 09:27:51 -0700 Subject: [ndnSIM] Doxygen not present error In-Reply-To: References: Message-ID: <8C0C60AB-A876-4E55-B0BB-933737D1CA13@cs.ucla.edu> Hi, I guess the solution to your problem is to clone ndnSIM with the -- recursive flag on (git clone -- recursive ). Another thing: there is no ndnSIM version 3.25. Do you refer to NS3? Thanks, Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Mar 31, 2016, at 11:09 PM, Krishnakanth Singh wrote: > > Hi, > I am using Ubuntu 14.04 and ndnsim 3.25 when i go to ns3 dir inside ndnsim and do ./waf > There is a import error saying Doxygen not available .I am sure that Doxygen is installed as i have also installed ns3 and it works fine -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Fri Apr 1 10:08:05 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Fri, 1 Apr 2016 21:38:05 +0430 Subject: [ndnSIM] Consumer without predefined interest rate References: Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1C@m-pdc.sbu.ac.ir> Hi Ahmed, I suggest you take a look at this: http://ndnsim.net/2.1/doxygen/classns3_1_1ndn_1_1ConsumerWindow.html It's worth a try. Thanks, Sabet ---------- Forwarded message ---------- From: Ahmed Sadek Date: Fri, Apr 1, 2016 at 8:46 PM Subject: [ndnSIM] Consumer without predefined interest rate To: ndnsim Hi All, I was wondering if there is a consumer that generate interests without predefined rate from the start of simulation and try to take advantage of the link bandwidth as much as available, similar to file download with TCP. If not then any hints on the design of such app. Thanks and have a nice weekend! Ahmed _______________________________________________ ndnSIM mailing list ndnSIM at lists.cs.ucla.edu http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Fri Apr 1 10:28:40 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Fri, 1 Apr 2016 10:28:40 -0700 Subject: [ndnSIM] Consumer without predefined interest rate In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1C@m-pdc.sbu.ac.ir> References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1C@m-pdc.sbu.ac.ir> Message-ID: <06D5BC98-8835-4D15-836C-D8C7A2A9C6B7@cs.ucla.edu> Hi guys, just to add something to Sabet?s response: The way to achieve that (i.e., full link utilization) can partially be through your application (in the sense that your application should send enough Interests to retrieve enough data), but one should also consider the forwarding strategy. As far as the application is concerned, one can use some of the alternative applications and retrieval models that come with ndnSIM (zipf, batches etc.) or write their own retrieval models. As far as the strategy is concerned, it should estimate the link bandwidth and expand Interest forwarding to alternative links when the current link is fully utilized. To achieve that, one should write their own strategy. However, a quick and dirty way to fully utilize a topology link in ndnSIM (given that one knows the link capacities in advance) is through the application by selecting the appropriate Interest expression rate. Hope that this helps. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 1, 2016, at 10:08 AM, Muhammad Hosain Abdollahi Sabet wrote: > > > Hi Ahmed, > > I suggest you take a look at this: > http://ndnsim.net/2.1/doxygen/classns3_1_1ndn_1_1ConsumerWindow.html > It's worth a try. > > Thanks, > Sabet > > ---------- Forwarded message ---------- > From: Ahmed Sadek > Date: Fri, Apr 1, 2016 at 8:46 PM > Subject: [ndnSIM] Consumer without predefined interest rate > To: ndnsim > > > Hi All, > > I was wondering if there is a consumer that generate interests without > predefined rate from the start of simulation and try to take advantage of > the link bandwidth as much as available, similar to file download with TCP. > > If not then any hints on the design of such app. > > Thanks and have a nice weekend! > Ahmed > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ndn at sqh.me Sat Apr 2 04:07:29 2016 From: ndn at sqh.me (ndn ndn) Date: Sat, 2 Apr 2016 19:07:29 +0800 Subject: [ndnSIM] How to use ndnSIM to simulate a cache policy? Message-ID: Hello, Recently, I want to use ndnSIM to simulate a ndn cache policy, but I only find some information on https://github.com/cawka/ndnSIM-examples/tree/master/extensions/custom-cs, it is a three year ago. http://ndnsim.net/2.1/cs.html it didn't mention how to do it. Can I use it? And also if I need implement a cache policy, How to write a class to do this? Can you give me some information on this. Thanks for your help. qhsong -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Sat Apr 2 05:13:36 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Sat, 2 Apr 2016 18:13:36 +0600 Subject: [ndnSIM] stop producer from forwarding interests Message-ID: Dear All, How can I stop a producer from forwarding an interest requesting the content owned by itself? As, I found that producer do not stop interests while I was using some ideas with multicast strategy. Thanks, Asif -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Sat Apr 2 10:20:43 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Sat, 2 Apr 2016 21:50:43 +0430 Subject: [ndnSIM] stop producer from forwarding interests References: Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1E@m-pdc.sbu.ac.ir> Hi Asif, Sorry. I didn't understand what you mean by forwarding interest. Producer application answers interests with *data* packets an can be stopped using StopApplication(). But I guess what you mean was different. Thanks, Sabet ---------- Forwarded message ---------- From: Shahid Md. Asif Iqbal Date: Sat, Apr 2, 2016 at 4:43 PM Subject: [ndnSIM] stop producer from forwarding interests To: ndnsim Dear All, How can I stop a producer from forwarding an interest requesting the content owned by itself? As, I found that producer do not stop interests while I was using some ideas with multicast strategy. Thanks, Asif _______________________________________________ ndnSIM mailing list ndnSIM at lists.cs.ucla.edu http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Sat Apr 2 11:43:27 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Sat, 2 Apr 2016 23:13:27 +0430 Subject: [ndnSIM] Porting scenarios to ndnSIM 2.1 Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A20@m-pdc.sbu.ac.ir> Hi everyone, Is there any guide on how one can port simulation scenarios wrote for ndnSIM 1? Currently I have a simulation in which has some modifications in model/ndn-interest.h/.cc, model/wire/ndnsim.h/.cc, ndn.cxx/detail/pending-interests-container.h, model/fw/ndn-forwarding-strategy.h/.cc. I know NFD is being used directly in ndnSIM 2.1 and there has been some changes in ndn-cxx. But honestly I'm not much familiar with them and need some guide. Thanks, Sabet -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Sat Apr 2 15:22:42 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Sat, 2 Apr 2016 15:22:42 -0700 Subject: [ndnSIM] Link resolver server In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1A@m-pdc.sbu.ac.ir> References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A0E@m-pdc.sbu.ac.ir> <37644B3A-0B96-468E-A5D8-3EF983EC0778@cs.ucla.edu> <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A15@m-pdc.sbu.ac.ir> <98812244-73A2-4B28-86C3-849718D1F227@cs.ucla.edu> <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1A@m-pdc.sbu.ac.ir> Message-ID: <27A49F65-D54F-4DC5-B322-6BE4638EEBFC@cs.ucla.edu> > So, apart from what is set in the scenario, a query for /ndn (Name) may retrieve /ucla (Hint), right? yeah, correct. > > You mean in your scenario digApp sends interest for some entity other than NDNS? I suppose any node on which NdnsServerApp is running would be an instance of NDNS. Yeah, that is correct. All I was saying is that according to the SNAMP paper, you are supposed to retrieve the whole LINK object from NDNS (that is one signed data packet). However, in this scenario, only a name resolution will happen and you will have to create the LINK object by yourself. > I mean, currently we have this class in ndnSIM: > http://ndnsim.net/2.1/doxygen/classndn_1_1Link.html > For example, where does addDelegation() stores a Link object? Or, where does getDelegations() retrieve Link objects from? Is there any relation between extensions in your scenario and ndn::Link Class? Because I didn't see any reference to ndn::Link in the extensions. I feel that this is a C++ question. You have a class and you can create objects of this class. This class is the LINK class. An object of the LINK class contains a number of delegations (by delegation we mean a pair of a globally routable prefix and a priority field). Using the addDelegation() method, you can add a pair of globally routable prefix and priority to a LINK object. Given a LINK object, you call the getDelegations() methods and you get a number of pairs back. Like I said, you can use NDNS for the name resolution and then create a LINK object in your application. Hope that this helps! Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Sat Apr 2 15:25:49 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Sat, 2 Apr 2016 15:25:49 -0700 Subject: [ndnSIM] Porting scenarios to ndnSIM 2.1 In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A20@m-pdc.sbu.ac.ir> References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A20@m-pdc.sbu.ac.ir> Message-ID: <32571E0F-11C2-4177-BA17-69FFB715485E@cs.ucla.edu> Hi Sabet, I would say that the best way to see the changes is to take a look directly at the commits on github: https://github.com/named-data-ndnSIM/ndnSIM/commits/master Hope that this helps. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 2, 2016, at 11:43 AM, Muhammad Hosain Abdollahi Sabet wrote: > > Hi everyone, > Is there any guide on how one can port simulation scenarios wrote for ndnSIM 1? Currently I have a simulation in which has some modifications in model/ndn-interest.h/.cc, model/wire/ndnsim.h/.cc, ndn.cxx/detail/pending-interests-container.h, model/fw/ndn-forwarding-strategy.h/.cc. I know NFD is being used directly in ndnSIM 2.1 and there has been some changes in ndn-cxx. But honestly I'm not much familiar with them and need some guide. > > Thanks, > Sabet > -------------- next part -------------- An HTML attachment was scrubbed... URL: From anilj.mailing at gmail.com Sat Apr 2 19:17:02 2016 From: anilj.mailing at gmail.com (Anil Jangam) Date: Sat, 2 Apr 2016 19:17:02 -0700 Subject: [ndnSIM] How the application level tracers work? Message-ID: Hi, In my simulation scenario, I get no output when I enable the application delay tracer. However, when I run the example provided, it works fine. So, are there any preconditions in this example program, which I need to take care of or just following line is enough to collect the application delay metrics? ndn::AppDelayTracer::InstallAll("app-delays-trace.txt"); I also want to understand the significance of Connect() function implementation. Config::ConnectWithoutContext("/NodeList/" + m_node + "/ApplicationList/*/LastRetransmittedInterestDataDelay", MakeCallback(&AppDelayTracer::LastRetransmittedInterestDataDelay, this)); Config::ConnectWithoutContext("/NodeList/" + m_node + "/ApplicationList/*/FirstInterestDataDelay", MakeCallback(&AppDelayTracer::FirstInterestDataDelay, this)); What does ConnectWithoutContext() do? I looked into the Config class, but did not understand what service it really provides. What the attributes (like LastRetransmittedInterestDataDelay and FirstInterestDataDelay) actually mean? Are they predefined anywhere or are they user defined? /anil. -------------- next part -------------- An HTML attachment was scrubbed... URL: From h2015098 at pilani.bits-pilani.ac.in Sat Apr 2 22:19:36 2016 From: h2015098 at pilani.bits-pilani.ac.in (AJINKYA RAJPUT) Date: Sun, 3 Apr 2016 10:49:36 +0530 Subject: [ndnSIM] Guidance for car2car scenario Message-ID: I am currently developing the trust schema for VANETs running on NDN. I wished to develop on ndnSim-nom-rapid-car2car scenario by cawka @ https://github.com/cawka/ndnSIM-nom-rapid-car2car but the given scenario is developed on very old ndnsim which didint have security module. I guess i will have to update the scenario to current ndnsim and then further. I need some guidance as to what changes I need to do update the car2car scenario to be able to run with current ndnsim Ajinkya First Year Masters of Engineering (CSE) BITS Pilani -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Sun Apr 3 00:32:04 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Sun, 3 Apr 2016 13:32:04 +0600 Subject: [ndnSIM] stop producer from forwarding interests In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1E@m-pdc.sbu.ac.ir> References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1E@m-pdc.sbu.ac.ir> Message-ID: Hello Sabet, I was trying to mean that apart from answering an interest with data packet a producer forwards the same interest to other nodes connected to it. As, I found this while dealing with the multicast strategy. And, I want to stop the producer from doing that forwarding or broadcasting. Thanks, Asif On Sat, Apr 2, 2016 at 11:20 PM, Muhammad Hosain Abdollahi Sabet < M.AbdollahiSabet at mail.sbu.ac.ir> wrote: > Hi Asif, > > Sorry. I didn't understand what you mean by forwarding interest. Producer > application answers interests with *data* packets an can be stopped using > StopApplication(). But I guess what you mean was different. > > Thanks, > Sabet > > ---------- Forwarded message ---------- > From: Shahid Md. Asif Iqbal > Date: Sat, Apr 2, 2016 at 4:43 PM > Subject: [ndnSIM] stop producer from forwarding interests > To: ndnsim > > > Dear All, > How can I stop a producer from forwarding an interest requesting the > content owned by itself? As, I found that producer do not stop interests > while I was using some ideas with multicast strategy. > > Thanks, > Asif > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From pratyushagnihotri03 at gmail.com Sun Apr 3 03:03:17 2016 From: pratyushagnihotri03 at gmail.com (Pratyush Agnihotri) Date: Sun, 3 Apr 2016 12:03:17 +0200 Subject: [ndnSIM] error: Running porgram outside scratch folder Message-ID: Hi, I am using ndnSim first time. I did configuration as mentioned in http://ndnsim.net/2.1/index.html. Also, I was able to successfully run=ndn-simple program with visualization as well as I can run any scenario copied to scratch folder. However, I am not able to run any program other than scratch. For example, running from download folder or ndnSim. To solve this problem, I tried to set environment variable in /.bashrc such as export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/usr/local/lib/pkgconfig export LD_LIBRARY_PATH=${$LD_LIBRARY_PATH}:/usr/local/lib export PATH=${PATH}:/home/pratyush/ndnSIM/ns-3 export PATH=${PATH}:/home/pratyush/ndnSIM/ns-3/build But still not able to solve problem. Can you please suggest how can I solve this issue? Thanks -- Kind Regards, Pratyush Agnihotri -------------- next part -------------- An HTML attachment was scrubbed... URL: From shijunxiao at email.arizona.edu Sun Apr 3 10:07:30 2016 From: shijunxiao at email.arizona.edu (Junxiao Shi) Date: Sun, 3 Apr 2016 10:07:30 -0700 Subject: [ndnSIM] stop producer from forwarding interests In-Reply-To: References: Message-ID: Hi Asif As I understand, your scenario is: - The network has multiple nodes. - A producer application is running on the node P, and it serves contents under namespace ndn:/P. - Node P is using the multicast strategy. - Node P has a default route ndn:/ toward other peer nodes such as Q and R. - You are observing that, when an Interest starting with ndn:/P is received by node P, it's not only forwarded to the producer application, but also forwarded to Q and R. - You want the Interest to be forwarded only to the producer application, but not to other nodes. The behavior occurs because the FIB entry ndn:/P contains not only the producer application but also nodes Q and R. Although there isn't a route ndn:/P toward Q or R, these two nexthops appear in the FIB entry due to route inheritance (see NFD Developer Guide, "RIB Management - FIB Updater - Route Inheritance Flags" section). To achieve the desired behavior, the FIB entry ndn:/P should contain only the producer application. One way to do that is setting the CAPTURE flag in the prefix registration command sent from the producer application. Yours, Junxiao On Sun, Apr 3, 2016 at 12:32 AM, Shahid Md. Asif Iqbal wrote: > I was trying to mean that apart from answering an interest with data > packet a producer forwards the same interest to other nodes connected to > it. As, I found this while dealing with the multicast strategy. And, I want > to stop the producer from doing that forwarding or broadcasting. > > On Sat, Apr 2, 2016 at 5:13 AM, Shahid Md. Asif Iqbal wrote: > How can I stop a producer from forwarding an interest requesting the > content owned by itself? As, I found that producer do not stop interests > while I was using some ideas with multicast strategy. > -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Sun Apr 3 23:00:33 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Mon, 4 Apr 2016 12:00:33 +0600 Subject: [ndnSIM] stop producer from forwarding interests In-Reply-To: References: Message-ID: Thanks Junxiao, You got my view point. Can you please specify which file(s) I need to work out with. Thanks, Asif On Sun, Apr 3, 2016 at 11:07 PM, Junxiao Shi wrote: > Hi Asif > > As I understand, your scenario is: > > - The network has multiple nodes. > - A producer application is running on the node P, and it serves > contents under namespace ndn:/P. > - Node P is using the multicast strategy. > - Node P has a default route ndn:/ toward other peer nodes such as Q > and R. > - You are observing that, when an Interest starting with ndn:/P is > received by node P, it's not only forwarded to the producer application, > but also forwarded to Q and R. > - You want the Interest to be forwarded only to the producer > application, but not to other nodes. > > The behavior occurs because the FIB entry ndn:/P contains not only the > producer application but also nodes Q and R. Although there isn't a route > ndn:/P toward Q or R, these two nexthops appear in the FIB entry due to > route inheritance (see NFD Developer Guide, "RIB Management - FIB Updater - > Route Inheritance Flags" section). > To achieve the desired behavior, the FIB entry ndn:/P should contain only > the producer application. One way to do that is setting the CAPTURE flag in > the prefix registration command sent from the producer application. > > Yours, Junxiao > > On Sun, Apr 3, 2016 at 12:32 AM, Shahid Md. Asif Iqbal > wrote: > >> I was trying to mean that apart from answering an interest with data >> packet a producer forwards the same interest to other nodes connected to >> it. As, I found this while dealing with the multicast strategy. And, I want >> to stop the producer from doing that forwarding or broadcasting. >> >> On Sat, Apr 2, 2016 at 5:13 AM, Shahid Md. Asif Iqbal > wrote: > >> How can I stop a producer from forwarding an interest requesting the >> content owned by itself? As, I found that producer do not stop interests >> while I was using some ideas with multicast strategy. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Mon Apr 4 00:10:52 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Mon, 4 Apr 2016 11:40:52 +0430 Subject: [ndnSIM] stop producer from forwarding interests References: Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A22@m-pdc.sbu.ac.ir> Asif, Junxiao, Having wondered about the situation you explained, I tried to simulate a similar scenario. Produce node Pnode(responsible for /p prefix) is connected to other nodes than consumer node, directly. I tried with both default route(/) and GlobalRoutingHelper in place, separately. In both cases, forwarding strategy for all nodes was set to "multicast". But Pnode does not forward interests with /p in their name. For being sure, I've created another produce Onode responsible for /o prefix. My topology makes interest for prefix /o pass through Pnode. In Onode PIT I can see entries for /o. But no entry for /p is created because Onode does not receive interests for prefix /p form Pnode. Could you elaborate a bit more on the situation you're referring to? Thanks, Sabet ---------- Forwarded message ---------- From: Shahid Md. Asif Iqbal Date: Mon, Apr 4, 2016 at 10:30 AM Subject: Re: [ndnSIM] stop producer from forwarding interests To: Junxiao Shi Cc: ndnsim Thanks Junxiao, You got my view point. Can you please specify which file(s) I need to work out with. Thanks, Asif On Sun, Apr 3, 2016 at 11:07 PM, Junxiao Shi wrote: > Hi Asif > > As I understand, your scenario is: > > - The network has multiple nodes. > - A producer application is running on the node P, and it serves > contents under namespace ndn:/P. > - Node P is using the multicast strategy. > - Node P has a default route ndn:/ toward other peer nodes such as Q > and R. > - You are observing that, when an Interest starting with ndn:/P is > received by node P, it's not only forwarded to the producer application, > but also forwarded to Q and R. > - You want the Interest to be forwarded only to the producer > application, but not to other nodes. > > The behavior occurs because the FIB entry ndn:/P contains not only the > producer application but also nodes Q and R. Although there isn't a route > ndn:/P toward Q or R, these two nexthops appear in the FIB entry due to > route inheritance (see NFD Developer Guide, "RIB Management - FIB Updater - > Route Inheritance Flags" section). > To achieve the desired behavior, the FIB entry ndn:/P should contain only > the producer application. One way to do that is setting the CAPTURE flag in > the prefix registration command sent from the producer application. > > Yours, Junxiao > > On Sun, Apr 3, 2016 at 12:32 AM, Shahid Md. Asif Iqbal > wrote: > >> I was trying to mean that apart from answering an interest with data >> packet a producer forwards the same interest to other nodes connected to >> it. As, I found this while dealing with the multicast strategy. And, I want >> to stop the producer from doing that forwarding or broadcasting. >> >> On Sat, Apr 2, 2016 at 5:13 AM, Shahid Md. Asif Iqbal > wrote: > >> How can I stop a producer from forwarding an interest requesting the >> content owned by itself? As, I found that producer do not stop interests >> while I was using some ideas with multicast strategy. >> > > _______________________________________________ ndnSIM mailing list ndnSIM at lists.cs.ucla.edu http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Mon Apr 4 02:47:34 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Mon, 4 Apr 2016 15:47:34 +0600 Subject: [ndnSIM] stop producer from forwarding interests In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A22@m-pdc.sbu.ac.ir> References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A22@m-pdc.sbu.ac.ir> Message-ID: Dear Sabet, Can you please draw the scenario here you tried with? And, can you please try this scenario with only one prefix name "/prefix" for all producers and the consumer requesting for the only prefix. * ( ) ----- ( ) ----- ( ) ----- (c) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- (p) ------ ( ) ----- ( ) ----- (p) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- (p) ------ ( ) ----- ( ) ----- (p) Thanks Asif On Mon, Apr 4, 2016 at 1:10 PM, Muhammad Hosain Abdollahi Sabet < M.AbdollahiSabet at mail.sbu.ac.ir> wrote: > Asif, > Junxiao, > > Having wondered about the situation you explained, I tried to simulate a > similar scenario. Produce node Pnode(responsible for /p prefix) is > connected to other nodes than consumer node, directly. I tried with both > default route(/) and GlobalRoutingHelper in place, separately. In both > cases, forwarding strategy for all nodes was set to "multicast". But Pnode > does not forward interests with /p in their name. For being sure, I've > created another produce Onode responsible for /o prefix. My topology makes > interest for prefix /o pass through Pnode. In Onode PIT I can see entries > for /o. But no entry for /p is created because Onode does not receive > interests for prefix /p form Pnode. > Could you elaborate a bit more on the situation you're referring to? > > Thanks, > Sabet > > ---------- Forwarded message ---------- > From: Shahid Md. Asif Iqbal > Date: Mon, Apr 4, 2016 at 10:30 AM > Subject: Re: [ndnSIM] stop producer from forwarding interests > To: Junxiao Shi > Cc: ndnsim > > > Thanks Junxiao, > You got my view point. Can you please specify which file(s) I need to work > out with. > > Thanks, > Asif > > On Sun, Apr 3, 2016 at 11:07 PM, Junxiao Shi > > wrote: > > > Hi Asif > > > > As I understand, your scenario is: > > > > - The network has multiple nodes. > > - A producer application is running on the node P, and it serves > > contents under namespace ndn:/P. > > - Node P is using the multicast strategy. > > - Node P has a default route ndn:/ toward other peer nodes such as Q > > and R. > > - You are observing that, when an Interest starting with ndn:/P is > > received by node P, it's not only forwarded to the producer > application, > > but also forwarded to Q and R. > > - You want the Interest to be forwarded only to the producer > > application, but not to other nodes. > > > > The behavior occurs because the FIB entry ndn:/P contains not only the > > producer application but also nodes Q and R. Although there isn't a route > > ndn:/P toward Q or R, these two nexthops appear in the FIB entry due to > > route inheritance (see NFD Developer Guide, "RIB Management - FIB > Updater - > > Route Inheritance Flags" section). > > To achieve the desired behavior, the FIB entry ndn:/P should contain only > > the producer application. One way to do that is setting the CAPTURE flag > in > > the prefix registration command sent from the producer application. > > > > Yours, Junxiao > > > > On Sun, Apr 3, 2016 at 12:32 AM, Shahid Md. Asif Iqbal < > asifcsep at gmail.com > > > wrote: > > > >> I was trying to mean that apart from answering an interest with data > >> packet a producer forwards the same interest to other nodes connected to > >> it. As, I found this while dealing with the multicast strategy. And, I > want > >> to stop the producer from doing that forwarding or broadcasting. > >> > >> On Sat, Apr 2, 2016 at 5:13 AM, Shahid Md. Asif Iqbal < > asifcsep at gmail.com > > > wrote: > > > >> How can I stop a producer from forwarding an interest requesting the > >> content owned by itself? As, I found that producer do not stop interests > >> while I was using some ideas with multicast strategy. > >> > > > > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Mon Apr 4 12:55:41 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Tue, 5 Apr 2016 00:25:41 +0430 Subject: [ndnSIM] stop producer from forwarding interests References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A22@m-pdc.sbu.ac.ir> Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A23@m-pdc.sbu.ac.ir> Dear Asif, I see. The station you have, is because of forwarding strategy in surrounding nodes, which I guess is set to "multicast" for all of them. Actually your producers are not the ones which are forwarding interest for the very prefix they are responsible for themselves. Surrounding nodes are the ones which are forwarding interests. If you put your producers in one line you will see. If you try with a 7*1 grid in which : Ptr producerA = grid.GetNode(3,0); Ptr producerB = grid.GetNode(4,0); Ptr producerC = grid.GetNode(5,0); Ptr producerD = grid.GetNode(6,0); and try only one consumer with interest for prefix of produceA, you will see that produceB,C&D will receive no interests. Thanks, Sabet -----Original Message----- From: Shahid Md. Asif Iqbal [mailto:asifcsep at gmail.com] Sent: Mon 4/4/2016 2:17 PM To: Muhammad Hosain Abdollahi Sabet Cc: Junxiao Shi; ndnsim Subject: Re: [ndnSIM] stop producer from forwarding interests Dear Sabet, Can you please draw the scenario here you tried with? And, can you please try this scenario with only one prefix name "/prefix" for all producers and the consumer requesting for the only prefix. * ( ) ----- ( ) ----- ( ) ----- (c) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- (p) ------ ( ) ----- ( ) ----- (p) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) * | | | | | | | * | | | | | | | * ( ) ----- ( ) ----- ( ) ----- (p) ------ ( ) ----- ( ) ----- (p) Thanks Asif On Mon, Apr 4, 2016 at 1:10 PM, Muhammad Hosain Abdollahi Sabet < M.AbdollahiSabet at mail.sbu.ac.ir> wrote: > Asif, > Junxiao, > > Having wondered about the situation you explained, I tried to simulate a > similar scenario. Produce node Pnode(responsible for /p prefix) is > connected to other nodes than consumer node, directly. I tried with both > default route(/) and GlobalRoutingHelper in place, separately. In both > cases, forwarding strategy for all nodes was set to "multicast". But Pnode > does not forward interests with /p in their name. For being sure, I've > created another produce Onode responsible for /o prefix. My topology makes > interest for prefix /o pass through Pnode. In Onode PIT I can see entries > for /o. But no entry for /p is created because Onode does not receive > interests for prefix /p form Pnode. > Could you elaborate a bit more on the situation you're referring to? > > Thanks, > Sabet > > ---------- Forwarded message ---------- > From: Shahid Md. Asif Iqbal > Date: Mon, Apr 4, 2016 at 10:30 AM > Subject: Re: [ndnSIM] stop producer from forwarding interests > To: Junxiao Shi > Cc: ndnsim > > > Thanks Junxiao, > You got my view point. Can you please specify which file(s) I need to work > out with. > > Thanks, > Asif > > On Sun, Apr 3, 2016 at 11:07 PM, Junxiao Shi > > wrote: > > > Hi Asif > > > > As I understand, your scenario is: > > > > - The network has multiple nodes. > > - A producer application is running on the node P, and it serves > > contents under namespace ndn:/P. > > - Node P is using the multicast strategy. > > - Node P has a default route ndn:/ toward other peer nodes such as Q > > and R. > > - You are observing that, when an Interest starting with ndn:/P is > > received by node P, it's not only forwarded to the producer > application, > > but also forwarded to Q and R. > > - You want the Interest to be forwarded only to the producer > > application, but not to other nodes. > > > > The behavior occurs because the FIB entry ndn:/P contains not only the > > producer application but also nodes Q and R. Although there isn't a route > > ndn:/P toward Q or R, these two nexthops appear in the FIB entry due to > > route inheritance (see NFD Developer Guide, "RIB Management - FIB > Updater - > > Route Inheritance Flags" section). > > To achieve the desired behavior, the FIB entry ndn:/P should contain only > > the producer application. One way to do that is setting the CAPTURE flag > in > > the prefix registration command sent from the producer application. > > > > Yours, Junxiao > > > > On Sun, Apr 3, 2016 at 12:32 AM, Shahid Md. Asif Iqbal < > asifcsep at gmail.com > > > wrote: > > > >> I was trying to mean that apart from answering an interest with data > >> packet a producer forwards the same interest to other nodes connected to > >> it. As, I found this while dealing with the multicast strategy. And, I > want > >> to stop the producer from doing that forwarding or broadcasting. > >> > >> On Sat, Apr 2, 2016 at 5:13 AM, Shahid Md. Asif Iqbal < > asifcsep at gmail.com > > > wrote: > > > >> How can I stop a producer from forwarding an interest requesting the > >> content owned by itself? As, I found that producer do not stop interests > >> while I was using some ideas with multicast strategy. > >> > > > > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From don1559 at gmail.com Mon Apr 4 13:30:02 2016 From: don1559 at gmail.com (Ahmed Sadek) Date: Mon, 4 Apr 2016 22:30:02 +0200 Subject: [ndnSIM] Consumer without predefined interest rate In-Reply-To: References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A1C@m-pdc.sbu.ac.ir> <06D5BC98-8835-4D15-836C-D8C7A2A9C6B7@cs.ucla.edu> Message-ID: On Mon, Apr 4, 2016 at 10:22 AM, Ahmed Sadek wrote: > Thank you for the helpful replies. I have used the *[consumer window > + best-route-strategy2.]* which allowed me to generate a lot of interests > and once the link is over loaded (data packets dropped) the strategy try to > re transmit interests on the next available interfaces in nexthops, > maximizing the utilization of the available links. But since there is no > congestion control the traffic is spiky. (window=1000, size=20). > > I still don't understand the logic behind the (m_inFlight and m_window) > parameters in ConsumerWindow. so I appreciate any clarification. > > Does it mean that we start by a certain window and keep increasing by *one > *each time we receive a data packet and return to window value when we > have interest time out. Also, if we have a window = 1000 and payload = 1040 > Byte , does this mean our initial data rate is (1000*1040 Byte) and keep > increasing ? > > Also, would adopting a similar approach to tcp slow start and congestion > avoidance, would result in more stable stream of data ? > > Thanks! > Ahmed > > On Fri, Apr 1, 2016 at 7:28 PM, Spyridon (Spyros) Mastorakis < > mastorakis at cs.ucla.edu> wrote: > >> Hi guys, >> >> just to add something to Sabet?s response: >> >> The way to achieve that (i.e., full link utilization) can partially be >> through your application (in the sense that your application should send >> enough Interests to retrieve enough data), but one should also consider the >> forwarding strategy. >> >> As far as the application is concerned, one can use some of the >> alternative applications and retrieval models that come with ndnSIM (zipf, >> batches etc.) or write their own retrieval models. >> >> As far as the strategy is concerned, it should estimate the link >> bandwidth and expand Interest forwarding to alternative links when the >> current link is fully utilized. To achieve that, one should write their own >> strategy. >> >> However, a quick and dirty way to fully utilize a topology link in ndnSIM >> (given that one knows the link capacities in advance) is through the >> application by selecting the appropriate Interest expression rate. >> >> Hope that this helps. >> >> Spyridon (Spyros) Mastorakis >> Personal Website: http://cs.ucla.edu/~mastorakis/ >> Internet Research Laboratory >> Computer Science Department >> UCLA >> >> >> On Apr 1, 2016, at 10:08 AM, Muhammad Hosain Abdollahi Sabet < >> M.AbdollahiSabet at mail.sbu.ac.ir> wrote: >> >> >> Hi Ahmed, >> >> I suggest you take a look at this: >> http://ndnsim.net/2.1/doxygen/classns3_1_1ndn_1_1ConsumerWindow.html >> It's worth a try. >> >> Thanks, >> Sabet >> >> ---------- Forwarded message ---------- >> From: Ahmed Sadek >> Date: Fri, Apr 1, 2016 at 8:46 PM >> Subject: [ndnSIM] Consumer without predefined interest rate >> To: ndnsim >> >> >> Hi All, >> >> I was wondering if there is a consumer that generate interests without >> predefined rate from the start of simulation and try to take advantage of >> the link bandwidth as much as available, similar to file download with >> TCP. >> >> If not then any hints on the design of such app. >> >> Thanks and have a nice weekend! >> Ahmed >> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From don1559 at gmail.com Tue Apr 5 04:04:05 2016 From: don1559 at gmail.com (Ahmed Sadek) Date: Tue, 5 Apr 2016 13:04:05 +0200 Subject: [ndnSIM] Changing the BW on Link during sim Message-ID: Dear All, I wanted to change the BW on link during sim, I found this method in a previous email Here so now I have this method: // Set the Data Rate of a given Device. void setDataRate(Ptr nd, std::string DR) { Ptr < Channel > channel = nd->GetChannel(); Ptr toDev = channel->GetDevice (1); Ptr fromDev = channel->GetDevice (0); toDev->SetAttribute ("DataRate", StringValue (DR)); fromDev->SetAttribute ("DataRate", StringValue (DR)); } And was wondering, is there a simpler method to take advantage of point to point device method Here ( pointToPoint.SetDeviceAttribute ("DataRate", StringValue ("5Mbps")); ), can't we cast *netDevice *to *PointToPointNetDevice *or something similar ? Thanks! Ahmed -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Tue Apr 5 04:29:44 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Tue, 5 Apr 2016 17:29:44 +0600 Subject: [ndnSIM] stop producer from forwarding interests In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A23@m-pdc.sbu.ac.ir> References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A22@m-pdc.sbu.ac.ir> <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A23@m-pdc.sbu.ac.ir> Message-ID: Dear Sabet, Did you observe the phenomenon I explained using the 7*7 grid? If you have found the same behavior, I mean producers are forwarding the interests for the very prefix they are responsible for, then help me in finding a way out. Thanks, Asif On Tue, Apr 5, 2016 at 1:55 AM, Muhammad Hosain Abdollahi Sabet < M.AbdollahiSabet at mail.sbu.ac.ir> wrote: > Dear Asif, > I see. The station you have, is because of forwarding strategy in > surrounding nodes, which I guess is set to "multicast" for all of them. > Actually your producers are not the ones which are forwarding interest for > the very prefix they are responsible for themselves. Surrounding nodes are > the ones which are forwarding interests. If you put your producers in one > line you will see. If you try with a 7*1 grid in which : > Ptr producerA = grid.GetNode(3,0); > Ptr producerB = grid.GetNode(4,0); > Ptr producerC = grid.GetNode(5,0); > Ptr producerD = grid.GetNode(6,0); > and try only one consumer with interest for prefix of produceA, you will > see that produceB,C&D will receive no interests. > > Thanks, > Sabet > > > -----Original Message----- > From: Shahid Md. Asif Iqbal [mailto:asifcsep at gmail.com > ] > Sent: Mon 4/4/2016 2:17 PM > To: Muhammad Hosain Abdollahi Sabet > Cc: Junxiao Shi; ndnsim > Subject: Re: [ndnSIM] stop producer from forwarding interests > > Dear Sabet, > Can you please draw the scenario here you tried with? And, can you please > try this scenario with only one prefix name "/prefix" for all producers and > the consumer requesting for the only prefix. > > > * ( ) ----- ( ) ----- ( ) ----- (c) ------ ( ) ----- ( ) ----- ( ) > * | | | | | | | > * | | | | | | | > * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) > * | | | | | | | > * | | | | | | | > * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) > * | | | | | | | > * | | | | | | | > * ( ) ----- ( ) ----- ( ) ----- (p) ------ ( ) ----- ( ) ----- (p) > * | | | | | | | > * | | | | | | | > * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) > * | | | | | | | > * | | | | | | | > * ( ) ----- ( ) ----- ( ) ----- ( ) ------ ( ) ----- ( ) ----- ( ) > * | | | | | | | > * | | | | | | | > * ( ) ----- ( ) ----- ( ) ----- (p) ------ ( ) ----- ( ) ----- (p) > > > Thanks > Asif > > On Mon, Apr 4, 2016 at 1:10 PM, Muhammad Hosain Abdollahi Sabet < > M.AbdollahiSabet at mail.sbu.ac.ir> wrote: > > > Asif, > > Junxiao, > > > > Having wondered about the situation you explained, I tried to simulate a > > similar scenario. Produce node Pnode(responsible for /p prefix) is > > connected to other nodes than consumer node, directly. I tried with both > > default route(/) and GlobalRoutingHelper in place, separately. In both > > cases, forwarding strategy for all nodes was set to "multicast". But > Pnode > > does not forward interests with /p in their name. For being sure, I've > > created another produce Onode responsible for /o prefix. My topology > makes > > interest for prefix /o pass through Pnode. In Onode PIT I can see entries > > for /o. But no entry for /p is created because Onode does not receive > > interests for prefix /p form Pnode. > > Could you elaborate a bit more on the situation you're referring to? > > > > Thanks, > > Sabet > > > > ---------- Forwarded message ---------- > > From: Shahid Md. Asif Iqbal > > Date: Mon, Apr 4, 2016 at 10:30 AM > > Subject: Re: [ndnSIM] stop producer from forwarding interests > > To: Junxiao Shi > > Cc: ndnsim > > > > > > Thanks Junxiao, > > You got my view point. Can you please specify which file(s) I need to > work > > out with. > > > > Thanks, > > Asif > > > > On Sun, Apr 3, 2016 at 11:07 PM, Junxiao Shi < > shijunxiao at email.arizona.edu > > > > > wrote: > > > > > Hi Asif > > > > > > As I understand, your scenario is: > > > > > > - The network has multiple nodes. > > > - A producer application is running on the node P, and it serves > > > contents under namespace ndn:/P. > > > - Node P is using the multicast strategy. > > > - Node P has a default route ndn:/ toward other peer nodes such as Q > > > and R. > > > - You are observing that, when an Interest starting with ndn:/P is > > > received by node P, it's not only forwarded to the producer > > application, > > > but also forwarded to Q and R. > > > - You want the Interest to be forwarded only to the producer > > > application, but not to other nodes. > > > > > > The behavior occurs because the FIB entry ndn:/P contains not only the > > > producer application but also nodes Q and R. Although there isn't a > route > > > ndn:/P toward Q or R, these two nexthops appear in the FIB entry due to > > > route inheritance (see NFD Developer Guide, "RIB Management - FIB > > Updater - > > > Route Inheritance Flags" section). > > > To achieve the desired behavior, the FIB entry ndn:/P should contain > only > > > the producer application. One way to do that is setting the CAPTURE > flag > > in > > > the prefix registration command sent from the producer application. > > > > > > Yours, Junxiao > > > > > > On Sun, Apr 3, 2016 at 12:32 AM, Shahid Md. Asif Iqbal < > > asifcsep at gmail.com > > > > wrote: > > > > > >> I was trying to mean that apart from answering an interest with data > > >> packet a producer forwards the same interest to other nodes connected > to > > >> it. As, I found this while dealing with the multicast strategy. And, I > > want > > >> to stop the producer from doing that forwarding or broadcasting. > > >> > > >> On Sat, Apr 2, 2016 at 5:13 AM, Shahid Md. Asif Iqbal < > > asifcsep at gmail.com > > > > wrote: > > > > > >> How can I stop a producer from forwarding an interest requesting the > > >> content owned by itself? As, I found that producer do not stop > interests > > >> while I was using some ideas with multicast strategy. > > >> > > > > > > > > > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > > > > > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ndn at sqh.me Thu Apr 7 01:45:18 2016 From: ndn at sqh.me (ndn ndn) Date: Thu, 7 Apr 2016 16:45:18 +0800 Subject: [ndnSIM] How to add a hop-count number in interest? Message-ID: Hi, Recently, I want to add a hop-count number in interest class and when interest pass a node, this number will increase one. so I define a mutable int in interest class, init it in construct function, and increase it in Forward::onIncomingInterest(). But I try it failed, I found every time when Forward got a interest in onIncomingInterest, the number always zero. I didn't found any function to make this interest got zero, and How to increase it one by one ? Thanks for your help? qhsong -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Thu Apr 7 12:04:01 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Thu, 7 Apr 2016 12:04:01 -0700 Subject: [ndnSIM] How to add a hop-count number in interest? In-Reply-To: References: Message-ID: Hi, since the Interest hop count is the same with the hop count of the corresponding Data packet, you could use the hop count attached to a received Data packet: https://github.com/named-data-ndnSIM/ndnSIM/blob/a4915caa0c4121f2dd87fd3d7cc3b6eb91632f16/apps/ndn-consumer.cpp#L226-L234 Would that work for you? Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 7, 2016, at 1:45 AM, ndn ndn wrote: > > Hi, > Recently, I want to add a hop-count number in interest class and when interest pass a node, this number will increase one. > so I define a mutable int in interest class, init it in construct function, and increase it in Forward::onIncomingInterest(). But I try it failed, I found every time when Forward got a interest in onIncomingInterest, the number always zero. > > I didn't found any function to make this interest got zero, and How to increase it one by one ? > > Thanks for your help? > > qhsong > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ndn at sqh.me Thu Apr 7 19:46:27 2016 From: ndn at sqh.me (qhsong) Date: Fri, 8 Apr 2016 10:46:27 +0800 Subject: [ndnSIM] How to add a hop-count number in interest? In-Reply-To: References: Message-ID: Hi, Oops, I didn't mention that. it helps me a lot. I can use it to got interest and data class hop count , thanks a lot. qhsong 2016-04-08 3:04 GMT+08:00 Spyridon (Spyros) Mastorakis < mastorakis at cs.ucla.edu>: > Hi, > > since the Interest hop count is the same with the hop count of the > corresponding Data packet, you could use the hop count attached to a > received Data packet: > > > https://github.com/named-data-ndnSIM/ndnSIM/blob/a4915caa0c4121f2dd87fd3d7cc3b6eb91632f16/apps/ndn-consumer.cpp#L226-L234 > > Would that work for you? > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > > > > On Apr 7, 2016, at 1:45 AM, ndn ndn wrote: > > Hi, > Recently, I want to add a hop-count number in interest class and when > interest pass a node, this number will increase one. > so I define a mutable int in interest class, init it in construct > function, and increase it in Forward::onIncomingInterest(). But I try it > failed, I found every time when Forward got a interest in > onIncomingInterest, the number always zero. > > I didn't found any function to make this interest got zero, and How to > increase it one by one ? > > Thanks for your help? > > qhsong > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From anselme333 at gmail.com Fri Apr 8 19:52:10 2016 From: anselme333 at gmail.com (NDIKUMANA ANSELME) Date: Sat, 9 Apr 2016 11:52:10 +0900 Subject: [ndnSIM] set individual cache sizes Message-ID: Hi, I am trying to set individual cache sizes in some nodes based on ndn-simple-with-different-sizes-content-store.cc example, and when i checked CS entries in these nodes, there are no entries. Any hint on how to fix this, will be appreciated. ndn::StackHelper ndnHelper; ndnHelper.SetOldContentStore("ns3::ndn::cs::Freshness::Lru"); ndnHelper.InstallAll() //set individual cache sizes on nodes Config::Set ("/NodeList/9/$ns3::ndn::ContentStore/MaxSize", UintegerValue(100000)); Config::Set ("/NodeList/11/$ns3::ndn::ContentStore/MaxSize", UintegerValue(100000)); Config::Set ("/NodeList/12/$ns3::ndn::ContentStore/MaxSize", UintegerValue(100000)); Config::Set ("/NodeList/1/$ns3::ndn::ContentStore/MaxSize", UintegerValue(10000)); Config::Set ("/NodeList/3/$ns3::ndn::ContentStore/MaxSize", UintegerValue(10000)); Config::Set ("/NodeList/4/$ns3::ndn::ContentStore/MaxSize", UintegerValue(10000)); //Config::Set ("/NodeList/CRouter4/$ns3::ndn::ContentStore/MaxSize", UintegerValue (10000)); //Config::Set ("/NodeList/node->GetId(CRouter4)/$ns3::ndn::ContentStore/MaxSize", UintegerValue (10000)); With Regards, Anselme N. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ndn at sqh.me Sat Apr 9 06:25:12 2016 From: ndn at sqh.me (qhsong) Date: Sat, 9 Apr 2016 21:25:12 +0800 Subject: [ndnSIM] set individual cache sizes In-Reply-To: References: Message-ID: Hi, How to checks CS entries?I find I can't checks CS entries via --vis tools?And how to check it? And to set difference content store size,maybe you can try this: http://ndnsim.net/2.1/cs.html qhsong 2016-04-09 10:52 GMT+08:00 NDIKUMANA ANSELME : > Hi, > > I am trying to set individual cache sizes in some nodes based > on ndn-simple-with-different-sizes-content-store.cc example, and when i > checked CS entries in these nodes, there are no entries. Any hint on how > to fix this, will be appreciated. > > ndn::StackHelper ndnHelper; > ndnHelper.SetOldContentStore("ns3::ndn::cs::Freshness::Lru"); > ndnHelper.InstallAll() > //set individual cache sizes on nodes > Config::Set ("/NodeList/9/$ns3::ndn::ContentStore/MaxSize", > UintegerValue(100000)); > Config::Set ("/NodeList/11/$ns3::ndn::ContentStore/MaxSize", > UintegerValue(100000)); > Config::Set ("/NodeList/12/$ns3::ndn::ContentStore/MaxSize", > UintegerValue(100000)); > Config::Set ("/NodeList/1/$ns3::ndn::ContentStore/MaxSize", > UintegerValue(10000)); > Config::Set ("/NodeList/3/$ns3::ndn::ContentStore/MaxSize", > UintegerValue(10000)); > Config::Set ("/NodeList/4/$ns3::ndn::ContentStore/MaxSize", > UintegerValue(10000)); > //Config::Set ("/NodeList/CRouter4/$ns3::ndn::ContentStore/MaxSize", > UintegerValue (10000)); > //Config::Set > ("/NodeList/node->GetId(CRouter4)/$ns3::ndn::ContentStore/MaxSize", > UintegerValue (10000)); > > > With Regards, > > Anselme N. > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From ndn at sqh.me Sat Apr 9 06:43:36 2016 From: ndn at sqh.me (qhsong) Date: Sat, 9 Apr 2016 21:43:36 +0800 Subject: [ndnSIM] Fwd: How to add a path count in data packet? In-Reply-To: References: Message-ID: Hello, Recently I want to accomplish a Path coordination Content Store policy on ndnSIM, and I want to a node receive a data and see the data can be or not stored in it. So I add a int attribute named hop in Data class, and then decrease it in Forward::onOutgoingData, When I find this hop is 0, then I add it. But I found some problem, First, It seems onOutgoingData function will call not one times in same face, and also called by may threads.So hop count number seem so wired,just like following ,Count is the hop attribute: Face ID: 256 data=/prefix/%FE%1E Count:5 Face ID: 257 data=/prefix/%FE%1E Count:4 Face ID: 256 data=/prefix/%FE%1E Count:4 Face ID: 256 data=/prefix/%FE%1E Count:-1 Face ID: 256 data=/prefix/%FE%1E Count:160658872 Face ID: 256 data=/prefix/%FE%1E Count:160680288 Face ID: 256 data=/prefix/%FE%1E Count:161002048 Face ID: 257 data=/prefix/%FE%1E Count:160788463 Face ID: 256 data=/prefix/%FE%1E Count:160579534 Face ID: 258 data=/prefix/%FE%1E Count:160429366 Face ID: 256 data=/prefix/%FE%1E Count:5 Face ID: 257 data=/prefix/%FE%1E Count:161011245 Face ID: 256 data=/prefix/%FE%1E Count:161011240 Face ID: 256 data=/prefix/%FE%1E Count:161011235 Face ID: 256 data=/prefix/%FE%1E Count:160825346 Face ID: 256 data=/prefix/%FE%1E Count:160825342 Face ID: 256 data=/prefix/%FE%1E Count:160825338 Face ID: 256 data=/prefix/%FE%1E Count:160825334 Face ID: 256 data=/prefix/%FE%1E Count:160825330 Face ID: 257 data=/prefix/%FE%1E Count:160825327 Face ID: 258 data=/prefix/%FE%1E Count:160825325 ? I have no idea about this, could your gives me some clue on this, and how to avoid this? thanks for your help. qhsong -------------- next part -------------- An HTML attachment was scrubbed... URL: From art_med_ahmed at yahoo.fr Sat Apr 9 16:18:09 2016 From: art_med_ahmed at yahoo.fr (Mohamed Benahmed) Date: Sat, 9 Apr 2016 23:18:09 +0000 (UTC) Subject: [ndnSIM] Multi-hop wireless Ad-hoc References: <1141622335.36989.1460243889493.JavaMail.yahoo.ref@mail.yahoo.com> Message-ID: <1141622335.36989.1460243889493.JavaMail.yahoo@mail.yahoo.com> I have an problem ?in multi-hop wireless Adhoc?i need to install NDN in 3 node A--->B----->c ?(A:consumer ; B: forwarder ; C: producer ) but the problem is B does not forward the interest?towards?C ?my code :-----------------------------------------------------------#include "ns3/core-module.h"#include "ns3/network-module.h"#include "ns3/applications-module.h"#include "ns3/wifi-module.h"#include "ns3/mobility-module.h"#include "ns3/internet-module.h" #include "ns3/ndnSIM-module.h" using namespace std;namespace ns3 { NS_LOG_COMPONENT_DEFINE("ndn.WifiExample"); int?main(int argc, char* argv[]){??? CommandLine cmd;? cmd.Parse(argc, argv); ??? WifiHelper wifi = WifiHelper::Default();? wifi.SetStandard(WIFI_PHY_STANDARD_80211a);? wifi.SetRemoteStationManager("ns3::ConstantRateWifiManager", "DataMode",? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?StringValue("OfdmRate24Mbps")); ? YansWifiChannelHelper wifiChannel; // = YansWifiChannelHelper::Default ();? wifiChannel.SetPropagationDelay("ns3::ConstantSpeedPropagationDelayModel");? wifiChannel.AddPropagationLoss("ns3::ThreeLogDistancePropagationLossModel");? wifiChannel.AddPropagationLoss("ns3::NakagamiPropagationLossModel"); ? // YansWifiPhy wifiPhy = YansWifiPhy::Default();? YansWifiPhyHelper wifiPhyHelper = YansWifiPhyHelper::Default();? wifiPhyHelper.SetChannel(wifiChannel.Create());?// wifiPhyHelper.Set("TxPowerStart", DoubleValue(5));?// wifiPhyHelper.Set("TxPowerEnd", DoubleValue(5)); ? NqosWifiMacHelper wifiMacHelper = NqosWifiMacHelper::Default();? wifiMacHelper.SetType("ns3::AdhocWifiMac");? NodeContainer nodes;? nodes.Create(3);? MobilityHelper mobility;? // Put everybody into a line? Ptr initialAlloc =?? ? CreateObject ();? for (uint32_t i = 0; i < nodes.GetN (); ++i) {? ? ? initialAlloc->Add (Vector (i*400, i,i));? mobility.SetPositionAllocator(initialAlloc); ? ////////////////? // 1. Install Wifi? NetDeviceContainer wifiNetDevices = wifi.Install(wifiPhyHelper, wifiMacHelper, nodes); ? // 2. Install Mobility model? mobility.Install(nodes); ? // 3. Install NDN stack? NS_LOG_INFO("Installing NDN stack");? ndn::StackHelper ndnHelper;? // ndnHelper.AddNetDeviceFaceCreateCallback (WifiNetDevice::GetTypeId (), MakeCallback? // (MyNetDeviceFaceCallback));? ndnHelper.SetOldContentStore("ns3::ndn::cs::Lru", "MaxSize", "1000");? ndnHelper.SetDefaultRoutes(true);? ndnHelper.Install(nodes); ? // Set BestRoute strategy? ndn::StrategyChoiceHelper::Install(nodes, "/", "/localhost/nfd/strategy/brodcast"); ? // 4. Set up applications? NS_LOG_INFO("Installing Applications"); ? ndn::AppHelper consumerHelper("ns3::ndn::ConsumerCbr");? consumerHelper.SetPrefix("/prefix");? consumerHelper.SetAttribute("Frequency", StringValue("1"));??? ? ApplicationContainer consumer = consumerHelper.Install(nodes.Get(0));? ? consumer.Start(Seconds(2)); ? ?? ? consumer.Stop(Seconds(6));? ? ndn::AppHelper producerHelper("ns3::ndn::Producer");? producerHelper.SetPrefix("/prefix");? producerHelper.SetAttribute("PayloadSize", StringValue("1200"));? producerHelper.Install(nodes.Get(2)); ? Simulator::Stop(Seconds(10.0)); ? Simulator::Run();? Simulator::Destroy(); ? return 0;} } // namespace ns3 intmain(int argc, char* argv[]){? return ns3::main(argc, argv);}-------------------------------------------------------------------------------------I would like to express my gratitude for all your help in this matter. -------------- next part -------------- An HTML attachment was scrubbed... URL: From shijunxiao at email.arizona.edu Sat Apr 9 17:45:01 2016 From: shijunxiao at email.arizona.edu (Junxiao Shi) Date: Sat, 9 Apr 2016 17:45:01 -0700 Subject: [ndnSIM] Multi-hop wireless Ad-hoc In-Reply-To: <1141622335.36989.1460243889493.JavaMail.yahoo@mail.yahoo.com> References: <1141622335.36989.1460243889493.JavaMail.yahoo.ref@mail.yahoo.com> <1141622335.36989.1460243889493.JavaMail.yahoo@mail.yahoo.com> Message-ID: Hi Mohamed I'm unfamiliar with ndnSIM and won't look at your script. But you can check these: - B must have a route (or FIB nexthop) toward C. - The above is true even if you are using "broadcast" strategy, because "broadcast" is an alias of the multicast strategy, which requires a route. And you should switch to "multicast"strategy because the "broadcast" alias is deprecated. - B must have two separate faces (from NFD point of view) toward A and toward C. The multicast strategy will not forward the Interest toward a face if it's the sole downstream. This limitation exists in almost all current strategies, but there's no restriction in forwarding pipelines so you can develop a strategy that allows forwarding out of the same face. Yours, Junxiao On Sat, Apr 9, 2016 at 4:18 PM, Mohamed Benahmed wrote: > I have an problem in multi-hop wireless Adhoc > i need to install NDN in 3 node A--->B----->c (A:consumer ; B: forwarder > ; C: producer ) but the problem is B does not forward the interest > towards C > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Sat Apr 9 19:08:17 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Sat, 9 Apr 2016 19:08:17 -0700 Subject: [ndnSIM] Multi-hop wireless Ad-hoc In-Reply-To: <1141622335.36989.1460243889493.JavaMail.yahoo@mail.yahoo.com> References: <1141622335.36989.1460243889493.JavaMail.yahoo.ref@mail.yahoo.com> <1141622335.36989.1460243889493.JavaMail.yahoo@mail.yahoo.com> Message-ID: <1771E119-8711-4F43-86F7-075F32C30A2B@cs.ucla.edu> Hi Mohamed, are you sure that B receives the Interest, but does not forward it to C? Can you please enable the nfd.Forwarder logging component and see what is going on with the NFD instance of each node? Thanks, Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 9, 2016, at 4:18 PM, Mohamed Benahmed wrote: > > I have an problem in multi-hop wireless Adhoc > i need to install NDN in 3 node A--->B----->c (A:consumer ; B: forwarder ; C: producer ) but the problem is B does not forward the interest towards C > my code : > ----------------------------------------------------------- > #include "ns3/core-module.h" > #include "ns3/network-module.h" > #include "ns3/applications-module.h" > #include "ns3/wifi-module.h" > #include "ns3/mobility-module.h" > #include "ns3/internet-module.h" > > #include "ns3/ndnSIM-module.h" > > using namespace std; > namespace ns3 { > > NS_LOG_COMPONENT_DEFINE("ndn.WifiExample"); > > int main(int argc, char* argv[]) > { > > CommandLine cmd; > cmd.Parse(argc, argv); > > > WifiHelper wifi = WifiHelper::Default(); > wifi.SetStandard(WIFI_PHY_STANDARD_80211a); > wifi.SetRemoteStationManager("ns3::ConstantRateWifiManager", "DataMode", > StringValue("OfdmRate24Mbps")); > > YansWifiChannelHelper wifiChannel; // = YansWifiChannelHelper::Default (); > wifiChannel.SetPropagationDelay("ns3::ConstantSpeedPropagationDelayModel"); > wifiChannel.AddPropagationLoss("ns3::ThreeLogDistancePropagationLossModel"); > wifiChannel.AddPropagationLoss("ns3::NakagamiPropagationLossModel"); > > // YansWifiPhy wifiPhy = YansWifiPhy::Default(); > YansWifiPhyHelper wifiPhyHelper = YansWifiPhyHelper::Default(); > wifiPhyHelper.SetChannel(wifiChannel.Create()); > // wifiPhyHelper.Set("TxPowerStart", DoubleValue(5)); > // wifiPhyHelper.Set("TxPowerEnd", DoubleValue(5)); > > NqosWifiMacHelper wifiMacHelper = NqosWifiMacHelper::Default(); > wifiMacHelper.SetType("ns3::AdhocWifiMac"); > NodeContainer nodes; > nodes.Create(3); > MobilityHelper mobility; > // Put everybody into a line > Ptr initialAlloc = > CreateObject (); > for (uint32_t i = 0; i < nodes.GetN (); ++i) { > initialAlloc->Add (Vector (i*400, i,i)); > mobility.SetPositionAllocator(initialAlloc); > > //////////////// > // 1. Install Wifi > NetDeviceContainer wifiNetDevices = wifi.Install(wifiPhyHelper, wifiMacHelper, nodes); > > // 2. Install Mobility model > mobility.Install(nodes); > > // 3. Install NDN stack > NS_LOG_INFO("Installing NDN stack"); > ndn::StackHelper ndnHelper; > // ndnHelper.AddNetDeviceFaceCreateCallback (WifiNetDevice::GetTypeId (), MakeCallback > // (MyNetDeviceFaceCallback)); > ndnHelper.SetOldContentStore("ns3::ndn::cs::Lru", "MaxSize", "1000"); > ndnHelper.SetDefaultRoutes(true); > ndnHelper.Install(nodes); > > // Set BestRoute strategy > ndn::StrategyChoiceHelper::Install(nodes, "/", "/localhost/nfd/strategy/brodcast"); > > // 4. Set up applications > NS_LOG_INFO("Installing Applications"); > > ndn::AppHelper consumerHelper("ns3::ndn::ConsumerCbr"); > consumerHelper.SetPrefix("/prefix"); > consumerHelper.SetAttribute("Frequency", StringValue("1")); > > ApplicationContainer consumer = consumerHelper.Install(nodes.Get(0)); > consumer.Start(Seconds(2)); > consumer.Stop(Seconds(6)); > > ndn::AppHelper producerHelper("ns3::ndn::Producer"); > producerHelper.SetPrefix("/prefix"); > producerHelper.SetAttribute("PayloadSize", StringValue("1200")); > producerHelper.Install(nodes.Get(2)); > > Simulator::Stop(Seconds(10.0)); > > Simulator::Run(); > Simulator::Destroy(); > > return 0; > } > > } // namespace ns3 > > int > main(int argc, char* argv[]) > { > return ns3::main(argc, argv); > } > ------------------------------------------------------------------------------------- > I would like to express my gratitude for all your help in this matter. -------------- next part -------------- An HTML attachment was scrubbed... URL: From anilj.mailing at gmail.com Sun Apr 10 00:19:01 2016 From: anilj.mailing at gmail.com (Anil Jangam) Date: Sun, 10 Apr 2016 00:19:01 -0700 Subject: [ndnSIM] Running ndnSIM under gprof Message-ID: Hi. Is this the only way to run the ndnSIM applications? ./waf --run=ndn-simple Actually I have compiled the ndnSIM for gprof and want to clarify the final step of gprof processing i.e. unix% gprof *program-name* [ *data-file* ] [ > *output-file* ] I did get some output after executing the command - gprof ./build/src/ndnSIM/examples/ns3-dev-ndn-simple-debug gmon.out Is this correct way to invoke 'ndn-simple' example *without* calling it under ./waf? /anil -------------- next part -------------- An HTML attachment was scrubbed... URL: From anselme333 at gmail.com Sun Apr 10 01:08:03 2016 From: anselme333 at gmail.com (NDIKUMANA ANSELME) Date: Sun, 10 Apr 2016 17:08:03 +0900 Subject: [ndnSIM] set individual cache sizes In-Reply-To: References: Message-ID: Dear Qhsong, Thank you for giving me the hint. You can use content store tracer for getting details about Cache hits and cache misses as described in ndn-tree-cs-tracers.cpp example: http://ndnsim.net/2.0/metric.html With Regards, Anselme N. On Sat, Apr 9, 2016 at 10:25 PM, qhsong wrote: > Hi, > > How to checks CS entries?I find I can't checks CS entries via --vis > tools?And how to check it? > > And to set difference content store size,maybe you can try this: > http://ndnsim.net/2.1/cs.html > > qhsong > > 2016-04-09 10:52 GMT+08:00 NDIKUMANA ANSELME : > >> Hi, >> >> I am trying to set individual cache sizes in some nodes based >> on ndn-simple-with-different-sizes-content-store.cc example, and when i >> checked CS entries in these nodes, there are no entries. Any hint on how >> to fix this, will be appreciated. >> >> ndn::StackHelper ndnHelper; >> ndnHelper.SetOldContentStore("ns3::ndn::cs::Freshness::Lru"); >> ndnHelper.InstallAll() >> //set individual cache sizes on nodes >> Config::Set ("/NodeList/9/$ns3::ndn::ContentStore/MaxSize", >> UintegerValue(100000)); >> Config::Set ("/NodeList/11/$ns3::ndn::ContentStore/MaxSize", >> UintegerValue(100000)); >> Config::Set ("/NodeList/12/$ns3::ndn::ContentStore/MaxSize", >> UintegerValue(100000)); >> Config::Set ("/NodeList/1/$ns3::ndn::ContentStore/MaxSize", >> UintegerValue(10000)); >> Config::Set ("/NodeList/3/$ns3::ndn::ContentStore/MaxSize", >> UintegerValue(10000)); >> Config::Set ("/NodeList/4/$ns3::ndn::ContentStore/MaxSize", >> UintegerValue(10000)); >> //Config::Set ("/NodeList/CRouter4/$ns3::ndn::ContentStore/MaxSize", >> UintegerValue (10000)); >> //Config::Set >> ("/NodeList/node->GetId(CRouter4)/$ns3::ndn::ContentStore/MaxSize", >> UintegerValue (10000)); >> >> >> With Regards, >> >> Anselme N. >> >> _______________________________________________ >> ndnSIM mailing list >> ndnSIM at lists.cs.ucla.edu >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From art_med_ahmed at yahoo.fr Sun Apr 10 07:46:18 2016 From: art_med_ahmed at yahoo.fr (Mohamed Benahmed) Date: Sun, 10 Apr 2016 14:46:18 +0000 (UTC) Subject: [ndnSIM] Multi-hop wireless Ad-hoc In-Reply-To: <495119182.358084.1460299241943.JavaMail.yahoo@mail.yahoo.com> References: <1771E119-8711-4F43-86F7-075F32C30A2B@cs.ucla.edu> <495119182.358084.1460299241943.JavaMail.yahoo@mail.yahoo.com> Message-ID: <1318958392.331877.1460299578939.JavaMail.yahoo@mail.yahoo.com> Hi?Mastorakis,Yes, I'm sure B receives the interest, but does not forward it to C. you can see this in the nfd.Forwarder logging :------------------------------------------------------------------------2s 0 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=1 data=/localhost/nfd/faces/events/%FE%042s 0 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/localhost/nfd/faces/events/%FE%042s 0 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=257 data=/localhost/nfd/faces/events/%FE%042s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%002s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%002s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%002s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=257 interest=/localhost/nfd/faces/events/%FE%052s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/localhost/nfd/faces/events/%FE%052s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=1 interest=/localhost/nfd/faces/events/%FE%052.00005s 1 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/prefix/%FE%002.00005s 1 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%002.00005s 1 nfd.Forwarder:onInterestReject(): [DEBUG] onInterestReject interest=/prefix/%FE%002.1s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/localhost/nfd/faces/events/%FE%04 satisfied2.1s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%012.1s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%012.1s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%012.10005s 1 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%00 unsatisfied2.2s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%022.2s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%022.2s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%022.3s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%032.3s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%032.3s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%032.4s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%042.4s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%042.4s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%042.5s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%052.5s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%052.5s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%052.50005s 1 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/prefix/%FE%052.50005s 1 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%052.50005s 1 nfd.Forwarder:onInterestReject(): [DEBUG] onInterestReject interest=/prefix/%FE%052.6s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%062.6s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%062.6s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%062.60005s 1 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%05 unsatisfied2.7s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%072.7s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%072.7s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%072.70005s 1 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/prefix/%FE%072.70005s 1 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%072.70005s 1 nfd.Forwarder:onInterestReject(): [DEBUG] onInterestReject interest=/prefix/%FE%072.8s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%082.8s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%082.8s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%082.80005s 1 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%07 unsatisfied2.9s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/prefix/%FE%092.9s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/prefix/%FE%092.9s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%093s 0 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=1 data=/localhost/nfd/faces/events/%FE%053s 0 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/localhost/nfd/faces/events/%FE%053s 0 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=257 data=/localhost/nfd/faces/events/%FE%053s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=257 interest=/localhost/nfd/faces/events/%FE%063s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/localhost/nfd/faces/events/%FE%063s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=1 interest=/localhost/nfd/faces/events/%FE%063.1s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/localhost/nfd/faces/events/%FE%05 satisfied4s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%004s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%00 unsatisfied4.1s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%014.1s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%01 unsatisfied4.2s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%024.2s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%02 unsatisfied4.3s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%034.3s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%03 unsatisfied4.4s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%044.4s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%04 unsatisfied4.5s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%054.5s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%05 unsatisfied4.6s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%064.6s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%06 unsatisfied4.7s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%074.7s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%07 unsatisfied4.8s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%084.8s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%08 unsatisfied4.9s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/prefix/%FE%094.9s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/prefix/%FE%09 unsatisfied--------------------Thanks, -------------- next part -------------- An HTML attachment was scrubbed... URL: From z.rezaiefar at yahoo.com Sun Apr 10 19:08:42 2016 From: z.rezaiefar at yahoo.com (Zeinab Rezaeifar) Date: Mon, 11 Apr 2016 11:08:42 +0900 Subject: [ndnSIM] receive zero for cacheHit value Message-ID: Hello everyone, I have run below scenario, but i received zero for cache hit ( in cs-simple2-trace.txt file) . is there any one that knows what is the reason. any help will be appreciate thanks best regards zeinab scenario ????????? #include "ns3/core-module.h" #include "ns3/network-module.h" #include "ns3/point-to-point-module.h" #include "ns3/ndnSIM-module.h" using namespace ns3; //for trace class PcapWriter { public: PcapWriter(const std::string& file) { PcapHelper helper; m_pcap = helper.CreateFile(file, std::ios::out, PcapHelper::DLT_PPP); } void TracePacket(Ptr packet) { static PppHeader pppHeader; pppHeader.SetProtocol(0x0077); m_pcap->Write(Simulator::Now(), pppHeader, packet); } private: Ptr m_pcap; }; int main (int argc, char *argv[]) { // setting default parameters for PointToPoint links and channels Config::SetDefault ("ns3::PointToPointNetDevice::DataRate", StringValue ("1Mbps")); Config::SetDefault ("ns3::PointToPointChannel::Delay", StringValue ("10ms")); Config::SetDefault ("ns3::DropTailQueue::MaxPackets", StringValue ("20")); // Read optional command-line parameters (e.g., enable visualizer with ./waf --run=<> --visualize CommandLine cmd; cmd.Parse (argc, argv); // Creating nodes // NodeContainer nodes; //nodes.Create (3); NodeContainer routerNodes; NodeContainer producerNodes; NodeContainer consumerNodes; routerNodes.Create(9); producerNodes.Create(3); consumerNodes.Create(6); // Connecting nodes using two links // PointToPointHelper p2p; //p2p.Install (nodes.Get (0), nodes.Get (1)); //p2p.Install (nodes.Get (1), nodes.Get (2)); PointToPointHelper p2p; //Router 0 p2p.Install(routerNodes.Get(0), routerNodes.Get(1)); p2p.Install(routerNodes.Get(0), routerNodes.Get(2)); p2p.Install(routerNodes.Get(0), routerNodes.Get(3)); p2p.Install(routerNodes.Get(0), routerNodes.Get(6)); //Router 1 p2p.Install(routerNodes.Get(1), routerNodes.Get(2)); p2p.Install(routerNodes.Get(1), routerNodes.Get(4)); p2p.Install(routerNodes.Get(1), routerNodes.Get(7)); //Router 2 p2p.Install(routerNodes.Get(2), routerNodes.Get(5)); p2p.Install(routerNodes.Get(2), routerNodes.Get(8)); //Router 3 //Router 4 //Router 5 //Router 6 //Router 7 //Router 8 //Producers p2p.Install(routerNodes.Get(3), producerNodes.Get(0)); p2p.Install(routerNodes.Get(4), producerNodes.Get(1)); p2p.Install(routerNodes.Get(5), producerNodes.Get(2)); //Consumers p2p.Install(consumerNodes.Get(0), routerNodes.Get(6)); p2p.Install(consumerNodes.Get(1), routerNodes.Get(7)); p2p.Install(consumerNodes.Get(2), routerNodes.Get(8)); p2p.Install(consumerNodes.Get(3), routerNodes.Get(3)); p2p.Install(consumerNodes.Get(4), routerNodes.Get(4)); p2p.Install(consumerNodes.Get(5), routerNodes.Get(5)); // Install NDN stack on all nodes ndn::StackHelper ccnxHelper; ccnxHelper.SetContentStore("ns3::ndn::cs::Lru", "MaxSize", "10000"); //set the life time for satisfied interest message ccnxHelper.SetPit ("ns3::ndn::pit::Lru","PitEntryPruningTimout","20"); /*ccnxHelper.Install(routerNodes); ccnxHelper.SetContentStore("ns3::ndn::cs::Nocache"); ccnxHelper.Install(producerNodes); ccnxHelper.Install(consumerNodes);*/ //ccnxHelper.InstallAll (); // ccnxHelper.SetDefaultRoutes (true); //ccnxHelper.InstallAll (); // Install NDN stack on all nodes // ndn::StackHelper ndnHelper; ccnxHelper.SetForwardingStrategy ("ns3::ndn::fw::BestRoute"); ccnxHelper.InstallAll (); // Installing global routing interface on all nodes ndn::GlobalRoutingHelper ndnGlobalRoutingHelper; ndnGlobalRoutingHelper.InstallAll (); // Installing applications // Consumer for ( int i=0; i<6; i++) { ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerCbr"); // Consumer will request /prefix/0, /prefix/1, ... consumerHelper.SetPrefix ("/prefix"); consumerHelper.SetAttribute ("Frequency", StringValue ("10")); // 10 interests a second //for interest life time consumerHelper.SetAttribute ("LifeTime", StringValue ("20s")); //consumerHelper.Install (nodes.Get (0)); // first node ApplicationContainer consumer = consumerHelper.Install(consumerNodes.Get(i)); consumer.Start(Seconds(0.01 * i)); // consumer.Start(Seconds(2)); // start consumers at 0s, 1s, 2s, 3s // consumer.Stop(Seconds(19.0)); } // Producer ndn::AppHelper producerHelper ("ns3::ndn::Producer"); ApplicationContainer producers; // Producer will reply to all requests starting with /prefix /* producerHelper.SetPrefix ("/prefix"); producerHelper.SetAttribute ("PayloadSize", StringValue("1024")); producerHelper.Install (nodes.Get (2)); // last node*/ for (unsigned i=0; i From junaidakhan88 at gmail.com Mon Apr 11 01:51:13 2016 From: junaidakhan88 at gmail.com (Junaid Ahmed Khan) Date: Mon, 11 Apr 2016 10:51:13 +0200 Subject: [ndnSIM] ndnSIM older version compatibility issue Message-ID: Hi Alex, I performed some simulations with an eirlier version of ndnsim in 2014. I recently updated ndnSIM (fresh installation) to perform additional simulations. I found that the code no longer compiles. I noticed issues in the ndnSIM-module and Internet-module headers (highlighted in Red below . I could not understand the issue. Can you please let me know the changes i need to make to make is compatible with code from earlier ndnSIM version. The error log is shown below: jkhan01 at feigenbaum:~/ndnSIM/ns-3$ ./waf --run "scratch/ns2-mobility-trace \ --traceFile=scratch/100.tcl --nodeNum=100 --duration=100.0 --logFile=ns2-mobility-trace.log" Waf: Entering directory `/home/jkhan01/ndnSIM/ns-3/build' [1236/2700] Compiling scratch/koln9_1hr.cc In file included from /usr/include/termios.h:39:0, from /usr/include/boost/asio/serial_port_base.hpp:25, from /usr/include/boost/asio/basic_serial_port.hpp:29, from /usr/include/boost/asio.hpp:26, from ns3/ndnSIM/NFD/common.hpp:69, from ./ns3/ndnSIM/NFD/daemon/face/face.hpp:29, from ./ns3/ndnSIM/model/ndn-face.hpp:23, from ./ns3/ndnSIM/helper/ndn-face-container.hpp:30, from ./ns3/ndnSIM/helper/ndn-stack-helper.hpp:30, from ./ns3/ndn-all.hpp:23, from ./ns3/ndnSIM-module.h:10, from ../scratch/koln9_1hr.cc:65: ./ns3/icmpv4.h:39:5: error: expected identifier before numeric constant ECHO = 8, ^ ./ns3/icmpv4.h:39:5: error: expected ?}? before numeric constant ./ns3/icmpv4.h:39:5: error: expected unqualified-id before numeric constant In file included from ./ns3/icmpv4-l4-protocol.h:25:0, from ./ns3/internet-module.h:18, from ../scratch/koln9_1hr.cc:72: ./ns3/icmpv4.h:64:26: error: non-member function ?uint8_t ns3::GetType()? cannot have cv-qualifier uint8_t GetType (void) const; ^ ./ns3/icmpv4.h:69:26: error: non-member function ?uint8_t ns3::GetCode()? cannot have cv-qualifier uint8_t GetCode (void) const; ^ ./ns3/icmpv4.h:76:17: error: expected unqualified-id before ?)? token Icmpv4Header (); ^ ./ns3/icmpv4.h:77:26: error: declaration of ?~ns3::Icmpv4Header? as non-member virtual ~Icmpv4Header (); ^ ./ns3/icmpv4.h:79:43: error: ?virtual? outside class declaration virtual TypeId GetInstanceTypeId (void) const; ^ ./ns3/icmpv4.h:79:43: error: non-member function ?ns3::TypeId ns3::GetInstanceTypeId()? cannot have cv-qualifie r ./ns3/icmpv4.h:80:45: error: ?virtual? outside class declaration virtual uint32_t GetSerializedSize (void) const; ^ ./ns3/icmpv4.h:80:45: error: non-member function ?uint32_t ns3::GetSerializedSize()? cannot have cv-qualifier ./ns3/icmpv4.h:81:51: error: ?virtual? outside class declaration virtual void Serialize (Buffer::Iterator start) const; ^ ./ns3/icmpv4.h:81:51: error: non-member function ?void ns3::Serialize(ns3::Buffer::Iterator)? cannot have cv-qu alifier ./ns3/icmpv4.h:82:55: error: ?virtual? outside class declaration virtual uint32_t Deserialize (Buffer::Iterator start); ^ ./ns3/icmpv4.h:83:41: error: ?virtual? outside class declaration virtual void Print (std::ostream &os) const; ^ ./ns3/icmpv4.h:83:41: error: non-member function ?void ns3::Print(std::ostream&)? cannot have cv-qualifier ./ns3/icmpv4.h:85:1: error: expected unqualified-id before ?private? private: ^ ./ns3/icmpv4.h:92:1: error: expected class-name before ?{? token { ^ ./ns3/icmpv4.h:108:17: error: ?Ptr? has not been declared void SetData (Ptr data); ^ ./ns3/icmpv4.h:108:20: error: expected ?,? or ?...? before ? data); ^ ./ns3/icmpv4.h:136:10: error: ?TypeId? does not name a type static TypeId GetTypeId (void); ^ ./ns3/icmpv4.h:139:11: error: ?TypeId? does not name a type virtual TypeId GetInstanceTypeId (void) const; ^ ./ns3/icmpv4.h:141:27: error: ?Buffer? has not been declared virtual void Serialize (Buffer::Iterator start) const; ^ ./ns3/icmpv4.h:141:44: error: expected ?,? or ?...? before ?start? virtual void Serialize (Buffer::Iterator start) const; ^ ./ns3/icmpv4.h:142:33: error: ?Buffer? has not been declared virtual uint32_t Deserialize (Buffer::Iterator start); ^ ./ns3/icmpv4.h:142:50: error: expected ?,? or ?...? before ?start? virtual uint32_t Deserialize (Buffer::Iterator start); ^ ./ns3/icmpv4.h:152:1: error: expected class-name before ?{? token { ^ ./ns3/icmpv4.h:167:10: error: ?TypeId? does not name a type static TypeId GetTypeId (void); ^ ./ns3/icmpv4.h:186:17: error: ?Ptr? has not been declared void SetData (Ptr data); ^ ./ns3/icmpv4.h:186:20: error: expected ?,? or ?...? before ? data); ^ ./ns3/icmpv4.h:191:19: error: ?Ipv4Header? has not been declared void SetHeader (Ipv4Header header); ^ ./ns3/icmpv4.h:202:3: error: ?Ipv4Header? does not name a type Ipv4Header GetHeader (void) const; ^ ./ns3/icmpv4.h:205:11: error: ?TypeId? does not name a type virtual TypeId GetInstanceTypeId (void) const; ^ ./ns3/icmpv4.h:207:27: error: ?Buffer? has not been declared virtual void Serialize (Buffer::Iterator start) const; ^ ./ns3/icmpv4.h:207:44: error: expected ?,? or ?...? before ?start? virtual void Serialize (Buffer::Iterator start) const; ^ ./ns3/icmpv4.h:208:33: error: ?Buffer? has not been declared virtual uint32_t Deserialize (Buffer::Iterator start); ^ ./ns3/icmpv4.h:208:50: error: expected ?,? or ?...? before ?start? virtual uint32_t Deserialize (Buffer::Iterator start); ^ ./ns3/icmpv4.h:212:3: error: ?Ipv4Header? does not name a type Ipv4Header m_header; //!< carried IPv4 header ^ ./ns3/icmpv4.h:218:1: error: expected class-name before ?{? token { ^ ./ns3/icmpv4.h:229:17: error: ?Ptr? has not been declared void SetData (Ptr data); ^ ./ns3/icmpv4.h:229:20: error: expected ?,? or ?...? before ? data); ^ ./ns3/icmpv4.h:234:19: error: ?Ipv4Header? has not been declared void SetHeader (Ipv4Header header); ^ ./ns3/icmpv4.h:245:3: error: ?Ipv4Header? does not name a type Ipv4Header GetHeader (void) const; ^ ./ns3/icmpv4.h:251:10: error: ?TypeId? does not name a type static TypeId GetTypeId (void); ^ ./ns3/icmpv4.h:254:11: error: ?TypeId? does not name a type virtual TypeId GetInstanceTypeId (void) const; ^ ./ns3/icmpv4.h:256:27: error: ?Buffer? has not been declared virtual void Serialize (Buffer::Iterator start) const; ^ ./ns3/icmpv4.h:256:44: error: expected ?,? or ?...? before ?start? virtual void Serialize (Buffer::Iterator start) const; ^ ./ns3/icmpv4.h:257:33: error: ?Buffer? has not been declared virtual uint32_t Deserialize (Buffer::Iterator start); ^ ./ns3/icmpv4.h:257:50: error: expected ?,? or ?...? before ?start? virtual uint32_t Deserialize (Buffer::Iterator start); ^ ./ns3/icmpv4.h:261:3: error: ?Ipv4Header? does not name a type Ipv4Header m_header; //!< carried IPv4 header ^ ./ns3/icmpv4.h:265:1: error: expected declaration before ?}? token } // namespace ns3 ^ ./ns3/icmpv4.h:75:17: warning: ?ns3::TypeId ns3::GetTypeId()? declared ?static? but never defined [-Wunused-fun ction] static TypeId GetTypeId (void); ^ Waf: Leaving directory `/home/jkhan01/ndnSIM/ns-3/build' Build failed Thanks in advance. -- Kind Regards, Junaid -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Mon Apr 11 02:34:23 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Mon, 11 Apr 2016 14:04:23 +0430 Subject: [ndnSIM] error: Running porgram outside scratch folder In-Reply-To: References: Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C033844@m-pdc.sbu.ac.ir> Hi Pratyush, You take look at this. This has been tested for many times: https://github.com/cawka/ndnSIM-scenario-template/blob/master/README.md Thanks, Sabet ---------- Forwarded message ---------- From: "Pratyush Agnihotri" Date: 3 Apr 2016 14:34 Subject: [ndnSIM] error: Running porgram outside scratch folder To: Cc: Hi, I am using ndnSim first time. I did configuration as mentioned in http://ndnsim.net/2.1/index.html. Also, I was able to successfully run=ndn-simple program with visualization as well as I can run any scenario copied to scratch folder. However, I am not able to run any program other than scratch. For example, running from download folder or ndnSim. To solve this problem, I tried to set environment variable in /.bashrc such as export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:/usr/local/lib/pkgconfig export LD_LIBRARY_PATH=${$LD_LIBRARY_PATH}:/usr/local/lib export PATH=${PATH}:/home/pratyush/ndnSIM/ns-3 export PATH=${PATH}:/home/pratyush/ndnSIM/ns-3/build But still not able to solve problem. Can you please suggest how can I solve this issue? Thanks -- Kind Regards, Pratyush Agnihotri _______________________________________________ ndnSIM mailing list ndnSIM at lists.cs.ucla.edu http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From narges.mehran at gmail.com Mon Apr 11 09:47:25 2016 From: narges.mehran at gmail.com (Narges Mehran) Date: Mon, 11 Apr 2016 21:17:25 +0430 Subject: [ndnSIM] ndnSIM Digest, Vol 41, Issue 11 In-Reply-To: References: Message-ID: ?? Hello ?Zeinab? ? , ?I had the same problem. I think that for seeing the details, U should lower the trace time; e.g., ?set Seconds( ?0.0? 1) ? in the following line: ? ? ndn::CsTracer::InstallAll("cs-simple2-trace.txt", Seconds(1)); Regards On Mon, Apr 11, 2016 at 6:38 AM, wrote: > Send ndnSIM mailing list submissions to > ndnsim at lists.cs.ucla.edu > > To subscribe or unsubscribe via the World Wide Web, visit > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > or, via email, send a message with subject or body 'help' to > ndnsim-request at lists.cs.ucla.edu > > You can reach the person managing the list at > ndnsim-owner at lists.cs.ucla.edu > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of ndnSIM digest..." > > > Today's Topics: > > 1. receive zero for cacheHit value (Zeinab Rezaeifar) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Mon, 11 Apr 2016 11:08:42 +0900 > From: Zeinab Rezaeifar > To: ndnsim at lists.cs.ucla.edu > Subject: [ndnSIM] receive zero for cacheHit value > Message-ID: > Content-Type: text/plain; charset="utf-8" > > Hello everyone, > I have run below scenario, but i received zero for cache hit ( in > cs-simple2-trace.txt file) . is there any one that knows what is the reason. > any help will be appreciate > thanks > best regards > zeinab > > scenario > ????????? > > #include "ns3/core-module.h" > #include "ns3/network-module.h" > #include "ns3/point-to-point-module.h" > #include "ns3/ndnSIM-module.h" > > using namespace ns3; > //for trace > class PcapWriter { > public: > PcapWriter(const std::string& file) > { > PcapHelper helper; > m_pcap = helper.CreateFile(file, std::ios::out, PcapHelper::DLT_PPP); > } > > void > TracePacket(Ptr packet) > { > static PppHeader pppHeader; > pppHeader.SetProtocol(0x0077); > > m_pcap->Write(Simulator::Now(), pppHeader, packet); > } > > private: > Ptr m_pcap; > }; > > int > main (int argc, char *argv[]) > { > // setting default parameters for PointToPoint links and channels > Config::SetDefault ("ns3::PointToPointNetDevice::DataRate", StringValue > ("1Mbps")); > Config::SetDefault ("ns3::PointToPointChannel::Delay", StringValue > ("10ms")); > Config::SetDefault ("ns3::DropTailQueue::MaxPackets", StringValue > ("20")); > > // Read optional command-line parameters (e.g., enable visualizer with > ./waf --run=<> --visualize > CommandLine cmd; > cmd.Parse (argc, argv); > > // Creating nodes > // NodeContainer nodes; > //nodes.Create (3); > NodeContainer routerNodes; > NodeContainer producerNodes; > NodeContainer consumerNodes; > > routerNodes.Create(9); > producerNodes.Create(3); > consumerNodes.Create(6); > > // Connecting nodes using two links > // PointToPointHelper p2p; > //p2p.Install (nodes.Get (0), nodes.Get (1)); > //p2p.Install (nodes.Get (1), nodes.Get (2)); > PointToPointHelper p2p; > > > //Router 0 > p2p.Install(routerNodes.Get(0), > routerNodes.Get(1)); > p2p.Install(routerNodes.Get(0), > routerNodes.Get(2)); > p2p.Install(routerNodes.Get(0), > routerNodes.Get(3)); > p2p.Install(routerNodes.Get(0), > routerNodes.Get(6)); > > //Router 1 > p2p.Install(routerNodes.Get(1), > routerNodes.Get(2)); > p2p.Install(routerNodes.Get(1), > routerNodes.Get(4)); > p2p.Install(routerNodes.Get(1), > routerNodes.Get(7)); > > //Router 2 > p2p.Install(routerNodes.Get(2), > routerNodes.Get(5)); > p2p.Install(routerNodes.Get(2), > routerNodes.Get(8)); > > //Router 3 > //Router 4 > //Router 5 > //Router 6 > //Router 7 > //Router 8 > > //Producers > p2p.Install(routerNodes.Get(3), > producerNodes.Get(0)); > p2p.Install(routerNodes.Get(4), > producerNodes.Get(1)); > p2p.Install(routerNodes.Get(5), > producerNodes.Get(2)); > > //Consumers > p2p.Install(consumerNodes.Get(0), > routerNodes.Get(6)); > p2p.Install(consumerNodes.Get(1), > routerNodes.Get(7)); > p2p.Install(consumerNodes.Get(2), > routerNodes.Get(8)); > p2p.Install(consumerNodes.Get(3), > routerNodes.Get(3)); > p2p.Install(consumerNodes.Get(4), > routerNodes.Get(4)); > p2p.Install(consumerNodes.Get(5), > routerNodes.Get(5)); > > // Install NDN stack on all nodes > ndn::StackHelper ccnxHelper; > ccnxHelper.SetContentStore("ns3::ndn::cs::Lru", "MaxSize", "10000"); > //set the life time for satisfied interest message > ccnxHelper.SetPit ("ns3::ndn::pit::Lru","PitEntryPruningTimout","20"); > /*ccnxHelper.Install(routerNodes); > ccnxHelper.SetContentStore("ns3::ndn::cs::Nocache"); > ccnxHelper.Install(producerNodes); > ccnxHelper.Install(consumerNodes);*/ > //ccnxHelper.InstallAll (); > > // ccnxHelper.SetDefaultRoutes (true); > //ccnxHelper.InstallAll (); > // Install NDN stack on all nodes > // ndn::StackHelper ndnHelper; > ccnxHelper.SetForwardingStrategy ("ns3::ndn::fw::BestRoute"); > ccnxHelper.InstallAll (); > // Installing global routing interface on all nodes > ndn::GlobalRoutingHelper ndnGlobalRoutingHelper; > ndnGlobalRoutingHelper.InstallAll (); > > // Installing applications > > // Consumer > for ( int i=0; i<6; i++) > { ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerCbr"); > // Consumer will request /prefix/0, /prefix/1, ... > consumerHelper.SetPrefix ("/prefix"); > consumerHelper.SetAttribute ("Frequency", StringValue ("10")); // 10 > interests a second > //for interest life time > consumerHelper.SetAttribute ("LifeTime", StringValue ("20s")); > //consumerHelper.Install (nodes.Get (0)); // first node > ApplicationContainer consumer = > consumerHelper.Install(consumerNodes.Get(i)); > consumer.Start(Seconds(0.01 * i)); > // consumer.Start(Seconds(2)); // start consumers at 0s, 1s, 2s, 3s > // consumer.Stop(Seconds(19.0)); > } > > > // Producer > ndn::AppHelper producerHelper ("ns3::ndn::Producer"); > ApplicationContainer producers; > // Producer will reply to all requests starting with /prefix > /* producerHelper.SetPrefix ("/prefix"); > producerHelper.SetAttribute ("PayloadSize", StringValue("1024")); > producerHelper.Install (nodes.Get (2)); // last node*/ > for (unsigned i=0; i // Producer will reply to all requests starting with /prefix > producerHelper.SetPrefix("/prefix"); > producerHelper.SetAttribute("PayloadSize", StringValue("1024")); > producers = producerHelper.Install(producerNodes.Get(i));} > // Add /prefix origins to ndn::GlobalRouter > ndnGlobalRoutingHelper.AddOrigins("/prefix", producerNodes.Get(0)); > ndnGlobalRoutingHelper.AddOrigins("/prefix", producerNodes.Get(1)); > ndnGlobalRoutingHelper.AddOrigins("/prefix", producerNodes.Get(2)); > > // Calculate and install FIBs > ndn::GlobalRoutingHelper::CalculateRoutes(); > //for trace > PcapWriter trace("ndn-simple-trace.pcap"); > > Config::ConnectWithoutContext("/NodeList/*/DeviceList/*/$ns3::PointToPointNetDevice/MacTx", > MakeCallback(&PcapWriter::TracePacket, > &trace)); > > Simulator::Stop (Seconds (20.0)); > ndn::CsTracer::InstallAll("cs-simple2-trace.txt", Seconds(1)); > > Simulator::Run (); > Simulator::Destroy (); > > return 0; > } > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: < > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20160411/aef517f7/attachment.html > > > > ------------------------------ > > Subject: Digest Footer > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > ------------------------------ > > End of ndnSIM Digest, Vol 41, Issue 11 > ************************************** > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Mon Apr 11 11:05:52 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Mon, 11 Apr 2016 11:05:52 -0700 Subject: [ndnSIM] How to add a path count in data packet? In-Reply-To: References: Message-ID: <9FFC8D02-04BB-4567-96B5-7F8996A0296B@cs.ucla.edu> Hi, I do not know what exactly you have changed in the ndnSIM codebase, but I will try to make a guess on what might be going on. When you retrieve a data packet from a cache, a hop count tag is added to the data packet (with a value of 0). Probably you tried to print out the value of the hop count before this is set to 0 after you retrieve a data packet from a cache. In this way, you are printing out the value of a variable that has not been initialized yet. Hope that this helps. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 9, 2016, at 6:43 AM, qhsong wrote: > > > Hello, > Recently I want to accomplish a Path coordination Content Store policy on ndnSIM, and I want to a node receive a data and see the data can be or not stored in it. > So I add a int attribute named hop in Data class, and then decrease it in Forward::onOutgoingData, When I find this hop is 0, then I add it. > > But I found some problem, First, It seems onOutgoingData function will call not one times in same face, and also called by may threads.So hop count number seem so wired,just like following ,Count is the hop attribute: > > Face ID: 256 data=/prefix/%FE%1E Count:5 > Face ID: 257 data=/prefix/%FE%1E Count:4 > Face ID: 256 data=/prefix/%FE%1E Count:4 > Face ID: 256 data=/prefix/%FE%1E Count:-1 > Face ID: 256 data=/prefix/%FE%1E Count:160658872 > Face ID: 256 data=/prefix/%FE%1E Count:160680288 > Face ID: 256 data=/prefix/%FE%1E Count:161002048 > Face ID: 257 data=/prefix/%FE%1E Count:160788463 > Face ID: 256 data=/prefix/%FE%1E Count:160579534 > Face ID: 258 data=/prefix/%FE%1E Count:160429366 > Face ID: 256 data=/prefix/%FE%1E Count:5 > Face ID: 257 data=/prefix/%FE%1E Count:161011245 > Face ID: 256 data=/prefix/%FE%1E Count:161011240 > Face ID: 256 data=/prefix/%FE%1E Count:161011235 > Face ID: 256 data=/prefix/%FE%1E Count:160825346 > Face ID: 256 data=/prefix/%FE%1E Count:160825342 > Face ID: 256 data=/prefix/%FE%1E Count:160825338 > Face ID: 256 data=/prefix/%FE%1E Count:160825334 > Face ID: 256 data=/prefix/%FE%1E Count:160825330 > Face ID: 257 data=/prefix/%FE%1E Count:160825327 > Face ID: 258 data=/prefix/%FE%1E Count:160825325 > ? > I have no idea about this, could your gives me some clue on this, and how to avoid this? > > thanks for your help. > > qhsong > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zhangran at bupt.edu.cn Tue Apr 12 01:34:10 2016 From: zhangran at bupt.edu.cn (zhangran at bupt.edu.cn) Date: Tue, 12 Apr 2016 16:34:10 +0800 Subject: [ndnSIM] About How to get started with ndnSim Message-ID: <2016041216341042329711@bupt.edu.cn> Hello, everyone! I am a new student in NDN and ndnSim, rescently I find it very important to learn about ndnsim, so I want to have a thorough study on it and make my own changes. I send this e-mail to ask for help from senior users or researchers acquainted with ndnSim on how to get started with ndnSim. What I should learn first and in what order I should learn about different modules and what else background information do I need to know. Thank you very much! I am looking forward to your generous reply! Yours, Sincerely. zhangran at bupt.edu.cn -------------- next part -------------- An HTML attachment was scrubbed... URL: From cs15mtech11007 at iith.ac.in Tue Apr 12 01:49:54 2016 From: cs15mtech11007 at iith.ac.in (Krishnakanth Singh) Date: Tue, 12 Apr 2016 14:19:54 +0530 Subject: [ndnSIM] Caching Message-ID: I want to implement new caching strategies but i think the nfd content store the caching policy implemented is hard coded and in the old content store implementation also there are pretty limited number of caching policies .Can you point me towards link that shows how a caching policy such hashcaching can be implemented Thanks KrishnaKantSingh -------------- next part -------------- An HTML attachment was scrubbed... URL: From z.rezaiefar at yahoo.com Tue Apr 12 05:16:20 2016 From: z.rezaiefar at yahoo.com (Zeinab Rezaiefar) Date: Tue, 12 Apr 2016 12:16:20 +0000 (UTC) Subject: [ndnSIM] receive zero for cacheHit value References: <451809105.1579279.1460463380358.JavaMail.yahoo.ref@mail.yahoo.com> Message-ID: <451809105.1579279.1460463380358.JavaMail.yahoo@mail.yahoo.com> Dear Narges ,Thanks you so much for your reply. However, after I have changed: ?ndn::CsTracer::InstallAll("cs-simple2-trace.txt", Seconds(1)); to ndn::CsTracer::InstallAll("cs-simple2-trace.txt", Seconds(0.01)); still I have received zero for cache hit value. I think this function means in the interval defined with second() (for example during 1 second)?how many times hash misses or hash hits has happened. ?if it does not mind, may I know that you solve this problem or not.thanks in advancebest regards? -------------- next part -------------- An HTML attachment was scrubbed... URL: From ndn at sqh.me Tue Apr 12 18:26:29 2016 From: ndn at sqh.me (qhsong) Date: Wed, 13 Apr 2016 09:26:29 +0800 Subject: [ndnSIM] How to add a path count in data packet? In-Reply-To: <9FFC8D02-04BB-4567-96B5-7F8996A0296B@cs.ucla.edu> References: <9FFC8D02-04BB-4567-96B5-7F8996A0296B@cs.ucla.edu> Message-ID: Hi , Thanks for your help, After several days I read the source code, I realized I need append a TLV tag to this count and rewrite encode and decode function. At the beginning, I think node pass data by directly sent the point of data, but latter, I realized it send a encoder buffer with TLV buffer packet. Any way, thanks for your help. qhsong 2016-04-12 2:05 GMT+08:00 Spyridon (Spyros) Mastorakis < mastorakis at cs.ucla.edu>: > Hi, > > I do not know what exactly you have changed in the ndnSIM codebase, but I > will try to make a guess on what might be going on. > > When you retrieve a data packet from a cache, a hop count tag is added to > the data packet (with a value of 0). Probably you tried to print out the > value of the hop count before this is set to 0 after you retrieve a data > packet from a cache. In this way, you are printing out the value of a > variable that has not been initialized yet. > > Hope that this helps. > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > > On Apr 9, 2016, at 6:43 AM, qhsong wrote: > > > Hello, > Recently I want to accomplish a Path coordination Content Store policy on > ndnSIM, and I want to a node receive a data and see the data can be or not > stored in it. > So I add a int attribute named hop in Data class, and then decrease it in > Forward::onOutgoingData, When I find this hop is 0, then I add it. > > But I found some problem, First, It seems onOutgoingData function will > call not one times in same face, and also called by may threads.So hop > count number seem so wired,just like following ,Count is the hop attribute: > > Face ID: 256 data=/prefix/%FE%1E Count:5 > Face ID: 257 data=/prefix/%FE%1E Count:4 > Face ID: 256 data=/prefix/%FE%1E Count:4 > Face ID: 256 data=/prefix/%FE%1E Count:-1 > Face ID: 256 data=/prefix/%FE%1E Count:160658872 > Face ID: 256 data=/prefix/%FE%1E Count:160680288 > Face ID: 256 data=/prefix/%FE%1E Count:161002048 > Face ID: 257 data=/prefix/%FE%1E Count:160788463 > Face ID: 256 data=/prefix/%FE%1E Count:160579534 > Face ID: 258 data=/prefix/%FE%1E Count:160429366 > Face ID: 256 data=/prefix/%FE%1E Count:5 > Face ID: 257 data=/prefix/%FE%1E Count:161011245 > Face ID: 256 data=/prefix/%FE%1E Count:161011240 > Face ID: 256 data=/prefix/%FE%1E Count:161011235 > Face ID: 256 data=/prefix/%FE%1E Count:160825346 > Face ID: 256 data=/prefix/%FE%1E Count:160825342 > Face ID: 256 data=/prefix/%FE%1E Count:160825338 > Face ID: 256 data=/prefix/%FE%1E Count:160825334 > Face ID: 256 data=/prefix/%FE%1E Count:160825330 > Face ID: 257 data=/prefix/%FE%1E Count:160825327 > Face ID: 258 data=/prefix/%FE%1E Count:160825325 > ? > I have no idea about this, could your gives me some clue on this, and how > to avoid this? > > thanks for your help. > > qhsong > > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From rk8000 at g.rit.edu Tue Apr 12 21:20:09 2016 From: rk8000 at g.rit.edu (Ravi Kumar Singh) Date: Wed, 13 Apr 2016 00:20:09 -0400 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number Message-ID: Hi Team, I am a Graduate student of Rochester Institue of Technology, New York. Currently, I am working on a research paper based on NDN along with my Prof. Currently, we want to simulate the NDN with your software NDNSIM. We want to simulate the scenario where the consumer is sending the same interest (same sequence number) multiple times to the producer so that the cache Server would serve the interest as it would have the content in its cache instead of serving the request from the producer. We tried googling but couldn't found any relevant link for this scenario. Requesting you to please help us on how we can simulate the scenario where the consumer is sending the same interest(same sequence number) instead of the incremental sequence number (default behaviour). Thanks and Regards, Ravi Kumar Singh -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Tue Apr 12 21:32:02 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Tue, 12 Apr 2016 21:32:02 -0700 Subject: [ndnSIM] About How to get started with ndnSim In-Reply-To: <2016041216341042329711@bupt.edu.cn> References: <2016041216341042329711@bupt.edu.cn> Message-ID: Hi, I suggest you take a look at our website: http://ndnsim.net and try to run the simulation examples and see what is going on. Hope that this helps. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 12, 2016, at 1:34 AM, zhangran at bupt.edu.cn wrote: > > Hello, everyone! > > I am a new student in NDN and ndnSim, rescently I find it very important to learn about ndnsim, so I want to have a thorough study on it and make my own changes. > > I send this e-mail to ask for help from senior users or researchers acquainted with ndnSim on how to get started with ndnSim. What I should learn first and in what order I should learn about different modules and what else background information do I need to know. > > Thank you very much! I am looking forward to your generous reply! > > Yours, Sincerely. > > zhangran at bupt.edu.cn -------------- next part -------------- An HTML attachment was scrubbed... URL: From rk8000 at g.rit.edu Tue Apr 12 23:13:14 2016 From: rk8000 at g.rit.edu (Ravi Kumar Singh) Date: Wed, 13 Apr 2016 02:13:14 -0400 Subject: [ndnSIM] Fwd: Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> Message-ID: Forgot to include team. ---------- Forwarded message ---------- From: Ravi Kumar Singh Date: Wed, Apr 13, 2016 at 2:11 AM Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number To: Lixia Zhang Thanks Lixia! I will try setting up a second consumer to request the same data. But, in our experiment, we need to see what happens when the same consumer requests the same interest multiple times. I tried writing my own implementation of a consumer, but still only the first interest is working well and rest all interest are *not even* forwarding from the consumer(same) itself. Following is a log of its operation ( with my own implemention of one consumer sending three same interest): 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with Data: /root/%FE%00 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for /root/%FE%00 As, you can see from the log, only first interest is working file and rest 2 interest are *not even* forwarding from the consumer itself. Please suggest! Regards, Ravi On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang wrote: > > On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh wrote: > > Hi Team, > > I am a Graduate student of Rochester Institue of Technology, New York. > Currently, I am working on a research paper based on NDN along with my Prof. > Currently, we want to simulate the NDN with your software NDNSIM. We want > to simulate the scenario where the consumer is sending the same interest > (same sequence number) multiple times to the producer so that the cache > Server would serve the interest as it would have the content in its cache > instead of serving the request from the producer. > We tried googling but couldn't found any relevant link for this scenario. > > Requesting you to please help us on how we can simulate the scenario where > the consumer is sending the same interest(same sequence number) instead of > the incremental sequence number (default behaviour). > > > it seems to me easier to set up a second consumer to request the same > data, rather than forcing the same consumer to send repeated interest. > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From aa at CS.UCLA.EDU Wed Apr 13 18:41:50 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Wed, 13 Apr 2016 18:41:50 -0700 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> Message-ID: <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> > On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh wrote: > > Forgot to include team. > > ---------- Forwarded message ---------- > From: Ravi Kumar Singh > > Date: Wed, Apr 13, 2016 at 2:11 AM > Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number > To: Lixia Zhang > > > > Thanks Lixia! I will try setting up a second consumer to request the same data. > But, in our experiment, we need to see what happens when the same consumer requests the same interest multiple times. I tried writing my own implementation of a consumer, but still only the first interest is working well and rest all interest are not even forwarding from the consumer(same) itself. > > Following is a log of its operation ( with my own implemention of one consumer sending three same interest): > > 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 > 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 > 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 > 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) > 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) > 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with Data: /root/%FE%00 > 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) > 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for /root/%FE%00 > > As, you can see from the log, only first interest is working file and rest 2 interest are not even forwarding from the consumer itself. Hi Ravi, What you see is correct and intentional behavior of an NDN router. You're trying to send 3 interests for the same data at the exactly the same time. As a result, these 3 interests will be aggregated into one and only one will be sent further. Also, given that the same app (though the same face) is sending those interests, only one data is returned back. Depending on what specific effect you want to observe, you may want to spread out sending interests in time and/or request from different simulated nodes (different app instances). --- Alex > Please suggest! > > Regards, > Ravi > > On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang > wrote: > >> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh > wrote: >> >> Hi Team, >> >> I am a Graduate student of Rochester Institue of Technology, New York. Currently, I am working on a research paper based on NDN along with my Prof. >> Currently, we want to simulate the NDN with your software NDNSIM. We want to simulate the scenario where the consumer is sending the same interest (same sequence number) multiple times to the producer so that the cache Server would serve the interest as it would have the content in its cache instead of serving the request from the producer. >> We tried googling but couldn't found any relevant link for this scenario. >> >> Requesting you to please help us on how we can simulate the scenario where the consumer is sending the same interest(same sequence number) instead of the incremental sequence number (default behaviour). > > it seems to me easier to set up a second consumer to request the same data, rather than forcing the same consumer to send repeated interest. -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Wed Apr 13 18:54:46 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Wed, 13 Apr 2016 18:54:46 -0700 Subject: [ndnSIM] Problem about logging In-Reply-To: References: Message-ID: > On Mar 30, 2016, at 10:12 PM, Weihong Yang(???) wrote: > > Dear ALL, > > I was trying to enable NFD logging in my forwarding strategy, and I had followed the steps in the NFD developer guide: > 1. include core/logger.hpp header file > 2. declare logging module using NFD_LOG_INIT("MyStrategy"); > 3. use NFD_LOG_DEBUG("DEBUG message"); in my source code. > And I ran the simulation scenarios using the following command: > NS_LOG=nfd.MyStrategy ./waf --run=Mystrategy --vis It should have worked. You probably want to double check that your strategy gets any interests at all (e.g., check that you have configured your strategy for the namespace and that consumer apps use this namespace to send interests). In my experience, running with/without visualizer shouldn't have any effect on it. --- Alex > > However, there is no output of logging information. I was wondering where I went wrong. > Thanks in advance. > > Yours, > Weihong Yang > -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Wed Apr 13 18:56:03 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Wed, 13 Apr 2016 18:56:03 -0700 Subject: [ndnSIM] Doxygen not present error In-Reply-To: <8C0C60AB-A876-4E55-B0BB-933737D1CA13@cs.ucla.edu> References: <8C0C60AB-A876-4E55-B0BB-933737D1CA13@cs.ucla.edu> Message-ID: <53CCB6FA-CC50-4804-8BD4-26EC43C15442@cs.ucla.edu> One small note. If you have already clone ndnSIM and don't want to re-clone with `--recursive` option as Spyros has suggested, you can retrieve submodules by cd src/ndnSIM git submodule update --init --- Alex > On Apr 1, 2016, at 9:27 AM, Spyridon (Spyros) Mastorakis wrote: > > Hi, > > I guess the solution to your problem is to clone ndnSIM with the -- recursive flag on (git clone -- recursive ). Another thing: there is no ndnSIM version 3.25. Do you refer to NS3? > > Thanks, > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > >> On Mar 31, 2016, at 11:09 PM, Krishnakanth Singh > wrote: >> >> Hi, >> I am using Ubuntu 14.04 and ndnsim 3.25 when i go to ns3 dir inside ndnsim and do ./waf >> There is a import error saying Doxygen not available .I am sure that Doxygen is installed as i have also installed ns3 and it works fine > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Wed Apr 13 19:09:50 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Wed, 13 Apr 2016 19:09:50 -0700 Subject: [ndnSIM] How to use ndnSIM to simulate a cache policy? In-Reply-To: References: Message-ID: Unfortunately, we don't have extensive documentation about it, only examples. The example repository you're looking is indeed outdated, but the example can still be applied in the latest version of ndnSIM (may be with some modifications). I would recommend you looking for examples in the latest ndnSIM codebase: - https://github.com/named-data-ndnSIM/ndnSIM/tree/master/utils/trie - https://github.com/named-data-ndnSIM/ndnSIM/tree/master/model/cs/custom-policies - https://github.com/named-data-ndnSIM/ndnSIM/blob/master/model/cs/content-store-with-probability.hpp and - https://github.com/named-data-ndnSIM/ndnSIM/blob/master/model/cs/content-store-with-probability.cpp You can also check out a slide deck (starting slide 34) that highlights steps to write custom cache policy: http://lasr.cs.ucla.edu/afanasyev/data/files/Afanasyev/07-ndnSIM-demo-Alex.pptx -- Alex > On Apr 2, 2016, at 4:07 AM, ndn ndn wrote: > > Hello, > Recently, I want to use ndnSIM to simulate a ndn cache policy, but I only find some information on > https://github.com/cawka/ndnSIM-examples/tree/master/extensions/custom-cs , it is a three year ago. > http://ndnsim.net/2.1/cs.html it didn't mention how to do it. > > Can I use it? And also if I need implement a cache policy, How to write a class to do this? > Can you give me some information on this. > Thanks for your help. > > qhsong > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Wed Apr 13 19:15:48 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Wed, 13 Apr 2016 19:15:48 -0700 Subject: [ndnSIM] Porting scenarios to ndnSIM 2.1 In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A20@m-pdc.sbu.ac.ir> References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A20@m-pdc.sbu.ac.ir> Message-ID: <1FDB6284-9893-44B6-84CF-C82D0BCE645E@cs.ucla.edu> > On Apr 2, 2016, at 11:43 AM, Muhammad Hosain Abdollahi Sabet wrote: > > Hi everyone, > Is there any guide on how one can port simulation scenarios wrote for ndnSIM 1? Currently I have a simulation in which has some modifications in model/ndn-interest.h/.cc, model/wire/ndnsim.h/.cc, ndn.cxx/detail/pending-interests-container.h, model/fw/ndn-forwarding-strategy.h/.cc. I know NFD is being used directly in ndnSIM 2.1 and there has been some changes in ndn-cxx. But honestly I'm not much familiar with them and need some guide. It very much depends on how extensive are your changes. To modify interest abstraction and wire encoding, you need to look at - ndnSIM/ndn-cxx/src/interest.hpp - ndnSIM/ndn-cxx/src/interest.cpp For application PIT (ndn.cxx/...), you can look at - ndnSIM/ndn-cxx/src/detail/pending-interests.hpp, but there is also logic in ndnSIM/ndn-cxx/src/detail/face-impl.hpp For forwarding strategy, depending on your specific interest, it could be part of the strategy interface - ndnSIM/NFD/daemon/fw/strategy.hpp - ndnSIM/NFD/daemon/fw/strategy.cpp - ndnSIM/NFD/daemon/fw/*-strategy.*pp (examples of implemented strategies) or if you need to change some of the forwarding logic (which we call now "pipelines"), you may look into - ndnSIM/NFD/daemon/fw/forwarder.hpp - ndnSIM/NFD/daemon/fw/forwarder.cpp --- Alex -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Wed Apr 13 19:23:18 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Wed, 13 Apr 2016 19:23:18 -0700 Subject: [ndnSIM] How the application level tracers work? In-Reply-To: References: Message-ID: Hi Anil, > On Apr 2, 2016, at 7:17 PM, Anil Jangam wrote: > > Hi, > > In my simulation scenario, I get no output when I enable the application delay tracer. However, when I run the example provided, it works fine. So, are there any preconditions in this example program, which I need to take care of or just following line is enough to collect the application delay metrics? ApplicationDelayTracer relies on trace signals produced by ndn::Consumer app (you can check apps/ndn-consumer.cpp inside Consumer::GetTypeId method). If your scenario doesn't have ndn::Consumer-based app or doesn't implement exactly the same trace signals, then the tracer will be useless. So, the only precondition is that you need to have an ndn::Consumer* installed or have an app with same trace signals. > ndn::AppDelayTracer::InstallAll("app-delays-trace.txt"); > I also want to understand the significance of Connect() function implementation. > > Config::ConnectWithoutContext("/NodeList/" + m_node > + "/ApplicationList/*/LastRetransmittedInterestDataDelay", > MakeCallback(&AppDelayTracer::LastRetransmittedInterestDataDelay, this)); > > Config::ConnectWithoutContext("/NodeList/" + m_node + "/ApplicationList/*/FirstInterestDataDelay", > MakeCallback(&AppDelayTracer::FirstInterestDataDelay, this)); > > What does ConnectWithoutContext() do? I looked into the Config class, but did not understand what service it really provides. What the attributes (like > LastRetransmittedInterestDataDelay and FirstInterestDataDelay) actually mean? Are they predefined anywhere or are they user defined? Connect and ConnectWithoutContext differ in the signature of the callback that will be called when trace is "signaled". Just connect, will also add string parameter that would represent from which node it is called, and without will not have this parameter. In the tracer, information about the node is already recorded, so it is unnecessary to have additional context. Config class just provides a very generic interface to connect things. Actual attributes are defined as part of GetTypeId methods of NS-3 "object" classes. You can check ndn::Consumer's definition in apps/ndn-consumer.cpp. You can also check NS-3 documentation about it, e.g., https://www.nsnam.org/wiki/HOWTO_determine_the_path_of_an_attribute_or_trace_source --- Alex -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Wed Apr 13 19:32:35 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Wed, 13 Apr 2016 19:32:35 -0700 Subject: [ndnSIM] Running ndnSIM under gprof In-Reply-To: References: Message-ID: > On Apr 10, 2016, at 12:19 AM, Anil Jangam wrote: > > Hi. > > Is this the only way to run the ndnSIM applications? > ./waf --run=ndn-simple > > Actually I have compiled the ndnSIM for gprof and want to clarify the final step of gprof processing i.e. > unix% gprof program-name [ data-file ] [ > output-file ] > > I did get some output after executing the command - > gprof ./build/src/ndnSIM/examples/ns3-dev-ndn-simple-debug gmon.out > > Is this correct way to invoke 'ndn-simple' example without calling it under ./waf? There are few things that ./waf --run does. First, it sets up a few environmental variables, which are important when you run python-based simulations, and not so important for c++ case. Another, it automatically determines the name of the scenario executable, which can be different depending on which mode you have configured NS-3 (in your case it is debug version, if you configured as -d optimized, the executable suffix would be different). So. There is no real difference in running through waf or directly. If you want, you can still use waf, but with additional parameter to customize the command line ./waf --run=ndn-simple --command-template="gprof %s gmon.out" -- Alex -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From ndn at sqh.me Wed Apr 13 20:20:25 2016 From: ndn at sqh.me (qhsong) Date: Thu, 14 Apr 2016 11:20:25 +0800 Subject: [ndnSIM] About How to get started with ndnSim In-Reply-To: References: <2016041216341042329711@bupt.edu.cn> Message-ID: Hi zhangran, What aspect your want to study? Or your want to know whole thing? qhsong 2016-04-13 12:32 GMT+08:00 Spyridon (Spyros) Mastorakis < mastorakis at cs.ucla.edu>: > Hi, > > I suggest you take a look at our website: > > http://ndnsim.net > > and try to run the simulation examples and see what is going on. > > Hope that this helps. > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > > > > On Apr 12, 2016, at 1:34 AM, zhangran at bupt.edu.cn wrote: > > Hello, everyone! > > I am a new student in NDN and ndnSim, rescently I find it very important > to learn about ndnsim, so I want to have a thorough study on it and make my > own changes. > > I send this e-mail to ask for help from senior users or researchers > acquainted with ndnSim on how to get started with ndnSim. What I should > learn first and in what order I should learn about different modules and > what else background information do I need to know. > > Thank you very much! I am looking forward to your generous reply! > > Yours, Sincerely. > > ------------------------------ > zhangran at bupt.edu.cn > > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From sinkyh at oregonstate.edu Thu Apr 14 02:33:30 2016 From: sinkyh at oregonstate.edu (Hassan Sinky) Date: Thu, 14 Apr 2016 02:33:30 -0700 Subject: [ndnSIM] Cache hits/misses on producer node Message-ID: Hello everyone, I was just wondering what could be some cases when a producer node would register a cache hit? I assumed that if an interest request were to arrive at a producer it would simply process that request by returning the corresponding data. I have a topology with multiple producers of the same prefix and I installed the CS tracer only on the producers. I also have consumers requesting the prefix provided by the producers. The CS trace on the producers is registering cache hits and misses. Why would there be a hit or a miss? Should both simply be zero? Or am I missing something? Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: From don1559 at gmail.com Thu Apr 14 04:04:07 2016 From: don1559 at gmail.com (Ahmed Sadek) Date: Thu, 14 Apr 2016 13:04:07 +0200 Subject: [ndnSIM] Tracing different prefixs from different consumers and different strategies Message-ID: Hi All, I am trying to use (different prefixes + different consumers + different FS) on the client where one prefix will follow 1 forwarding strategy (choosing best BW) and the other prefix follow another strategy (Round robin 4ex). Was wondering how to trace (DataRate, delay, Loss ..etc) for those different prefixes ? Thanks! Ahmed -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Thu Apr 14 10:10:28 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Thu, 14 Apr 2016 10:10:28 -0700 Subject: [ndnSIM] Cache hits/misses on producer node In-Reply-To: References: Message-ID: Hi, I am not sure I fully understand your question, but I will try to elaborate on it a little bit and you will let me know whether my response answers your question. A producer in ndnSIM is a node that has an application installed and running on it. To this end, it has a Contest Store like any other node. If the producer sends out some data packets, they will be in its CS in the near future. If some consumers request this data, but the Interest is forwarded to the producer through a path that is disjoint with the previous path, then the data will be served from the CS on the producer node. Does that answer your question? Thanks, Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 14, 2016, at 2:33 AM, Hassan Sinky wrote: > > Hello everyone, > > I was just wondering what could be some cases when a producer node would register a cache hit? I assumed that if an interest request were to arrive at a producer it would simply process that request by returning the corresponding data. I have a topology with multiple producers of the same prefix and I installed the CS tracer only on the producers. I also have consumers requesting the prefix provided by the producers. The CS trace on the producers is registering cache hits and misses. Why would there be a hit or a miss? Should both simply be zero? Or am I missing something? > > Thanks! -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Thu Apr 14 10:13:52 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Thu, 14 Apr 2016 10:13:52 -0700 Subject: [ndnSIM] IDE suggestion In-Reply-To: <712FE4E7257849499414892DD92704BC77C55FB6@INFRAEX02.oxia.corp> References: <712FE4E7257849499414892DD92704BC77C55FB6@INFRAEX02.oxia.corp> Message-ID: Hi, personally, I have been using Atom for the last couple of months and I am quite happy with it: https://atom.io Alex has been using a fully customized version of emacs: https://www.gnu.org/software/emacs/ Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 14, 2016, at 5:53 AM, Nour El Houda Ben Youssef wrote: > > Dear ndnSimers > > Which IDE do you suggest while adding new features to ndnSIM? > > Best regards > > > Nour El Houda BEN YOUSSEF|Doctorante > Technopark El Ghazela 2088 Tunis- Tunisia > Phone: +216 31 34 00 14 > Mobile: +216 24 54 24 54 > www.wevioo.com > Paris ? Tunis - Dubai ? Alger -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Thu Apr 14 10:15:47 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Thu, 14 Apr 2016 10:15:47 -0700 Subject: [ndnSIM] Tracing different prefixs from different consumers and different strategies In-Reply-To: References: Message-ID: Hi Ahmed, what about the application level tracer? http://ndnsim.net/2.1/metric.html#application-level-trace-helper Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 14, 2016, at 4:04 AM, Ahmed Sadek wrote: > > Hi All, > > I am trying to use (different prefixes + different consumers + different FS) on the client where one prefix will follow 1 forwarding strategy (choosing best BW) and the other prefix follow another strategy (Round robin 4ex). Was wondering how to trace (DataRate, delay, Loss ..etc) for those different prefixes ? > > Thanks! > Ahmed -------------- next part -------------- An HTML attachment was scrubbed... URL: From sinkyh at oregonstate.edu Thu Apr 14 10:24:16 2016 From: sinkyh at oregonstate.edu (Hassan Sinky) Date: Thu, 14 Apr 2016 10:24:16 -0700 Subject: [ndnSIM] Cache hits/misses on producer node In-Reply-To: References: Message-ID: Perfect. That explains it. In that case then. How does the producer differentiate if an interest has traversed a disjoint path with previous interests? Thanks! On Thu, Apr 14, 2016 at 10:10 AM, Spyridon (Spyros) Mastorakis < mastorakis at cs.ucla.edu> wrote: > Hi, > > I am not sure I fully understand your question, but I will try to > elaborate on it a little bit and you will let me know whether my response > answers your question. > > A producer in ndnSIM is a node that has an application installed and > running on it. To this end, it has a Contest Store like any other node. If > the producer sends out some data packets, they will be in its CS in the > near future. If some consumers request this data, but the Interest is > forwarded to the producer through a path that is disjoint with the previous > path, then the data will be served from the CS on the producer node. > > Does that answer your question? > > Thanks, > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > On Apr 14, 2016, at 2:33 AM, Hassan Sinky wrote: > > Hello everyone, > > I was just wondering what could be some cases when a producer node would > register a cache hit? I assumed that if an interest request were to arrive > at a producer it would simply process that request by returning the > corresponding data. I have a topology with multiple producers of the same > prefix and I installed the CS tracer only on the producers. I also have > consumers requesting the prefix provided by the producers. The CS trace > on the producers is registering cache hits and misses. Why would there be a > hit or a miss? Should both simply be zero? Or am I missing something? > > Thanks! > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zhsupperviol at gmail.com Thu Apr 14 10:25:07 2016 From: zhsupperviol at gmail.com (=?UTF-8?B?V2VpaG9uZyBZYW5nKOadqOS8n+Wujyk=?=) Date: Fri, 15 Apr 2016 01:25:07 +0800 Subject: [ndnSIM] Problem about logging In-Reply-To: References: Message-ID: Hi Alex and Spyridon, I have found out that there wasn't any thing wrong with the logging. I just made a very very silly mistake when I use the Class StrategyChoiceHelper to install my strategy. Sorry to be a bother and I really appreciate your help. Weihong Yang (*???*) 2016-04-14 9:54 GMT+08:00 Alex Afanasyev : > > > On Mar 30, 2016, at 10:12 PM, Weihong Yang(???) > wrote: > > > > Dear ALL, > > > > I was trying to enable NFD logging in my forwarding strategy, and I had > followed the steps in the NFD developer guide: > > 1. include core/logger.hpp header file > > 2. declare logging module using NFD_LOG_INIT("MyStrategy"); > > 3. use NFD_LOG_DEBUG("DEBUG message"); in my source code. > > And I ran the simulation scenarios using the following command: > > NS_LOG=nfd.MyStrategy ./waf --run=Mystrategy --vis > > It should have worked. You probably want to double check that your > strategy gets any interests at all (e.g., check that you have configured > your strategy for the namespace and that consumer apps use this namespace > to send interests). > > In my experience, running with/without visualizer shouldn't have any > effect on it. > > --- > Alex > > > > > However, there is no output of logging information. I was wondering > where I went wrong. > > Thanks in advance. > > > > Yours, > > Weihong Yang > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From don1559 at gmail.com Thu Apr 14 10:25:41 2016 From: don1559 at gmail.com (Ahmed Sadek) Date: Thu, 14 Apr 2016 19:25:41 +0200 Subject: [ndnSIM] Tracing different prefixs from different consumers and different strategies In-Reply-To: References: Message-ID: Thank you for the reply. But how I can distinguish between traffic for prefix/A and prefix/B. for example to show the data rate for each one separately. In application level tracer does *AppId *represents a single consumer/ single prefix ? Ahmed On Thu, Apr 14, 2016 at 7:15 PM, Spyridon (Spyros) Mastorakis < mastorakis at cs.ucla.edu> wrote: > Hi Ahmed, > > what about the application level tracer? > > http://ndnsim.net/2.1/metric.html#application-level-trace-helper > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > > On Apr 14, 2016, at 4:04 AM, Ahmed Sadek wrote: > > Hi All, > > I am trying to use (different prefixes + different consumers + different > FS) on the client where one prefix will follow 1 forwarding strategy > (choosing best BW) and the other prefix follow another strategy (Round > robin 4ex). Was wondering how to trace (DataRate, delay, Loss ..etc) for > those different prefixes ? > > Thanks! > Ahmed > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Thu Apr 14 10:31:19 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Thu, 14 Apr 2016 10:31:19 -0700 Subject: [ndnSIM] Cache hits/misses on producer node In-Reply-To: References: Message-ID: <2BA57345-33B6-41C0-A415-4CBD4D9FECA0@cs.ucla.edu> It does not have to do with the application. It has to do with NFD. When a data packet is received by NFD, a CS match will be searched. If such a match is found, then the data would not be returned directly (from CS) and the Interest will not be forwarded to the application layer. Take a look here: https://github.com/named-data-ndnSIM/NFD/blob/bd8eea71137bc382fe1fb8225334b926a5484527/daemon/fw/forwarder.cpp#L100-L111 Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 14, 2016, at 10:24 AM, Hassan Sinky wrote: > > Perfect. That explains it. In that case then. How does the producer differentiate if an interest has traversed a disjoint path with previous interests? > > Thanks! > > On Thu, Apr 14, 2016 at 10:10 AM, Spyridon (Spyros) Mastorakis > wrote: > Hi, > > I am not sure I fully understand your question, but I will try to elaborate on it a little bit and you will let me know whether my response answers your question. > > A producer in ndnSIM is a node that has an application installed and running on it. To this end, it has a Contest Store like any other node. If the producer sends out some data packets, they will be in its CS in the near future. If some consumers request this data, but the Interest is forwarded to the producer through a path that is disjoint with the previous path, then the data will be served from the CS on the producer node. > > Does that answer your question? > > Thanks, > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > >> On Apr 14, 2016, at 2:33 AM, Hassan Sinky > wrote: >> >> Hello everyone, >> >> I was just wondering what could be some cases when a producer node would register a cache hit? I assumed that if an interest request were to arrive at a producer it would simply process that request by returning the corresponding data. I have a topology with multiple producers of the same prefix and I installed the CS tracer only on the producers. I also have consumers requesting the prefix provided by the producers. The CS trace on the producers is registering cache hits and misses. Why would there be a hit or a miss? Should both simply be zero? Or am I missing something? >> >> Thanks! > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Thu Apr 14 22:06:57 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Fri, 15 Apr 2016 09:36:57 +0430 Subject: [ndnSIM] [Ndn-interest] IDE suggestion References: <712FE4E7257849499414892DD92704BC77C55FB6@INFRAEX02.oxia.corp> <570FF6F7.9020401@email.arizona.edu> Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A24@m-pdc.sbu.ac.ir> I've been using Qt Creator these days. Lightweight, swift and fast. Of course you don't need to index the whole ns3 folder. And again, do building and debugging with waf itself. Thanks, Sabet -----Original Message----- From: Ndn-interest on behalf of Klaus Schneider Sent: Fri 4/15/2016 12:30 AM To: Spyridon (Spyros) Mastorakis; Nour El Houda Ben Youssef Cc: ndn-interest at lists.cs.ucla.edu; ndnsim at lists.cs.ucla.edu; cawka1 at gmail.com Subject: Re: [Ndn-interest] IDE suggestion I'm using Eclipse CDT. The C++ Indexer is quite helpful, but requires some tuning (you don't want to index the whole ns3 folder). Best regards, Klaus On 04/14/2016 10:13 AM, Spyridon (Spyros) Mastorakis wrote: > Hi, > > personally, I have been using Atom for the last couple of months and I > am quite happy with it: > > https://atom.io > > Alex has been using a fully customized version of emacs: > > https://www.gnu.org/software/emacs/ > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > > Internet Research Laboratory > Computer Science Department > UCLA > > >> On Apr 14, 2016, at 5:53 AM, Nour El Houda Ben Youssef >> > > wrote: >> >> Dear ndnSimers >> Which IDE do you suggest while adding new features to ndnSIM? >> Best regards >> ** >> >> *Nour El Houda BEN YOUSSEF*|Doctorante >> Technopark El Ghazela 2088 Tunis- Tunisia >> Phone: +216 31 34 00 14 >> Mobile: +216 24 54 24 54 >> www.wevioo.com >> Paris - Tunis - Dubai - Alger >> > > > > _______________________________________________ > 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 z.rezaiefar at yahoo.com Fri Apr 15 02:15:17 2016 From: z.rezaiefar at yahoo.com (Zeinab Rezaiefar) Date: Fri, 15 Apr 2016 09:15:17 +0000 (UTC) Subject: [ndnSIM] using the same node as producer and consumer References: <1242924828.1037406.1460711717849.JavaMail.yahoo.ref@mail.yahoo.com> Message-ID: <1242924828.1037406.1460711717849.JavaMail.yahoo@mail.yahoo.com> Hello everyone,I would like that every node can send request from one side and a produce data from another side (like p2p network)?.? I am worry that I can implement this scenario in ndnsim ?any help will be appreciatebest regards -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Fri Apr 15 10:49:51 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Fri, 15 Apr 2016 10:49:51 -0700 Subject: [ndnSIM] using the same node as producer and consumer In-Reply-To: <1242924828.1037406.1460711717849.JavaMail.yahoo@mail.yahoo.com> References: <1242924828.1037406.1460711717849.JavaMail.yahoo.ref@mail.yahoo.com> <1242924828.1037406.1460711717849.JavaMail.yahoo@mail.yahoo.com> Message-ID: Hi, you just have to install a producer and a consumer application on the same node. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 15, 2016, at 2:15 AM, Zeinab Rezaiefar wrote: > > Hello everyone, > I would like that every node can send request from one side and a produce data from another side (like p2p network) . I am worry that I can implement this scenario in ndnsim ? > any help will be appreciate > best regards -------------- next part -------------- An HTML attachment was scrubbed... URL: From ahmedaboud at outlook.com Fri Apr 15 12:32:42 2016 From: ahmedaboud at outlook.com (ahmed aboud) Date: Fri, 15 Apr 2016 19:32:42 +0000 Subject: [ndnSIM] Multi-hop Wireless Ad-hoc Scenario Message-ID: Hi all, I am trying to develop a scenario for multi-hop wireless ad-hoc network , currently i'm working with a 3 nodes topology A-->B-->C where (A:consumer ; B: forwarder ; C: producer ) and i managed to forward interest packets to node C, by creating a custom forwarding strategy that enable forwarding through the same face. My problem is that node B receives the returned data packet and it doesn't forward it back to node A since the NFD forwarder doesn't permit forwarding data packet throw the same downstream face as shown on this file: https://github.com/named-data-ndnSIM/NFD/blob/bd8eea71137bc382fe1fb8225334b926a5484527/daemon/fw/forwarder.cpp#L364 and by modifying the Forwarder class to enable it to forward data packets to the same inFace only the first 2 packets were sent and received correctly as you can see on the Forwarder log, i suspect that node C doesn't have a route to the other nodes but i dont quite understand why only 2 packets were sent and received correctly. any help will be much appreciated. Thanks ,Ahmed. Forwarder Log: *****************************First Packet************************************** 1s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=257 interest=/localhost/nfd/faces/events/%FE%051s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/localhost/nfd/faces/events/%FE%051s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=1 interest=/localhost/nfd/faces/events/%FE%051.1s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/localhost/nfd/faces/events satisfied3s 0 ndn.ConsumerPush:SendInterestx(): [DEBUG] Sending Interest packet for /test/data/83?ndn.type=F&ndn.InterestLifetime=3000&ndn.Nonce=28143997563s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/test/data/833s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/data/833.0001s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/test/data/833.00014s 1 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/data/833.00014s 1 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/data/833.00024s 1 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/test/data/833.00029s 2 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/data/833.00029s 2 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/data/833.00039s 2 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=258 interest=/test/data/833.00039s 2 ndn.Sink:OnInterest(): [DEBUG] Received Fetch Interest packet for /test/data/833.00039s 2 ndn.Sink:OnInterest(): [INFO ] node(2) responding with Data: /test/data/833.00039s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=258 data=/test/data/833.00039s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/test/data/833.00039s 2 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=256 data=/test/data/833.00071s 1 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=256 data=/test/data/833.00071s 1 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/test/data/833.00071s 1 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=256 data=/test/data/833.0011s 0 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=256 data=/test/data/833.0011s 0 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData256matching=/test/data/833.0011s 0 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=258 data=/test/data/833.0011s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=256 data=/test/data/833.0011s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/test/data/833.0011s 0 ndn.ConsumerPush:OnData(): [DEBUG] Receiving Data packet for /test/data/833.10071s 1 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/data/83 satisfied3.1011s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/data/83 satisfied3.1011s 2 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/data/83 satisfied *****************************Second Packet************************************** 7s 0 ndn.ConsumerPush:SendInterestx(): [DEBUG] Sending Interest packet for /test/data/86?ndn.type=F&ndn.InterestLifetime=3000&ndn.Nonce=22103336487s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/test/data/867s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/data/867.0001s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/test/data/867.00014s 1 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/data/867.00014s 1 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/data/867.00024s 1 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/test/data/867.00029s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/data/867.00029s 0 nfd.Forwarder:onInterestLoop(): [DEBUG] onInterestLoop face=256 interest=/test/data/867.00029s 2 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/data/867.00029s 2 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/data/867.00039s 2 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=258 interest=/test/data/867.00039s 2 ndn.Sink:OnInterest(): [DEBUG] Received Fetch Interest packet for /test/data/867.00039s 2 ndn.Sink:OnInterest(): [INFO ] node(2) responding with Data: /test/data/867.00039s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=258 data=/test/data/867.00039s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/test/data/867.00039s 2 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=256 data=/test/data/867.00071s 1 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=256 data=/test/data/867.00071s 1 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/test/data/867.00071s 1 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=256 data=/test/data/867.00106s 0 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=256 data=/test/data/867.00106s 0 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/test/data/867.00106s 0 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=258 data=/test/data/867.00106s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=256 data=/test/data/867.00106s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/test/data/867.00106s 0 ndn.ConsumerPush:OnData(): [DEBUG] Receiving Data packet for /test/data/867.10071s 1 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/data/86 satisfied7.10106s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/data/86 satisfied7.10106s 2 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/data/86 satisfied *****************************Third Packet************************************** 11s 0 ndn.ConsumerPush:SendInterestx(): [DEBUG] Sending Interest packet for /test/data/77?ndn.type=F&ndn.InterestLifetime=3000&ndn.Nonce=299933639811s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=258 interest=/test/data/7711s 0 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/data/7711.0001s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/test/data/7711.0001s 1 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/data/7711.0001s 1 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/data/7711.0002s 1 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/test/data/7711.0003s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/data/7711.0003s 0 nfd.Forwarder:onInterestLoop(): [DEBUG] onInterestLoop face=256 interest=/test/data/7711.0003s 2 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=256 interest=/test/data/7711.0003s 2 nfd.Forwarder:onContentStoreMiss(): [DEBUG] onContentStoreMiss interest=/test/data/7711.0004s 2 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=258 interest=/test/data/7711.0004s 2 ndn.Sink:OnInterest(): [DEBUG] Received Fetch Interest packet for /test/data/7711.0004s 2 ndn.Sink:OnInterest(): [INFO ] node(2) responding with Data: /test/data/7711.0004s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData face=258 data=/test/data/7711.0004s 2 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/test/data/7711.0004s 2 nfd.Forwarder:onOutgoingData(): [DEBUG] onOutgoingData face=256 data=/test/data/7711.1004s 2 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/data/77 satisfied14s 0 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/test/data/7714s 0 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/data/77 unsatisfied14.0001s 1 nfd.Forwarder:onInterestUnsatisfied(): [DEBUG] onInterestUnsatisfied interest=/test/data/7714.0001s 1 nfd.Forwarder:onInterestFinalize(): [DEBUG] onInterestFinalize interest=/test/data/77 unsatisfied -------------- next part -------------- An HTML attachment was scrubbed... URL: From ertugruldogruluk at hotmail.com Fri Apr 15 13:20:39 2016 From: ertugruldogruluk at hotmail.com (Ertugrul DOGRULUK) Date: Fri, 15 Apr 2016 21:20:39 +0100 Subject: [ndnSIM] ndnSIM-ddos-interest-flooding- Installation issue Message-ID: Dear All, I'm having a problem. I'm trying get When I entered './waf configure -d optimized' Im getting ' 'bash: ./waf: No such file or directory' error.I try to get this scenario for github.https://github.com/cawka/ndnSIM-ddos-interest-flooding I'm using 2.0 version. But author used it in 1.0 version. Is there anyway to fix this on 2.0 version or I supposed to run this scenario on 1.0? Thanks all. Kindly RegardsErtugrul DogrulukPhD Researcher Centro Algoritmi/ University of Minho-PORTUGALTel:+351920288185 -------------- next part -------------- An HTML attachment was scrubbed... URL: From aa at CS.UCLA.EDU Fri Apr 15 13:40:13 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Fri, 15 Apr 2016 13:40:13 -0700 Subject: [ndnSIM] Difficulty in running NDNsim with pythod visualizer In-Reply-To: <56FC04AA.4030405@gmail.com> References: <56FC04AA.4030405@gmail.com> Message-ID: <483725A2-EACC-455F-B3D7-1E0C4A7622A9@cs.ucla.edu> This error (and the message you saw during ./waf configure) really indicates that the visualizer was not compiled. The reason it is not compiled is, as Chaim suggested, are missing dependencies. Check if you have installed everything that is recommended on ndnsim.net. --- Alex > On Mar 30, 2016, at 9:54 AM, Chaim Rieger wrote: > > Did you install the prerequisites ? > > On 3/30/2016 2:20 AM, Tanusree Chatterjee wrote: >> Hello, >> >> I have successfully installed and compiled and run NDNsim in my machine. But whenever, I want to see the simulation live with the command ./waf --run= --vis, it shows the following error. >> >> assert failed. cond="uid != 0", msg="Assert in TypeId::LookupByName: ns3::VisualSimulatorImpl not found", file=../src/core/model/type-id.cc, line=755 >> terminate called without an active exception >> >> Command ['/home/tanusree/boost_1_59_0/ndnSIM/ns-3/build/src/ndnSIM/examples/ns3-dev-ndn-simple-debug', '--SimulatorImplementationType=ns3::VisualSimulatorImpl'] terminated with signal SIGIOT. Run it under a debugger to get more information (./waf --run --command-template="gdb --args %s "). >> >> >> Previously it has shown that the Python Visualizer wan not enabled. Please tell me how can I run the examples with visualizer. >> >> --Regards, >> Tanusree Chatterjee -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Fri Apr 15 13:44:27 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Fri, 15 Apr 2016 13:44:27 -0700 Subject: [ndnSIM] ndnSIM-ddos-interest-flooding- Installation issue In-Reply-To: References: Message-ID: <73EFC993-F13E-4113-8B8A-43664A98D31A@cs.ucla.edu> Hi Ertugrul, This scenario was designed and implemented for the specific older version of ndnSIM (see README for the specific version). It is not possible to do the conversion easily, as you need to implement many things in different way with the new version of ndnSIM. As for error. If you cloned and then switched your current folder to the cloned repository, you shouldn't be getting this error. "waf" is just an python script that is part of the scenario repository. -- Alex > On Apr 15, 2016, at 1:20 PM, Ertugrul DOGRULUK wrote: > > Dear All, > > I'm having a problem. I'm trying get When I entered './waf configure -d optimized' Im getting ' 'bash: ./waf: No such file or directory' error. > I try to get this scenario for github. > https://github.com/cawka/ndnSIM-ddos-interest-flooding > > I'm using 2.0 version. But author used it in 1.0 version. Is there anyway to fix this on 2.0 version or I supposed to run this scenario on 1.0? > > Thanks all. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Fri Apr 15 13:47:08 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Fri, 15 Apr 2016 13:47:08 -0700 Subject: [ndnSIM] Tracing different prefixs from different consumers and different strategies In-Reply-To: References: Message-ID: <2F54DB0A-0D0C-4C71-B5C1-EE132E8D4C6D@cs.ucla.edu> Hi Ahmed, For that, you will need to extend the trace helper (or write a new one). We will be happy to merge your code afterwards. Thanks, Alex > On Apr 14, 2016, at 10:25 AM, Ahmed Sadek wrote: > > Thank you for the reply. But how I can distinguish between traffic for prefix/A and prefix/B. for example to show the data rate for each one separately. > > In application level tracer does AppId represents a single consumer/ single prefix ? > > Ahmed > > > On Thu, Apr 14, 2016 at 7:15 PM, Spyridon (Spyros) Mastorakis > wrote: > Hi Ahmed, > > what about the application level tracer? > > http://ndnsim.net/2.1/metric.html#application-level-trace-helper > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > >> On Apr 14, 2016, at 4:04 AM, Ahmed Sadek > wrote: >> >> Hi All, >> >> I am trying to use (different prefixes + different consumers + different FS) on the client where one prefix will follow 1 forwarding strategy (choosing best BW) and the other prefix follow another strategy (Round robin 4ex). Was wondering how to trace (DataRate, delay, Loss ..etc) for those different prefixes ? >> >> Thanks! >> Ahmed > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Fri Apr 15 13:54:55 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Fri, 15 Apr 2016 13:54:55 -0700 Subject: [ndnSIM] ndnSIM older version compatibility issue In-Reply-To: References: Message-ID: <1C93DED4-62A8-497B-B73E-4FC4A6E8A349@cs.ucla.edu> What I guess from the error is that somewhere something have `#define ECHO` (I cannot really tell where it is defined). This define messes up source code at the pre-compiler stage and making compiler very confused. -- Alex > On Apr 11, 2016, at 1:51 AM, Junaid Ahmed Khan wrote: > > Hi Alex, > > I performed some simulations with an eirlier version of ndnsim in 2014. I recently updated ndnSIM (fresh installation) to perform additional simulations. I found that the code no longer compiles. I noticed issues in the ndnSIM-module and Internet-module headers (highlighted in Red below . I could not understand the issue. Can you please let me know the changes i need to make to make is compatible with code from earlier ndnSIM version. The error log is shown below: > > jkhan01 at feigenbaum:~/ndnSIM/ns-3$ ./waf --run "scratch/ns2-mobility-trace \ > --traceFile=scratch/100.tcl > --nodeNum=100 --duration=100.0 --logFile=ns2-mobility-trace.log" > Waf: Entering directory `/home/jkhan01/ndnSIM/ns-3/build' > [1236/2700] Compiling scratch/koln9_1hr.cc > In file included from /usr/include/termios.h:39:0, > from /usr/include/boost/asio/serial_port_base.hpp:25, > from /usr/include/boost/asio/basic_serial_port.hpp:29, > from /usr/include/boost/asio.hpp:26, > from ns3/ndnSIM/NFD/common.hpp:69, > from ./ns3/ndnSIM/NFD/daemon/face/face.hpp:29, > from ./ns3/ndnSIM/model/ndn-face.hpp:23, > from ./ns3/ndnSIM/helper/ndn-face-container.hpp:30, > from ./ns3/ndnSIM/helper/ndn-stack-helper.hpp:30, > from ./ns3/ndn-all.hpp:23, > from ./ns3/ndnSIM-module.h:10, > from ../scratch/koln9_1hr.cc:65: > ./ns3/icmpv4.h:39:5: error: expected identifier before numeric constant > ECHO = 8, > ^ > ./ns3/icmpv4.h:39:5: error: expected ?}? before numeric constant > ./ns3/icmpv4.h:39:5: error: expected unqualified-id before numeric constant > In file included from ./ns3/icmpv4-l4-protocol.h:25:0, > from ./ns3/internet-module.h:18, > from ../scratch/koln9_1hr.cc:72: > ./ns3/icmpv4.h:64:26: error: non-member function ?uint8_t ns3::GetType()? cannot have cv-qualifier > uint8_t GetType (void) const; > ^ > ./ns3/icmpv4.h:69:26: error: non-member function ?uint8_t ns3::GetCode()? cannot have cv-qualifier > uint8_t GetCode (void) const; > ^ > ./ns3/icmpv4.h:76:17: error: expected unqualified-id before ?)? token > Icmpv4Header (); > ^ > ./ns3/icmpv4.h:77:26: error: declaration of ?~ns3::Icmpv4Header? as non-member > virtual ~Icmpv4Header (); > ^ > ./ns3/icmpv4.h:79:43: error: ?virtual? outside class declaration > virtual TypeId GetInstanceTypeId (void) const; > ^ > ./ns3/icmpv4.h:79:43: error: non-member function ?ns3::TypeId ns3::GetInstanceTypeId()? cannot have cv-qualifie > r > ./ns3/icmpv4.h:80:45: error: ?virtual? outside class declaration > virtual uint32_t GetSerializedSize (void) const; > ^ > ./ns3/icmpv4.h:80:45: error: non-member function ?uint32_t ns3::GetSerializedSize()? cannot have cv-qualifier > ./ns3/icmpv4.h:81:51: error: ?virtual? outside class declaration > virtual void Serialize (Buffer::Iterator start) const; > ^ > ./ns3/icmpv4.h:81:51: error: non-member function ?void ns3::Serialize(ns3::Buffer::Iterator)? cannot have cv-qu > alifier > ./ns3/icmpv4.h:82:55: error: ?virtual? outside class declaration > virtual uint32_t Deserialize (Buffer::Iterator start); > ^ > ./ns3/icmpv4.h:83:41: error: ?virtual? outside class declaration > virtual void Print (std::ostream &os) const; > ^ > ./ns3/icmpv4.h:83:41: error: non-member function ?void ns3::Print(std::ostream&)? cannot have cv-qualifier > ./ns3/icmpv4.h:85:1: error: expected unqualified-id before ?private? > private: > ^ > ./ns3/icmpv4.h:92:1: error: expected class-name before ?{? token > { > ^ > ./ns3/icmpv4.h:108:17: error: ?Ptr? has not been declared > void SetData (Ptr data); > ^ > ./ns3/icmpv4.h:108:20: error: expected ?,? or ?...? before ? void SetData (Ptr data); > ^ > ./ns3/icmpv4.h:136:10: error: ?TypeId? does not name a type > static TypeId GetTypeId (void); > ^ > ./ns3/icmpv4.h:139:11: error: ?TypeId? does not name a type > virtual TypeId GetInstanceTypeId (void) const; > ^ > ./ns3/icmpv4.h:141:27: error: ?Buffer? has not been declared > virtual void Serialize (Buffer::Iterator start) const; > ^ > ./ns3/icmpv4.h:141:44: error: expected ?,? or ?...? before ?start? > virtual void Serialize (Buffer::Iterator start) const; > ^ > ./ns3/icmpv4.h:142:33: error: ?Buffer? has not been declared > virtual uint32_t Deserialize (Buffer::Iterator start); > ^ > ./ns3/icmpv4.h:142:50: error: expected ?,? or ?...? before ?start? > virtual uint32_t Deserialize (Buffer::Iterator start); > ^ > ./ns3/icmpv4.h:152:1: error: expected class-name before ?{? token > { > ^ > ./ns3/icmpv4.h:167:10: error: ?TypeId? does not name a type > static TypeId GetTypeId (void); > ^ > ./ns3/icmpv4.h:186:17: error: ?Ptr? has not been declared > void SetData (Ptr data); > ^ > ./ns3/icmpv4.h:186:20: error: expected ?,? or ?...? before ? void SetData (Ptr data); > ^ > ./ns3/icmpv4.h:191:19: error: ?Ipv4Header? has not been declared > void SetHeader (Ipv4Header header); > ^ > ./ns3/icmpv4.h:202:3: error: ?Ipv4Header? does not name a type > Ipv4Header GetHeader (void) const; > ^ > ./ns3/icmpv4.h:205:11: error: ?TypeId? does not name a type > virtual TypeId GetInstanceTypeId (void) const; > ^ > ./ns3/icmpv4.h:207:27: error: ?Buffer? has not been declared > virtual void Serialize (Buffer::Iterator start) const; > ^ > ./ns3/icmpv4.h:207:44: error: expected ?,? or ?...? before ?start? > virtual void Serialize (Buffer::Iterator start) const; > ^ > ./ns3/icmpv4.h:208:33: error: ?Buffer? has not been declared > virtual uint32_t Deserialize (Buffer::Iterator start); > ^ > ./ns3/icmpv4.h:208:50: error: expected ?,? or ?...? before ?start? > virtual uint32_t Deserialize (Buffer::Iterator start); > ^ > ./ns3/icmpv4.h:212:3: error: ?Ipv4Header? does not name a type > Ipv4Header m_header; //!< carried IPv4 header > ^ > ./ns3/icmpv4.h:218:1: error: expected class-name before ?{? token > { > ^ > ./ns3/icmpv4.h:229:17: error: ?Ptr? has not been declared > void SetData (Ptr data); > ^ > ./ns3/icmpv4.h:229:20: error: expected ?,? or ?...? before ? void SetData (Ptr data); > ^ > ./ns3/icmpv4.h:234:19: error: ?Ipv4Header? has not been declared > void SetHeader (Ipv4Header header); > ^ > ./ns3/icmpv4.h:245:3: error: ?Ipv4Header? does not name a type > Ipv4Header GetHeader (void) const; > ^ > ./ns3/icmpv4.h:251:10: error: ?TypeId? does not name a type > static TypeId GetTypeId (void); > ^ > ./ns3/icmpv4.h:254:11: error: ?TypeId? does not name a type > virtual TypeId GetInstanceTypeId (void) const; > ^ > ./ns3/icmpv4.h:256:27: error: ?Buffer? has not been declared > virtual void Serialize (Buffer::Iterator start) const; > ^ > ./ns3/icmpv4.h:256:44: error: expected ?,? or ?...? before ?start? > virtual void Serialize (Buffer::Iterator start) const; > ^ > ./ns3/icmpv4.h:257:33: error: ?Buffer? has not been declared > virtual uint32_t Deserialize (Buffer::Iterator start); > ^ > ./ns3/icmpv4.h:257:50: error: expected ?,? or ?...? before ?start? > virtual uint32_t Deserialize (Buffer::Iterator start); > ^ > ./ns3/icmpv4.h:261:3: error: ?Ipv4Header? does not name a type > Ipv4Header m_header; //!< carried IPv4 header > ^ > ./ns3/icmpv4.h:265:1: error: expected declaration before ?}? token > } // namespace ns3 > ^ > ./ns3/icmpv4.h:75:17: warning: ?ns3::TypeId ns3::GetTypeId()? declared ?static? but never defined [-Wunused-fun > ction] > static TypeId GetTypeId (void); > ^ > > Waf: Leaving directory `/home/jkhan01/ndnSIM/ns-3/build' > Build failed > > > Thanks in advance. > -- > Kind Regards, > > Junaid > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From ertugruldogruluk at hotmail.com Fri Apr 15 13:57:07 2016 From: ertugruldogruluk at hotmail.com (Ertugrul DOGRULUK) Date: Fri, 15 Apr 2016 21:57:07 +0100 Subject: [ndnSIM] ndnSIM-ddos-interest-flooding- Installation issue In-Reply-To: <73EFC993-F13E-4113-8B8A-43664A98D31A@cs.ucla.edu> References: <73EFC993-F13E-4113-8B8A-43664A98D31A@cs.ucla.edu> Message-ID: Thanks Alex, you rock! Sent from my iPhone > On 15 Apr 2016, at 21:44, Alex Afanasyev wrote: > > Hi Ertugrul, > > This scenario was designed and implemented for the specific older version of ndnSIM (see README for the specific version). It is not possible to do the conversion easily, as you need to implement many things in different way with the new version of ndnSIM. > > As for error. If you cloned and then switched your current folder to the cloned repository, you shouldn't be getting this error. "waf" is just an python script that is part of the scenario repository. > > -- > Alex > >> On Apr 15, 2016, at 1:20 PM, Ertugrul DOGRULUK wrote: >> >> Dear All, >> >> I'm having a problem. I'm trying get When I entered './waf configure -d optimized' Im getting ' 'bash: ./waf: No such file or directory' error. >> I try to get this scenario for github. >> https://github.com/cawka/ndnSIM-ddos-interest-flooding >> >> I'm using 2.0 version. But author used it in 1.0 version. Is there anyway to fix this on 2.0 version or I supposed to run this scenario on 1.0? >> >> Thanks all. > From aa at CS.UCLA.EDU Fri Apr 15 13:58:08 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Fri, 15 Apr 2016 13:58:08 -0700 Subject: [ndnSIM] Changing the BW on Link during sim In-Reply-To: References: Message-ID: > On Apr 5, 2016, at 4:04 AM, Ahmed Sadek wrote: > > Dear All, > > I wanted to change the BW on link during sim, I found this method in a previous email Here > > so now I have this method: > > // Set the Data Rate of a given Device. > void setDataRate(Ptr nd, std::string DR) > { > Ptr < Channel > channel = nd->GetChannel(); > Ptr toDev = channel->GetDevice (1); > Ptr fromDev = channel->GetDevice (0); > > toDev->SetAttribute ("DataRate", StringValue (DR)); > fromDev->SetAttribute ("DataRate", StringValue (DR)); > } > > And was wondering, is there a simpler method to take advantage of point to point device method Here ( > pointToPoint.SetDeviceAttribute ("DataRate", StringValue ("5Mbps")); > ), can't we cast netDevice to PointToPointNetDevice or something similar ? You can. It is just "SetAttribute" method takes care of the fact that a specific NetDevice may not be PointToPointNetDevice and also not requires you to include point-to-point-net-device.h header file. But again, you absolutely can do the dynamic cast, just make sure that the return value is not null (e.g., it is indeed PointToPointNetDevice-derived class). --- Alex -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From asifcsep at gmail.com Sat Apr 16 04:27:26 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Sat, 16 Apr 2016 04:27:26 -0700 Subject: [ndnSIM] Adding route manually Message-ID: Dear All, How can i add a route manually from the forwarder.cpp file? My scenario is, after receiving data(onReceiveData()) with name "/data/R/00" from face i, I want to add a route manually (using fibhelper) for prefix "data/D/00" with face i as the faceid to reach the nexthop. I can use the Addroute() function but it is not possible to get the node(GetNode()) who is currently accessing the forwarder. Thanks Asif -------------- next part -------------- An HTML attachment was scrubbed... URL: From rozhnova.natalya at gmail.com Sat Apr 16 04:46:40 2016 From: rozhnova.natalya at gmail.com (Natalya Rozhnova) Date: Sat, 16 Apr 2016 13:46:40 +0200 Subject: [ndnSIM] Adding route manually In-Reply-To: References: Message-ID: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> Hi Asif, Why do you want to use the FibHelper while in the forwarder you can directly operate with FIB. Just add the desired output face to the FIB entry for the desired prefix? Best, Natalya > Le 16 avr. 2016 ? 13:27, Shahid Md. Asif Iqbal a ?crit : > > Dear All, > How can i add a route manually from the forwarder.cpp file? My scenario is, after receiving data(onReceiveData()) with name "/data/R/00" from face i, I want to add a route manually (using fibhelper) for prefix "data/D/00" with face i as the faceid to reach the nexthop. I can use the Addroute() function but it is not possible to get the node(GetNode()) who is currently accessing the forwarder. > > Thanks > Asif > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From asifcsep at gmail.com Sun Apr 17 06:34:54 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Sun, 17 Apr 2016 19:34:54 +0600 Subject: [ndnSIM] Adding route manually In-Reply-To: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> References: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> Message-ID: Thanks Natalya, Got your point and it worked for me. Regards Asif On Sat, Apr 16, 2016 at 5:46 PM, Natalya Rozhnova < rozhnova.natalya at gmail.com> wrote: > Hi Asif, > > Why do you want to use the FibHelper while in the forwarder you can > directly operate with FIB. > Just add the desired output face to the FIB entry for the desired prefix? > > Best, > Natalya > > > > Le 16 avr. 2016 ? 13:27, Shahid Md. Asif Iqbal a > ?crit : > > > > Dear All, > > How can i add a route manually from the forwarder.cpp file? My scenario > is, after receiving data(onReceiveData()) with name "/data/R/00" from face > i, I want to add a route manually (using fibhelper) for prefix "data/D/00" > with face i as the faceid to reach the nexthop. I can use the Addroute() > function but it is not possible to get the node(GetNode()) who is currently > accessing the forwarder. > > > > Thanks > > Asif > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Sun Apr 17 10:50:19 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Sun, 17 Apr 2016 23:50:19 +0600 Subject: [ndnSIM] Adding route manually In-Reply-To: References: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> Message-ID: Hi Natalya, Though it worked, but for a different scenario it is creating the following problem "Error in setting interest filter (/localhost/nfd/rib): request timed out "............ I have interest sending rate of 10/s. It is mainly appearing after 10 seconds of simulation run. Regards Asif On Sun, Apr 17, 2016 at 7:34 PM, Shahid Md. Asif Iqbal wrote: > Thanks Natalya, > Got your point and it worked for me. > > Regards > Asif > > On Sat, Apr 16, 2016 at 5:46 PM, Natalya Rozhnova < > rozhnova.natalya at gmail.com> wrote: > >> Hi Asif, >> >> Why do you want to use the FibHelper while in the forwarder you can >> directly operate with FIB. >> Just add the desired output face to the FIB entry for the desired prefix? >> >> Best, >> Natalya >> >> >> > Le 16 avr. 2016 ? 13:27, Shahid Md. Asif Iqbal a >> ?crit : >> > >> > Dear All, >> > How can i add a route manually from the forwarder.cpp file? My scenario >> is, after receiving data(onReceiveData()) with name "/data/R/00" from face >> i, I want to add a route manually (using fibhelper) for prefix "data/D/00" >> with face i as the faceid to reach the nexthop. I can use the Addroute() >> function but it is not possible to get the node(GetNode()) who is currently >> accessing the forwarder. >> > >> > Thanks >> > Asif >> > _______________________________________________ >> > ndnSIM mailing list >> > ndnSIM at lists.cs.ucla.edu >> > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From rk8000 at g.rit.edu Sun Apr 17 12:27:02 2016 From: rk8000 at g.rit.edu (Ravi Kumar Singh) Date: Sun, 17 Apr 2016 15:27:02 -0400 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> Message-ID: Hi Alex/Lixia/Team, Thank you so much for the help! Now, I am trying to use the ns3::ndn::cs::Freshness::Lru feature to use the freshness. But it seems its not giving desired results. Even after the freshness has expired the next interest is being served from the Cache server and not from the Origin Server. And as per the policy(ns3::ndn::cs::Freshness::Lru),it cache Data packets only for the time indicated by FreshnessPeriod. Thanks and Regards, Ravi Singh On Wed, Apr 13, 2016 at 9:41 PM, Alex Afanasyev wrote: > > On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh wrote: > > Forgot to include team. > > ---------- Forwarded message ---------- > From: Ravi Kumar Singh > Date: Wed, Apr 13, 2016 at 2:11 AM > Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with > different sequence number > To: Lixia Zhang > > > Thanks Lixia! I will try setting up a second consumer to request the > same data. > But, in our experiment, we need to see what happens when the same consumer > requests the same interest multiple times. I tried writing my own > implementation of a consumer, but still only the first interest is working > well and rest all interest are *not even* forwarding from the > consumer(same) itself. > > Following is a log of its operation ( with my own implemention of one > consumer sending three same interest): > > 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for > /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 > 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for > /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 > 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for > /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 > 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) > 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) > 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with > Data: /root/%FE%00 > 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) > 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for > /root/%FE%00 > > As, you can see from the log, only first interest is working file and rest > 2 interest are *not even* forwarding from the consumer itself. > > > Hi Ravi, > > What you see is correct and intentional behavior of an NDN router. You're > trying to send 3 interests for the same data at the exactly the same time. > As a result, these 3 interests will be aggregated into one and only one > will be sent further. Also, given that the same app (though the same face) > is sending those interests, only one data is returned back. > > Depending on what specific effect you want to observe, you may want to > spread out sending interests in time and/or request from different > simulated nodes (different app instances). > > --- > Alex > > Please suggest! > > Regards, > Ravi > > On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang wrote: > >> >> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh wrote: >> >> Hi Team, >> >> I am a Graduate student of Rochester Institue of Technology, New York. >> Currently, I am working on a research paper based on NDN along with my Prof. >> Currently, we want to simulate the NDN with your software NDNSIM. We want >> to simulate the scenario where the consumer is sending the same interest >> (same sequence number) multiple times to the producer so that the cache >> Server would serve the interest as it would have the content in its cache >> instead of serving the request from the producer. >> We tried googling but couldn't found any relevant link for this scenario. >> >> Requesting you to please help us on how we can simulate the scenario >> where the consumer is sending the same interest(same sequence number) >> instead of the incremental sequence number (default behaviour). >> >> >> it seems to me easier to set up a second consumer to request the same >> data, rather than forcing the same consumer to send repeated interest. >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From lixia at CS.UCLA.EDU Sun Apr 17 20:25:48 2016 From: lixia at CS.UCLA.EDU (Lixia Zhang) Date: Sun, 17 Apr 2016 20:25:48 -0700 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> Message-ID: <623C991F-4BBA-4339-AA3F-13C46B9B0856@cs.ucla.edu> > On Apr 17, 2016, at 12:27 PM, Ravi Kumar Singh wrote: > > Hi Alex/Lixia/Team, > > Thank you so much for the help! Now, I am trying to use the ns3::ndn::cs::Freshness::Lru feature to use the freshness. But it seems its not giving desired results. Even after the freshness has expired the next interest is being served from the Cache server and not from the Origin Server. And as per the policy(ns3::ndn::cs::Freshness::Lru),it cache Data packets only for the time indicated by FreshnessPeriod. did you set "must be fresh" in your interests packets? > Thanks and Regards, > Ravi Singh > > On Wed, Apr 13, 2016 at 9:41 PM, Alex Afanasyev > wrote: > >> On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh > wrote: >> >> Forgot to include team. >> >> ---------- Forwarded message ---------- >> From: Ravi Kumar Singh > >> Date: Wed, Apr 13, 2016 at 2:11 AM >> Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number >> To: Lixia Zhang > >> >> >> Thanks Lixia! I will try setting up a second consumer to request the same data. >> But, in our experiment, we need to see what happens when the same consumer requests the same interest multiple times. I tried writing my own implementation of a consumer, but still only the first interest is working well and rest all interest are not even forwarding from the consumer(same) itself. >> >> Following is a log of its operation ( with my own implemention of one consumer sending three same interest): >> >> 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 >> 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 >> 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 >> 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) >> 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) >> 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with Data: /root/%FE%00 >> 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) >> 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for /root/%FE%00 >> >> As, you can see from the log, only first interest is working file and rest 2 interest are not even forwarding from the consumer itself. > > Hi Ravi, > > What you see is correct and intentional behavior of an NDN router. You're trying to send 3 interests for the same data at the exactly the same time. As a result, these 3 interests will be aggregated into one and only one will be sent further. Also, given that the same app (though the same face) is sending those interests, only one data is returned back. > > Depending on what specific effect you want to observe, you may want to spread out sending interests in time and/or request from different simulated nodes (different app instances). > > --- > Alex > >> Please suggest! >> >> Regards, >> Ravi >> >> On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang > wrote: >> >>> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh > wrote: >>> >>> Hi Team, >>> >>> I am a Graduate student of Rochester Institue of Technology, New York. Currently, I am working on a research paper based on NDN along with my Prof. >>> Currently, we want to simulate the NDN with your software NDNSIM. We want to simulate the scenario where the consumer is sending the same interest (same sequence number) multiple times to the producer so that the cache Server would serve the interest as it would have the content in its cache instead of serving the request from the producer. >>> We tried googling but couldn't found any relevant link for this scenario. >>> >>> Requesting you to please help us on how we can simulate the scenario where the consumer is sending the same interest(same sequence number) instead of the incremental sequence number (default behaviour). >> >> it seems to me easier to set up a second consumer to request the same data, rather than forcing the same consumer to send repeated interest. > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From zhsupperviol at gmail.com Sun Apr 17 22:46:15 2016 From: zhsupperviol at gmail.com (=?UTF-8?B?5p2o5Lyf5a6P?=) Date: Mon, 18 Apr 2016 13:46:15 +0800 Subject: [ndnSIM] An Error while running ndnsim 2.1 Message-ID: <571474A7.9000003@gmail.com> Hi, I try to run the ndnsim 2.1 today. However, there is an error occurs: terminate called after throwing an instance of 'boost::exception_detail::clone_impl >' what(): Error in setting interest filter (/localhost/nfd/rib): request timed out. I was curious because this error has never occurred before. Could anyone give me some hints about where I went wrong. Weihong Yang From rk8000 at g.rit.edu Sun Apr 17 23:54:28 2016 From: rk8000 at g.rit.edu (Ravi Kumar Singh) Date: Mon, 18 Apr 2016 02:54:28 -0400 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: <623C991F-4BBA-4339-AA3F-13C46B9B0856@cs.ucla.edu> References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> <623C991F-4BBA-4339-AA3F-13C46B9B0856@cs.ucla.edu> Message-ID: Hi Lixia, No, I am not aware where we need to set this "must be fresh". I just followed the below link: https://github.com/cawka/ndnSIM-examples/blob/master/examples/ndn-simple-with-content-freshness.cc and changed like below: ccnxHelper.SetContentStore ("ns3::ndn::cs::Freshness::Lru","MaxSize", "2"); and producerHelper.SetAttribute ("Freshness", TimeValue (Seconds (2.0))); Please let me know where exactly we have to set "must be fresh" or anything we need to do? Thanks and Regards, Ravi Kumar Singh On Sun, Apr 17, 2016 at 11:25 PM, Lixia Zhang wrote: > > On Apr 17, 2016, at 12:27 PM, Ravi Kumar Singh wrote: > > Hi Alex/Lixia/Team, > > Thank you so much for the help! Now, I am trying to use the > ns3::ndn::cs::Freshness::Lru feature to use the freshness. But it seems > its not giving desired results. Even after the freshness has expired the > next interest is being served from the Cache server and not from the Origin > Server. And as per the policy(ns3::ndn::cs::Freshness::Lru),it cache Data > packets only for the time indicated by FreshnessPeriod. > > > did you set "must be fresh" in your interests packets? > > Thanks and Regards, > Ravi Singh > > On Wed, Apr 13, 2016 at 9:41 PM, Alex Afanasyev wrote: > >> >> On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh wrote: >> >> Forgot to include team. >> >> ---------- Forwarded message ---------- >> From: Ravi Kumar Singh >> Date: Wed, Apr 13, 2016 at 2:11 AM >> Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with >> different sequence number >> To: Lixia Zhang >> >> >> Thanks Lixia! I will try setting up a second consumer to request the >> same data. >> But, in our experiment, we need to see what happens when the same >> consumer requests the same interest multiple times. I tried writing my own >> implementation of a consumer, but still only the first interest is working >> well and rest all interest are *not even* forwarding from the >> consumer(same) itself. >> >> Following is a log of its operation ( with my own implemention of one >> consumer sending three same interest): >> >> 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for >> /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 >> 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for >> /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 >> 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for >> /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 >> 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) >> 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) >> 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with >> Data: /root/%FE%00 >> 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) >> 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for >> /root/%FE%00 >> >> As, you can see from the log, only first interest is working file and >> rest 2 interest are *not even* forwarding from the consumer itself. >> >> >> Hi Ravi, >> >> What you see is correct and intentional behavior of an NDN router. >> You're trying to send 3 interests for the same data at the exactly the same >> time. As a result, these 3 interests will be aggregated into one and only >> one will be sent further. Also, given that the same app (though the same >> face) is sending those interests, only one data is returned back. >> >> Depending on what specific effect you want to observe, you may want to >> spread out sending interests in time and/or request from different >> simulated nodes (different app instances). >> >> --- >> Alex >> >> Please suggest! >> >> Regards, >> Ravi >> >> On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang wrote: >> >>> >>> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh wrote: >>> >>> Hi Team, >>> >>> I am a Graduate student of Rochester Institue of Technology, New York. >>> Currently, I am working on a research paper based on NDN along with my Prof. >>> Currently, we want to simulate the NDN with your software NDNSIM. We >>> want to simulate the scenario where the consumer is sending the same >>> interest (same sequence number) multiple times to the producer so that the >>> cache Server would serve the interest as it would have the content in its >>> cache instead of serving the request from the producer. >>> We tried googling but couldn't found any relevant link for this scenario. >>> >>> Requesting you to please help us on how we can simulate the scenario >>> where the consumer is sending the same interest(same sequence number) >>> instead of the incremental sequence number (default behaviour). >>> >>> >>> it seems to me easier to set up a second consumer to request the same >>> data, rather than forcing the same consumer to send repeated interest. >>> >> >> > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Mon Apr 18 03:23:59 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Mon, 18 Apr 2016 16:23:59 +0600 Subject: [ndnSIM] Adding route manually In-Reply-To: References: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> Message-ID: Dear All, Experiencing the following error after adding route manually, and more importantly the error occurs after 10 seconds of simulation for each scenario and for every prefix. terminate called after throwing an instance of 'boost::exception_detail::clone_impl >' what(): Error in setting interest filter (/localhost/nfd/rib): request timed out I use the following code segment to add route manually shared_ptr face = const_pointer_cast(inFace.shared_from_this()); shared_ptr fibEntry = m_fib.insert(dataName).first;// insert prefix fibEntry->addNextHop(face, 0); Any clue would be really helpful. Thanks Asif On Sun, Apr 17, 2016 at 11:50 PM, Shahid Md. Asif Iqbal wrote: > Hi Natalya, > Though it worked, but for a different scenario it is creating the > following problem > > "Error in setting interest filter (/localhost/nfd/rib): request timed out > "............ > > I have interest sending rate of 10/s. > It is mainly appearing after 10 seconds of simulation run. > > Regards > Asif > > On Sun, Apr 17, 2016 at 7:34 PM, Shahid Md. Asif Iqbal > wrote: > >> Thanks Natalya, >> Got your point and it worked for me. >> >> Regards >> Asif >> >> On Sat, Apr 16, 2016 at 5:46 PM, Natalya Rozhnova < >> rozhnova.natalya at gmail.com> wrote: >> >>> Hi Asif, >>> >>> Why do you want to use the FibHelper while in the forwarder you can >>> directly operate with FIB. >>> Just add the desired output face to the FIB entry for the desired prefix? >>> >>> Best, >>> Natalya >>> >>> >>> > Le 16 avr. 2016 ? 13:27, Shahid Md. Asif Iqbal a >>> ?crit : >>> > >>> > Dear All, >>> > How can i add a route manually from the forwarder.cpp file? My >>> scenario is, after receiving data(onReceiveData()) with name "/data/R/00" >>> from face i, I want to add a route manually (using fibhelper) for prefix >>> "data/D/00" with face i as the faceid to reach the nexthop. I can use the >>> Addroute() function but it is not possible to get the node(GetNode()) who >>> is currently accessing the forwarder. >>> > >>> > Thanks >>> > Asif >>> > _______________________________________________ >>> > ndnSIM mailing list >>> > ndnSIM at lists.cs.ucla.edu >>> > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >>> >>> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Mon Apr 18 09:27:35 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Mon, 18 Apr 2016 09:27:35 -0700 Subject: [ndnSIM] Adding route manually In-Reply-To: References: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> Message-ID: <34539F4B-B61D-49A6-B739-EE144FAFF216@cs.ucla.edu> Hi Asif, please use the FIB helper instead of trying to modify the FIB directly. Let me know if that works: https://github.com/named-data-ndnSIM/ndnSIM/blob/a4915caa0c4121f2dd87fd3d7cc3b6eb91632f16/examples/ndn-congestion-alt-topo-plugin.cpp#L118-L132 Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 18, 2016, at 3:23 AM, Shahid Md. Asif Iqbal wrote: > > Dear All, > Experiencing the following error after adding route manually, and more importantly the error occurs after 10 seconds of simulation for each scenario and for every prefix. > > terminate called after throwing an instance of 'boost::exception_detail::clone_impl >' > what(): Error in setting interest filter (/localhost/nfd/rib): request timed out > > I use the following code segment to add route manually > > shared_ptr face = const_pointer_cast(inFace.shared_from_this()); > > shared_ptr fibEntry = m_fib.insert(dataName).first;// insert prefix > fibEntry->addNextHop(face, 0); > > Any clue would be really helpful. > > Thanks > Asif > > On Sun, Apr 17, 2016 at 11:50 PM, Shahid Md. Asif Iqbal > wrote: > Hi Natalya, > Though it worked, but for a different scenario it is creating the following problem > > "Error in setting interest filter (/localhost/nfd/rib): request timed out "............ > > I have interest sending rate of 10/s. > It is mainly appearing after 10 seconds of simulation run. > > Regards > Asif > > On Sun, Apr 17, 2016 at 7:34 PM, Shahid Md. Asif Iqbal > wrote: > Thanks Natalya, > Got your point and it worked for me. > > Regards > Asif > > On Sat, Apr 16, 2016 at 5:46 PM, Natalya Rozhnova > wrote: > Hi Asif, > > Why do you want to use the FibHelper while in the forwarder you can directly operate with FIB. > Just add the desired output face to the FIB entry for the desired prefix? > > Best, > Natalya > > > > Le 16 avr. 2016 ? 13:27, Shahid Md. Asif Iqbal > a ?crit : > > > > Dear All, > > How can i add a route manually from the forwarder.cpp file? My scenario is, after receiving data(onReceiveData()) with name "/data/R/00" from face i, I want to add a route manually (using fibhelper) for prefix "data/D/00" with face i as the faceid to reach the nexthop. I can use the Addroute() function but it is not possible to get the node(GetNode()) who is currently accessing the forwarder. > > > > Thanks > > Asif > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Mon Apr 18 09:33:58 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Mon, 18 Apr 2016 22:33:58 +0600 Subject: [ndnSIM] Adding route manually In-Reply-To: <34539F4B-B61D-49A6-B739-EE144FAFF216@cs.ucla.edu> References: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> <34539F4B-B61D-49A6-B739-EE144FAFF216@cs.ucla.edu> Message-ID: Thanks Spyridon, But, I need to add route from the forwarder.cpp, is there any way to find who (which node) is currently operating the forwarder? Thanks Asif On Mon, Apr 18, 2016 at 10:27 PM, Spyridon (Spyros) Mastorakis < mastorakis at cs.ucla.edu> wrote: > Hi Asif, > > please use the FIB helper instead of trying to modify the FIB directly. > Let me know if that works: > > > https://github.com/named-data-ndnSIM/ndnSIM/blob/a4915caa0c4121f2dd87fd3d7cc3b6eb91632f16/examples/ndn-congestion-alt-topo-plugin.cpp#L118-L132 > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > > > > On Apr 18, 2016, at 3:23 AM, Shahid Md. Asif Iqbal > wrote: > > Dear All, > Experiencing the following error after adding route manually, and more > importantly the error occurs after 10 seconds of simulation for each > scenario and for every prefix. > > terminate called after throwing an instance of > 'boost::exception_detail::clone_impl > >' > what(): Error in setting interest filter (/localhost/nfd/rib): request > timed out > > I use the following code segment to add route manually > > shared_ptr face = > const_pointer_cast(inFace.shared_from_this()); > > shared_ptr fibEntry = m_fib.insert(dataName).first;// insert > prefix > fibEntry->addNextHop(face, 0); > > Any clue would be really helpful. > > Thanks > Asif > > On Sun, Apr 17, 2016 at 11:50 PM, Shahid Md. Asif Iqbal < > asifcsep at gmail.com> wrote: > >> Hi Natalya, >> Though it worked, but for a different scenario it is creating the >> following problem >> >> "Error in setting interest filter (/localhost/nfd/rib): request timed out >> "............ >> >> I have interest sending rate of 10/s. >> It is mainly appearing after 10 seconds of simulation run. >> >> Regards >> Asif >> >> On Sun, Apr 17, 2016 at 7:34 PM, Shahid Md. Asif Iqbal < >> asifcsep at gmail.com> wrote: >> >>> Thanks Natalya, >>> Got your point and it worked for me. >>> >>> Regards >>> Asif >>> >>> On Sat, Apr 16, 2016 at 5:46 PM, Natalya Rozhnova < >>> rozhnova.natalya at gmail.com> wrote: >>> >>>> Hi Asif, >>>> >>>> Why do you want to use the FibHelper while in the forwarder you can >>>> directly operate with FIB. >>>> Just add the desired output face to the FIB entry for the desired >>>> prefix? >>>> >>>> Best, >>>> Natalya >>>> >>>> >>>> > Le 16 avr. 2016 ? 13:27, Shahid Md. Asif Iqbal >>>> a ?crit : >>>> > >>>> > Dear All, >>>> > How can i add a route manually from the forwarder.cpp file? My >>>> scenario is, after receiving data(onReceiveData()) with name "/data/R/00" >>>> from face i, I want to add a route manually (using fibhelper) for prefix >>>> "data/D/00" with face i as the faceid to reach the nexthop. I can use the >>>> Addroute() function but it is not possible to get the node(GetNode()) who >>>> is currently accessing the forwarder. >>>> > >>>> > Thanks >>>> > Asif >>>> > _______________________________________________ >>>> > ndnSIM mailing list >>>> > ndnSIM at lists.cs.ucla.edu >>>> > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >>>> >>>> >>> >> > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Mon Apr 18 10:48:16 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Mon, 18 Apr 2016 10:48:16 -0700 Subject: [ndnSIM] Adding route manually In-Reply-To: References: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> <34539F4B-B61D-49A6-B739-EE144FAFF216@cs.ucla.edu> Message-ID: You could use the global node id assigned by NS3: Simulator::GetContext() Take a look here: http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-December/002285.html The thing you are doing right now could lead to some privilege conflicts with the managers of NFD. That might be the reason you get this timeout. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 18, 2016, at 9:33 AM, Shahid Md. Asif Iqbal wrote: > > Thanks Spyridon, > But, I need to add route from the forwarder.cpp, is there any way to find who (which node) is currently operating the forwarder? > > Thanks > Asif > > On Mon, Apr 18, 2016 at 10:27 PM, Spyridon (Spyros) Mastorakis > wrote: > Hi Asif, > > please use the FIB helper instead of trying to modify the FIB directly. Let me know if that works: > > https://github.com/named-data-ndnSIM/ndnSIM/blob/a4915caa0c4121f2dd87fd3d7cc3b6eb91632f16/examples/ndn-congestion-alt-topo-plugin.cpp#L118-L132 > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > > > >> On Apr 18, 2016, at 3:23 AM, Shahid Md. Asif Iqbal > wrote: >> >> Dear All, >> Experiencing the following error after adding route manually, and more importantly the error occurs after 10 seconds of simulation for each scenario and for every prefix. >> >> terminate called after throwing an instance of 'boost::exception_detail::clone_impl >' >> what(): Error in setting interest filter (/localhost/nfd/rib): request timed out >> >> I use the following code segment to add route manually >> >> shared_ptr face = const_pointer_cast(inFace.shared_from_this()); >> >> shared_ptr fibEntry = m_fib.insert(dataName).first;// insert prefix >> fibEntry->addNextHop(face, 0); >> >> Any clue would be really helpful. >> >> Thanks >> Asif >> >> On Sun, Apr 17, 2016 at 11:50 PM, Shahid Md. Asif Iqbal > wrote: >> Hi Natalya, >> Though it worked, but for a different scenario it is creating the following problem >> >> "Error in setting interest filter (/localhost/nfd/rib): request timed out "............ >> >> I have interest sending rate of 10/s. >> It is mainly appearing after 10 seconds of simulation run. >> >> Regards >> Asif >> >> On Sun, Apr 17, 2016 at 7:34 PM, Shahid Md. Asif Iqbal > wrote: >> Thanks Natalya, >> Got your point and it worked for me. >> >> Regards >> Asif >> >> On Sat, Apr 16, 2016 at 5:46 PM, Natalya Rozhnova > wrote: >> Hi Asif, >> >> Why do you want to use the FibHelper while in the forwarder you can directly operate with FIB. >> Just add the desired output face to the FIB entry for the desired prefix? >> >> Best, >> Natalya >> >> >> > Le 16 avr. 2016 ? 13:27, Shahid Md. Asif Iqbal > a ?crit : >> > >> > Dear All, >> > How can i add a route manually from the forwarder.cpp file? My scenario is, after receiving data(onReceiveData()) with name "/data/R/00" from face i, I want to add a route manually (using fibhelper) for prefix "data/D/00" with face i as the faceid to reach the nexthop. I can use the Addroute() function but it is not possible to get the node(GetNode()) who is currently accessing the forwarder. >> > >> > Thanks >> > Asif >> > _______________________________________________ >> > ndnSIM mailing list >> > ndnSIM at lists.cs.ucla.edu >> > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >> >> >> >> >> _______________________________________________ >> ndnSIM mailing list >> ndnSIM at lists.cs.ucla.edu >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Mon Apr 18 22:25:52 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Tue, 19 Apr 2016 11:25:52 +0600 Subject: [ndnSIM] Adding route manually In-Reply-To: References: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> <34539F4B-B61D-49A6-B739-EE144FAFF216@cs.ucla.edu> Message-ID: Dear Spyridon, I have used the following steps to add route while operating in the forwarder.cpp, but unfortunately the problem of timeout exists. ns3::Ptr thisNode; thisNode = ns3::NodeList::GetNode(ns3::Simulator::GetContext()); shared_ptr face = const_pointer_cast(inFace.shared_from_this()); ns3::ndn::FibHelper::AddRoute(thisNode, dataName, inFace.getId(), 0); Thanks Asif On Mon, Apr 18, 2016 at 11:48 PM, Spyridon (Spyros) Mastorakis < mastorakis at cs.ucla.edu> wrote: > You could use the global node id assigned by NS3: > > Simulator::GetContext() > > Take a look here: > > http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-December/002285.html > > The thing you are doing right now could lead to some privilege conflicts > with the managers of NFD. That might be the reason you get this timeout. > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > > > > On Apr 18, 2016, at 9:33 AM, Shahid Md. Asif Iqbal > wrote: > > Thanks Spyridon, > But, I need to add route from the forwarder.cpp, is there any way to find > who (which node) is currently operating the forwarder? > > Thanks > Asif > > On Mon, Apr 18, 2016 at 10:27 PM, Spyridon (Spyros) Mastorakis < > mastorakis at cs.ucla.edu> wrote: > >> Hi Asif, >> >> please use the FIB helper instead of trying to modify the FIB directly. >> Let me know if that works: >> >> >> https://github.com/named-data-ndnSIM/ndnSIM/blob/a4915caa0c4121f2dd87fd3d7cc3b6eb91632f16/examples/ndn-congestion-alt-topo-plugin.cpp#L118-L132 >> >> Spyridon (Spyros) Mastorakis >> Personal Website: http://cs.ucla.edu/~mastorakis/ >> Internet Research Laboratory >> Computer Science Department >> UCLA >> >> >> >> >> On Apr 18, 2016, at 3:23 AM, Shahid Md. Asif Iqbal >> wrote: >> >> Dear All, >> Experiencing the following error after adding route manually, and more >> importantly the error occurs after 10 seconds of simulation for each >> scenario and for every prefix. >> >> terminate called after throwing an instance of >> 'boost::exception_detail::clone_impl >> >' >> what(): Error in setting interest filter (/localhost/nfd/rib): request >> timed out >> >> I use the following code segment to add route manually >> >> shared_ptr face = >> const_pointer_cast(inFace.shared_from_this()); >> >> shared_ptr fibEntry = m_fib.insert(dataName).first;// >> insert prefix >> fibEntry->addNextHop(face, 0); >> >> Any clue would be really helpful. >> >> Thanks >> Asif >> >> On Sun, Apr 17, 2016 at 11:50 PM, Shahid Md. Asif Iqbal < >> asifcsep at gmail.com> wrote: >> >>> Hi Natalya, >>> Though it worked, but for a different scenario it is creating the >>> following problem >>> >>> "Error in setting interest filter (/localhost/nfd/rib): request timed >>> out "............ >>> >>> I have interest sending rate of 10/s. >>> It is mainly appearing after 10 seconds of simulation run. >>> >>> Regards >>> Asif >>> >>> On Sun, Apr 17, 2016 at 7:34 PM, Shahid Md. Asif Iqbal < >>> asifcsep at gmail.com> wrote: >>> >>>> Thanks Natalya, >>>> Got your point and it worked for me. >>>> >>>> Regards >>>> Asif >>>> >>>> On Sat, Apr 16, 2016 at 5:46 PM, Natalya Rozhnova < >>>> rozhnova.natalya at gmail.com> wrote: >>>> >>>>> Hi Asif, >>>>> >>>>> Why do you want to use the FibHelper while in the forwarder you can >>>>> directly operate with FIB. >>>>> Just add the desired output face to the FIB entry for the desired >>>>> prefix? >>>>> >>>>> Best, >>>>> Natalya >>>>> >>>>> >>>>> > Le 16 avr. 2016 ? 13:27, Shahid Md. Asif Iqbal >>>>> a ?crit : >>>>> > >>>>> > Dear All, >>>>> > How can i add a route manually from the forwarder.cpp file? My >>>>> scenario is, after receiving data(onReceiveData()) with name "/data/R/00" >>>>> from face i, I want to add a route manually (using fibhelper) for prefix >>>>> "data/D/00" with face i as the faceid to reach the nexthop. I can use the >>>>> Addroute() function but it is not possible to get the node(GetNode()) who >>>>> is currently accessing the forwarder. >>>>> > >>>>> > Thanks >>>>> > Asif >>>>> > _______________________________________________ >>>>> > ndnSIM mailing list >>>>> > ndnSIM at lists.cs.ucla.edu >>>>> > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >>>>> >>>>> >>>> >>> >> _______________________________________________ >> ndnSIM mailing list >> ndnSIM at lists.cs.ucla.edu >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >> >> >> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From z.rezaiefar at yahoo.com Tue Apr 19 05:58:31 2016 From: z.rezaiefar at yahoo.com (Zeinab Rezaiefar) Date: Tue, 19 Apr 2016 12:58:31 +0000 (UTC) Subject: [ndnSIM] relation between interface and connection References: <1254276434.3284371.1461070711941.JavaMail.yahoo.ref@mail.yahoo.com> Message-ID: <1254276434.3284371.1461070711941.JavaMail.yahoo@mail.yahoo.com> Hello everyone,I would like to say that I think that number of interfaces in one node related to number of its connection (in the wired scenario)However, in the scenario that I run, node?1 has just one direct connect to node 2 . In my point of view , this node should have one interface, however, when I print interface of the interest message that is received in forwarding function. ( using inFace->GetId () for interface related to the?interest message and node->GetId () for the node id).??I recognized that?node?1 received interest messages from interface1 and 0. however, I expected that this node just received? interest messages from?one interface.? Is there anybody knows why this thing happens or?what mistake I am doing?Thanks in advancebest regards?? -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Tue Apr 19 14:14:08 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Tue, 19 Apr 2016 14:14:08 -0700 Subject: [ndnSIM] relation between interface and connection In-Reply-To: <1254276434.3284371.1461070711941.JavaMail.yahoo@mail.yahoo.com> References: <1254276434.3284371.1461070711941.JavaMail.yahoo.ref@mail.yahoo.com> <1254276434.3284371.1461070711941.JavaMail.yahoo@mail.yahoo.com> Message-ID: <073EAED5-6C8B-45E9-B364-FAA7928AEC99@cs.ucla.edu> Hi, there is always one internal interface that is connected to the local NFD instance. Hope that this helps. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 19, 2016, at 5:58 AM, Zeinab Rezaiefar wrote: > > Hello everyone, > I would like to say that I think that number of interfaces in one node related to number of its connection (in the wired scenario) > However, in the scenario that I run, node 1 has just one direct connect to node 2 . In my point of view , this node should have one interface, however, when I print interface of the interest message that is received in forwarding function. ( using inFace->GetId () for interface related to the interest message and node->GetId () for the node id). I recognized that node 1 received interest messages from interface1 and 0. > however, I expected that this node just received interest messages from one interface. Is there anybody knows why this thing happens or what mistake I am doing? > Thanks in advance > best regards > -------------- next part -------------- An HTML attachment was scrubbed... URL: From aa at CS.UCLA.EDU Tue Apr 19 18:48:36 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Tue, 19 Apr 2016 18:48:36 -0700 Subject: [ndnSIM] An Error while running ndnsim 2.1 In-Reply-To: <571474A7.9000003@gmail.com> References: <571474A7.9000003@gmail.com> Message-ID: <348628AE-32EC-4DC9-8BD3-ED6CE8671871@cs.ucla.edu> > On Apr 17, 2016, at 10:46 PM, ??? wrote: > > Hi, > I try to run the ndnsim 2.1 today. > > However, there is an error occurs: > terminate called after throwing an instance of 'boost::exception_detail::clone_impl >' > what(): Error in setting interest filter (/localhost/nfd/rib): request timed out. > > I was curious because this error has never occurred before. Could anyone give me some hints about where I went wrong. > > Weihong Yang Wild guess, but try to schedule your application not at time moment 0 (this is default), but at time moment 1s (or anything else except 0). This should fix your problem. -- Alex -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Tue Apr 19 18:58:15 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Tue, 19 Apr 2016 18:58:15 -0700 Subject: [ndnSIM] relation between interface and connection In-Reply-To: <073EAED5-6C8B-45E9-B364-FAA7928AEC99@cs.ucla.edu> References: <1254276434.3284371.1461070711941.JavaMail.yahoo.ref@mail.yahoo.com> <1254276434.3284371.1461070711941.JavaMail.yahoo@mail.yahoo.com> <073EAED5-6C8B-45E9-B364-FAA7928AEC99@cs.ucla.edu> Message-ID: <2AFCD5A8-B982-4753-B10F-2B44F417E251@cs.ucla.edu> Hi Zeinab, Which version of ndnSIM you're using. For ndnSIM 1.0 your reasoning is almost correct. There could also be face related to the application, if you have an application installed. If a node doesn't have an application, then there should be just one face per simulated connection. ndnSIM 2, in addition to faces that correspond to network interfaces and applications, there are also several internal faces (internal face for management, face to represent content store, null face). --- Alex >> On Apr 19, 2016, at 5:58 AM, Zeinab Rezaiefar wrote: >> >> Hello everyone, >> I would like to say that I think that number of interfaces in one node related to number of its connection (in the wired scenario) >> However, in the scenario that I run, node 1 has just one direct connect to node 2 . In my point of view , this node should have one interface, however, when I print interface of the interest message that is received in forwarding function. ( using inFace->GetId () for interface related to the interest message and node->GetId () for the node id). I recognized that node 1 received interest messages from interface1 and 0. >> however, I expected that this node just received interest messages from one interface. Is there anybody knows why this thing happens or what mistake I am doing? >> Thanks in advance >> best regards -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From z.rezaiefar at yahoo.com Tue Apr 19 19:53:07 2016 From: z.rezaiefar at yahoo.com (Zeinab Rezaiefar) Date: Wed, 20 Apr 2016 02:53:07 +0000 (UTC) Subject: [ndnSIM] relation between interface and connection In-Reply-To: <2AFCD5A8-B982-4753-B10F-2B44F417E251@cs.ucla.edu> References: <2AFCD5A8-B982-4753-B10F-2B44F417E251@cs.ucla.edu> Message-ID: <1619550522.3865210.1461120787869.JavaMail.yahoo@mail.yahoo.com> Hello Alex and Spyridon,firstly I would like to say thanks for your helping and your nice explanation. I am using ndnsim version1. as you mentioned, in every node that I install application, I have another interface too. however, my problem is that how I can recognize the? difference between internal interface and the external interfaces?( interface?which?a node?receives packet from its neighbors) ?in the code?? since I decide to forward packets based on from which interface I have received this packet ( which shows which peer has sent this packet), it is so important for me to distinguish between internal and external interfaces.moreover, is there any field like hop-count that shows this message is?from?other nodes ( form the peer of the node ) and it is not generated by this node?I am looking forward to hearing? you.thanks in advancebest regards On Wednesday, April 20, 2016 10:58 AM, Alex Afanasyev wrote: Hi Zeinab, Which version of ndnSIM you're using.? For ndnSIM 1.0 your reasoning is almost correct.? There could also be face related to the application, if you have an application installed.? If a node doesn't have an application, then there should be just one face per simulated connection. ndnSIM 2, in addition to faces that correspond to network interfaces and applications, there are also several internal faces (internal face for management, face to represent content store, null face). --- Alex >> On Apr 19, 2016, at 5:58 AM, Zeinab Rezaiefar wrote: >> >> Hello everyone, >> I would like to say that I think that number of interfaces in one node related to number of its connection (in the wired scenario) >> However, in the scenario that I run, node 1 has just one direct connect to node 2 . In my point of view , this node should have one interface, however, when I print interface of the interest message that is received in forwarding function. ( using inFace->GetId () for interface related to the interest message and node->GetId () for the node id).? I recognized that node 1 received interest messages from interface1 and 0. >> however, I expected that this node just received? interest messages from one interface.? Is there anybody knows why this thing happens or what mistake I am doing? >> Thanks in advance >> best regards -------------- next part -------------- An HTML attachment was scrubbed... URL: From lixia at CS.UCLA.EDU Tue Apr 19 22:03:18 2016 From: lixia at CS.UCLA.EDU (Lixia Zhang) Date: Tue, 19 Apr 2016 22:03:18 -0700 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> <623C991F-4BBA-4339-AA3F-13C46B9B0856@cs.ucla.edu> <698C063F-B1DD-49FF-A4B8-059714947999@cs.ucla.edu> Message-ID: <8EDD49CF-B8FE-409B-A33F-B04B1B09D6EB@cs.ucla.edu> > On Apr 18, 2016, at 10:40 AM, Spyridon (Spyros) Mastorakis wrote: > > Hi Ravi, > > that looks right to me. > > There is also something else that you need to do: > > your consumer application should express Interests with the ?mustBeFresh? selector set in order to retrieve only ?fresh? data: > > https://github.com/named-data-ndnSIM/ndn-cxx/blob/ndn-cxx-0.3.4-ndnSIM/src/interest.hpp#L417-L423 > > To this end you should do something like that: > > Interest i(name); > i.setMustBeFresh(true); > ... > ? > m_face->onReceiveInterest(*interest); > > Hope that this helps. > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA copied the list here. Ravi, hopefully your issue was resolved? >> On Apr 17, 2016, at 11:54 PM, Ravi Kumar Singh > wrote: >> >> Hi Lixia, >> >> No, I am not aware where we need to set this "must be fresh". I just followed the below link: >> >> https://github.com/cawka/ndnSIM-examples/blob/master/examples/ndn-simple-with-content-freshness.cc >> >> and changed like below: >> >> ccnxHelper.SetContentStore ("ns3::ndn::cs::Freshness::Lru","MaxSize", "2"); >> >> and >> producerHelper.SetAttribute ("Freshness", TimeValue (Seconds (2.0))); >> >> Please let me know where exactly we have to set "must be fresh" or anything we need to do? >> >> Thanks and Regards, >> Ravi Kumar Singh >> >> On Sun, Apr 17, 2016 at 11:25 PM, Lixia Zhang > wrote: >> >>> On Apr 17, 2016, at 12:27 PM, Ravi Kumar Singh > wrote: >>> >>> Hi Alex/Lixia/Team, >>> >>> Thank you so much for the help! Now, I am trying to use the ns3::ndn::cs::Freshness::Lru feature to use the freshness. But it seems its not giving desired results. Even after the freshness has expired the next interest is being served from the Cache server and not from the Origin Server. And as per the policy(ns3::ndn::cs::Freshness::Lru),it cache Data packets only for the time indicated by FreshnessPeriod. >> >> did you set "must be fresh" in your interests packets? >> >>> Thanks and Regards, >>> Ravi Singh >>> >>> On Wed, Apr 13, 2016 at 9:41 PM, Alex Afanasyev > wrote: >>> >>>> On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh > wrote: >>>> >>>> Forgot to include team. >>>> >>>> ---------- Forwarded message ---------- >>>> From: Ravi Kumar Singh > >>>> Date: Wed, Apr 13, 2016 at 2:11 AM >>>> Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number >>>> To: Lixia Zhang > >>>> >>>> >>>> Thanks Lixia! I will try setting up a second consumer to request the same data. >>>> But, in our experiment, we need to see what happens when the same consumer requests the same interest multiple times. I tried writing my own implementation of a consumer, but still only the first interest is working well and rest all interest are not even forwarding from the consumer(same) itself. >>>> >>>> Following is a log of its operation ( with my own implemention of one consumer sending three same interest): >>>> >>>> 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 >>>> 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 >>>> 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 >>>> 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) >>>> 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) >>>> 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with Data: /root/%FE%00 >>>> 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) >>>> 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for /root/%FE%00 >>>> >>>> As, you can see from the log, only first interest is working file and rest 2 interest are not even forwarding from the consumer itself. >>> >>> Hi Ravi, >>> >>> What you see is correct and intentional behavior of an NDN router. You're trying to send 3 interests for the same data at the exactly the same time. As a result, these 3 interests will be aggregated into one and only one will be sent further. Also, given that the same app (though the same face) is sending those interests, only one data is returned back. >>> >>> Depending on what specific effect you want to observe, you may want to spread out sending interests in time and/or request from different simulated nodes (different app instances). >>> >>> --- >>> Alex >>> >>>> Please suggest! >>>> >>>> Regards, >>>> Ravi >>>> >>>> On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang > wrote: >>>> >>>>> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh > wrote: >>>>> >>>>> Hi Team, >>>>> >>>>> I am a Graduate student of Rochester Institue of Technology, New York. Currently, I am working on a research paper based on NDN along with my Prof. >>>>> Currently, we want to simulate the NDN with your software NDNSIM. We want to simulate the scenario where the consumer is sending the same interest (same sequence number) multiple times to the producer so that the cache Server would serve the interest as it would have the content in its cache instead of serving the request from the producer. >>>>> We tried googling but couldn't found any relevant link for this scenario. >>>>> >>>>> Requesting you to please help us on how we can simulate the scenario where the consumer is sending the same interest(same sequence number) instead of the incremental sequence number (default behaviour). >>>> >>>> it seems to me easier to set up a second consumer to request the same data, rather than forcing the same consumer to send repeated interest. >>> >>> >>> _______________________________________________ >>> ndnSIM mailing list >>> ndnSIM at lists.cs.ucla.edu >>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From asifcsep at gmail.com Wed Apr 20 01:04:47 2016 From: asifcsep at gmail.com (Shahid Md. Asif Iqbal) Date: Wed, 20 Apr 2016 14:04:47 +0600 Subject: [ndnSIM] Adding route manually In-Reply-To: References: <8F64CA1E-3F49-4868-B84D-23EB99B60597@gmail.com> <34539F4B-B61D-49A6-B739-EE144FAFF216@cs.ucla.edu> Message-ID: Dear Sryridon, I sorted out that the problem occurs due to the add of the following code segment in the onIncomingData() function of forwarder.cpp: Name dataName("/"); dataName.append(data.getName().get(0)); dataName.append("D"); Thanks Asif On Tue, Apr 19, 2016 at 11:25 AM, Shahid Md. Asif Iqbal wrote: > Dear Spyridon, > I have used the following steps to add route while operating in the > forwarder.cpp, but unfortunately the problem of timeout exists. > > ns3::Ptr thisNode; > thisNode = ns3::NodeList::GetNode(ns3::Simulator::GetContext()); > > shared_ptr face = > const_pointer_cast(inFace.shared_from_this()); > > ns3::ndn::FibHelper::AddRoute(thisNode, dataName, inFace.getId(), 0); > > Thanks > Asif > > On Mon, Apr 18, 2016 at 11:48 PM, Spyridon (Spyros) Mastorakis < > mastorakis at cs.ucla.edu> wrote: > >> You could use the global node id assigned by NS3: >> >> Simulator::GetContext() >> >> Take a look here: >> >> http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-December/002285.html >> >> The thing you are doing right now could lead to some privilege conflicts >> with the managers of NFD. That might be the reason you get this timeout. >> >> Spyridon (Spyros) Mastorakis >> Personal Website: http://cs.ucla.edu/~mastorakis/ >> Internet Research Laboratory >> Computer Science Department >> UCLA >> >> >> >> >> On Apr 18, 2016, at 9:33 AM, Shahid Md. Asif Iqbal >> wrote: >> >> Thanks Spyridon, >> But, I need to add route from the forwarder.cpp, is there any way to find >> who (which node) is currently operating the forwarder? >> >> Thanks >> Asif >> >> On Mon, Apr 18, 2016 at 10:27 PM, Spyridon (Spyros) Mastorakis < >> mastorakis at cs.ucla.edu> wrote: >> >>> Hi Asif, >>> >>> please use the FIB helper instead of trying to modify the FIB directly. >>> Let me know if that works: >>> >>> >>> https://github.com/named-data-ndnSIM/ndnSIM/blob/a4915caa0c4121f2dd87fd3d7cc3b6eb91632f16/examples/ndn-congestion-alt-topo-plugin.cpp#L118-L132 >>> >>> Spyridon (Spyros) Mastorakis >>> Personal Website: http://cs.ucla.edu/~mastorakis/ >>> Internet Research Laboratory >>> Computer Science Department >>> UCLA >>> >>> >>> >>> >>> On Apr 18, 2016, at 3:23 AM, Shahid Md. Asif Iqbal >>> wrote: >>> >>> Dear All, >>> Experiencing the following error after adding route manually, and more >>> importantly the error occurs after 10 seconds of simulation for each >>> scenario and for every prefix. >>> >>> terminate called after throwing an instance of >>> 'boost::exception_detail::clone_impl >>> >' >>> what(): Error in setting interest filter (/localhost/nfd/rib): >>> request timed out >>> >>> I use the following code segment to add route manually >>> >>> shared_ptr face = >>> const_pointer_cast(inFace.shared_from_this()); >>> >>> shared_ptr fibEntry = m_fib.insert(dataName).first;// >>> insert prefix >>> fibEntry->addNextHop(face, 0); >>> >>> Any clue would be really helpful. >>> >>> Thanks >>> Asif >>> >>> On Sun, Apr 17, 2016 at 11:50 PM, Shahid Md. Asif Iqbal < >>> asifcsep at gmail.com> wrote: >>> >>>> Hi Natalya, >>>> Though it worked, but for a different scenario it is creating the >>>> following problem >>>> >>>> "Error in setting interest filter (/localhost/nfd/rib): request timed >>>> out "............ >>>> >>>> I have interest sending rate of 10/s. >>>> It is mainly appearing after 10 seconds of simulation run. >>>> >>>> Regards >>>> Asif >>>> >>>> On Sun, Apr 17, 2016 at 7:34 PM, Shahid Md. Asif Iqbal < >>>> asifcsep at gmail.com> wrote: >>>> >>>>> Thanks Natalya, >>>>> Got your point and it worked for me. >>>>> >>>>> Regards >>>>> Asif >>>>> >>>>> On Sat, Apr 16, 2016 at 5:46 PM, Natalya Rozhnova < >>>>> rozhnova.natalya at gmail.com> wrote: >>>>> >>>>>> Hi Asif, >>>>>> >>>>>> Why do you want to use the FibHelper while in the forwarder you can >>>>>> directly operate with FIB. >>>>>> Just add the desired output face to the FIB entry for the desired >>>>>> prefix? >>>>>> >>>>>> Best, >>>>>> Natalya >>>>>> >>>>>> >>>>>> > Le 16 avr. 2016 ? 13:27, Shahid Md. Asif Iqbal >>>>>> a ?crit : >>>>>> > >>>>>> > Dear All, >>>>>> > How can i add a route manually from the forwarder.cpp file? My >>>>>> scenario is, after receiving data(onReceiveData()) with name "/data/R/00" >>>>>> from face i, I want to add a route manually (using fibhelper) for prefix >>>>>> "data/D/00" with face i as the faceid to reach the nexthop. I can use the >>>>>> Addroute() function but it is not possible to get the node(GetNode()) who >>>>>> is currently accessing the forwarder. >>>>>> > >>>>>> > Thanks >>>>>> > Asif >>>>>> > _______________________________________________ >>>>>> > ndnSIM mailing list >>>>>> > ndnSIM at lists.cs.ucla.edu >>>>>> > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >>>>>> >>>>>> >>>>> >>>> >>> _______________________________________________ >>> ndnSIM mailing list >>> ndnSIM at lists.cs.ucla.edu >>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >>> >>> >>> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From monikabaraut at gmail.com Wed Apr 20 04:24:15 2016 From: monikabaraut at gmail.com (Monika Dangi) Date: Wed, 20 Apr 2016 07:24:15 -0400 Subject: [ndnSIM] How can application detect change in point of attachment to the Internet Message-ID: Hey All, i am working on mobility model in NDN, well there is a way of communication from application layer to network layer. But I am stuck at how to tell application layer that the mobile node has moved and now the point of attachment is changed. Is there anybody working on similar problem? or can anybody provide me literature so that i can look myself? Thank-you -- Monika MTech CSE IIT Roorkee -------------- next part -------------- An HTML attachment was scrubbed... URL: From don1559 at gmail.com Wed Apr 20 05:11:40 2016 From: don1559 at gmail.com (Ahmed Sadek) Date: Wed, 20 Apr 2016 14:11:40 +0200 Subject: [ndnSIM] Differences between CCN and NDN Message-ID: Dear All, I know that NDN is a fork from CCN, I was wondering if there is a document that describes the up to date differences between CCN and NDN ? Or someone could name the important features implemented in NDN and not in CCN. Thanks! Ahmed -------------- next part -------------- An HTML attachment was scrubbed... URL: From h2015098 at pilani.bits-pilani.ac.in Wed Apr 20 05:52:10 2016 From: h2015098 at pilani.bits-pilani.ac.in (AJINKYA RAJPUT) Date: Wed, 20 Apr 2016 18:22:10 +0530 Subject: [ndnSIM] NDN Security Library Message-ID: Hey all, I wanted to know if security library is present in ndnsim Thanks Ajinkya -------------- next part -------------- An HTML attachment was scrubbed... URL: From lixia at CS.UCLA.EDU Wed Apr 20 17:13:11 2016 From: lixia at CS.UCLA.EDU (Lixia Zhang) Date: Wed, 20 Apr 2016 17:13:11 -0700 Subject: [ndnSIM] How can application detect change in point of attachment to the Internet In-Reply-To: References: Message-ID: <604CCF0B-EA77-47CF-9C39-F3CBE198DED3@cs.ucla.edu> > On Apr 20, 2016, at 4:24 AM, Monika Dangi wrote: > > Hey All, > i am working on mobility model in NDN, well there is a way of communication from application layer to network layer. But I am stuck at how to tell application layer that the mobile node has moved and now the point of attachment is changed. Not sure I understand the picture in your mind. 1/ NDN's communication model is data fetching: consumer app sends interest packets, that either successfully bring back data packets, or fail to do do. 2/ if the mobile nodes are consumers, consumers do not need to do anything special when moving. 3/ if the mobile nodes are producers, depending how producer mobility is handled, consumers figure out ways to get the data produced by mobile producers. 4/ there is a recent paper on "A Survey of Mobility Support in Named Data Networking" http://lasr.cs.ucla.edu/afanasyev/data/files/Zhang/nom16-ndn-mobility-survey.pdf > Is there anybody working on similar problem? or can anybody provide me literature so that i can look myself? > > Thank-you > > -- > Monika > MTech CSE > IIT Roorkee > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From lixia at CS.UCLA.EDU Wed Apr 20 17:14:23 2016 From: lixia at CS.UCLA.EDU (Lixia Zhang) Date: Wed, 20 Apr 2016 17:14:23 -0700 Subject: [ndnSIM] Differences between CCN and NDN In-Reply-To: References: Message-ID: <0AAC59F0-F76F-484F-914E-9C2D7FA8778D@cs.ucla.edu> > On Apr 20, 2016, at 5:11 AM, Ahmed Sadek wrote: > > Dear All, > > I know that NDN is a fork from CCN, I was wondering if there is a document that describes the up to date differences between CCN and NDN ? yes we need such a document but dont have one yet. Hope to get it written soon. > Or someone could name the important features implemented in NDN and not in CCN. > > Thanks! > Ahmed > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From z.rezaiefar at yahoo.com Wed Apr 20 18:50:53 2016 From: z.rezaiefar at yahoo.com (Zeinab) Date: Thu, 21 Apr 2016 10:50:53 +0900 Subject: [ndnSIM] relation between interface and connection In-Reply-To: <1619550522.3865210.1461120787869.JavaMail.yahoo@mail.yahoo.com> References: <2AFCD5A8-B982-4753-B10F-2B44F417E251@cs.ucla.edu> <1619550522.3865210.1461120787869.JavaMail.yahoo@mail.yahoo.com> Message-ID: <6ABB4601-9FED-404F-8D51-D96297F8C059@yahoo.com> Hello , I think i have found a solution . As i understood, if we use GetFlags function ( inface-> GetFlags) we can recognize this packet is from application layer or from other peer . If this value is one ( or opposite zero) ,it is from application layer . This message is received from other peer if the interface flag related to this message will be zero. Hope it will be helpful for other persons who face the same problem. And thanks u for all of your helps Regards > On Apr 20, 2016, at 11:53 AM, Zeinab Rezaiefar wrote: > > Hello Alex and Spyridon, > firstly I would like to say thanks for your helping and your nice explanation. I am using ndnsim version1. as you mentioned, in every node that I install application, I have another interface too. however, my problem is that how I can recognize the difference between internal interface and the external interfaces ( interface which a node receives packet from its neighbors) in the code? since I decide to forward packets based on from which interface I have received this packet ( which shows which peer has sent this packet), it is so important for me to distinguish between internal and external interfaces. > moreover, is there any field like hop-count that shows this message is from other nodes ( form the peer of the node ) and it is not generated by this node? > I am looking forward to hearing you. > thanks in advance > best regards > > > > On Wednesday, April 20, 2016 10:58 AM, Alex Afanasyev wrote: > > > Hi Zeinab, > > Which version of ndnSIM you're using. For ndnSIM 1.0 your reasoning is almost correct. There could also be face related to the application, if you have an application installed. If a node doesn't have an application, then there should be just one face per simulated connection. > > ndnSIM 2, in addition to faces that correspond to network interfaces and applications, there are also several internal faces (internal face for management, face to represent content store, null face). > > --- > Alex > > >> On Apr 19, 2016, at 5:58 AM, Zeinab Rezaiefar wrote: > >> > >> Hello everyone, > >> I would like to say that I think that number of interfaces in one node related to number of its connection (in the wired scenario) > >> However, in the scenario that I run, node 1 has just one direct connect to node 2 . In my point of view , this node should have one interface, however, when I print interface of the interest message that is received in forwarding function. ( using inFace->GetId () for interface related to the interest message and node->GetId () for the node id). I recognized that node 1 received interest messages from interface1 and 0. > >> however, I expected that this node just received interest messages from one interface. Is there anybody knows why this thing happens or what mistake I am doing? > >> Thanks in advance > >> best regards > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Thu Apr 21 22:21:40 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Thu, 21 Apr 2016 22:21:40 -0700 Subject: [ndnSIM] NDN Security Library In-Reply-To: References: Message-ID: <9D9D8F87-CDB0-40A4-BDA2-321FC27C71CB@cs.ucla.edu> Hi, yes, the security features of ndn-cxx (version 0.3.4) can be used in ndnSIM. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 20, 2016, at 5:52 AM, AJINKYA RAJPUT wrote: > > Hey all, I wanted to know if security library is present in ndnsim > Thanks > Ajinkya > -------------- next part -------------- An HTML attachment was scrubbed... URL: From lixia at CS.UCLA.EDU Fri Apr 22 21:10:28 2016 From: lixia at CS.UCLA.EDU (Lixia Zhang) Date: Fri, 22 Apr 2016 21:10:28 -0700 Subject: [ndnSIM] Multi-hop Wireless Ad-hoc Scenario In-Reply-To: References: Message-ID: <8992090E-3877-4F01-A132-B50DF4DEF1A4@cs.ucla.edu> > On Apr 15, 2016, at 12:32 PM, ahmed aboud wrote: > > Hi all, > > I am trying to develop a scenario for multi-hop wireless ad-hoc network , currently i'm working with a 3 nodes topology A-->B-->C where (A:consumer ; B: forwarder ; C: producer ) and i managed to forward interest packets to node C, by creating a custom forwarding strategy that enable forwarding through the same face. > My problem is that node B receives the returned data packet and it doesn't forward it back to node A since the NFD forwarder doesn't permit forwarding data packet throw the same downstream face > > as shown on this file: https://github.com/named-data-ndnSIM/NFD/blob/bd8eea71137bc382fe1fb8225334b926a5484527/daemon/fw/forwarder.cpp#L36 4 > > and by modifying the Forwarder class to enable it to forward data packets to the same inFace only the first 2 packets were sent and received correctly as you can see on the Forwarder log, i suspect that node C doesn't have a route to the other nodes but i dont quite understand why only 2 packets were sent and received correctly. > > any help will be much appreciated. > > Thanks , > Ahmed. Hi Ahmed, just saw this, dont know if anyone has replied. 1/ Davide et al, copied here, had similar problem a few years back (i.e. need to send packets out thru the same WiFi interface they came in), I believe they modified the code to do that. 2/ a note to NFD folks on this list: maybe one would re-visit this design issue of "NFD forwarder doesn't permit forwarding data packet throw the same downstream face"? Lixia -------------- next part -------------- An HTML attachment was scrubbed... URL: From ahmedaboud at outlook.com Fri Apr 22 23:01:28 2016 From: ahmedaboud at outlook.com (ahmed aboud) Date: Sat, 23 Apr 2016 06:01:28 +0000 Subject: [ndnSIM] Multi-hop Wireless Ad-hoc Scenario In-Reply-To: <8992090E-3877-4F01-A132-B50DF4DEF1A4@cs.ucla.edu> References: , <8992090E-3877-4F01-A132-B50DF4DEF1A4@cs.ucla.edu> Message-ID: Hi Lixia, thanks for your reply, i finaly managed to make it work, it was a problem with the propagation loss model that i used wich affected the transmission range of the nodes. Ahmed Subject: Re: [ndnSIM] Multi-hop Wireless Ad-hoc Scenario From: lixia at cs.ucla.edu Date: Fri, 22 Apr 2016 21:10:28 -0700 CC: ndnsim at lists.cs.ucla.edu; davide.pesavento at lip6.fr To: ahmedaboud at outlook.com On Apr 15, 2016, at 12:32 PM, ahmed aboud wrote:Hi all, I am trying to develop a scenario for multi-hop wireless ad-hoc network , currently i'm working with a 3 nodes topology A-->B-->C where (A:consumer ; B: forwarder ; C: producer ) and i managed to forward interest packets to node C, by creating a custom forwarding strategy that enable forwarding through the same face. My problem is that node B receives the returned data packet and it doesn't forward it back to node A since the NFD forwarder doesn't permit forwarding data packet throw the same downstream face as shown on this file: https://github.com/named-data-ndnSIM/NFD/blob/bd8eea71137bc382fe1fb8225334b926a5484527/daemon/fw/forwarder.cpp#L364 and by modifying the Forwarder class to enable it to forward data packets to the same inFace only the first 2 packets were sent and received correctly as you can see on the Forwarder log, i suspect that node C doesn't have a route to the other nodes but i dont quite understand why only 2 packets were sent and received correctly. any help will be much appreciated. Thanks ,Ahmed. Hi Ahmed, just saw this, dont know if anyone has replied. 1/ Davide et al, copied here, had similar problem a few years back (i.e. need to send packets out thru the same WiFi interface they came in), I believe they modified the code to do that. 2/ a note to NFD folks on this list: maybe one would re-visit this design issue of "NFD forwarder doesn't permit forwarding data packet throw the same downstream face"? Lixia -------------- next part -------------- An HTML attachment was scrubbed... URL: From monikabaraut at gmail.com Sun Apr 24 06:19:09 2016 From: monikabaraut at gmail.com (Monika Dangi) Date: Sun, 24 Apr 2016 09:19:09 -0400 Subject: [ndnSIM] How can application detect change in point of attachment to the Internet In-Reply-To: <604CCF0B-EA77-47CF-9C39-F3CBE198DED3@cs.ucla.edu> References: <604CCF0B-EA77-47CF-9C39-F3CBE198DED3@cs.ucla.edu> Message-ID: Thank you Lixia Zhang for your reply. well my problem is the producer is mobile, and i want the producer application to know when the point of attachment to a router is changed so that the retransmission timer is set accordingly. Is there any function in ns3/mobility-module.h or in the ns3/wifi-module.h( perhaps in YansWifiPhyHelper ) that returns the node id of the router to which the mobile node ( producer ) is attached???? The scenario is, there is a grid of nodes and an mobile node which is moving randomly in any direction and may get attached to any grid node and starts sending packet. i just want to know the time till a mobile node stays attached to a router(grid node), so i thought if there is any function in ns3/mobility-module.h or ns3/wifi-module.h, that can tell the current attached router node's id then i can calculate the time mobile node stays attached to a router. i hope you understand the scenario. Thank-you On Wed, Apr 20, 2016 at 8:13 PM, Lixia Zhang wrote: > > On Apr 20, 2016, at 4:24 AM, Monika Dangi wrote: > > Hey All, > i am working on mobility model in NDN, well there is a way of > communication from application layer to network layer. But I am stuck at > how to tell application layer that the mobile node has moved and now the > point of attachment is changed. > > > Not sure I understand the picture in your mind. > 1/ NDN's communication model is data fetching: consumer app sends interest > packets, that either successfully bring back data packets, or fail to do > do. > 2/ if the mobile nodes are consumers, consumers do not need to do anything > special when moving. > 3/ if the mobile nodes are producers, depending how producer mobility is > handled, consumers figure out ways to get the data produced by mobile > producers. > 4/ there is a recent paper on > "A Survey of Mobility Support in Named Data Networking" > > http://lasr.cs.ucla.edu/afanasyev/data/files/Zhang/nom16-ndn-mobility-survey.pdf > > Is there anybody working on similar problem? or can anybody provide me > literature so that i can look myself? > > Thank-you > > -- > Monika > MTech CSE > IIT Roorkee > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > -- Monika MTech CSE IIT Roorkee -------------- next part -------------- An HTML attachment was scrubbed... URL: From rozhnova.natalya at gmail.com Sun Apr 24 06:56:50 2016 From: rozhnova.natalya at gmail.com (Natalya Rozhnova) Date: Sun, 24 Apr 2016 15:56:50 +0200 Subject: [ndnSIM] How can application detect change in point of attachment to the Internet In-Reply-To: References: <604CCF0B-EA77-47CF-9C39-F3CBE198DED3@cs.ucla.edu> Message-ID: <58FA0396-9EDC-4AF5-85F8-BEF939629C30@gmail.com> Hi Monika, This is not a very trivial problem :) Well, what you can do is to look into the ns3/wifi module and use the callbacks provided by the sta-wifi-mac on association and disassociation events. You can use these callbacks from your producer node and activate whatever you want when this events happen. Or, if the implemented callbacks are not sufficient for your goal, you can add your own ones. Hope it helps, Best, Natalya > Le 24 avr. 2016 ? 15:19, Monika Dangi a ?crit : > > Thank you Lixia Zhang for your reply. > well my problem is the producer is mobile, and i want the producer application to know when the point of attachment to a router is changed so that the retransmission timer is set accordingly. Is there any function in ns3/mobility-module.h or in the ns3/wifi-module.h( perhaps in YansWifiPhyHelper ) that returns the node id of the router to which the mobile node ( producer ) is attached???? The scenario is, there is a grid of nodes and an mobile node which is moving randomly in any direction and may get attached to any grid node and starts sending packet. > > i just want to know the time till a mobile node stays attached to a router(grid node), so i thought if there is any function in ns3/mobility-module.h or ns3/wifi-module.h, that can tell the current attached router node's id then i can calculate the time mobile node stays attached to a router. > i hope you understand the scenario. > Thank-you > > On Wed, Apr 20, 2016 at 8:13 PM, Lixia Zhang wrote: > >> On Apr 20, 2016, at 4:24 AM, Monika Dangi wrote: >> >> Hey All, >> i am working on mobility model in NDN, well there is a way of communication from application layer to network layer. But I am stuck at how to tell application layer that the mobile node has moved and now the point of attachment is changed. > > Not sure I understand the picture in your mind. > 1/ NDN's communication model is data fetching: consumer app sends interest packets, that either successfully bring back data packets, or fail to do do. > 2/ if the mobile nodes are consumers, consumers do not need to do anything special when moving. > 3/ if the mobile nodes are producers, depending how producer mobility is handled, consumers figure out ways to get the data produced by mobile producers. > 4/ there is a recent paper on > "A Survey of Mobility Support in Named Data Networking" > http://lasr.cs.ucla.edu/afanasyev/data/files/Zhang/nom16-ndn-mobility-survey.pdf > >> Is there anybody working on similar problem? or can anybody provide me literature so that i can look myself? >> >> Thank-you >> >> -- >> Monika >> MTech CSE >> IIT Roorkee >> _______________________________________________ >> ndnSIM mailing list >> ndnSIM at lists.cs.ucla.edu >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > -- > Monika > MTech CSE > IIT Roorkee > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From rk8000 at g.rit.edu Sun Apr 24 13:04:02 2016 From: rk8000 at g.rit.edu (Ravi Kumar Singh) Date: Sun, 24 Apr 2016 16:04:02 -0400 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> <623C991F-4BBA-4339-AA3F-13C46B9B0856@cs.ucla.edu> <698C063F-B1DD-49FF-A4B8-059714947999@cs.ucla.edu> <8EDD49CF-B8FE-409B-A33F-B04B1B09D6EB@cs.ucla.edu> Message-ID: Hi Lixia / Team, I would like to create a custom cache replacement policy. I went through the LruPolicy class and I can see that it contains methods like evictEntries, insertToQueue, etc. However, it is not clear, when, how these methods are called. I believe in order to achieve what I want to, I would have to create a similar class. Am I on the right path here? Some starting point documentation of how the flow is would be really helpful. On Wed, Apr 20, 2016 at 3:14 AM, Ravi Kumar Singh wrote: > Thanks Lixia/Spyridon! I will implement this and will let you the results! > Thank you so much again! > > On Wed, Apr 20, 2016 at 1:03 AM, Lixia Zhang wrote: > >> >> On Apr 18, 2016, at 10:40 AM, Spyridon (Spyros) Mastorakis < >> mastorakis at cs.ucla.edu> wrote: >> >> Hi Ravi, >> >> that looks right to me. >> >> There is also something else that you need to do: >> >> your consumer application should express Interests with the ?mustBeFresh? >> selector set in order to retrieve only ?fresh? data: >> >> >> https://github.com/named-data-ndnSIM/ndn-cxx/blob/ndn-cxx-0.3.4-ndnSIM/src/interest.hpp#L417-L423 >> >> To this end you should do something like that: >> >> Interest i(name); >> i.setMustBeFresh(true); >> ... >> ? >> m_face->onReceiveInterest(*interest); >> >> Hope that this helps. >> >> Spyridon (Spyros) Mastorakis >> Personal Website: http://cs.ucla.edu/~mastorakis/ >> Internet Research Laboratory >> Computer Science Department >> UCLA >> >> >> copied the list here. >> Ravi, hopefully your issue was resolved? >> >> >> On Apr 17, 2016, at 11:54 PM, Ravi Kumar Singh wrote: >> >> Hi Lixia, >> >> No, I am not aware where we need to set this "must be fresh". I just >> followed the below link: >> >> >> https://github.com/cawka/ndnSIM-examples/blob/master/examples/ndn-simple-with-content-freshness.cc >> >> and changed like below: >> >> ccnxHelper.SetContentStore ("ns3::ndn::cs::Freshness::Lru","MaxSize", "2" >> ); >> >> and >> producerHelper.SetAttribute ("Freshness", TimeValue (Seconds (2.0))); >> >> Please let me know where exactly we have to set "must be fresh" or >> anything we need to do? >> >> Thanks and Regards, >> Ravi Kumar Singh >> >> On Sun, Apr 17, 2016 at 11:25 PM, Lixia Zhang wrote: >> >>> >>> On Apr 17, 2016, at 12:27 PM, Ravi Kumar Singh wrote: >>> >>> Hi Alex/Lixia/Team, >>> >>> Thank you so much for the help! Now, I am trying to use the >>> ns3::ndn::cs::Freshness::Lru feature to use the freshness. But it >>> seems its not giving desired results. Even after the freshness has expired >>> the next interest is being served from the Cache server and not from the >>> Origin Server. And as per the policy(ns3::ndn::cs::Freshness::Lru),it cache >>> Data packets only for the time indicated by FreshnessPeriod. >>> >>> >>> did you set "must be fresh" in your interests packets? >>> >>> Thanks and Regards, >>> Ravi Singh >>> >>> On Wed, Apr 13, 2016 at 9:41 PM, Alex Afanasyev wrote: >>> >>>> >>>> On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh >>>> wrote: >>>> >>>> Forgot to include team. >>>> >>>> ---------- Forwarded message ---------- >>>> From: Ravi Kumar Singh >>>> Date: Wed, Apr 13, 2016 at 2:11 AM >>>> Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with >>>> different sequence number >>>> To: Lixia Zhang >>>> >>>> >>>> Thanks Lixia! I will try setting up a second consumer to request the >>>> same data. >>>> But, in our experiment, we need to see what happens when the same >>>> consumer requests the same interest multiple times. I tried writing my own >>>> implementation of a consumer, but still only the first interest is working >>>> well and rest all interest are *not even* forwarding from the >>>> consumer(same) itself. >>>> >>>> Following is a log of its operation ( with my own implemention of one >>>> consumer sending three same interest): >>>> >>>> 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for >>>> /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 >>>> 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for >>>> /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 >>>> 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for >>>> /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 >>>> 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) >>>> 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) >>>> 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding >>>> with Data: /root/%FE%00 >>>> 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) >>>> 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for >>>> /root/%FE%00 >>>> >>>> As, you can see from the log, only first interest is working file and >>>> rest 2 interest are *not even* forwarding from the consumer itself. >>>> >>>> >>>> Hi Ravi, >>>> >>>> What you see is correct and intentional behavior of an NDN router. >>>> You're trying to send 3 interests for the same data at the exactly the same >>>> time. As a result, these 3 interests will be aggregated into one and only >>>> one will be sent further. Also, given that the same app (though the same >>>> face) is sending those interests, only one data is returned back. >>>> >>>> Depending on what specific effect you want to observe, you may want to >>>> spread out sending interests in time and/or request from different >>>> simulated nodes (different app instances). >>>> >>>> --- >>>> Alex >>>> >>>> Please suggest! >>>> >>>> Regards, >>>> Ravi >>>> >>>> On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang >>>> wrote: >>>> >>>>> >>>>> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh >>>>> wrote: >>>>> >>>>> Hi Team, >>>>> >>>>> I am a Graduate student of Rochester Institue of Technology, New York. >>>>> Currently, I am working on a research paper based on NDN along with my Prof. >>>>> Currently, we want to simulate the NDN with your software NDNSIM. We >>>>> want to simulate the scenario where the consumer is sending the same >>>>> interest (same sequence number) multiple times to the producer so that the >>>>> cache Server would serve the interest as it would have the content in its >>>>> cache instead of serving the request from the producer. >>>>> We tried googling but couldn't found any relevant link for this >>>>> scenario. >>>>> >>>>> Requesting you to please help us on how we can simulate the scenario >>>>> where the consumer is sending the same interest(same sequence number) >>>>> instead of the incremental sequence number (default behaviour). >>>>> >>>>> >>>>> it seems to me easier to set up a second consumer to request the same >>>>> data, rather than forcing the same consumer to send repeated interest. >>>>> >>>> >>>> >>> _______________________________________________ >>> ndnSIM mailing list >>> ndnSIM at lists.cs.ucla.edu >>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >>> >>> >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From lixia at CS.UCLA.EDU Sun Apr 24 17:45:52 2016 From: lixia at CS.UCLA.EDU (Lixia Zhang) Date: Sun, 24 Apr 2016 17:45:52 -0700 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> <623C991F-4BBA-4339-AA3F-13C46B9B0856@cs.ucla.edu> <698C063F-B1DD-49FF-A4B8-059714947999@cs.ucla.edu> <8EDD49CF-B8FE-409B-A33F-B04B1B09D6EB@cs.ucla.edu> Message-ID: > On Apr 24, 2016, at 1:04 PM, Ravi Kumar Singh wrote: > > Hi Lixia / Team, > > I would like to create a custom cache replacement policy. I went through the LruPolicy class and I can see that it contains methods like evictEntries, insertToQueue, etc. However, it is not clear, when, how these methods are called. > > I believe in order to achieve what I want to, I would have to create a similar class. Am I on the right path here? Some starting point documentation of how the flow is would be really helpful. I must admit that I dont know the code details. So we need Alex or Spyros to help out here. > On Wed, Apr 20, 2016 at 3:14 AM, Ravi Kumar Singh > wrote: > Thanks Lixia/Spyridon! I will implement this and will let you the results! Thank you so much again! > > On Wed, Apr 20, 2016 at 1:03 AM, Lixia Zhang > wrote: > >> On Apr 18, 2016, at 10:40 AM, Spyridon (Spyros) Mastorakis > wrote: >> >> Hi Ravi, >> >> that looks right to me. >> >> There is also something else that you need to do: >> >> your consumer application should express Interests with the ?mustBeFresh? selector set in order to retrieve only ?fresh? data: >> >> https://github.com/named-data-ndnSIM/ndn-cxx/blob/ndn-cxx-0.3.4-ndnSIM/src/interest.hpp#L417-L423 >> >> To this end you should do something like that: >> >> Interest i(name); >> i.setMustBeFresh(true); >> ... >> ? >> m_face->onReceiveInterest(*interest); >> >> Hope that this helps. >> >> Spyridon (Spyros) Mastorakis >> Personal Website: http://cs.ucla.edu/~mastorakis/ >> Internet Research Laboratory >> Computer Science Department >> UCLA > > copied the list here. > Ravi, hopefully your issue was resolved? > > >>> On Apr 17, 2016, at 11:54 PM, Ravi Kumar Singh > wrote: >>> >>> Hi Lixia, >>> >>> No, I am not aware where we need to set this "must be fresh". I just followed the below link: >>> >>> https://github.com/cawka/ndnSIM-examples/blob/master/examples/ndn-simple-with-content-freshness.cc >>> >>> and changed like below: >>> >>> ccnxHelper.SetContentStore ("ns3::ndn::cs::Freshness::Lru","MaxSize", "2"); >>> >>> and >>> producerHelper.SetAttribute ("Freshness", TimeValue (Seconds (2.0))); >>> >>> Please let me know where exactly we have to set "must be fresh" or anything we need to do? >>> >>> Thanks and Regards, >>> Ravi Kumar Singh >>> >>> On Sun, Apr 17, 2016 at 11:25 PM, Lixia Zhang > wrote: >>> >>>> On Apr 17, 2016, at 12:27 PM, Ravi Kumar Singh > wrote: >>>> >>>> Hi Alex/Lixia/Team, >>>> >>>> Thank you so much for the help! Now, I am trying to use the ns3::ndn::cs::Freshness::Lru feature to use the freshness. But it seems its not giving desired results. Even after the freshness has expired the next interest is being served from the Cache server and not from the Origin Server. And as per the policy(ns3::ndn::cs::Freshness::Lru),it cache Data packets only for the time indicated by FreshnessPeriod. >>> >>> did you set "must be fresh" in your interests packets? >>> >>>> Thanks and Regards, >>>> Ravi Singh >>>> >>>> On Wed, Apr 13, 2016 at 9:41 PM, Alex Afanasyev > wrote: >>>> >>>>> On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh > wrote: >>>>> >>>>> Forgot to include team. >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Ravi Kumar Singh > >>>>> Date: Wed, Apr 13, 2016 at 2:11 AM >>>>> Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number >>>>> To: Lixia Zhang > >>>>> >>>>> >>>>> Thanks Lixia! I will try setting up a second consumer to request the same data. >>>>> But, in our experiment, we need to see what happens when the same consumer requests the same interest multiple times. I tried writing my own implementation of a consumer, but still only the first interest is working well and rest all interest are not even forwarding from the consumer(same) itself. >>>>> >>>>> Following is a log of its operation ( with my own implemention of one consumer sending three same interest): >>>>> >>>>> 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 >>>>> 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 >>>>> 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 >>>>> 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) >>>>> 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) >>>>> 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with Data: /root/%FE%00 >>>>> 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) >>>>> 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for /root/%FE%00 >>>>> >>>>> As, you can see from the log, only first interest is working file and rest 2 interest are not even forwarding from the consumer itself. >>>> >>>> Hi Ravi, >>>> >>>> What you see is correct and intentional behavior of an NDN router. You're trying to send 3 interests for the same data at the exactly the same time. As a result, these 3 interests will be aggregated into one and only one will be sent further. Also, given that the same app (though the same face) is sending those interests, only one data is returned back. >>>> >>>> Depending on what specific effect you want to observe, you may want to spread out sending interests in time and/or request from different simulated nodes (different app instances). >>>> >>>> --- >>>> Alex >>>> >>>>> Please suggest! >>>>> >>>>> Regards, >>>>> Ravi >>>>> >>>>> On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang > wrote: >>>>> >>>>>> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh > wrote: >>>>>> >>>>>> Hi Team, >>>>>> >>>>>> I am a Graduate student of Rochester Institue of Technology, New York. Currently, I am working on a research paper based on NDN along with my Prof. >>>>>> Currently, we want to simulate the NDN with your software NDNSIM. We want to simulate the scenario where the consumer is sending the same interest (same sequence number) multiple times to the producer so that the cache Server would serve the interest as it would have the content in its cache instead of serving the request from the producer. >>>>>> We tried googling but couldn't found any relevant link for this scenario. >>>>>> >>>>>> Requesting you to please help us on how we can simulate the scenario where the consumer is sending the same interest(same sequence number) instead of the incremental sequence number (default behaviour). >>>>> >>>>> it seems to me easier to set up a second consumer to request the same data, rather than forcing the same consumer to send repeated interest. >>>> >>>> >>>> _______________________________________________ >>>> ndnSIM mailing list >>>> ndnSIM at lists.cs.ucla.edu >>>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From zhangran at bupt.edu.cn Sun Apr 24 19:29:10 2016 From: zhangran at bupt.edu.cn (zhangran at bupt.edu.cn) Date: Mon, 25 Apr 2016 10:29:10 +0800 Subject: [ndnSIM] Problems with ndnSim about caching References: <2016041216341042329711@bupt.edu.cn>, Message-ID: <2016042510290990135118@bupt.edu.cn> Hi, Spyros Recently I have been studying the architecture and reading source code of ndnSim. And I find two things confusing me. The first may be some kind of bug. When I run the examples given in the example folder, and set nodes with old content store, like ndnhelp.SetOldContentStore("ns3::ndn::cs::Lru","MaxSize","10000"), and then start simulation with --vis option. In the python graph window, every time I right click on a node there would be a notification appearing in the terminal "No OLSR", I don't know what this means and what consequence it would lead to. In addition, when I check CS of nodes in this way, there would only be one entry and it never changes. The entry is "/localhost/nfd/faces/events/%FE%01", I am doubting whether this is the bug of OldContentStore or not. The second question is that I notice ndnSim 2.0 adopts the CS implentation of both ndnSim 1.0 and NFD. So I am not sure on which part should I rely to carry out my simulaiton on cache placement strategy. In addition, your paper about ndnSim 2.0 says that ndnSim 1.0 CS doesn't support the Interest Selector, I am not sure about what this means exactly. What does Interest selector means and what impact it would have? Best Regards. Zhang Ran zhangran at bupt.edu.cn From: Spyridon (Spyros) Mastorakis Date: 2016-04-13 12:32 To: zhangran CC: ndnsim Subject: Re: [ndnSIM] About How to get started with ndnSim Hi, I suggest you take a look at our website: http://ndnsim.net and try to run the simulation examples and see what is going on. Hope that this helps. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA On Apr 12, 2016, at 1:34 AM, zhangran at bupt.edu.cn wrote: Hello, everyone! I am a new student in NDN and ndnSim, rescently I find it very important to learn about ndnsim, so I want to have a thorough study on it and make my own changes. I send this e-mail to ask for help from senior users or researchers acquainted with ndnSim on how to get started with ndnSim. What I should learn first and in what order I should learn about different modules and what else background information do I need to know. Thank you very much! I am looking forward to your generous reply! Yours, Sincerely. zhangran at bupt.edu.cn -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Sun Apr 24 21:33:07 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Sun, 24 Apr 2016 21:33:07 -0700 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> <623C991F-4BBA-4339-AA3F-13C46B9B0856@cs.ucla.edu> <698C063F-B1DD-49FF-A4B8-059714947999@cs.ucla.edu> <8EDD49CF-B8FE-409B-A33F-B04B1B09D6EB@cs.ucla.edu> Message-ID: <9E6A9CC5-83AF-4622-9FD0-DAA72B6630A9@cs.ucla.edu> Hi Ravi, the first thing you will have to do is to decide whether you would like to implement a replacement policy using the ndnSIM-specific implementation of CS or the CS of NFD. If you go for the first one, you should take a look at the already implemented policies and also search for papers that have implemented replacement policies for ndnSIM. Some of them provide pointers to the source code. If you go for the second option, you can take a look at this project: https://github.com/ndncomm/nfd-caching-ndnsim It is a project of the first NDN hackathon, where people implemented a number of CS replacement policies for the version of NFD used by ndnSIM. Hope that this helps. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 24, 2016, at 5:45 PM, Lixia Zhang wrote: > > >> On Apr 24, 2016, at 1:04 PM, Ravi Kumar Singh > wrote: >> >> Hi Lixia / Team, >> >> I would like to create a custom cache replacement policy. I went through the LruPolicy class and I can see that it contains methods like evictEntries, insertToQueue, etc. However, it is not clear, when, how these methods are called. >> >> I believe in order to achieve what I want to, I would have to create a similar class. Am I on the right path here? Some starting point documentation of how the flow is would be really helpful. > > I must admit that I dont know the code details. So we need Alex or Spyros to help out here. > >> On Wed, Apr 20, 2016 at 3:14 AM, Ravi Kumar Singh > wrote: >> Thanks Lixia/Spyridon! I will implement this and will let you the results! Thank you so much again! >> >> On Wed, Apr 20, 2016 at 1:03 AM, Lixia Zhang > wrote: >> >>> On Apr 18, 2016, at 10:40 AM, Spyridon (Spyros) Mastorakis > wrote: >>> >>> Hi Ravi, >>> >>> that looks right to me. >>> >>> There is also something else that you need to do: >>> >>> your consumer application should express Interests with the ?mustBeFresh? selector set in order to retrieve only ?fresh? data: >>> >>> https://github.com/named-data-ndnSIM/ndn-cxx/blob/ndn-cxx-0.3.4-ndnSIM/src/interest.hpp#L417-L423 >>> >>> To this end you should do something like that: >>> >>> Interest i(name); >>> i.setMustBeFresh(true); >>> ... >>> ? >>> m_face->onReceiveInterest(*interest); >>> >>> Hope that this helps. >>> >>> Spyridon (Spyros) Mastorakis >>> Personal Website: http://cs.ucla.edu/~mastorakis/ >>> Internet Research Laboratory >>> Computer Science Department >>> UCLA >> >> copied the list here. >> Ravi, hopefully your issue was resolved? >> >> >>>> On Apr 17, 2016, at 11:54 PM, Ravi Kumar Singh > wrote: >>>> >>>> Hi Lixia, >>>> >>>> No, I am not aware where we need to set this "must be fresh". I just followed the below link: >>>> >>>> https://github.com/cawka/ndnSIM-examples/blob/master/examples/ndn-simple-with-content-freshness.cc >>>> >>>> and changed like below: >>>> >>>> ccnxHelper.SetContentStore ("ns3::ndn::cs::Freshness::Lru","MaxSize", "2"); >>>> >>>> and >>>> producerHelper.SetAttribute ("Freshness", TimeValue (Seconds (2.0))); >>>> >>>> Please let me know where exactly we have to set "must be fresh" or anything we need to do? >>>> >>>> Thanks and Regards, >>>> Ravi Kumar Singh >>>> >>>> On Sun, Apr 17, 2016 at 11:25 PM, Lixia Zhang > wrote: >>>> >>>>> On Apr 17, 2016, at 12:27 PM, Ravi Kumar Singh > wrote: >>>>> >>>>> Hi Alex/Lixia/Team, >>>>> >>>>> Thank you so much for the help! Now, I am trying to use the ns3::ndn::cs::Freshness::Lru feature to use the freshness. But it seems its not giving desired results. Even after the freshness has expired the next interest is being served from the Cache server and not from the Origin Server. And as per the policy(ns3::ndn::cs::Freshness::Lru),it cache Data packets only for the time indicated by FreshnessPeriod. >>>> >>>> did you set "must be fresh" in your interests packets? >>>> >>>>> Thanks and Regards, >>>>> Ravi Singh >>>>> >>>>> On Wed, Apr 13, 2016 at 9:41 PM, Alex Afanasyev > wrote: >>>>> >>>>>> On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh > wrote: >>>>>> >>>>>> Forgot to include team. >>>>>> >>>>>> ---------- Forwarded message ---------- >>>>>> From: Ravi Kumar Singh > >>>>>> Date: Wed, Apr 13, 2016 at 2:11 AM >>>>>> Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number >>>>>> To: Lixia Zhang > >>>>>> >>>>>> >>>>>> Thanks Lixia! I will try setting up a second consumer to request the same data. >>>>>> But, in our experiment, we need to see what happens when the same consumer requests the same interest multiple times. I tried writing my own implementation of a consumer, but still only the first interest is working well and rest all interest are not even forwarding from the consumer(same) itself. >>>>>> >>>>>> Following is a log of its operation ( with my own implemention of one consumer sending three same interest): >>>>>> >>>>>> 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 >>>>>> 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 >>>>>> 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 >>>>>> 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) >>>>>> 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) >>>>>> 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with Data: /root/%FE%00 >>>>>> 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) >>>>>> 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for /root/%FE%00 >>>>>> >>>>>> As, you can see from the log, only first interest is working file and rest 2 interest are not even forwarding from the consumer itself. >>>>> >>>>> Hi Ravi, >>>>> >>>>> What you see is correct and intentional behavior of an NDN router. You're trying to send 3 interests for the same data at the exactly the same time. As a result, these 3 interests will be aggregated into one and only one will be sent further. Also, given that the same app (though the same face) is sending those interests, only one data is returned back. >>>>> >>>>> Depending on what specific effect you want to observe, you may want to spread out sending interests in time and/or request from different simulated nodes (different app instances). >>>>> >>>>> --- >>>>> Alex >>>>> >>>>>> Please suggest! >>>>>> >>>>>> Regards, >>>>>> Ravi >>>>>> >>>>>> On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang > wrote: >>>>>> >>>>>>> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh > wrote: >>>>>>> >>>>>>> Hi Team, >>>>>>> >>>>>>> I am a Graduate student of Rochester Institue of Technology, New York. Currently, I am working on a research paper based on NDN along with my Prof. >>>>>>> Currently, we want to simulate the NDN with your software NDNSIM. We want to simulate the scenario where the consumer is sending the same interest (same sequence number) multiple times to the producer so that the cache Server would serve the interest as it would have the content in its cache instead of serving the request from the producer. >>>>>>> We tried googling but couldn't found any relevant link for this scenario. >>>>>>> >>>>>>> Requesting you to please help us on how we can simulate the scenario where the consumer is sending the same interest(same sequence number) instead of the incremental sequence number (default behaviour). >>>>>> >>>>>> it seems to me easier to set up a second consumer to request the same data, rather than forcing the same consumer to send repeated interest. >>>>> >>>>> >>>>> _______________________________________________ >>>>> ndnSIM mailing list >>>>> ndnSIM at lists.cs.ucla.edu >>>>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >> >> >> > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From monikabaraut at gmail.com Sun Apr 24 22:15:14 2016 From: monikabaraut at gmail.com (Monika Dangi) Date: Mon, 25 Apr 2016 01:15:14 -0400 Subject: [ndnSIM] How can an application installed on a mobile node make an fib entry in fib table? Message-ID: Hey all, The scenario is, mobile node is a producer, i want it to be reached globally, so whenever it connect to a new router after some threshold amount of waiting it makes its entry into fib and fib takes care of propagating this entry to further in routing plane so that mobile node can be reached globally. And also delete the previous entry in the fib of previous router. First of all i didn't install a GlobalRoutingHelper object on each node, i made entry in fib manually(using addroutes). do i have to install GlobalRoutingHelper object for this purpose?? Secondly how can an application installed on a mobile node access fib entries of a particular node and enter a new entry into that fib? and also will this change in the fib of a mobile node be propagated to all other nodes in the routing plane?? Thirdly how do i delete the previous entry in fib of previous router?? -- Monika MTech CSE IIT Roorkee -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Tue Apr 26 00:07:01 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Tue, 26 Apr 2016 11:37:01 +0430 Subject: [ndnSIM] Scenario template and visualizer Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C043E7B52@m-pdc.sbu.ac.ir> Hi, I've followed scenario template instruction for my experimentations. While previous ones were built sucessfully with visualizer, the last one does not go with --vis. Actually It gives me no error regarding to the situation. suser at ubuntu:~/ndnSIM/custom-scenario/passive-consumer$ ./waf --run getme-simple --vis Waf: Entering directory `/../ndnSIM/custom-scenario/passive-consumer/build' Waf: Leaving directory `/../ndnSIM/custom-scenario/passive-consumer/build' 'build' finished successfully (0.024s) But noting shows up. Anyone can help me? Thanks, Sabet -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Tue Apr 26 00:31:48 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Tue, 26 Apr 2016 12:01:48 +0430 Subject: [ndnSIM] Differences between CCN and NDN In-Reply-To: References: <0AAC59F0-F76F-484F-914E-9C2D7FA8778D@cs.ucla.edu> Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C043E7B54@m-pdc.sbu.ac.ir> Lixia, Is there any roadmap or abstraction regarding where to start documentation? I'll be happy if I could help. I need some guidence though. Thanks, Sabet ---------- Forwarded message ---------- From: "Lixia Zhang" Date: 21 Apr 2016 04:44 Subject: Re: [ndnSIM] Differences between CCN and NDN To: "Ahmed Sadek" Cc: "ndnsim" > On Apr 20, 2016, at 5:11 AM, Ahmed Sadek wrote: > > Dear All, > > I know that NDN is a fork from CCN, I was wondering if there is a document that describes the up to date differences between CCN and NDN ? yes we need such a document but dont have one yet. Hope to get it written soon. > Or someone could name the important features implemented in NDN and not in CCN. > > Thanks! > Ahmed > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim _______________________________________________ ndnSIM mailing list ndnSIM at lists.cs.ucla.edu http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From don1559 at gmail.com Tue Apr 26 00:53:50 2016 From: don1559 at gmail.com (Ahmed Sadek) Date: Tue, 26 Apr 2016 09:53:50 +0200 Subject: [ndnSIM] Differences between CCN and NDN In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C043E7B54@m-pdc.sbu.ac.ir> References: <0AAC59F0-F76F-484F-914E-9C2D7FA8778D@cs.ucla.edu> <4AC03A6244C3C34BB52A7EC60B799C4C043E7B54@m-pdc.sbu.ac.ir> Message-ID: I think making a diff between the code bases would be away to see the new code here and there. Also, on ndn and ccnx pages: http://named-data.net/codebase/platform/#Version_040 http://blogs.parc.com/ccnx/software-documentation-2/ It gives an indication of the major libraries implemented. Ahmed On Tue, Apr 26, 2016 at 9:31 AM, Muhammad Hosain Abdollahi Sabet < M.AbdollahiSabet at mail.sbu.ac.ir> wrote: > Lixia, > > > > Is there any roadmap or abstraction regarding where to start > documentation? I'll be happy if I could help. I need some guidence though. > > > > Thanks, > > Sabet > > > > ---------- Forwarded message ---------- > From: "Lixia Zhang" > Date: 21 Apr 2016 04:44 > Subject: Re: [ndnSIM] Differences between CCN and NDN > To: "Ahmed Sadek" > Cc: "ndnsim" > > > > On Apr 20, 2016, at 5:11 AM, Ahmed Sadek wrote: > > > > Dear All, > > > > I know that NDN is a fork from CCN, I was wondering if there is a > document that describes the up to date differences between CCN and NDN ? > > yes we need such a document but dont have one yet. > Hope to get it written soon. > > > Or someone could name the important features implemented in NDN and not > in CCN. > > > > Thanks! > > Ahmed > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From carlzu8 at gmail.com Tue Apr 26 01:58:17 2016 From: carlzu8 at gmail.com (Carl) Date: Tue, 26 Apr 2016 10:58:17 +0200 Subject: [ndnSIM] interest=/localhost/nfd/faces/events/%FE%05 ? In-Reply-To: <9861A19A-9AD5-47E7-8A61-D3CB81716891@cs.ucla.edu> References: <9110651B-D281-48FB-AF43-D9B45E19E2C4@cs.ucla.edu> <9861A19A-9AD5-47E7-8A61-D3CB81716891@cs.ucla.edu> Message-ID: <571F2DA9.3010002@gmail.com> Hi Alex, I have disabled RIB manager, but still I see control data messages with prefix _data=/localhost/nfd/fib/add-nexthop_. This means that even if I have disabled RIB manager, still FIBs are populated ? Why ?... And how I can completely disable this ? After, I also disabled Face Manager to see what happens, but received the same output. Actually I have done this because always fib/add-nexthop messages appear right after face events. Looking forward to your response. Thanks. Regards, C On 24.02.2016 07:31, Alex Afanasyev wrote: > Hi Carl, > > In the beginning of simulation (time moment 0s), there are a few initial tasks that NFD performs internally. One of them is setting up internal RIB manager. RIB manager is separated from main forwarding and uses interest-data exchange to receive notifications that new face is created, face is destroyed, and few others. The LocalControl refer to LocalControlHeader protocol http://redmine.named-data.net/projects/nfd/wiki/LocalControlHeader, which allows additional meta information to be communicated alongside interest and data packets. You also may want to check http://named-data.net/wp-content/uploads/2015/10/ndn-0021-5-nfd-developer-guide.pdf for further explanation how RIB manager module works. > > Regarding your question. Most likely, you would want to populate RIB, not FIB: FIB is calculated from RIB, taking into account inheritance and capture flags. Though, if you like, you can still work directly with FIB and completely disable RIB manager module (http://ndnsim.net/2.1/doxygen/classns3_1_1ndn_1_1StackHelper.html#a1820acb048f802a6686dc92518a4a826). > > Either way, you have two options. One option is to use NFD management protocol and send register/unregister (for RIB management) and add-nexthop/remove-nexthop (for FIB management). For the latter, you can use FibHelper, for the former, you will need a little bit of code similar to FibHelper (we are overdue in adding RibHelper). > > Second option is a little bit hacky (it can be "faster", but I would recommend it) and will work only in the simulation: you can get direct access to Fib instance on the node and add entries directly: > > auto fib = node->GetObject()->getForwarder()->getFib(); > ... > > (few comments inline) > >> On Feb 23, 2016, at 9:54 PM, Carl Zu wrote: >> >> Hi Alex, >> >> Thanks for your reply. These notification streams are not only for new faces. They are for strategy choice, and in particular for FIB population (add-nexthop). The important question is that what shall I do if I like to implement my own FIB population method ? >> >> Minor questions (logs are for ndn-simple.cpp): >> 1. Why these notification streams start from node "-1" (I believe it should not be a node), and then they continue for real nodes. See here: >> >> 0s -1 nfd.Forwarder:onDataUnsolicited(): [DEBUG] onDataUnsolicited face=1 data=/localhost/nfd/fib/add-nexthop/h%0C%...... > -1 means that this event was scheduled outside context of the simulation node. Most likely, it happened during scenario initialization. I wouldn't worry about this. > >> 2. Notification streams not only contain interests and data, but they contain "matching" as well (for add-nexthop and enable-local-control). What is that ?. See here: >> >> 0s 1 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/localhost/nfd/fib/add-nexthop/h%1A >> >> OR >> >> 0s 1 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/localhost/nfd/faces/enable-local-control/h%03........ > You may get a better idea after reading the link I gave you above. Essentially, you see that RIB manager module requested "control-header" support on its face and was granted it by NFD. > > -- > Alex > > >> 3. even if googled and read, have not understood well "enable-local-control". Small explanation would be appreciated. >> >> Thanks very much, >> C >> >> >> >> >> >> On Tue, Feb 23, 2016 at 7:25 PM, Alex Afanasyev wrote: >> >>> On Feb 23, 2016, at 6:29 AM, Carl Zu wrote: >>> >>> Hi ! >>> >>> there are some interests that come in between ordinary interests. For example, look at the two types of interest messages in the following logs. Type 1 is clearly an interest sent for retrieving a content object with a certain prefix. What is interest type 2 ? >>> >>> Type1: >>> 2s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%00 >>> >>> Type2: >>> 2s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=257 interest=/localhost/nfd/faces/events/%FE%05 >> Hi Carl, >> >> When NFD detects there is a new face (e.g., new application), it notifies its internal module and any other interested applications about the fact. You can learn more about this here: http://redmine.named-data.net/projects/nfd/wiki/Notification >> >> Does this mechanism affect your simulations? >> >> --- >> Alex From M.AbdollahiSabet at mail.sbu.ac.ir Tue Apr 26 05:12:03 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Tue, 26 Apr 2016 16:42:03 +0430 Subject: [ndnSIM] Porting scenarios to ndnSIM 2.1 In-Reply-To: <1FDB6284-9893-44B6-84CF-C82D0BCE645E@cs.ucla.edu> References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A20@m-pdc.sbu.ac.ir> <1FDB6284-9893-44B6-84CF-C82D0BCE645E@cs.ucla.edu> Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C043E7B56@m-pdc.sbu.ac.ir> Alex, Thank you so much. You're saving lives!! Regards, Sabet -----Original Message----- From: Alex Afanasyev [mailto:aa at cs.ucla.edu] Sent: Thursday, April 14, 2016 6:46 AM To: Muhammad Hosain Abdollahi Sabet Cc: ndnsim at lists.cs.ucla.edu Subject: Re: [ndnSIM] Porting scenarios to ndnSIM 2.1 > On Apr 2, 2016, at 11:43 AM, Muhammad Hosain Abdollahi Sabet wrote: > > Hi everyone, > Is there any guide on how one can port simulation scenarios wrote for ndnSIM 1? Currently I have a simulation in which has some modifications in model/ndn-interest.h/.cc, model/wire/ndnsim.h/.cc, ndn.cxx/detail/pending-interests-container.h, model/fw/ndn-forwarding-strategy.h/.cc. I know NFD is being used directly in ndnSIM 2.1 and there has been some changes in ndn-cxx. But honestly I'm not much familiar with them and need some guide. It very much depends on how extensive are your changes. To modify interest abstraction and wire encoding, you need to look at - ndnSIM/ndn-cxx/src/interest.hpp - ndnSIM/ndn-cxx/src/interest.cpp For application PIT (ndn.cxx/...), you can look at - ndnSIM/ndn-cxx/src/detail/pending-interests.hpp, but there is also logic in ndnSIM/ndn-cxx/src/detail/face-impl.hpp For forwarding strategy, depending on your specific interest, it could be part of the strategy interface - ndnSIM/NFD/daemon/fw/strategy.hpp - ndnSIM/NFD/daemon/fw/strategy.cpp - ndnSIM/NFD/daemon/fw/*-strategy.*pp (examples of implemented strategies) or if you need to change some of the forwarding logic (which we call now "pipelines"), you may look into - ndnSIM/NFD/daemon/fw/forwarder.hpp - ndnSIM/NFD/daemon/fw/forwarder.cpp --- Alex From rk8000 at g.rit.edu Tue Apr 26 08:53:50 2016 From: rk8000 at g.rit.edu (Ravi Kumar Singh) Date: Tue, 26 Apr 2016 11:53:50 -0400 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: <9E6A9CC5-83AF-4622-9FD0-DAA72B6630A9@cs.ucla.edu> References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> <623C991F-4BBA-4339-AA3F-13C46B9B0856@cs.ucla.edu> <698C063F-B1DD-49FF-A4B8-059714947999@cs.ucla.edu> <8EDD49CF-B8FE-409B-A33F-B04B1B09D6EB@cs.ucla.edu> <9E6A9CC5-83AF-4622-9FD0-DAA72B6630A9@cs.ucla.edu> Message-ID: Thank you so much Spyros! I was wondering how can I count the number of interest packets received by Cache content store for a particular content? And what and wherein the Cache content store code I need to change to account for this? Thanks and Regards, Ravi Kumar Singh On Mon, Apr 25, 2016 at 12:33 AM, Spyridon (Spyros) Mastorakis < mastorakis at cs.ucla.edu> wrote: > Hi Ravi, > > the first thing you will have to do is to decide whether you would like to > implement a replacement policy using the ndnSIM-specific implementation of > CS or the CS of NFD. > > If you go for the first one, you should take a look at the already > implemented policies and also search for papers that have implemented > replacement policies for ndnSIM. Some of them provide pointers to the > source code. > > If you go for the second option, you can take a look at this project: > https://github.com/ndncomm/nfd-caching-ndnsim > It is a project of the first NDN hackathon, where people implemented a > number of CS replacement policies for the version of NFD used by ndnSIM. > > Hope that this helps. > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > > > > On Apr 24, 2016, at 5:45 PM, Lixia Zhang wrote: > > > On Apr 24, 2016, at 1:04 PM, Ravi Kumar Singh wrote: > > Hi Lixia / Team, > > I would like to create a custom cache replacement policy. I went through > the LruPolicy class and I can see that it contains methods > like evictEntries, insertToQueue, etc. However, it is not clear, when, how > these methods are called. > > I believe in order to achieve what I want to, I would have to create a > similar class. Am I on the right path here? Some starting point > documentation of how the flow is would be really helpful. > > > I must admit that I dont know the code details. So we need Alex or Spyros > to help out here. > > On Wed, Apr 20, 2016 at 3:14 AM, Ravi Kumar Singh > wrote: > >> Thanks Lixia/Spyridon! I will implement this and will let you the >> results! Thank you so much again! >> >> On Wed, Apr 20, 2016 at 1:03 AM, Lixia Zhang wrote: >> >>> >>> On Apr 18, 2016, at 10:40 AM, Spyridon (Spyros) Mastorakis < >>> mastorakis at cs.ucla.edu> wrote: >>> >>> Hi Ravi, >>> >>> that looks right to me. >>> >>> There is also something else that you need to do: >>> >>> your consumer application should express Interests with the >>> ?mustBeFresh? selector set in order to retrieve only ?fresh? data: >>> >>> >>> https://github.com/named-data-ndnSIM/ndn-cxx/blob/ndn-cxx-0.3.4-ndnSIM/src/interest.hpp#L417-L423 >>> >>> To this end you should do something like that: >>> >>> Interest i(name); >>> i.setMustBeFresh(true); >>> ... >>> ? >>> m_face->onReceiveInterest(*interest); >>> >>> Hope that this helps. >>> >>> Spyridon (Spyros) Mastorakis >>> Personal Website: http://cs.ucla.edu/~mastorakis/ >>> Internet Research Laboratory >>> Computer Science Department >>> UCLA >>> >>> >>> copied the list here. >>> Ravi, hopefully your issue was resolved? >>> >>> >>> On Apr 17, 2016, at 11:54 PM, Ravi Kumar Singh wrote: >>> >>> Hi Lixia, >>> >>> No, I am not aware where we need to set this "must be fresh". I just >>> followed the below link: >>> >>> >>> https://github.com/cawka/ndnSIM-examples/blob/master/examples/ndn-simple-with-content-freshness.cc >>> >>> and changed like below: >>> >>> ccnxHelper.SetContentStore ("ns3::ndn::cs::Freshness::Lru","MaxSize", "2 >>> "); >>> >>> and >>> producerHelper.SetAttribute ("Freshness", TimeValue (Seconds (2.0))); >>> >>> Please let me know where exactly we have to set "must be fresh" or >>> anything we need to do? >>> >>> Thanks and Regards, >>> Ravi Kumar Singh >>> >>> On Sun, Apr 17, 2016 at 11:25 PM, Lixia Zhang wrote: >>> >>>> >>>> On Apr 17, 2016, at 12:27 PM, Ravi Kumar Singh >>>> wrote: >>>> >>>> Hi Alex/Lixia/Team, >>>> >>>> Thank you so much for the help! Now, I am trying to use the >>>> ns3::ndn::cs::Freshness::Lru feature to use the freshness. But it >>>> seems its not giving desired results. Even after the freshness has expired >>>> the next interest is being served from the Cache server and not from the >>>> Origin Server. And as per the policy(ns3::ndn::cs::Freshness::Lru),it cache >>>> Data packets only for the time indicated by FreshnessPeriod. >>>> >>>> >>>> did you set "must be fresh" in your interests packets? >>>> >>>> Thanks and Regards, >>>> Ravi Singh >>>> >>>> On Wed, Apr 13, 2016 at 9:41 PM, Alex Afanasyev wrote: >>>> >>>>> >>>>> On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh >>>>> wrote: >>>>> >>>>> Forgot to include team. >>>>> >>>>> ---------- Forwarded message ---------- >>>>> From: Ravi Kumar Singh >>>>> Date: Wed, Apr 13, 2016 at 2:11 AM >>>>> Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with >>>>> different sequence number >>>>> To: Lixia Zhang >>>>> >>>>> >>>>> Thanks Lixia! I will try setting up a second consumer to request the >>>>> same data. >>>>> But, in our experiment, we need to see what happens when the same >>>>> consumer requests the same interest multiple times. I tried writing my own >>>>> implementation of a consumer, but still only the first interest is working >>>>> well and rest all interest are *not even* forwarding from the >>>>> consumer(same) itself. >>>>> >>>>> Following is a log of its operation ( with my own implemention of one >>>>> consumer sending three same interest): >>>>> >>>>> 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for >>>>> /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 >>>>> 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for >>>>> /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 >>>>> 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for >>>>> /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 >>>>> 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) >>>>> 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) >>>>> 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding >>>>> with Data: /root/%FE%00 >>>>> 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) >>>>> 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for >>>>> /root/%FE%00 >>>>> >>>>> As, you can see from the log, only first interest is working file and >>>>> rest 2 interest are *not even* forwarding from the consumer itself. >>>>> >>>>> >>>>> Hi Ravi, >>>>> >>>>> What you see is correct and intentional behavior of an NDN router. >>>>> You're trying to send 3 interests for the same data at the exactly the same >>>>> time. As a result, these 3 interests will be aggregated into one and only >>>>> one will be sent further. Also, given that the same app (though the same >>>>> face) is sending those interests, only one data is returned back. >>>>> >>>>> Depending on what specific effect you want to observe, you may want to >>>>> spread out sending interests in time and/or request from different >>>>> simulated nodes (different app instances). >>>>> >>>>> --- >>>>> Alex >>>>> >>>>> Please suggest! >>>>> >>>>> Regards, >>>>> Ravi >>>>> >>>>> On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang >>>>> wrote: >>>>> >>>>>> >>>>>> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh >>>>>> wrote: >>>>>> >>>>>> Hi Team, >>>>>> >>>>>> I am a Graduate student of Rochester Institue of Technology, New >>>>>> York. Currently, I am working on a research paper based on NDN along with >>>>>> my Prof. >>>>>> Currently, we want to simulate the NDN with your software NDNSIM. We >>>>>> want to simulate the scenario where the consumer is sending the same >>>>>> interest (same sequence number) multiple times to the producer so that the >>>>>> cache Server would serve the interest as it would have the content in its >>>>>> cache instead of serving the request from the producer. >>>>>> We tried googling but couldn't found any relevant link for this >>>>>> scenario. >>>>>> >>>>>> Requesting you to please help us on how we can simulate the scenario >>>>>> where the consumer is sending the same interest(same sequence number) >>>>>> instead of the incremental sequence number (default behaviour). >>>>>> >>>>>> >>>>>> it seems to me easier to set up a second consumer to request the same >>>>>> data, rather than forcing the same consumer to send repeated interest. >>>>>> >>>>> >>>>> >>>> _______________________________________________ >>>> ndnSIM mailing list >>>> ndnSIM at lists.cs.ucla.edu >>>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >>>> >>>> >>> >>> >> > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From aa at CS.UCLA.EDU Tue Apr 26 15:26:55 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Tue, 26 Apr 2016 15:26:55 -0700 Subject: [ndnSIM] interest=/localhost/nfd/faces/events/%FE%05 ? In-Reply-To: <571F2DA9.3010002@gmail.com> References: <9110651B-D281-48FB-AF43-D9B45E19E2C4@cs.ucla.edu> <9861A19A-9AD5-47E7-8A61-D3CB81716891@cs.ucla.edu> <571F2DA9.3010002@gmail.com> Message-ID: <5FCA1258-0FE4-4AF6-A8BB-0A022B6C504F@cs.ucla.edu> If you have a producer application or any invocation of FibHelper::AddRoute, it will create a command interests with /localhost/nfd/fib/add-nexthop prefix. Why do you want to disable that? The simulation will not be meaningful much if you don't have FIB configured... --- Alex > On Apr 26, 2016, at 1:58 AM, Carl wrote: > > Hi Alex, > > I have disabled RIB manager, but still I see control data messages with prefix _data=/localhost/nfd/fib/add-nexthop_. This means that even if I have disabled RIB manager, still FIBs are populated ? Why ?... And how I can completely disable this ? > > After, I also disabled Face Manager to see what happens, but received the same output. Actually I have done this because always fib/add-nexthop messages appear right after face events. > > Looking forward to your response. > > Thanks. > Regards, > C > > On 24.02.2016 07:31, Alex Afanasyev wrote: >> Hi Carl, >> >> In the beginning of simulation (time moment 0s), there are a few initial tasks that NFD performs internally. One of them is setting up internal RIB manager. RIB manager is separated from main forwarding and uses interest-data exchange to receive notifications that new face is created, face is destroyed, and few others. The LocalControl refer to LocalControlHeader protocol http://redmine.named-data.net/projects/nfd/wiki/LocalControlHeader, which allows additional meta information to be communicated alongside interest and data packets. You also may want to check http://named-data.net/wp-content/uploads/2015/10/ndn-0021-5-nfd-developer-guide.pdf for further explanation how RIB manager module works. >> >> Regarding your question. Most likely, you would want to populate RIB, not FIB: FIB is calculated from RIB, taking into account inheritance and capture flags. Though, if you like, you can still work directly with FIB and completely disable RIB manager module (http://ndnsim.net/2.1/doxygen/classns3_1_1ndn_1_1StackHelper.html#a1820acb048f802a6686dc92518a4a826). >> >> Either way, you have two options. One option is to use NFD management protocol and send register/unregister (for RIB management) and add-nexthop/remove-nexthop (for FIB management). For the latter, you can use FibHelper, for the former, you will need a little bit of code similar to FibHelper (we are overdue in adding RibHelper). >> >> Second option is a little bit hacky (it can be "faster", but I would recommend it) and will work only in the simulation: you can get direct access to Fib instance on the node and add entries directly: >> >> auto fib = node->GetObject()->getForwarder()->getFib(); >> ... >> >> (few comments inline) >> >>> On Feb 23, 2016, at 9:54 PM, Carl Zu wrote: >>> >>> Hi Alex, >>> >>> Thanks for your reply. These notification streams are not only for new faces. They are for strategy choice, and in particular for FIB population (add-nexthop). The important question is that what shall I do if I like to implement my own FIB population method ? >>> >>> Minor questions (logs are for ndn-simple.cpp): >>> 1. Why these notification streams start from node "-1" (I believe it should not be a node), and then they continue for real nodes. See here: >>> >>> 0s -1 nfd.Forwarder:onDataUnsolicited(): [DEBUG] onDataUnsolicited face=1 data=/localhost/nfd/fib/add-nexthop/h%0C%...... >> -1 means that this event was scheduled outside context of the simulation node. Most likely, it happened during scenario initialization. I wouldn't worry about this. >> >>> 2. Notification streams not only contain interests and data, but they contain "matching" as well (for add-nexthop and enable-local-control). What is that ?. See here: >>> >>> 0s 1 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/localhost/nfd/fib/add-nexthop/h%1A >>> >>> OR >>> >>> 0s 1 nfd.Forwarder:onIncomingData(): [DEBUG] onIncomingData matching=/localhost/nfd/faces/enable-local-control/h%03........ >> You may get a better idea after reading the link I gave you above. Essentially, you see that RIB manager module requested "control-header" support on its face and was granted it by NFD. >> >> -- >> Alex >> >> >>> 3. even if googled and read, have not understood well "enable-local-control". Small explanation would be appreciated. >>> >>> Thanks very much, >>> C >>> >>> >>> >>> >>> >>> On Tue, Feb 23, 2016 at 7:25 PM, Alex Afanasyev wrote: >>> >>>> On Feb 23, 2016, at 6:29 AM, Carl Zu wrote: >>>> >>>> Hi ! >>>> >>>> there are some interests that come in between ordinary interests. For example, look at the two types of interest messages in the following logs. Type 1 is clearly an interest sent for retrieving a content object with a certain prefix. What is interest type 2 ? >>>> >>>> Type1: >>>> 2s 0 nfd.Forwarder:onOutgoingInterest(): [DEBUG] onOutgoingInterest face=256 interest=/prefix/%FE%00 >>>> >>>> Type2: >>>> 2s 0 nfd.Forwarder:onIncomingInterest(): [DEBUG] onIncomingInterest face=257 interest=/localhost/nfd/faces/events/%FE%05 >>> Hi Carl, >>> >>> When NFD detects there is a new face (e.g., new application), it notifies its internal module and any other interested applications about the fact. You can learn more about this here: http://redmine.named-data.net/projects/nfd/wiki/Notification >>> >>> Does this mechanism affect your simulations? >>> >>> --- >>> Alex > -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From aa at CS.UCLA.EDU Tue Apr 26 15:28:43 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Tue, 26 Apr 2016 15:28:43 -0700 Subject: [ndnSIM] Scenario template and visualizer In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C043E7B52@m-pdc.sbu.ac.ir> References: <4AC03A6244C3C34BB52A7EC60B799C4C043E7B52@m-pdc.sbu.ac.ir> Message-ID: <20A19D97-9284-45F5-B4B7-27587CB80BB9@cs.ucla.edu> Please be more specific. Which scenario template you used and what is 'getme-simple' scenario? Did you write this or is it a part of the template? > On Apr 26, 2016, at 12:07 AM, Muhammad Hosain Abdollahi Sabet wrote: > > Hi, > > I've followed scenario template instruction for my experimentations. While previous ones were built sucessfully with visualizer, the last one does not go with --vis. Actually It gives me no error regarding to the situation. > > suser at ubuntu:~/ndnSIM/custom-scenario/passive-consumer$ ./waf --run getme-simple --vis > Waf: Entering directory `/../ndnSIM/custom-scenario/passive-consumer/build' > Waf: Leaving directory `/../ndnSIM/custom-scenario/passive-consumer/build' > 'build' finished successfully (0.024s) > > But noting shows up. > Anyone can help me? > > Thanks, > Sabet > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From mastorakis at CS.UCLA.EDU Tue Apr 26 18:30:31 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Tue, 26 Apr 2016 18:30:31 -0700 Subject: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number In-Reply-To: References: <6540B718-3971-4868-B113-E7CC47F32092@cs.ucla.edu> <449DC88A-473E-4387-A3DD-1194E0ED5065@cs.ucla.edu> <623C991F-4BBA-4339-AA3F-13C46B9B0856@cs.ucla.edu> <698C063F-B1DD-49FF-A4B8-059714947999@cs.ucla.edu> <8EDD49CF-B8FE-409B-A33F-B04B1B09D6EB@cs.ucla.edu> <9E6A9CC5-83AF-4622-9FD0-DAA72B6630A9@cs.ucla.edu> Message-ID: <010FF97E-79F6-4B84-87AA-B2A20990F554@cs.ucla.edu> You can do that on a per node basis by modifying the code of the NFD?s Forwarder class. Specifically, you can add your code in the onContestStoreHit method (will be called every time you retrieve data from the cache): https://github.com/named-data-ndnSIM/NFD/blob/NFD-0.3.4-ndnSIM/daemon/fw/forwarder.cpp#L143 Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 26, 2016, at 8:53 AM, Ravi Kumar Singh wrote: > > Thank you so much Spyros! > I was wondering how can I count the number of interest packets received by Cache content store for a particular content? And what and wherein the Cache content store code I need to change to account for this? > > Thanks and Regards, > Ravi Kumar Singh > > On Mon, Apr 25, 2016 at 12:33 AM, Spyridon (Spyros) Mastorakis > wrote: > Hi Ravi, > > the first thing you will have to do is to decide whether you would like to implement a replacement policy using the ndnSIM-specific implementation of CS or the CS of NFD. > > If you go for the first one, you should take a look at the already implemented policies and also search for papers that have implemented replacement policies for ndnSIM. Some of them provide pointers to the source code. > > If you go for the second option, you can take a look at this project: https://github.com/ndncomm/nfd-caching-ndnsim > It is a project of the first NDN hackathon, where people implemented a number of CS replacement policies for the version of NFD used by ndnSIM. > > Hope that this helps. > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > > > >> On Apr 24, 2016, at 5:45 PM, Lixia Zhang > wrote: >> >> >>> On Apr 24, 2016, at 1:04 PM, Ravi Kumar Singh > wrote: >>> >>> Hi Lixia / Team, >>> >>> I would like to create a custom cache replacement policy. I went through the LruPolicy class and I can see that it contains methods like evictEntries, insertToQueue, etc. However, it is not clear, when, how these methods are called. >>> >>> I believe in order to achieve what I want to, I would have to create a similar class. Am I on the right path here? Some starting point documentation of how the flow is would be really helpful. >> >> I must admit that I dont know the code details. So we need Alex or Spyros to help out here. >> >>> On Wed, Apr 20, 2016 at 3:14 AM, Ravi Kumar Singh > wrote: >>> Thanks Lixia/Spyridon! I will implement this and will let you the results! Thank you so much again! >>> >>> On Wed, Apr 20, 2016 at 1:03 AM, Lixia Zhang > wrote: >>> >>>> On Apr 18, 2016, at 10:40 AM, Spyridon (Spyros) Mastorakis > wrote: >>>> >>>> Hi Ravi, >>>> >>>> that looks right to me. >>>> >>>> There is also something else that you need to do: >>>> >>>> your consumer application should express Interests with the ?mustBeFresh? selector set in order to retrieve only ?fresh? data: >>>> >>>> https://github.com/named-data-ndnSIM/ndn-cxx/blob/ndn-cxx-0.3.4-ndnSIM/src/interest.hpp#L417-L423 >>>> >>>> To this end you should do something like that: >>>> >>>> Interest i(name); >>>> i.setMustBeFresh(true); >>>> ... >>>> ? >>>> m_face->onReceiveInterest(*interest); >>>> >>>> Hope that this helps. >>>> >>>> Spyridon (Spyros) Mastorakis >>>> Personal Website: http://cs.ucla.edu/~mastorakis/ >>>> Internet Research Laboratory >>>> Computer Science Department >>>> UCLA >>> >>> copied the list here. >>> Ravi, hopefully your issue was resolved? >>> >>> >>>>> On Apr 17, 2016, at 11:54 PM, Ravi Kumar Singh > wrote: >>>>> >>>>> Hi Lixia, >>>>> >>>>> No, I am not aware where we need to set this "must be fresh". I just followed the below link: >>>>> >>>>> https://github.com/cawka/ndnSIM-examples/blob/master/examples/ndn-simple-with-content-freshness.cc >>>>> >>>>> and changed like below: >>>>> >>>>> ccnxHelper.SetContentStore ("ns3::ndn::cs::Freshness::Lru","MaxSize", "2"); >>>>> >>>>> and >>>>> producerHelper.SetAttribute ("Freshness", TimeValue (Seconds (2.0))); >>>>> >>>>> Please let me know where exactly we have to set "must be fresh" or anything we need to do? >>>>> >>>>> Thanks and Regards, >>>>> Ravi Kumar Singh >>>>> >>>>> On Sun, Apr 17, 2016 at 11:25 PM, Lixia Zhang > wrote: >>>>> >>>>>> On Apr 17, 2016, at 12:27 PM, Ravi Kumar Singh > wrote: >>>>>> >>>>>> Hi Alex/Lixia/Team, >>>>>> >>>>>> Thank you so much for the help! Now, I am trying to use the ns3::ndn::cs::Freshness::Lru feature to use the freshness. But it seems its not giving desired results. Even after the freshness has expired the next interest is being served from the Cache server and not from the Origin Server. And as per the policy(ns3::ndn::cs::Freshness::Lru),it cache Data packets only for the time indicated by FreshnessPeriod. >>>>> >>>>> did you set "must be fresh" in your interests packets? >>>>> >>>>>> Thanks and Regards, >>>>>> Ravi Singh >>>>>> >>>>>> On Wed, Apr 13, 2016 at 9:41 PM, Alex Afanasyev > wrote: >>>>>> >>>>>>> On Apr 12, 2016, at 11:13 PM, Ravi Kumar Singh > wrote: >>>>>>> >>>>>>> Forgot to include team. >>>>>>> >>>>>>> ---------- Forwarded message ---------- >>>>>>> From: Ravi Kumar Singh > >>>>>>> Date: Wed, Apr 13, 2016 at 2:11 AM >>>>>>> Subject: Re: [ndnSIM] Seeking help regarding ndnsim; intreset with different sequence number >>>>>>> To: Lixia Zhang > >>>>>>> >>>>>>> >>>>>>> Thanks Lixia! I will try setting up a second consumer to request the same data. >>>>>>> But, in our experiment, we need to see what happens when the same consumer requests the same interest multiple times. I tried writing my own implementation of a consumer, but still only the first interest is working well and rest all interest are not even forwarding from the consumer(same) itself. >>>>>>> >>>>>>> Following is a log of its operation ( with my own implemention of one consumer sending three same interest): >>>>>>> >>>>>>> 1: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=4231791817 >>>>>>> 2: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2837832477 >>>>>>> 3: 1s 0 CustomApp:SendInterest(): [DEBUG] Sending Interest packet for /root/%FE%00?ndn.InterestLifetime=1000&ndn.Nonce=2794407255 >>>>>>> 4: 1.01002s 1 ndn.cs.Lru:Lookup(0x1493c10, /root/%FE%00) >>>>>>> 5: 1.02004s 2 ndn.Producer:OnInterest(0x14fce90, 0x1528ae8) >>>>>>> 6: 1.02004s 2 ndn.Producer:OnInterest(): [INFO ] node(2) responding with Data: /root/%FE%00 >>>>>>> 7: 1.03089s 1 ndn.cs.Lru:Add(0x1493c10, /root/%FE%00) >>>>>>> 8: 1.04174s 0 CustomApp:OnData(): [DEBUG] Receiving Data packet for /root/%FE%00 >>>>>>> >>>>>>> As, you can see from the log, only first interest is working file and rest 2 interest are not even forwarding from the consumer itself. >>>>>> >>>>>> Hi Ravi, >>>>>> >>>>>> What you see is correct and intentional behavior of an NDN router. You're trying to send 3 interests for the same data at the exactly the same time. As a result, these 3 interests will be aggregated into one and only one will be sent further. Also, given that the same app (though the same face) is sending those interests, only one data is returned back. >>>>>> >>>>>> Depending on what specific effect you want to observe, you may want to spread out sending interests in time and/or request from different simulated nodes (different app instances). >>>>>> >>>>>> --- >>>>>> Alex >>>>>> >>>>>>> Please suggest! >>>>>>> >>>>>>> Regards, >>>>>>> Ravi >>>>>>> >>>>>>> On Wed, Apr 13, 2016 at 12:31 AM, Lixia Zhang > wrote: >>>>>>> >>>>>>>> On Apr 12, 2016, at 9:20 PM, Ravi Kumar Singh > wrote: >>>>>>>> >>>>>>>> Hi Team, >>>>>>>> >>>>>>>> I am a Graduate student of Rochester Institue of Technology, New York. Currently, I am working on a research paper based on NDN along with my Prof. >>>>>>>> Currently, we want to simulate the NDN with your software NDNSIM. We want to simulate the scenario where the consumer is sending the same interest (same sequence number) multiple times to the producer so that the cache Server would serve the interest as it would have the content in its cache instead of serving the request from the producer. >>>>>>>> We tried googling but couldn't found any relevant link for this scenario. >>>>>>>> >>>>>>>> Requesting you to please help us on how we can simulate the scenario where the consumer is sending the same interest(same sequence number) instead of the incremental sequence number (default behaviour). >>>>>>> >>>>>>> it seems to me easier to set up a second consumer to request the same data, rather than forcing the same consumer to send repeated interest. >>>>>> >>>>>> > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From carlzu8 at gmail.com Wed Apr 27 02:43:11 2016 From: carlzu8 at gmail.com (Carl) Date: Wed, 27 Apr 2016 11:43:11 +0200 Subject: [ndnSIM] multicast-udp-face Message-ID: <572089AF.9040402@gmail.com> Hi folks, is there any example for using multicast-udp-face ?. could it be used for broadcasting an interest to neighbors ?. Moreover, what is the first argument in the constructor ? (const protocol::endpoint &multicastGroup). How this could be initialized so that a node can broadcast an interest to the neighbors ? If we use such a multicast face, then what about the strategy ?. I mean why not to perform multicast using the multicast strategy for example ?. And after all, in general, what is the true way of broadcasting an interest to neighbors Alex, could you please shed light on this ? Thanks, C From M.AbdollahiSabet at mail.sbu.ac.ir Wed Apr 27 10:02:54 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Wed, 27 Apr 2016 21:32:54 +0430 Subject: [ndnSIM] Scenario template and visualizer References: <4AC03A6244C3C34BB52A7EC60B799C4C043E7B52@m-pdc.sbu.ac.ir> <20A19D97-9284-45F5-B4B7-27587CB80BB9@cs.ucla.edu> Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A2A@m-pdc.sbu.ac.ir> Alex, I've followed your scenario template(from you GitHub page). I'm not aware if any other template exists. 'getme-simple' is my written scenario which has my extensions as header. Thanks Sabet -----Original Message----- From: Alex Afanasyev [mailto:aa at cs.ucla.edu] Sent: Wed 4/27/2016 2:58 AM To: Muhammad Hosain Abdollahi Sabet Cc: ndnsim at lists.cs.ucla.edu Subject: Re: [ndnSIM] Scenario template and visualizer Please be more specific. Which scenario template you used and what is 'getme-simple' scenario? Did you write this or is it a part of the template? > On Apr 26, 2016, at 12:07 AM, Muhammad Hosain Abdollahi Sabet wrote: > > Hi, > > I've followed scenario template instruction for my experimentations. While previous ones were built sucessfully with visualizer, the last one does not go with --vis. Actually It gives me no error regarding to the situation. > > suser at ubuntu:~/ndnSIM/custom-scenario/passive-consumer$ ./waf --run getme-simple --vis > Waf: Entering directory `/../ndnSIM/custom-scenario/passive-consumer/build' > Waf: Leaving directory `/../ndnSIM/custom-scenario/passive-consumer/build' > 'build' finished successfully (0.024s) > > But noting shows up. > Anyone can help me? > > Thanks, > Sabet > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From aa at CS.UCLA.EDU Wed Apr 27 11:42:14 2016 From: aa at CS.UCLA.EDU (Alex Afanasyev) Date: Wed, 27 Apr 2016 11:42:14 -0700 Subject: [ndnSIM] Scenario template and visualizer In-Reply-To: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A2A@m-pdc.sbu.ac.ir> References: <4AC03A6244C3C34BB52A7EC60B799C4C043E7B52@m-pdc.sbu.ac.ir> <20A19D97-9284-45F5-B4B7-27587CB80BB9@cs.ucla.edu> <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A2A@m-pdc.sbu.ac.ir> Message-ID: <082A09FE-0C1D-4EDD-A904-F25A64DD5900@cs.ucla.edu> Hi Sabet, In that case I can only give you a wild guess of what can be wrong with your scenario. '--vis' option relies on the fact that your scenario will process command-line parameters according to NS-3 convention. To enable this, you have to include these lines somewhere before you create your topology (see ndnsim.net for examples): // Read optional command-line parameters (e.g., enable visualizer with ./waf --run=<> --visualize CommandLine cmd; cmd.Parse(argc, argv); --- Alex > On Apr 27, 2016, at 10:02 AM, Muhammad Hosain Abdollahi Sabet wrote: > > Alex, > > I've followed your scenario template(from you GitHub page). I'm not aware if any other template exists. 'getme-simple' is my written scenario which has my extensions as header. > > Thanks > Sabet > > -----Original Message----- > From: Alex Afanasyev [mailto:aa at cs.ucla.edu] > Sent: Wed 4/27/2016 2:58 AM > To: Muhammad Hosain Abdollahi Sabet > Cc: ndnsim at lists.cs.ucla.edu > Subject: Re: [ndnSIM] Scenario template and visualizer > > Please be more specific. Which scenario template you used and what is 'getme-simple' scenario? Did you write this or is it a part of the template? > > > On Apr 26, 2016, at 12:07 AM, Muhammad Hosain Abdollahi Sabet wrote: > > > > Hi, > > > > I've followed scenario template instruction for my experimentations. While previous ones were built sucessfully with visualizer, the last one does not go with --vis. Actually It gives me no error regarding to the situation. > > > > suser at ubuntu:~/ndnSIM/custom-scenario/passive-consumer$ ./waf --run getme-simple --vis > > Waf: Entering directory `/../ndnSIM/custom-scenario/passive-consumer/build' > > Waf: Leaving directory `/../ndnSIM/custom-scenario/passive-consumer/build' > > 'build' finished successfully (0.024s) > > > > But noting shows up. > > Anyone can help me? > > > > Thanks, > > Sabet > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 841 bytes Desc: Message signed with OpenPGP using GPGMail URL: From monikabaraut at gmail.com Wed Apr 27 14:55:32 2016 From: monikabaraut at gmail.com (Monika Dangi) Date: Wed, 27 Apr 2016 17:55:32 -0400 Subject: [ndnSIM] How can application detect change in point of attachment to the Internet In-Reply-To: <58FA0396-9EDC-4AF5-85F8-BEF939629C30@gmail.com> References: <604CCF0B-EA77-47CF-9C39-F3CBE198DED3@cs.ucla.edu> <58FA0396-9EDC-4AF5-85F8-BEF939629C30@gmail.com> Message-ID: Hello Rozhonova, Thank-you for your reply. I am new to ndnSIM and ns3. i read extensive on what are callbacks and how to use them. But i am learner, i could not called callbacks on association and deassociation event. Can you please elaborate it. i can tell you my algorithm: this shold be done by the application installed on mobile node. on_association() { start_time=scheduler::now(); // start_time a variable defined in application header rto=double(2.0) // rto is variable defined in application header } It may be small problem for you but really i m not getting how to start, i mean where to write the callback signature and where to setup write makecallback(). do i need to write this(on_association) function signature in ns3::sta-wifi-mac or in application.cc file?? i can see only tracecallback on association, can i do the required functionality on these tracecall or do i need to add new callbacks?? please guide me here as i have no body to ask to and i am confused after reading so much about callbacks in ns3. Thank-you in advance On Sun, Apr 24, 2016 at 9:56 AM, Natalya Rozhnova < rozhnova.natalya at gmail.com> wrote: > Hi Monika, > > This is not a very trivial problem :) > > Well, what you can do is to look into the ns3/wifi module and use the > callbacks provided by the sta-wifi-mac on association and disassociation > events. > You can use these callbacks from your producer node and activate whatever > you want when this events happen. Or, if the implemented callbacks are not > sufficient for your goal, you can add your own ones. > > Hope it helps, > Best, > Natalya > > > Le 24 avr. 2016 ? 15:19, Monika Dangi a ?crit : > > > > Thank you Lixia Zhang for your reply. > > well my problem is the producer is mobile, and i want the producer > application to know when the point of attachment to a router is changed so > that the retransmission timer is set accordingly. Is there any function in > ns3/mobility-module.h or in the ns3/wifi-module.h( perhaps in > YansWifiPhyHelper ) that returns the node id of the router to which the > mobile node ( producer ) is attached???? The scenario is, there is a grid > of nodes and an mobile node which is moving randomly in any direction and > may get attached to any grid node and starts sending packet. > > > > i just want to know the time till a mobile node stays attached to a > router(grid node), so i thought if there is any function in > ns3/mobility-module.h or ns3/wifi-module.h, that can tell the current > attached router node's id then i can calculate the time mobile node stays > attached to a router. > > i hope you understand the scenario. > > Thank-you > > > > On Wed, Apr 20, 2016 at 8:13 PM, Lixia Zhang wrote: > > > >> On Apr 20, 2016, at 4:24 AM, Monika Dangi > wrote: > >> > >> Hey All, > >> i am working on mobility model in NDN, well there is a way of > communication from application layer to network layer. But I am stuck at > how to tell application layer that the mobile node has moved and now the > point of attachment is changed. > > > > Not sure I understand the picture in your mind. > > 1/ NDN's communication model is data fetching: consumer app sends > interest packets, that either successfully bring back data packets, or fail > to do do. > > 2/ if the mobile nodes are consumers, consumers do not need to do > anything special when moving. > > 3/ if the mobile nodes are producers, depending how producer mobility is > handled, consumers figure out ways to get the data produced by mobile > producers. > > 4/ there is a recent paper on > > "A Survey of Mobility Support in Named Data Networking" > > > http://lasr.cs.ucla.edu/afanasyev/data/files/Zhang/nom16-ndn-mobility-survey.pdf > > > >> Is there anybody working on similar problem? or can anybody provide me > literature so that i can look myself? > >> > >> Thank-you > >> > >> -- > >> Monika > >> MTech CSE > >> IIT Roorkee > >> _______________________________________________ > >> ndnSIM mailing list > >> ndnSIM at lists.cs.ucla.edu > >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > > > > > > -- > > Monika > > MTech CSE > > IIT Roorkee > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -- Monika MTech CSE IIT Roorkee -------------- next part -------------- An HTML attachment was scrubbed... URL: From z.rezaiefar at yahoo.com Wed Apr 27 19:49:13 2016 From: z.rezaiefar at yahoo.com (Zeinab Rezaiefar) Date: Thu, 28 Apr 2016 02:49:13 +0000 (UTC) Subject: [ndnSIM] change consumer and producer randomly References: <1372735601.3756090.1461811753958.JavaMail.yahoo.ref@mail.yahoo.com> Message-ID: <1372735601.3756090.1461811753958.JavaMail.yahoo@mail.yahoo.com> Hello every one,I would like to know how I can change consumer and producer randomly during simulation time. let consider we have 5 nodes and node 1 to node 4 all connect to the node 5? and then?select two nodes among node 1 to node 4? as consumer and producer. I would like to know how I should schedule them that after every?1 second, the producer and consumer change while all of the users request the same content.?moreover,?for example?user 1 sends request for?the specific packet at second one and later at second 8 again this user may send request for this packet.?any help will be appreciatethanks in advanceregardsZeinab?? -------------- next part -------------- An HTML attachment was scrubbed... URL: From rozhnova.natalya at gmail.com Thu Apr 28 02:06:41 2016 From: rozhnova.natalya at gmail.com (Natalya Rozhnova) Date: Thu, 28 Apr 2016 11:06:41 +0200 Subject: [ndnSIM] How can application detect change in point of attachment to the Internet In-Reply-To: References: <604CCF0B-EA77-47CF-9C39-F3CBE198DED3@cs.ucla.edu> <58FA0396-9EDC-4AF5-85F8-BEF939629C30@gmail.com> Message-ID: Hi Monika, First, don't be afraid and don't hesitate to look more attentively into the code. That's how we all learn. :) So, you can use the traced callbacks as following (Example for a function YOURFUNCTION implemented at the Producer application): wifi_mac->TraceConnectWithoutContext("Assoc", MakeCallback(&Producer::YOURFUNCTION, this)); wifi_mac->TraceConnectWithoutContext("DeAssoc", MakeCallback(&Producer::YOURFUNCTION, this)); How it works actually (I will try to explain it easier...): when the event of association happens, the traced callback at the sta-wifi-mac will be called. Here, you catch this event and extend its functionnalities as you want precising your own function. The same principle is for the Deassoc. Well, now as you can see you will need to retrieve the WifiMac of your node. I think that at the application class you have a pointer to the node and, thus, you can easily get the access to WifiNetDevice and then to WifiMac. To get this stuff, I invite you to look at the corresponding functions of the corresponding objects. So basically, the algorithm will be as follows: You iterate all NetDevices in your node and try to find the WifiNetDevice (if any). For example, you can use the ns3::DynamicCast to convert from NetDevice to WifiNetDevice. Then, you try to get the WifiMac using an attributed function (GetMac() in this case ;-)). In my example above, I called this parameter wifi_mac but you can choose another name. It will be something like: Ptr wifi_mac = wireless_net_device->GetMac(); Note that all of the described above should be done only once. So, try to select a good place where to do this. That's all actually. :) Best, Natalya 2016-04-27 23:55 GMT+02:00 Monika Dangi : > Hello Rozhonova, > Thank-you for your reply. I am new to ndnSIM and ns3. i read extensive on > what are callbacks and how to use them. But i am learner, i could not > called callbacks on association and deassociation event. > Can you please elaborate it. i can tell you my algorithm: > this shold be done by the application installed on mobile node. > on_association() > { start_time=scheduler::now(); // start_time a variable defined in > application header > rto=double(2.0) // rto is variable defined in application header > } > > It may be small problem for you but really i m not getting how to start, i > mean where to write the callback signature and where to setup write > makecallback(). do i need to write this(on_association) function signature > in ns3::sta-wifi-mac or in application.cc file?? i can see only > tracecallback on association, can i do the required functionality on these > tracecall or do i need to add new callbacks?? > > please guide me here as i have no body to ask to and i am confused after > reading so much about callbacks in ns3. > > Thank-you in advance > > On Sun, Apr 24, 2016 at 9:56 AM, Natalya Rozhnova < > rozhnova.natalya at gmail.com> wrote: > >> Hi Monika, >> >> This is not a very trivial problem :) >> >> Well, what you can do is to look into the ns3/wifi module and use the >> callbacks provided by the sta-wifi-mac on association and disassociation >> events. >> You can use these callbacks from your producer node and activate whatever >> you want when this events happen. Or, if the implemented callbacks are not >> sufficient for your goal, you can add your own ones. >> >> Hope it helps, >> Best, >> Natalya >> >> > Le 24 avr. 2016 ? 15:19, Monika Dangi a ?crit >> : >> > >> > Thank you Lixia Zhang for your reply. >> > well my problem is the producer is mobile, and i want the producer >> application to know when the point of attachment to a router is changed so >> that the retransmission timer is set accordingly. Is there any function in >> ns3/mobility-module.h or in the ns3/wifi-module.h( perhaps in >> YansWifiPhyHelper ) that returns the node id of the router to which the >> mobile node ( producer ) is attached???? The scenario is, there is a grid >> of nodes and an mobile node which is moving randomly in any direction and >> may get attached to any grid node and starts sending packet. >> > >> > i just want to know the time till a mobile node stays attached to a >> router(grid node), so i thought if there is any function in >> ns3/mobility-module.h or ns3/wifi-module.h, that can tell the current >> attached router node's id then i can calculate the time mobile node stays >> attached to a router. >> > i hope you understand the scenario. >> > Thank-you >> > >> > On Wed, Apr 20, 2016 at 8:13 PM, Lixia Zhang wrote: >> > >> >> On Apr 20, 2016, at 4:24 AM, Monika Dangi >> wrote: >> >> >> >> Hey All, >> >> i am working on mobility model in NDN, well there is a way of >> communication from application layer to network layer. But I am stuck at >> how to tell application layer that the mobile node has moved and now the >> point of attachment is changed. >> > >> > Not sure I understand the picture in your mind. >> > 1/ NDN's communication model is data fetching: consumer app sends >> interest packets, that either successfully bring back data packets, or fail >> to do do. >> > 2/ if the mobile nodes are consumers, consumers do not need to do >> anything special when moving. >> > 3/ if the mobile nodes are producers, depending how producer mobility >> is handled, consumers figure out ways to get the data produced by mobile >> producers. >> > 4/ there is a recent paper on >> > "A Survey of Mobility Support in Named Data Networking" >> > >> http://lasr.cs.ucla.edu/afanasyev/data/files/Zhang/nom16-ndn-mobility-survey.pdf >> > >> >> Is there anybody working on similar problem? or can anybody provide me >> literature so that i can look myself? >> >> >> >> Thank-you >> >> >> >> -- >> >> Monika >> >> MTech CSE >> >> IIT Roorkee >> >> _______________________________________________ >> >> ndnSIM mailing list >> >> ndnSIM at lists.cs.ucla.edu >> >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >> > >> > >> > >> > >> > -- >> > Monika >> > MTech CSE >> > IIT Roorkee >> > _______________________________________________ >> > ndnSIM mailing list >> > ndnSIM at lists.cs.ucla.edu >> > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >> >> > > > -- > Monika > MTech CSE > IIT Roorkee > -------------- next part -------------- An HTML attachment was scrubbed... URL: From monikabaraut at gmail.com Thu Apr 28 05:28:42 2016 From: monikabaraut at gmail.com (Monika Dangi) Date: Thu, 28 Apr 2016 08:28:42 -0400 Subject: [ndnSIM] How can application detect change in point of attachment to the Internet In-Reply-To: References: <604CCF0B-EA77-47CF-9C39-F3CBE198DED3@cs.ucla.edu> <58FA0396-9EDC-4AF5-85F8-BEF939629C30@gmail.com> Message-ID: Hey Rozhonova, Thanks for boosting my confidence, i read again and looked into the code. i tried to connect using config path, first just to see if the callback is set properly, i am just using print statement in function, the callback signature is following: static void on_assoc(Mac48Address val) { std::cout<<"on association to "<GetId ()<<"/DeviceList/*/$ns3::WifiNetDevice/Mac/$ns3::StaWifiMac/Assoc"; Config::ConnectWithoutContext (oss.str (), MakeCallback (&on_assoc)); But there is no output. where m i wrong?? Thank-you On Thu, Apr 28, 2016 at 5:06 AM, Natalya Rozhnova < rozhnova.natalya at gmail.com> wrote: > Hi Monika, > > First, don't be afraid and don't hesitate to look more attentively into > the code. That's how we all learn. :) > > So, you can use the traced callbacks as following (Example for a function > YOURFUNCTION implemented at the Producer application): > > wifi_mac->TraceConnectWithoutContext("Assoc", > MakeCallback(&Producer::YOURFUNCTION, this)); > wifi_mac->TraceConnectWithoutContext("DeAssoc", > MakeCallback(&Producer::YOURFUNCTION, this)); > > How it works actually (I will try to explain it easier...): when the event > of association happens, the traced callback at the sta-wifi-mac will be > called. Here, you catch this event and extend its functionnalities as you > want precising your own function. The same principle is for the Deassoc. > > Well, now as you can see you will need to retrieve the WifiMac of your > node. I think that at the application class you have a pointer to the node > and, thus, you can easily get the access to WifiNetDevice and then to > WifiMac. To get this stuff, I invite you to look at the corresponding > functions of the corresponding objects. > > So basically, the algorithm will be as follows: > You iterate all NetDevices in your node and try to find the WifiNetDevice > (if any). > For example, you can use the ns3::DynamicCast to > convert from NetDevice to WifiNetDevice. > Then, you try to get the WifiMac using an attributed function (GetMac() in > this case ;-)). In my example above, I called this parameter wifi_mac but > you can choose another name. It will be something like: Ptr > wifi_mac = wireless_net_device->GetMac(); > > Note that all of the described above should be done only once. So, try to > select a good place where to do this. > That's all actually. :) > > Best, > Natalya > > > 2016-04-27 23:55 GMT+02:00 Monika Dangi : > >> Hello Rozhonova, >> Thank-you for your reply. I am new to ndnSIM and ns3. i read extensive on >> what are callbacks and how to use them. But i am learner, i could not >> called callbacks on association and deassociation event. >> Can you please elaborate it. i can tell you my algorithm: >> this shold be done by the application installed on mobile node. >> on_association() >> { start_time=scheduler::now(); // start_time a variable defined in >> application header >> rto=double(2.0) // rto is variable defined in application header >> } >> >> It may be small problem for you but really i m not getting how to start, >> i mean where to write the callback signature and where to setup write >> makecallback(). do i need to write this(on_association) function signature >> in ns3::sta-wifi-mac or in application.cc file?? i can see only >> tracecallback on association, can i do the required functionality on these >> tracecall or do i need to add new callbacks?? >> >> please guide me here as i have no body to ask to and i am confused after >> reading so much about callbacks in ns3. >> >> Thank-you in advance >> >> On Sun, Apr 24, 2016 at 9:56 AM, Natalya Rozhnova < >> rozhnova.natalya at gmail.com> wrote: >> >>> Hi Monika, >>> >>> This is not a very trivial problem :) >>> >>> Well, what you can do is to look into the ns3/wifi module and use the >>> callbacks provided by the sta-wifi-mac on association and disassociation >>> events. >>> You can use these callbacks from your producer node and activate >>> whatever you want when this events happen. Or, if the implemented callbacks >>> are not sufficient for your goal, you can add your own ones. >>> >>> Hope it helps, >>> Best, >>> Natalya >>> >>> > Le 24 avr. 2016 ? 15:19, Monika Dangi a >>> ?crit : >>> > >>> > Thank you Lixia Zhang for your reply. >>> > well my problem is the producer is mobile, and i want the producer >>> application to know when the point of attachment to a router is changed so >>> that the retransmission timer is set accordingly. Is there any function in >>> ns3/mobility-module.h or in the ns3/wifi-module.h( perhaps in >>> YansWifiPhyHelper ) that returns the node id of the router to which the >>> mobile node ( producer ) is attached???? The scenario is, there is a grid >>> of nodes and an mobile node which is moving randomly in any direction and >>> may get attached to any grid node and starts sending packet. >>> > >>> > i just want to know the time till a mobile node stays attached to a >>> router(grid node), so i thought if there is any function in >>> ns3/mobility-module.h or ns3/wifi-module.h, that can tell the current >>> attached router node's id then i can calculate the time mobile node stays >>> attached to a router. >>> > i hope you understand the scenario. >>> > Thank-you >>> > >>> > On Wed, Apr 20, 2016 at 8:13 PM, Lixia Zhang >>> wrote: >>> > >>> >> On Apr 20, 2016, at 4:24 AM, Monika Dangi >>> wrote: >>> >> >>> >> Hey All, >>> >> i am working on mobility model in NDN, well there is a way of >>> communication from application layer to network layer. But I am stuck at >>> how to tell application layer that the mobile node has moved and now the >>> point of attachment is changed. >>> > >>> > Not sure I understand the picture in your mind. >>> > 1/ NDN's communication model is data fetching: consumer app sends >>> interest packets, that either successfully bring back data packets, or fail >>> to do do. >>> > 2/ if the mobile nodes are consumers, consumers do not need to do >>> anything special when moving. >>> > 3/ if the mobile nodes are producers, depending how producer mobility >>> is handled, consumers figure out ways to get the data produced by mobile >>> producers. >>> > 4/ there is a recent paper on >>> > "A Survey of Mobility Support in Named Data Networking" >>> > >>> http://lasr.cs.ucla.edu/afanasyev/data/files/Zhang/nom16-ndn-mobility-survey.pdf >>> > >>> >> Is there anybody working on similar problem? or can anybody provide >>> me literature so that i can look myself? >>> >> >>> >> Thank-you >>> >> >>> >> -- >>> >> Monika >>> >> MTech CSE >>> >> IIT Roorkee >>> >> _______________________________________________ >>> >> ndnSIM mailing list >>> >> ndnSIM at lists.cs.ucla.edu >>> >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >>> > >>> > >>> > >>> > >>> > -- >>> > Monika >>> > MTech CSE >>> > IIT Roorkee >>> > _______________________________________________ >>> > ndnSIM mailing list >>> > ndnSIM at lists.cs.ucla.edu >>> > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim >>> >>> >> >> >> -- >> Monika >> MTech CSE >> IIT Roorkee >> > > -- Monika MTech CSE IIT Roorkee -------------- next part -------------- An HTML attachment was scrubbed... URL: From saltarinj at gmail.com Thu Apr 28 12:53:25 2016 From: saltarinj at gmail.com (Jonnahtan Saltarin) Date: Thu, 28 Apr 2016 19:53:25 +0000 Subject: [ndnSIM] ndnSIM on Windows 10 In-Reply-To: References: Message-ID: Hi all, Has anybody tested ndnSIM on the new windows 10 Ubuntu bash(*)? I've been testing it and so far it works fine. To be honest, I have tested only ndn-test and some examples. Thus, I wanted to know if someone else have tested it more extensively and found any issue? Just to know what to expect. (*) https://blogs.windows.com/buildingapps/2016/03/30/run-bash-on-ubuntu-on-windows/ Best, Jonnahtan Saltarin -------------- next part -------------- An HTML attachment was scrubbed... URL: From monikabaraut at gmail.com Thu Apr 28 13:54:20 2016 From: monikabaraut at gmail.com (Monika Dangi) Date: Thu, 28 Apr 2016 16:54:20 -0400 Subject: [ndnSIM] How to create pointer to a customized App Message-ID: Hello, I wrote my own producer App, MyApp. then i installed it on a node like: ndn::AppHelper appHelper ("MyApp"); ApplicationContainer app = appHelper.Install (mobileNodes); now i want to use pointer to this app and the object of this MyApp. i used method Ptr ap_ptr =app.Get(0); but when i use the pointer like ap_ptr->myfunction(); there is an error that Application has no function called myfunction. i derived MyApp from Application and added ane more function myfunction. now i want to pass the pointer of MyApp so that i can use myfunction in other function. but all i can get the pointer to Application which doesnt have myfunction. what should i do? Also how to get object of MyApp Application. or do i have to now access this application via node only?? can anybody guide me?? just a little hint. -- Monika MTech CSE IIT Roorkee -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Thu Apr 28 14:26:48 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Thu, 28 Apr 2016 14:26:48 -0700 Subject: [ndnSIM] change consumer and producer randomly In-Reply-To: <1372735601.3756090.1461811753958.JavaMail.yahoo@mail.yahoo.com> References: <1372735601.3756090.1461811753958.JavaMail.yahoo.ref@mail.yahoo.com> <1372735601.3756090.1461811753958.JavaMail.yahoo@mail.yahoo.com> Message-ID: <54341FA3-52B1-42BA-8B74-A5BFB889DEEB@cs.ucla.edu> Hi, in your simulation scenario, every time that you call the install method for an application, this call returns a container of the applications installed. In this way, you can collect all the application instances and then generate a random number and decide which application instance to start first using the StartApplication method and a specified time point. You can schedule any actions that you would like your application to take as NS3 events in the code of your application. Hope that this helps. Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 27, 2016, at 7:49 PM, Zeinab Rezaiefar wrote: > > Hello every one, > I would like to know how I can change consumer and producer randomly during simulation time. let consider we have 5 nodes and node 1 to node 4 all connect to the node 5 and then select two nodes among node 1 to node 4 as consumer and producer. I would like to know how I should schedule them that after every 1 second, the producer and consumer change while all of the users request the same content. moreover, for example user 1 sends request for the specific packet at second one and later at second 8 again this user may send request for this packet. > any help will be appreciate > thanks in advance > regards > Zeinab -------------- next part -------------- An HTML attachment was scrubbed... URL: From mastorakis at CS.UCLA.EDU Thu Apr 28 14:35:37 2016 From: mastorakis at CS.UCLA.EDU (Spyridon (Spyros) Mastorakis) Date: Thu, 28 Apr 2016 14:35:37 -0700 Subject: [ndnSIM] ndnSIM on Windows 10 In-Reply-To: References: Message-ID: Hi Jonathan, it is not clear to me whether it will work (I do not know how much Microsoft has abstracted their OS), but we can try and see what is going on. Unfortunately, I am not using windows, but please feel free to try and let us know about the result. Thanks! Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA > On Apr 28, 2016, at 12:53 PM, Jonnahtan Saltarin wrote: > > Hi all, > > Has anybody tested ndnSIM on the new windows 10 Ubuntu bash(*)? > > I've been testing it and so far it works fine. To be honest, I have tested only ndn-test and some examples. Thus, I wanted to know if someone else have tested it more extensively and found any issue? Just to know what to expect. > > (*) https://blogs.windows.com/buildingapps/2016/03/30/run-bash-on-ubuntu-on-windows/ > > Best, > Jonnahtan Saltarin -------------- next part -------------- An HTML attachment was scrubbed... URL: From anilj.mailing at gmail.com Thu Apr 28 21:47:18 2016 From: anilj.mailing at gmail.com (Anil Jangam) Date: Thu, 28 Apr 2016 21:47:18 -0700 Subject: [ndnSIM] L3 tracer file roll over. Message-ID: Hi Alex/Spyros, Is there any way to set the roll-over size for the L3 tracer file? I am currently running a scenario where the file size is currently running at 107 MBytes size. I am not sure if this has any slowing down effect on the the simulator but I think it will help. Curious to know. /anil. -------------- next part -------------- An HTML attachment was scrubbed... URL: From ddhakal at gmail.com Fri Apr 29 01:50:17 2016 From: ddhakal at gmail.com (Dependra Dhakal) Date: Fri, 29 Apr 2016 14:20:17 +0530 Subject: [ndnSIM] how to run new forwarding strategy Message-ID: sir, i want to run new forwarding strategy.. for example load balancing given in example.. i have copied random-load-balancer-strategy.hpp and random-load-balancer-strategy.cpp file in /fwd/daemon/ and ndn-load-balancer.cc file in scratch and first i have done ./waf debug to compile the two modules. but when i run .cc file it gives me following error.. ../scratch/ndn-load-balancer.cc:7:63: fatal error: ndn-load-balancer/random-load-balancer-strategy.hpp: No such file or directory #include "ndn-load-balancer/random-load-balancer-strategy.hpp" how should i give the path.. i am not able to figure it out.... Please help me in this regard -- With Regards Dependra Dhakal -------------- next part -------------- An HTML attachment was scrubbed... URL: From faqzao at hotmail.com Fri Apr 29 02:47:36 2016 From: faqzao at hotmail.com (waldir moreira) Date: Fri, 29 Apr 2016 09:47:36 +0000 Subject: [ndnSIM] NFD android on Mac OS X Message-ID: Dear all, Do we have a guide for installing NFD android and related codes on OS X? I have successfully installed on Ubuntu and managed to run it through Eclipse+ADT. But if we have such a guide, I would avoid VMing. Cheers, Waldir Moreira LinkedIn profile -------------- next part -------------- An HTML attachment was scrubbed... URL: From zhang890724 at gmail.com Fri Apr 29 06:39:54 2016 From: zhang890724 at gmail.com (=?UTF-8?B?546O?=) Date: Fri, 29 Apr 2016 09:39:54 -0400 Subject: [ndnSIM] [ndnsim] differences of the forwarding strategies between ndnsim 1.0 and 2.0 Message-ID: Hi All, I am wondering the differences of the forwarding strategies between ndnsim 1.0 and 2.0. I know in version 2.0, NFD is used and I only found best-route and multicast strategies rather than like flooding, smart flooding etc in version 1.0. The multicast forwarding strategy forwards Interests to all upstreams so whether it is the same like flooding in version 1.0. In this case, I should use CalculateAllPossibleRoutes() function to make it work. If I use CalculateRoutes(), Interests only follow the single route like using best-route strategy. Appreciate your help. Thanks, Ding -------------- next part -------------- An HTML attachment was scrubbed... URL: From saltarinj at gmail.com Fri Apr 29 06:44:55 2016 From: saltarinj at gmail.com (Jonnahtan Saltarin) Date: Fri, 29 Apr 2016 13:44:55 +0000 Subject: [ndnSIM] ndnSIM on Windows 10 In-Reply-To: References: Message-ID: Hi Spyridon, Thanks for the mail. I tested only the compilation and some examples and it worked nicely. I will try to run the same experiments I was running on a linux machine and let you know how it goes. Best, Jonnahtan On Thu, Apr 28, 2016 at 11:35 PM Spyridon (Spyros) Mastorakis < mastorakis at cs.ucla.edu> wrote: > Hi Jonathan, > > it is not clear to me whether it will work (I do not know how much > Microsoft has abstracted their OS), but we can try and see what is going on. > > Unfortunately, I am not using windows, but please feel free to try and let > us know about the result. > > Thanks! > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > Computer Science Department > UCLA > > On Apr 28, 2016, at 12:53 PM, Jonnahtan Saltarin > wrote: > > Hi all, > > Has anybody tested ndnSIM on the new windows 10 Ubuntu bash(*)? > > I've been testing it and so far it works fine. To be honest, I have tested > only ndn-test and some examples. Thus, I wanted to know if someone else > have tested it more extensively and found any issue? Just to know what to > expect. > > (*) > https://blogs.windows.com/buildingapps/2016/03/30/run-bash-on-ubuntu-on-windows/ > > Best, > Jonnahtan Saltarin > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From monikabaraut at gmail.com Fri Apr 29 09:16:17 2016 From: monikabaraut at gmail.com (Monika Dangi) Date: Fri, 29 Apr 2016 12:16:17 -0400 Subject: [ndnSIM] How to create pointer to a customized App In-Reply-To: References: Message-ID: I got it.. I used Dynamic cast and it worked fine Thank-you On Thu, Apr 28, 2016 at 4:54 PM, Monika Dangi wrote: > Hello, > I wrote my own producer App, MyApp. then i installed it on a node like: > > ndn::AppHelper appHelper ("MyApp"); > ApplicationContainer app = appHelper.Install (mobileNodes); > now i want to use pointer to this app and the object of this MyApp. > i used method > Ptr ap_ptr =app.Get(0); > but when i use the pointer like > ap_ptr->myfunction(); > there is an error that Application has no function called myfunction. > i derived MyApp from Application and added ane more function myfunction. > now i want to pass the pointer of MyApp so that i can use myfunction in > other function. > but all i can get the pointer to Application which doesnt have myfunction. > what should i do? > Also how to get object of MyApp Application. or do i have to now access > this application via node only?? > can anybody guide me?? just a little hint. > > -- > Monika > MTech CSE > IIT Roorkee > -- Monika MTech CSE IIT Roorkee -------------- next part -------------- An HTML attachment was scrubbed... URL: From lixia at CS.UCLA.EDU Fri Apr 29 15:12:10 2016 From: lixia at CS.UCLA.EDU (Lixia Zhang) Date: Fri, 29 Apr 2016 15:12:10 -0700 Subject: [ndnSIM] NFD android on Mac OS X In-Reply-To: References: Message-ID: <084BF3E6-B14A-4F76-85D1-7980CBFE4034@cs.ucla.edu> > On Apr 29, 2016, at 2:47 AM, waldir moreira wrote: > > Dear all, > > Do we have a guide for installing NFD android and related codes on OS X? > > I have successfully installed on Ubuntu and managed to run it through Eclipse+ADT. > > But if we have such a guide, I would avoid VMing. 1/ this msg should go nfd-dev list 2/ Alex should know whether we have a guide for installing on Android 3/ yes there is NFD code for OS X (Google can probably get you there) > > Cheers, > > > Waldir Moreira > LinkedIn profile _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -------------- next part -------------- An HTML attachment was scrubbed... URL: From z.rezaiefar at yahoo.com Fri Apr 29 23:16:26 2016 From: z.rezaiefar at yahoo.com (Zeinab Rezaiefar) Date: Sat, 30 Apr 2016 06:16:26 +0000 (UTC) Subject: [ndnSIM] change consumer and producer randomly In-Reply-To: <54341FA3-52B1-42BA-8B74-A5BFB889DEEB@cs.ucla.edu> References: <54341FA3-52B1-42BA-8B74-A5BFB889DEEB@cs.ucla.edu> Message-ID: <1782390252.4962027.1461996986245.JavaMail.yahoo@mail.yahoo.com> hello,thank you so much Spyridon for nice explanation . I have defined random consumers and providers scenario for four nodes as below:?NodeContainer nodes; ? nodes.Create (5);? // Connecting nodes using two links ? PointToPointHelper p2p; ? p2p.Install (nodes.Get (0), nodes.Get (4)); ? p2p.Install (nodes.Get (4), nodes.Get (2)); p2p.Install (nodes.Get (3), nodes.Get (4)); ? p2p.Install (nodes.Get (1), nodes.Get (4)); ? // Install NDN stack on all nodes ? ndn::StackHelper ndnHelper; ndnHelper.SetPit ("ns3::ndn::pit::Lru","PitEntryPruningTimout","20"); ? ndnHelper.SetDefaultRoutes (true); ndnHelper.SetContentStore("ns3::ndn::cs::Lru", "MaxSize", "1000000000"); ? //ndnHelper.InstallAll (); ndnHelper.Install(nodes.Get (4)); ndnHelper.SetContentStore("ns3::ndn::cs::Nocache"); ndnHelper.Install(nodes.Get (0)); ndnHelper.Install(nodes.Get (1)); ndnHelper.Install(nodes.Get (2)); ndnHelper.Install(nodes.Get (3)); //*****************4/27 Ptr x = CreateObject (); ?ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerCbr"); ?ndn::AppHelper producerHelper ("ns3::ndn::Producer"); consumerHelper.SetPrefix ("/prefix"); ? consumerHelper.SetAttribute ("Frequency", StringValue ("5")); //?5 interests a second ?ApplicationContainer consumer[4][20]; producerHelper.SetPrefix ("/prefix"); ? producerHelper.SetAttribute ("PayloadSize", StringValue("1024")); ApplicationContainer producer[4][21];for ( int i=0;i <10;i++) { int provider=x->GetInteger (0,3); int user=x->GetInteger (0,3); while( (provider)==(user)){ user=x->GetInteger (0,3); } consumer[user][i]=consumerHelper.Install (nodes.Get (user)); consumer[user][i].Start(Seconds(2*i)); consumer[user][i].Stop(Seconds(2*i+1)); producer[provider][i]=producerHelper.Install (nodes.Get (provider)); producer[provider][i].Start(Seconds(2*i)); producer[provider][i].Stop(Seconds(2*i+2)); std::cout <<"provideris :"< wrote: Hi, in your simulation scenario, every time that you call the install method for an application, this call returns a container of the applications installed. In this way, you can collect all the application instances and then generate a random number and decide which application instance to start first using the StartApplication method and a specified time point. You can schedule any actions that you would like your application to take as NS3 events in the code of your application. Hope that this helps. Spyridon (Spyros) Mastorakis Personal Website:?http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory Computer Science Department UCLA On Apr 27, 2016, at 7:49 PM, Zeinab Rezaiefar wrote: Hello every one,I would like to know how I can change consumer and producer randomly during simulation time. let consider we have 5 nodes and node 1 to node 4 all connect to the node 5? and then?select two nodes among node 1 to node 4? as consumer and producer. I would like to know how I should schedule them that after every?1 second, the producer and consumer change while all of the users request the same content.?moreover,?for example?user 1 sends request for?the specific packet at second one and later at second 8 again this user may send request for this packet.?any help will be appreciatethanks in advanceregardsZeinab ? -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Sat Apr 30 23:06:21 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Sun, 1 May 2016 10:36:21 +0430 Subject: [ndnSIM] Scenario template and visualizer References: <4AC03A6244C3C34BB52A7EC60B799C4C043E7B52@m-pdc.sbu.ac.ir> <20A19D97-9284-45F5-B4B7-27587CB80BB9@cs.ucla.edu> <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A2A@m-pdc.sbu.ac.ir> <082A09FE-0C1D-4EDD-A904-F25A64DD5900@cs.ucla.edu> Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A2B@m-pdc.sbu.ac.ir> Hi Alex, Those two lines had been there but no difference. Actually getme-simple is a copy of ndn-simple with some extensions in #include. https://github.com/Mr-Norrell/PassiveConsumer Thanks, Sabet -----Original Message----- From: Alex Afanasyev [mailto:aa at cs.ucla.edu] Sent: Wed 4/27/2016 11:12 PM To: Muhammad Hosain Abdollahi Sabet Cc: ndnsim at lists.cs.ucla.edu Subject: Re: [ndnSIM] Scenario template and visualizer Hi Sabet, In that case I can only give you a wild guess of what can be wrong with your scenario. '--vis' option relies on the fact that your scenario will process command-line parameters according to NS-3 convention. To enable this, you have to include these lines somewhere before you create your topology (see ndnsim.net for examples): // Read optional command-line parameters (e.g., enable visualizer with ./waf --run=<> --visualize CommandLine cmd; cmd.Parse(argc, argv); --- Alex > On Apr 27, 2016, at 10:02 AM, Muhammad Hosain Abdollahi Sabet wrote: > > Alex, > > I've followed your scenario template(from you GitHub page). I'm not aware if any other template exists. 'getme-simple' is my written scenario which has my extensions as header. > > Thanks > Sabet > > -----Original Message----- > From: Alex Afanasyev [mailto:aa at cs.ucla.edu] > Sent: Wed 4/27/2016 2:58 AM > To: Muhammad Hosain Abdollahi Sabet > Cc: ndnsim at lists.cs.ucla.edu > Subject: Re: [ndnSIM] Scenario template and visualizer > > Please be more specific. Which scenario template you used and what is 'getme-simple' scenario? Did you write this or is it a part of the template? > > > On Apr 26, 2016, at 12:07 AM, Muhammad Hosain Abdollahi Sabet wrote: > > > > Hi, > > > > I've followed scenario template instruction for my experimentations. While previous ones were built sucessfully with visualizer, the last one does not go with --vis. Actually It gives me no error regarding to the situation. > > > > suser at ubuntu:~/ndnSIM/custom-scenario/passive-consumer$ ./waf --run getme-simple --vis > > Waf: Entering directory `/../ndnSIM/custom-scenario/passive-consumer/build' > > Waf: Leaving directory `/../ndnSIM/custom-scenario/passive-consumer/build' > > 'build' finished successfully (0.024s) > > > > But noting shows up. > > Anyone can help me? > > > > Thanks, > > Sabet > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From M.AbdollahiSabet at mail.sbu.ac.ir Sat Apr 30 23:59:49 2016 From: M.AbdollahiSabet at mail.sbu.ac.ir (Muhammad Hosain Abdollahi Sabet) Date: Sun, 1 May 2016 11:29:49 +0430 Subject: [ndnSIM] Porting scenarios to ndnSIM 2.1 References: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A20@m-pdc.sbu.ac.ir> <1FDB6284-9893-44B6-84CF-C82D0BCE645E@cs.ucla.edu> <4AC03A6244C3C34BB52A7EC60B799C4C043E7B56@m-pdc.sbu.ac.ir> Message-ID: <4AC03A6244C3C34BB52A7EC60B799C4C03CC2A2C@m-pdc.sbu.ac.ir> Alex, What is equivalent of /model/wire/ndnsim in V.2? Thanks, Sabet -----Original Message----- From: Muhammad Hosain Abdollahi Sabet Sent: Tue 4/26/2016 4:42 PM To: 'Alex Afanasyev' Cc: 'ndnsim' Subject: RE: [ndnSIM] Porting scenarios to ndnSIM 2.1 Alex, Thank you so much. You're saving lives!! Regards, Sabet -----Original Message----- From: Alex Afanasyev [mailto:aa at cs.ucla.edu] Sent: Thursday, April 14, 2016 6:46 AM To: Muhammad Hosain Abdollahi Sabet Cc: ndnsim at lists.cs.ucla.edu Subject: Re: [ndnSIM] Porting scenarios to ndnSIM 2.1 > On Apr 2, 2016, at 11:43 AM, Muhammad Hosain Abdollahi Sabet wrote: > > Hi everyone, > Is there any guide on how one can port simulation scenarios wrote for ndnSIM 1? Currently I have a simulation in which has some modifications in model/ndn-interest.h/.cc, model/wire/ndnsim.h/.cc, ndn.cxx/detail/pending-interests-container.h, model/fw/ndn-forwarding-strategy.h/.cc. I know NFD is being used directly in ndnSIM 2.1 and there has been some changes in ndn-cxx. But honestly I'm not much familiar with them and need some guide. It very much depends on how extensive are your changes. To modify interest abstraction and wire encoding, you need to look at - ndnSIM/ndn-cxx/src/interest.hpp - ndnSIM/ndn-cxx/src/interest.cpp For application PIT (ndn.cxx/...), you can look at - ndnSIM/ndn-cxx/src/detail/pending-interests.hpp, but there is also logic in ndnSIM/ndn-cxx/src/detail/face-impl.hpp For forwarding strategy, depending on your specific interest, it could be part of the strategy interface - ndnSIM/NFD/daemon/fw/strategy.hpp - ndnSIM/NFD/daemon/fw/strategy.cpp - ndnSIM/NFD/daemon/fw/*-strategy.*pp (examples of implemented strategies) or if you need to change some of the forwarding logic (which we call now "pipelines"), you may look into - ndnSIM/NFD/daemon/fw/forwarder.hpp - ndnSIM/NFD/daemon/fw/forwarder.cpp --- Alex -------------- next part -------------- An HTML attachment was scrubbed... URL: From ibrojay01 at gmail.com Thu Apr 7 21:41:11 2016 From: ibrojay01 at gmail.com (Ibrahim ABDULLAHI) Date: Fri, 08 Apr 2016 04:41:11 -0000 Subject: [ndnSIM] How to add a hop-count number in interest? In-Reply-To: References: Message-ID: For Hop-count and distance between Subscribers and a Cache-hit, Stretch as a metrics in SocialCCNSIM. On Apr 8, 2016 10:46 AM, "qhsong" wrote: > Hi, > Oops, I didn't mention that. it helps me a lot. > > I can use it to got interest and data class hop count , thanks a lot. > > qhsong > > > > 2016-04-08 3:04 GMT+08:00 Spyridon (Spyros) Mastorakis < > mastorakis at cs.ucla.edu>: > >> Hi, >> >> since the Interest hop count is the same with the hop count of the >> corresponding Data packet, you could use the hop count attached to a >> received Data packet: >> >> >> https://github.com/named-data-ndnSIM/ndnSIM/blob/a4915caa0c4121f2dd87fd3d7cc3b6eb91632f16/apps/ndn-consumer.cpp#L226-L234 >> >> Would that work for you? >> >> Spyridon (Spyros) Mastorakis >> Personal Website: http://cs.ucla.edu/~mastorakis/ >> Internet Research Laboratory >> Computer Science Department >> UCLA >> >> >> >> >> On Apr 7, 2016, at 1:45 AM, ndn ndn wrote: >> >> Hi, >> Recently, I want to add a hop-count number in interest class and when >> interest pass a node, this number will increase one. >> so I define a mutable int in interest class, init it in construct >> function, and increase it in Forward::onIncomingInterest(). But I try it >> failed, I found every time when Forward got a interest in >> onIncomingInterest, the number always zero. >> >> I didn't found any function to make this interest got zero, and How to >> increase it one by one ? >> >> Thanks for your help? >> >> qhsong >> >> >> > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From klaus at email.arizona.edu Thu Apr 14 13:01:03 2016 From: klaus at email.arizona.edu (Klaus Schneider) Date: Thu, 14 Apr 2016 20:01:03 -0000 Subject: [ndnSIM] [Ndn-interest] IDE suggestion In-Reply-To: References: <712FE4E7257849499414892DD92704BC77C55FB6@INFRAEX02.oxia.corp> Message-ID: <570FF6F7.9020401@email.arizona.edu> I'm using Eclipse CDT. The C++ Indexer is quite helpful, but requires some tuning (you don't want to index the whole ns3 folder). Best regards, Klaus On 04/14/2016 10:13 AM, Spyridon (Spyros) Mastorakis wrote: > Hi, > > personally, I have been using Atom for the last couple of months and I > am quite happy with it: > > https://atom.io > > Alex has been using a fully customized version of emacs: > > https://www.gnu.org/software/emacs/ > > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > > Internet Research Laboratory > Computer Science Department > UCLA > > >> On Apr 14, 2016, at 5:53 AM, Nour El Houda Ben Youssef >> > > wrote: >> >> Dear ndnSimers >> Which IDE do you suggest while adding new features to ndnSIM? >> Best regards >> ** >> >> *Nour El Houda BEN YOUSSEF*|Doctorante >> Technopark El Ghazela 2088 Tunis- Tunisia >> Phone: +216 31 34 00 14 >> Mobile: +216 24 54 24 54 >> www.wevioo.com >> Paris ? Tunis - Dubai ? Alger >> > > > > _______________________________________________ > Ndn-interest mailing list > Ndn-interest at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndn-interest > From hpm7152 at g.rit.edu Tue Apr 19 11:20:04 2016 From: hpm7152 at g.rit.edu (HIMANSHU MENDHE) Date: Tue, 19 Apr 2016 18:20:04 -0000 Subject: [ndnSIM] Custom content-store cache replacement policy Message-ID: Hi Team, I would like to create a custom cache replacement policy. I went through the LruPolicy class and I can see that it contains methods like evictEntries, insertToQueue, etc. However, it is not clear, when, how these methods are called. I believe in order to achieve what I want to, I would have to create a similar class. Am I on the right path here? Some starting point documentation of how the flow is would be really helpful. -------------- next part -------------- An HTML attachment was scrubbed... URL: From caroline.goncalves at QueensU.CA Thu Apr 21 16:38:13 2016 From: caroline.goncalves at QueensU.CA (Caroline Goncalves) Date: Thu, 21 Apr 2016 23:38:13 -0000 Subject: [ndnSIM] Question about LTE in ndnSIM Message-ID: <35CF82D0-DDDD-4F8B-9562-DA4C7DBE5424@queensu.ca> Hello, I want to work with LTE in ndnSIM but I seem to be missing some information. How does ndnSIM work with LTE? Do I need Internet to configure EPC? Are there any examples available? I could not find any helpful ones. I worked in the implementation, based on the examples provided by ns3. The problem is the consumer sends the interest, but nothing is received in the producer. I have tried in some different ways: without EPC, using just ndnStack; with EPC. With EPC, I installed Internet in the UEs and I also installed ndnStack in all of my nodes. In all of these versions, the producer is not receiving the interest. I?ve looked at the previous questions related with LTE, but that couldn?t help me. I?m attaching the code, with LTE and NDN, but without internet. -------------- next part -------------- A non-text attachment was scrubbed... Name: ndnSIM with LTE.cc Type: application/octet-stream Size: 12588 bytes Desc: ndnSIM with LTE.cc URL: -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: ATT00001.txt URL: From yao930 at mail.ustc.edu.cn Mon Apr 25 03:18:19 2016 From: yao930 at mail.ustc.edu.cn (yao930 at mail.ustc.edu.cn) Date: Mon, 25 Apr 2016 10:18:19 -0000 Subject: [ndnSIM] problems in running cs-trace examples Message-ID: <5dc0e9ac.76b8.1544ced10ad.Coremail.yao930@mail.ustc.edu.cn> Dear ndnsim users, I am new to ndnSIM and want to use it to realize some cache policy,and while running cs-trace examples,I encouter a few problems and questions. in the output file cs-trace.txt, we can see the numbers of cachehits and cachemisses in every node are only 10, but the consumer we set is supposed to send 100 interest per second, why the nodes hit/miss so much less packets than the sent interest? 2. in the visulizer during the simulation , I found the CS always has only one entrybut the cs size is supposed to be 100. 3. when the cs replacement policy is changed to "random",in this way? ndnHelper.SetOldContentStore("ns3::ndn::cs::Random", "MaxSize", "100"); an error comes out as follows: msg="Attribute name=Min could not be set for this object: tid=ns3::UniformRandomVariable", file=../src/core/model/object-base.cc, line=206 terminate called without an active exception how can I fix this? Many thanks! Chen. -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: desc Type: image/png Size: 5770 bytes Desc: desc URL: From boxiliu at hust.edu.cn Thu Apr 28 06:46:00 2016 From: boxiliu at hust.edu.cn (=?utf-8?B?5YiY6ZOC54aZ?=) Date: Thu, 28 Apr 2016 13:46:00 -0000 Subject: [ndnSIM] tracing error in NDNs over WiFi Message-ID: Hi, all I am a freshman in ndnSIM and have been stuck with using L2RateTracer in NDNs over Wi-Fi for a while. I find that the length of std::vector ns3::IidManager::m_information in ns-3../src/core/model/type-id is always 0. Is there any wrong setup in my scenario? If no, how can I measurethe drop-rate and rate in NDNs over Wi-Fi? By the way, L3tracer/AppTracer also cannot work. I will appreciate all your kind help. Best? Percy ========================= Percy Liu Huazhong Univ. of Sci. & Tech Wuhan, Hubei of P.R. of China boxiliu at hust.edu.cn -------------- next part -------------- An HTML attachment was scrubbed... URL: -------------- next part -------------- A non-text attachment was scrubbed... Name: test.cc Type: application/octet-stream Size: 5052 bytes Desc: not available URL: