From sugadev.cse at gmail.com Sun Feb 1 09:33:13 2015 From: sugadev.cse at gmail.com (SUGADEV C) Date: Sun, 1 Feb 2015 23:03:13 +0530 Subject: [ndnSIM] Mobile nodes in ndnSIM Message-ID: hi, i went through the contents of ndnSIM documentation. but i couldn't find any example of simulation mobile nodes in ndnSIM. could you please help me in setting up mobile nodes in the ndn network thank you, Sugadev C -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexander.afanasyev at ucla.edu Sun Feb 1 14:26:22 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Sun, 1 Feb 2015 14:26:22 -0800 Subject: [ndnSIM] Mobile nodes in ndnSIM In-Reply-To: References: Message-ID: You can check examples folder. There are basic scenarios with wifi nodes (https://github.com/named-data/ndnSIM/blob/master/examples/ndn-simple-wifi.cpp ) ? Alex > On Feb 1, 2015, at 9:33 AM, SUGADEV C wrote: > > hi, > i went through the contents of ndnSIM documentation. but i couldn't find any example of simulation mobile nodes in ndnSIM. could you please help me in setting up mobile nodes in the ndn network > > thank you, > Sugadev C > _______________________________________________ > 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 spiros.mastorakis at gmail.com Sun Feb 1 14:28:58 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sun, 1 Feb 2015 14:28:58 -0800 Subject: [ndnSIM] Mobile nodes in ndnSIM In-Reply-To: References: Message-ID: Hello, there is also a CSMA scenario here: https://github.com/named-data/ndnSIM/blob/master/examples/ndn-csma.cpp -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 1, 2015, at 2:26 PM, Alex Afanasyev wrote: > > You can check examples folder. There are basic scenarios with wifi nodes (https://github.com/named-data/ndnSIM/blob/master/examples/ndn-simple-wifi.cpp) > > ? > Alex > >> On Feb 1, 2015, at 9:33 AM, SUGADEV C wrote: >> >> hi, >> i went through the contents of ndnSIM documentation. but i couldn't find any example of simulation mobile nodes in ndnSIM. could you please help me in setting up mobile nodes in the ndn network >> >> thank you, >> Sugadev C >> _______________________________________________ >> 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 From adith.ad at gmail.com Sun Feb 1 22:14:57 2015 From: adith.ad at gmail.com (adithya srinivasan) Date: Mon, 2 Feb 2015 11:44:57 +0530 Subject: [ndnSIM] Clarifications regarding accessibility of content store Message-ID: Hello I'm Adithya from Chennai,India. My project is on cache poisoning in NDN and I am planning to do a reactive solution. I have formed a basic equation and want to try it out in the simulator. Is it possible to access the contents in the Content Store of a node in ndnsim. I want to have an exclusions parameter for all the packets in the CS and hence want to check them by accessing the CS.Can you please guide me as to how to access the cache and also on how to add extra parameters to the packets in the cache? Thank you Adithya -------------- next part -------------- An HTML attachment was scrubbed... URL: From wonjunchoi001 at gmail.com Mon Feb 2 12:54:58 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Tue, 3 Feb 2015 05:54:58 +0900 Subject: [ndnSIM] How to run simple example in ndnSIM2.0? Message-ID: Hello. I am little confusing about how to run simple example. I have been using scratch folder but the source is changed from .cc to .cpp. so ./waf --run scratch/ndn-simple didn't work. I copied ndn-simple.cpp to scratch and compiled it by ./waf and then ./waf --run scratch/ndn-simple. ./waf --run=ndn-simple Waf: Entering directory `ndnSIM2.0/ns-3/build' *program 'ndn-simple' not found; available programs are: ['scratch-simulator', 'scratch/scratch-simulator', 'subdir', 'scratch/subdir/subdir', 'test-runner', 'utils/test-runner', 'bench-simulator', 'utils/bench-simulator', 'bench-packets', 'utils/bench-packets', 'print-introspected-doxygen', 'utils/print-introspected-doxygen']* The recommended way is also I don't know how to do it. I did below steps. by the way, where should I put my scenario? in the scenario/build ? git clone git://github.com/cawka/ndnSIM-scenario-template.git scenariocd scenarioexport PKG_CONFIG_PATH=/usr/local/lib/pkgconfigexport LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH ./waf configure ./waf --run -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Mon Feb 2 13:39:14 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Mon, 2 Feb 2015 13:39:14 -0800 Subject: [ndnSIM] How to run simple example in ndnSIM2.0? In-Reply-To: References: Message-ID: <1AD5D1E7-EF42-4DBF-B888-F5EBAE67E76D@gmail.com> You can just move your scenarios under the ?examples" folder and then cd to "ndnSIM2.0/ns-3? and simulate them. This should work: cd ndnSIM2.0/ns-3 ./waf --run=ndn-simple -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 2, 2015, at 12:54 PM, ??? wrote: > > Hello. > > I am little confusing about how to run simple example. > I have been using scratch folder but the source is changed from .cc to .cpp. > so ./waf --run scratch/ndn-simple didn't work. > I copied ndn-simple.cpp to scratch and compiled it by ./waf and then ./waf --run scratch/ndn-simple. > > ./waf --run=ndn-simple > > Waf: Entering directory `ndnSIM2.0/ns-3/build' > > program 'ndn-simple' not found; available programs are: ['scratch-simulator', 'scratch/scratch-simulator', 'subdir', 'scratch/subdir/subdir', 'test-runner', 'utils/test-runner', 'bench-simulator', 'utils/bench-simulator', 'bench-packets', 'utils/bench-packets', 'print-introspected-doxygen', 'utils/print-introspected-doxygen'] > > > > The recommended way is also I don't know how to do it. > > I did below steps. by the way, where should I put my scenario? in the scenario/build ? > > git clone git://github.com/cawka/ndnSIM-scenario-template.git > scenario > > cd > scenario > > export PKG_CONFIG_PATH= > /usr/local/lib/pkgconfig > > export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH > > > ./waf configure > > ./waf --run > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From alexander.afanasyev at ucla.edu Mon Feb 2 14:01:33 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Mon, 2 Feb 2015 14:01:33 -0800 Subject: [ndnSIM] How to run simple example in ndnSIM2.0? In-Reply-To: References: Message-ID: <00148168-6145-4A22-98C6-8FCEFFCAA865@ucla.edu> > On Feb 2, 2015, at 12:54 PM, ??? wrote: > > Hello. > > I am little confusing about how to run simple example. > I have been using scratch folder but the source is changed from .cc to .cpp. > so ./waf --run scratch/ndn-simple didn't work. > I copied ndn-simple.cpp to scratch and compiled it by ./waf and then ./waf --run scratch/ndn-simple. To use scratch folder, you will need to change extension from .cpp to .cc. You can also compile NS-3 with examples. This way you don?t need to copy anything to scratch folder and run examples directly. ? Alex > ./waf --run=ndn-simple > > Waf: Entering directory `ndnSIM2.0/ns-3/build' > > program 'ndn-simple' not found; available programs are: ['scratch-simulator', 'scratch/scratch-simulator', 'subdir', 'scratch/subdir/subdir', 'test-runner', 'utils/test-runner', 'bench-simulator', 'utils/bench-simulator', 'bench-packets', 'utils/bench-packets', 'print-introspected-doxygen', 'utils/print-introspected-doxygen'] > > > > The recommended way is also I don't know how to do it. > > I did below steps. by the way, where should I put my scenario? in the scenario/build ? > > git clone git://github.com/cawka/ndnSIM-scenario-template.git scenario > cd scenario > export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig > export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH > > ./waf configure > > ./waf --run > _______________________________________________ > 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 wonjunchoi001 at gmail.com Mon Feb 2 16:23:18 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Tue, 3 Feb 2015 09:23:18 +0900 Subject: [ndnSIM] How to run simple example in ndnSIM2.0? In-Reply-To: <00148168-6145-4A22-98C6-8FCEFFCAA865@ucla.edu> References: <00148168-6145-4A22-98C6-8FCEFFCAA865@ucla.edu> Message-ID: Thanks for your comment! Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From amin1431 at yahoo.com Tue Feb 3 06:21:26 2015 From: amin1431 at yahoo.com (amin1431) Date: Tue, 3 Feb 2015 14:21:26 +0000 (UTC) Subject: [ndnSIM] How make a inter-domain network by ndnSIM? Message-ID: <1387271449.1523449.1422973286051.JavaMail.yahoo@mail.yahoo.com> Hi friends :-)I am going to connect two different domains, such as NDN and?Avionics Full-Duplex Switched Ethernet (AFDX). I mean, an inter-domain connection between NDN and AFDX. Could you please give me some hints, how does it possible? Sincerely, Armin -------------- next part -------------- An HTML attachment was scrubbed... URL: From anselme333 at gmail.com Tue Feb 3 16:12:06 2015 From: anselme333 at gmail.com (NDIKUMANA ANSELME) Date: Wed, 4 Feb 2015 09:12:06 +0900 Subject: [ndnSIM] To run my simulation In-Reply-To: References: <0B234BFA-88EE-446F-AB42-8DB6B4F84FA2@gmail.com> Message-ID: Dear Alex, After shifting to the current version, i have realized that they are many changes which requires more time for getting familiar with. I would appreciate if you have any hint on how to fix the below errors in previous version in which can help me to speed up my simulation. >./utils/print-introspected-doxygen.cc: In function ?int main(int, char**)?: > > ../utils/print-introspected-doxygen.cc:782:14: warning: ?auto? will > change meaning in C++0x; please remove it [-Wc++0x-compat] > > ../utils/print-introspected-doxygen.cc:782:20: error: ISO C++ forbids > declaration of ?logComponent? with no type [-fpermissive] > > ../utils/print-introspected-doxygen.cc:782:35: error: range-based-for > loops are not allowed in C++98 mode I have removed the 'auto' in print-introspected-doxygen.cc and log.cc , but i am not able to run simulation with visualizer. i get 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=539 terminate called without an active exception Command ['/home/anselme/ndnSIM/ns-3/build/scratch/ndn-simple', '--SimulatorImplementationType=ns3::VisualSimulatorImpl'] terminated with signal SIGIOT. Run it under a debugger to get more information (./waf --run --command-template="gdb --args %s ") 2015-01-30 15:40 GMT+09:00 NDIKUMANA ANSELME : > Dear Sir, > > Thank you so much for the help. I have found a problem in my boost > libraries and is now fixed > > With Regards, > > Anselme NDIKUMANA > > 2015-01-30 13:21 GMT+09:00 Alex Afanasyev : > >> The versions of base NS-3 and ndnSIM must be matched. In your case they >> are not. >> >> You should either download everything from scratch, as shown on >> ndnsim.net or manually update both NS-3 and ndnSIM to the latest >> versions. >> >> ? >> Alex >> >> On Jan 29, 2015, at 8:11 PM, NDIKUMANA ANSELME >> wrote: >> >> Dear Sir, >> >> Thank you for the reply. i was using the old one and after its >> re-installation, i got the following errors: >> >> ../utils/print-introspected-doxygen.cc: In function ?int main(int, >> char**)?: >> ../utils/print-introspected-doxygen.cc:782:14: warning: ?auto? will >> change meaning in C++0x; please remove it [-Wc++0x-compat] >> ../utils/print-introspected-doxygen.cc:782:20: error: ISO C++ forbids >> declaration of ?logComponent? with no type [-fpermissive] >> ../utils/print-introspected-doxygen.cc:782:35: error: range-based-for >> loops are not allowed in C++98 mode >> >> i have also tried to install the latest version and i got the following >> errors: >> >> o >> from /home/anselme/simulation/nacc2.0/ns-3/src/ndnSIM: The configuration >> failed >> -------------------------------------------------------------- >> Checking for 'libndn-cxx' >> ['/usr/bin/pkg-config', '--cflags', '--libs', 'libndn-cxx'] >> err: Package libndn-cxx was not found in the pkg-config search path. >> Perhaps you should add the directory containing `libndn-cxx.pc' >> to the PKG_CONFIG_PATH environment variable >> No package 'libndn-cxx' found >> >> from /home/anselme/simulation/nacc2.0/ns-3/src/ndnSIM: The configuration >> failed >> >> Checking boost includes >> 1.55.0 >> ------------------------------------------ >> Checking boost libs >> Found the boost path in /usr/lib with the libraries: >> /usr/lib/libboost_iostreams.so.1.46.1 >> /usr/lib/libboost_program_options.so.1.46.1 >> /usr/lib/libboost_serialization.so.1.46.1 >> /usr/lib/libboost_wserialization.so.1.46.1 >> Trying pattern boost_system(-gcc[0-9]{0,3})+(-1_55)+ >> Trying pattern boost_system(-1_55)+ >> Trying pattern boost_system(-1_55)+ >> Trying pattern boost_system(-gcc[0-9]{0,3})+ >> Trying pattern boost_system >> Trying pattern boost_system >> lib system not found in /usr/lib >> from /home/anselme/simulation/nacc2.0/ndn-cxx: The configuration failed >> >> >> 2015-01-30 1:48 GMT+09:00 Spyridon (Spyros) Mastorakis < >> spiros.mastorakis at gmail.com>: >> >>> Hello, >>> >>> which version of ndnSIM are you using? I suspect that you are using the >>> previous one, so I would suggest that you install the current one. >>> >>> -- >>> Spyridon (Spyros) Mastorakis >>> Personal Website: http://cs.ucla.edu/~mastorakis/ >>> Internet Research Laboratory >>> PhD Computer Science >>> UCLA >>> >>> >>> >>> >>> > On Jan 28, 2015, at 5:06 AM, NDIKUMANA ANSELME >>> wrote: >>> > >>> > Hello, >>> > >>> > I am experiencing the problem of running my simulation , i keeps >>> getting the errors from ndn-net-device-face in which i have not modified: >>> > >>> > In file included from ./ns3/ndnSIM/model/nacc.h:22:0, >>> > from ./ns3/ndn-face.h:25, >>> > from ./ns3/ndn-api-face.h:29, >>> > from ./ns3/ndnSIM-module.h:18, >>> > from ../scratch/congestioncontrolsenario2.cc:3: >>> > ./ns3/ndnSIM/model/ndn-net-device-face.h:44:1: error: expected >>> class-name before ?{? token >>> > ./ns3/ndnSIM/model/ndn-net-device-face.h:62:35: error: >>> ?InterestHandler? does not name a type >>> > ./ns3/ndnSIM/model/ndn-net-device-face.h:62:52: error: ISO C++ forbids >>> declaration of ?interestHandler? with no type [-fpermissive] >>> > ./ns3/ndnSIM/model/ndn-net-device-face.h:62:75: error: ?DataHandler? >>> does not name a type >>> > ./ns3/ndnSIM/model/ndn-net-device-face.h:62:88: error: ISO C++ forbids >>> declaration of ?dataHandler? with no type [-fpermissive] >>> > >>> > i have tried to re-install ndnSIM and i got the fallowing error . >>> > >>> > ../utils/print-introspected-doxygen.cc: In function ?int main(int, >>> char**)?: >>> > ../utils/print-introspected-doxygen.cc:782:14: warning: ?auto? will >>> change meaning in C++0x; please remove it [-Wc++0x-compat] >>> > ../utils/print-introspected-doxygen.cc:782:20: error: ISO C++ forbids >>> declaration of ?logComponent? with no type [-fpermissive] >>> > ../utils/print-introspected-doxygen.cc:782:35: error: range-based-for >>> loops are not allowed in C++98 mode >>> > >>> > i have removed auto and i still receiving errors. From gcc perceptive >>> i tried to run my simulation with -std=c++0x option but no success. >>> > >>> > Any support on how to handle this issue will be appreciated. >>> > >>> > Thank You >>> > >>> > _______________________________________________ >>> > 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 alexander.afanasyev at ucla.edu Tue Feb 3 17:35:22 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Tue, 3 Feb 2015 17:35:22 -0800 Subject: [ndnSIM] To run my simulation In-Reply-To: References: <0B234BFA-88EE-446F-AB42-8DB6B4F84FA2@gmail.com> Message-ID: > On Feb 3, 2015, at 4:12 PM, NDIKUMANA ANSELME wrote: > > Dear Alex, > > After shifting to the current version, i have realized that they are many changes which requires more time for getting familiar with. I would appreciate if you have any hint on how to fix the below errors in previous version in which can help me to speed up my simulation. > >> >./utils/print-introspected-doxygen.cc : In function ?int main(int, char**)?: >> > ../utils/print-introspected-doxygen.cc :782:14: warning: ?auto? will change meaning in C++0x; please remove it [-Wc++0x-compat] >> > ../utils/print-introspected-doxygen.cc :782:20: error: ISO C++ forbids declaration of ?logComponent? with no type [-fpermissive] >> > ../utils/print-introspected-doxygen.cc :782:35: error: range-based-for loops are not allowed in C++98 mode >> > > I have removed the 'auto' in print-introspected-doxygen.cc and log.cc , but i am not able to run simulation with visualizer. i get the following error: If you have removed this auto, your code cannot compile, so I don?t know what you did. If you want to revert to ndnSIM-1.0 code, you need to get code exactly how described in http://ndnsim.net/1.0/getting-started.html#downloading-ndnsim-source This applies for both core NS-3 and ndnSIM repositories! > assert failed. cond="uid != 0", msg="Assert in TypeId::LookupByName: ns3::VisualSimulatorImpl not found", file=../src/core/model/type-id.cc, line=539 > terminate called without an active exception > Command ['/home/anselme/ndnSIM/ns-3/build/scratch/ndn-simple', '--SimulatorImplementationType=ns3::VisualSimulatorImpl'] terminated with signal SIGIOT. Run it under a debugger to get more information (./waf --run --command-template="gdb --args %s ") This error simply means that visualizer module is not enabled. If you really want to use it, you have to install all dependencies and make sure you have the right versions of everything. We tried commands in getting installed instructions (for v2.0 code, v1.0 code instructions may not be up to date) on a clean system. When more things are installed, there are many ways things can go wrong. ? Alex > 2015-01-30 15:40 GMT+09:00 NDIKUMANA ANSELME >: > Dear Sir, > > Thank you so much for the help. I have found a problem in my boost libraries and is now fixed > > With Regards, > > Anselme NDIKUMANA > > 2015-01-30 13:21 GMT+09:00 Alex Afanasyev >: > The versions of base NS-3 and ndnSIM must be matched. In your case they are not. > > You should either download everything from scratch, as shown on ndnsim.net or manually update both NS-3 and ndnSIM to the latest versions. > > ? > Alex > >> On Jan 29, 2015, at 8:11 PM, NDIKUMANA ANSELME > wrote: >> >> Dear Sir, >> >> Thank you for the reply. i was using the old one and after its re-installation, i got the following errors: >> >> ../utils/print-introspected-doxygen.cc : In function ?int main(int, char**)?: >> ../utils/print-introspected-doxygen.cc :782:14: warning: ?auto? will change meaning in C++0x; please remove it [-Wc++0x-compat] >> ../utils/print-introspected-doxygen.cc :782:20: error: ISO C++ forbids declaration of ?logComponent? with no type [-fpermissive] >> ../utils/print-introspected-doxygen.cc :782:35: error: range-based-for loops are not allowed in C++98 mode >> >> i have also tried to install the latest version and i got the following errors: >> >> o >> from /home/anselme/simulation/nacc2.0/ns-3/src/ndnSIM: The configuration failed >> -------------------------------------------------------------- >> Checking for 'libndn-cxx' >> ['/usr/bin/pkg-config', '--cflags', '--libs', 'libndn-cxx'] >> err: Package libndn-cxx was not found in the pkg-config search path. >> Perhaps you should add the directory containing `libndn-cxx.pc' >> to the PKG_CONFIG_PATH environment variable >> No package 'libndn-cxx' found >> >> from /home/anselme/simulation/nacc2.0/ns-3/src/ndnSIM: The configuration failed >> >> Checking boost includes >> 1.55.0 >> ------------------------------------------ >> Checking boost libs >> Found the boost path in /usr/lib with the libraries: >> /usr/lib/libboost_iostreams.so.1.46.1 >> /usr/lib/libboost_program_options.so.1.46.1 >> /usr/lib/libboost_serialization.so.1.46.1 >> /usr/lib/libboost_wserialization.so.1.46.1 >> Trying pattern boost_system(-gcc[0-9]{0,3})+(-1_55)+ >> Trying pattern boost_system(-1_55)+ >> Trying pattern boost_system(-1_55)+ >> Trying pattern boost_system(-gcc[0-9]{0,3})+ >> Trying pattern boost_system >> Trying pattern boost_system >> lib system not found in /usr/lib >> from /home/anselme/simulation/nacc2.0/ndn-cxx: The configuration failed >> >> >> 2015-01-30 1:48 GMT+09:00 Spyridon (Spyros) Mastorakis >: >> Hello, >> >> which version of ndnSIM are you using? I suspect that you are using the previous one, so I would suggest that you install the current one. >> >> -- >> Spyridon (Spyros) Mastorakis >> Personal Website: http://cs.ucla.edu/~mastorakis/ >> Internet Research Laboratory >> PhD Computer Science >> UCLA >> >> >> >> >> > On Jan 28, 2015, at 5:06 AM, NDIKUMANA ANSELME > wrote: >> > >> > Hello, >> > >> > I am experiencing the problem of running my simulation , i keeps getting the errors from ndn-net-device-face in which i have not modified: >> > >> > In file included from ./ns3/ndnSIM/model/nacc.h:22:0, >> > from ./ns3/ndn-face.h:25, >> > from ./ns3/ndn-api-face.h:29, >> > from ./ns3/ndnSIM-module.h:18, >> > from ../scratch/congestioncontrolsenario2.cc :3: >> > ./ns3/ndnSIM/model/ndn-net-device-face.h:44:1: error: expected class-name before ?{? token >> > ./ns3/ndnSIM/model/ndn-net-device-face.h:62:35: error: ?InterestHandler? does not name a type >> > ./ns3/ndnSIM/model/ndn-net-device-face.h:62:52: error: ISO C++ forbids declaration of ?interestHandler? with no type [-fpermissive] >> > ./ns3/ndnSIM/model/ndn-net-device-face.h:62:75: error: ?DataHandler? does not name a type >> > ./ns3/ndnSIM/model/ndn-net-device-face.h:62:88: error: ISO C++ forbids declaration of ?dataHandler? with no type [-fpermissive] >> > >> > i have tried to re-install ndnSIM and i got the fallowing error . >> > >> > ../utils/print-introspected-doxygen.cc : In function ?int main(int, char**)?: >> > ../utils/print-introspected-doxygen.cc :782:14: warning: ?auto? will change meaning in C++0x; please remove it [-Wc++0x-compat] >> > ../utils/print-introspected-doxygen.cc :782:20: error: ISO C++ forbids declaration of ?logComponent? with no type [-fpermissive] >> > ../utils/print-introspected-doxygen.cc :782:35: error: range-based-for loops are not allowed in C++98 mode >> > >> > i have removed auto and i still receiving errors. From gcc perceptive i tried to run my simulation with -std=c++0x option but no success. >> > >> > Any support on how to handle this issue will be appreciated. >> > >> > Thank You >> > >> > _______________________________________________ >> > 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: -------------- 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 narges.mehran at gmail.com Wed Feb 4 00:08:01 2015 From: narges.mehran at gmail.com (Narges Mehran) Date: Wed, 4 Feb 2015 11:38:01 +0330 Subject: [ndnSIM] hit ratio of Content Store Message-ID: Hi ?Alex, ? I'm trying to ?get each router's hit ratio (CS ?) by *CsTracer*. ?I can't access the status of CS?, though I had added "#include "ns3/ndnSIM/utils/tracers/ndn-cs-tracer.h"!!! ---------------------------My Code--------------------- ndn::CsTracer::Print (&std::ostream); ---------------------------Error------------------------- error: expected primary-expression before ?)? token ndn::CsTracer::Print (std::ostream); Tnx in advance... -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Wed Feb 4 18:06:38 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 4 Feb 2015 18:06:38 -0800 Subject: [ndnSIM] How make a inter-domain network by ndnSIM? In-Reply-To: <1387271449.1523449.1422973286051.JavaMail.yahoo@mail.yahoo.com> References: <1387271449.1523449.1422973286051.JavaMail.yahoo@mail.yahoo.com> Message-ID: Hello, NDN can run on top of every protocol and ndnSIM implements this primitive. Therefore, you have to use the implementation of the protocol that you want in your scenario and then run NDN on top of it. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 3, 2015, at 6:21 AM, amin1431 wrote: > > Hi friends :-) > I am going to connect two different domains, such as NDN and Avionics Full-Duplex Switched Ethernet (AFDX). I mean, an inter-domain connection between NDN and AFDX. > > Could you please give me some hints, how does it possible? > > > Sincerely, > Armin > From spiros.mastorakis at gmail.com Wed Feb 4 18:11:20 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 4 Feb 2015 18:11:20 -0800 Subject: [ndnSIM] hit ratio of Content Store In-Reply-To: References: Message-ID: Hello, in order to find out how to use the csTracer you can just follow this link and take a look at the related simulation example: http://ndnsim.net/2.0/metric.html#example-of-content-store-trace-helper -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 4, 2015, at 12:08 AM, Narges Mehran wrote: > > Hi ?Alex, > > ?I'm trying to ?get each router's hit ratio (CS?) by CsTracer. > ?I can't access the status of CS?, though I had added "#include "ns3/ndnSIM/utils/tracers/ndn-cs-tracer.h"!!! > ---------------------------My Code--------------------- > ndn::CsTracer::Print (&std::ostream); > ---------------------------Error------------------------- > error: expected primary-expression before ?)? token > ndn::CsTracer::Print (std::ostream); > > Tnx in advance... > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From spiros.mastorakis at gmail.com Wed Feb 4 18:55:35 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 4 Feb 2015 18:55:35 -0800 Subject: [ndnSIM] Clarifications regarding accessibility of content store In-Reply-To: References: Message-ID: <7A6EB98D-C1A3-4706-860F-50A92AFC42EC@gmail.com> Hello, ndnSIM 2.0 offers two different CS structures to the user. The user can choose one of them. If you are planning to use the NFD? CS you can take a look at the documentation here: http://ndnsim.net/2.0/doxygen/classnfd_1_1Cs.html You can use the find method or the iterators pointing to the first and the last element of CS. If you are planning to use the old ndnSIM 1.0 CS then you may take a look here: http://ndnsim.net/2.0/doxygen/classns3_1_1ndn_1_1ContentStore.html -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 1, 2015, at 10:14 PM, adithya srinivasan wrote: > > Hello > I'm Adithya from Chennai,India. My project is on cache poisoning in NDN and I am planning to do a reactive solution. I have formed a basic equation and want to try it out in the simulator. Is it possible to access the contents in the Content Store of a node in ndnsim. I want to have an exclusions parameter for all the packets in the CS and hence want to check them by accessing the CS.Can you please guide me as to how to access the cache and also on how to add extra parameters to the packets in the cache? > > Thank you > Adithya > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From wonjunchoi001 at gmail.com Wed Feb 4 20:32:18 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Thu, 5 Feb 2015 13:32:18 +0900 Subject: [ndnSIM] How to print data size? Message-ID: Hello. I want to know how much consumer received data. How can I print the size of data? I could get the sequence by contentObject->getName().at(-1).toSequenceNumber() but the sequence is not in order from consumer. Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Wed Feb 4 21:17:28 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 4 Feb 2015 21:17:28 -0800 Subject: [ndnSIM] How to print data size? In-Reply-To: References: Message-ID: Hello, you may use the wireEncode method described here: http://named-data.net/doc/ndn-cxx/current/doxygen/d4/d83/classndn_1_1Data.html and then use the size method described here to get the size of the data packet: http://named-data.net/doc/ndn-cxx/current/doxygen/d9/dbd/classndn_1_1Block.html -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 4, 2015, at 8:32 PM, ??? wrote: > > Hello. > > I want to know how much consumer received data. > How can I print the size of data? > > I could get the sequence by contentObject->getName().at(-1).toSequenceNumber() > but the sequence is not in order from consumer. > > Wonjun, Choi > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From wonjunchoi001 at gmail.com Wed Feb 4 21:55:24 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Thu, 5 Feb 2015 14:55:24 +0900 Subject: [ndnSIM] How to print data size? In-Reply-To: References: Message-ID: Thanks for your reply. 1. I still don't know how to use: Consumer::OnData(contentObject); std::cout << "consumer data for " << contentObject->getName().at(-1).toSequenceNumber() << " received" << contentObject->size()<< std::endl; ? 2. The sequnece number is like this, it looks it is not in order, is this right? consumer: 4.43139 Data for 90 received consumer: 4.43987 Data for 92 received consumer: 4.44835 Data for 94 received consumer: 4.45683 Data for 96 received consumer: 4.46531 Data for 98 received Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From dhiabimen at gmail.com Thu Feb 5 05:32:41 2015 From: dhiabimen at gmail.com (Dhiab Imen) Date: Thu, 5 Feb 2015 14:32:41 +0100 Subject: [ndnSIM] Ndn energy model Message-ID: Hi, I'm working with ndn nodes and I'm trying to calculate the energy consumption of these nodes.with the ns-3 energy model I can calculate the energy consumed by a device connected to an energy source. Can you tell me if there is an implemented class or method in ns3 that can help me to calculate the energy taking into consideration the energy of caching a content??? -- Cordialement Imen Dhiab *************************************************************************************************** Ing?nieur Informatique dipl?m? de l'Ecole Nationale d'Ing?nieurs de Sfax. Membre de l'unit? de recherche SAGE (Syst?mes Avanc?s en G?nie Electrique), Ecole Nationale d'Ing?nieurs de Sousse. +216 53 59 19 88 Pages personnelles : http://www.sage-eniso.org/profile-membre/fr/T/85/dhiab-imene.html *************************************************************************************************** -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Thu Feb 5 08:50:08 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Thu, 5 Feb 2015 08:50:08 -0800 Subject: [ndnSIM] Ndn energy model In-Reply-To: References: Message-ID: Hello, The documentation of ns3 is the following: http://www.nsnam.org/doxygen/index.html You can take a look whether such a model exists. Probably this can work for you: http://www.nsnam.org/doxygen/group__energy.html Hope this helps. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 5, 2015, at 5:32 AM, Dhiab Imen wrote: > > Hi, > > I'm working with ndn nodes and I'm trying to calculate the energy consumption of these nodes.with the ns-3 energy model I can calculate the energy consumed by a device connected to an energy source. > > Can you tell me if there is an implemented class or method in ns3 that can help me to calculate the energy taking into consideration the energy of caching a content??? > > -- > Cordialement > Imen Dhiab > > *************************************************************************************************** > Ing?nieur Informatique dipl?m? de l'Ecole Nationale d'Ing?nieurs de Sfax. > Membre de l'unit? de recherche SAGE (Syst?mes Avanc?s en G?nie Electrique), Ecole Nationale d'Ing?nieurs de Sousse. > +216 53 59 19 88 > Pages personnelles : http://www.sage-eniso.org/profile-membre/fr/T/85/dhiab-imene.html > *************************************************************************************************** > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From wonjunchoi001 at gmail.com Thu Feb 5 17:30:29 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Fri, 6 Feb 2015 10:30:29 +0900 Subject: [ndnSIM] How to print data size? In-Reply-To: References: Message-ID: contentObject->wireEncode().size() returns 1058 when payload of producer is 1024. I set (window size is 1, maxseq is 100) with ndn-simple example. I don't know why the size is different. The unit of size is byte, right? Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexander.afanasyev at ucla.edu Thu Feb 5 17:40:49 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Thu, 5 Feb 2015 17:40:49 -0800 Subject: [ndnSIM] How to print data size? In-Reply-To: References: Message-ID: > On Feb 5, 2015, at 5:30 PM, ??? wrote: > > contentObject->wireEncode().size() returns 1058 when payload of producer is 1024. > I set (window size is 1, maxseq is 100) with ndn-simple example. > I don't know why the size is different. The unit of size is byte, right? "contentObject->wireEncode().size()" returns size of the whole data packet with all headers and additional fields (e.g., signature). If you want to have just payload, then: contentObject->getPayload().value_size() ? 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 wonjunchoi001 at gmail.com Thu Feb 5 17:48:13 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Fri, 6 Feb 2015 10:48:13 +0900 Subject: [ndnSIM] How to print data size? In-Reply-To: References: Message-ID: Thanks for your reply. I got the message which tells no member named 'getPayload' in 'ndn::Data'. ps. shared_ptr contentObject Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Thu Feb 5 17:49:45 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Thu, 5 Feb 2015 17:49:45 -0800 Subject: [ndnSIM] How to print data size? In-Reply-To: References: Message-ID: <892C183E-E5D3-4B6F-983B-124B4E031DDE@gmail.com> It is: contentObject->getContent().value_size() -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 5, 2015, at 5:48 PM, ??? wrote: > > Thanks for your reply. > > I got the message which tells no member named 'getPayload' in 'ndn::Data'. > ps. shared_ptr contentObject > > Wonjun, Choi From wonjunchoi001 at gmail.com Thu Feb 5 17:53:47 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Fri, 6 Feb 2015 10:53:47 +0900 Subject: [ndnSIM] How to print data size? In-Reply-To: <892C183E-E5D3-4B6F-983B-124B4E031DDE@gmail.com> References: <892C183E-E5D3-4B6F-983B-124B4E031DDE@gmail.com> Message-ID: Thanks for your help. Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From wonjunchoi001 at gmail.com Thu Feb 5 23:45:22 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Fri, 6 Feb 2015 16:45:22 +0900 Subject: [ndnSIM] How to set Pit and Fib in 2.0? Message-ID: Hello. There was ndnHelper.SetPit() in 1.0. but in 2.0, I couldn't find the functions for setting Pit and Fib except SetOldContentStore(). Please let me know how to set Pit and Fib? And I want to add new entry in Fib, is there a way to do this? Best regards Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From poschdaniel2 at gmail.com Fri Feb 6 01:07:19 2015 From: poschdaniel2 at gmail.com (Daniel Posch) Date: Fri, 06 Feb 2015 10:07:19 +0100 Subject: [ndnSIM] NACKs in ndnSIM2.0? Message-ID: <54D48447.9000002@gmail.com> Hello, I am trying to port a forwarding strategy, which I have implemented in ndnSIM1.0 to ndnSIM2.0. I have looked through the documents and API specification, however, I don't understand if and how the concept of "NACKs" is supported in ndnSIM2.0. Can someone give me a hint how to implement the following in ndnSIM2.0: Assume a forwarding strategy decides to proactively discard an Interest message. What would be the best way to propagate this information to the requesting neighboring? In ndnSIM1.0 I have used the build-in NACK-response from the NACK-Strategy, which responds with a NACK-message once all faces have been set to "waiting in vain". Best regards, Daniel From spiros.mastorakis at gmail.com Fri Feb 6 08:53:33 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Fri, 6 Feb 2015 08:53:33 -0800 Subject: [ndnSIM] How to set Pit and Fib in 2.0? In-Reply-To: References: Message-ID: Hello, In ndnSIM 2.0, we use the PIT of NFD. For this structure you do not need to define a maximum number of entries. As far as the FIB entries are concerned, you can add a new entry by using the FibHelper. You can take a look at the following example, where FIB entries are manually set: http://ndnsim.net/2.0/examples.html#node-2-bottleneck-topology -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 5, 2015, at 11:45 PM, ??? wrote: > > Hello. > > There was ndnHelper.SetPit() in 1.0. > but in 2.0, I couldn't find the functions for setting Pit and Fib except SetOldContentStore(). > Please let me know how to set Pit and Fib? > > And I want to add new entry in Fib, is there a way to do this? > > Best regards > Wonjun, Choi > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From spiros.mastorakis at gmail.com Fri Feb 6 09:09:49 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Fri, 6 Feb 2015 09:09:49 -0800 Subject: [ndnSIM] NACKs in ndnSIM2.0? In-Reply-To: <54D48447.9000002@gmail.com> References: <54D48447.9000002@gmail.com> Message-ID: <35A42243-702D-420F-9F14-834633A863ED@gmail.com> Hello, in ndnSIM 2.0, we use the NDN Forwarding Daemon (NFD). NFD does not currently support NACKs as data packets. However, it is a feature planned to be added in the future. As soon as this feature is added in NFD, it is going to be supported by ndnSIM as well. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 6, 2015, at 1:07 AM, Daniel Posch wrote: > > Hello, > > I am trying to port a forwarding strategy, which I have implemented in ndnSIM1.0 to ndnSIM2.0. I have looked through the documents and API specification, however, I don't understand if and how the concept of "NACKs" is supported in ndnSIM2.0. Can someone give me a hint how to implement the following in ndnSIM2.0: > > Assume a forwarding strategy decides to proactively discard an Interest message. What would be the best way to propagate this information to the requesting neighboring? In ndnSIM1.0 I have used the build-in NACK-response from the NACK-Strategy, which responds with a NACK-message once all faces have been set to "waiting in vain". > > Best regards, > Daniel > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From narges.mehran at gmail.com Sun Feb 8 01:07:53 2015 From: narges.mehran at gmail.com (Narges Mehran) Date: Sun, 8 Feb 2015 12:37:53 +0330 Subject: [ndnSIM] hit ratio of Content Store In-Reply-To: References: Message-ID: Hello and thank you, Sorry for the delay in replying... It works! Thanks a million... But I have another question: why can't i see the PIT and CS Size simultaneously, It means I can see CS Size in normal way but when I want to see the PIT size, I have to change the prefix of producer! e.g., Names::Add ("consumer1", nodes.Get (0)); Names::Add ("router" , nodes.Get (1)); Names::Add ("producer1" , nodes.Get (2)); Ptr consumer1 = Names::Find ("consumer1"); Ptr producer1 = Names::Find ("producer1"); // Install CCNx stack on all nodes ndn::StackHelper ndnHelper; ndnHelper.SetDefaultRoutes (true); ndnHelper.SetPit ("ns3::ndn::pit::Persistent::AggregateStats"); ndnHelper.SetForwardingStrategy ("ns3::ndn::fw::Flooding"); ndnHelper.SetContentStore ("ns3::ndn::cs::Lru::AggregateStats", "MaxSize", "5"); //Size = 5! ndnHelper.InstallAll (); // Consumer1 ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerCbr"); // Consumer will request /Yahoo/0, /Yahoo/1, ... *consumerHelper.SetPrefix ("/Yahoo");* consumerHelper.SetAttribute ("Frequency", StringValue ("10")); // 10 interests a second consumerHelper.SetAttribute ("MaxSeq",StringValue("20")); consumerHelper.Install (consumer1); // first node // Producer1 ndn::AppHelper producerHelper ("ns3::ndn::Producer"); // Producer will reply to all requests starting with /Yahoo *producerHelper.SetPrefix ("/Yahoo123");* ////////////////////////////// why???\\\\\\\\\\\\\\ producerHelper.SetAttribute ("PayloadSize", StringValue("1024")); producerHelper.Install (producer1); . . . /////////////////output in abnormal way\\\\\\\\\\\\\\\\\\\\\\\\ All the PIT Entries are: /Yahoo PIT Size CS Size 30 0 \\\\\\\\\\\\\\\\\\///////////////////////////////////////// /////////////////output in normal way\\\\\\\\\\\\\\\\\\\\\\\\ -----> *producerHelper.SetPrefix ("/Yahoo");* All the CS Entries are: /Yahoo PIT Size CS Size 0 20 \\\\\\\\\\\\\\\\\//////////////////////////////////////// When the max size of CS is "5", why the output is "20"? I don' know where my problem is?! :-/ On Thu, Feb 5, 2015 at 5:41 AM, Spyridon (Spyros) Mastorakis < spiros.mastorakis at gmail.com> wrote: > Hello, > > in order to find out how to use the csTracer you can just follow this link > and take a look at the related simulation example: > > http://ndnsim.net/2.0/metric.html#example-of-content-store-trace-helper > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 4, 2015, at 12:08 AM, Narges Mehran > wrote: > > > > Hi ?Alex, > > > > ?I'm trying to ?get each router's hit ratio (CS?) by CsTracer. > > ?I can't access the status of CS?, though I had added "#include > "ns3/ndnSIM/utils/tracers/ndn-cs-tracer.h"!!! > > ---------------------------My Code--------------------- > > ndn::CsTracer::Print (&std::ostream); > > ---------------------------Error------------------------- > > error: expected primary-expression before ?)? token > > ndn::CsTracer::Print (std::ostream); > > > > Tnx in advance... > > > > > > _______________________________________________ > > 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 christian.kreuzberger at itec.aau.at Sun Feb 8 10:47:53 2015 From: christian.kreuzberger at itec.aau.at (Christian Kreuzberger) Date: Sun, 08 Feb 2015 19:47:53 +0100 Subject: [ndnSIM] =?utf-8?q?NACKs_in_ndnSIM2=2E0=3F?= In-Reply-To: <35A42243-702D-420F-9F14-834633A863ED@gmail.com> References: <54D48447.9000002@gmail.com> <35A42243-702D-420F-9F14-834633A863ED@gmail.com> Message-ID: Hi, I have a follow-up question about NACKs in NFD/ndnSIM: are there ongoing discussions or RFCs about how NACKs should be used and/or interpreted? http://named-data.net/doc/ndn-tlv/data.html states that NACK has been removed on purpose, but: "NACK is used to signal a downstream node that the upstream node is unable to retrieve a matching data. Since the actual NACK mechanism is still under active investigation, we do not include it in this version of specification, but may add it back in a future version". Best regards, Christian On 2015-02-06 18:09, Spyridon (Spyros) Mastorakis wrote: > Hello, > > in ndnSIM 2.0, we use the NDN Forwarding Daemon (NFD). NFD does not > currently support NACKs as data packets. However, it is a feature > planned to be added in the future. > > As soon as this feature is added in NFD, it is going to be supported > by ndnSIM as well. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > >> On Feb 6, 2015, at 1:07 AM, Daniel Posch >> wrote: >> >> Hello, >> >> I am trying to port a forwarding strategy, which I have implemented in >> ndnSIM1.0 to ndnSIM2.0. I have looked through the documents and API >> specification, however, I don't understand if and how the concept of >> "NACKs" is supported in ndnSIM2.0. Can someone give me a hint how to >> implement the following in ndnSIM2.0: >> >> Assume a forwarding strategy decides to proactively discard an >> Interest message. What would be the best way to propagate this >> information to the requesting neighboring? In ndnSIM1.0 I have used >> the build-in NACK-response from the NACK-Strategy, which responds with >> a NACK-message once all faces have been set to "waiting in vain". >> >> Best regards, >> Daniel >> >> >> _______________________________________________ >> 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 From spiros.mastorakis at gmail.com Sun Feb 8 10:57:39 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sun, 8 Feb 2015 10:57:39 -0800 Subject: [ndnSIM] NACKs in ndnSIM2.0? In-Reply-To: References: <54D48447.9000002@gmail.com> <35A42243-702D-420F-9F14-834633A863ED@gmail.com> Message-ID: Hello Christian, there is an active ongoing discussion about NACKs. Probably, there would be more than one types of NACKs that will be introduced to the protocol. As soon as an official decision is reached, NACKs will be supported by the libraries and NFD and will be introduced to ndnSIM as well. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 8, 2015, at 10:47 AM, Christian Kreuzberger wrote: > > Hi, > > I have a follow-up question about NACKs in NFD/ndnSIM: > are there ongoing discussions or RFCs about how NACKs should be used and/or > interpreted? http://named-data.net/doc/ndn-tlv/data.html states that NACK has > been removed on purpose, but: "NACK is used to signal a downstream node that > the upstream node is unable to retrieve a matching data. Since the actual NACK > mechanism is still under active investigation, we do not include it in this > version of specification, but may add it back in a future version". > > > Best regards, > Christian > > > On 2015-02-06 18:09, Spyridon (Spyros) Mastorakis wrote: >> Hello, >> in ndnSIM 2.0, we use the NDN Forwarding Daemon (NFD). NFD does not >> currently support NACKs as data packets. However, it is a feature >> planned to be added in the future. >> As soon as this feature is added in NFD, it is going to be supported >> by ndnSIM as well. >> -- >> Spyridon (Spyros) Mastorakis >> Personal Website: http://cs.ucla.edu/~mastorakis/ >> Internet Research Laboratory >> PhD Computer Science >> UCLA >>> On Feb 6, 2015, at 1:07 AM, Daniel Posch wrote: >>> Hello, >>> I am trying to port a forwarding strategy, which I have implemented in ndnSIM1.0 to ndnSIM2.0. I have looked through the documents and API specification, however, I don't understand if and how the concept of "NACKs" is supported in ndnSIM2.0. Can someone give me a hint how to implement the following in ndnSIM2.0: >>> Assume a forwarding strategy decides to proactively discard an Interest message. What would be the best way to propagate this information to the requesting neighboring? In ndnSIM1.0 I have used the build-in NACK-response from the NACK-Strategy, which responds with a NACK-message once all faces have been set to "waiting in vain". >>> Best regards, >>> Daniel >>> _______________________________________________ >>> 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 From lixia at CS.UCLA.EDU Sun Feb 8 12:12:00 2015 From: lixia at CS.UCLA.EDU (Lixia Zhang) Date: Sun, 8 Feb 2015 12:12:00 -0800 Subject: [ndnSIM] NACKs in ndnSIM2.0? In-Reply-To: References: <54D48447.9000002@gmail.com> <35A42243-702D-420F-9F14-834633A863ED@gmail.com> Message-ID: > On Feb 8, 2015, at 10:47 AM, Christian Kreuzberger wrote: > > Hi, > > I have a follow-up question about NACKs in NFD/ndnSIM: > are there ongoing discussions or RFCs about how NACKs should be used and/or > interpreted? http://named-data.net/doc/ndn-tlv/data.html states that NACK has > been removed on purpose, but: "NACK is used to signal a downstream node that > the upstream node is unable to retrieve a matching data. Since the actual NACK > mechanism is still under active investigation, we do not include it in this > version of specification, but may add it back in a future version". > > Best regards, > Christian ndnSIM 2.0 tried to reflect the real NFD and cxx code, hence the absence of a NACK (that was in 1.0). But yes there are ongoing efforts about NACK. The current thinking leads to more than one type of NACK. 1/ What you quoted above is an upstream-to-downstream notification due to problem in further forwarding an Interest packet, so that the downstream node may act ASAP (e.g. explore alternative path). 2/ There is also a need for application NACK, for the origin producer to inform consumers about data unavailability. the NACK in either case should carry additional info about the cause, so that the receiver of a NACK can properly interpret/handle it. From wonjunchoi001 at gmail.com Sun Feb 8 14:43:19 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Mon, 9 Feb 2015 07:43:19 +0900 Subject: [ndnSIM] How to set Pit and Fib in 2.0? In-Reply-To: References: Message-ID: Thanks for your reply. I mean that can I add a field to Fib table? for example. the existing fields are Prefix and Face list in Fib. Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From anilj.mailing at gmail.com Sun Feb 8 21:23:00 2015 From: anilj.mailing at gmail.com (Anil Jangam) Date: Mon, 9 Feb 2015 00:23:00 -0500 Subject: [ndnSIM] Compile error while adding new topology reader. Message-ID: Hi, I have added a new topology reader class to my simulation scenario under folder ndnSIM/plugin/topology. On compilation of this class, I am getting below error. Towards this change, I have also included "nlsr-topology-reader.h" file in /ns3/ndnSIM-module.h. The below error is thrown from this file only. I am not sure why this error and how to resolve this. I also observed some sort of relationship of topology reader in the ndnSIM/binding/ folder as below. grep -l annotated-topology-reader.h * modulegen__gcc_ILP32.py modulegen__gcc_LP64.py I am not sure if there is any relationship of this binding with the below error. Can someone please elaborate? Thanks, /anil. [1289/2530] cxx: src/ndnSIM/examples/ndn-simple-with-pcap.cc -> build/src/ndnSIM/examples/ndn-simple-with-pcap.cc.20.o In file included from ../src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc:24:0: ./ns3/ndnSIM-module.h:55:34: fatal error: nlsr-topology-reader.h: No such file or directory compilation terminated. In file included from ../src/ndnSIM/examples/ndn-nlsr-simple.cc:24:0: ./ns3/ndnSIM-module.h:55:34: fatal error: nlsr-topology-reader.h: No such file or directory compilation terminated. In file included from ../src/ndnSIM/examples/ndn-simple-udp.cc:25:0: ./ns3/ndnSIM-module.h:55:34: fatal error: nlsr-topology-reader.h: No such file or directory compilation terminated. In file included from ../src/ndnSIM/examples/ndn-simple-with-pcap.cc:24:0: ./ns3/ndnSIM-module.h:55:34: fatal error: nlsr-topology-reader.h: No such file or directory compilation terminated. -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexander.afanasyev at ucla.edu Sun Feb 8 22:23:25 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Sun, 8 Feb 2015 22:23:25 -0800 Subject: [ndnSIM] Compile error while adding new topology reader. In-Reply-To: References: Message-ID: <4658D6E9-65C9-47F5-BA36-DC8D758719C3@ucla.edu> Hi Anil, If you haven?t yet, try including nlsr-topology-reader.h into headers part of ndnSIM wscript (add to headers.source inside build function). There is some weirdness with how NS-3 treats header files, and in some cases you need to do this magic. Adding to headers.source ensures that the header file is copied into ns3/ directory and can be found. There are other workarounds, if this one does not work. In ndnSIM 2.0 this particular part of build system was updated and usage of ns3/-directory includes is eliminated/reduced to bare minimum. ? Alex > On Feb 8, 2015, at 9:23 PM, Anil Jangam wrote: > > Hi, > > I have added a new topology reader class to my simulation scenario under folder ndnSIM/plugin/topology. On compilation of this class, I am getting below error. > > Towards this change, I have also included "nlsr-topology-reader.h" file in /ns3/ndnSIM-module.h. The below error is thrown from this file only. I am not sure why this error and how to resolve this. > > I also observed some sort of relationship of topology reader in the ndnSIM/binding/ folder as below. > > grep -l annotated-topology-reader.h * > modulegen__gcc_ILP32.py > modulegen__gcc_LP64.py > > I am not sure if there is any relationship of this binding with the below error. Can someone please elaborate? > > Thanks, > /anil. > > > [1289/2530] cxx: src/ndnSIM/examples/ndn-simple-with-pcap.cc -> build/src/ndnSIM/examples/ndn-simple-with-pcap.cc.20.o > In file included from ../src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc:24:0: > ./ns3/ndnSIM-module.h:55:34: fatal error: nlsr-topology-reader.h: No such file or directory > compilation terminated. > In file included from ../src/ndnSIM/examples/ndn-nlsr-simple.cc:24:0: > ./ns3/ndnSIM-module.h:55:34: fatal error: nlsr-topology-reader.h: No such file or directory > compilation terminated. > In file included from ../src/ndnSIM/examples/ndn-simple-udp.cc:25:0: > ./ns3/ndnSIM-module.h:55:34: fatal error: nlsr-topology-reader.h: No such file or directory > compilation terminated. > In file included from ../src/ndnSIM/examples/ndn-simple-with-pcap.cc:24:0: > ./ns3/ndnSIM-module.h:55:34: fatal error: nlsr-topology-reader.h: No such file or directory > compilation terminated. > > _______________________________________________ > 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 alexander.afanasyev at ucla.edu Sun Feb 8 22:26:55 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Sun, 8 Feb 2015 22:26:55 -0800 Subject: [ndnSIM] How to set Pit and Fib in 2.0? In-Reply-To: References: Message-ID: <8AF73231-249A-439B-8B4E-0904DECC1FD7@ucla.edu> Hi Choi, If you want to just add a new entry to Fib, you can use FibHelper that simplifies a lot of things. You can also do it manually if you don?t like the helper (check helper source for that). If you want to modify what entry stores, you can just update NFD/daemon/table/fib-* files. ? Alex > On Feb 8, 2015, at 2:43 PM, ??? wrote: > > Thanks for your reply. > > I mean that can I add a field to Fib table? > for example. the existing fields are Prefix and Face list in Fib. > > Wonjun, Choi -------------- 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 wadekahn at clarkson.edu Mon Feb 9 13:37:27 2015 From: wadekahn at clarkson.edu (Hitesh Wadekar) Date: Mon, 9 Feb 2015 16:37:27 -0500 Subject: [ndnSIM] [ndnSIM2.0]: Data packet isn't receiving on the other nodes Message-ID: Hello Guys, I started to porting my code to ndnSIM2.0, however, I am facing a weired issue, It would be really helpful for me if you guys pointed out some suggestion and the steps/tips to debug or identify the reason why it so. I have my code working on old version of ndnSIM, we thought that since recently we launched ndnSIM2.0, we have started to port the code on it. The issue is I am not able to receive the data packet on the other node. However, I am able to send interest packet on the all node. The code logic and everything is same as sample example given for Consume and Producer App. Also, I have verified the route as well along with signature/ wireEncode. Since I am receiving 'Interest Packet" hence looks like FIB entries (routes) could not be a problem. Here is sample code that I am using, void ConsumerApp::SendDataPacket(shared_ptr interest) { if (!m_active) return; NS_LOG_FUNCTION(this << interest); std::cout<< "ConsumerApp: Sending a Data Packet -> "<< interest->getName() << std::endl; Name dataName(interest->getName()); auto dPacket = make_shared(); dPacket->setName(dataName); dPacket->setFreshnessPeriod(ndn::time::milliseconds(3000)); dPacket->setContent(make_shared< ::ndn::Buffer>(m_virtualPayloadSize)); Signature signature; SignatureInfo signatureInfo(static_cast< ::ndn::tlv::SignatureTypeValue>(255)); if (m_keyLocator.size() > 0) { signatureInfo.setKeyLocator(m_keyLocator); } signature.setInfo(signatureInfo); signature.setValue(Block(&m_signature, sizeof(m_signature))); dPacket->setSignature(signature); dPacket->wireEncode(); std::cout << "\n ConsumerApp: Data packet- > " << dPacket->getName () << " is sending from face -> " << m_face << std::endl; m_transmittedDatas(dPacket, this, m_face); m_face->onReceiveData(*dPacket); std::cout << "\n"; } I am looking forward to hear from you back. Thank you. Regards, Hitesh Wadekar -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexander.afanasyev at ucla.edu Mon Feb 9 13:42:42 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Mon, 9 Feb 2015 13:42:42 -0800 Subject: [ndnSIM] [ndnSIM2.0]: Data packet isn't receiving on the other nodes In-Reply-To: References: Message-ID: Hi Hitesh, There are several reasons why data packet be not propagated along the interest path. Most likely it mistmatches the interest or interest expires before data packet is retrieved. To help more, you need to give us a reproducible scenario/example. You can enable more NFD logging to see what is going on with the data packet (look for loggers starting ?nfd.? in http://ndnsim.net/2.0/doxygen/LogComponentList.html ) ? Alex > On Feb 9, 2015, at 1:37 PM, Hitesh Wadekar wrote: > > Hello Guys, > > I started to porting my code to ndnSIM2.0, however, I am facing a weired issue, It would be really helpful for me if you guys pointed out some suggestion and the steps/tips to debug or identify the reason why it so. > > I have my code working on old version of ndnSIM, we thought that since recently we launched ndnSIM2.0, we have started to port the code on it. The issue is I am not able to receive the data packet on the other node. However, I am able to send interest packet on the all node. The code logic and everything is same as sample example given for Consume and Producer App. Also, I have verified the route as well along with signature/ wireEncode. > > Since I am receiving 'Interest Packet" hence looks like FIB entries (routes) could not be a problem. > > Here is sample code that I am using, > > void ConsumerApp::SendDataPacket(shared_ptr interest) { > if (!m_active) > return; > NS_LOG_FUNCTION(this << interest); > std::cout<< "ConsumerApp: Sending a Data Packet -> "<< interest->getName() << std::endl; > > Name dataName(interest->getName()); > auto dPacket = make_shared(); > dPacket->setName(dataName); > dPacket->setFreshnessPeriod(ndn::time::milliseconds(3000)); > dPacket->setContent(make_shared< ::ndn::Buffer>(m_virtualPayloadSize)); > > Signature signature; > > SignatureInfo signatureInfo(static_cast< ::ndn::tlv::SignatureTypeValue>(255)); > > if (m_keyLocator.size() > 0) { > signatureInfo.setKeyLocator(m_keyLocator); > } > > signature.setInfo(signatureInfo); > signature.setValue(Block(&m_signature, sizeof(m_signature))); > > dPacket->setSignature(signature); > dPacket->wireEncode(); > std::cout << "\n ConsumerApp: Data packet- > " << dPacket->getName () << " is sending from face -> " << m_face << std::endl; > > m_transmittedDatas(dPacket, this, m_face); > m_face->onReceiveData(*dPacket); > std::cout << "\n"; > } > > I am looking forward to hear from you back. > > Thank you. > > Regards, > Hitesh Wadekar > _______________________________________________ > 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 anilj.mailing at gmail.com Mon Feb 9 16:52:28 2015 From: anilj.mailing at gmail.com (Anil Jangam) Date: Mon, 9 Feb 2015 19:52:28 -0500 Subject: [ndnSIM] Error in compilation ndn-cxx in ndnSIM 2.0 Message-ID: Hi, With new version of ndnSIM (2.0), I am consistently getting the below compilation error while building ndn-cxx code base. I am using g++ version - gcc version 4.6.4 (Ubuntu/Linaro 4.6.4-6ubuntu2). I am not sure if this is something to do with compiler version. I found a suggestion to a workaround here: https://bugs.archlinux.org/task/27751 [105/114] Compiling src/util/in-memory-storage-lfu.cpp [106/114] Compiling src/security/sec-rule-relative.cpp [107/114] Compiling src/util/time-unit-test-clock.cpp [108/114] Compiling src/name.cpp ../src/util/time-unit-test-clock.cpp: In member function ?void ndn::time::UnitTestClock::advance(const nanoseconds&)?: ../src/util/time-unit-test-clock.cpp:83:3: error: ?sleep_for? is not a member of ?std::this_thread? ../src/util/time-unit-test-clock.cpp: In member function ?void ndn::time::UnitTestClock::setNow(const nanoseconds&)?: ../src/util/time-unit-test-clock.cpp:94:3: error: ?sleep_for? is not a member of ?std::this_thread? Waf: Leaving directory `/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build' Build failed -> task in 'ndn-cxx' failed (exit status 1): {task 139666346622352: cxx time-unit-test-clock.cpp -> time-unit-test-clock.cpp.2.o} ['/usr/bin/g++', '-pedantic', '-Wall', '-O2', '-g', '-std=c++0x', '-fPIC', '-include', '/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build/ndn-cxx.2', '-I/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build', '-I/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx', '-I/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build/src', '-I/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/src', '-I/usr/include', '-DNDEBUG', '../src/util/time-unit-test-clock.cpp', '-c', '-o', '/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build/src/util/time-unit-test-clock.cpp.2.o'] Has anyone encountered this error before? /anil. -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexander.afanasyev at UCLA.EDU Mon Feb 9 17:03:13 2015 From: alexander.afanasyev at UCLA.EDU (Alex Afanasyev) Date: Mon, 9 Feb 2015 17:03:13 -0800 Subject: [ndnSIM] Error in compilation ndn-cxx in ndnSIM 2.0 In-Reply-To: References: Message-ID: Hi Anil, Thanks for the report. This is something I haven?t yet seen. I have created a bug report and we?ll try to fix this in the library. In the meantime, you can just use the cited workaround: CXXFLAGS="-pedantic -Wall -O2 -g -D_GLIBCXX_USE_NANOSLEEP? ./waf configure ? Alex > On Feb 9, 2015, at 4:52 PM, Anil Jangam wrote: > > Hi, > > With new version of ndnSIM (2.0), I am consistently getting the below compilation error while building ndn-cxx code base. > > I am using g++ version - gcc version 4.6.4 (Ubuntu/Linaro 4.6.4-6ubuntu2). I am not sure if this is something to do with compiler version. I found a suggestion to a workaround here: https://bugs.archlinux.org/task/27751 > > [105/114] Compiling src/util/in-memory-storage-lfu.cpp > [106/114] Compiling src/security/sec-rule-relative.cpp > [107/114] Compiling src/util/time-unit-test-clock.cpp > [108/114] Compiling src/name.cpp > ../src/util/time-unit-test-clock.cpp: In member function ?void ndn::time::UnitTestClock::advance(const nanoseconds&)?: > ../src/util/time-unit-test-clock.cpp:83:3: error: ?sleep_for? is not a member of ?std::this_thread? > ../src/util/time-unit-test-clock.cpp: In member function ?void ndn::time::UnitTestClock::setNow(const nanoseconds&)?: > ../src/util/time-unit-test-clock.cpp:94:3: error: ?sleep_for? is not a member of ?std::this_thread? > > Waf: Leaving directory `/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build' > Build failed > -> task in 'ndn-cxx' failed (exit status 1): > {task 139666346622352: cxx time-unit-test-clock.cpp -> time-unit-test-clock.cpp.2.o} > ['/usr/bin/g++', '-pedantic', '-Wall', '-O2', '-g', '-std=c++0x', '-fPIC', '-include', '/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build/ndn-cxx.2', '-I/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build', '-I/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx', '-I/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build/src', '-I/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/src', '-I/usr/include', '-DNDEBUG', '../src/util/time-unit-test-clock.cpp', '-c', '-o', '/home/anilj1/sandbox/nlsrPorting/ndnSIM20/ndn-cxx/build/src/util/time-unit-test-clock.cpp.2.o'] > > Has anyone encountered this error before? > > /anil. -------------- 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 marco.ulgelmo at aol.com Tue Feb 10 00:59:38 2015 From: marco.ulgelmo at aol.com (marco.ulgelmo at aol.com) Date: Tue, 10 Feb 2015 03:59:38 -0500 Subject: [ndnSIM] Methods in forwarder.cpp Message-ID: <8D21327089952EC-C44-37FB9@webmail-vm159.sysops.aol.com> Hi all, Looking at the code in forwarder.cpp i noticed that there are some methods (like onIncomingInterest, onDataUnsolicited etc.) which are not listed and described in the API documentation. Since i need to use / modify those methods, is there a reason why they are omitted? Thanks, Marco U. -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Tue Feb 10 08:50:12 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Tue, 10 Feb 2015 08:50:12 -0800 Subject: [ndnSIM] Methods in forwarder.cpp In-Reply-To: <8D21327089952EC-C44-37FB9@webmail-vm159.sysops.aol.com> References: <8D21327089952EC-C44-37FB9@webmail-vm159.sysops.aol.com> Message-ID: <5DCD8363-D469-40AF-A711-9F31D1321357@gmail.com> Hello Marco, onIncomingInterest refers to the NFD pipeline for an incoming Interest and onDataUnsolicited is the pipeline for unsolicited data. In general the majority of methods in this file refers to the pipelines of NFD. You can take a look here: http://named-data.net/doc/NFD/current/doxygen/d7/d42/classnfd_1_1Forwarder.html However, there could be some minor changes in the documentation of the current NFD version and the version of NFD in ndnSIM, which do not affect your general understanding of what is done by each of these method. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 10, 2015, at 12:59 AM, marco.ulgelmo at aol.com wrote: > > Hi all, > > Looking at the code in forwarder.cpp i noticed that there are some methods (like onIncomingInterest, onDataUnsolicited etc.) which are not listed and described in the API documentation. Since i need to use / modify those methods, is there a reason why they are omitted? > > Thanks, > Marco U. > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From alexander.afanasyev at ucla.edu Tue Feb 10 10:55:45 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Tue, 10 Feb 2015 10:55:45 -0800 Subject: [ndnSIM] Methods in forwarder.cpp In-Reply-To: <5DCD8363-D469-40AF-A711-9F31D1321357@gmail.com> References: <8D21327089952EC-C44-37FB9@webmail-vm159.sysops.aol.com> <5DCD8363-D469-40AF-A711-9F31D1321357@gmail.com> Message-ID: <10A2EC4F-71CE-4758-B2D1-5A9F0841999D@ucla.edu> Hi Marco, Another source for documentation about NFD is NFD developer's guide (http://named-data.net/techreport/ndn-0021-nfd-developer-guide.pdf). It has more details about NFD internal and the pipelines that Spyros mentioned. --- Alex > On Feb 10, 2015, at 8:50 AM, Spyridon (Spyros) Mastorakis wrote: > > Hello Marco, > > onIncomingInterest refers to the NFD pipeline for an incoming Interest and onDataUnsolicited is the pipeline for unsolicited data. In general the majority of methods in this file refers to the pipelines of NFD. You can take a look here: > > http://named-data.net/doc/NFD/current/doxygen/d7/d42/classnfd_1_1Forwarder.html > > However, there could be some minor changes in the documentation of the current NFD version and the version of NFD in ndnSIM, which do not affect your general understanding of what is done by each of these method. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > >> On Feb 10, 2015, at 12:59 AM, marco.ulgelmo at aol.com wrote: >> >> Hi all, >> >> Looking at the code in forwarder.cpp i noticed that there are some methods (like onIncomingInterest, onDataUnsolicited etc.) which are not listed and described in the API documentation. Since i need to use / modify those methods, is there a reason why they are omitted? >> >> Thanks, >> Marco U. >> _______________________________________________ >> 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 -------------- 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 hishamfarahat at gmail.com Tue Feb 10 20:04:19 2015 From: hishamfarahat at gmail.com (Hisham Farahat) Date: Tue, 10 Feb 2015 23:04:19 -0500 Subject: [ndnSIM] Any tips to speed up ndnSIM ? Message-ID: Hi, Any tips to optimize ndnSIM run? My scenario consists of 250 Nodes with 1.5 Million interests generated in 1000 seconds with a lot of mobility events. , this scenario takes around an hour. Any tips to speed up such scenario? I'm running with optimized profile. No printing . No logs. The presentation (ndnSIM: a modular NDN simulator Introduction and Tutorial by Alex Afanasyev, Ilya Moiseenko, Lixia Zhang), in the scalability slide, you have mentioned that the processing speed can be optimized by utilizing a simplified packet encoding. How can we do that? Regards, -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Tue Feb 10 20:13:02 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Tue, 10 Feb 2015 20:13:02 -0800 Subject: [ndnSIM] Any tips to speed up ndnSIM ? In-Reply-To: References: Message-ID: Hello, first of all, I would like to ask which version of ndnSIM you are using. I guess this presentation refers to the previous version of ndnSIM (i.e., ndnSIM 1.0). One option is to try to run the simulations using MPI, a feature provided by NS-3. I have created an issue on redmine for that (Feature #2504): http://redmine.named-data.net/issues/2504 However, this issue has not been resolved yet, so I cannot provide explicit instruction steps about that. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 10, 2015, at 8:04 PM, Hisham Farahat wrote: > > Hi, > Any tips to optimize ndnSIM run? > My scenario consists of 250 Nodes with 1.5 Million interests generated in 1000 seconds with a lot of mobility events. , this scenario takes around an hour. > Any tips to speed up such scenario? > > I'm running with optimized profile. No printing . No logs. > > The presentation (ndnSIM: a modular NDN simulator Introduction and Tutorial by Alex Afanasyev, Ilya Moiseenko, Lixia Zhang), in the scalability slide, you have mentioned that the processing speed can be optimized by utilizing a simplified packet encoding. How can we do that? > > > Regards, > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From hishamfarahat at gmail.com Tue Feb 10 20:16:08 2015 From: hishamfarahat at gmail.com (Hisham Farahat) Date: Tue, 10 Feb 2015 23:16:08 -0500 Subject: [ndnSIM] Any tips to speed up ndnSIM ? In-Reply-To: References: Message-ID: Hi, ndnSim 1.0. On Tue, Feb 10, 2015 at 11:13 PM, Spyridon (Spyros) Mastorakis < spiros.mastorakis at gmail.com> wrote: > Hello, > > first of all, I would like to ask which version of ndnSIM you are using. I > guess this presentation refers to the previous version of ndnSIM (i.e., > ndnSIM 1.0). > > One option is to try to run the simulations using MPI, a feature provided > by NS-3. I have created an issue on redmine for that (Feature #2504): > > http://redmine.named-data.net/issues/2504 > > However, this issue has not been resolved yet, so I cannot provide > explicit instruction steps about that. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > On Feb 10, 2015, at 8:04 PM, Hisham Farahat > wrote: > > > > Hi, > > Any tips to optimize ndnSIM run? > > My scenario consists of 250 Nodes with 1.5 Million interests generated > in 1000 seconds with a lot of mobility events. , this scenario takes around > an hour. > > Any tips to speed up such scenario? > > > > I'm running with optimized profile. No printing . No logs. > > > > The presentation (ndnSIM: a modular NDN simulator Introduction and > Tutorial by Alex Afanasyev, Ilya Moiseenko, Lixia Zhang), in the > scalability slide, you have mentioned that the processing speed can be > optimized by utilizing a simplified packet encoding. How can we do that? > > > > > > Regards, > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > -- Hisham Farahat -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Tue Feb 10 20:21:55 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Tue, 10 Feb 2015 20:21:55 -0800 Subject: [ndnSIM] Any tips to speed up ndnSIM ? In-Reply-To: References: Message-ID: Hello, I will try to resolve this issue in the near future and come up with some instructions for that. However, I do not have a clear time schedule when this will be done. The instructions would primarily refer to ndnSIM 2.0, but probably they would be applicable to ndnSIM 1.0 as well. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 10, 2015, at 8:16 PM, Hisham Farahat wrote: > > Hi, > ndnSim 1.0. > > > On Tue, Feb 10, 2015 at 11:13 PM, Spyridon (Spyros) Mastorakis wrote: > Hello, > > first of all, I would like to ask which version of ndnSIM you are using. I guess this presentation refers to the previous version of ndnSIM (i.e., ndnSIM 1.0). > > One option is to try to run the simulations using MPI, a feature provided by NS-3. I have created an issue on redmine for that (Feature #2504): > > http://redmine.named-data.net/issues/2504 > > However, this issue has not been resolved yet, so I cannot provide explicit instruction steps about that. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > On Feb 10, 2015, at 8:04 PM, Hisham Farahat wrote: > > > > Hi, > > Any tips to optimize ndnSIM run? > > My scenario consists of 250 Nodes with 1.5 Million interests generated in 1000 seconds with a lot of mobility events. , this scenario takes around an hour. > > Any tips to speed up such scenario? > > > > I'm running with optimized profile. No printing . No logs. > > > > The presentation (ndnSIM: a modular NDN simulator Introduction and Tutorial by Alex Afanasyev, Ilya Moiseenko, Lixia Zhang), in the scalability slide, you have mentioned that the processing speed can be optimized by utilizing a simplified packet encoding. How can we do that? > > > > > > Regards, > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > -- > Hisham Farahat From wadekahn at clarkson.edu Wed Feb 11 06:37:36 2015 From: wadekahn at clarkson.edu (Hitesh Wadekar) Date: Wed, 11 Feb 2015 09:37:36 -0500 Subject: [ndnSIM] [ndnSIM2.0]: Data packet isn't receiving on the other nodes In-Reply-To: References: Message-ID: Thank you Alex, it was interest expiration issue. Also, Thanks for sharing the new NFD docs ( http://named-data.net/techreport/ndn-0021-3-nfd-developer-guide.pdf). Do we have an ndnSIM IRC where we all can actively chat? Cheer, Hitesh On Mon, Feb 9, 2015 at 5:15 PM, Hitesh Wadekar wrote: > Thank you Alex for the information. Let me increase the interest lifetime > and check whether that could be a problem or not. > > Regards, > Hitesh > > > On Mon, Feb 9, 2015 at 4:42 PM, Alex Afanasyev < > alexander.afanasyev at ucla.edu> wrote: > >> Hi Hitesh, >> >> There are several reasons why data packet be not propagated along the >> interest path. Most likely it mistmatches the interest or interest expires >> before data packet is retrieved. >> >> To help more, you need to give us a reproducible scenario/example. You >> can enable more NFD logging to see what is going on with the data packet >> (look for loggers starting ?nfd.? in >> http://ndnsim.net/2.0/doxygen/LogComponentList.html) >> >> ? >> Alex >> >> On Feb 9, 2015, at 1:37 PM, Hitesh Wadekar wrote: >> >> Hello Guys, >> >> I started to porting my code to ndnSIM2.0, however, I am facing a weired >> issue, It would be really helpful for me if you guys pointed out some >> suggestion and the steps/tips to debug or identify the reason why it so. >> >> I have my code working on old version of ndnSIM, we thought that since >> recently we launched ndnSIM2.0, we have started to port the code on it. The >> issue is I am not able to receive the data packet on the other node. >> However, I am able to send interest packet on the all node. The code logic >> and everything is same as sample example given for Consume and Producer >> App. Also, I have verified the route as well along with signature/ >> wireEncode. >> >> Since I am receiving 'Interest Packet" hence looks like FIB entries >> (routes) could not be a problem. >> >> Here is sample code that I am using, >> >> void ConsumerApp::SendDataPacket(shared_ptr interest) { >> if (!m_active) >> return; >> NS_LOG_FUNCTION(this << interest); >> std::cout<< "ConsumerApp: Sending a Data Packet -> "<< >> interest->getName() << std::endl; >> >> Name dataName(interest->getName()); >> auto dPacket = make_shared(); >> dPacket->setName(dataName); >> dPacket->setFreshnessPeriod(ndn::time::milliseconds(3000)); >> dPacket->setContent(make_shared< >> ::ndn::Buffer>(m_virtualPayloadSize)); >> >> Signature signature; >> >> SignatureInfo signatureInfo(static_cast< >> ::ndn::tlv::SignatureTypeValue>(255)); >> >> if (m_keyLocator.size() > 0) { >> signatureInfo.setKeyLocator(m_keyLocator); >> } >> >> signature.setInfo(signatureInfo); >> signature.setValue(Block(&m_signature, sizeof(m_signature))); >> >> dPacket->setSignature(signature); >> dPacket->wireEncode(); >> std::cout << "\n ConsumerApp: Data packet- > " << dPacket->getName () >> << " is sending from face -> " << m_face << std::endl; >> >> m_transmittedDatas(dPacket, this, m_face); >> m_face->onReceiveData(*dPacket); >> std::cout << "\n"; >> } >> >> I am looking forward to hear from you back. >> >> Thank you. >> >> Regards, >> Hitesh Wadekar >> _______________________________________________ >> 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 adith.ad at gmail.com Wed Feb 11 08:24:47 2015 From: adith.ad at gmail.com (adithya srinivasan) Date: Wed, 11 Feb 2015 21:54:47 +0530 Subject: [ndnSIM] How to get number of exclusions made for an interest in the content store Message-ID: Hello My project involves a reactive mechanism for cache poisoning in ndn. And I need some help in getting hold of the number of exclusions made for an interest and also as to how to add exclusions to an interest.Please help me on this. Thank you Adithya S -------------- next part -------------- An HTML attachment was scrubbed... URL: From cawka1 at gmail.com Wed Feb 11 08:40:01 2015 From: cawka1 at gmail.com (Alex Afanasyev) Date: Wed, 11 Feb 2015 08:40:01 -0800 Subject: [ndnSIM] How to get number of exclusions made for an interest in the content store In-Reply-To: References: Message-ID: <4D050F2E-4973-4E74-AC6C-C4F3132F1548@gmail.com> Hi Adithya, Can you define more precisely "the number of exclusions"? As for attaching some information. For simulation purposes, you can always use NS-3 packet tags to add/retrieve arbitrary information to any packet. --- Alex > On Feb 11, 2015, at 8:24 AM, adithya srinivasan wrote: > > Hello > My project involves a reactive mechanism for cache poisoning in ndn. And I need some help in getting hold of the number of exclusions made for an interest and also as to how to add exclusions to an interest.Please help me on this. > > Thank you > Adithya S -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 2574 bytes Desc: not available URL: From aloulounarjes at yahoo.fr Wed Feb 11 16:55:05 2015 From: aloulounarjes at yahoo.fr (narjes aloulou) Date: Thu, 12 Feb 2015 00:55:05 +0000 Subject: [ndnSIM] shortestpath poblem Message-ID: <1423702505.38066.YahooMailBasic@web172104.mail.ir2.yahoo.com> Hi, Considering a large catalog (10? prefixes), "ndnGlobalRoutingHelper.CalculateRoutes ()" creates an infinite loop and crashes the system. My scenario consists of 300 nodes and I use ndnSIM 1.0. Any solution to resolve this problem , please? Are there any way to use ShortestPath without using the ndnGlobalRoutingHelper ? Best Regards From alexander.afanasyev at ucla.edu Wed Feb 11 22:05:26 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Wed, 11 Feb 2015 22:05:26 -0800 Subject: [ndnSIM] shortestpath poblem In-Reply-To: <1423702505.38066.YahooMailBasic@web172104.mail.ir2.yahoo.com> References: <1423702505.38066.YahooMailBasic@web172104.mail.ir2.yahoo.com> Message-ID: <19021100-E590-4A99-82A3-1CD816B2113B@ucla.edu> Double check that you have build NS-3/ndnSIM in optimized mode. Implementation of CalculateRoutes internally uses Dijkstra algorithm from Boost graph library (which is known to be extremely slow in debug mode). It should be a problem for this number of prefixes and nodes. If still fails, you can compute all routes and prefixes offline and install them directly using FibHelper. -- Alex > On Feb 11, 2015, at 4:55 PM, narjes aloulou wrote: > > Hi, > > Considering a large catalog (10? prefixes), "ndnGlobalRoutingHelper.CalculateRoutes ()" creates an infinite loop and crashes the system. My scenario consists of 300 nodes and I use ndnSIM 1.0. > > Any solution to resolve this problem , please? > Are there any way to use ShortestPath without using the ndnGlobalRoutingHelper ? > > > 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 spiros.mastorakis at gmail.com Wed Feb 11 22:31:31 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 11 Feb 2015 22:31:31 -0800 Subject: [ndnSIM] [ndnSIM2.0]: Data packet isn't receiving on the other nodes In-Reply-To: References: Message-ID: Hello, there is no IRC chat related to ndnSIM right now. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 11, 2015, at 6:37 AM, Hitesh Wadekar wrote: > > Thank you Alex, it was interest expiration issue. > Also, Thanks for sharing the new NFD docs (http://named-data.net/techreport/ndn-0021-3-nfd-developer-guide.pdf). > > Do we have an ndnSIM IRC where we all can actively chat? > > Cheer, > Hitesh > > > On Mon, Feb 9, 2015 at 5:15 PM, Hitesh Wadekar wrote: > Thank you Alex for the information. Let me increase the interest lifetime and check whether that could be a problem or not. > > Regards, > Hitesh > > > On Mon, Feb 9, 2015 at 4:42 PM, Alex Afanasyev wrote: > Hi Hitesh, > > There are several reasons why data packet be not propagated along the interest path. Most likely it mistmatches the interest or interest expires before data packet is retrieved. > > To help more, you need to give us a reproducible scenario/example. You can enable more NFD logging to see what is going on with the data packet (look for loggers starting ?nfd.? in http://ndnsim.net/2.0/doxygen/LogComponentList.html) > > ? > Alex > >> On Feb 9, 2015, at 1:37 PM, Hitesh Wadekar wrote: >> >> Hello Guys, >> >> I started to porting my code to ndnSIM2.0, however, I am facing a weired issue, It would be really helpful for me if you guys pointed out some suggestion and the steps/tips to debug or identify the reason why it so. >> >> I have my code working on old version of ndnSIM, we thought that since recently we launched ndnSIM2.0, we have started to port the code on it. The issue is I am not able to receive the data packet on the other node. However, I am able to send interest packet on the all node. The code logic and everything is same as sample example given for Consume and Producer App. Also, I have verified the route as well along with signature/ wireEncode. >> >> Since I am receiving 'Interest Packet" hence looks like FIB entries (routes) could not be a problem. >> >> Here is sample code that I am using, >> >> void ConsumerApp::SendDataPacket(shared_ptr interest) { >> if (!m_active) >> return; >> NS_LOG_FUNCTION(this << interest); >> std::cout<< "ConsumerApp: Sending a Data Packet -> "<< interest->getName() << std::endl; >> >> Name dataName(interest->getName()); >> auto dPacket = make_shared(); >> dPacket->setName(dataName); >> dPacket->setFreshnessPeriod(ndn::time::milliseconds(3000)); >> dPacket->setContent(make_shared< ::ndn::Buffer>(m_virtualPayloadSize)); >> >> Signature signature; >> >> SignatureInfo signatureInfo(static_cast< ::ndn::tlv::SignatureTypeValue>(255)); >> >> if (m_keyLocator.size() > 0) { >> signatureInfo.setKeyLocator(m_keyLocator); >> } >> >> signature.setInfo(signatureInfo); >> signature.setValue(Block(&m_signature, sizeof(m_signature))); >> >> dPacket->setSignature(signature); >> dPacket->wireEncode(); >> std::cout << "\n ConsumerApp: Data packet- > " << dPacket->getName () << " is sending from face -> " << m_face << std::endl; >> >> m_transmittedDatas(dPacket, this, m_face); >> m_face->onReceiveData(*dPacket); >> std::cout << "\n"; >> } >> >> I am looking forward to hear from you back. >> >> Thank you. >> >> Regards, >> Hitesh Wadekar >> _______________________________________________ >> 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 From wonjunchoi001 at gmail.com Thu Feb 12 02:58:05 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Thu, 12 Feb 2015 19:58:05 +0900 Subject: [ndnSIM] How to trace Fib table? Message-ID: Hello. Is there a way to trace Fib table and Pit table? Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From wadekahn at clarkson.edu Thu Feb 12 06:48:02 2015 From: wadekahn at clarkson.edu (Hitesh Wadekar) Date: Thu, 12 Feb 2015 09:48:02 -0500 Subject: [ndnSIM] ndnSIM Digest, Vol 27, Issue 10 In-Reply-To: References: Message-ID: Hi Alex, Could you please give me some steps that how to debug Dijkstra algorithm from Boost graph library ? (are you guys using gdb or is there any other methods to debug those? ) Thanks, Hitesh On Thu, Feb 12, 2015 at 1:05 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. Re: [ndnSIM2.0]: Data packet isn't receiving on the other > nodes (Hitesh Wadekar) > 2. How to get number of exclusions made for an interest in the > content store (adithya srinivasan) > 3. Re: How to get number of exclusions made for an interest in > the content store (Alex Afanasyev) > 4. shortestpath poblem (narjes aloulou) > 5. Re: shortestpath poblem (Alex Afanasyev) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Wed, 11 Feb 2015 09:37:36 -0500 > From: Hitesh Wadekar > To: Alex Afanasyev > Cc: ndnsim at lists.cs.ucla.edu > Subject: Re: [ndnSIM] [ndnSIM2.0]: Data packet isn't receiving on the > other nodes > Message-ID: > < > CAGCGGjZPk9zmv9rj86-KR-s1PQRz0h6KsB9J1GTkDf2xqBaTrQ at mail.gmail.com> > Content-Type: text/plain; charset="utf-8" > > Thank you Alex, it was interest expiration issue. > Also, Thanks for sharing the new NFD docs ( > http://named-data.net/techreport/ndn-0021-3-nfd-developer-guide.pdf). > > Do we have an ndnSIM IRC where we all can actively chat? > > Cheer, > Hitesh > > > On Mon, Feb 9, 2015 at 5:15 PM, Hitesh Wadekar > wrote: > > > Thank you Alex for the information. Let me increase the interest lifetime > > and check whether that could be a problem or not. > > > > Regards, > > Hitesh > > > > > > On Mon, Feb 9, 2015 at 4:42 PM, Alex Afanasyev < > > alexander.afanasyev at ucla.edu> wrote: > > > >> Hi Hitesh, > >> > >> There are several reasons why data packet be not propagated along the > >> interest path. Most likely it mistmatches the interest or interest > expires > >> before data packet is retrieved. > >> > >> To help more, you need to give us a reproducible scenario/example. You > >> can enable more NFD logging to see what is going on with the data packet > >> (look for loggers starting ?nfd.? in > >> http://ndnsim.net/2.0/doxygen/LogComponentList.html) > >> > >> ? > >> Alex > >> > >> On Feb 9, 2015, at 1:37 PM, Hitesh Wadekar > wrote: > >> > >> Hello Guys, > >> > >> I started to porting my code to ndnSIM2.0, however, I am facing a weired > >> issue, It would be really helpful for me if you guys pointed out some > >> suggestion and the steps/tips to debug or identify the reason why it so. > >> > >> I have my code working on old version of ndnSIM, we thought that since > >> recently we launched ndnSIM2.0, we have started to port the code on it. > The > >> issue is I am not able to receive the data packet on the other node. > >> However, I am able to send interest packet on the all node. The code > logic > >> and everything is same as sample example given for Consume and Producer > >> App. Also, I have verified the route as well along with signature/ > >> wireEncode. > >> > >> Since I am receiving 'Interest Packet" hence looks like FIB entries > >> (routes) could not be a problem. > >> > >> Here is sample code that I am using, > >> > >> void ConsumerApp::SendDataPacket(shared_ptr interest) { > >> if (!m_active) > >> return; > >> NS_LOG_FUNCTION(this << interest); > >> std::cout<< "ConsumerApp: Sending a Data Packet -> "<< > >> interest->getName() << std::endl; > >> > >> Name dataName(interest->getName()); > >> auto dPacket = make_shared(); > >> dPacket->setName(dataName); > >> dPacket->setFreshnessPeriod(ndn::time::milliseconds(3000)); > >> dPacket->setContent(make_shared< > >> ::ndn::Buffer>(m_virtualPayloadSize)); > >> > >> Signature signature; > >> > >> SignatureInfo signatureInfo(static_cast< > >> ::ndn::tlv::SignatureTypeValue>(255)); > >> > >> if (m_keyLocator.size() > 0) { > >> signatureInfo.setKeyLocator(m_keyLocator); > >> } > >> > >> signature.setInfo(signatureInfo); > >> signature.setValue(Block(&m_signature, sizeof(m_signature))); > >> > >> dPacket->setSignature(signature); > >> dPacket->wireEncode(); > >> std::cout << "\n ConsumerApp: Data packet- > " << dPacket->getName > () > >> << " is sending from face -> " << m_face << std::endl; > >> > >> m_transmittedDatas(dPacket, this, m_face); > >> m_face->onReceiveData(*dPacket); > >> std::cout << "\n"; > >> } > >> > >> I am looking forward to hear from you back. > >> > >> Thank you. > >> > >> Regards, > >> Hitesh Wadekar > >> _______________________________________________ > >> 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: < > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150211/09f42f97/attachment-0001.html > > > > ------------------------------ > > Message: 2 > Date: Wed, 11 Feb 2015 21:54:47 +0530 > From: adithya srinivasan > To: ndnsim at lists.cs.ucla.edu > Subject: [ndnSIM] How to get number of exclusions made for an interest > in the content store > Message-ID: > < > CAHwx5S8TBh9mmKtrt0k-QMf50UiadGYwdS_xxgQAUDEWHmEK-Q at mail.gmail.com> > Content-Type: text/plain; charset="utf-8" > > Hello > My project involves a reactive mechanism for cache poisoning in ndn. And I > need some help in getting hold of the number of exclusions made for an > interest and also as to how to add exclusions to an interest.Please help me > on this. > > Thank you > Adithya S > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: < > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150211/1780e469/attachment-0001.html > > > > ------------------------------ > > Message: 3 > Date: Wed, 11 Feb 2015 08:40:01 -0800 > From: Alex Afanasyev > To: adithya srinivasan > Cc: "ndnsim at lists.cs.ucla.edu" > Subject: Re: [ndnSIM] How to get number of exclusions made for an > interest in the content store > Message-ID: <4D050F2E-4973-4E74-AC6C-C4F3132F1548 at gmail.com> > Content-Type: text/plain; charset="us-ascii" > > Hi Adithya, > > Can you define more precisely "the number of exclusions"? > > As for attaching some information. For simulation purposes, you can always > use NS-3 packet tags to add/retrieve arbitrary information to any packet. > > --- > Alex > > > On Feb 11, 2015, at 8:24 AM, adithya srinivasan > wrote: > > > > Hello > > My project involves a reactive mechanism for cache poisoning in ndn. And > I need some help in getting hold of the number of exclusions made for an > interest and also as to how to add exclusions to an interest.Please help me > on this. > > > > Thank you > > Adithya S > -------------- next part -------------- > A non-text attachment was scrubbed... > Name: smime.p7s > Type: application/pkcs7-signature > Size: 2574 bytes > Desc: not available > URL: < > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150211/bca80159/attachment-0001.bin > > > > ------------------------------ > > Message: 4 > Date: Thu, 12 Feb 2015 00:55:05 +0000 > From: narjes aloulou > To: ndnsim at lists.cs.ucla.edu > Subject: [ndnSIM] shortestpath poblem > Message-ID: > <1423702505.38066.YahooMailBasic at web172104.mail.ir2.yahoo.com> > Content-Type: text/plain; charset=utf-8 > > Hi, > > Considering a large catalog (10? prefixes), > "ndnGlobalRoutingHelper.CalculateRoutes ()" creates an infinite loop and > crashes the system. My scenario consists of 300 nodes and I use ndnSIM 1.0. > > Any solution to resolve this problem , please? > Are there any way to use ShortestPath without using the > ndnGlobalRoutingHelper ? > > > Best Regards > > > > ------------------------------ > > Message: 5 > Date: Wed, 11 Feb 2015 22:05:26 -0800 > From: Alex Afanasyev > To: narjes aloulou > Cc: ndnsim at lists.cs.ucla.edu > Subject: Re: [ndnSIM] shortestpath poblem > Message-ID: <19021100-E590-4A99-82A3-1CD816B2113B at ucla.edu> > Content-Type: text/plain; charset="utf-8" > > Double check that you have build NS-3/ndnSIM in optimized mode. > Implementation of CalculateRoutes internally uses Dijkstra algorithm from > Boost graph library (which is known to be extremely slow in debug mode). > It should be a problem for this number of prefixes and nodes. > > If still fails, you can compute all routes and prefixes offline and > install them directly using FibHelper. > > -- > Alex > > > On Feb 11, 2015, at 4:55 PM, narjes aloulou > wrote: > > > > Hi, > > > > Considering a large catalog (10? prefixes), > "ndnGlobalRoutingHelper.CalculateRoutes ()" creates an infinite loop and > crashes the system. My scenario consists of 300 nodes and I use ndnSIM 1.0. > > > > Any solution to resolve this problem , please? > > Are there any way to use ShortestPath without using the > ndnGlobalRoutingHelper ? > > > > > > 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: < > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150211/c6c16478/attachment.bin > > > > ------------------------------ > > 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 27, Issue 10 > ************************************** > -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Thu Feb 12 08:38:57 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Thu, 12 Feb 2015 08:38:57 -0800 Subject: [ndnSIM] How to trace Fib table? In-Reply-To: References: Message-ID: <1C11E506-6444-42A0-A003-48666E730B31@gmail.com> Hello, You can follow the next link and look for loggers starting with ?nfd.?: http://ndnsim.net/2.0/doxygen/LogComponentList.html -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 12, 2015, at 2:58 AM, ??? wrote: > > Hello. > > Is there a way to trace Fib table and Pit table? > > Wonjun, Choi > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From cawka1 at gmail.com Thu Feb 12 09:19:55 2015 From: cawka1 at gmail.com (Alex Afanasyev) Date: Thu, 12 Feb 2015 09:19:55 -0800 Subject: [ndnSIM] How to trace Fib table? In-Reply-To: <1C11E506-6444-42A0-A003-48666E730B31@gmail.com> References: <1C11E506-6444-42A0-A003-48666E730B31@gmail.com> Message-ID: Just to clarify. The loggers nfd.* would work only in debug mode and are primarily designed for code debugging. If you need tracing for measurement purposes, the you should add additional mechanisms (e.g., ns-3's tracedcallback). --- Alex > On Feb 12, 2015, at 8:38 AM, Spyridon (Spyros) Mastorakis wrote: > > Hello, > > You can follow the next link and look for loggers starting with ?nfd.?: > > http://ndnsim.net/2.0/doxygen/LogComponentList.html > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > >> On Feb 12, 2015, at 2:58 AM, ??? wrote: >> >> Hello. >> >> Is there a way to trace Fib table and Pit table? >> >> Wonjun, Choi >> _______________________________________________ >> 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 -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/pkcs7-signature Size: 2574 bytes Desc: not available URL: From wadekahn at clarkson.edu Thu Feb 12 10:04:25 2015 From: wadekahn at clarkson.edu (Hitesh Wadekar) Date: Thu, 12 Feb 2015 13:04:25 -0500 Subject: [ndnSIM] ndnSIM Digest, Vol 27, Issue 11 In-Reply-To: References: Message-ID: Thanks Spyridon. Regards, Hitesh On Thu, Feb 12, 2015 at 9:48 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. Re: [ndnSIM2.0]: Data packet isn't receiving on the other > nodes (Spyridon (Spyros) Mastorakis) > 2. How to trace Fib table? (???) > 3. Re: ndnSIM Digest, Vol 27, Issue 10 (Hitesh Wadekar) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Wed, 11 Feb 2015 22:31:31 -0800 > From: "Spyridon (Spyros) Mastorakis" > To: Hitesh Wadekar > Cc: ndnsim at lists.cs.ucla.edu > Subject: Re: [ndnSIM] [ndnSIM2.0]: Data packet isn't receiving on the > other nodes > Message-ID: > Content-Type: text/plain; charset=utf-8 > > Hello, > > there is no IRC chat related to ndnSIM right now. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 11, 2015, at 6:37 AM, Hitesh Wadekar > wrote: > > > > Thank you Alex, it was interest expiration issue. > > Also, Thanks for sharing the new NFD docs ( > http://named-data.net/techreport/ndn-0021-3-nfd-developer-guide.pdf). > > > > Do we have an ndnSIM IRC where we all can actively chat? > > > > Cheer, > > Hitesh > > > > > > On Mon, Feb 9, 2015 at 5:15 PM, Hitesh Wadekar > wrote: > > Thank you Alex for the information. Let me increase the interest > lifetime and check whether that could be a problem or not. > > > > Regards, > > Hitesh > > > > > > On Mon, Feb 9, 2015 at 4:42 PM, Alex Afanasyev < > alexander.afanasyev at ucla.edu> wrote: > > Hi Hitesh, > > > > There are several reasons why data packet be not propagated along the > interest path. Most likely it mistmatches the interest or interest expires > before data packet is retrieved. > > > > To help more, you need to give us a reproducible scenario/example. You > can enable more NFD logging to see what is going on with the data packet > (look for loggers starting ?nfd.? in > http://ndnsim.net/2.0/doxygen/LogComponentList.html) > > > > ? > > Alex > > > >> On Feb 9, 2015, at 1:37 PM, Hitesh Wadekar > wrote: > >> > >> Hello Guys, > >> > >> I started to porting my code to ndnSIM2.0, however, I am facing a > weired issue, It would be really helpful for me if you guys pointed out > some suggestion and the steps/tips to debug or identify the reason why it > so. > >> > >> I have my code working on old version of ndnSIM, we thought that since > recently we launched ndnSIM2.0, we have started to port the code on it. The > issue is I am not able to receive the data packet on the other node. > However, I am able to send interest packet on the all node. The code logic > and everything is same as sample example given for Consume and Producer > App. Also, I have verified the route as well along with signature/ > wireEncode. > >> > >> Since I am receiving 'Interest Packet" hence looks like FIB entries > (routes) could not be a problem. > >> > >> Here is sample code that I am using, > >> > >> void ConsumerApp::SendDataPacket(shared_ptr interest) { > >> if (!m_active) > >> return; > >> NS_LOG_FUNCTION(this << interest); > >> std::cout<< "ConsumerApp: Sending a Data Packet -> "<< > interest->getName() << std::endl; > >> > >> Name dataName(interest->getName()); > >> auto dPacket = make_shared(); > >> dPacket->setName(dataName); > >> dPacket->setFreshnessPeriod(ndn::time::milliseconds(3000)); > >> dPacket->setContent(make_shared< > ::ndn::Buffer>(m_virtualPayloadSize)); > >> > >> Signature signature; > >> > >> SignatureInfo signatureInfo(static_cast< > ::ndn::tlv::SignatureTypeValue>(255)); > >> > >> if (m_keyLocator.size() > 0) { > >> signatureInfo.setKeyLocator(m_keyLocator); > >> } > >> > >> signature.setInfo(signatureInfo); > >> signature.setValue(Block(&m_signature, sizeof(m_signature))); > >> > >> dPacket->setSignature(signature); > >> dPacket->wireEncode(); > >> std::cout << "\n ConsumerApp: Data packet- > " << dPacket->getName > () << " is sending from face -> " << m_face << std::endl; > >> > >> m_transmittedDatas(dPacket, this, m_face); > >> m_face->onReceiveData(*dPacket); > >> std::cout << "\n"; > >> } > >> > >> I am looking forward to hear from you back. > >> > >> Thank you. > >> > >> Regards, > >> Hitesh Wadekar > >> _______________________________________________ > >> 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 > > > > > ------------------------------ > > Message: 2 > Date: Thu, 12 Feb 2015 19:58:05 +0900 > From: ??? > To: "ndnsim at lists.cs.ucla.edu" > Subject: [ndnSIM] How to trace Fib table? > Message-ID: > zEmxAAx28hbFCPy38v7A at mail.gmail.com> > Content-Type: text/plain; charset="utf-8" > > Hello. > > Is there a way to trace Fib table and Pit table? > > Wonjun, Choi > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: < > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150212/57e157a0/attachment-0001.html > > > > ------------------------------ > > Message: 3 > Date: Thu, 12 Feb 2015 09:48:02 -0500 > From: Hitesh Wadekar > To: , Alex Afanasyev > > Subject: Re: [ndnSIM] ndnSIM Digest, Vol 27, Issue 10 > Message-ID: > < > CAGCGGjbXjcMK6aVQdDNGP+UwzB1iukdCmjWQHLdXCnw1NAwuxA at mail.gmail.com> > Content-Type: text/plain; charset="utf-8" > > Hi Alex, > > Could you please give me some steps that how to debug Dijkstra algorithm > from Boost graph library ? (are you guys using gdb or is there any other > methods to debug those? ) > > Thanks, > Hitesh > > > On Thu, Feb 12, 2015 at 1:05 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. Re: [ndnSIM2.0]: Data packet isn't receiving on the other > > nodes (Hitesh Wadekar) > > 2. How to get number of exclusions made for an interest in the > > content store (adithya srinivasan) > > 3. Re: How to get number of exclusions made for an interest in > > the content store (Alex Afanasyev) > > 4. shortestpath poblem (narjes aloulou) > > 5. Re: shortestpath poblem (Alex Afanasyev) > > > > > > ---------------------------------------------------------------------- > > > > Message: 1 > > Date: Wed, 11 Feb 2015 09:37:36 -0500 > > From: Hitesh Wadekar > > To: Alex Afanasyev > > Cc: ndnsim at lists.cs.ucla.edu > > Subject: Re: [ndnSIM] [ndnSIM2.0]: Data packet isn't receiving on the > > other nodes > > Message-ID: > > < > > CAGCGGjZPk9zmv9rj86-KR-s1PQRz0h6KsB9J1GTkDf2xqBaTrQ at mail.gmail.com> > > Content-Type: text/plain; charset="utf-8" > > > > Thank you Alex, it was interest expiration issue. > > Also, Thanks for sharing the new NFD docs ( > > http://named-data.net/techreport/ndn-0021-3-nfd-developer-guide.pdf). > > > > Do we have an ndnSIM IRC where we all can actively chat? > > > > Cheer, > > Hitesh > > > > > > On Mon, Feb 9, 2015 at 5:15 PM, Hitesh Wadekar > > > wrote: > > > > > Thank you Alex for the information. Let me increase the interest > lifetime > > > and check whether that could be a problem or not. > > > > > > Regards, > > > Hitesh > > > > > > > > > On Mon, Feb 9, 2015 at 4:42 PM, Alex Afanasyev < > > > alexander.afanasyev at ucla.edu> wrote: > > > > > >> Hi Hitesh, > > >> > > >> There are several reasons why data packet be not propagated along the > > >> interest path. Most likely it mistmatches the interest or interest > > expires > > >> before data packet is retrieved. > > >> > > >> To help more, you need to give us a reproducible scenario/example. > You > > >> can enable more NFD logging to see what is going on with the data > packet > > >> (look for loggers starting ?nfd.? in > > >> http://ndnsim.net/2.0/doxygen/LogComponentList.html) > > >> > > >> ? > > >> Alex > > >> > > >> On Feb 9, 2015, at 1:37 PM, Hitesh Wadekar > > wrote: > > >> > > >> Hello Guys, > > >> > > >> I started to porting my code to ndnSIM2.0, however, I am facing a > weired > > >> issue, It would be really helpful for me if you guys pointed out some > > >> suggestion and the steps/tips to debug or identify the reason why it > so. > > >> > > >> I have my code working on old version of ndnSIM, we thought that since > > >> recently we launched ndnSIM2.0, we have started to port the code on > it. > > The > > >> issue is I am not able to receive the data packet on the other node. > > >> However, I am able to send interest packet on the all node. The code > > logic > > >> and everything is same as sample example given for Consume and > Producer > > >> App. Also, I have verified the route as well along with signature/ > > >> wireEncode. > > >> > > >> Since I am receiving 'Interest Packet" hence looks like FIB entries > > >> (routes) could not be a problem. > > >> > > >> Here is sample code that I am using, > > >> > > >> void ConsumerApp::SendDataPacket(shared_ptr interest) > { > > >> if (!m_active) > > >> return; > > >> NS_LOG_FUNCTION(this << interest); > > >> std::cout<< "ConsumerApp: Sending a Data Packet -> "<< > > >> interest->getName() << std::endl; > > >> > > >> Name dataName(interest->getName()); > > >> auto dPacket = make_shared(); > > >> dPacket->setName(dataName); > > >> dPacket->setFreshnessPeriod(ndn::time::milliseconds(3000)); > > >> dPacket->setContent(make_shared< > > >> ::ndn::Buffer>(m_virtualPayloadSize)); > > >> > > >> Signature signature; > > >> > > >> SignatureInfo signatureInfo(static_cast< > > >> ::ndn::tlv::SignatureTypeValue>(255)); > > >> > > >> if (m_keyLocator.size() > 0) { > > >> signatureInfo.setKeyLocator(m_keyLocator); > > >> } > > >> > > >> signature.setInfo(signatureInfo); > > >> signature.setValue(Block(&m_signature, sizeof(m_signature))); > > >> > > >> dPacket->setSignature(signature); > > >> dPacket->wireEncode(); > > >> std::cout << "\n ConsumerApp: Data packet- > " << dPacket->getName > > () > > >> << " is sending from face -> " << m_face << std::endl; > > >> > > >> m_transmittedDatas(dPacket, this, m_face); > > >> m_face->onReceiveData(*dPacket); > > >> std::cout << "\n"; > > >> } > > >> > > >> I am looking forward to hear from you back. > > >> > > >> Thank you. > > >> > > >> Regards, > > >> Hitesh Wadekar > > >> _______________________________________________ > > >> 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: < > > > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150211/09f42f97/attachment-0001.html > > > > > > > ------------------------------ > > > > Message: 2 > > Date: Wed, 11 Feb 2015 21:54:47 +0530 > > From: adithya srinivasan > > To: ndnsim at lists.cs.ucla.edu > > Subject: [ndnSIM] How to get number of exclusions made for an interest > > in the content store > > Message-ID: > > < > > CAHwx5S8TBh9mmKtrt0k-QMf50UiadGYwdS_xxgQAUDEWHmEK-Q at mail.gmail.com> > > Content-Type: text/plain; charset="utf-8" > > > > Hello > > My project involves a reactive mechanism for cache poisoning in ndn. And > I > > need some help in getting hold of the number of exclusions made for an > > interest and also as to how to add exclusions to an interest.Please help > me > > on this. > > > > Thank you > > Adithya S > > -------------- next part -------------- > > An HTML attachment was scrubbed... > > URL: < > > > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150211/1780e469/attachment-0001.html > > > > > > > ------------------------------ > > > > Message: 3 > > Date: Wed, 11 Feb 2015 08:40:01 -0800 > > From: Alex Afanasyev > > To: adithya srinivasan > > Cc: "ndnsim at lists.cs.ucla.edu" > > Subject: Re: [ndnSIM] How to get number of exclusions made for an > > interest in the content store > > Message-ID: <4D050F2E-4973-4E74-AC6C-C4F3132F1548 at gmail.com> > > Content-Type: text/plain; charset="us-ascii" > > > > Hi Adithya, > > > > Can you define more precisely "the number of exclusions"? > > > > As for attaching some information. For simulation purposes, you can > always > > use NS-3 packet tags to add/retrieve arbitrary information to any packet. > > > > --- > > Alex > > > > > On Feb 11, 2015, at 8:24 AM, adithya srinivasan > > wrote: > > > > > > Hello > > > My project involves a reactive mechanism for cache poisoning in ndn. > And > > I need some help in getting hold of the number of exclusions made for an > > interest and also as to how to add exclusions to an interest.Please help > me > > on this. > > > > > > Thank you > > > Adithya S > > -------------- next part -------------- > > A non-text attachment was scrubbed... > > Name: smime.p7s > > Type: application/pkcs7-signature > > Size: 2574 bytes > > Desc: not available > > URL: < > > > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150211/bca80159/attachment-0001.bin > > > > > > > ------------------------------ > > > > Message: 4 > > Date: Thu, 12 Feb 2015 00:55:05 +0000 > > From: narjes aloulou > > To: ndnsim at lists.cs.ucla.edu > > Subject: [ndnSIM] shortestpath poblem > > Message-ID: > > <1423702505.38066.YahooMailBasic at web172104.mail.ir2.yahoo.com> > > Content-Type: text/plain; charset=utf-8 > > > > Hi, > > > > Considering a large catalog (10? prefixes), > > "ndnGlobalRoutingHelper.CalculateRoutes ()" creates an infinite loop and > > crashes the system. My scenario consists of 300 nodes and I use ndnSIM > 1.0. > > > > Any solution to resolve this problem , please? > > Are there any way to use ShortestPath without using the > > ndnGlobalRoutingHelper ? > > > > > > Best Regards > > > > > > > > ------------------------------ > > > > Message: 5 > > Date: Wed, 11 Feb 2015 22:05:26 -0800 > > From: Alex Afanasyev > > To: narjes aloulou > > Cc: ndnsim at lists.cs.ucla.edu > > Subject: Re: [ndnSIM] shortestpath poblem > > Message-ID: <19021100-E590-4A99-82A3-1CD816B2113B at ucla.edu> > > Content-Type: text/plain; charset="utf-8" > > > > Double check that you have build NS-3/ndnSIM in optimized mode. > > Implementation of CalculateRoutes internally uses Dijkstra algorithm from > > Boost graph library (which is known to be extremely slow in debug mode). > > It should be a problem for this number of prefixes and nodes. > > > > If still fails, you can compute all routes and prefixes offline and > > install them directly using FibHelper. > > > > -- > > Alex > > > > > On Feb 11, 2015, at 4:55 PM, narjes aloulou > > wrote: > > > > > > Hi, > > > > > > Considering a large catalog (10? prefixes), > > "ndnGlobalRoutingHelper.CalculateRoutes ()" creates an infinite loop and > > crashes the system. My scenario consists of 300 nodes and I use ndnSIM > 1.0. > > > > > > Any solution to resolve this problem , please? > > > Are there any way to use ShortestPath without using the > > ndnGlobalRoutingHelper ? > > > > > > > > > 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: < > > > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150211/c6c16478/attachment.bin > > > > > > > ------------------------------ > > > > 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 27, Issue 10 > > ************************************** > > > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: < > http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20150212/29452453/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 27, Issue 11 > ************************************** > -------------- next part -------------- An HTML attachment was scrubbed... URL: From narges.mehran at gmail.com Fri Feb 13 09:03:11 2015 From: narges.mehran at gmail.com (Narges Mehran) Date: Fri, 13 Feb 2015 20:33:11 +0330 Subject: [ndnSIM] Getting PIT & CS Size simultaneously? Message-ID: Hello everyone, I have a question: why can't I see the PIT and CS Size simultaneously, It means I can see CS Size in normal way but when I want to see the PIT size, I have to change the prefix of producer! e.g., Names::Add ("consumer1", nodes.Get (0)); Names::Add ("router" , nodes.Get (1)); Names::Add ("producer1" , nodes.Get (2)); Ptr consumer1 = Names::Find ("consumer1"); Ptr producer1 = Names::Find ("producer1"); // Install CCNx stack on all nodes ndn::StackHelper ndnHelper; ndnHelper.SetDefaultRoutes (true); ndnHelper.SetPit ("ns3::ndn::pit::Persistent::AggregateStats"); ndnHelper.SetForwardingStrategy ("ns3::ndn::fw::Flooding"); ndnHelper.SetContentStore ("ns3::ndn::cs::Lru::AggregateStats", "MaxSize", "5"); //Size = 5! ndnHelper.InstallAll (); // Consumer1 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 consumerHelper.SetAttribute ("MaxSeq",StringValue("20")); consumerHelper.Install (consumer1); // first node // Producer1 ndn::AppHelper producerHelper ("ns3::ndn::Producer"); // Producer will reply to all requests starting with /prefix producerHelper.SetPrefix ("/prefix123"); //////////////////////////////why???\\\\\\\\\\\\\\ producerHelper.SetAttribute ("PayloadSize", StringValue("1024")); producerHelper.Install (producer1); . . . /////////////////output in abnormal way\\\\\\\\\\\\\\\\\\\\\\\\ PIT Size CS Size 30 0 \\\\\\\\\\\\\\\\\\///////////////////////////////////////// /////////////////output in normal way\\\\\\\\\\\\\\\\\\\\\\\\ -----> producerHelper.SetPrefix ("/prefix"); PIT Size CS Size 0 20 \\\\\\\\\\\\\\\\\//////////////////////////////////////// Besides, when the max size of CS is "5", why the output is "20"? I don' know where my problem is! Any help? Tnx in advance From spiros.mastorakis at gmail.com Fri Feb 13 09:14:25 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Fri, 13 Feb 2015 09:14:25 -0800 Subject: [ndnSIM] Getting PIT & CS Size simultaneously? In-Reply-To: References: Message-ID: <7D431AFB-7ABE-4CD0-9088-AE86CF2E4C34@gmail.com> Hello, when the number of data chunks included in a CS is growing, the router receives data packets for interests sent towards the data producers. That is to say, the pending interests included in the PIT are satisfied (thus deleted from the PIT), because the requested chunks of data were received. In this way, the CS size is growing, while the pending interests included in PIT are satisfied. On the other hand, when an interest is sent, but it is not satisfied by a data packet (i.e., a data packet is not received), the pending interest will remain in PIT until a time out occurs. In this way, the number of PIT entries will become bigger, while no data packets would be received. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 13, 2015, at 9:03 AM, Narges Mehran wrote: > > Hello everyone, > > I have a question: why can't I see the PIT and CS Size simultaneously, > It means I can see CS Size in normal way but when I want to see the > PIT size, I have to change the prefix of producer! e.g., > > Names::Add ("consumer1", nodes.Get (0)); > Names::Add ("router" , nodes.Get (1)); > Names::Add ("producer1" , nodes.Get (2)); > > Ptr consumer1 = Names::Find ("consumer1"); > Ptr producer1 = Names::Find ("producer1"); > > // Install CCNx stack on all nodes > ndn::StackHelper ndnHelper; > ndnHelper.SetDefaultRoutes (true); > ndnHelper.SetPit ("ns3::ndn::pit::Persistent::AggregateStats"); > ndnHelper.SetForwardingStrategy ("ns3::ndn::fw::Flooding"); > ndnHelper.SetContentStore ("ns3::ndn::cs::Lru::AggregateStats", > "MaxSize", "5"); //Size = 5! > ndnHelper.InstallAll (); > > > // Consumer1 > 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 > consumerHelper.SetAttribute ("MaxSeq",StringValue("20")); > consumerHelper.Install (consumer1); // first node > > // Producer1 > ndn::AppHelper producerHelper ("ns3::ndn::Producer"); > // Producer will reply to all requests starting with /prefix > producerHelper.SetPrefix ("/prefix123"); > //////////////////////////////why???\\\\\\\\\\\\\\ > producerHelper.SetAttribute ("PayloadSize", StringValue("1024")); > producerHelper.Install (producer1); > . > . > . > /////////////////output in abnormal way\\\\\\\\\\\\\\\\\\\\\\\\ > PIT Size CS Size > 30 0 > \\\\\\\\\\\\\\\\\\///////////////////////////////////////// > > /////////////////output in normal way\\\\\\\\\\\\\\\\\\\\\\\\ -----> > producerHelper.SetPrefix ("/prefix"); > PIT Size CS Size > 0 20 > \\\\\\\\\\\\\\\\\//////////////////////////////////////// > > Besides, when the max size of CS is "5", why the output is "20"? > > I don' know where my problem is! Any help? > > Tnx in advance > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From narges.mehran at gmail.com Fri Feb 13 09:40:48 2015 From: narges.mehran at gmail.com (Narges Mehran) Date: Fri, 13 Feb 2015 21:10:48 +0330 Subject: [ndnSIM] Getting PIT & CS Size simultaneously? In-Reply-To: <7D431AFB-7ABE-4CD0-9088-AE86CF2E4C34@gmail.com> References: <7D431AFB-7ABE-4CD0-9088-AE86CF2E4C34@gmail.com> Message-ID: Got it! Tnx a million Spyros.. On 2/13/15, Spyridon (Spyros) Mastorakis wrote: > Hello, > > when the number of data chunks included in a CS is growing, the router > receives data packets for interests sent towards the data producers. That is > to say, the pending interests included in the PIT are satisfied (thus > deleted from the PIT), because the requested chunks of data were received. > In this way, the CS size is growing, while the pending interests included in > PIT are satisfied. > > On the other hand, when an interest is sent, but it is not satisfied by a > data packet (i.e., a data packet is not received), the pending interest will > remain in PIT until a time out occurs. In this way, the number of PIT > entries will become bigger, while no data packets would be received. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > >> On Feb 13, 2015, at 9:03 AM, Narges Mehran >> wrote: >> >> Hello everyone, >> >> I have a question: why can't I see the PIT and CS Size simultaneously, >> It means I can see CS Size in normal way but when I want to see the >> PIT size, I have to change the prefix of producer! e.g., >> >> Names::Add ("consumer1", nodes.Get (0)); >> Names::Add ("router" , nodes.Get (1)); >> Names::Add ("producer1" , nodes.Get (2)); >> >> Ptr consumer1 = Names::Find ("consumer1"); >> Ptr producer1 = Names::Find ("producer1"); >> >> // Install CCNx stack on all nodes >> ndn::StackHelper ndnHelper; >> ndnHelper.SetDefaultRoutes (true); >> ndnHelper.SetPit ("ns3::ndn::pit::Persistent::AggregateStats"); >> ndnHelper.SetForwardingStrategy ("ns3::ndn::fw::Flooding"); >> ndnHelper.SetContentStore ("ns3::ndn::cs::Lru::AggregateStats", >> "MaxSize", "5"); //Size = 5! >> ndnHelper.InstallAll (); >> >> >> // Consumer1 >> 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 >> consumerHelper.SetAttribute ("MaxSeq",StringValue("20")); >> consumerHelper.Install (consumer1); // first node >> >> // Producer1 >> ndn::AppHelper producerHelper ("ns3::ndn::Producer"); >> // Producer will reply to all requests starting with /prefix >> producerHelper.SetPrefix ("/prefix123"); >> //////////////////////////////why???\\\\\\\\\\\\\\ >> producerHelper.SetAttribute ("PayloadSize", StringValue("1024")); >> producerHelper.Install (producer1); >> . >> . >> . >> /////////////////output in abnormal way\\\\\\\\\\\\\\\\\\\\\\\\ >> PIT Size CS Size >> 30 0 >> \\\\\\\\\\\\\\\\\\///////////////////////////////////////// >> >> /////////////////output in normal way\\\\\\\\\\\\\\\\\\\\\\\\ -----> >> producerHelper.SetPrefix ("/prefix"); >> PIT Size CS Size >> 0 20 >> \\\\\\\\\\\\\\\\\//////////////////////////////////////// >> >> Besides, when the max size of CS is "5", why the output is "20"? >> >> I don' know where my problem is! Any help? >> >> Tnx in advance >> _______________________________________________ >> ndnSIM mailing list >> ndnSIM at lists.cs.ucla.edu >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > From adith.ad at gmail.com Fri Feb 13 23:08:05 2015 From: adith.ad at gmail.com (adithya srinivasan) Date: Sat, 14 Feb 2015 12:38:05 +0530 Subject: [ndnSIM] How to get cache hit/miss ratio in a variable? Message-ID: Hello My project involves a basic level security algorithm against cache poisoning and pollution in NDN. For that I'm in need of the cache hit/miss ratio and also the exclusions made for a packet in the Content Store of a node. I've seen programs where the cache hit/miss ratio can be traced using tracers. But is there any way to obtain the cache hit/miss ratio of a node at any point of time inside a variable. I can use custom apps to create an instance for a node and is it possible to get the cache hit/miss ratio in that app? Thank you Adithya -------------- next part -------------- An HTML attachment was scrubbed... URL: From hishamfarahat at gmail.com Sat Feb 14 13:05:27 2015 From: hishamfarahat at gmail.com (Hisham Farahat) Date: Sat, 14 Feb 2015 16:05:27 -0500 Subject: [ndnSIM] Odd Hop Count with Nocache Message-ID: Hi, I get odd hop counts although i'm using noCache policy on all nodes. Any reasons for this behavior? Thanks -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Sat Feb 14 21:53:58 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sat, 14 Feb 2015 21:53:58 -0800 Subject: [ndnSIM] Odd Hop Count with Nocache In-Reply-To: References: Message-ID: <9C1B7726-455D-4438-AB1D-D9A4411F40DF@gmail.com> Hello, which version of the simulator are you using? -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 14, 2015, at 1:05 PM, Hisham Farahat wrote: > > Hi, > I get odd hop counts although i'm using noCache policy on all nodes. > Any reasons for this behavior? > Thanks > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From spiros.mastorakis at gmail.com Sat Feb 14 22:19:20 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sat, 14 Feb 2015 22:19:20 -0800 Subject: [ndnSIM] How to get cache hit/miss ratio in a variable? In-Reply-To: References: Message-ID: <698C7964-1762-404B-A019-2D577D8013ED@gmail.com> Hello, in order to get the cache hit/miss ratio in the desired format, you will need either to modify the implementation of the CS directly or the implementation of the cs tracer in order to return the desired parameter. For the other thing about the exclusions, Alex asked you to define more precisely the term ?number of exclusions?. I would like to ask the same thing in order to really understand your question and be able to answer it. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 13, 2015, at 11:08 PM, adithya srinivasan wrote: > > Hello > My project involves a basic level security algorithm against cache poisoning and pollution in NDN. For that I'm in need of the cache hit/miss ratio and also the exclusions made for a packet in the Content Store of a node. I've seen programs where the cache hit/miss ratio can be traced using tracers. But is there any way to obtain the cache hit/miss ratio of a node at any point of time inside a variable. I can use custom apps to create an instance for a node and is it possible to get the cache hit/miss ratio in that app? > > Thank you > Adithya > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From aloulounarjes at yahoo.fr Sun Feb 15 03:04:14 2015 From: aloulounarjes at yahoo.fr (narjes aloulou) Date: Sun, 15 Feb 2015 11:04:14 +0000 Subject: [ndnSIM] shortestpath poblem In-Reply-To: <19021100-E590-4A99-82A3-1CD816B2113B@ucla.edu> Message-ID: <1423998254.56111.YahooMailBasic@web172101.mail.ir2.yahoo.com> Hi, I test it with the optimised mode, but it did'nt work. Can I use the FibHelper from 1.0 version? Thanks for your Help Best Regards -------------------------------------------- En date de?: Jeu 12.2.15, Alex Afanasyev a ?crit?: Objet: Re: [ndnSIM] shortestpath poblem ?: "narjes aloulou" Cc: ndnsim at lists.cs.ucla.edu Date: Jeudi 12 f?vrier 2015, 7h05 Double check that you have build NS-3/ndnSIM in optimized mode.? Implementation of CalculateRoutes internally uses Dijkstra algorithm from Boost graph library (which is known to be extremely slow in debug mode).? It should be a problem for this number of prefixes and nodes. If still fails, you can compute all routes and prefixes offline and install them directly using FibHelper. -- Alex > On Feb 11, 2015, at 4:55 PM, narjes aloulou wrote: > > Hi, > > Considering a large catalog (10? prefixes), "ndnGlobalRoutingHelper.CalculateRoutes ()" creates an infinite loop and crashes the system. My scenario consists of 300 nodes and I use ndnSIM 1.0. > > Any solution to resolve this problem , please? > Are there any way to use ShortestPath without using the ndnGlobalRoutingHelper ? > > > Best Regards From spiros.mastorakis at gmail.com Sun Feb 15 10:23:19 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sun, 15 Feb 2015 10:23:19 -0800 Subject: [ndnSIM] How to get cache hit/miss ratio in a variable? In-Reply-To: References: <698C7964-1762-404B-A019-2D577D8013ED@gmail.com> Message-ID: <3C82FE39-CE05-4B7A-8434-14775F1A914F@gmail.com> Hello, please use the ?reply to all? option, so that your emails are visible to all the users of ndnSIM. Exclude is a selector and refers only to a name prefix. You can take a look here for further information: http://named-data.net/doc/ndn-tlv/interest.html#selectors However, the FreshnessPeriod field of a data packet may be useful to you: http://named-data.net/doc/ndn-tlv/data.html#freshnessperiod Remember that if you want to use this field, the consumer has to request fresh data explicitly. This can be done with the MustBeFresh selector: http://named-data.net/doc/ndn-tlv/interest.html#mustbefresh -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 15, 2015, at 4:44 AM, adithya srinivasan wrote: > > Hi > Thank you for your reply. Actually i thought initially that we can exclude a packet directly by specifying just the name of the packet. But i looked into the ndn-exclude files and found that exclusions can be made for the prefixes alone.Isn't that so? What I needed was the number of exclusions made by various users for a data packet in the Content Store of a router so that I can determine whether that packet is an important one or not.Suppose a user adds "/node0" as an exclusion in the interest , I want the number of exlcusions for "/node0" in the router's CS to be incremented by 1. I still don't know how to achieve this. Sorry I'm kind of a noob in this. Is there a way to get this? > > Thank you > Adithya > > On Sun, Feb 15, 2015 at 11:49 AM, Spyridon (Spyros) Mastorakis wrote: > Hello, > > in order to get the cache hit/miss ratio in the desired format, you will need either to modify the implementation of the CS directly or the implementation of the cs tracer in order to return the desired parameter. > > For the other thing about the exclusions, Alex asked you to define more precisely the term ?number of exclusions?. I would like to ask the same thing in order to really understand your question and be able to answer it. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 13, 2015, at 11:08 PM, adithya srinivasan wrote: > > > > Hello > > My project involves a basic level security algorithm against cache poisoning and pollution in NDN. For that I'm in need of the cache hit/miss ratio and also the exclusions made for a packet in the Content Store of a node. I've seen programs where the cache hit/miss ratio can be traced using tracers. But is there any way to obtain the cache hit/miss ratio of a node at any point of time inside a variable. I can use custom apps to create an instance for a node and is it possible to get the cache hit/miss ratio in that app? > > > > Thank you > > Adithya > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > From cghali at uci.edu Sun Feb 15 16:04:47 2015 From: cghali at uci.edu (Cesar Ghali) Date: Sun, 15 Feb 2015 16:04:47 -0800 Subject: [ndnSIM] Using openssl with ndnSIM In-Reply-To: <518F2782.60904@uci.edu> References: <2f3268d68c53b818ee3dc2b52d0469fb.squirrel@webmail.uci.edu> <518BDAC0.30601@uci.edu> <518CB100.2080902@uci.edu> <77BE09DA-4029-42E8-9B26-D33ECF60E99D@ucla.edu> <518F2782.60904@uci.edu> Message-ID: <131D50CD-CB44-4A95-9803-2C97A08ADEBE@uci.edu> Hi, I remember in ndnSIM 1.0 Alex created a branch (feature/with-openssl) to support using openssl with ndnSIM. I can?t see this branch in the latest ndnSIM version and I?m wondering if the feature was merged with the master branch. I didn?t try to use openssl libraries with ndnSIM yet, I just wanted to make sure that I can compile if I do. Thanks, Cesar -- PGP Key: http://www.cesarghali.info/contact.html PGP Key ID: 0x455D8052 > On May 11, 2013, at 10:24 PM, Cesar Ghali wrote: > > Thanks Alex, that was the problem. I switched the branch but forgot to configure again. > > Regards, > Cesar > > > On 05/10/2013 11:37 AM, Alex Afanasyev wrote: >> Hi Cesar, >> >> Did you reconfigure NS-3/ndnSIM after the merging? If not, then it could be the problem. >> >> Here is my output on Linux machine with compilation of the same .cc file: >> >> [1019/1763] cxx: src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc -> build/src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o >> 11:32:15 runner ['/usr/bin/g++', '-O0', '-ggdb', '-g3', '-Wall', '-Werror', '-Wno-error=deprecated-declarations', '-fstrict-aliasing', '-Wstrict-aliasing', '-pthread', '-fno-strict-aliasing', '-fwrapv', '-fstack-protector', '-fno-strict-aliasing', '-I.', '-I..', '-I/usr/include', '-I/usr/include/python2.7', '-I/usr/include/x86_64-linux-gnu/python2.7', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '-DHAVE_SYS_IOCTL_H=1', '-DHAVE_IF_NETS_H=1', '-DHAVE_PACKET_H=1', '-DHAVE_SSL=1', '-DHAVE_SQLITE3=1', '-DHAVE_IF_TUN_H=1', '-DNDEBUG', '-D_FORTIFY_SOURCE=2', '../src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc', '-c', '-o', 'src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o'] >> [1698/1763] cxxprogram: build/src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o -> build/src/ndnSIM/tools/ns3-dev-rocketfuel-maps-cch-to-annotaded-debug >> 11:32:23 runner ['/usr/bin/g++', '-pthread', '-Wl,-Bsymbolic-functions', '-Wl,-z,relro', 'src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o', '-o', '/home/cawka/ndnSIM/ns-3/build/src/ndnSIM/tools/ns3-dev-rocketfuel-maps-cch-to-annotaded-debug', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Wl,--no-as-needed', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L/usr/lib', '-L/usr/lib', '-lns3-dev-ndnSIM-debug', '-lns3-dev-visualizer-debug', '-lns3-dev-point-to-point-debug', '-lns3-dev-internet-debug', '-lns3-dev-mpi-debug', '-lns3-dev-bridge-debug', '-lns3-dev-wifi-debug', '-lns3-dev-propagation-debug', '-lns3-dev-mobility-debug', '-lns3-dev-topology-read-debug', '-lns3-dev-network-debug', '-lns3-dev-core-debug', '-lrt', '-lboost_graph-mt', '-lboost_system-mt', '-lboost_signals-mt', '-lboost_filesystem-mt', '-lssl', '-lcrypto', '-lpython2.7'] >> >> >> --- >> Alex >> >> On May 10, 2013, at 1:34 AM, Cesar Ghali > wrote: >> >>> Hi Alex, >>> >>> I forked the git://github.com/NDN-Routing/ndnSIM.git repo and I'm using the feature/with-openssl branch. When I build, I am still getting (undefined reference to `SHA1') which means that the crypto lib is not being linked. I also can't see it in the compile command: >>> >>> Build failed >>> -> task in 'rocketfuel-maps-cch-to-annotaded' failed (exit status 1): >>> {task 163377036: cxxprogram rocketfuel-maps-cch-to-annotaded.cc.1.o -> ns3-dev-rocketfuel-maps-cch-to-annotaded-optimized} >>> ['/usr/bin/g++', '-pthread', '-Wl,-Bsymbolic-functions', '-Wl,-z,relro', 'src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o', '-o', '/home/cesar/Documents/ndnSIM/ns-3/build/src/ndnSIM/tools/ns3-dev-rocketfuel-maps-cch-to-annotaded-optimized', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Wl,--no-as-needed', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L/usr/lib', '-L/usr/lib', '-lns3-dev-ndnSIM-optimized', '-lns3-dev-visualizer-optimized', '-lns3-dev-point-to-point-optimized', '-lns3-dev-internet-optimized', '-lns3-dev-mpi-optimized', '-lns3-dev-bridge-optimized', '-lns3-dev-wifi-optimized', '-lns3-dev-propagation-optimized', '-lns3-dev-mobility-optimized', '-lns3-dev-topology-read-optimized', '-lns3-dev-network-optimized', '-lns3-dev-core-optimized', '-lrt', '-lboost_graph-mt', '-lboost_system-mt', '-lboost_signals-mt', '-lboost_filesystem-mt', '-lpython2.7'] >>> >>> I checked the wscript file in the ndnSIM root folder (in feature/with-openssl branch) and it includes adding a link to crypto lib, but I don't know why it is not showing in the g++ command. >>> >>> Thanks for the help, >>> Cesar >>> >>> >>> On 05/09/2013 10:20 AM, Cesar Ghali wrote: >>>> Thanks Alex, >>>> >>>> I will try it and will let you know. >>>> >>>> Cesar >>>> >>>> >>>> On 05/08/2013 07:19 PM, Alex Afanasyev wrote: >>>>> Hi Cesar, >>>>> >>>>> In waf, adding external dependencies is a little bit simpler, though not as obvious. >>>>> I pushed a small change to ndnSIM repo to the feature/with-openssl branch, which added a dependency (necessary compiler and linker flags) for ndnSIM. >>>>> >>>>> Can you try this branch? >>>>> >>>>> --- >>>>> Alex >>>>> >>>>> >>>>> On May 8, 2013, at 7:03 PM, cghali at uci.edu wrote: >>>>> >>>>>> Hi all, >>>>>> >>>>>> I am trying to use openssl with ndnSIM. I spend the last several hours >>>>>> trying to link the crypto library with waf and I finally managed to do it. >>>>>> Apparently, adding the libray to LINKFLAGS_EXTRA did not help, although >>>>>> -lcrypto is added to the g++ build command (which can be verified using >>>>>> the verbose mode when running waf). The way how I fixed it is by adding >>>>>> this line at the beginning of the build function in wscript >>>>>> >>>>>> bld.env['LIB_PYEMBED'] = bld.env['LIB_PYEMBED'] + ["crypto"] >>>>>> >>>>>> For some reason the crypto library should be linked at the end, that's why >>>>>> I appended it to LIB_PYEMBED which is being evaluated at the end. Is there >>>>>> a clean way to do this? >>>>>> >>>>>> Thanks for the help, >>>>>> Cesar >> >> >> >> _______________________________________________ >> 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 alexander.afanasyev at ucla.edu Sun Feb 15 16:14:15 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Sun, 15 Feb 2015 16:14:15 -0800 Subject: [ndnSIM] Using openssl with ndnSIM In-Reply-To: <131D50CD-CB44-4A95-9803-2C97A08ADEBE@uci.edu> References: <2f3268d68c53b818ee3dc2b52d0469fb.squirrel@webmail.uci.edu> <518BDAC0.30601@uci.edu> <518CB100.2080902@uci.edu> <77BE09DA-4029-42E8-9B26-D33ECF60E99D@ucla.edu> <518F2782.60904@uci.edu> <131D50CD-CB44-4A95-9803-2C97A08ADEBE@uci.edu> Message-ID: <5F08FCC3-CC71-4DA6-A5CA-4DE21354A684@ucla.edu> Hi Cesar, Yes. There is no longer openssl branch or the need for such branch. In the new version, you can make full use of CryptoPP library. Also, many of the security-related tasks can be done using ndn-cxx library directly, which also uses cryptopp library internally. ? Alex > On Feb 15, 2015, at 4:04 PM, Cesar Ghali wrote: > > Hi, > > I remember in ndnSIM 1.0 Alex created a branch (feature/with-openssl) to support using openssl with ndnSIM. I can?t see this branch in the latest ndnSIM version and I?m wondering if the feature was merged with the master branch. I didn?t try to use openssl libraries with ndnSIM yet, I just wanted to make sure that I can compile if I do. > > Thanks, > Cesar > > -- > PGP Key: http://www.cesarghali.info/contact.html > PGP Key ID: 0x455D8052 > >> On May 11, 2013, at 10:24 PM, Cesar Ghali > wrote: >> >> Thanks Alex, that was the problem. I switched the branch but forgot to configure again. >> >> Regards, >> Cesar >> >> >> On 05/10/2013 11:37 AM, Alex Afanasyev wrote: >>> Hi Cesar, >>> >>> Did you reconfigure NS-3/ndnSIM after the merging? If not, then it could be the problem. >>> >>> Here is my output on Linux machine with compilation of the same .cc file: >>> >>> [1019/1763] cxx: src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc -> build/src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc .1.o >>> 11:32:15 runner ['/usr/bin/g++', '-O0', '-ggdb', '-g3', '-Wall', '-Werror', '-Wno-error=deprecated-declarations', '-fstrict-aliasing', '-Wstrict-aliasing', '-pthread', '-fno-strict-aliasing', '-fwrapv', '-fstack-protector', '-fno-strict-aliasing', '-I.', '-I..', '-I/usr/include', '-I/usr/include/python2.7', '-I/usr/include/x86_64-linux-gnu/python2.7', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '-DHAVE_SYS_IOCTL_H=1', '-DHAVE_IF_NETS_H=1', '-DHAVE_PACKET_H=1', '-DHAVE_SSL=1', '-DHAVE_SQLITE3=1', '-DHAVE_IF_TUN_H=1', '-DNDEBUG', '-D_FORTIFY_SOURCE=2', '../src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc ', '-c', '-o', 'src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc .1.o'] >>> [1698/1763] cxxprogram: build/src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc .1.o -> build/src/ndnSIM/tools/ns3-dev-rocketfuel-maps-cch-to-annotaded-debug >>> 11:32:23 runner ['/usr/bin/g++', '-pthread', '-Wl,-Bsymbolic-functions', '-Wl,-z,relro', 'src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc .1.o', '-o', '/home/cawka/ndnSIM/ns-3/build/src/ndnSIM/tools/ns3-dev-rocketfuel-maps-cch-to-annotaded-debug', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Wl,--no-as-needed', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L/usr/lib', '-L/usr/lib', '-lns3-dev-ndnSIM-debug', '-lns3-dev-visualizer-debug', '-lns3-dev-point-to-point-debug', '-lns3-dev-internet-debug', '-lns3-dev-mpi-debug', '-lns3-dev-bridge-debug', '-lns3-dev-wifi-debug', '-lns3-dev-propagation-debug', '-lns3-dev-mobility-debug', '-lns3-dev-topology-read-debug', '-lns3-dev-network-debug', '-lns3-dev-core-debug', '-lrt', '-lboost_graph-mt', '-lboost_system-mt', '-lboost_signals-mt', '-lboost_filesystem-mt', '-lssl', '-lcrypto', '-lpython2.7'] >>> >>> >>> --- >>> Alex >>> >>> On May 10, 2013, at 1:34 AM, Cesar Ghali > wrote: >>> >>>> Hi Alex, >>>> >>>> I forked the git://github.com/NDN-Routing/ndnSIM.git repo and I'm using the feature/with-openssl branch. When I build, I am still getting (undefined reference to `SHA1') which means that the crypto lib is not being linked. I also can't see it in the compile command: >>>> >>>> Build failed >>>> -> task in 'rocketfuel-maps-cch-to-annotaded' failed (exit status 1): >>>> {task 163377036: cxxprogram rocketfuel-maps-cch-to-annotaded.cc .1.o -> ns3-dev-rocketfuel-maps-cch-to-annotaded-optimized} >>>> ['/usr/bin/g++', '-pthread', '-Wl,-Bsymbolic-functions', '-Wl,-z,relro', 'src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc .1.o', '-o', '/home/cesar/Documents/ndnSIM/ns-3/build/src/ndnSIM/tools/ns3-dev-rocketfuel-maps-cch-to-annotaded-optimized', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Wl,--no-as-needed', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L/usr/lib', '-L/usr/lib', '-lns3-dev-ndnSIM-optimized', '-lns3-dev-visualizer-optimized', '-lns3-dev-point-to-point-optimized', '-lns3-dev-internet-optimized', '-lns3-dev-mpi-optimized', '-lns3-dev-bridge-optimized', '-lns3-dev-wifi-optimized', '-lns3-dev-propagation-optimized', '-lns3-dev-mobility-optimized', '-lns3-dev-topology-read-optimized', '-lns3-dev-network-optimized', '-lns3-dev-core-optimized', '-lrt', '-lboost_graph-mt', '-lboost_system-mt', '-lboost_signals-mt', '-lboost_filesystem-mt', '-lpython2.7'] >>>> >>>> I checked the wscript file in the ndnSIM root folder (in feature/with-openssl branch) and it includes adding a link to crypto lib, but I don't know why it is not showing in the g++ command. >>>> >>>> Thanks for the help, >>>> Cesar >>>> >>>> >>>> On 05/09/2013 10:20 AM, Cesar Ghali wrote: >>>>> Thanks Alex, >>>>> >>>>> I will try it and will let you know. >>>>> >>>>> Cesar >>>>> >>>>> >>>>> On 05/08/2013 07:19 PM, Alex Afanasyev wrote: >>>>>> Hi Cesar, >>>>>> >>>>>> In waf, adding external dependencies is a little bit simpler, though not as obvious. >>>>>> I pushed a small change to ndnSIM repo to the feature/with-openssl branch, which added a dependency (necessary compiler and linker flags) for ndnSIM. >>>>>> >>>>>> Can you try this branch? >>>>>> >>>>>> --- >>>>>> Alex >>>>>> >>>>>> >>>>>> On May 8, 2013, at 7:03 PM, cghali at uci.edu wrote: >>>>>> >>>>>>> Hi all, >>>>>>> >>>>>>> I am trying to use openssl with ndnSIM. I spend the last several hours >>>>>>> trying to link the crypto library with waf and I finally managed to do it. >>>>>>> Apparently, adding the libray to LINKFLAGS_EXTRA did not help, although >>>>>>> -lcrypto is added to the g++ build command (which can be verified using >>>>>>> the verbose mode when running waf). The way how I fixed it is by adding >>>>>>> this line at the beginning of the build function in wscript >>>>>>> >>>>>>> bld.env['LIB_PYEMBED'] = bld.env['LIB_PYEMBED'] + ["crypto"] >>>>>>> >>>>>>> For some reason the crypto library should be linked at the end, that's why >>>>>>> I appended it to LIB_PYEMBED which is being evaluated at the end. Is there >>>>>>> a clean way to do this? >>>>>>> >>>>>>> Thanks for the help, >>>>>>> Cesar >>> >>> >>> >>> _______________________________________________ >>> 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: -------------- 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 cghali at uci.edu Sun Feb 15 16:17:00 2015 From: cghali at uci.edu (Cesar Ghali) Date: Sun, 15 Feb 2015 16:17:00 -0800 Subject: [ndnSIM] Using openssl with ndnSIM In-Reply-To: <5F08FCC3-CC71-4DA6-A5CA-4DE21354A684@ucla.edu> References: <2f3268d68c53b818ee3dc2b52d0469fb.squirrel@webmail.uci.edu> <518BDAC0.30601@uci.edu> <518CB100.2080902@uci.edu> <77BE09DA-4029-42E8-9B26-D33ECF60E99D@ucla.edu> <518F2782.60904@uci.edu> <131D50CD-CB44-4A95-9803-2C97A08ADEBE@uci.edu> <5F08FCC3-CC71-4DA6-A5CA-4DE21354A684@ucla.edu> Message-ID: Perfect. Thanks. Cesar > On Feb 15, 2015, at 16:14, Alex Afanasyev wrote: > > Hi Cesar, > > Yes. There is no longer openssl branch or the need for such branch. In the new version, you can make full use of CryptoPP library. Also, many of the security-related tasks can be done using ndn-cxx library directly, which also uses cryptopp library internally. > > ? > Alex > >> On Feb 15, 2015, at 4:04 PM, Cesar Ghali wrote: >> >> Hi, >> >> I remember in ndnSIM 1.0 Alex created a branch (feature/with-openssl) to support using openssl with ndnSIM. I can?t see this branch in the latest ndnSIM version and I?m wondering if the feature was merged with the master branch. I didn?t try to use openssl libraries with ndnSIM yet, I just wanted to make sure that I can compile if I do. >> >> Thanks, >> Cesar >> >> -- >> PGP Key: http://www.cesarghali.info/contact.html >> PGP Key ID: 0x455D8052 >> >>> On May 11, 2013, at 10:24 PM, Cesar Ghali wrote: >>> >>> Thanks Alex, that was the problem. I switched the branch but forgot to configure again. >>> >>> Regards, >>> Cesar >>> >>> >>>> On 05/10/2013 11:37 AM, Alex Afanasyev wrote: >>>> Hi Cesar, >>>> >>>> Did you reconfigure NS-3/ndnSIM after the merging? If not, then it could be the problem. >>>> >>>> Here is my output on Linux machine with compilation of the same .cc file: >>>> >>>> [1019/1763] cxx: src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc -> build/src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o >>>> 11:32:15 runner ['/usr/bin/g++', '-O0', '-ggdb', '-g3', '-Wall', '-Werror', '-Wno-error=deprecated-declarations', '-fstrict-aliasing', '-Wstrict-aliasing', '-pthread', '-fno-strict-aliasing', '-fwrapv', '-fstack-protector', '-fno-strict-aliasing', '-I.', '-I..', '-I/usr/include', '-I/usr/include/python2.7', '-I/usr/include/x86_64-linux-gnu/python2.7', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '-DHAVE_SYS_IOCTL_H=1', '-DHAVE_IF_NETS_H=1', '-DHAVE_PACKET_H=1', '-DHAVE_SSL=1', '-DHAVE_SQLITE3=1', '-DHAVE_IF_TUN_H=1', '-DNDEBUG', '-D_FORTIFY_SOURCE=2', '../src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc', '-c', '-o', 'src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o'] >>>> [1698/1763] cxxprogram: build/src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o -> build/src/ndnSIM/tools/ns3-dev-rocketfuel-maps-cch-to-annotaded-debug >>>> 11:32:23 runner ['/usr/bin/g++', '-pthread', '-Wl,-Bsymbolic-functions', '-Wl,-z,relro', 'src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o', '-o', '/home/cawka/ndnSIM/ns-3/build/src/ndnSIM/tools/ns3-dev-rocketfuel-maps-cch-to-annotaded-debug', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Wl,--no-as-needed', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L/usr/lib', '-L/usr/lib', '-lns3-dev-ndnSIM-debug', '-lns3-dev-visualizer-debug', '-lns3-dev-point-to-point-debug', '-lns3-dev-internet-debug', '-lns3-dev-mpi-debug', '-lns3-dev-bridge-debug', '-lns3-dev-wifi-debug', '-lns3-dev-propagation-debug', '-lns3-dev-mobility-debug', '-lns3-dev-topology-read-debug', '-lns3-dev-network-debug', '-lns3-dev-core-debug', '-lrt', '-lboost_graph-mt', '-lboost_system-mt', '-lboost_signals-mt', '-lboost_filesystem-mt', '-lssl', '-lcrypto', '-lpython2.7'] >>>> >>>> >>>> --- >>>> Alex >>>> >>>>> On May 10, 2013, at 1:34 AM, Cesar Ghali wrote: >>>>> >>>>> Hi Alex, >>>>> >>>>> I forked the git://github.com/NDN-Routing/ndnSIM.git repo and I'm using the feature/with-openssl branch. When I build, I am still getting (undefined reference to `SHA1') which means that the crypto lib is not being linked. I also can't see it in the compile command: >>>>> >>>>> Build failed >>>>> -> task in 'rocketfuel-maps-cch-to-annotaded' failed (exit status 1): >>>>> {task 163377036: cxxprogram rocketfuel-maps-cch-to-annotaded.cc.1.o -> ns3-dev-rocketfuel-maps-cch-to-annotaded-optimized} >>>>> ['/usr/bin/g++', '-pthread', '-Wl,-Bsymbolic-functions', '-Wl,-z,relro', 'src/ndnSIM/tools/rocketfuel-maps-cch-to-annotaded.cc.1.o', '-o', '/home/cesar/Documents/ndnSIM/ns-3/build/src/ndnSIM/tools/ns3-dev-rocketfuel-maps-cch-to-annotaded-optimized', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Wl,--no-as-needed', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L.', '-L/usr/lib', '-L/usr/lib', '-lns3-dev-ndnSIM-optimized', '-lns3-dev-visualizer-optimized', '-lns3-dev-point-to-point-optimized', '-lns3-dev-internet-optimized', '-lns3-dev-mpi-optimized', '-lns3-dev-bridge-optimized', '-lns3-dev-wifi-optimized', '-lns3-dev-propagation-optimized', '-lns3-dev-mobility-optimized', '-lns3-dev-topology-read-optimized', '-lns3-dev-network-optimized', '-lns3-dev-core-optimized', '-lrt', '-lboost_graph-mt', '-lboost_system-mt', '-lboost_signals-mt', '-lboost_filesystem-mt', '-lpython2.7'] >>>>> >>>>> I checked the wscript file in the ndnSIM root folder (in feature/with-openssl branch) and it includes adding a link to crypto lib, but I don't know why it is not showing in the g++ command. >>>>> >>>>> Thanks for the help, >>>>> Cesar >>>>> >>>>> >>>>>> On 05/09/2013 10:20 AM, Cesar Ghali wrote: >>>>>> Thanks Alex, >>>>>> >>>>>> I will try it and will let you know. >>>>>> >>>>>> Cesar >>>>>> >>>>>> >>>>>>> On 05/08/2013 07:19 PM, Alex Afanasyev wrote: >>>>>>> Hi Cesar, >>>>>>> >>>>>>> In waf, adding external dependencies is a little bit simpler, though not as obvious. >>>>>>> I pushed a small change to ndnSIM repo to the feature/with-openssl branch, which added a dependency (necessary compiler and linker flags) for ndnSIM. >>>>>>> >>>>>>> Can you try this branch? >>>>>>> >>>>>>> --- >>>>>>> Alex >>>>>>> >>>>>>> >>>>>>> On May 8, 2013, at 7:03 PM, cghali at uci.edu wrote: >>>>>>> >>>>>>>> Hi all, >>>>>>>> >>>>>>>> I am trying to use openssl with ndnSIM. I spend the last several hours >>>>>>>> trying to link the crypto library with waf and I finally managed to do it. >>>>>>>> Apparently, adding the libray to LINKFLAGS_EXTRA did not help, although >>>>>>>> -lcrypto is added to the g++ build command (which can be verified using >>>>>>>> the verbose mode when running waf). The way how I fixed it is by adding >>>>>>>> this line at the beginning of the build function in wscript >>>>>>>> >>>>>>>> bld.env['LIB_PYEMBED'] = bld.env['LIB_PYEMBED'] + ["crypto"] >>>>>>>> >>>>>>>> For some reason the crypto library should be linked at the end, that's why >>>>>>>> I appended it to LIB_PYEMBED which is being evaluated at the end. Is there >>>>>>>> a clean way to do this? >>>>>>>> >>>>>>>> Thanks for the help, >>>>>>>> Cesar >>>> >>>> >>>> >>>> _______________________________________________ >>>> 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 spiros.mastorakis at gmail.com Sun Feb 15 23:40:58 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sun, 15 Feb 2015 23:40:58 -0800 Subject: [ndnSIM] shortestpath poblem In-Reply-To: <1423998254.56111.YahooMailBasic@web172101.mail.ir2.yahoo.com> References: <1423998254.56111.YahooMailBasic@web172101.mail.ir2.yahoo.com> Message-ID: <1B24D225-66A3-4A9A-AE5B-C4C650BEFF6C@gmail.com> Hello, the FibHelper is not available in ndnSIM 1.0. I would suggest that you update to the new version if you want to use it. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 15, 2015, at 3:04 AM, narjes aloulou wrote: > > Hi, > > I test it with the optimised mode, but it did'nt work. Can I use the FibHelper from 1.0 version? > > Thanks for your Help > > Best Regards > > -------------------------------------------- > En date de : Jeu 12.2.15, Alex Afanasyev a ?crit : > > Objet: Re: [ndnSIM] shortestpath poblem > ?: "narjes aloulou" > Cc: ndnsim at lists.cs.ucla.edu > Date: Jeudi 12 f?vrier 2015, 7h05 > > Double check that you > have build NS-3/ndnSIM in optimized mode. Implementation > of CalculateRoutes internally uses Dijkstra algorithm from > Boost graph library (which is known to be extremely slow in > debug mode). It should be a problem for this number of > prefixes and nodes. > > If > still fails, you can compute all routes and prefixes offline > and install them directly using FibHelper. > > -- > Alex > >> On Feb 11, 2015, at 4:55 PM, narjes > aloulou > wrote: >> >> Hi, >> >> Considering a large > catalog (10? prefixes), > "ndnGlobalRoutingHelper.CalculateRoutes ()" > creates an infinite loop and crashes the system. My scenario > consists of 300 nodes and I use ndnSIM 1.0. >> >> Any solution to > resolve this problem , please? >> Are > there any way to use ShortestPath without using the > ndnGlobalRoutingHelper ? >> >> >> Best Regards > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From spiros.mastorakis at gmail.com Sun Feb 15 23:53:06 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sun, 15 Feb 2015 23:53:06 -0800 Subject: [ndnSIM] Odd Hop Count with Nocache In-Reply-To: References: <9C1B7726-455D-4438-AB1D-D9A4411F40DF@gmail.com> Message-ID: Hello, please use the ?reply to all? option, so that your emails are visible to all the users. I am not able to know in advance what happens during your simulation scenario. I would need to take a look at a reproducible example. In any case, I would suggest that you update to ndnSIM 2.0, as this is the version that we are continuously developing. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 14, 2015, at 10:19 PM, Hisham Farahat wrote: > > Ndnsim 1.0 > > On Feb 15, 2015 12:54 AM, "Spyridon (Spyros) Mastorakis" wrote: > Hello, > > which version of the simulator are you using? > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 14, 2015, at 1:05 PM, Hisham Farahat wrote: > > > > Hi, > > I get odd hop counts although i'm using noCache policy on all nodes. > > Any reasons for this behavior? > > Thanks > > _______________________________________________ > > ndnSIM mailing list > > ndnSIM at lists.cs.ucla.edu > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > From wonjunchoi001 at gmail.com Mon Feb 16 00:07:42 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Mon, 16 Feb 2015 17:07:42 +0900 Subject: [ndnSIM] No output from Rscript. Message-ID: Hello. I created rate-trace.txt like http://pastebin.com/NetBpe7d. I used the example from ndnSIM2.0 web. but there is no output. I ran the script in terminal. Best regards. Wonjun, Choi # Copyright (c) 2012,2015 Alexander Afanasyev # install.packages('ggplot2')library(ggplot2)# install.packages('scales')library(scales) # install.packages('doBy')library(doBy) ########################## Rate trace processing ########################## data = read.table("rate-trace.txt", header=T) data$Node = factor(data$Node) data$FaceId <- factor(data$FaceId) data$Kilobits <- data$Kilobytes * 8 data$Type = factor(data$Type) # exlude irrelevant types data = subset(data, Type %in% c("InInterests", "OutInterests", "InData", "OutData")) # combine stats from all faces data.combined = summaryBy(. ~ Time + Node + Type, data=data, FUN=sum) data.root = subset (data.combined, Node == "root") data.leaves = subset(data.combined, Node %in% c("leaf-1", "leaf-2", "leaf-3", "leaf-4")) # graph rates on all nodes in Kilobits g.all <- ggplot(data.combined) + geom_point(aes (x=Time, y=Kilobits.sum, color=Type), size=1) + ylab("Rate [Kbits/s]") + facet_wrap(~ Node) print(g.all) # graph rates on the root nodes in Packets g.root <- ggplot(data.root) + geom_point(aes (x=Time, y=Kilobits.sum, color=Type), size=2) + geom_line(aes (x=Time, y=Kilobits.sum, color=Type), size=0.5) + ylab("Rate [Kbits/s]") print(g.root) png("src/ndnSIM/docs/source/_static/root-rates.png", width=500, height=250)print(g.root) retval <- dev.off() -------------- next part -------------- An HTML attachment was scrubbed... URL: From kanin at inl.ics.keio.ac.jp Mon Feb 16 01:36:54 2015 From: kanin at inl.ics.keio.ac.jp (Kanin Assantachai) Date: Mon, 16 Feb 2015 18:36:54 +0900 Subject: [ndnSIM] Questions about cache management scheme where nodes cooperate using header messages Message-ID: <54E1BA36.5080608@inl.ics.keio.ac.jp> Hello all, My name is Kanin from Thailand, but I am currently studying in Keio University in Japan. This is my first time joining this mailing list and sending a message to ask for your kind help. Currently, I plan to implement a cache management scheme where part of it requires cooperation of nodes using header messages. Some selections of nodes will be programmed to broadcast certain amount of the contents stored in their cache storage to the nearest neighbors. I have already tried to study how different files (or parts) of the simulators (version 1.0) interact with each other, and I have tried to execute many of the provided examples in the tutorials as well. However, I have difficulties understanding how to get started on the actual implementations. I am not sure which parts I need to make changes to implement this idea. Is there any resource or tutorials already provided to help me get started on this? I have read through a lot of old archived emails, but I still cannot find the answers I am looking for. Thank you for your clarifications in advance. Kanin From kanin at inl.ics.keio.ac.jp Mon Feb 16 01:50:21 2015 From: kanin at inl.ics.keio.ac.jp (Kanin Assantachai) Date: Mon, 16 Feb 2015 18:50:21 +0900 Subject: [ndnSIM] Is the version 2.0 really stable? Is it encouraged to upgrade to version 2.0? Message-ID: <54E1BD5D.6050709@inl.ics.keio.ac.jp> Hello all, Originally I wanted to include this question into the email I just sent a moment ago, but I realized that this question might benefit other people too. So I have decided to make a new thread for this question. After I have read through archived emails from January 2015 onwards, I saw a lot of emails reporting problems of compiling the new version of simulator. So I would like to ask if the current new version is stable already? Since my project is still at the beginning stage, it is fine for me to uninstall the previous version and install the new version from scratch. However for other people who have been working with the old version for a long time, they might have problems performing fresh install (to avoid errors from version mismatch between ndnSIM and ns-3, etc). Is it encouraged to upgrade to new version as soon as possible, or is it better to wait for this new version to be even more stable first? Thank you for your responses in advance. Kanin From poschdaniel2 at gmail.com Mon Feb 16 05:30:13 2015 From: poschdaniel2 at gmail.com (Daniel Posch) Date: Mon, 16 Feb 2015 14:30:13 +0100 Subject: [ndnSIM] Implementing Interest Limits in ndnSIM2.0 Message-ID: <54E1F0E5.2040206@gmail.com> Dear all, I am trying to re-implement a feature called "Interest Limits", which was available in ndnSIM1.0. Its basically a Token Bucket Filter that can be installed on Faces to limited the rate of outgoing Interests. However, I can't find a way to retrieve the link capacities of a nfd::Face. Am I correct that this information is not provided by the class nfd::Face and therefore an implementation of "Interest Limits" is not possible within ndnSIM2.0? Best regards, Daniel From adith.ad at gmail.com Mon Feb 16 07:17:26 2015 From: adith.ad at gmail.com (adithya srinivasan) Date: Mon, 16 Feb 2015 20:47:26 +0530 Subject: [ndnSIM] How to get cache hit/miss ratio in a variable? In-Reply-To: <3C82FE39-CE05-4B7A-8434-14775F1A914F@gmail.com> References: <698C7964-1762-404B-A019-2D577D8013ED@gmail.com> <3C82FE39-CE05-4B7A-8434-14775F1A914F@gmail.com> Message-ID: Hello Thank you for your reply. However i wasn't able to find a way to specify the minsuffixcomponents and maxsuffixcomponents. And also , can you provide me with an example of an application that uses exclude filters where the packets are excluded while the program is running.A very simple example will suffice. What I tried so far is , create a prefix , say , "/node8" and add origins to that prefix to a node8 in the network. And then i added "user" as an exclude filter using the excludeOne() function. The onInterest() of node8 appends "user" to the dataname of the packet.So the name of the packet from producer becomes "/node8/user". Now as far as my understanding goes , this packet must be ignored since there is a match for the exclude filter. But the packet is being forwarded to the consumer.Can you point out where I am going wrong? P.S I also tried changing the source prefix as "/node8/user" and the consumer's interest prefix as "/node8" without any exclude filters. However there was no packet being transmitted. By longest prefix match , there should be a transmission of data packet from node 8 , shouldn't it be? Thank you Adithya On Sun, Feb 15, 2015 at 11:53 PM, Spyridon (Spyros) Mastorakis < spiros.mastorakis at gmail.com> wrote: > Hello, > > please use the ?reply to all? option, so that your emails are visible to > all the users of ndnSIM. > > Exclude is a selector and refers only to a name prefix. You can take a > look here for further information: > > http://named-data.net/doc/ndn-tlv/interest.html#selectors > > However, the FreshnessPeriod field of a data packet may be useful to you: > > http://named-data.net/doc/ndn-tlv/data.html#freshnessperiod > > Remember that if you want to use this field, the consumer has to request > fresh data explicitly. This can be done with the MustBeFresh selector: > > http://named-data.net/doc/ndn-tlv/interest.html#mustbefresh > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 15, 2015, at 4:44 AM, adithya srinivasan > wrote: > > > > Hi > > Thank you for your reply. Actually i thought initially that we can > exclude a packet directly by specifying just the name of the packet. But i > looked into the ndn-exclude files and found that exclusions can be made for > the prefixes alone.Isn't that so? What I needed was the number of > exclusions made by various users for a data packet in the Content Store of > a router so that I can determine whether that packet is an important one or > not.Suppose a user adds "/node0" as an exclusion in the interest , I want > the number of exlcusions for "/node0" in the router's CS to be incremented > by 1. I still don't know how to achieve this. Sorry I'm kind of a noob in > this. Is there a way to get this? > > > > Thank you > > Adithya > > > > On Sun, Feb 15, 2015 at 11:49 AM, Spyridon (Spyros) Mastorakis < > spiros.mastorakis at gmail.com> wrote: > > Hello, > > > > in order to get the cache hit/miss ratio in the desired format, you will > need either to modify the implementation of the CS directly or the > implementation of the cs tracer in order to return the desired parameter. > > > > For the other thing about the exclusions, Alex asked you to define more > precisely the term ?number of exclusions?. I would like to ask the same > thing in order to really understand your question and be able to answer it. > > > > -- > > Spyridon (Spyros) Mastorakis > > Personal Website: http://cs.ucla.edu/~mastorakis/ > > Internet Research Laboratory > > PhD Computer Science > > UCLA > > > > > > > > > > > On Feb 13, 2015, at 11:08 PM, adithya srinivasan > wrote: > > > > > > Hello > > > My project involves a basic level security algorithm against cache > poisoning and pollution in NDN. For that I'm in need of the cache hit/miss > ratio and also the exclusions made for a packet in the Content Store of a > node. I've seen programs where the cache hit/miss ratio can be traced using > tracers. But is there any way to obtain the cache hit/miss ratio of a node > at any point of time inside a variable. I can use custom apps to create an > instance for a node and is it possible to get the cache hit/miss ratio in > that app? > > > > > > Thank you > > > Adithya > > > _______________________________________________ > > > 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 spiros.mastorakis at gmail.com Mon Feb 16 10:50:38 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Mon, 16 Feb 2015 10:50:38 -0800 Subject: [ndnSIM] Is the version 2.0 really stable? Is it encouraged to upgrade to version 2.0? In-Reply-To: <54E1BD5D.6050709@inl.ics.keio.ac.jp> References: <54E1BD5D.6050709@inl.ics.keio.ac.jp> Message-ID: <8F7D9F06-932D-4405-BFED-009DF8949A29@gmail.com> Hello, the new version of the simulator is fully stable and you are encouraged to install it, because it provides the features of all the recent advancements of NDN research. All issues have been resolved a long time ago as you can see here: http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-January/001519.html -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 16, 2015, at 1:50 AM, Kanin Assantachai wrote: > > Hello all, > > Originally I wanted to include this question into the email I just sent a moment ago, but I realized that this question might benefit other people too. So I have decided to make a new thread for this question. > > After I have read through archived emails from January 2015 onwards, I saw a lot of emails reporting problems of compiling the new version of simulator. So I would like to ask if the current new version is stable already? Since my project is still at the beginning stage, it is fine for me to uninstall the previous version and install the new version from scratch. However for other people who have been working with the old version for a long time, they might have problems performing fresh install (to avoid errors from version mismatch between ndnSIM and ns-3, etc). Is it encouraged to upgrade to new version as soon as possible, or is it better to wait for this new version to be even more stable first? Thank you for your responses in advance. > > Kanin > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From spiros.mastorakis at gmail.com Mon Feb 16 11:05:36 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Mon, 16 Feb 2015 11:05:36 -0800 Subject: [ndnSIM] Questions about cache management scheme where nodes cooperate using header messages In-Reply-To: <54E1BA36.5080608@inl.ics.keio.ac.jp> References: <54E1BA36.5080608@inl.ics.keio.ac.jp> Message-ID: Hello, First of all, as I stated to my previous email, you are encouraged to use ndnSIM 2.0, as this is the version that is undergoing continuous development and support. I am not sure that I fully understand your approach. However, it seems to me that probably you do not need to modify anything internal of the simulator, but just code a proper simulation scenario. Probably you will need a way to access the entries of the Content Store. ndnSIM 2.0 offers two different CS structures to the user. The user can choose one of them. If you are planning to use the NFD? CS you can take a look at the documentation here: http://ndnsim.net/2.0/doxygen/classnfd_1_1Cs.html If you are planning to use the old ndnSIM 1.0 CS then you may take a look here: http://ndnsim.net/2.0/doxygen/classns3_1_1ndn_1_1ContentStore.html -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 16, 2015, at 1:36 AM, Kanin Assantachai wrote: > > Hello all, > > My name is Kanin from Thailand, but I am currently studying in Keio University in Japan. This is my first time joining this mailing list and sending a message to ask for your kind help. > > Currently, I plan to implement a cache management scheme where part of it requires cooperation of nodes using header messages. Some selections of nodes will be programmed to broadcast certain amount of the contents stored in their cache storage to the nearest neighbors. I have already tried to study how different files (or parts) of the simulators (version 1.0) interact with each other, and I have tried to execute many of the provided examples in the tutorials as well. However, I have difficulties understanding how to get started on the actual implementations. I am not sure which parts I need to make changes to implement this idea. Is there any resource or tutorials already provided to help me get started on this? I have read through a lot of old archived emails, but I still cannot find the answers I am looking for. > > Thank you for your clarifications in advance. > > Kanin From spiros.mastorakis at gmail.com Mon Feb 16 11:11:27 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Mon, 16 Feb 2015 11:11:27 -0800 Subject: [ndnSIM] Implementing Interest Limits in ndnSIM2.0 In-Reply-To: <54E1F0E5.2040206@gmail.com> References: <54E1F0E5.2040206@gmail.com> Message-ID: <53253F06-7E27-410D-B4E5-212A406A466E@gmail.com> Hello, I think that you can implement the desired functionality by coding your own custom forwarding strategy for NFD. For more information, you can take a look here: http://ndnsim.net/2.0/fw.html#writing-your-own-custom-strategy -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 16, 2015, at 5:30 AM, Daniel Posch wrote: > > Dear all, > > I am trying to re-implement a feature called "Interest Limits", which was available in ndnSIM1.0. > Its basically a Token Bucket Filter that can be installed on Faces to limited the rate of outgoing Interests. > > However, I can't find a way to retrieve the link capacities of a nfd::Face. Am I correct that this information is not provided by the class nfd::Face and therefore an implementation of "Interest Limits" is not possible within ndnSIM2.0? > > Best regards, > Daniel > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From alexander.afanasyev at ucla.edu Mon Feb 16 12:09:18 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Mon, 16 Feb 2015 12:09:18 -0800 Subject: [ndnSIM] Implementing Interest Limits in ndnSIM2.0 In-Reply-To: <54E1F0E5.2040206@gmail.com> References: <54E1F0E5.2040206@gmail.com> Message-ID: Hi Daniel, Link capacity is not really a property of nfd::Face. It can be property of ndn::NetDeviceFace, but even with it it really depends on which specific underlying NetDevice is used. In 1.0, this worked only for point-to-point links and the capacity was obtained during the construction stage in StackHelper and then it was used to initialize Limits object aggregated on the face by the strategy. In 2.0, we still can obtain the capacity during the construction, however there is no longer an assumption that there is only one strategy for NDN node (which was true in 1.0). The question (and the reason it is currently not implemented) where and how to store Limits object on the face. If you're ok with just one strategy per node, you can make a hack and store map of Face->Limits objects on "/" measurement entry of FIB. May be you can come up with a better place.. -- Alex > On Feb 16, 2015, at 5:30 AM, Daniel Posch wrote: > > Dear all, > > I am trying to re-implement a feature called "Interest Limits", which was available in ndnSIM1.0. > Its basically a Token Bucket Filter that can be installed on Faces to limited the rate of outgoing Interests. > > However, I can't find a way to retrieve the link capacities of a nfd::Face. Am I correct that this information is not provided by the class nfd::Face and therefore an implementation of "Interest Limits" is not possible within ndnSIM2.0? > > Best regards, > Daniel -------------- 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 trade20122012 at gmail.com Mon Feb 16 16:48:38 2015 From: trade20122012 at gmail.com (Trade) Date: Mon, 16 Feb 2015 16:48:38 -0800 Subject: [ndnSIM] firstInterestDataDelay In-Reply-To: References: <917365B6-D2B3-4B46-996A-5BCD0869E896@ucla.edu> <7136B177-AE6D-4F7F-AA91-8932381B37AF@gmail.com> Message-ID: <54E28FE6.8040405@gmail.com> Hi, Is this delay counted from first interest to first data received or to last data received? Thanks Trade From alexander.afanasyev at ucla.edu Mon Feb 16 16:55:51 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Mon, 16 Feb 2015 16:55:51 -0800 Subject: [ndnSIM] firstInterestDataDelay In-Reply-To: <54E28FE6.8040405@gmail.com> References: <917365B6-D2B3-4B46-996A-5BCD0869E896@ucla.edu> <7136B177-AE6D-4F7F-AA91-8932381B37AF@gmail.com> <54E28FE6.8040405@gmail.com> Message-ID: Yes, FirstInterestDataDelay trace source is the delay between first transmitted Interest and received Data. The other trace source (LastRetransmittedInterestDataDelay) measures/estimates the last attempt to retrieve data. --- Alex > On Feb 16, 2015, at 4:48 PM, Trade wrote: > > Hi, > Is this delay counted from first interest to first data received or to last data received? Thanks > Trade -------------- 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 trade20122012 at gmail.com Mon Feb 16 16:57:02 2015 From: trade20122012 at gmail.com (Trade) Date: Mon, 16 Feb 2015 16:57:02 -0800 Subject: [ndnSIM] firstInterestDataDelay In-Reply-To: References: <917365B6-D2B3-4B46-996A-5BCD0869E896@ucla.edu> <7136B177-AE6D-4F7F-AA91-8932381B37AF@gmail.com> <54E28FE6.8040405@gmail.com> Message-ID: <54E291DE.3000802@gmail.com> Thanks. I need more information: Is the first received or last received data? first transmitted Interest and {received Data} On 2/16/15 4:55 PM, Alex Afanasyev wrote: > Yes, FirstInterestDataDelay trace source is the delay between first transmitted Interest and received Data. The other trace source (LastRetransmittedInterestDataDelay) measures/estimates the last attempt to retrieve data. > > --- > Alex > >> On Feb 16, 2015, at 4:48 PM, Trade wrote: >> >> Hi, >> Is this delay counted from first interest to first data received or to last data received? Thanks >> Trade From wonjunchoi001 at gmail.com Mon Feb 16 16:59:35 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Tue, 17 Feb 2015 09:59:35 +0900 Subject: [ndnSIM] No output from Rscript. In-Reply-To: References: Message-ID: Please review this issue. Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexander.afanasyev at ucla.edu Mon Feb 16 17:01:44 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Mon, 16 Feb 2015 17:01:44 -0800 Subject: [ndnSIM] firstInterestDataDelay In-Reply-To: <54E291DE.3000802@gmail.com> References: <917365B6-D2B3-4B46-996A-5BCD0869E896@ucla.edu> <7136B177-AE6D-4F7F-AA91-8932381B37AF@gmail.com> <54E28FE6.8040405@gmail.com> <54E291DE.3000802@gmail.com> Message-ID: <9F8C830B-F15A-490E-9C24-53C8F14B56D6@ucla.edu> There is only one received data :) Even if by some accident another data is retrieved, it most likely will not get back to the consumer (there is no PIT entry for it). Even if there is a way that the data actually goes back to consumer (which is practically impossible), it will be ignored by the consumer app. -- Alex > On Feb 16, 2015, at 4:57 PM, Trade wrote: > > Thanks. I need more information: Is the first received or last received data? > > first transmitted Interest and {received Data} > > > On 2/16/15 4:55 PM, Alex Afanasyev wrote: >> Yes, FirstInterestDataDelay trace source is the delay between first transmitted Interest and received Data. The other trace source (LastRetransmittedInterestDataDelay) measures/estimates the last attempt to retrieve data. >> >> --- >> Alex >> >>> On Feb 16, 2015, at 4:48 PM, Trade wrote: >>> >>> Hi, >>> Is this delay counted from first interest to first data received or to last data received? Thanks >>> Trade > > _______________________________________________ > 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 trade20122012 at gmail.com Mon Feb 16 17:03:19 2015 From: trade20122012 at gmail.com (Trade) Date: Mon, 16 Feb 2015 17:03:19 -0800 Subject: [ndnSIM] firstInterestDataDelay In-Reply-To: <9F8C830B-F15A-490E-9C24-53C8F14B56D6@ucla.edu> References: <917365B6-D2B3-4B46-996A-5BCD0869E896@ucla.edu> <7136B177-AE6D-4F7F-AA91-8932381B37AF@gmail.com> <54E28FE6.8040405@gmail.com> <54E291DE.3000802@gmail.com> <9F8C830B-F15A-490E-9C24-53C8F14B56D6@ucla.edu> Message-ID: <54E29357.1080700@gmail.com> I see. So if in the case of multiple different data , then it should get different delay for each data? On 2/16/15 5:01 PM, Alex Afanasyev wrote: > There is only one received data :) Even if by some accident another data is retrieved, it most likely will not get back to the consumer (there is no PIT entry for it). Even if there is a way that the data actually goes back to consumer (which is practically impossible), it will be ignored by the consumer app. > > -- > Alex > >> On Feb 16, 2015, at 4:57 PM, Trade wrote: >> >> Thanks. I need more information: Is the first received or last received data? >> >> first transmitted Interest and {received Data} >> >> >> On 2/16/15 4:55 PM, Alex Afanasyev wrote: >>> Yes, FirstInterestDataDelay trace source is the delay between first transmitted Interest and received Data. The other trace source (LastRetransmittedInterestDataDelay) measures/estimates the last attempt to retrieve data. >>> >>> --- >>> Alex >>> >>>> On Feb 16, 2015, at 4:48 PM, Trade wrote: >>>> >>>> Hi, >>>> Is this delay counted from first interest to first data received or to last data received? Thanks >>>> Trade >> _______________________________________________ >> ndnSIM mailing list >> ndnSIM at lists.cs.ucla.edu >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From alexander.afanasyev at ucla.edu Mon Feb 16 17:06:26 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Mon, 16 Feb 2015 17:06:26 -0800 Subject: [ndnSIM] firstInterestDataDelay In-Reply-To: <54E29357.1080700@gmail.com> References: <917365B6-D2B3-4B46-996A-5BCD0869E896@ucla.edu> <7136B177-AE6D-4F7F-AA91-8932381B37AF@gmail.com> <54E28FE6.8040405@gmail.com> <54E291DE.3000802@gmail.com> <9F8C830B-F15A-490E-9C24-53C8F14B56D6@ucla.edu> <54E29357.1080700@gmail.com> Message-ID: <4E36332E-7D61-468A-9610-A5E04CFD6000@ucla.edu> > On Feb 16, 2015, at 5:03 PM, Trade wrote: > > I see. So if in the case of multiple different data , then it should get different delay for each data? There is only one data for the expressed interest, even if the interest is re-transmitted multiple times. Multiple interests for **different data** may result in multiple data packets back. Depending on the scenario, delays could be different or the same. -- Alex > > On 2/16/15 5:01 PM, Alex Afanasyev wrote: >> There is only one received data :) Even if by some accident another data is retrieved, it most likely will not get back to the consumer (there is no PIT entry for it). Even if there is a way that the data actually goes back to consumer (which is practically impossible), it will be ignored by the consumer app. -------------- 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 alexander.afanasyev at ucla.edu Mon Feb 16 17:15:50 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Mon, 16 Feb 2015 17:15:50 -0800 Subject: [ndnSIM] No output from Rscript. In-Reply-To: References: Message-ID: <527642C1-A079-4C0B-A54C-3A422FEC14AF@ucla.edu> What output are you expecting? The script is designed to produce "src/ndnSIM/docs/source/_static/root-rates.png? file under the assumption that there is a node named ?root?. From your rate trace I see that you?re using just node IDs. If so, you need to adjust R script appropriately. ? Alex > On Feb 16, 2015, at 12:07 AM, ??? wrote: > > Hello. > > I created rate-trace.txt like http://pastebin.com/NetBpe7d . > I used the example from ndnSIM2.0 web. > but there is no output. I ran the script in terminal. > > Best regards. > Wonjun, Choi > > # Copyright (c) 2012,2015 Alexander Afanasyev > > > # install.packages('ggplot2') > library(ggplot2) > # install.packages('scales') > library(scales) > > # install.packages('doBy') > library(doBy) > > ######################### > # Rate trace processing # > ######################### > data = read.table("rate-trace.txt", header=T) > data$Node = factor(data$Node) > data$FaceId <- factor(data$FaceId) > data$Kilobits <- data$Kilobytes * 8 > data$Type = factor(data$Type) > > # exlude irrelevant types > data = subset(data, Type %in% c("InInterests", "OutInterests", "InData", "OutData")) > > # combine stats from all faces > data.combined = summaryBy(. ~ Time + Node + Type, data=data, FUN=sum) > > data.root = subset (data.combined, Node == "root") > data.leaves = subset(data.combined, Node %in% c("leaf-1", "leaf-2", "leaf-3", "leaf-4")) > > # graph rates on all nodes in Kilobits > g.all <- ggplot(data.combined) + > geom_point(aes (x=Time, y=Kilobits.sum, color=Type), size=1) + > ylab("Rate [Kbits/s]") + > facet_wrap(~ Node) > > print(g.all) > > # graph rates on the root nodes in Packets > g.root <- ggplot(data.root) + > geom_point(aes (x=Time, y=Kilobits.sum, color=Type), size=2) + > geom_line(aes (x=Time, y=Kilobits.sum, color=Type), size=0.5) + > ylab("Rate [Kbits/s]") > > print(g.root) > > png("src/ndnSIM/docs/source/_static/root-rates.png", width=500, height=250) > print(g.root) > retval <- dev.off() > _______________________________________________ > 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 alexander.afanasyev at ucla.edu Mon Feb 16 17:19:26 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Mon, 16 Feb 2015 17:19:26 -0800 Subject: [ndnSIM] firstInterestDataDelay In-Reply-To: <54E2949D.9070104@gmail.com> References: <917365B6-D2B3-4B46-996A-5BCD0869E896@ucla.edu> <7136B177-AE6D-4F7F-AA91-8932381B37AF@gmail.com> <54E28FE6.8040405@gmail.com> <54E291DE.3000802@gmail.com> <9F8C830B-F15A-490E-9C24-53C8F14B56D6@ucla.edu> <54E29357.1080700@gmail.com> <4E36332E-7D61-468A-9610-A5E04CFD6000@ucla.edu> <54E2949D.9070104@gmail.com> Message-ID: <4AC7150E-A868-4508-804D-B3B36C21AC73@ucla.edu> This rate is not for the same interest, but for interests for different data. In this specific scenario, within the first second of the simulation, it will request 10 interests, equally spaced by 0.1s: /prefix/%00 /prefix/%01 /prefix/%02 /prefix/%03 /prefix/%04 /prefix/%05 /prefix/%06 /prefix/%07 /prefix/%08 /prefix/%09 If initial interest will not bring data, individual interest will be re-transmited. ? Alex > On Feb 16, 2015, at 5:08 PM, Trade wrote: > > Thanks. > I am reading example in http://ndnsim.net/2.0/examples.html > > Why does a consumer send 10 interested every second as below? If it gets data for the first time, then it already contain in CS. No needs to keep requesting. > consumerHelper.SetAttribute("Frequency", StringValue("10")); // 10 interests a second > > > On 2/16/15 5:06 PM, Alex Afanasyev wrote: >>> On Feb 16, 2015, at 5:03 PM, Trade wrote: >>> >>> I see. So if in the case of multiple different data , then it should get different delay for each data? >> There is only one data for the expressed interest, even if the interest is re-transmitted multiple times. Multiple interests for **different data** may result in multiple data packets back. Depending on the scenario, delays could be different or the same. >> >> -- >> Alex >> >>> On 2/16/15 5:01 PM, Alex Afanasyev wrote: >>>> There is only one received data :) Even if by some accident another data is retrieved, it most likely will not get back to the consumer (there is no PIT entry for it). Even if there is a way that the data actually goes back to consumer (which is practically impossible), it will be ignored by the consumer app. > -------------- 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 trade20122012 at gmail.com Mon Feb 16 17:25:02 2015 From: trade20122012 at gmail.com (Trade) Date: Mon, 16 Feb 2015 17:25:02 -0800 Subject: [ndnSIM] firstInterestDataDelay In-Reply-To: <4AC7150E-A868-4508-804D-B3B36C21AC73@ucla.edu> References: <917365B6-D2B3-4B46-996A-5BCD0869E896@ucla.edu> <7136B177-AE6D-4F7F-AA91-8932381B37AF@gmail.com> <54E28FE6.8040405@gmail.com> <54E291DE.3000802@gmail.com> <9F8C830B-F15A-490E-9C24-53C8F14B56D6@ucla.edu> <54E29357.1080700@gmail.com> <4E36332E-7D61-468A-9610-A5E04CFD6000@ucla.edu> <54E2949D.9070104@gmail.com> <4AC7150E-A868-4508-804D-B3B36C21AC73@ucla.edu> Message-ID: <54E2986E.3090008@gmail.com> I just used the example codes exactly same(different interests) to run, but received the same delay for all received different data. 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 consumerHelper.Install(nodes.Get(0)); On 2/16/15 5:19 PM, Alex Afanasyev wrote: > This rate is not for the same interest, but for interests for > different data. In this specific scenario, within the first second of > the simulation, it will request 10 interests, equally spaced by 0.1s: > > /prefix/%00 > /prefix/%01 > /prefix/%02 > /prefix/%03 > /prefix/%04 > /prefix/%05 > /prefix/%06 > /prefix/%07 > /prefix/%08 > /prefix/%09 > > If initial interest will not bring data, individual interest will be > re-transmited. > > ? > Alex > >> On Feb 16, 2015, at 5:08 PM, Trade > > wrote: >> >> Thanks. >> I am reading example in http://ndnsim.net/2.0/examples.html >> >> Why does a consumer send 10 interested every second as below? If it >> gets data for the first time, then it already contain in CS. No needs >> to keep requesting. >> consumerHelper.SetAttribute("Frequency", StringValue("10")); // 10 interests a second >> >> >> On 2/16/15 5:06 PM, Alex Afanasyev wrote: >>>> On Feb 16, 2015, at 5:03 PM, Trade wrote: >>>> >>>> I see. So if in the case of multiple different data , then it should get different delay for each data? >>> There is only one data for the expressed interest, even if the interest is re-transmitted multiple times. Multiple interests for **different data** may result in multiple data packets back. Depending on the scenario, delays could be different or the same. >>> >>> -- >>> Alex >>> >>>> On 2/16/15 5:01 PM, Alex Afanasyev wrote: >>>>> There is only one received data :) Even if by some accident another data is retrieved, it most likely will not get back to the consumer (there is no PIT entry for it). Even if there is a way that the data actually goes back to consumer (which is practically impossible), it will be ignored by the consumer app. >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Mon Feb 16 18:14:42 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Mon, 16 Feb 2015 18:14:42 -0800 Subject: [ndnSIM] How to get cache hit/miss ratio in a variable? In-Reply-To: References: <698C7964-1762-404B-A019-2D577D8013ED@gmail.com> <3C82FE39-CE05-4B7A-8434-14775F1A914F@gmail.com> Message-ID: Hello, based on my understanding of the scenario that you want to create, you do not need to worry about the minsuffixcomponent and maxsuffixcomponent selectors. However, you will need to create your own custom producer application (or modify the existing one) to handle the exclude selectors appropriately. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 16, 2015, at 7:17 AM, adithya srinivasan wrote: > > Hello > Thank you for your reply. However i wasn't able to find a way to specify the minsuffixcomponents and maxsuffixcomponents. And also , can you provide me with an example of an application that uses exclude filters where the packets are excluded while the program is running.A very simple example will suffice. What I tried so far is , create a prefix , say , "/node8" and add origins to that prefix to a node8 in the network. And then i added "user" as an exclude filter using the excludeOne() function. The onInterest() of node8 appends "user" to the dataname of the packet.So the name of the packet from producer becomes "/node8/user". Now as far as my understanding goes , this packet must be ignored since there is a match for the exclude filter. But the packet is being forwarded to the consumer.Can you point out where I am going wrong? > > P.S I also tried changing the source prefix as "/node8/user" and the consumer's interest prefix as "/node8" without any exclude filters. However there was no packet being transmitted. By longest prefix match , there should be a transmission of data packet from node 8 , shouldn't it be? > Thank you > Adithya > > On Sun, Feb 15, 2015 at 11:53 PM, Spyridon (Spyros) Mastorakis wrote: > Hello, > > please use the ?reply to all? option, so that your emails are visible to all the users of ndnSIM. > > Exclude is a selector and refers only to a name prefix. You can take a look here for further information: > > http://named-data.net/doc/ndn-tlv/interest.html#selectors > > However, the FreshnessPeriod field of a data packet may be useful to you: > > http://named-data.net/doc/ndn-tlv/data.html#freshnessperiod > > Remember that if you want to use this field, the consumer has to request fresh data explicitly. This can be done with the MustBeFresh selector: > > http://named-data.net/doc/ndn-tlv/interest.html#mustbefresh > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 15, 2015, at 4:44 AM, adithya srinivasan wrote: > > > > Hi > > Thank you for your reply. Actually i thought initially that we can exclude a packet directly by specifying just the name of the packet. But i looked into the ndn-exclude files and found that exclusions can be made for the prefixes alone.Isn't that so? What I needed was the number of exclusions made by various users for a data packet in the Content Store of a router so that I can determine whether that packet is an important one or not.Suppose a user adds "/node0" as an exclusion in the interest , I want the number of exlcusions for "/node0" in the router's CS to be incremented by 1. I still don't know how to achieve this. Sorry I'm kind of a noob in this. Is there a way to get this? > > > > Thank you > > Adithya > > > > On Sun, Feb 15, 2015 at 11:49 AM, Spyridon (Spyros) Mastorakis wrote: > > Hello, > > > > in order to get the cache hit/miss ratio in the desired format, you will need either to modify the implementation of the CS directly or the implementation of the cs tracer in order to return the desired parameter. > > > > For the other thing about the exclusions, Alex asked you to define more precisely the term ?number of exclusions?. I would like to ask the same thing in order to really understand your question and be able to answer it. > > > > -- > > Spyridon (Spyros) Mastorakis > > Personal Website: http://cs.ucla.edu/~mastorakis/ > > Internet Research Laboratory > > PhD Computer Science > > UCLA > > > > > > > > > > > On Feb 13, 2015, at 11:08 PM, adithya srinivasan wrote: > > > > > > Hello > > > My project involves a basic level security algorithm against cache poisoning and pollution in NDN. For that I'm in need of the cache hit/miss ratio and also the exclusions made for a packet in the Content Store of a node. I've seen programs where the cache hit/miss ratio can be traced using tracers. But is there any way to obtain the cache hit/miss ratio of a node at any point of time inside a variable. I can use custom apps to create an instance for a node and is it possible to get the cache hit/miss ratio in that app? > > > > > > Thank you > > > Adithya > > > _______________________________________________ > > > ndnSIM mailing list > > > ndnSIM at lists.cs.ucla.edu > > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > > From wonjunchoi001 at gmail.com Mon Feb 16 18:19:13 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Tue, 17 Feb 2015 11:19:13 +0900 Subject: [ndnSIM] No output from Rscript. In-Reply-To: <527642C1-A079-4C0B-A54C-3A422FEC14AF@ucla.edu> References: <527642C1-A079-4C0B-A54C-3A422FEC14AF@ucla.edu> Message-ID: Thanks for your reply. There are values for InInterests", "OutInterests", "InData", "OutData in rate-trace.txt. but the root-rates.png displays nothing. I don't understand this part. >From your rate trace I see that you?re using just node IDs. If so, you need to adjust R script appropriately. Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From adith.ad at gmail.com Mon Feb 16 23:00:04 2015 From: adith.ad at gmail.com (adithya srinivasan) Date: Tue, 17 Feb 2015 12:30:04 +0530 Subject: [ndnSIM] How to get cache hit/miss ratio in a variable? In-Reply-To: References: <698C7964-1762-404B-A019-2D577D8013ED@gmail.com> <3C82FE39-CE05-4B7A-8434-14775F1A914F@gmail.com> Message-ID: Hi Yes I'm creating my own custom producer application. But I'm not able to figure out how exclusion works. Can you atleast give a simple description like example? Assume that a consumer requests "/node8" , puts it in an interest and sends it. A producer replies back with "/node8/user". Now upon receiving this data , the consumer wants to exclude the "user" postfix and search for another "/node8". So he adds "/user" as an exclude filter and requests again? Is this how exclusion works? On Tue, Feb 17, 2015 at 7:44 AM, Spyridon (Spyros) Mastorakis < spiros.mastorakis at gmail.com> wrote: > Hello, > > based on my understanding of the scenario that you want to create, you do > not need to worry about the minsuffixcomponent and maxsuffixcomponent > selectors. However, you will need to create your own custom producer > application (or modify the existing one) to handle the exclude selectors > appropriately. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 16, 2015, at 7:17 AM, adithya srinivasan > wrote: > > > > Hello > > Thank you for your reply. However i wasn't able to find a way to specify > the minsuffixcomponents and maxsuffixcomponents. And also , can you provide > me with an example of an application that uses exclude filters where the > packets are excluded while the program is running.A very simple example > will suffice. What I tried so far is , create a prefix , say , "/node8" and > add origins to that prefix to a node8 in the network. And then i added > "user" as an exclude filter using the excludeOne() function. The > onInterest() of node8 appends "user" to the dataname of the packet.So the > name of the packet from producer becomes "/node8/user". Now as far as my > understanding goes , this packet must be ignored since there is a match for > the exclude filter. But the packet is being forwarded to the consumer.Can > you point out where I am going wrong? > > > > P.S I also tried changing the source prefix as "/node8/user" and the > consumer's interest prefix as "/node8" without any exclude filters. However > there was no packet being transmitted. By longest prefix match , there > should be a transmission of data packet from node 8 , shouldn't it be? > > Thank you > > Adithya > > > > On Sun, Feb 15, 2015 at 11:53 PM, Spyridon (Spyros) Mastorakis < > spiros.mastorakis at gmail.com> wrote: > > Hello, > > > > please use the ?reply to all? option, so that your emails are visible to > all the users of ndnSIM. > > > > Exclude is a selector and refers only to a name prefix. You can take a > look here for further information: > > > > http://named-data.net/doc/ndn-tlv/interest.html#selectors > > > > However, the FreshnessPeriod field of a data packet may be useful to you: > > > > http://named-data.net/doc/ndn-tlv/data.html#freshnessperiod > > > > Remember that if you want to use this field, the consumer has to request > fresh data explicitly. This can be done with the MustBeFresh selector: > > > > http://named-data.net/doc/ndn-tlv/interest.html#mustbefresh > > > > -- > > Spyridon (Spyros) Mastorakis > > Personal Website: http://cs.ucla.edu/~mastorakis/ > > Internet Research Laboratory > > PhD Computer Science > > UCLA > > > > > > > > > > > On Feb 15, 2015, at 4:44 AM, adithya srinivasan > wrote: > > > > > > Hi > > > Thank you for your reply. Actually i thought initially that we can > exclude a packet directly by specifying just the name of the packet. But i > looked into the ndn-exclude files and found that exclusions can be made for > the prefixes alone.Isn't that so? What I needed was the number of > exclusions made by various users for a data packet in the Content Store of > a router so that I can determine whether that packet is an important one or > not.Suppose a user adds "/node0" as an exclusion in the interest , I want > the number of exlcusions for "/node0" in the router's CS to be incremented > by 1. I still don't know how to achieve this. Sorry I'm kind of a noob in > this. Is there a way to get this? > > > > > > Thank you > > > Adithya > > > > > > On Sun, Feb 15, 2015 at 11:49 AM, Spyridon (Spyros) Mastorakis < > spiros.mastorakis at gmail.com> wrote: > > > Hello, > > > > > > in order to get the cache hit/miss ratio in the desired format, you > will need either to modify the implementation of the CS directly or the > implementation of the cs tracer in order to return the desired parameter. > > > > > > For the other thing about the exclusions, Alex asked you to define > more precisely the term ?number of exclusions?. I would like to ask the > same thing in order to really understand your question and be able to > answer it. > > > > > > -- > > > Spyridon (Spyros) Mastorakis > > > Personal Website: http://cs.ucla.edu/~mastorakis/ > > > Internet Research Laboratory > > > PhD Computer Science > > > UCLA > > > > > > > > > > > > > > > > On Feb 13, 2015, at 11:08 PM, adithya srinivasan > wrote: > > > > > > > > Hello > > > > My project involves a basic level security algorithm against cache > poisoning and pollution in NDN. For that I'm in need of the cache hit/miss > ratio and also the exclusions made for a packet in the Content Store of a > node. I've seen programs where the cache hit/miss ratio can be traced using > tracers. But is there any way to obtain the cache hit/miss ratio of a node > at any point of time inside a variable. I can use custom apps to create an > instance for a node and is it possible to get the cache hit/miss ratio in > that app? > > > > > > > > Thank you > > > > Adithya > > > > _______________________________________________ > > > > 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 spiros.mastorakis at gmail.com Mon Feb 16 23:17:58 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Mon, 16 Feb 2015 23:17:58 -0800 Subject: [ndnSIM] How to get cache hit/miss ratio in a variable? In-Reply-To: References: <698C7964-1762-404B-A019-2D577D8013ED@gmail.com> <3C82FE39-CE05-4B7A-8434-14775F1A914F@gmail.com> Message-ID: <69DECF54-9A9B-4C89-82CC-7C0D58AE8E43@gmail.com> Hello, more or less, this is how exclusion works. However, in the case that the consumer sends again an interest with prefix ?/node8? and exclusion ?/user?, the producer must not respond back with data for the name prefix ?/node8/user?. As described in the NDN packet specification that I have already mentioned in a previous email and can be found here: http://named-data.net/doc/ndn-tlv/interest.html#exclude "The Exclude selectors allows requester to specify list and/or ranges of names components that MUST NOT appear as a continuation of the Name prefix in the responding Data packet to the Interest. For example, if Interest is expressed for /ndn/edu and Exclude specifies one name component ucla, then neither data producer nor conforming NDN routers are allowed to return any Data packet that has prefix /ndn/edu/ucla.? -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 16, 2015, at 11:00 PM, adithya srinivasan wrote: > > Hi > Yes I'm creating my own custom producer application. But I'm not able to figure out how exclusion works. Can you atleast give a simple description like example? Assume that a consumer requests "/node8" , puts it in an interest and sends it. A producer replies back with "/node8/user". Now upon receiving this data , the consumer wants to exclude the "user" postfix and search for another "/node8". So he adds "/user" as an exclude filter and requests again? Is this how exclusion works? > > On Tue, Feb 17, 2015 at 7:44 AM, Spyridon (Spyros) Mastorakis wrote: > Hello, > > based on my understanding of the scenario that you want to create, you do not need to worry about the minsuffixcomponent and maxsuffixcomponent selectors. However, you will need to create your own custom producer application (or modify the existing one) to handle the exclude selectors appropriately. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 16, 2015, at 7:17 AM, adithya srinivasan wrote: > > > > Hello > > Thank you for your reply. However i wasn't able to find a way to specify the minsuffixcomponents and maxsuffixcomponents. And also , can you provide me with an example of an application that uses exclude filters where the packets are excluded while the program is running.A very simple example will suffice. What I tried so far is , create a prefix , say , "/node8" and add origins to that prefix to a node8 in the network. And then i added "user" as an exclude filter using the excludeOne() function. The onInterest() of node8 appends "user" to the dataname of the packet.So the name of the packet from producer becomes "/node8/user". Now as far as my understanding goes , this packet must be ignored since there is a match for the exclude filter. But the packet is being forwarded to the consumer.Can you point out where I am going wrong? > > > > P.S I also tried changing the source prefix as "/node8/user" and the consumer's interest prefix as "/node8" without any exclude filters. However there was no packet being transmitted. By longest prefix match , there should be a transmission of data packet from node 8 , shouldn't it be? > > Thank you > > Adithya > > > > On Sun, Feb 15, 2015 at 11:53 PM, Spyridon (Spyros) Mastorakis wrote: > > Hello, > > > > please use the ?reply to all? option, so that your emails are visible to all the users of ndnSIM. > > > > Exclude is a selector and refers only to a name prefix. You can take a look here for further information: > > > > http://named-data.net/doc/ndn-tlv/interest.html#selectors > > > > However, the FreshnessPeriod field of a data packet may be useful to you: > > > > http://named-data.net/doc/ndn-tlv/data.html#freshnessperiod > > > > Remember that if you want to use this field, the consumer has to request fresh data explicitly. This can be done with the MustBeFresh selector: > > > > http://named-data.net/doc/ndn-tlv/interest.html#mustbefresh > > > > -- > > Spyridon (Spyros) Mastorakis > > Personal Website: http://cs.ucla.edu/~mastorakis/ > > Internet Research Laboratory > > PhD Computer Science > > UCLA > > > > > > > > > > > On Feb 15, 2015, at 4:44 AM, adithya srinivasan wrote: > > > > > > Hi > > > Thank you for your reply. Actually i thought initially that we can exclude a packet directly by specifying just the name of the packet. But i looked into the ndn-exclude files and found that exclusions can be made for the prefixes alone.Isn't that so? What I needed was the number of exclusions made by various users for a data packet in the Content Store of a router so that I can determine whether that packet is an important one or not.Suppose a user adds "/node0" as an exclusion in the interest , I want the number of exlcusions for "/node0" in the router's CS to be incremented by 1. I still don't know how to achieve this. Sorry I'm kind of a noob in this. Is there a way to get this? > > > > > > Thank you > > > Adithya > > > > > > On Sun, Feb 15, 2015 at 11:49 AM, Spyridon (Spyros) Mastorakis wrote: > > > Hello, > > > > > > in order to get the cache hit/miss ratio in the desired format, you will need either to modify the implementation of the CS directly or the implementation of the cs tracer in order to return the desired parameter. > > > > > > For the other thing about the exclusions, Alex asked you to define more precisely the term ?number of exclusions?. I would like to ask the same thing in order to really understand your question and be able to answer it. > > > > > > -- > > > Spyridon (Spyros) Mastorakis > > > Personal Website: http://cs.ucla.edu/~mastorakis/ > > > Internet Research Laboratory > > > PhD Computer Science > > > UCLA > > > > > > > > > > > > > > > > On Feb 13, 2015, at 11:08 PM, adithya srinivasan wrote: > > > > > > > > Hello > > > > My project involves a basic level security algorithm against cache poisoning and pollution in NDN. For that I'm in need of the cache hit/miss ratio and also the exclusions made for a packet in the Content Store of a node. I've seen programs where the cache hit/miss ratio can be traced using tracers. But is there any way to obtain the cache hit/miss ratio of a node at any point of time inside a variable. I can use custom apps to create an instance for a node and is it possible to get the cache hit/miss ratio in that app? > > > > > > > > Thank you > > > > Adithya > > > > _______________________________________________ > > > > ndnSIM mailing list > > > > ndnSIM at lists.cs.ucla.edu > > > > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim > > > > > > > > > > > > From adith.ad at gmail.com Tue Feb 17 00:41:02 2015 From: adith.ad at gmail.com (adithya srinivasan) Date: Tue, 17 Feb 2015 14:11:02 +0530 Subject: [ndnSIM] How to get cache hit/miss ratio in a variable? In-Reply-To: <69DECF54-9A9B-4C89-82CC-7C0D58AE8E43@gmail.com> References: <698C7964-1762-404B-A019-2D577D8013ED@gmail.com> <3C82FE39-CE05-4B7A-8434-14775F1A914F@gmail.com> <69DECF54-9A9B-4C89-82CC-7C0D58AE8E43@gmail.com> Message-ID: Hi Thank you. I will experiment further with exclusions. Btw is there any function to remove certain entries from the content store manually?I can use iterators to search the content store and I want a particular element to be removed from the CS. There was one function remove entry but it was commented out by default and was not implemented in the content-store-impl.cc Thank you On Tue, Feb 17, 2015 at 12:47 PM, Spyridon (Spyros) Mastorakis < spiros.mastorakis at gmail.com> wrote: > Hello, > > more or less, this is how exclusion works. However, in the case that the > consumer sends again an interest with prefix ?/node8? and exclusion > ?/user?, the producer must not respond back with data for the name prefix > ?/node8/user?. > > As described in the NDN packet specification that I have already mentioned > in a previous email and can be found here: > > http://named-data.net/doc/ndn-tlv/interest.html#exclude > > "The Exclude selectors allows requester to specify list and/or ranges of > names components that MUST NOT appear as a continuation of the Name prefix > in the responding Data packet to the Interest. For example, if Interest is > expressed for /ndn/edu and Exclude specifies one name component ucla, then > neither data producer nor conforming NDN routers are allowed to return any > Data packet that has prefix /ndn/edu/ucla.? > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 16, 2015, at 11:00 PM, adithya srinivasan > wrote: > > > > Hi > > Yes I'm creating my own custom producer application. But I'm not able to > figure out how exclusion works. Can you atleast give a simple description > like example? Assume that a consumer requests "/node8" , puts it in an > interest and sends it. A producer replies back with "/node8/user". Now upon > receiving this data , the consumer wants to exclude the "user" postfix and > search for another "/node8". So he adds "/user" as an exclude filter and > requests again? Is this how exclusion works? > > > > On Tue, Feb 17, 2015 at 7:44 AM, Spyridon (Spyros) Mastorakis < > spiros.mastorakis at gmail.com> wrote: > > Hello, > > > > based on my understanding of the scenario that you want to create, you > do not need to worry about the minsuffixcomponent and maxsuffixcomponent > selectors. However, you will need to create your own custom producer > application (or modify the existing one) to handle the exclude selectors > appropriately. > > > > -- > > Spyridon (Spyros) Mastorakis > > Personal Website: http://cs.ucla.edu/~mastorakis/ > > Internet Research Laboratory > > PhD Computer Science > > UCLA > > > > > > > > > > > On Feb 16, 2015, at 7:17 AM, adithya srinivasan > wrote: > > > > > > Hello > > > Thank you for your reply. However i wasn't able to find a way to > specify the minsuffixcomponents and maxsuffixcomponents. And also , can you > provide me with an example of an application that uses exclude filters > where the packets are excluded while the program is running.A very simple > example will suffice. What I tried so far is , create a prefix , say , > "/node8" and add origins to that prefix to a node8 in the network. And then > i added "user" as an exclude filter using the excludeOne() function. The > onInterest() of node8 appends "user" to the dataname of the packet.So the > name of the packet from producer becomes "/node8/user". Now as far as my > understanding goes , this packet must be ignored since there is a match for > the exclude filter. But the packet is being forwarded to the consumer.Can > you point out where I am going wrong? > > > > > > P.S I also tried changing the source prefix as "/node8/user" and the > consumer's interest prefix as "/node8" without any exclude filters. However > there was no packet being transmitted. By longest prefix match , there > should be a transmission of data packet from node 8 , shouldn't it be? > > > Thank you > > > Adithya > > > > > > On Sun, Feb 15, 2015 at 11:53 PM, Spyridon (Spyros) Mastorakis < > spiros.mastorakis at gmail.com> wrote: > > > Hello, > > > > > > please use the ?reply to all? option, so that your emails are visible > to all the users of ndnSIM. > > > > > > Exclude is a selector and refers only to a name prefix. You can take a > look here for further information: > > > > > > http://named-data.net/doc/ndn-tlv/interest.html#selectors > > > > > > However, the FreshnessPeriod field of a data packet may be useful to > you: > > > > > > http://named-data.net/doc/ndn-tlv/data.html#freshnessperiod > > > > > > Remember that if you want to use this field, the consumer has to > request fresh data explicitly. This can be done with the MustBeFresh > selector: > > > > > > http://named-data.net/doc/ndn-tlv/interest.html#mustbefresh > > > > > > -- > > > Spyridon (Spyros) Mastorakis > > > Personal Website: http://cs.ucla.edu/~mastorakis/ > > > Internet Research Laboratory > > > PhD Computer Science > > > UCLA > > > > > > > > > > > > > > > > On Feb 15, 2015, at 4:44 AM, adithya srinivasan > wrote: > > > > > > > > Hi > > > > Thank you for your reply. Actually i thought initially that we can > exclude a packet directly by specifying just the name of the packet. But i > looked into the ndn-exclude files and found that exclusions can be made for > the prefixes alone.Isn't that so? What I needed was the number of > exclusions made by various users for a data packet in the Content Store of > a router so that I can determine whether that packet is an important one or > not.Suppose a user adds "/node0" as an exclusion in the interest , I want > the number of exlcusions for "/node0" in the router's CS to be incremented > by 1. I still don't know how to achieve this. Sorry I'm kind of a noob in > this. Is there a way to get this? > > > > > > > > Thank you > > > > Adithya > > > > > > > > On Sun, Feb 15, 2015 at 11:49 AM, Spyridon (Spyros) Mastorakis < > spiros.mastorakis at gmail.com> wrote: > > > > Hello, > > > > > > > > in order to get the cache hit/miss ratio in the desired format, you > will need either to modify the implementation of the CS directly or the > implementation of the cs tracer in order to return the desired parameter. > > > > > > > > For the other thing about the exclusions, Alex asked you to define > more precisely the term ?number of exclusions?. I would like to ask the > same thing in order to really understand your question and be able to > answer it. > > > > > > > > -- > > > > Spyridon (Spyros) Mastorakis > > > > Personal Website: http://cs.ucla.edu/~mastorakis/ > > > > Internet Research Laboratory > > > > PhD Computer Science > > > > UCLA > > > > > > > > > > > > > > > > > > > > > On Feb 13, 2015, at 11:08 PM, adithya srinivasan < > adith.ad at gmail.com> wrote: > > > > > > > > > > Hello > > > > > My project involves a basic level security algorithm against cache > poisoning and pollution in NDN. For that I'm in need of the cache hit/miss > ratio and also the exclusions made for a packet in the Content Store of a > node. I've seen programs where the cache hit/miss ratio can be traced using > tracers. But is there any way to obtain the cache hit/miss ratio of a node > at any point of time inside a variable. I can use custom apps to create an > instance for a node and is it possible to get the cache hit/miss ratio in > that app? > > > > > > > > > > Thank you > > > > > Adithya > > > > > _______________________________________________ > > > > > 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 rshebin18 at gmail.com Tue Feb 17 00:45:00 2015 From: rshebin18 at gmail.com (Shebin Roy) Date: Tue, 17 Feb 2015 14:15:00 +0530 Subject: [ndnSIM] Find rate of interests in a face Message-ID: Hello, My project is about mitigating Interest flooding attack. For this, i need to find the rate of incoming interest through each face of the router, do some calculations and decide if to forward the packet or not. For the calculations, i need the PIT table size also. I have heard about tracers. But i need to know the interest rate in real time. I would like to know which file i need to modify to implement my project and also the functions to find the interest rate and the PIT table size. Thank you, Shebin. -------------- next part -------------- An HTML attachment was scrubbed... URL: From poschdaniel2 at gmail.com Tue Feb 17 01:05:39 2015 From: poschdaniel2 at gmail.com (Daniel Posch) Date: Tue, 17 Feb 2015 10:05:39 +0100 Subject: [ndnSIM] Implementing Interest Limits in ndnSIM2.0 In-Reply-To: References: <54E1F0E5.2040206@gmail.com> Message-ID: <54E30463.3090304@gmail.com> Dear Alex, thanks for your reply. I actually use only a single strategy and I was trying to achieve what you suggested. I have found a possibility to get access to the link capacity property of a nfd::Face, if it is actually a ns3::ndn::NetDeviceFace. It is kind of a hack, however, it works: uint64_t getPhysicalBitrate(shared_ptr< Face > face) { if(ns3::ndn::NetDeviceFace *netf = dynamic_cast(&(*face))) { //-256 because 0-255 is reserved by ndn local/app faces; ns3::Ptr nd1 = netf->GetNetDevice()->GetNode ()->GetDevice(netf->getId () - 256)->GetObject(); ns3::DataRateValue dv; nd1->GetAttribute("DataRate", dv); ns3::DataRate d = dv.Get(); return d.GetBitRate(); } else { return ULONG_MAX; } } Best regards, Daniel On 02/16/2015 09:09 PM, Alex Afanasyev wrote: > Hi Daniel, > > Link capacity is not really a property of nfd::Face. It can be property of ndn::NetDeviceFace, but even with it it really depends on which specific underlying NetDevice is used. > > In 1.0, this worked only for point-to-point links and the capacity was obtained during the construction stage in StackHelper and then it was used to initialize Limits object aggregated on the face by the strategy. In 2.0, we still can obtain the capacity during the construction, however there is no longer an assumption that there is only one strategy for NDN node (which was true in 1.0). The question (and the reason it is currently not implemented) where and how to store Limits object on the face. > > If you're ok with just one strategy per node, you can make a hack and store map of Face->Limits objects on "/" measurement entry of FIB. May be you can come up with a better place.. > > -- > Alex > > >> On Feb 16, 2015, at 5:30 AM, Daniel Posch wrote: >> >> Dear all, >> >> I am trying to re-implement a feature called "Interest Limits", which was available in ndnSIM1.0. >> Its basically a Token Bucket Filter that can be installed on Faces to limited the rate of outgoing Interests. >> >> However, I can't find a way to retrieve the link capacities of a nfd::Face. Am I correct that this information is not provided by the class nfd::Face and therefore an implementation of "Interest Limits" is not possible within ndnSIM2.0? >> >> Best regards, >> Daniel > From christian.kreuzberger at itec.aau.at Tue Feb 17 08:00:16 2015 From: christian.kreuzberger at itec.aau.at (Christian Kreuzberger) Date: Tue, 17 Feb 2015 17:00:16 +0100 Subject: [ndnSIM] shortestpath poblem In-Reply-To: <1B24D225-66A3-4A9A-AE5B-C4C650BEFF6C@gmail.com> References: <1423998254.56111.YahooMailBasic@web172101.mail.ir2.yahoo.com> <1B24D225-66A3-4A9A-AE5B-C4C650BEFF6C@gmail.com> Message-ID: <8204916a9ef7cb4b88dd5334d415a559@itec.aau.at> Hi, I have a similar problem with version 2.0. CalculateAllPossibleRoutes() crashes - I have about 300 nodes, a single prefix (/prefix) and several content providers (about 5-10) that host /prefix. I will try to create an example scenario to reproduce the problem ASAP. Best Regards, Christian On 2015-02-16 08:40, Spyridon (Spyros) Mastorakis wrote: > Hello, > > the FibHelper is not available in ndnSIM 1.0. I would suggest that you > update to the new version if you want to use it. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > >> On Feb 15, 2015, at 3:04 AM, narjes aloulou >> wrote: >> >> Hi, >> >> I test it with the optimised mode, but it did'nt work. Can I use the >> FibHelper from 1.0 version? >> >> Thanks for your Help >> >> Best Regards >> >> -------------------------------------------- >> En date de : Jeu 12.2.15, Alex Afanasyev >> a ?crit : >> >> Objet: Re: [ndnSIM] shortestpath poblem >> ?: "narjes aloulou" >> Cc: ndnsim at lists.cs.ucla.edu >> Date: Jeudi 12 f?vrier 2015, 7h05 >> >> Double check that you >> have build NS-3/ndnSIM in optimized mode. Implementation >> of CalculateRoutes internally uses Dijkstra algorithm from >> Boost graph library (which is known to be extremely slow in >> debug mode). It should be a problem for this number of >> prefixes and nodes. >> >> If >> still fails, you can compute all routes and prefixes offline >> and install them directly using FibHelper. >> >> -- >> Alex >> >>> On Feb 11, 2015, at 4:55 PM, narjes >> aloulou >> wrote: >>> >>> Hi, >>> >>> Considering a large >> catalog (10? prefixes), >> "ndnGlobalRoutingHelper.CalculateRoutes ()" >> creates an infinite loop and crashes the system. My scenario >> consists of 300 nodes and I use ndnSIM 1.0. >>> >>> Any solution to >> resolve this problem , please? >>> Are >> there any way to use ShortestPath without using the >> ndnGlobalRoutingHelper ? >>> >>> >>> Best Regards >> >> >> _______________________________________________ >> 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 From spiros.mastorakis at gmail.com Tue Feb 17 08:49:01 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Tue, 17 Feb 2015 08:49:01 -0800 Subject: [ndnSIM] How to get cache hit/miss ratio in a variable? In-Reply-To: References: <698C7964-1762-404B-A019-2D577D8013ED@gmail.com> <3C82FE39-CE05-4B7A-8434-14775F1A914F@gmail.com> <69DECF54-9A9B-4C89-82CC-7C0D58AE8E43@gmail.com> Message-ID: Hello, it is commented, because this is not the right way to remove an entry from the CS in NDN. The right way to do that is via the Freshness period. If you really want to do that though, you need to use the iterator. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 17, 2015, at 12:41 AM, adithya srinivasan wrote: > > Hi > Thank you. I will experiment further with exclusions. Btw is there any function to remove certain entries from the content store manually?I can use iterators to search the content store and I want a particular element to be removed from the CS. There was one function remove entry but it was commented out by default and was not implemented in the content-store-impl.cc > Thank you > From gibson at cisco.com Tue Feb 17 11:02:47 2015 From: gibson at cisco.com (Jim Gibson) Date: Tue, 17 Feb 2015 14:02:47 -0500 Subject: [ndnSIM] Is the version 2.0 really stable? Is it encouraged to upgrade to version 2.0? In-Reply-To: <8F7D9F06-932D-4405-BFED-009DF8949A29@gmail.com> Message-ID: <28531.1424199767@bxb-ads-020> > the new version of the simulator is fully stable and you are encouraged to install it, because it provides the features of all the recent advancements of NDN research. > > All issues have been resolved a long time ago as you can see here: > > http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-January/001519.html A timely thread -- I tried an install of ndnSim2.0 yesterday and once I found a combination that built, tried a few examples that are running fine, so the above so far seems essentially true. But, following the install instructions, I got build errors from ns-3/waf until I backed off the most recent commit to ndn-cxx and also the most recent commit to ns-3/src/ndnSim. This is my first interaction with the ndn code: no prior experience with simulator or path, so maybe I missed something. Is there some documented stability point that I overlooked and I'm accidentally on bleeding edge code, or is this a hiccup in the continuous integration model or something else going on or just expected rough edges? [If specifics are of interest, I needed to back off from the commits marked -> to the commits marked *>, to fix build errors, with a couple of examples shown.] Cheers, --Jim ndnSIM/ndn-cxx > bash git log origin/master --format=fuller | more -> commit c759a20046bce82a83c7956d3a28739b0be1f982 > Author: Jiewen Tan > AuthorDate: Thu Jan 29 23:31:09 2015 -0800 > Commit: Alex Afanasyev > CommitDate: Mon Feb 16 11:39:47 2015 -0800 > > management: add CachingPolicy to LocalControlHeader > > Breaks: NFD:commit:9cfeecaa2ffad1a1be79aed2321dcc7d042ecc5f > Breaks: ndnSIM:commit:ffe2586cfc466935c0632a5a64384f0fda709086 > > Change-Id: Idcce2b7ee9be31b55f9ec16c17e915d93974bff4 > Refs: #2183 > *> commit 190bee2f7df5578718bac83af07b3591a2b8d9fa > Author: Junxiao Shi > AuthorDate: Sat Feb 14 19:21:36 2015 -0700 > Commit: Junxiao Shi > CommitDate: Mon Feb 16 10:42:53 2015 -0800 ns-3/src/ndnSim -> commit 8f5a99d521618721ad210e86c867a89379bb1f97 > Author: Alexander Afanasyev > Date: Fri Feb 13 15:07:06 2015 -0800 > > NFD: Update code to work with updated LocalControlHeader > implementation > > Change-Id: Iafd62348ee1f09f256d54152ce7274cf24d5b9f9 > Refs: #2183 > *> commit ffe2586cfc466935c0632a5a64384f0fda709086 > Author: Spyridon Mastorakis > Date: Tue Feb 3 16:21:28 2015 -0800 > > docs: Adding references to the new TR > > Change-Id: I5235462cad6f01751bcd5141b2c3e14585d5baf3 Sample build errors for each change: Fixed by backing off the most recent ndn-cxx commit > > cxx: examples/tutorial/second.cc -> > build/examples/tutorial/second.cc.3.o > In file included from ./ns3/ndnSIM/model/ndn-app-face.hpp:24:0, > from ../src/ndnSIM/apps/ndn-app.hpp:24, > from ../src/ndnSIM/apps/ndn-consumer.hpp:25, > from ../src/ndnSIM/apps/ndn-consumer-window.hpp:25, > from ../src/ndnSIM/apps/ndn-consumer-window.cpp:20: > ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool > nfd::LocalFace::decodeAndDispatchInput(const ndn::Block&)?: > ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:88: error: no matching > function for call to ?ndn::nfd::LocalControlHeader::wireDecode(const > ndn::Block&, bool, bool)? > this->isLocalControlHeaderEnabled(LOCAL_CONTROL_FEATURE_NEXT_HOP_FACE_ID)); > ^ > ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:88: note: candidate is: > In file included from /usr/local/include/ndn-cxx/interest.hpp:30:0, > from ./ns3/ndnSIM/model/ndn-common.hpp:28, > from ../src/ndnSIM/apps/ndn-consumer-window.hpp:23, > from ../src/ndnSIM/apps/ndn-consumer-window.cpp:20: > /usr/local/include/ndn-cxx/management/nfd-local-control-header.hpp > :265:1: note: void ndn::nfd::LocalControlHeader::wireDecode(const > ndn::Block&, uint8_t) > LocalControlHeader::wireDecode(const Block& wire, uint8_t encodeMask) > ^ > /usr/local/include/ndn-cxx/management/nfd-local-control-header.hpp:265:1: > note: candidate expects 2 arguments, 3 provided Fixed by backing off the most recent ns-3/src/ndnSim commit > [1879/2449] cxx:src/ndnSIM/examples/ndn-simple-with-content-freshness/one-interest-requester.cpp -> build/src/ndnSIM/examples/ndn-simple-with-content-freshness/one-interest-requester.cpp.13.o > In file included from ./ns3/ndnSIM/model/ndn-app-face.hpp:24:0, > from ./ns3/ndnSIM/apps/ndn-app.hpp:24, > from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.hpp:25, > from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp:22: > ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool nfd::Local Face::decodeAndDispatchInput(const ndn::Block&)?: > ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:23: error: ?ENCODE_NEXT_HOP? is not a member of ?ndn::nfd::LocalControlHeader? > mask |= ndn::nfd::LocalControlHeader::ENCODE_NEXT_HOP; > ^ > ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool nfd::Local Face::isEmptyFilteredLocalControlHeader(const ndn::nfd::LocalControlHeader&) con st?: > ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:199:13: error: ?ENCODE_INCOMING_FACE _ID? is not a member of ?ndn::nfd::LocalControlHeader? mask |= ndn::nfd::LocalControlHeader::ENCODE_INCOMING_FACE_ID; > From: "Spyridon (Spyros) Mastorakis" Date: Mon, 16 Feb 2015 10:50:38 -0800 To: Kanin Assantachai CC: Subject: Re: [ndnSIM] Is the version 2.0 really stable? Is it encouraged to upgrade to version 2.0? Sender: ndnSIM Hello, the new version of the simulator is fully stable and you are encouraged to install it, because it provides the features of all the recent advancements of NDN research. All issues have been resolved a long time ago as you can see here: http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-January/001519.html -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 16, 2015, at 1:50 AM, Kanin Assantachai wrote: > > Hello all, > > Originally I wanted to include this question into the email I just sent a moment ago, but I realized that this question might benefit other people too. So I have decided to make a new thread for this question. > > After I have read through archived emails from January 2015 onwards, I saw a lot of emails reporting problems of compiling the new version of simulator. So I would like to ask if the current new version is stable already? Since my project is still at the beginning stage, it is fine for me to uninstall the previous version and install the new version from scratch. However for other people who have been working with the old version for a long time, they might have problems performing fresh install (to avoid errors from version mismatch between ndnSIM and ns-3, etc). Is it encouraged to upgrade to new version as soon as possible, or is it better to wait for this new version to be even more stable first? Thank you for your responses in advance. > > Kanin > _______________________________________________ > 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 From spiros.mastorakis at gmail.com Tue Feb 17 11:22:31 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Tue, 17 Feb 2015 11:22:31 -0800 Subject: [ndnSIM] Is the version 2.0 really stable? Is it encouraged to upgrade to version 2.0? In-Reply-To: <28531.1424199767@bxb-ads-020> References: <28531.1424199767@bxb-ads-020> Message-ID: <05F6C01D-6E48-4022-B369-460C88A3070D@gmail.com> Hello, I installed the simulator yesterday evening in my machine with the latest commits for ndn-cxx and ndnSIM and I did not have any problems (OS X 10.10.2). To my best knowledge, there are no stability issues. The code is stable and the instructions online are accurate. For the specific commit that you are talking about, you can take a look here: http://gerrit.named-data.net/#/c/1765/ http://jenkins.named-data.net/job/ndnSIM/37/ ndnSIM compiled successfully to all the platforms with the latest commits for both ndn-cxx and ndnSIM. Please let me know about the operating system that you are using and make sure that you do not have multiple versions of ndn-cxx installed, so that a previous version is possibly used. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 17, 2015, at 11:02 AM, Jim Gibson wrote: > > >> the new version of the simulator is fully stable and you are encouraged to install it, because it provides the features of all the recent advancements of NDN research. >> >> All issues have been resolved a long time ago as you can see here: >> >> http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-January/001519.html > > A timely thread -- I tried an install of ndnSim2.0 yesterday and once I > found a combination that built, tried a few examples that are running > fine, so the above so far seems essentially true. But, following the > install instructions, I got build errors from ns-3/waf until I backed > off the most recent commit to ndn-cxx and also the most recent commit to > ns-3/src/ndnSim. > > This is my first interaction with the ndn code: no prior experience with > simulator or path, so maybe I missed something. Is there some documented > stability point that I overlooked and I'm accidentally on bleeding edge > code, or is this a hiccup in the continuous integration model or > something else going on or just expected rough edges? > > [If specifics are of interest, I needed to back off from the commits > marked -> to the commits marked *>, to fix build errors, with a couple > of examples shown.] > > Cheers, > --Jim > > ndnSIM/ndn-cxx >> bash git log origin/master --format=fuller | more > -> commit c759a20046bce82a83c7956d3a28739b0be1f982 >> Author: Jiewen Tan >> AuthorDate: Thu Jan 29 23:31:09 2015 -0800 >> Commit: Alex Afanasyev >> CommitDate: Mon Feb 16 11:39:47 2015 -0800 >> >> management: add CachingPolicy to LocalControlHeader >> >> Breaks: NFD:commit:9cfeecaa2ffad1a1be79aed2321dcc7d042ecc5f >> Breaks: ndnSIM:commit:ffe2586cfc466935c0632a5a64384f0fda709086 >> >> Change-Id: Idcce2b7ee9be31b55f9ec16c17e915d93974bff4 >> Refs: #2183 >> > *> commit 190bee2f7df5578718bac83af07b3591a2b8d9fa >> Author: Junxiao Shi >> AuthorDate: Sat Feb 14 19:21:36 2015 -0700 >> Commit: Junxiao Shi >> CommitDate: Mon Feb 16 10:42:53 2015 -0800 > > > ns-3/src/ndnSim > -> commit 8f5a99d521618721ad210e86c867a89379bb1f97 >> Author: Alexander Afanasyev >> Date: Fri Feb 13 15:07:06 2015 -0800 >> >> NFD: Update code to work with updated LocalControlHeader >> implementation >> >> Change-Id: Iafd62348ee1f09f256d54152ce7274cf24d5b9f9 >> Refs: #2183 >> > *> commit ffe2586cfc466935c0632a5a64384f0fda709086 >> Author: Spyridon Mastorakis >> Date: Tue Feb 3 16:21:28 2015 -0800 >> >> docs: Adding references to the new TR >> >> Change-Id: I5235462cad6f01751bcd5141b2c3e14585d5baf3 > > > Sample build errors for each change: > > Fixed by backing off the most recent ndn-cxx commit >> >> cxx: examples/tutorial/second.cc -> >> build/examples/tutorial/second.cc.3.o >> In file included from ./ns3/ndnSIM/model/ndn-app-face.hpp:24:0, >> from ../src/ndnSIM/apps/ndn-app.hpp:24, >> from ../src/ndnSIM/apps/ndn-consumer.hpp:25, >> from ../src/ndnSIM/apps/ndn-consumer-window.hpp:25, >> from ../src/ndnSIM/apps/ndn-consumer-window.cpp:20: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool >> nfd::LocalFace::decodeAndDispatchInput(const ndn::Block&)?: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:88: error: no matching >> function for call to ?ndn::nfd::LocalControlHeader::wireDecode(const >> ndn::Block&, bool, bool)? >> this->isLocalControlHeaderEnabled(LOCAL_CONTROL_FEATURE_NEXT_HOP_FACE_ID)); >> ^ >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:88: note: candidate is: >> In file included from /usr/local/include/ndn-cxx/interest.hpp:30:0, >> from ./ns3/ndnSIM/model/ndn-common.hpp:28, >> from ../src/ndnSIM/apps/ndn-consumer-window.hpp:23, >> from ../src/ndnSIM/apps/ndn-consumer-window.cpp:20: >> /usr/local/include/ndn-cxx/management/nfd-local-control-header.hpp >> :265:1: note: void ndn::nfd::LocalControlHeader::wireDecode(const >> ndn::Block&, uint8_t) >> LocalControlHeader::wireDecode(const Block& wire, uint8_t encodeMask) >> ^ >> /usr/local/include/ndn-cxx/management/nfd-local-control-header.hpp:265:1: >> note: candidate expects 2 arguments, 3 provided > > Fixed by backing off the most recent ns-3/src/ndnSim commit > >> [1879/2449] cxx:src/ndnSIM/examples/ndn-simple-with-content-freshness/one-interest-requester.cpp -> build/src/ndnSIM/examples/ndn-simple-with-content-freshness/one-interest-requester.cpp.13.o >> In file included from ./ns3/ndnSIM/model/ndn-app-face.hpp:24:0, >> from ./ns3/ndnSIM/apps/ndn-app.hpp:24, >> from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.hpp:25, >> from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp:22: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool nfd::Local Face::decodeAndDispatchInput(const ndn::Block&)?: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:23: error: ?ENCODE_NEXT_HOP? is not a member of ?ndn::nfd::LocalControlHeader? >> mask |= ndn::nfd::LocalControlHeader::ENCODE_NEXT_HOP; >> ^ >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool nfd::Local Face::isEmptyFilteredLocalControlHeader(const ndn::nfd::LocalControlHeader&) con st?: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:199:13: error: ?ENCODE_INCOMING_FACE _ID? is not a member of ?ndn::nfd::LocalControlHeader? mask |= ndn::nfd::LocalControlHeader::ENCODE_INCOMING_FACE_ID; >> > From spiros.mastorakis at gmail.com Tue Feb 17 23:54:16 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Tue, 17 Feb 2015 23:54:16 -0800 Subject: [ndnSIM] Find rate of interests in a face In-Reply-To: References: Message-ID: Hello, for the PIT table size you can use the size method of the PIT class: http://ndnsim.net/2.0/doxygen/classnfd_1_1Pit.html#abfb7bf627d26f0b23e7e9de2ca16965f For the interest rate you will need to modify the ndn-l3-rate-tracer files: http://ndnsim.net/2.0/doxygen/ndn-l3-rate-tracer_8cpp.html To get the real time you can use the method now of either the steady_clock or the system_clock class of ndn-cxx. Personally, I would suggest to use the steady_clock class, because it represents a monotonic clock: http://named-data.net/doc/ndn-cxx/current/doxygen/d6/d75/classndn_1_1time_1_1steady__clock.html http://named-data.net/doc/ndn-cxx/current/doxygen/d3/d44/classndn_1_1time_1_1system__clock.html -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 17, 2015, at 12:45 AM, Shebin Roy wrote: > > Hello, > > My project is about mitigating Interest flooding attack. For this, i need to find the rate of incoming interest through each face of the router, do some calculations and decide if to forward the packet or not. For the calculations, i need the PIT table size also. I have heard about tracers. But i need to know the interest rate in real time. I would like to know which file i need to modify to implement my project and also the functions to find the interest rate and the PIT table size. > > Thank you, > Shebin. > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From christian.kreuzberger at itec.aau.at Wed Feb 18 01:02:31 2015 From: christian.kreuzberger at itec.aau.at (Christian Kreuzberger) Date: Wed, 18 Feb 2015 10:02:31 +0100 Subject: [ndnSIM] High Memory Usage & Potential Memory Leaks Message-ID: <003201d04b59$a11ba360$e352ea20$@itec.aau.at> Hi, using the latest version of ndnSIM and ndn-cxx, I've noticed a rather high memory usage (several gigabytes, with content store set to 1 packet) in simulations involving plenty of interests and data packets. So I've compiled ndnSIM in debug mode and started the ndn-simple example (from scratch directory) with valgrind active, here is the summary of the output. ./waf --command-template="valgrind --leak-check=full --show-reachable=yes %s" --run ndn-simple ==9678== 1,738,712 (408 direct, 1,738,304 indirect) bytes in 3 blocks are definitely lost in loss record 448 of 448 ==9678== at 0x4C2B0E0: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==9678== by 0x5AD027F: ns3::Ptr ns3::CreateObject() (object.h:423) ==9678== by 0xD9C8CFA: ns3::NodeContainer::Create(unsigned int) (node-container.cc:137) ==9678== by 0x41C856: ns3::main(int, char**) (ndn-simple.cc:63) ==9678== by 0x41D2D7: main (ndn-simple.cc:107) ==9678== ==9678== LEAK SUMMARY: ==9678== definitely lost: 408 bytes in 3 blocks ==9678== indirectly lost: 1,738,304 bytes in 8,257 blocks ==9678== possibly lost: 98 bytes in 3 blocks ==9678== still reachable: 656 bytes in 33 blocks ==9678== suppressed: 0 bytes in 0 blocks At first, this looks like that the memory lost is only when creating a node, which is not good, but would be "okay" for simulations. But when you dig deeper into the generated output of valgrind, you will find that the problem is caused by several allocations about packets, regular expressions, skiplists in content store, etc. I'm not an expert in that field, but I thought it is worth mentioning on the mailing list. Example of the most important ones: ==9806== 238,400 bytes in 200 blocks are indirectly lost in loss record 447 of 448 ==9806== at 0x4C2B0E0: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==9806== by 0x8DE20A2: __gnu_cxx::new_allocator, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (new_allocator.h:104) ==9806== by 0x8DE1D3D: std::allocator_traits, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) (alloc_traits.h:351) ==9806== by 0x8DE18E7: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count>(std::_Sp_make_shared_tag, ndn::Data*, std::allocator const&) (shared_ptr_base.h:499) ==9806== by 0x8DE138D: std::__shared_ptr::__shared_ptr>(std::_S p_make_shared_tag, std::allocator const&) (shared_ptr_base.h:957) ==9806== by 0x8DE0B6B: std::shared_ptr::shared_ptr>(std::_Sp_m ake_shared_tag, std::allocator const&) (shared_ptr.h:316) ==9806== by 0x8DDFC5B: std::shared_ptr std::allocate_shared>(std::allocator const&) (shared_ptr.h:598) ==9806== by 0x8DDF103: std::shared_ptr std::make_shared() (shared_ptr.h:614) ==9806== by 0x8FD6B9C: ns3::ndn::PacketHeader::Deserialize(ns3::Buffer::Iterator) (ndn-header.cpp:120) ==9806== by 0xD912BAA: ns3::Packet::RemoveHeader(ns3::Header&) (packet.cc:290) ==9806== by 0x8FF2F53: std::shared_ptr ns3::ndn::Convert::FromPacket(ns3::Ptr) (ndn-ns3.cpp:37) ==9806== by 0x8FF18DD: ns3::ndn::NetDeviceFace::receiveFromNetDevice(ns3::Ptr, ns3::Ptr, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType) (ndn-net-device-face.cpp:130) ==9806== ==9806== 216,879 bytes in 201 blocks are indirectly lost in loss record 446 of 448 ==9806== at 0x4C2B800: operator new[](unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==9806== by 0xD8E7074: ns3::Buffer::Allocate(unsigned int) (buffer.cc:172) ==9806== by 0xD8E6D93: ns3::Buffer::Create(unsigned int) (buffer.cc:141) ==9806== by 0xD8E8666: ns3::Buffer::AddAtStart(unsigned int) (buffer.cc:331) ==9806== by 0xD912A53: ns3::Packet::AddHeader(ns3::Header const&) (packet.cc:278) ==9806== by 0xAD8A64A: ns3::PointToPointNetDevice::AddHeader(ns3::Ptr, unsigned short) (point-to-point-net-device.cc:167) ==9806== by 0xAD8E466: ns3::PointToPointNetDevice::Send(ns3::Ptr, ns3::Address const&, unsigned short) (point-to-point-net-device.cc:502) ==9806== by 0x8FF10E5: ns3::ndn::NetDeviceFace::send(ns3::Ptr) (ndn-net-device-face.cpp:89) ==9806== by 0x8FF150C: ns3::ndn::NetDeviceFace::sendData(ndn::Data const&) (ndn-net-device-face.cpp:111) ==9806== by 0x8DF6F06: nfd::Forwarder::onOutgoingData(ndn::Data const&, nfd::Face&) (forwarder.cpp:377) ==9806== by 0x8DF6455: nfd::Forwarder::onIncomingData(nfd::Face&, ndn::Data const&) (forwarder.cpp:333) ==9806== by 0x8DEDA96: nfd::Forwarder::onData(nfd::Face&, ndn::Data const&) (forwarder.hpp:263) ==9806== The valgrind output is rather long, I suggest you try generating it by yourself. I'm using Ubuntu 14.04, if that matters. I'm not after chasing every single memory leak, though if it involves packets/packet based structures, there might be an issue with ndnSIM or even NFD, that could affect the testbed aswell. In addition, I've tested ndn-simple with Frequency set to other values instead of 10, here is the resulting output: http://pastebin.com/0PZw40bk I don't think that roughly 1.6 MegaBytes of memory lost is a big deal, though given the size of the simulation and the number of interests transmitted, it might become a problem with larger simulations. I'm also not sure if this memory leaks is a result from lost packets or interests that were sent during the last millisecond of the simulation. Anyway, I hope this post helps to find and reduce some memory leaks. Best regards, Christian -------------- next part -------------- An HTML attachment was scrubbed... URL: From gibson at cisco.com Wed Feb 18 04:43:48 2015 From: gibson at cisco.com (Jim Gibson) Date: Wed, 18 Feb 2015 07:43:48 -0500 Subject: [ndnSIM] Is the version 2.0 really stable? Is it encouraged to upgrade to version 2.0? In-Reply-To: <05F6C01D-6E48-4022-B369-460C88A3070D@gmail.com> Message-ID: <6204.1424263428@bxb-ads-020> Hi, Okay, your message helped a lot. - I'm running Ubuntu 14.04.01 LTS x86_64, sorry I left that out though I don't think it matters. - I repeated the install today on a clean system and ns-3/ndnSIM compiled successfully, good! - I went back to try to understand what happened on my install attempt. My suspicion is that the git repos had a period of mutual inconsistency on Monday (2/16) and I had the bad luck to start my install during that time. (Or maybe it's pilot error and I should just be happy the install is working now. But it was enough of a time sink that I'm curious if my analysis is right, so I'm including the details below.) Thanks, --Jim Details: - You pointed me at gerrit and jenkins for one of the changes I was talking about, 1765. - I also mentioned another commit. Looks like it is 1763. i.e. both of these are of interest. http://gerrit.named-data.net/#/c/1763/ [ndn-cxx change] http://gerrit.named-data.net/#/c/1765/ [ndnSIM change] - Both these changes (along with 1764) reference redmine #2183, so are related. One of the comments for 1763 at the above url says "this breaks NFD and ndnSIM. Merging needs to be synchronized" I think this means that either change without the other will cause build failure: successful build requires both or neither. And so the two changes should be made available "at the same time". - Looks as if someone (like me) pulling the repos sees a new change as of the time where the gerrit event log for the change (at the above urls) records the event "Change has been successfully merged into the git repository." [I'm quite new to the git/gerrit workflow so that's a bit of a guess.] Okay, assuming gerrit merge time is what matters, gerrit shows these merge times for the changes of interest. 1763: Change has been successfully merged..., Feb 16 4:14 PM 1765: Change has been successfully merged..., Feb 16 5:27 PM That's a gap of 73 minutes and I think the times are in EST (hope so since the sequence below depends on it). - Best I can reconstruct... - my install effort began in that gap (don't have logs for the install, but the logs for the apt-gets of the packages required by ndn-cxx are around there). So my initial snapshot of the git repos had 1763 but not 1765. The ns-3/ndnSIM build thus failed (with argument count mismatch error). - I decided to back off 1763 from ndn-cxx, which was reasonable and would have produced a successful build, but also scrubbed my install to get a clean ns-3/ndnSIM build and enough time had passed that my new ns-3/ndnSIM now included 1765:( So the new build now had 1765 but not 1763 and thus also failed (with the ENCODE_NEXT_HOP undefined failure seen in http://jenkins.named-data.net/job/ndnSIM/36/, prior to the successful jenkins run 37 you pointed me at) - I backed off 1765 and that build succeeded. In the event the analysis is right, don't know if there's a way to shrink the window further or to 0, Also, as far as I can tell, there's no git command I could have run that might have called to my attention to the fact that the heads of these two repos were changing while I was using them. The dates shown by "git log" are not when gerrit makes the changes available to me in the public repo (and in this case, the Author date for 1763, which is what git log shows by default, was back in January, which was another subtlety I learned about on this exploration.) Subject: Re: [ndnSIM] Is the version 2.0 really stable? Is it encouraged to upgrade to version 2.0? From: "Spyridon (Spyros) Mastorakis" Date: Tue, 17 Feb 2015 11:22:31 -0800 CC: To: Jim Gibson Hello, I installed the simulator yesterday evening in my machine with the latest commits for ndn-cxx and ndnSIM and I did not have any problems (OS X 10.10.2). To my best knowledge, there are no stability issues. The code is stable and the instructions online are accurate. For the specific commit that you are talking about, you can take a look here: http://gerrit.named-data.net/#/c/1765/ http://jenkins.named-data.net/job/ndnSIM/37/ ndnSIM compiled successfully to all the platforms with the latest commits for both ndn-cxx and ndnSIM. Please let me know about the operating system that you are using and make sure that you do not have multiple versions of ndn-cxx installed, so that a previous version is possibly used. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 17, 2015, at 11:02 AM, Jim Gibson wrote: > > >> the new version of the simulator is fully stable and you are encouraged to install it, because it provides the features of all the recent advancements of NDN research. >> >> All issues have been resolved a long time ago as you can see here: >> >> http://www.lists.cs.ucla.edu/pipermail/ndnsim/2015-January/001519.html > > A timely thread -- I tried an install of ndnSim2.0 yesterday and once I > found a combination that built, tried a few examples that are running > fine, so the above so far seems essentially true. But, following the > install instructions, I got build errors from ns-3/waf until I backed > off the most recent commit to ndn-cxx and also the most recent commit to > ns-3/src/ndnSim. > > This is my first interaction with the ndn code: no prior experience with > simulator or path, so maybe I missed something. Is there some documented > stability point that I overlooked and I'm accidentally on bleeding edge > code, or is this a hiccup in the continuous integration model or > something else going on or just expected rough edges? > > [If specifics are of interest, I needed to back off from the commits > marked -> to the commits marked *>, to fix build errors, with a couple > of examples shown.] > > Cheers, > --Jim > > ndnSIM/ndn-cxx >> bash git log origin/master --format=fuller | more > -> commit c759a20046bce82a83c7956d3a28739b0be1f982 >> Author: Jiewen Tan >> AuthorDate: Thu Jan 29 23:31:09 2015 -0800 >> Commit: Alex Afanasyev >> CommitDate: Mon Feb 16 11:39:47 2015 -0800 >> >> management: add CachingPolicy to LocalControlHeader >> >> Breaks: NFD:commit:9cfeecaa2ffad1a1be79aed2321dcc7d042ecc5f >> Breaks: ndnSIM:commit:ffe2586cfc466935c0632a5a64384f0fda709086 >> >> Change-Id: Idcce2b7ee9be31b55f9ec16c17e915d93974bff4 >> Refs: #2183 >> > *> commit 190bee2f7df5578718bac83af07b3591a2b8d9fa >> Author: Junxiao Shi >> AuthorDate: Sat Feb 14 19:21:36 2015 -0700 >> Commit: Junxiao Shi >> CommitDate: Mon Feb 16 10:42:53 2015 -0800 > > > ns-3/src/ndnSim > -> commit 8f5a99d521618721ad210e86c867a89379bb1f97 >> Author: Alexander Afanasyev >> Date: Fri Feb 13 15:07:06 2015 -0800 >> >> NFD: Update code to work with updated LocalControlHeader >> implementation >> >> Change-Id: Iafd62348ee1f09f256d54152ce7274cf24d5b9f9 >> Refs: #2183 >> > *> commit ffe2586cfc466935c0632a5a64384f0fda709086 >> Author: Spyridon Mastorakis >> Date: Tue Feb 3 16:21:28 2015 -0800 >> >> docs: Adding references to the new TR >> >> Change-Id: I5235462cad6f01751bcd5141b2c3e14585d5baf3 > > > Sample build errors for each change: > > Fixed by backing off the most recent ndn-cxx commit >> >> cxx: examples/tutorial/second.cc -> >> build/examples/tutorial/second.cc.3.o >> In file included from ./ns3/ndnSIM/model/ndn-app-face.hpp:24:0, >> from ../src/ndnSIM/apps/ndn-app.hpp:24, >> from ../src/ndnSIM/apps/ndn-consumer.hpp:25, >> from ../src/ndnSIM/apps/ndn-consumer-window.hpp:25, >> from ../src/ndnSIM/apps/ndn-consumer-window.cpp:20: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool >> nfd::LocalFace::decodeAndDispatchInput(const ndn::Block&)?: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:88: error: no matching >> function for call to ?ndn::nfd::LocalControlHeader::wireDecode(const >> ndn::Block&, bool, bool)? >> this->isLocalControlHeaderEnabled(LOCAL_CONTROL_FEATURE_NEXT_HOP_FACE_ID)); >> ^ >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:88: note: candidate is: >> In file included from /usr/local/include/ndn-cxx/interest.hpp:30:0, >> from ./ns3/ndnSIM/model/ndn-common.hpp:28, >> from ../src/ndnSIM/apps/ndn-consumer-window.hpp:23, >> from ../src/ndnSIM/apps/ndn-consumer-window.cpp:20: >> /usr/local/include/ndn-cxx/management/nfd-local-control-header.hpp >> :265:1: note: void ndn::nfd::LocalControlHeader::wireDecode(const >> ndn::Block&, uint8_t) >> LocalControlHeader::wireDecode(const Block& wire, uint8_t encodeMask) >> ^ >> /usr/local/include/ndn-cxx/management/nfd-local-control-header.hpp:265:1: >> note: candidate expects 2 arguments, 3 provided > > Fixed by backing off the most recent ns-3/src/ndnSim commit > >> [1879/2449] cxx:src/ndnSIM/examples/ndn-simple-with-content-freshness/one-interest-requester.cpp -> build/src/ndnSIM/examples/ndn-simple-with-content-freshness/one-interest-requester.cpp.13.o >> In file included from ./ns3/ndnSIM/model/ndn-app-face.hpp:24:0, >> from ./ns3/ndnSIM/apps/ndn-app.hpp:24, >> from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.hpp:25, >> from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp:22: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool nfd::Local Face::decodeAndDispatchInput(const ndn::Block&)?: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:23: error: ?ENCODE_NEXT_HOP? is not a member of ?ndn::nfd::LocalControlHeader? >> mask |= ndn::nfd::LocalControlHeader::ENCODE_NEXT_HOP; >> ^ >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool nfd::Local Face::isEmptyFilteredLocalControlHeader(const ndn::nfd::LocalControlHeader&) con st?: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:199:13: error: ?ENCODE_INCOMING_FACE _ID? is not a member of ?ndn::nfd::LocalControlHeader? mask |= ndn::nfd::LocalControlHeader::ENCODE_INCOMING_FACE_ID; >> > From christian.kreuzberger at itec.aau.at Wed Feb 18 05:41:13 2015 From: christian.kreuzberger at itec.aau.at (Christian Kreuzberger) Date: Wed, 18 Feb 2015 14:41:13 +0100 Subject: [ndnSIM] shortestpath poblem In-Reply-To: <8204916a9ef7cb4b88dd5334d415a559@itec.aau.at> References: <1423998254.56111.YahooMailBasic@web172101.mail.ir2.yahoo.com> <1B24D225-66A3-4A9A-AE5B-C4C650BEFF6C@gmail.com> <8204916a9ef7cb4b88dd5334d415a559@itec.aau.at> Message-ID: <005001d04b80$8ffd3ea0$aff7bbe0$@itec.aau.at> Hi, I've tracked my issue with CalculateAllPossibleRoutes down and found a bug in the ndnSIM source of ndn-global-routing-helper.cpp. I've created a redmine ticket and attached a patch for it already: http://redmine.named-data.net/issues/2535 Best regards, Christian > -----Original Message----- > From: ndnSIM [mailto:ndnsim-bounces at lists.cs.ucla.edu] On Behalf Of > Christian Kreuzberger > Sent: Tuesday, February 17, 2015 5:00 PM > To: ndnsim at lists.cs.ucla.edu > Subject: Re: [ndnSIM] shortestpath poblem > > Hi, > > I have a similar problem with version 2.0. > CalculateAllPossibleRoutes() crashes - I have about 300 nodes, a single prefix > (/prefix) and several content providers (about 5-10) that host /prefix. > I will try to create an example scenario to reproduce the problem ASAP. > > > Best Regards, > Christian > > > On 2015-02-16 08:40, Spyridon (Spyros) Mastorakis wrote: > > Hello, > > > > the FibHelper is not available in ndnSIM 1.0. I would suggest that you > > update to the new version if you want to use it. > > > > -- > > Spyridon (Spyros) Mastorakis > > Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research > > Laboratory PhD Computer Science UCLA > > > > > > > > > >> On Feb 15, 2015, at 3:04 AM, narjes aloulou > >> wrote: > >> > >> Hi, > >> > >> I test it with the optimised mode, but it did'nt work. Can I use the > >> FibHelper from 1.0 version? > >> > >> Thanks for your Help > >> > >> Best Regards > >> > >> -------------------------------------------- > >> En date de : Jeu 12.2.15, Alex Afanasyev > >> a ?crit : > >> > >> Objet: Re: [ndnSIM] shortestpath poblem > >> ?: "narjes aloulou" > >> Cc: ndnsim at lists.cs.ucla.edu > >> Date: Jeudi 12 f?vrier 2015, 7h05 > >> > >> Double check that you > >> have build NS-3/ndnSIM in optimized mode. Implementation > >> of CalculateRoutes internally uses Dijkstra algorithm from > >> Boost graph library (which is known to be extremely slow in > >> debug mode). It should be a problem for this number of > >> prefixes and nodes. > >> > >> If > >> still fails, you can compute all routes and prefixes offline > >> and install them directly using FibHelper. > >> > >> -- > >> Alex > >> > >>> On Feb 11, 2015, at 4:55 PM, narjes > >> aloulou > >> wrote: > >>> > >>> Hi, > >>> > >>> Considering a large > >> catalog (10? prefixes), > >> "ndnGlobalRoutingHelper.CalculateRoutes ()" > >> creates an infinite loop and crashes the system. My scenario > >> consists of 300 nodes and I use ndnSIM 1.0. > >>> > >>> Any solution to > >> resolve this problem , please? > >>> Are > >> there any way to use ShortestPath without using the > >> ndnGlobalRoutingHelper ? > >>> > >>> > >>> Best Regards > >> > >> > >> _______________________________________________ > >> 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 From spiros.mastorakis at gmail.com Wed Feb 18 08:37:07 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 18 Feb 2015 08:37:07 -0800 Subject: [ndnSIM] shortestpath poblem In-Reply-To: <005001d04b80$8ffd3ea0$aff7bbe0$@itec.aau.at> References: <1423998254.56111.YahooMailBasic@web172101.mail.ir2.yahoo.com> <1B24D225-66A3-4A9A-AE5B-C4C650BEFF6C@gmail.com> <8204916a9ef7cb4b88dd5334d415a559@itec.aau.at> <005001d04b80$8ffd3ea0$aff7bbe0$@itec.aau.at> Message-ID: <469AEEC7-3642-4B15-B297-D59E71CC41DD@gmail.com> Hello Christian, thank you very much for the bug report. I will review it and proceed appropriately. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 18, 2015, at 5:41 AM, Christian Kreuzberger wrote: > > Hi, > > > I've tracked my issue with CalculateAllPossibleRoutes down and found a bug in the ndnSIM source of ndn-global-routing-helper.cpp. > I've created a redmine ticket and attached a patch for it already: > http://redmine.named-data.net/issues/2535 > > > Best regards, > Christian > >> -----Original Message----- >> From: ndnSIM [mailto:ndnsim-bounces at lists.cs.ucla.edu] On Behalf Of >> Christian Kreuzberger >> Sent: Tuesday, February 17, 2015 5:00 PM >> To: ndnsim at lists.cs.ucla.edu >> Subject: Re: [ndnSIM] shortestpath poblem >> >> Hi, >> >> I have a similar problem with version 2.0. >> CalculateAllPossibleRoutes() crashes - I have about 300 nodes, a single prefix >> (/prefix) and several content providers (about 5-10) that host /prefix. >> I will try to create an example scenario to reproduce the problem ASAP. >> >> >> Best Regards, >> Christian >> >> >> On 2015-02-16 08:40, Spyridon (Spyros) Mastorakis wrote: >>> Hello, >>> >>> the FibHelper is not available in ndnSIM 1.0. I would suggest that you >>> update to the new version if you want to use it. >>> >>> -- >>> Spyridon (Spyros) Mastorakis >>> Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research >>> Laboratory PhD Computer Science UCLA >>> >>> >>> >>> >>>> On Feb 15, 2015, at 3:04 AM, narjes aloulou >>>> wrote: >>>> >>>> Hi, >>>> >>>> I test it with the optimised mode, but it did'nt work. Can I use the >>>> FibHelper from 1.0 version? >>>> >>>> Thanks for your Help >>>> >>>> Best Regards >>>> >>>> -------------------------------------------- >>>> En date de : Jeu 12.2.15, Alex Afanasyev >>>> a ?crit : >>>> >>>> Objet: Re: [ndnSIM] shortestpath poblem >>>> ?: "narjes aloulou" >>>> Cc: ndnsim at lists.cs.ucla.edu >>>> Date: Jeudi 12 f?vrier 2015, 7h05 >>>> >>>> Double check that you >>>> have build NS-3/ndnSIM in optimized mode. Implementation >>>> of CalculateRoutes internally uses Dijkstra algorithm from >>>> Boost graph library (which is known to be extremely slow in >>>> debug mode). It should be a problem for this number of >>>> prefixes and nodes. >>>> >>>> If >>>> still fails, you can compute all routes and prefixes offline >>>> and install them directly using FibHelper. >>>> >>>> -- >>>> Alex >>>> >>>>> On Feb 11, 2015, at 4:55 PM, narjes >>>> aloulou >>>> wrote: >>>>> >>>>> Hi, >>>>> >>>>> Considering a large >>>> catalog (10? prefixes), >>>> "ndnGlobalRoutingHelper.CalculateRoutes ()" >>>> creates an infinite loop and crashes the system. My scenario >>>> consists of 300 nodes and I use ndnSIM 1.0. >>>>> >>>>> Any solution to >>>> resolve this problem , please? >>>>> Are >>>> there any way to use ShortestPath without using the >>>> ndnGlobalRoutingHelper ? >>>>> >>>>> >>>>> Best Regards >>>> >>>> >>>> _______________________________________________ >>>> 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 > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From spiros.mastorakis at gmail.com Wed Feb 18 10:48:15 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 18 Feb 2015 10:48:15 -0800 Subject: [ndnSIM] High Memory Usage & Potential Memory Leaks In-Reply-To: <003201d04b59$a11ba360$e352ea20$@itec.aau.at> References: <003201d04b59$a11ba360$e352ea20$@itec.aau.at> Message-ID: <47B396CD-9DE9-4903-9D55-1649938BCE07@gmail.com> Hello Christian, I created a redmine issue for that in order to figure out what is going on: http://redmine.named-data.net/issues/2538 Thank you -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 18, 2015, at 1:02 AM, Christian Kreuzberger wrote: > > Hi, > > using the latest version of ndnSIM and ndn-cxx, I?ve noticed a rather high memory usage (several gigabytes, with > content store set to 1 packet) in simulations involving plenty of interests and data packets. So I?ve compiled ndnSIM > in debug mode and started the ndn-simple example (from scratch directory) with valgrind active, here is the > summary of the output. > > ./waf --command-template="valgrind --leak-check=full --show-reachable=yes %s" --run ndn-simple > > > ==9678== 1,738,712 (408 direct, 1,738,304 indirect) bytes in 3 blocks are definitely lost in loss record 448 of 448 > ==9678== at 0x4C2B0E0: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) > ==9678== by 0x5AD027F: ns3::Ptr ns3::CreateObject() (object.h:423) > ==9678== by 0xD9C8CFA: ns3::NodeContainer::Create(unsigned int) (node-container.cc:137) > ==9678== by 0x41C856: ns3::main(int, char**) (ndn-simple.cc:63) > ==9678== by 0x41D2D7: main (ndn-simple.cc:107) > ==9678== > ==9678== LEAK SUMMARY: > ==9678== definitely lost: 408 bytes in 3 blocks > ==9678== indirectly lost: 1,738,304 bytes in 8,257 blocks > ==9678== possibly lost: 98 bytes in 3 blocks > ==9678== still reachable: 656 bytes in 33 blocks > ==9678== suppressed: 0 bytes in 0 blocks > > > At first, this looks like that the memory lost is only when creating a node, which is not good, but would be ?okay? for > simulations. But when you dig deeper into the generated output of valgrind, you will find that the problem is caused > by several allocations about packets, regular expressions, skiplists in content store, etc? I?m not an expert in that field, > but I thought it is worth mentioning on the mailing list. > Example of the most important ones: > > ==9806== 238,400 bytes in 200 blocks are indirectly lost in loss record 447 of 448 > ==9806== at 0x4C2B0E0: operator new(unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) > ==9806== by 0x8DE20A2: __gnu_cxx::new_allocator, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (new_allocator.h:104) > ==9806== by 0x8DE1D3D: std::allocator_traits, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) (alloc_traits.h:351) > ==9806== by 0x8DE18E7: std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count>(std::_Sp_make_shared_tag, ndn::Data*, std::allocator const&) (shared_ptr_base.h:499) > ==9806== by 0x8DE138D: std::__shared_ptr::__shared_ptr>(std::_Sp_make_shared_tag, std::allocator const&) (shared_ptr_base.h:957) > ==9806== by 0x8DE0B6B: std::shared_ptr::shared_ptr>(std::_Sp_make_shared_tag, std::allocator const&) (shared_ptr.h:316) > ==9806== by 0x8DDFC5B: std::shared_ptr std::allocate_shared>(std::allocator const&) (shared_ptr.h:598) > ==9806== by 0x8DDF103: std::shared_ptr std::make_shared() (shared_ptr.h:614) > ==9806== by 0x8FD6B9C: ns3::ndn::PacketHeader::Deserialize(ns3::Buffer::Iterator) (ndn-header.cpp:120) > ==9806== by 0xD912BAA: ns3::Packet::RemoveHeader(ns3::Header&) (packet.cc:290) > ==9806== by 0x8FF2F53: std::shared_ptr ns3::ndn::Convert::FromPacket(ns3::Ptr) (ndn-ns3.cpp:37) > ==9806== by 0x8FF18DD: ns3::ndn::NetDeviceFace::receiveFromNetDevice(ns3::Ptr, ns3::Ptr, unsigned short, ns3::Address const&, ns3::Address const&, ns3::NetDevice::PacketType) (ndn-net-device-face.cpp:130) > ==9806== > > ==9806== 216,879 bytes in 201 blocks are indirectly lost in loss record 446 of 448 > ==9806== at 0x4C2B800: operator new[](unsigned long) (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so) > ==9806== by 0xD8E7074: ns3::Buffer::Allocate(unsigned int) (buffer.cc:172) > ==9806== by 0xD8E6D93: ns3::Buffer::Create(unsigned int) (buffer.cc:141) > ==9806== by 0xD8E8666: ns3::Buffer::AddAtStart(unsigned int) (buffer.cc:331) > ==9806== by 0xD912A53: ns3::Packet::AddHeader(ns3::Header const&) (packet.cc:278) > ==9806== by 0xAD8A64A: ns3::PointToPointNetDevice::AddHeader(ns3::Ptr, unsigned short) (point-to-point-net-device.cc:167) > ==9806== by 0xAD8E466: ns3::PointToPointNetDevice::Send(ns3::Ptr, ns3::Address const&, unsigned short) (point-to-point-net-device.cc:502) > ==9806== by 0x8FF10E5: ns3::ndn::NetDeviceFace::send(ns3::Ptr) (ndn-net-device-face.cpp:89) > ==9806== by 0x8FF150C: ns3::ndn::NetDeviceFace::sendData(ndn::Data const&) (ndn-net-device-face.cpp:111) > ==9806== by 0x8DF6F06: nfd::Forwarder::onOutgoingData(ndn::Data const&, nfd::Face&) (forwarder.cpp:377) > ==9806== by 0x8DF6455: nfd::Forwarder::onIncomingData(nfd::Face&, ndn::Data const&) (forwarder.cpp:333) > ==9806== by 0x8DEDA96: nfd::Forwarder::onData(nfd::Face&, ndn::Data const&) (forwarder.hpp:263) > ==9806== > > The valgrind output is rather long, I suggest you try generating it by yourself. I?m using Ubuntu 14.04, if that matters. > I?m not after chasing every single memory leak, though if it involves packets/packet based structures, there might be > an issue with ndnSIM or even NFD, that could affect the testbed aswell. > > In addition, I?ve tested ndn-simple with Frequency set to other values instead of 10, here is the resulting output: > http://pastebin.com/0PZw40bk > > I don?t think that roughly 1.6 MegaBytes of memory lost is a big deal, though given the size of the simulation and > the number of interests transmitted, it might become a problem with larger simulations. I?m also not sure if this > memory leaks is a result from lost packets or interests that were sent during the last millisecond of the simulation. > > Anyway, I hope this post helps to find and reduce some memory leaks. > > Best regards, > Christian > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From alexander.afanasyev at ucla.edu Wed Feb 18 15:14:14 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Wed, 18 Feb 2015 15:14:14 -0800 Subject: [ndnSIM] Is the version 2.0 really stable? Is it encouraged to upgrade to version 2.0? In-Reply-To: <6204.1424263428@bxb-ads-020> References: <6204.1424263428@bxb-ads-020> Message-ID: <41091348-2AC6-4D17-BDB1-EF06B8F14CB1@ucla.edu> > On Feb 18, 2015, at 4:43 AM, Jim Gibson wrote: > > > Hi, > > Okay, your message helped a lot. > > - I'm running Ubuntu 14.04.01 LTS x86_64, sorry I left that out > though I don't think it matters. > - I repeated the install today on a clean system and ns-3/ndnSIM compiled > successfully, good! > - I went back to try to understand what happened on my install attempt. > My suspicion is that the git repos had a period of mutual > inconsistency on Monday (2/16) and I had the bad luck to start my > install during that time. (Or maybe it's pilot error and I should just > be happy the install is working now. But it was enough of a time sink > that I'm curious if my analysis is right, so I'm including the details > below.) Hi Jim, Yes. You really got lucky to download the code while we accidentally made a commit that broke the compilation :) We are trying to be careful, but things happen from time to time. --- 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 anilj.mailing at gmail.com Wed Feb 18 23:46:34 2015 From: anilj.mailing at gmail.com (Anil Jangam) Date: Wed, 18 Feb 2015 23:46:34 -0800 Subject: [ndnSIM] Error: Multiple aggregation of objects of type ns3::Object Message-ID: Hi, Note: I am using the older version of ndnSIM. What is the way to track down where and which place in code is calling AggregateObject method on given object? I have written a code where I am calling AggregateObject() method just once. I presume I am indeed calling it once. However, when I run the code, I consistently get the error log: msg="Object::AggregateObject(): Multiple aggregation of objects of type ns3::Object", file=../src/core/model/object.cc, line=254 terminate called without an active exception Error log does say to run the program under debugger, but is it the only approach? ./waf --run --command-template="gdb --args %s " Just for the sake of isolating the problem, when I comment out the AggregateObject() invocation, the program runs fine. Regards, /anil. -------------- next part -------------- An HTML attachment was scrubbed... URL: From poschdaniel2 at gmail.com Thu Feb 19 02:25:29 2015 From: poschdaniel2 at gmail.com (Daniel Posch) Date: Thu, 19 Feb 2015 11:25:29 +0100 Subject: [ndnSIM] Error Compiling ndn-cxx on Ubuntu 12.04 (32Bit) Message-ID: <54E5BA19.6050800@gmail.com> Hello, I have an error compiling ndn-cxx on Ubuntu 12.04.5 LTS (32 Bit). The output of the compiler is: In file included from /usr/include/cryptopp/filters.h:7:0, from /usr/include/cryptopp/asn.h:4, from ../src/encoding/../security/cryptopp.hpp:29, from ../src/encoding/oid.cpp:27: /usr/include/cryptopp/secblock.h: In instantiation of ?CryptoPP::AllocatorWithCleanup::pointer CryptoPP::AllocatorWithCleanup::allocate(CryptoPP::AllocatorWithCleanup::size_type, const void*) [with T = unsigned char; bool T_Align16 = false; CryptoPP::AllocatorWithCleanup::pointer = unsigned char*; CryptoPP::AllocatorWithCleanup::size_type = unsigned int]?: /usr/include/cryptopp/secblock.h:247:25: required from ?CryptoPP::SecBlock::SecBlock(CryptoPP::SecBlock::size_type) [with T = unsigned char; A = CryptoPP::AllocatorWithCleanup; CryptoPP::SecBlock::size_type = unsigned int]? /usr/include/cryptopp/algparam.h:17:2: required from here /usr/include/cryptopp/secblock.h:91:14: error: ?CheckSize? was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] CheckSize(n); I have searched for that error and found #Bug 1700: http://redmine.named-data.net/issues/1700 The solution provided by Alex in this discussion does not work for me. My configure command is: ./waf configure --prefix=/local/users/ndnsim2 --boost-libs=/usr/lib/i386-linux-gnu --without-pch" Setting top to : /local/users/ndnsim2/ndnSIM/ndn-cxx Setting out to : /local/users/ndnsim2/ndnSIM/ndn-cxx/build Checking for 'g++' (C++ compiler) : /usr/bin/g++ Checking supported CXXFLAGS : -std=c++11 Checking supported CXXFLAGS : -pedantic -Wall -O2 -g Checking for program 'doxygen' : not found Checking for program 'tar' : /bin/tar Checking for program 'sphinx-build' : not found Checking for std::is_default_constructible : yes Checking for std::is_move_constructible : yes Checking for std::is_move_assignable : yes Checking for friend typename-specifier : yes Checking for program 'sh' : /bin/sh Checking for library pthread : yes Checking for library rt : yes Checking for compiler flags ['-fPIC'] : yes Checking for function getpass : yes Checking for rtnetlink : yes Checking for program 'pkg-config' : /usr/bin/pkg-config Checking for 'sqlite3' : yes Checking Crypto++ lib : 561 Checking if CryptoPP library works : yes Checking boost includes : 1.55.0 Checking boost libs : ok Checking for boost linkage : ok 'configure' finished successfully (1.665s) I have also tried the following configure command (which was suggested @ http://redmine.named-data.net/issues/1507): CXXFLAGS="-DCRYPTOPP_DISABLE_ASM" ./waf configure --prefix=/local/users/ndnsim2 --boost-libs=/usr/lib/i386-linux-gnu --without-pch The code is compiled with gcc version 4.8.1 (Ubuntu 4.8.1-2ubuntu1~12.04). Best regards, Daniel From spiros.mastorakis at gmail.com Thu Feb 19 09:03:19 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Thu, 19 Feb 2015 09:03:19 -0800 Subject: [ndnSIM] Error Compiling ndn-cxx on Ubuntu 12.04 (32Bit) In-Reply-To: <54E5BA19.6050800@gmail.com> References: <54E5BA19.6050800@gmail.com> Message-ID: <96782FA4-9608-44C8-B10D-DB90A3F58786@gmail.com> Hello Daniel, I will forward your email to the mailing list related to the library. Here is the ndnSIM mailing list. :) However, in general, I would like you to follow this link: http://ndnsim.net/2.0/getting-started.html#portability I have seen that you used gcc 4.8.1, but just keep in mind that there is an issue with boost libraries and gcc in Ubuntu 12.04. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 19, 2015, at 2:25 AM, Daniel Posch wrote: > > Hello, > > I have an error compiling ndn-cxx on Ubuntu 12.04.5 LTS (32 Bit). The output of the compiler is: > > In file included from /usr/include/cryptopp/filters.h:7:0, > from /usr/include/cryptopp/asn.h:4, > from ../src/encoding/../security/cryptopp.hpp:29, > from ../src/encoding/oid.cpp:27: > /usr/include/cryptopp/secblock.h: In instantiation of ?CryptoPP::AllocatorWithCleanup::pointer CryptoPP::AllocatorWithCleanup::allocate(CryptoPP::AllocatorWithCleanup::size_type, const void*) [with T = unsigned char; bool T_Align16 = false; CryptoPP::AllocatorWithCleanup::pointer = unsigned char*; CryptoPP::AllocatorWithCleanup::size_type = unsigned int]?: > /usr/include/cryptopp/secblock.h:247:25: required from ?CryptoPP::SecBlock::SecBlock(CryptoPP::SecBlock::size_type) [with T = unsigned char; A = CryptoPP::AllocatorWithCleanup; CryptoPP::SecBlock::size_type = unsigned int]? > /usr/include/cryptopp/algparam.h:17:2: required from here > /usr/include/cryptopp/secblock.h:91:14: error: ?CheckSize? was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive] > CheckSize(n); > > I have searched for that error and found #Bug 1700: http://redmine.named-data.net/issues/1700 > The solution provided by Alex in this discussion does not work for me. My configure command is: > > ./waf configure --prefix=/local/users/ndnsim2 --boost-libs=/usr/lib/i386-linux-gnu --without-pch" > Setting top to : /local/users/ndnsim2/ndnSIM/ndn-cxx > Setting out to : /local/users/ndnsim2/ndnSIM/ndn-cxx/build > Checking for 'g++' (C++ compiler) : /usr/bin/g++ > Checking supported CXXFLAGS : -std=c++11 > Checking supported CXXFLAGS : -pedantic -Wall -O2 -g > Checking for program 'doxygen' : not found > Checking for program 'tar' : /bin/tar > Checking for program 'sphinx-build' : not found > Checking for std::is_default_constructible : yes > Checking for std::is_move_constructible : yes > Checking for std::is_move_assignable : yes > Checking for friend typename-specifier : yes > Checking for program 'sh' : /bin/sh > Checking for library pthread : yes > Checking for library rt : yes > Checking for compiler flags ['-fPIC'] : yes > Checking for function getpass : yes > Checking for rtnetlink : yes > Checking for program 'pkg-config' : /usr/bin/pkg-config > Checking for 'sqlite3' : yes > Checking Crypto++ lib : 561 > Checking if CryptoPP library works : yes > Checking boost includes : 1.55.0 > Checking boost libs : ok > Checking for boost linkage : ok > 'configure' finished successfully (1.665s) > > I have also tried the following configure command (which was suggested @ http://redmine.named-data.net/issues/1507): > > CXXFLAGS="-DCRYPTOPP_DISABLE_ASM" ./waf configure --prefix=/local/users/ndnsim2 --boost-libs=/usr/lib/i386-linux-gnu --without-pch > > The code is compiled with gcc version 4.8.1 (Ubuntu 4.8.1-2ubuntu1~12.04). > > Best regards, > Daniel > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From spiros.mastorakis at gmail.com Fri Feb 20 13:12:45 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Fri, 20 Feb 2015 13:12:45 -0800 Subject: [ndnSIM] MPI support added to ndnSIM 2.0 Message-ID: <86FF1A21-0186-45E5-953F-27E0AD34196F@gmail.com> Dear all, we would like to inform you that we have defined instructions for installing MPI in order to run simulation scenarios in parallel using multiple processors. The instructions along with a sample example scenario can be found here: http://ndnsim.net/2.0/parallel-simulations.html ? ndnSIM team From cghali at uci.edu Fri Feb 20 13:40:13 2015 From: cghali at uci.edu (Cesar Ghali) Date: Fri, 20 Feb 2015 13:40:13 -0800 Subject: [ndnSIM] Error while Building ndnSIM Message-ID: Hi all, I have been struggling with this for a while. I have Ubuntu 14.04, g++ 4.8.2, boost 1.54 and I?m following the instructions on how to install and build ndnSIM but I?m getting many of the following error while compiling: In file included from ./ns3/ndnSIM/model/ndn-app-face.hpp:24:0, from ./ns3/ndnSIM/apps/ndn-app.hpp:24, from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.hpp:25, from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp:22: ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool nfd::LocalFace::decodeAndDispatchInput(const ndn::Block&)?: ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:88: error: no matching function for call to ?ndn::nfd::LocalControlHeader::wireDecode(const ndn::Block&, bool, bool)? this->isLocalControlHeaderEnabled(LOCAL_CONTROL_FEATURE_NEXT_HOP_FACE_ID)); -> task in 'ndn-custom-apps' failed (exit status 1): {task 139918401716496: cxx hijacker.cpp -> hijacker.cpp.4.o} ['/usr/bin/g++', '-std=c++0x', '-std=c++11', '-O0', '-ggdb', '-g3', '-Wall', '-Wno-error=deprecated-declarations', '-fstrict-aliasing', '-Wstrict-aliasing', '-pthread', '-fPIC', '-I.', '-I..', '-Isrc/ndnSIM', '-I../src/ndnSIM', '-Isrc/ndnSIM/NFD', '-I../src/ndnSIM/NFD', '-Isrc/ndnSIM/NFD/daemon', '-I../src/ndnSIM/NFD/daemon', '-Isrc/ndnSIM/NFD/core', '-I../src/ndnSIM/NFD/core', '-I/usr/include/libxml2', '-I/usr/local/include', '-I/usr/include', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '-DHAVE_SYS_IOCTL_H=1', '-DHAVE_IF_NETS_H=1', '-DHAVE_NET_ETHERNET_H=1', '-DHAVE_PACKET_H=1', '-DHAVE_IS_DEFAULT_CONSTRUCTIBLE=1', '-DHAVE_IS_MOVE_CONSTRUCTIBLE=1', '-DHAVE_CXX_OVERRIDE=1', '-DHAVE_NDN_CXX=1', '-DHAVE_SQLITE3=1', '-DHAVE_IF_TUN_H=1', '-DHAVE_GSL=1', '../src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp', '-c', '-o', 'src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp.4.o'] I might have missed installing or configuring something, any ideas? Thanks, Cesar -- PGP Key: http://www.cesarghali.info/contact.html PGP Key ID: 0x455D8052 -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Fri Feb 20 13:47:35 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Fri, 20 Feb 2015 13:47:35 -0800 Subject: [ndnSIM] Error while Building ndnSIM In-Reply-To: References: Message-ID: <6453D3A1-FF6F-4EE0-9C36-E650B27583F6@gmail.com> Hello, please make sure that you are using the ndn-cxx library and ndnSIM including the latest commit available on github. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 20, 2015, at 1:40 PM, Cesar Ghali wrote: > > Hi all, > > I have been struggling with this for a while. I have Ubuntu 14.04, g++ 4.8.2, boost 1.54 and I?m following the instructions on how to install and build ndnSIM but I?m getting many of the following error while compiling: > > In file included from ./ns3/ndnSIM/model/ndn-app-face.hpp:24:0, > from ./ns3/ndnSIM/apps/ndn-app.hpp:24, > from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.hpp:25, > from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp:22: > ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool nfd::LocalFace::decodeAndDispatchInput(const ndn::Block&)?: > ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:88: error: no matching function for call to ?ndn::nfd::LocalControlHeader::wireDecode(const ndn::Block&, bool, bool)? > this->isLocalControlHeaderEnabled(LOCAL_CONTROL_FEATURE_NEXT_HOP_FACE_ID)); > > -> task in 'ndn-custom-apps' failed (exit status 1): > {task 139918401716496: cxx hijacker.cpp -> hijacker.cpp.4.o} > ['/usr/bin/g++', '-std=c++0x', '-std=c++11', '-O0', '-ggdb', '-g3', '-Wall', '-Wno-error=deprecated-declarations', '-fstrict-aliasing', '-Wstrict-aliasing', '-pthread', '-fPIC', '-I.', '-I..', '-Isrc/ndnSIM', '-I../src/ndnSIM', '-Isrc/ndnSIM/NFD', '-I../src/ndnSIM/NFD', '-Isrc/ndnSIM/NFD/daemon', '-I../src/ndnSIM/NFD/daemon', '-Isrc/ndnSIM/NFD/core', '-I../src/ndnSIM/NFD/core', '-I/usr/include/libxml2', '-I/usr/local/include', '-I/usr/include', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '-DHAVE_SYS_IOCTL_H=1', '-DHAVE_IF_NETS_H=1', '-DHAVE_NET_ETHERNET_H=1', '-DHAVE_PACKET_H=1', '-DHAVE_IS_DEFAULT_CONSTRUCTIBLE=1', '-DHAVE_IS_MOVE_CONSTRUCTIBLE=1', '-DHAVE_CXX_OVERRIDE=1', '-DHAVE_NDN_CXX=1', '-DHAVE_SQLITE3=1', '-DHAVE_IF_TUN_H=1', '-DHAVE_GSL=1', '../src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp', '-c', '-o', 'src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp.4.o'] > > I might have missed installing or configuring something, any ideas? > > Thanks, > Cesar > > -- > PGP Key: http://www.cesarghali.info/contact.html > PGP Key ID: 0x455D8052 > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From cghali at uci.edu Fri Feb 20 14:15:03 2015 From: cghali at uci.edu (Cesar Ghali) Date: Fri, 20 Feb 2015 14:15:03 -0800 Subject: [ndnSIM] Error while Building ndnSIM In-Reply-To: <6453D3A1-FF6F-4EE0-9C36-E650B27583F6@gmail.com> References: <6453D3A1-FF6F-4EE0-9C36-E650B27583F6@gmail.com> Message-ID: Thank you Spyros, that was the problem. I forked ndnSIM repo last week and now ndn-cxx is more advance than my ndnSIM repo. I managed to get them both in synch and complication was successful. Thanks, Cesar -- PGP Key: http://www.cesarghali.info/contact.html PGP Key ID: 0x455D8052 > On Feb 20, 2015, at 1:47 PM, Spyridon (Spyros) Mastorakis wrote: > > Hello, > > please make sure that you are using the ndn-cxx library and ndnSIM including the latest commit available on github. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > >> On Feb 20, 2015, at 1:40 PM, Cesar Ghali wrote: >> >> Hi all, >> >> I have been struggling with this for a while. I have Ubuntu 14.04, g++ 4.8.2, boost 1.54 and I?m following the instructions on how to install and build ndnSIM but I?m getting many of the following error while compiling: >> >> In file included from ./ns3/ndnSIM/model/ndn-app-face.hpp:24:0, >> from ./ns3/ndnSIM/apps/ndn-app.hpp:24, >> from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.hpp:25, >> from ../src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp:22: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp: In member function ?bool nfd::LocalFace::decodeAndDispatchInput(const ndn::Block&)?: >> ./ns3/ndnSIM/NFD/daemon/face/local-face.hpp:156:88: error: no matching function for call to ?ndn::nfd::LocalControlHeader::wireDecode(const ndn::Block&, bool, bool)? >> this->isLocalControlHeaderEnabled(LOCAL_CONTROL_FEATURE_NEXT_HOP_FACE_ID)); >> >> -> task in 'ndn-custom-apps' failed (exit status 1): >> {task 139918401716496: cxx hijacker.cpp -> hijacker.cpp.4.o} >> ['/usr/bin/g++', '-std=c++0x', '-std=c++11', '-O0', '-ggdb', '-g3', '-Wall', '-Wno-error=deprecated-declarations', '-fstrict-aliasing', '-Wstrict-aliasing', '-pthread', '-fPIC', '-I.', '-I..', '-Isrc/ndnSIM', '-I../src/ndnSIM', '-Isrc/ndnSIM/NFD', '-I../src/ndnSIM/NFD', '-Isrc/ndnSIM/NFD/daemon', '-I../src/ndnSIM/NFD/daemon', '-Isrc/ndnSIM/NFD/core', '-I../src/ndnSIM/NFD/core', '-I/usr/include/libxml2', '-I/usr/local/include', '-I/usr/include', '-DNS3_ASSERT_ENABLE', '-DNS3_LOG_ENABLE', '-DHAVE_SYS_IOCTL_H=1', '-DHAVE_IF_NETS_H=1', '-DHAVE_NET_ETHERNET_H=1', '-DHAVE_PACKET_H=1', '-DHAVE_IS_DEFAULT_CONSTRUCTIBLE=1', '-DHAVE_IS_MOVE_CONSTRUCTIBLE=1', '-DHAVE_CXX_OVERRIDE=1', '-DHAVE_NDN_CXX=1', '-DHAVE_SQLITE3=1', '-DHAVE_IF_TUN_H=1', '-DHAVE_GSL=1', '../src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp', '-c', '-o', 'src/ndnSIM/examples/ndn-custom-apps/hijacker.cpp.4.o'] >> >> I might have missed installing or configuring something, any ideas? >> >> Thanks, >> Cesar >> >> -- >> PGP Key: http://www.cesarghali.info/contact.html >> PGP Key ID: 0x455D8052 >> >> _______________________________________________ >> 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 anselme333 at gmail.com Sun Feb 22 05:48:53 2015 From: anselme333 at gmail.com (NDIKUMANA ANSELME) Date: Sun, 22 Feb 2015 22:48:53 +0900 Subject: [ndnSIM] ndnSIM 2.0: conversion Message-ID: Hi, All I am trying to implement the queue on each router and I am getting the main error on line 95 : ../src/ndnSIM/examples/congestioncontrolsenario1.cpp:95:45: error: conversion from ?std::shared_ptr? to non-scalar type ?ns3::Ptr? requested 93 ObjectFactory factory; 94 Ptr ndn = router1->GetObject(); 95 Ptr face = ndn->getFaceById(0); 96 Ptr ndf = DynamicCast(face); 97 Ptr nd = ndf->GetNetDevice(); 98 Ptr p2p = StaticCast (nd); 99 factory.SetTypeId("Queue"); 100 Config::SetDefault ("NaccMecIcn::m_buffer", UintegerValue (100)); 101 Ptr router1q = factory.Create (); 102 Ptr ndnqueue = StaticCast (router1q); 103 p2p->SetQueue (router1q); I would appreciate any idea on how to fix this issue. With Regards, Anselme NDIKUMANA -------------- next part -------------- An HTML attachment was scrubbed... URL: From kanin at inl.ics.keio.ac.jp Sun Feb 22 08:45:40 2015 From: kanin at inl.ics.keio.ac.jp (Kanin Assantachai) Date: Mon, 23 Feb 2015 01:45:40 +0900 Subject: [ndnSIM] Questions about cache management scheme where nodes cooperate using header messages In-Reply-To: References: <54E1BA36.5080608@inl.ics.keio.ac.jp> Message-ID: <54EA07B4.1040106@inl.ics.keio.ac.jp> Hello, Thank you Spyridon for your reply. I am sorry for replying back really late. I was busy in the past week and did not have much time to work with the simulator. Also, I am sorry for not explaining my situation clearly last time. Let me clarify it further below. I am currently working on implementing algorithms for a cache management scheme that combines concepts of other basic cache management schemes (such as LFU, LRU) as well as adding my own logic to this new scheme. Because I will be creating a new type of cache management policy, I think I need to create more than just simulation scenarios. After searching through various parts of the simulator to look for where to start creating new files to implement the logic, I believe I should start from the directory /ndnSIM/ns-3/src/ndnSIM/utils/trie (version 1.0). For example, maybe I need to create "my-policy.h" file here. However after I found where to start, I have a hard time figuring out the relationships between the related ".h files" and ".cc files" as well as which objects or components from other files I can access. I have tried to learn how they work by studying from the similarities between the provided policy files but I still do not feel confident that I understand it enough. So, based on this situation, I would like to summarize my questions as follows. - Should I start implementing my own scheme at the above mentioned directory of the simulator (/ndnSIM/ns-3/src/ndnSIM/utils/trie)? - Besides reading from the documentation in the provided link: http://ndnsim.net/2.0/doxygen/classns3_1_1ndn_1_1ContentStore.html , would you please, if possible, suggest other resources such as another tutorial specific to implementing a separate algorithm that manipulates cached objects for a policy, or customized policies which are publicly available? I am looking forward to receiving responses from you. Thank you so much in advance. And as for the version 2.0, I will try to update it soon. Kanin Assantachai On 17-Feb-15 4:05 AM, Spyridon (Spyros) Mastorakis wrote: > Hello, > > First of all, as I stated to my previous email, you are encouraged to use ndnSIM 2.0, as this is the version that is undergoing continuous development and support. > > I am not sure that I fully understand your approach. However, it seems to me that probably you do not need to modify anything internal of the simulator, but just code a proper simulation scenario. > > Probably you will need a way to access the entries of the Content Store. > > ndnSIM 2.0 offers two different CS structures to the user. The user can choose one of them. > > If you are planning to use the NFD? CS you can take a look at the documentation here: > > http://ndnsim.net/2.0/doxygen/classnfd_1_1Cs.html > > If you are planning to use the old ndnSIM 1.0 CS then you may take a look here: > > http://ndnsim.net/2.0/doxygen/classns3_1_1ndn_1_1ContentStore.html > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > >> On Feb 16, 2015, at 1:36 AM, Kanin Assantachai wrote: >> >> Hello all, >> >> My name is Kanin from Thailand, but I am currently studying in Keio University in Japan. This is my first time joining this mailing list and sending a message to ask for your kind help. >> >> Currently, I plan to implement a cache management scheme where part of it requires cooperation of nodes using header messages. Some selections of nodes will be programmed to broadcast certain amount of the contents stored in their cache storage to the nearest neighbors. I have already tried to study how different files (or parts) of the simulators (version 1.0) interact with each other, and I have tried to execute many of the provided examples in the tutorials as well. However, I have difficulties understanding how to get started on the actual implementations. I am not sure which parts I need to make changes to implement this idea. Is there any resource or tutorials already provided to help me get started on this? I have read through a lot of old archived emails, but I still cannot find the answers I am looking for. >> >> Thank you for your clarifications in advance. >> >> Kanin From spiros.mastorakis at gmail.com Sun Feb 22 21:27:05 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sun, 22 Feb 2015 21:27:05 -0800 Subject: [ndnSIM] ndnSIM 2.0: conversion In-Reply-To: References: Message-ID: <52646BB0-C5A6-4F6C-886C-2DBFA265DB78@gmail.com> Hello, I guess that if you replace this: Ptr face = ndn->getFaceById(0); with this: std::shared_ptr face = ndn->getFaceById(0); then it should work. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 22, 2015, at 5:48 AM, NDIKUMANA ANSELME wrote: > > getFaceById From spiros.mastorakis at gmail.com Sun Feb 22 21:34:07 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sun, 22 Feb 2015 21:34:07 -0800 Subject: [ndnSIM] Questions about cache management scheme where nodes cooperate using header messages In-Reply-To: <54EA07B4.1040106@inl.ics.keio.ac.jp> References: <54E1BA36.5080608@inl.ics.keio.ac.jp> <54EA07B4.1040106@inl.ics.keio.ac.jp> Message-ID: <781CF27B-F0B4-445C-83CA-9A8009C9DBEB@gmail.com> Hello, for your first question: yes, you should start implementing your policy in this directory. for your second question: to my best knowledge, there are not any other tutorials for implementing cache replacement policies in ndnSIM. For cache replacement algorithms, in general, you can look at related papers on google scholar. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 22, 2015, at 8:45 AM, Kanin Assantachai wrote: > > Hello, > > Thank you Spyridon for your reply. I am sorry for replying back really late. I was busy in the past week and did not have much time to work with the simulator. Also, I am sorry for not explaining my situation clearly last time. Let me clarify it further below. > > I am currently working on implementing algorithms for a cache management scheme that combines concepts of other basic cache management schemes (such as LFU, LRU) as well as adding my own logic to this new scheme. Because I will be creating a new type of cache management policy, I think I need to create more than just simulation scenarios. After searching through various parts of the simulator to look for where to start creating new files to implement the logic, I believe I should start from the directory /ndnSIM/ns-3/src/ndnSIM/utils/trie (version 1.0). For example, maybe I need to create "my-policy.h" file here. > > However after I found where to start, I have a hard time figuring out the relationships between the related ".h files" and ".cc files" as well as which objects or components from other files I can access. I have tried to learn how they work by studying from the similarities between the provided policy files but I still do not feel confident that I understand it enough. > > So, based on this situation, I would like to summarize my questions as follows. > - Should I start implementing my own scheme at the above mentioned directory of the simulator (/ndnSIM/ns-3/src/ndnSIM/utils/trie)? > - Besides reading from the documentation in the provided link: http://ndnsim.net/2.0/doxygen/classns3_1_1ndn_1_1ContentStore.html , would you please, if possible, suggest other resources such as another tutorial specific to implementing a separate algorithm that manipulates cached objects for a policy, or customized policies which are publicly available? > > I am looking forward to receiving responses from you. Thank you so much in advance. And as for the version 2.0, I will try to update it soon. > > Kanin Assantachai > > On 17-Feb-15 4:05 AM, Spyridon (Spyros) Mastorakis wrote: >> Hello, >> >> First of all, as I stated to my previous email, you are encouraged to use ndnSIM 2.0, as this is the version that is undergoing continuous development and support. >> >> I am not sure that I fully understand your approach. However, it seems to me that probably you do not need to modify anything internal of the simulator, but just code a proper simulation scenario. >> >> Probably you will need a way to access the entries of the Content Store. >> >> ndnSIM 2.0 offers two different CS structures to the user. The user can choose one of them. >> >> If you are planning to use the NFD? CS you can take a look at the documentation here: >> >> http://ndnsim.net/2.0/doxygen/classnfd_1_1Cs.html >> >> If you are planning to use the old ndnSIM 1.0 CS then you may take a look here: >> >> http://ndnsim.net/2.0/doxygen/classns3_1_1ndn_1_1ContentStore.html >> >> -- >> Spyridon (Spyros) Mastorakis >> Personal Website: http://cs.ucla.edu/~mastorakis/ >> Internet Research Laboratory >> PhD Computer Science >> UCLA >> >> >>> On Feb 16, 2015, at 1:36 AM, Kanin Assantachai wrote: >>> >>> Hello all, >>> >>> My name is Kanin from Thailand, but I am currently studying in Keio University in Japan. This is my first time joining this mailing list and sending a message to ask for your kind help. >>> >>> Currently, I plan to implement a cache management scheme where part of it requires cooperation of nodes using header messages. Some selections of nodes will be programmed to broadcast certain amount of the contents stored in their cache storage to the nearest neighbors. I have already tried to study how different files (or parts) of the simulators (version 1.0) interact with each other, and I have tried to execute many of the provided examples in the tutorials as well. However, I have difficulties understanding how to get started on the actual implementations. I am not sure which parts I need to make changes to implement this idea. Is there any resource or tutorials already provided to help me get started on this? I have read through a lot of old archived emails, but I still cannot find the answers I am looking for. >>> >>> Thank you for your clarifications in advance. >>> >>> Kanin > From poschdaniel2 at gmail.com Mon Feb 23 01:00:28 2015 From: poschdaniel2 at gmail.com (Daniel Posch) Date: Mon, 23 Feb 2015 10:00:28 +0100 Subject: [ndnSIM] Memory Usage in ndnSIM and NFD Message-ID: <54EAEC2C.5060500@gmail.com> Hi, I have a question regarding the memory usage in ndnSIM2.0 as I run in to memory troubles with my simulations. Currently I simulate networks with the size of 100-200 nodes per simulation. Using ndnSIM1.0 this was no problem as the payload of Data Packets could be set to "virtual", so just an integer coded the size of the payload. Due the fact that much more memory is required in ndnSIM2.0 and through the connection to the NFD, I assume that the payload is now really stored in the memory? Is this assumption correct? If so, I think this leads to problems simulating larger networks even on very powerful hardware. Could someone explain in detail what "parts" of the Interest/Data packets are really physically stored in memory? How do the new/old Content Store(s) store Data Packets? Is a copy of each packet stored in each Content Store, or is a single copy shared among several Content Stores? Best regards, Daniel From spiros.mastorakis at gmail.com Mon Feb 23 08:52:19 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Mon, 23 Feb 2015 08:52:19 -0800 Subject: [ndnSIM] ndnSIM 2.0: conversion In-Reply-To: References: <52646BB0-C5A6-4F6C-886C-2DBFA265DB78@gmail.com> Message-ID: Hello, Please use the ?reply to all? option, so that your message are visible to all the subscribers of the mailing list. I also tried this code line and it worked fine. The error that you posted referred to the invalid conversion of std::shared_ptr to ns3::Ptr. With the code line that I sent you, this is fixed. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 23, 2015, at 3:23 AM, NDIKUMANA ANSELME wrote: > > std::shared_ptr face = ndn->getFaceById(0); From spiros.mastorakis at gmail.com Mon Feb 23 09:11:22 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Mon, 23 Feb 2015 09:11:22 -0800 Subject: [ndnSIM] Memory Usage in ndnSIM and NFD In-Reply-To: <54EAEC2C.5060500@gmail.com> References: <54EAEC2C.5060500@gmail.com> Message-ID: Hello Daniel, first of all, let me disagree with your initial statement. I have tested the memory usage of ndnSIM 2.0 using the this scenario: https://github.com/spirosmastorakis/ndnSIM-development/blob/master/examples/ndn-grid-stress-test.cc This scenario creates 1000 nodes on a grid topology and defines 100 randomly distributed producers and consumers. Each consumer, by default, expresses 100 interests/second. I have also tested with 1000 interests/second. The results were the following: ndnSIM 2.0 uses 20%, on average, more memory than ndnSIM 1.0. Only 20% more memory for setting up 1000 NFD instances and simulating a maximally realistic NDN communication using data packets with actual payload and, if you want, fully featured crypto operations. This scenario run without a problem in my old MacBook Air, while I was working. So, I do not think that simulations with 100 or 200 or even 1000 nodes would be a problem for generic hardware (not even for very powerful hardware). Regarding your question now: yes, real data packets with actual payload are used. Yes, the parts of the packets used are stored in memory. The CS of each node stores its own copy of a packet?s data, exactly like it would happen across a real NDN testbed. For more information, you can take a look here: http://named-data.net/techreport/ndn-0021-2-nfd-developer-guide.pdf This is the NFD developer guide. In section 3, what is stored by FIB, PIT and CS are described in detail. Thanks -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 23, 2015, at 1:00 AM, Daniel Posch wrote: > > Hi, > > I have a question regarding the memory usage in ndnSIM2.0 as I run in to memory troubles with my simulations. Currently I simulate networks with the size of 100-200 nodes per simulation. Using ndnSIM1.0 this was no problem as the payload of Data Packets could be set to "virtual", so just an integer coded the size of the payload. Due the fact that much more memory is required in ndnSIM2.0 and through the connection to the NFD, I assume that the payload is now really stored in the memory? Is this assumption correct? If so, I think this leads to problems simulating larger networks even on very powerful hardware. > > Could someone explain in detail what "parts" of the Interest/Data packets are really physically stored in memory? How do the new/old Content Store(s) store Data Packets? Is a copy of each packet stored in each Content Store, or is a single copy shared among several Content Stores? > > Best regards, > Daniel > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From poschdaniel2 at gmail.com Mon Feb 23 11:00:35 2015 From: poschdaniel2 at gmail.com (Daniel Posch) Date: Mon, 23 Feb 2015 20:00:35 +0100 Subject: [ndnSIM] Memory Usage in ndnSIM and NFD In-Reply-To: References: <54EAEC2C.5060500@gmail.com> Message-ID: <54EB78D3.9060801@gmail.com> Hello Spyridon, if "real" Data Packets are used and each Content Store maintains its own copy this leads to huge memory consumption. Consider the following scenario: Data Packets have a constant size of let's say 4096 Bytes. The topology consists of 100 nodes, which have a Content Store that stores up to 12500 Data Packets. So per node this are 12500*4096Bytes = 51200000Bytes, or roughly 50MB. For the whole simulation this would lead to 50MB*100 = 5GB of required memory. I consider the presented scenario as "very small", especially the size of the Content Store. If I take your scenario with 1000 nodes, and let's say each node has a 100 MB CS, this would to a memory requirement of 100MB*1000 = 100GB. So I think that you are using extremely "small" Content Stores in your scenario? Best regards, Daniel Am 23.02.2015 um 18:11 schrieb Spyridon (Spyros) Mastorakis: > Hello Daniel, > > first of all, let me disagree with your initial statement. I have tested the memory usage of ndnSIM 2.0 using the this scenario: > > https://github.com/spirosmastorakis/ndnSIM-development/blob/master/examples/ndn-grid-stress-test.cc > > This scenario creates 1000 nodes on a grid topology and defines 100 randomly distributed producers and consumers. Each consumer, by default, expresses 100 interests/second. I have also tested with 1000 interests/second. > > The results were the following: > > ndnSIM 2.0 uses 20%, on average, more memory than ndnSIM 1.0. Only 20% more memory for setting up 1000 NFD instances and simulating a maximally realistic NDN communication using data packets with actual payload and, if you want, fully featured crypto operations. This scenario run without a problem in my old MacBook Air, while I was working. So, I do not think that simulations with 100 or 200 or even 1000 nodes would be a problem for generic hardware (not even for very powerful hardware). > > Regarding your question now: > > yes, real data packets with actual payload are used. Yes, the parts of the packets used are stored in memory. The CS of each node stores its own copy of a packet?s data, exactly like it would happen across a real NDN testbed. > > For more information, you can take a look here: > > http://named-data.net/techreport/ndn-0021-2-nfd-developer-guide.pdf > > This is the NFD developer guide. In section 3, what is stored by FIB, PIT and CS are described in detail. > > Thanks > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > >> On Feb 23, 2015, at 1:00 AM, Daniel Posch wrote: >> >> Hi, >> >> I have a question regarding the memory usage in ndnSIM2.0 as I run in to memory troubles with my simulations. Currently I simulate networks with the size of 100-200 nodes per simulation. Using ndnSIM1.0 this was no problem as the payload of Data Packets could be set to "virtual", so just an integer coded the size of the payload. Due the fact that much more memory is required in ndnSIM2.0 and through the connection to the NFD, I assume that the payload is now really stored in the memory? Is this assumption correct? If so, I think this leads to problems simulating larger networks even on very powerful hardware. >> >> Could someone explain in detail what "parts" of the Interest/Data packets are really physically stored in memory? How do the new/old Content Store(s) store Data Packets? Is a copy of each packet stored in each Content Store, or is a single copy shared among several Content Stores? >> >> Best regards, >> Daniel >> _______________________________________________ >> ndnSIM mailing list >> ndnSIM at lists.cs.ucla.edu >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim --- Diese E-Mail wurde von Avast Antivirus-Software auf Viren gepr?ft. http://www.avast.com From alexander.afanasyev at ucla.edu Mon Feb 23 11:57:00 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Mon, 23 Feb 2015 11:57:00 -0800 Subject: [ndnSIM] Memory Usage in ndnSIM and NFD In-Reply-To: <54EAEC2C.5060500@gmail.com> References: <54EAEC2C.5060500@gmail.com> Message-ID: > On Feb 23, 2015, at 1:00 AM, Daniel Posch wrote: > > Hi, > > I have a question regarding the memory usage in ndnSIM2.0 as I run in to memory troubles with my simulations. Currently I simulate networks with the size of 100-200 nodes per simulation. Using ndnSIM1.0 this was no problem as the payload of Data Packets could be set to "virtual", so just an integer coded the size of the payload. Due the fact that much more memory is required in ndnSIM2.0 and through the connection to the NFD, I assume that the payload is now really stored in the memory? Is this assumption correct? If so, I think this leads to problems simulating larger networks even on very powerful hardware. > > Could someone explain in detail what "parts" of the Interest/Data packets are really physically stored in memory? How do the new/old Content Store(s) store Data Packets? Is a copy of each packet stored in each Content Store, or is a single copy shared among several Content Stores? Hi Daniel, Yes, this currently is a limitation of ndnSIM 2.0: data packets carry "real" payload that uses real memory allocation, which could lead to issues with large scenario/large content store sizes. The use of virtual payload in data packets was our goal initially, but we have paused the effort given the complexity involved (unfortunately, NS-3 does not follow STL container/iterator interfaces, which complicates the matter). If you have time, we would really appreciate if you could look into that. The primary objective for the 2.0 release was to unify codebase of ndnSIM with the latest developments of real NDN forwarder (NFD), ensure correctness (= same behavior as NFD), and provide base/play ground for forwarding strategy development. We are not there yet, but we also want to enable simulating real applications, not just see behavior of dummy traffic generator (Consumer* and Producer classes). We have not (yet) fully optimized for cache evaluation, we just unfortunately have very limited resources to achieve all the goals. As for optimizations. Virtual payload of data packet could be one of these. Sharing the same Ptr in caches between simulated nodes is another good avenue for optimizations which can bring benefits for more types of simulations (e.g., virtual payload will not work for simulation of real applications). Some memory and performance gain can also be achieved by utilizing tcmalloc, an alternative memory allocator (http://gperftools.googlecode.com/git/doc/tcmalloc.html). -- 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 anselme333 at gmail.com Mon Feb 23 16:13:41 2015 From: anselme333 at gmail.com (NDIKUMANA ANSELME) Date: Tue, 24 Feb 2015 09:13:41 +0900 Subject: [ndnSIM] ndnSIM 2.0: conversion In-Reply-To: References: <52646BB0-C5A6-4F6C-886C-2DBFA265DB78@gmail.com> Message-ID: Thank you so much. Now is OK With Regards, Anselme N. 2015-02-24 1:52 GMT+09:00 Spyridon (Spyros) Mastorakis < spiros.mastorakis at gmail.com>: > Hello, > > Please use the ?reply to all? option, so that your message are visible to > all the subscribers of the mailing list. > > I also tried this code line and it worked fine. The error that you posted > referred to the invalid conversion of std::shared_ptr to ns3::Ptr. With the > code line that I sent you, this is fixed. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > > > > On Feb 23, 2015, at 3:23 AM, NDIKUMANA ANSELME > wrote: > > > > std::shared_ptr face = ndn->getFaceById(0); > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From jpram94 at gmail.com Mon Feb 23 22:05:04 2015 From: jpram94 at gmail.com (Ram Dinesh) Date: Tue, 24 Feb 2015 11:35:04 +0530 Subject: [ndnSIM] (no subject) Message-ID: Hello, My project is about mitigating Interest flooding attack. For this, i need to find the rate of incoming interest through each face of the router, do some calculations and decide if to forward the packet or not. For the calculations, i need the PIT table size also. I have heard about tracers. But i need to know the interest rate in real time. I found ndn-l3-rate-tracer.cc file. But i don't know how to modify it and where to write the functions to find the rate of interest. Thank you, Ram Dinesh. -------------- next part -------------- An HTML attachment was scrubbed... URL: From poschdaniel2 at gmail.com Mon Feb 23 22:57:15 2015 From: poschdaniel2 at gmail.com (Daniel Posch) Date: Tue, 24 Feb 2015 07:57:15 +0100 Subject: [ndnSIM] Memory Usage in ndnSIM and NFD In-Reply-To: References: <54EAEC2C.5060500@gmail.com> Message-ID: <54EC20CB.4060208@gmail.com> Hi Alex, thank you for the clarification. I will work with smaller Content Stores to avoid getting into trouble, at least for now. Best regards, Daniel On 02/23/2015 08:57 PM, Alex Afanasyev wrote: >> On Feb 23, 2015, at 1:00 AM, Daniel Posch wrote: >> >> Hi, >> >> I have a question regarding the memory usage in ndnSIM2.0 as I run in to memory troubles with my simulations. Currently I simulate networks with the size of 100-200 nodes per simulation. Using ndnSIM1.0 this was no problem as the payload of Data Packets could be set to "virtual", so just an integer coded the size of the payload. Due the fact that much more memory is required in ndnSIM2.0 and through the connection to the NFD, I assume that the payload is now really stored in the memory? Is this assumption correct? If so, I think this leads to problems simulating larger networks even on very powerful hardware. >> >> Could someone explain in detail what "parts" of the Interest/Data packets are really physically stored in memory? How do the new/old Content Store(s) store Data Packets? Is a copy of each packet stored in each Content Store, or is a single copy shared among several Content Stores? > Hi Daniel, > > Yes, this currently is a limitation of ndnSIM 2.0: data packets carry "real" payload that uses real memory allocation, which could lead to issues with large scenario/large content store sizes. The use of virtual payload in data packets was our goal initially, but we have paused the effort given the complexity involved (unfortunately, NS-3 does not follow STL container/iterator interfaces, which complicates the matter). If you have time, we would really appreciate if you could look into that. > > The primary objective for the 2.0 release was to unify codebase of ndnSIM with the latest developments of real NDN forwarder (NFD), ensure correctness (= same behavior as NFD), and provide base/play ground for forwarding strategy development. We are not there yet, but we also want to enable simulating real applications, not just see behavior of dummy traffic generator (Consumer* and Producer classes). We have not (yet) fully optimized for cache evaluation, we just unfortunately have very limited resources to achieve all the goals. > > As for optimizations. Virtual payload of data packet could be one of these. Sharing the same Ptr in caches between simulated nodes is another good avenue for optimizations which can bring benefits for more types of simulations (e.g., virtual payload will not work for simulation of real applications). Some memory and performance gain can also be achieved by utilizing tcmalloc, an alternative memory allocator (http://gperftools.googlecode.com/git/doc/tcmalloc.html). > > -- > Alex > From christian.kreuzberger at itec.aau.at Tue Feb 24 04:51:17 2015 From: christian.kreuzberger at itec.aau.at (Christian Kreuzberger) Date: Tue, 24 Feb 2015 13:51:17 +0100 Subject: [ndnSIM] MTU, Payload Size and an Assert Message Message-ID: <001601d05030$94c22c70$be468550$@itec.aau.at> In line 80 of ndn-net-device-face.cpp, there is an ASSERT MESSAGE checking whether packet->Getsize() <= m_netDevice->GetMtu(). https://github.com/named-data/ndnSIM/blob/master/model/ndn-net-device-face.c pp#L80 The line does make sense, as fragmentation is not (yet) implemented (or is it?). However, this ASSERT Message is only triggered if ndnSIM is compiled in debug mode (e.g., not with -d optimized), hence if you run ndnSIM in debug mode, the simulation will stop if the payload+header+tags is to large. Though if you run it without debug mode, the simulation will continue even with payloads that go beyond the MTU. I'm wondering if this behaviour is intended, and I am also wondering what happens to too large payloads - I guess it could cause problems and produce inaccurate results in certain cases. Hope to help, Christian -------------- next part -------------- An HTML attachment was scrubbed... URL: From alexander.afanasyev at ucla.edu Tue Feb 24 07:25:43 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Tue, 24 Feb 2015 07:25:43 -0800 Subject: [ndnSIM] MTU, Payload Size and an Assert Message In-Reply-To: <001601d05030$94c22c70$be468550$@itec.aau.at> References: <001601d05030$94c22c70$be468550$@itec.aau.at> Message-ID: Hi Christian, This is intended behavior. If you need to use larger MTU sizes, you simply need to explicitly set MTU parameter on point to point link. Without such an explicit setting, ns3 in debug mode is "reminding" you that simulation parameters do not match. --- Alex > On Feb 24, 2015, at 4:51 AM, Christian Kreuzberger wrote: > > In line 80 of ndn-net-device-face.cpp, there is an ASSERT MESSAGE checking whether packet->Getsize() <= m_netDevice->GetMtu(). > https://github.com/named-data/ndnSIM/blob/master/model/ndn-net-device-face.cpp#L80 > > The line does make sense, as fragmentation is not (yet) implemented (or is it?). However, this ASSERT Message is only triggered if ndnSIM is compiled in debug mode (e.g., not with ?d optimized), hence if you run ndnSIM in debug mode, the simulation will stop if the payload+header+tags is to large. Though if you run it without debug mode, the simulation will continue even with payloads that go beyond the MTU. > I?m wondering if this behaviour is intended, and I am also wondering what happens to too large payloads ? I guess it could cause problems and produce inaccurate results in certain cases. > > Hope to help, > Christian > > _______________________________________________ > 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 christian.kreuzberger at itec.aau.at Tue Feb 24 08:04:45 2015 From: christian.kreuzberger at itec.aau.at (Christian Kreuzberger) Date: Tue, 24 Feb 2015 17:04:45 +0100 Subject: [ndnSIM] MTU, Payload Size and an Assert Message In-Reply-To: References: <001601d05030$94c22c70$be468550$@itec.aau.at> Message-ID: Hi Alex, though the problem is, unless you run ndnSIM in debug mode (which usually nobody does), you wouldn't notice the problem with those dummy consumers/producers. Would it make sense to catch this "exception" in Producer::StartApplication() (or even Producer::OnInterest() ) by checking whether m_virtualPayloadSize (or the actual packet size) is smaller than m_netDevice->GetMtu() (though I guess that checking the actual packet size for every interest would be possible, but could potentially slow down the simulations by a lot). I am able to provide a patch introducing a "sanity check" in Producer::StartApplication() as I have something similar for one of my custom consumers, if you'd like. Example: uint16_t Producer::GetFaceMTU(uint32_t faceId) { Ptr nd1 = GetNode ()->GetDevice(faceId)->GetObject(); return nd1->GetMtu(); } Best regards, Christian On 2015-02-24 16:25, Alex Afanasyev wrote: > Hi Christian, > > This is intended behavior. If you need to use larger MTU sizes, you > simply need to explicitly set MTU parameter on point to point link. > Without such an explicit setting, ns3 in debug mode is "reminding" you > that simulation parameters do not match. > > --- > Alex > > On Feb 24, 2015, at 4:51 AM, Christian Kreuzberger > wrote: > >> In line 80 of ndn-net-device-face.cpp, there is an ASSERT MESSAGE >> checking whether packet->Getsize() <= m_netDevice->GetMtu(). >> >> > https://github.com/named-data/ndnSIM/blob/master/model/ndn-net-device-face.cpp#L80 >> [1] >> >> The line does make sense, as fragmentation is not (yet) implemented >> (or is it?). However, this ASSERT Message is only triggered if >> ndnSIM is compiled in debug mode (e.g., not with ?d optimized), >> hence if you run ndnSIM in debug mode, the simulation will stop if >> the payload+header+tags is to large. Though if you run it without >> debug mode, the simulation will continue even with payloads that go >> beyond the MTU. >> >> I?m wondering if this behaviour is intended, and I am also >> wondering what happens to too large payloads ? I guess it could >> cause problems and produce inaccurate results in certain cases. >> >> Hope to help, >> >> Christian > >> _______________________________________________ >> ndnSIM mailing list >> ndnSIM at lists.cs.ucla.edu >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim [2] > > > Links: > ------ > [1] > https://github.com/named-data/ndnSIM/blob/master/model/ndn-net-device-face.cpp#L80 > [2] http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From alexander.afanasyev at UCLA.EDU Tue Feb 24 17:11:52 2015 From: alexander.afanasyev at UCLA.EDU (Alex Afanasyev) Date: Tue, 24 Feb 2015 17:11:52 -0800 Subject: [ndnSIM] MTU, Payload Size and an Assert Message In-Reply-To: References: <001601d05030$94c22c70$be468550$@itec.aau.at> Message-ID: <526277A7-96C7-4A92-8140-B75D9D1A3317@ucla.edu> > On Feb 24, 2015, at 8:04 AM, Christian Kreuzberger wrote: > > Hi Alex, > > though the problem is, unless you run ndnSIM in debug mode (which usually nobody does), you wouldn't notice the problem with those dummy consumers/producers. Would it make sense to catch this "exception" in Producer::StartApplication() (or even Producer::OnInterest() ) by checking whether m_virtualPayloadSize (or the actual packet size) is smaller than m_netDevice->GetMtu() (though I guess that checking the actual packet size for every interest would be possible, but could potentially slow down the simulations by a lot). I could agree with exception throwing (however, it would not provide as good diagnostic information as assert), although the producer is not the place where such exception should be thrown. Producer is just an NDN application and it should not be aware of anything else except that it has a face to communicate with the forwarder. Such exception can be thrown only in netdeviceface and only if the underlying protocol is p2p. Other types of devices may not even have "Mtu" property. --- Alex > I am able to provide a patch introducing a "sanity check" in Producer::StartApplication() as I have something similar for one of my custom consumers, if you'd like. > > Example: > > uint16_t > Producer::GetFaceMTU(uint32_t faceId) > { > Ptr nd1 = > GetNode ()->GetDevice(faceId)->GetObject(); > return nd1->GetMtu(); > } > > > > > Best regards, > Christian > > > On 2015-02-24 16:25, Alex Afanasyev wrote: >> Hi Christian, >> This is intended behavior. If you need to use larger MTU sizes, you >> simply need to explicitly set MTU parameter on point to point link. >> Without such an explicit setting, ns3 in debug mode is "reminding" you >> that simulation parameters do not match. >> --- >> Alex >> On Feb 24, 2015, at 4:51 AM, Christian Kreuzberger >> wrote: >>> In line 80 of ndn-net-device-face.cpp, there is an ASSERT MESSAGE >>> checking whether packet->Getsize() <= m_netDevice->GetMtu(). >> https://github.com/named-data/ndnSIM/blob/master/model/ndn-net-device-face.cpp#L80 >>> [1] >>> The line does make sense, as fragmentation is not (yet) implemented >>> (or is it?). However, this ASSERT Message is only triggered if >>> ndnSIM is compiled in debug mode (e.g., not with ?d optimized), >>> hence if you run ndnSIM in debug mode, the simulation will stop if >>> the payload+header+tags is to large. Though if you run it without >>> debug mode, the simulation will continue even with payloads that go >>> beyond the MTU. >>> I?m wondering if this behaviour is intended, and I am also >>> wondering what happens to too large payloads ? I guess it could >>> cause problems and produce inaccurate results in certain cases. >>> Hope to help, >>> Christian >>> _______________________________________________ >>> ndnSIM mailing list >>> ndnSIM at lists.cs.ucla.edu >>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim [2] >> Links: >> ------ >> [1] >> https://github.com/named-data/ndnSIM/blob/master/model/ndn-net-device-face.cpp#L80 >> [2] 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 -------------- 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 adith.ad at gmail.com Tue Feb 24 22:06:50 2015 From: adith.ad at gmail.com (adithya srinivasan) Date: Wed, 25 Feb 2015 11:36:50 +0530 Subject: [ndnSIM] Interest parameters are not being propagated from one node to another Message-ID: Hi I'm trying to add a custom parameter to the interest class called "sigcheck". When setting the interest name , nonce for the first time , I have also set sigcheck using customized member functions. (sigcheck is a bool variable. The purpose of it is not related to the topic ) . The problem is , when this interest parameters are set and is being forwarded to other nodes , the value of sigcheck is getting lost. The other nodes are having the value 0 , which is the default value but from the consumer node , sigcheck wasset to 1. I have added cout statements in various member functions in ndn-forwarding.cc . The cout statements of the consumer node alone are printing the value 1 whereas the other nodes are printing 0. Can I know where I am going wrong. Thank you Adithya -------------- next part -------------- An HTML attachment was scrubbed... URL: From wadekahn at clarkson.edu Wed Feb 25 09:28:37 2015 From: wadekahn at clarkson.edu (Hitesh Wadekar) Date: Wed, 25 Feb 2015 12:28:37 -0500 Subject: [ndnSIM] List all Installed Prefix on a Node from App Message-ID: Hey Guys, How can I get all the installed prefix information on a node from application? For instance, I have a node object and I want to iterate all the prefix configured for the installed application on that node. Thanks Cheer, Hitesh -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Wed Feb 25 10:23:53 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 25 Feb 2015 10:23:53 -0800 Subject: [ndnSIM] List all Installed Prefix on a Node from App In-Reply-To: References: Message-ID: Hello Hitesh, good question? I think that you can do using the AppHelper class defined in /helper/ndn-app-helper.cpp. You will have to create a ?getPrefix? method to extract the prefix from the object instance of NS3. Then, you can simply aggregate this object with the node object and call the ?getPrefix" method, whenever you want, in order to extract the prefix. I think that this applies both to producers and consumers. :) Hope this helps. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 25, 2015, at 9:28 AM, Hitesh Wadekar wrote: > > Hey Guys, > > How can I get all the installed prefix information on a node from application? For instance, I have a node object and I want to iterate all the prefix configured for the installed application on that node. > > Thanks > > Cheer, > Hitesh > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From alexander.afanasyev at ucla.edu Wed Feb 25 11:53:03 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Wed, 25 Feb 2015 11:53:03 -0800 Subject: [ndnSIM] List all Installed Prefix on a Node from App In-Reply-To: References: Message-ID: Hi Hitesh, You actually have several ways to do it. The ?right? way is to request so called FIB status dataset from NFD (http://redmine.named-data.net/projects/nfd/wiki/FibMgmt#FIB-Dataset ). However, given that ndnSIM is a simulator, you can do it directly: Ptr node = ... Ptr l3 = node->GetObject(); shared_ptr fw = l3->getForwarder(); nfd::Fib& fib = fw->getFib(); for (const auto&& fibEntry : fib) { std::cout << " - ? << fibEntry.getPrefix() << std::endl; for (const auto&& nh : fibEntry.getNextHops()) { std::cout << " - " << nh.getFace() << ?, ? << nh.getFace().getId() << ?, ? << nh.getCost() << std::endl; } } (I haven?t checked this code, so it may have some minor issues). ? Alex > On Feb 25, 2015, at 9:28 AM, Hitesh Wadekar wrote: > > Hey Guys, > > How can I get all the installed prefix information on a node from application? For instance, I have a node object and I want to iterate all the prefix configured for the installed application on that node. > > Thanks > > Cheer, > Hitesh -------------- 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 wadekahn at clarkson.edu Wed Feb 25 17:31:34 2015 From: wadekahn at clarkson.edu (Hitesh Wadekar) Date: Wed, 25 Feb 2015 20:31:34 -0500 Subject: [ndnSIM] List all Installed Prefix on a Node from App In-Reply-To: References: Message-ID: Thank you Spyridon. Yes, I was planning to implement custom function at AppHelper, eventually, I will go for it. but I was checking if there any other options available. However, Alex has suggested iterate over FIB which is also a good option. But, I will prefer better to store configured prefix information on node with application pointer/indexed. So, there could be a scenario where many applications can be installed on same node. I will let you know more once I implement it. Cheer, Hitesh On Wed, Feb 25, 2015 at 1:23 PM, Spyridon (Spyros) Mastorakis < spiros.mastorakis at gmail.com> wrote: > Hello Hitesh, > > good question? I think that you can do using the AppHelper class defined > in /helper/ndn-app-helper.cpp. You will have to create a ?getPrefix? method > to extract the prefix from the object instance of NS3. Then, you can simply > aggregate this object with the node object and call the ?getPrefix" method, > whenever you want, in order to extract the prefix. I think that this > applies both to producers and consumers. :) > > Hope this helps. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > > On Feb 25, 2015, at 9:28 AM, Hitesh Wadekar > wrote: > > > > Hey Guys, > > > > How can I get all the installed prefix information on a node from > application? For instance, I have a node object and I want to iterate all > the prefix configured for the installed application on that node. > > > > Thanks > > > > Cheer, > > Hitesh > > _______________________________________________ > > 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 wadekahn at clarkson.edu Wed Feb 25 17:39:49 2015 From: wadekahn at clarkson.edu (Hitesh Wadekar) Date: Wed, 25 Feb 2015 20:39:49 -0500 Subject: [ndnSIM] List all Installed Prefix on a Node from App In-Reply-To: References: Message-ID: Thank you Alex. It worked, however, I will prefer to use aggregation object on node for prefix through AppHelper. It will help to track and get the application based configured prefix as we can configure many applications on same node. Cheer, Hitesh On Wed, Feb 25, 2015 at 2:53 PM, Alex Afanasyev < alexander.afanasyev at ucla.edu> wrote: > Hi Hitesh, > > You actually have several ways to do it. The ?right? way is to request so > called FIB status dataset from NFD ( > http://redmine.named-data.net/projects/nfd/wiki/FibMgmt#FIB-Dataset). > However, given that ndnSIM is a simulator, you can do it directly: > > Ptr node = ... > Ptr l3 = node->GetObject(); > shared_ptr fw = l3->getForwarder(); > nfd::Fib& fib = fw->getFib(); > > for (const auto&& fibEntry : fib) { > std::cout << " - ? << fibEntry.getPrefix() << std::endl; > for (const auto&& nh : fibEntry.getNextHops()) { > std::cout << " - " << nh.getFace() << ?, ? << nh.getFace().getId() > << ?, ? << nh.getCost() << std::endl; > } > } > > (I haven?t checked this code, so it may have some minor issues). > > ? > Alex > > On Feb 25, 2015, at 9:28 AM, Hitesh Wadekar wrote: > > Hey Guys, > > How can I get all the installed prefix information on a node from > application? For instance, I have a node object and I want to iterate all > the prefix configured for the installed application on that node. > > Thanks > > Cheer, > Hitesh > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Wed Feb 25 17:48:19 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 25 Feb 2015 17:48:19 -0800 Subject: [ndnSIM] List all Installed Prefix on a Node from App In-Reply-To: References: Message-ID: <2C2F525D-0A45-4864-87FC-4929F6E9D7A5@gmail.com> Hello Hitesh, I suggested this particular solution, because you stated that you wanted to get the prefixes on the application layer. However, if this is not a restriction, Alex?s solution is probably more convenient. But again, this is up to you to decide. :) But for sure, I agree with Alex that there are multiple ways for the thing that you want to do. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 25, 2015, at 5:31 PM, Hitesh Wadekar wrote: > > Thank you Spyridon. > > Yes, I was planning to implement custom function at AppHelper, eventually, I will go for it. but I was checking if there any other options available. However, Alex has suggested iterate over FIB which is also a good option. But, I will prefer better to store configured prefix information on node with application pointer/indexed. So, there could be a scenario where many applications can be installed on same node. > > I will let you know more once I implement it. > > Cheer, > Hitesh > > > > On Wed, Feb 25, 2015 at 1:23 PM, Spyridon (Spyros) Mastorakis wrote: > Hello Hitesh, > > good question? I think that you can do using the AppHelper class defined in /helper/ndn-app-helper.cpp. You will have to create a ?getPrefix? method to extract the prefix from the object instance of NS3. Then, you can simply aggregate this object with the node object and call the ?getPrefix" method, whenever you want, in order to extract the prefix. I think that this applies both to producers and consumers. :) > > Hope this helps. > > -- > Spyridon (Spyros) Mastorakis > Personal Website: http://cs.ucla.edu/~mastorakis/ > Internet Research Laboratory > PhD Computer Science > UCLA > > From wonjunchoi001 at gmail.com Wed Feb 25 18:54:10 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Thu, 26 Feb 2015 11:54:10 +0900 Subject: [ndnSIM] boost lib error Message-ID: Hello. I got the error when ./waf configure for ndn-cxx. Please review this. Wonjun, Choi ------------------------------------------------------------------------------------------ Checking boost libs : Traceback (most recent call last): File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Scripting.py", line 103, in waf_entry_point run_commands() File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Scripting.py", line 164, in run_commands ctx=run_command(cmd_name) File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Scripting.py", line 155, in run_command ctx.execute() File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Configure.py", line 92, in execute super(ConfigurationContext,self).execute() File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Context.py", line 92, in execute self.recurse([os.path.dirname(g_module.root_path)]) File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Context.py", line 133, in recurse user_function(self) File "/home/choiwonjun/ndnSIM/ndn-cxx/wscript", line 82, in configure conf.check_boost(lib=USED_BOOST_LIBS, mandatory=True) File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Configure.py", line 191, in fun return f(*k,**kw) File ".waf-tools/boost.py", line 312, in check_boost path, libs = self.boost_get_libs(**params) File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Configure.py", line 191, in fun return f(*k,**kw) File ".waf-tools/boost.py", line 231, in boost_get_libs path, files = self.__boost_get_libs_path(**kw) File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Configure.py", line 191, in fun return f(*k,**kw) File ".waf-tools/boost.py", line 199, in __boost_get_libs_path files = path.ant_glob('*boost_*') AttributeError: 'NoneType' object has no attribute 'ant_glob' ------------------------------------------------------------------------------------------ -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Wed Feb 25 19:20:37 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 25 Feb 2015 19:20:37 -0800 Subject: [ndnSIM] boost lib error In-Reply-To: References: Message-ID: <01DC1793-4697-4B84-B6B9-3E32A9660648@gmail.com> Hello, I remember that I have encountered this error. It happened to me when I tried to move an installed version of ndn-cxx from one directory to another. I guess that this moving should have broken something. :) Solutions for your problem: 1) First of all, run sudo ./waf 2) If step 1 does not work, run ./waf distclean and then try to configure, build and install again 3) if step 2 does not work, delete your current directory of ndn-cxx and run git clone again for a fresh clone of the library. Then, configure and build again. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 25, 2015, at 6:54 PM, ??? wrote: > > Hello. > > I got the error when ./waf configure for ndn-cxx. > Please review this. > > Wonjun, Choi > ------------------------------------------------------------------------------------------ > Checking boost libs : Traceback (most recent call last): > File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Scripting.py", line 103, in waf_entry_point > run_commands() > File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Scripting.py", line 164, in run_commands > ctx=run_command(cmd_name) > File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Scripting.py", line 155, in run_command > ctx.execute() > File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Configure.py", line 92, in execute > super(ConfigurationContext,self).execute() > File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Context.py", line 92, in execute > self.recurse([os.path.dirname(g_module.root_path)]) > File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Context.py", line 133, in recurse > user_function(self) > File "/home/choiwonjun/ndnSIM/ndn-cxx/wscript", line 82, in configure > conf.check_boost(lib=USED_BOOST_LIBS, mandatory=True) > File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Configure.py", line 191, in fun > return f(*k,**kw) > File ".waf-tools/boost.py", line 312, in check_boost > path, libs = self.boost_get_libs(**params) > File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Configure.py", line 191, in fun > return f(*k,**kw) > File ".waf-tools/boost.py", line 231, in boost_get_libs > path, files = self.__boost_get_libs_path(**kw) > File "/home/choiwonjun/ndnSIM/ndn-cxx/.waf-1.8.5-d178df7a9bb732db109001d6b461550f/waflib/Configure.py", line 191, in fun > return f(*k,**kw) > File ".waf-tools/boost.py", line 199, in __boost_get_libs_path > files = path.ant_glob('*boost_*') > AttributeError: 'NoneType' object has no attribute 'ant_glob' > ------------------------------------------------------------------------------------------ > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From wonjunchoi001 at gmail.com Wed Feb 25 20:17:23 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Thu, 26 Feb 2015 13:17:23 +0900 Subject: [ndnSIM] boost lib error In-Reply-To: <01DC1793-4697-4B84-B6B9-3E32A9660648@gmail.com> References: <01DC1793-4697-4B84-B6B9-3E32A9660648@gmail.com> Message-ID: Thanks for your reply Step1: sudo ./waf The project was not configured: run "waf configure" first! Step2: same error occurs Step3: also same error occurs. Wonjun, Choi -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Wed Feb 25 20:29:38 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 25 Feb 2015 20:29:38 -0800 Subject: [ndnSIM] boost lib error In-Reply-To: References: <01DC1793-4697-4B84-B6B9-3E32A9660648@gmail.com> Message-ID: Hello, step 1 indicates that you have not configured before building the code. Have you configured by running ./waf configure first? for step 3, probably you need to clone in a new directory or try to delete the installed version of ndn-cxx from your system before cloning. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 25, 2015, at 8:17 PM, ??? wrote: > > Thanks for your reply > > Step1: > sudo ./waf > The project was not configured: run "waf configure" first! > > Step2: same error occurs > > Step3: also same error occurs. > > Wonjun, Choi From wonjunchoi001 at gmail.com Wed Feb 25 20:36:03 2015 From: wonjunchoi001 at gmail.com (=?UTF-8?B?7LWc7JuQ7KSA?=) Date: Thu, 26 Feb 2015 13:36:03 +0900 Subject: [ndnSIM] boost lib error In-Reply-To: References: <01DC1793-4697-4B84-B6B9-3E32A9660648@gmail.com> Message-ID: Thanks for your reply. Step1: I did ./waf configure but the same error occurs. Step2: I deleted ndn-cxx folder from the system and re-downloaded it. -------------- next part -------------- An HTML attachment was scrubbed... URL: From sugadev.cse at gmail.com Wed Feb 25 21:23:34 2015 From: sugadev.cse at gmail.com (SUGADEV C) Date: Thu, 26 Feb 2015 10:53:34 +0530 Subject: [ndnSIM] Mixed topology creation in ndnsim Message-ID: i am working on creating a mixed topology with wired and wireless nodes. i couldn't find any source. kindly help me with this -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Wed Feb 25 21:28:43 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Wed, 25 Feb 2015 21:28:43 -0800 Subject: [ndnSIM] Mixed topology creation in ndnsim In-Reply-To: References: Message-ID: Hello, you can combine code from the examples ndn-simple.cpp and ndn-simple-wifi.cpp to create custom topologies with wired and wireless nodes. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 25, 2015, at 9:23 PM, SUGADEV C wrote: > > i am working on creating a mixed topology with wired and wireless nodes. i couldn't find any source. kindly help me with this > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From klaus.schneider at uni-bamberg.de Thu Feb 26 07:34:03 2015 From: klaus.schneider at uni-bamberg.de (Klaus Schneider) Date: Thu, 26 Feb 2015 16:34:03 +0100 Subject: [ndnSIM] scenario template in ndnSim 2.0 Message-ID: <54EF3CEB.6080800@uni-bamberg.de> Hi, I am running Ubuntu 14.04 with boost libraries 1.54 and successfully installed ndn-cxx and ns3-dev. When I follow the instructions (http://ndnsim.net/2.0/getting-started.html) to use the scenario template (http://github.com/cawka/ndnSIM-scenario-template) I get the following error (I put the ndn-simple.cc example into the scenarios folder): > klaus at laptop:~/CCN/ndnSim/ownstrategy$ sudo ./waf --verbose Waf: > Entering directory `/home/klaus/CCN/ndnSim/ownstrategy/build' [1/2] > cxx: scenarios/ndn-simple.cc -> build/scenarios/ndn-simple.cc.2.o > 16:31:55 runner ['/usr/bin/g++', '-std=c++0x', '-O0', '-g', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-Iextensions', '-I../extensions', '-I/usr/include', > '-I/usr/local/include/ns3-dev', '-I/usr/include/gtk-2.0', > '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', > '-I/usr/include/atk-1.0', '-I/usr/include/cairo', > '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', > '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', > '-I/usr/include/glib-2.0', > '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', > '-I/usr/include/pixman-1', '-I/usr/include/libpng12', > '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', > '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', > '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', > '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', > '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', '-DHAVE_NS3_BRIDGE=1', > '-DHAVE_NS3_BUILDINGS=1', '-DHAVE_NS3_CONFIG_STORE=1', > '-DHAVE_NS3_CSMA=1', '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', > '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', > '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', > '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', '-DHAVE_NS3_MESH=1', > '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', > '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', > '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', '-DHAVE_NS3_PROPAGATION=1', > '-DHAVE_NS3_SPECTRUM=1', '-DHAVE_NS3_STATS=1', > '-DHAVE_NS3_TAP_BRIDGE=1', '-DHAVE_NS3_TOPOLOGY_READ=1', > '-DHAVE_NS3_UAN=1', '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', > '-DHAVE_NS3_VISUALIZER=1', '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', > '-DNS3_LOG_ENABLE=1', '-DNS3_ASSERT_ENABLE=1', > '../scenarios/ndn-simple.cc', '-c', '-o', > 'scenarios/ndn-simple.cc.2.o'] In file included from > /usr/local/include/ns3-dev/ns3/ndnSIM/model/ndn-face.hpp:23:0, from > /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-face-container.hpp:30, > > from /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-stack-helper.hpp:30, > from /usr/local/include/ns3-dev/ns3/ndn-all.hpp:23, from > /usr/local/include/ns3-dev/ns3/ndnSIM-module.h:10, from > ../scenarios/ndn-simple.cc:24: > /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/daemon/face/face.hpp:29:22: > fatal error: common.hpp: Datei oder Verzeichnis nicht gefunden > #include "common.hpp" ^ compilation terminated. Waf: Leaving > directory `/home/klaus/CCN/ndnSim/ownstrategy/build' Build failed -> > task in 'ndn-simple' failed (exit status 1): {task 140713978797072: > cxx ndn-simple.cc -> ndn-simple.cc.2.o} ['/usr/bin/g++', > '-std=c++0x', '-O0', '-g', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', > '-pthread', '-pthread', '-pthread', '-Iextensions', > '-I../extensions', '-I/usr/include', '-I/usr/local/include/ns3-dev', > '-I/usr/include/gtk-2.0', > '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', > '-I/usr/include/atk-1.0', '-I/usr/include/cairo', > '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', > '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', > '-I/usr/include/glib-2.0', > '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', > '-I/usr/include/pixman-1', '-I/usr/include/libpng12', > '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', > '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', > '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', > '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', > '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', '-DHAVE_NS3_BRIDGE=1', > '-DHAVE_NS3_BUILDINGS=1', '-DHAVE_NS3_CONFIG_STORE=1', > '-DHAVE_NS3_CSMA=1', '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', > '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', > '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', > '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', '-DHAVE_NS3_MESH=1', > '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', > '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', > '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', '-DHAVE_NS3_PROPAGATION=1', > '-DHAVE_NS3_SPECTRUM=1', '-DHAVE_NS3_STATS=1', > '-DHAVE_NS3_TAP_BRIDGE=1', '-DHAVE_NS3_TOPOLOGY_READ=1', > '-DHAVE_NS3_UAN=1', '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', > '-DHAVE_NS3_VISUALIZER=1', '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', > '-DNS3_LOG_ENABLE=1', '-DNS3_ASSERT_ENABLE=1', > '../scenarios/ndn-simple.cc', '-c', '-o', > 'scenarios/ndn-simple.cc.2.o'] Can you help me out? Thanks a lot. Klaus -- Klaus Schneider Mail: klaus.schneider at uni-bamberg.de LinkedIn: https://www.linkedin.com/in/schneiderklaus From spiros.mastorakis at gmail.com Thu Feb 26 08:54:01 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Thu, 26 Feb 2015 08:54:01 -0800 Subject: [ndnSIM] scenario template in ndnSim 2.0 In-Reply-To: <54EF3CEB.6080800@uni-bamberg.de> References: <54EF3CEB.6080800@uni-bamberg.de> Message-ID: <3D9A9946-E371-4380-B177-62A57DC91C4A@gmail.com> Hello, why do not you compile NS3 with examples and place your scenario under the examples directory of ndnSIM? -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 26, 2015, at 7:34 AM, Klaus Schneider wrote: > > Hi, > > I am running Ubuntu 14.04 with boost libraries 1.54 and successfully > installed ndn-cxx and ns3-dev. > > When I follow the instructions > (http://ndnsim.net/2.0/getting-started.html) to use the scenario > template (http://github.com/cawka/ndnSIM-scenario-template) I get the > following error (I put the ndn-simple.cc example into the scenarios folder): > >> klaus at laptop:~/CCN/ndnSim/ownstrategy$ sudo ./waf --verbose Waf: >> Entering directory `/home/klaus/CCN/ndnSim/ownstrategy/build' [1/2] >> cxx: scenarios/ndn-simple.cc -> build/scenarios/ndn-simple.cc.2.o >> 16:31:55 runner ['/usr/bin/g++', '-std=c++0x', '-O0', '-g', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-Iextensions', '-I../extensions', '-I/usr/include', >> '-I/usr/local/include/ns3-dev', '-I/usr/include/gtk-2.0', >> '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', >> '-I/usr/include/atk-1.0', '-I/usr/include/cairo', >> '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', >> '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', >> '-I/usr/include/glib-2.0', >> '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', >> '-I/usr/include/pixman-1', '-I/usr/include/libpng12', >> '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', >> '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', >> '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', >> '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', >> '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', '-DHAVE_NS3_BRIDGE=1', >> '-DHAVE_NS3_BUILDINGS=1', '-DHAVE_NS3_CONFIG_STORE=1', >> '-DHAVE_NS3_CSMA=1', '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', >> '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', >> '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', >> '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', '-DHAVE_NS3_MESH=1', >> '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', >> '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', >> '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', '-DHAVE_NS3_PROPAGATION=1', >> '-DHAVE_NS3_SPECTRUM=1', '-DHAVE_NS3_STATS=1', >> '-DHAVE_NS3_TAP_BRIDGE=1', '-DHAVE_NS3_TOPOLOGY_READ=1', >> '-DHAVE_NS3_UAN=1', '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', >> '-DHAVE_NS3_VISUALIZER=1', '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', >> '-DNS3_LOG_ENABLE=1', '-DNS3_ASSERT_ENABLE=1', >> '../scenarios/ndn-simple.cc', '-c', '-o', >> 'scenarios/ndn-simple.cc.2.o'] In file included from >> /usr/local/include/ns3-dev/ns3/ndnSIM/model/ndn-face.hpp:23:0, from >> /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-face-container.hpp:30, >> >> > from /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-stack-helper.hpp:30, >> from /usr/local/include/ns3-dev/ns3/ndn-all.hpp:23, from >> /usr/local/include/ns3-dev/ns3/ndnSIM-module.h:10, from >> ../scenarios/ndn-simple.cc:24: >> /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/daemon/face/face.hpp:29:22: >> fatal error: common.hpp: Datei oder Verzeichnis nicht gefunden >> #include "common.hpp" ^ compilation terminated. Waf: Leaving >> directory `/home/klaus/CCN/ndnSim/ownstrategy/build' Build failed -> >> task in 'ndn-simple' failed (exit status 1): {task 140713978797072: >> cxx ndn-simple.cc -> ndn-simple.cc.2.o} ['/usr/bin/g++', >> '-std=c++0x', '-O0', '-g', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >> '-pthread', '-pthread', '-pthread', '-Iextensions', >> '-I../extensions', '-I/usr/include', '-I/usr/local/include/ns3-dev', >> '-I/usr/include/gtk-2.0', >> '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', >> '-I/usr/include/atk-1.0', '-I/usr/include/cairo', >> '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', >> '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', >> '-I/usr/include/glib-2.0', >> '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', >> '-I/usr/include/pixman-1', '-I/usr/include/libpng12', >> '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', >> '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', >> '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', >> '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', >> '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', '-DHAVE_NS3_BRIDGE=1', >> '-DHAVE_NS3_BUILDINGS=1', '-DHAVE_NS3_CONFIG_STORE=1', >> '-DHAVE_NS3_CSMA=1', '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', >> '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', >> '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', >> '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', '-DHAVE_NS3_MESH=1', >> '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', >> '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', >> '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', '-DHAVE_NS3_PROPAGATION=1', >> '-DHAVE_NS3_SPECTRUM=1', '-DHAVE_NS3_STATS=1', >> '-DHAVE_NS3_TAP_BRIDGE=1', '-DHAVE_NS3_TOPOLOGY_READ=1', >> '-DHAVE_NS3_UAN=1', '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', >> '-DHAVE_NS3_VISUALIZER=1', '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', >> '-DNS3_LOG_ENABLE=1', '-DNS3_ASSERT_ENABLE=1', >> '../scenarios/ndn-simple.cc', '-c', '-o', >> 'scenarios/ndn-simple.cc.2.o'] > > Can you help me out? > > Thanks a lot. > > Klaus > > -- > Klaus Schneider > > Mail: klaus.schneider at uni-bamberg.de > LinkedIn: https://www.linkedin.com/in/schneiderklaus > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From fab.batta at gmail.com Thu Feb 26 08:57:01 2015 From: fab.batta at gmail.com (fabrizio saponaro) Date: Thu, 26 Feb 2015 17:57:01 +0100 Subject: [ndnSIM] Unsubscribe from mailing list Message-ID: Hi, I wish unsuscribe from this mailing list but I can't remember my credentials. How could i do? Regards, Fabrizio -------------- next part -------------- An HTML attachment was scrubbed... URL: From klaus.schneider at uni-bamberg.de Thu Feb 26 09:11:53 2015 From: klaus.schneider at uni-bamberg.de (Klaus Schneider) Date: Thu, 26 Feb 2015 18:11:53 +0100 Subject: [ndnSIM] scenario template in ndnSim 2.0 In-Reply-To: <3D9A9946-E371-4380-B177-62A57DC91C4A@gmail.com> References: <54EF3CEB.6080800@uni-bamberg.de> <3D9A9946-E371-4380-B177-62A57DC91C4A@gmail.com> Message-ID: <54EF53D9.1060703@uni-bamberg.de> Yeah I can do that as an alternative. I just thought it would be cleaner to have the code separated (for backups of my code or ndnSim updates). I guess that is why you recommend it in your guide: > While it is possible to write simulations directly inside NS-3 (in > scratch/ folder) or ndnSIM (in examples/), the recommended way is to > write your simulation scenarios, as well as any custom extensions, > separately from the NS-3 or ndnSIM core. > Best regards Klaus On 26.02.2015 17:54, Spyridon (Spyros) Mastorakis wrote: > Hello, > > why do not you compile NS3 with examples and place your scenario > under the examples directory of ndnSIM? > > -- Spyridon (Spyros) Mastorakis Personal Website: > http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD > Computer Science UCLA > > > > >> On Feb 26, 2015, at 7:34 AM, Klaus Schneider >> wrote: >> >> Hi, >> >> I am running Ubuntu 14.04 with boost libraries 1.54 and >> successfully installed ndn-cxx and ns3-dev. >> >> When I follow the instructions >> (http://ndnsim.net/2.0/getting-started.html) to use the scenario >> template (http://github.com/cawka/ndnSIM-scenario-template) I get >> the following error (I put the ndn-simple.cc example into the >> scenarios folder): >> >>> klaus at laptop:~/CCN/ndnSim/ownstrategy$ sudo ./waf --verbose Waf: >>> Entering directory `/home/klaus/CCN/ndnSim/ownstrategy/build' >>> [1/2] cxx: scenarios/ndn-simple.cc -> >>> build/scenarios/ndn-simple.cc.2.o 16:31:55 runner >>> ['/usr/bin/g++', '-std=c++0x', '-O0', '-g', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-Iextensions', '-I../extensions', '-I/usr/include', >>> '-I/usr/local/include/ns3-dev', '-I/usr/include/gtk-2.0', >>> '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', >>> '-I/usr/include/atk-1.0', '-I/usr/include/cairo', >>> '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', >>> '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', >>> '-I/usr/include/glib-2.0', >>> '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', >>> '-I/usr/include/pixman-1', '-I/usr/include/libpng12', >>> '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', >>> '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', >>> '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', >>> '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', >>> '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', >>> '-DHAVE_NS3_BRIDGE=1', '-DHAVE_NS3_BUILDINGS=1', >>> '-DHAVE_NS3_CONFIG_STORE=1', '-DHAVE_NS3_CSMA=1', >>> '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', >>> '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', >>> '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', >>> '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', >>> '-DHAVE_NS3_MESH=1', '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', >>> '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', >>> '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', >>> '-DHAVE_NS3_PROPAGATION=1', '-DHAVE_NS3_SPECTRUM=1', >>> '-DHAVE_NS3_STATS=1', '-DHAVE_NS3_TAP_BRIDGE=1', >>> '-DHAVE_NS3_TOPOLOGY_READ=1', '-DHAVE_NS3_UAN=1', >>> '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', '-DHAVE_NS3_VISUALIZER=1', >>> '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', '-DNS3_LOG_ENABLE=1', >>> '-DNS3_ASSERT_ENABLE=1', '../scenarios/ndn-simple.cc', '-c', >>> '-o', 'scenarios/ndn-simple.cc.2.o'] In file included from >>> /usr/local/include/ns3-dev/ns3/ndnSIM/model/ndn-face.hpp:23:0, >>> from >>> /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-face-container.hpp:30, >>> >>> >> >>> from /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-stack-helper.hpp:30, >>> from /usr/local/include/ns3-dev/ns3/ndn-all.hpp:23, from >>> /usr/local/include/ns3-dev/ns3/ndnSIM-module.h:10, from >>> ../scenarios/ndn-simple.cc:24: >>> /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/daemon/face/face.hpp:29:22: >>> >>> fatal error: common.hpp: Datei oder Verzeichnis nicht gefunden >>> #include "common.hpp" ^ compilation terminated. Waf: Leaving >>> directory `/home/klaus/CCN/ndnSim/ownstrategy/build' Build failed >>> -> task in 'ndn-simple' failed (exit status 1): {task >>> 140713978797072: cxx ndn-simple.cc -> ndn-simple.cc.2.o} >>> ['/usr/bin/g++', '-std=c++0x', '-O0', '-g', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>> '-Iextensions', '-I../extensions', '-I/usr/include', >>> '-I/usr/local/include/ns3-dev', '-I/usr/include/gtk-2.0', >>> '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', >>> '-I/usr/include/atk-1.0', '-I/usr/include/cairo', >>> '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', >>> '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', >>> '-I/usr/include/glib-2.0', >>> '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', >>> '-I/usr/include/pixman-1', '-I/usr/include/libpng12', >>> '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', >>> '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', >>> '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', >>> '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', >>> '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', >>> '-DHAVE_NS3_BRIDGE=1', '-DHAVE_NS3_BUILDINGS=1', >>> '-DHAVE_NS3_CONFIG_STORE=1', '-DHAVE_NS3_CSMA=1', >>> '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', >>> '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', >>> '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', >>> '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', >>> '-DHAVE_NS3_MESH=1', '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', >>> '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', >>> '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', >>> '-DHAVE_NS3_PROPAGATION=1', '-DHAVE_NS3_SPECTRUM=1', >>> '-DHAVE_NS3_STATS=1', '-DHAVE_NS3_TAP_BRIDGE=1', >>> '-DHAVE_NS3_TOPOLOGY_READ=1', '-DHAVE_NS3_UAN=1', >>> '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', '-DHAVE_NS3_VISUALIZER=1', >>> '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', '-DNS3_LOG_ENABLE=1', >>> '-DNS3_ASSERT_ENABLE=1', '../scenarios/ndn-simple.cc', '-c', >>> '-o', 'scenarios/ndn-simple.cc.2.o'] >> >> Can you help me out? >> >> Thanks a lot. >> >> Klaus >> >> -- Klaus Schneider >> >> Mail: klaus.schneider at uni-bamberg.de LinkedIn: >> https://www.linkedin.com/in/schneiderklaus >> _______________________________________________ ndnSIM mailing >> list ndnSIM at lists.cs.ucla.edu >> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim -- Klaus Schneider Mail: klaus.schneider at uni-bamberg.de LinkedIn: https://www.linkedin.com/in/schneiderklaus From christian.kreuzberger at itec.aau.at Thu Feb 26 13:25:14 2015 From: christian.kreuzberger at itec.aau.at (Christian Kreuzberger) Date: Thu, 26 Feb 2015 22:25:14 +0100 Subject: [ndnSIM] scenario template in ndnSim 2.0 In-Reply-To: <54EF53D9.1060703@uni-bamberg.de> References: <54EF3CEB.6080800@uni-bamberg.de> <3D9A9946-E371-4380-B177-62A57DC91C4A@gmail.com> <54EF53D9.1060703@uni-bamberg.de> Message-ID: I would also prefer to have "my project" separated as a scenario (the way it used to be with the old ndnSIM). Makes it much easier to maintain several different/independent scenarios separated from the ndnSIM-core code. The problem that Klaus reported means that ndn-cxx has not been added to the wscript configuration of the scenario template. I think one thing you would have to change in the wscript file of your scenario is here: https://github.com/cawka/ndnSIM-scenario-template/blob/master/wscript#L90 includes = ' extensions /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/ /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/daemon/ /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/core/ /usr/local/include/ndn-cxx/ /usr/local/include/ns3-dev/ns3/ndnSIM/' I haven't tested this, but I'm sure someone can figure out how to do it properly. On 2015-02-26 18:11, Klaus Schneider wrote: > Yeah I can do that as an alternative. I just thought it would be > cleaner > to have the code separated (for backups of my code or ndnSim updates). > > I guess that is why you recommend it in your guide: > >> While it is possible to write simulations directly inside NS-3 (in >> scratch/ folder) or ndnSIM (in examples/), the recommended way is to >> write your simulation scenarios, as well as any custom extensions, >> separately from the NS-3 or ndnSIM core. >> > > Best regards > Klaus > > On 26.02.2015 17:54, Spyridon (Spyros) Mastorakis wrote: >> Hello, >> >> why do not you compile NS3 with examples and place your scenario >> under the examples directory of ndnSIM? >> >> -- Spyridon (Spyros) Mastorakis Personal Website: >> http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD >> Computer Science UCLA >> >> >> >> >>> On Feb 26, 2015, at 7:34 AM, Klaus Schneider >>> wrote: >>> >>> Hi, >>> >>> I am running Ubuntu 14.04 with boost libraries 1.54 and >>> successfully installed ndn-cxx and ns3-dev. >>> >>> When I follow the instructions >>> (http://ndnsim.net/2.0/getting-started.html) to use the scenario >>> template (http://github.com/cawka/ndnSIM-scenario-template) I get >>> the following error (I put the ndn-simple.cc example into the >>> scenarios folder): >>> >>>> klaus at laptop:~/CCN/ndnSim/ownstrategy$ sudo ./waf --verbose Waf: >>>> Entering directory `/home/klaus/CCN/ndnSim/ownstrategy/build' >>>> [1/2] cxx: scenarios/ndn-simple.cc -> >>>> build/scenarios/ndn-simple.cc.2.o 16:31:55 runner >>>> ['/usr/bin/g++', '-std=c++0x', '-O0', '-g', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-Iextensions', '-I../extensions', '-I/usr/include', >>>> '-I/usr/local/include/ns3-dev', '-I/usr/include/gtk-2.0', >>>> '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', >>>> '-I/usr/include/atk-1.0', '-I/usr/include/cairo', >>>> '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', >>>> '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', >>>> '-I/usr/include/glib-2.0', >>>> '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', >>>> '-I/usr/include/pixman-1', '-I/usr/include/libpng12', >>>> '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', >>>> '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', >>>> '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', >>>> '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', >>>> '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', >>>> '-DHAVE_NS3_BRIDGE=1', '-DHAVE_NS3_BUILDINGS=1', >>>> '-DHAVE_NS3_CONFIG_STORE=1', '-DHAVE_NS3_CSMA=1', >>>> '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', >>>> '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', >>>> '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', >>>> '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', >>>> '-DHAVE_NS3_MESH=1', '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', >>>> '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', >>>> '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', >>>> '-DHAVE_NS3_PROPAGATION=1', '-DHAVE_NS3_SPECTRUM=1', >>>> '-DHAVE_NS3_STATS=1', '-DHAVE_NS3_TAP_BRIDGE=1', >>>> '-DHAVE_NS3_TOPOLOGY_READ=1', '-DHAVE_NS3_UAN=1', >>>> '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', '-DHAVE_NS3_VISUALIZER=1', >>>> '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', '-DNS3_LOG_ENABLE=1', >>>> '-DNS3_ASSERT_ENABLE=1', '../scenarios/ndn-simple.cc', '-c', >>>> '-o', 'scenarios/ndn-simple.cc.2.o'] In file included from >>>> /usr/local/include/ns3-dev/ns3/ndnSIM/model/ndn-face.hpp:23:0, >>>> from >>>> /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-face-container.hpp:30, >>>> >>>> >>> >>>> > from > /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-stack-helper.hpp:30, >>>> from /usr/local/include/ns3-dev/ns3/ndn-all.hpp:23, from >>>> /usr/local/include/ns3-dev/ns3/ndnSIM-module.h:10, from >>>> ../scenarios/ndn-simple.cc:24: >>>> /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/daemon/face/face.hpp:29:22: >>>> >>>> > fatal error: common.hpp: Datei oder Verzeichnis nicht gefunden >>>> #include "common.hpp" ^ compilation terminated. Waf: Leaving >>>> directory `/home/klaus/CCN/ndnSim/ownstrategy/build' Build failed >>>> -> task in 'ndn-simple' failed (exit status 1): {task >>>> 140713978797072: cxx ndn-simple.cc -> ndn-simple.cc.2.o} >>>> ['/usr/bin/g++', '-std=c++0x', '-O0', '-g', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>> '-Iextensions', '-I../extensions', '-I/usr/include', >>>> '-I/usr/local/include/ns3-dev', '-I/usr/include/gtk-2.0', >>>> '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', >>>> '-I/usr/include/atk-1.0', '-I/usr/include/cairo', >>>> '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', >>>> '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', >>>> '-I/usr/include/glib-2.0', >>>> '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', >>>> '-I/usr/include/pixman-1', '-I/usr/include/libpng12', >>>> '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', >>>> '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', >>>> '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', >>>> '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', >>>> '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', >>>> '-DHAVE_NS3_BRIDGE=1', '-DHAVE_NS3_BUILDINGS=1', >>>> '-DHAVE_NS3_CONFIG_STORE=1', '-DHAVE_NS3_CSMA=1', >>>> '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', >>>> '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', >>>> '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', >>>> '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', >>>> '-DHAVE_NS3_MESH=1', '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', >>>> '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', >>>> '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', >>>> '-DHAVE_NS3_PROPAGATION=1', '-DHAVE_NS3_SPECTRUM=1', >>>> '-DHAVE_NS3_STATS=1', '-DHAVE_NS3_TAP_BRIDGE=1', >>>> '-DHAVE_NS3_TOPOLOGY_READ=1', '-DHAVE_NS3_UAN=1', >>>> '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', '-DHAVE_NS3_VISUALIZER=1', >>>> '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', '-DNS3_LOG_ENABLE=1', >>>> '-DNS3_ASSERT_ENABLE=1', '../scenarios/ndn-simple.cc', '-c', >>>> '-o', 'scenarios/ndn-simple.cc.2.o'] >>> >>> Can you help me out? >>> >>> Thanks a lot. >>> >>> Klaus >>> >>> -- Klaus Schneider >>> >>> Mail: klaus.schneider at uni-bamberg.de LinkedIn: >>> https://www.linkedin.com/in/schneiderklaus >>> _______________________________________________ ndnSIM mailing >>> list ndnSIM at lists.cs.ucla.edu >>> http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From cghali at uci.edu Thu Feb 26 15:31:19 2015 From: cghali at uci.edu (Cesar Ghali) Date: Thu, 26 Feb 2015 15:31:19 -0800 Subject: [ndnSIM] FIB Manual Configuration Message-ID: <54EFACC7.3030205@uci.edu> Hi all, I have a scenario with 3 nodes, consumer, router and producer connected in a line. The consumer requests content /prefix and the producer serves this content. Cache is disabled on all nodes. I did not choose a forwarding strategy using ndn::StrategyChoiceHelper, nor configured FIB manually or automatically. Still, all interests manage to find their way to the producer. I used --visualize and NS_LOG=nfd.BestRouteStrategy2 to confirm this observation. Any idea why this is happening? Is there any default routing strategy that will take place if user don't specify one? Thanks for the help, Cesar -- cesarghali.info From alexander.afanasyev at ucla.edu Thu Feb 26 15:36:38 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Thu, 26 Feb 2015 15:36:38 -0800 Subject: [ndnSIM] scenario template in ndnSim 2.0 In-Reply-To: References: <54EF3CEB.6080800@uni-bamberg.de> <3D9A9946-E371-4380-B177-62A57DC91C4A@gmail.com> <54EF53D9.1060703@uni-bamberg.de> Message-ID: <4D5CAFE3-9524-4486-95AD-DAF6A4DFC48A@ucla.edu> Hi guys, I completely forgot to check correctness of the scenario template. It is fixed now and if you get the latest version it should be working. Note that you also need to update the base NS-3 to the commit at least 4e388e47d715c3206374974a40cbab7ce428936f (this is current HEAD of ndnSIM-v2 branch) and then recompile and reinstall ns-3. --- Alex > On Feb 26, 2015, at 1:25 PM, Christian Kreuzberger wrote: > > I would also prefer to have "my project" separated as a scenario (the way it used to be with the old ndnSIM). Makes it much easier to maintain several different/independent scenarios separated from the ndnSIM-core code. The problem that Klaus reported means that ndn-cxx has not been added to the wscript configuration of the scenario template. > > I think one thing you would have to change in the wscript file of your scenario is here: > https://github.com/cawka/ndnSIM-scenario-template/blob/master/wscript#L90 > > includes = ' extensions /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/ /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/daemon/ /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/core/ /usr/local/include/ndn-cxx/ /usr/local/include/ns3-dev/ns3/ndnSIM/' > > I haven't tested this, but I'm sure someone can figure out how to do it properly. > > > On 2015-02-26 18:11, Klaus Schneider wrote: >> Yeah I can do that as an alternative. I just thought it would be cleaner >> to have the code separated (for backups of my code or ndnSim updates). >> I guess that is why you recommend it in your guide: >>> While it is possible to write simulations directly inside NS-3 (in >>> scratch/ folder) or ndnSIM (in examples/), the recommended way is to >>> write your simulation scenarios, as well as any custom extensions, >>> separately from the NS-3 or ndnSIM core. >> Best regards >> Klaus >> On 26.02.2015 17:54, Spyridon (Spyros) Mastorakis wrote: >>> Hello, >>> why do not you compile NS3 with examples and place your scenario >>> under the examples directory of ndnSIM? >>> -- Spyridon (Spyros) Mastorakis Personal Website: >>> http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD >>> Computer Science UCLA >>>> On Feb 26, 2015, at 7:34 AM, Klaus Schneider >>>> wrote: >>>> Hi, >>>> I am running Ubuntu 14.04 with boost libraries 1.54 and >>>> successfully installed ndn-cxx and ns3-dev. >>>> When I follow the instructions >>>> (http://ndnsim.net/2.0/getting-started.html) to use the scenario >>>> template (http://github.com/cawka/ndnSIM-scenario-template) I get >>>> the following error (I put the ndn-simple.cc example into the >>>> scenarios folder): >>>>> klaus at laptop:~/CCN/ndnSim/ownstrategy$ sudo ./waf --verbose Waf: >>>>> Entering directory `/home/klaus/CCN/ndnSim/ownstrategy/build' >>>>> [1/2] cxx: scenarios/ndn-simple.cc -> >>>>> build/scenarios/ndn-simple.cc.2.o 16:31:55 runner >>>>> ['/usr/bin/g++', '-std=c++0x', '-O0', '-g', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-Iextensions', '-I../extensions', '-I/usr/include', >>>>> '-I/usr/local/include/ns3-dev', '-I/usr/include/gtk-2.0', >>>>> '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', >>>>> '-I/usr/include/atk-1.0', '-I/usr/include/cairo', >>>>> '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', >>>>> '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', >>>>> '-I/usr/include/glib-2.0', >>>>> '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', >>>>> '-I/usr/include/pixman-1', '-I/usr/include/libpng12', >>>>> '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', >>>>> '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', >>>>> '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', >>>>> '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', >>>>> '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', >>>>> '-DHAVE_NS3_BRIDGE=1', '-DHAVE_NS3_BUILDINGS=1', >>>>> '-DHAVE_NS3_CONFIG_STORE=1', '-DHAVE_NS3_CSMA=1', >>>>> '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', >>>>> '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', >>>>> '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', >>>>> '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', >>>>> '-DHAVE_NS3_MESH=1', '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', >>>>> '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', >>>>> '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', >>>>> '-DHAVE_NS3_PROPAGATION=1', '-DHAVE_NS3_SPECTRUM=1', >>>>> '-DHAVE_NS3_STATS=1', '-DHAVE_NS3_TAP_BRIDGE=1', >>>>> '-DHAVE_NS3_TOPOLOGY_READ=1', '-DHAVE_NS3_UAN=1', >>>>> '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', '-DHAVE_NS3_VISUALIZER=1', >>>>> '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', '-DNS3_LOG_ENABLE=1', >>>>> '-DNS3_ASSERT_ENABLE=1', '../scenarios/ndn-simple.cc', '-c', >>>>> '-o', 'scenarios/ndn-simple.cc.2.o'] In file included from >>>>> /usr/local/include/ns3-dev/ns3/ndnSIM/model/ndn-face.hpp:23:0, >>>>> from >>>>> /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-face-container.hpp:30, >> from /usr/local/include/ns3-dev/ns3/ndnSIM/helper/ndn-stack-helper.hpp:30, >>>>> from /usr/local/include/ns3-dev/ns3/ndn-all.hpp:23, from >>>>> /usr/local/include/ns3-dev/ns3/ndnSIM-module.h:10, from >>>>> ../scenarios/ndn-simple.cc:24: >>>>> /usr/local/include/ns3-dev/ns3/ndnSIM/NFD/daemon/face/face.hpp:29:22: >> fatal error: common.hpp: Datei oder Verzeichnis nicht gefunden >>>>> #include "common.hpp" ^ compilation terminated. Waf: Leaving >>>>> directory `/home/klaus/CCN/ndnSim/ownstrategy/build' Build failed >>>>> -> task in 'ndn-simple' failed (exit status 1): {task >>>>> 140713978797072: cxx ndn-simple.cc -> ndn-simple.cc.2.o} >>>>> ['/usr/bin/g++', '-std=c++0x', '-O0', '-g', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-pthread', '-pthread', '-pthread', '-pthread', '-pthread', >>>>> '-Iextensions', '-I../extensions', '-I/usr/include', >>>>> '-I/usr/local/include/ns3-dev', '-I/usr/include/gtk-2.0', >>>>> '-I/usr/lib/x86_64-linux-gnu/gtk-2.0/include', >>>>> '-I/usr/include/atk-1.0', '-I/usr/include/cairo', >>>>> '-I/usr/include/gdk-pixbuf-2.0', '-I/usr/include/pango-1.0', >>>>> '-I/usr/include/gio-unix-2.0', '-I/usr/include/freetype2', >>>>> '-I/usr/include/glib-2.0', >>>>> '-I/usr/lib/x86_64-linux-gnu/glib-2.0/include', >>>>> '-I/usr/include/pixman-1', '-I/usr/include/libpng12', >>>>> '-I/usr/include/harfbuzz', '-I/usr/include/libxml2', >>>>> '-DHAVE_NS3_CORE=1', '-DHAVE_NS3_NETWORK=1', >>>>> '-DHAVE_NS3_POINT_TO_POINT=1', '-DHAVE_NS3_APPLICATIONS=1', >>>>> '-DHAVE_NS3_MOBILITY=1', '-DHAVE_NS3_NDNSIM=1', >>>>> '-DHAVE_NS3_ANTENNA=1', '-DHAVE_NS3_AODV=1', >>>>> '-DHAVE_NS3_BRIDGE=1', '-DHAVE_NS3_BUILDINGS=1', >>>>> '-DHAVE_NS3_CONFIG_STORE=1', '-DHAVE_NS3_CSMA=1', >>>>> '-DHAVE_NS3_CSMA_LAYOUT=1', '-DHAVE_NS3_DSDV=1', >>>>> '-DHAVE_NS3_DSR=1', '-DHAVE_NS3_EMU=1', '-DHAVE_NS3_ENERGY=1', >>>>> '-DHAVE_NS3_FD_NET_DEVICE=1', '-DHAVE_NS3_FLOW_MONITOR=1', >>>>> '-DHAVE_NS3_INTERNET=1', '-DHAVE_NS3_LTE=1', >>>>> '-DHAVE_NS3_MESH=1', '-DHAVE_NS3_MPI=1', '-DHAVE_NS3_NETANIM=1', >>>>> '-DHAVE_NS3_NIX_VECTOR_ROUTING=1', '-DHAVE_NS3_OLSR=1', >>>>> '-DHAVE_NS3_POINT_TO_POINT_LAYOUT=1', >>>>> '-DHAVE_NS3_PROPAGATION=1', '-DHAVE_NS3_SPECTRUM=1', >>>>> '-DHAVE_NS3_STATS=1', '-DHAVE_NS3_TAP_BRIDGE=1', >>>>> '-DHAVE_NS3_TOPOLOGY_READ=1', '-DHAVE_NS3_UAN=1', >>>>> '-DHAVE_NS3_VIRTUAL_NET_DEVICE=1', '-DHAVE_NS3_VISUALIZER=1', >>>>> '-DHAVE_NS3_WIFI=1', '-DHAVE_NS3_WIMAX=1', '-DNS3_LOG_ENABLE=1', >>>>> '-DNS3_ASSERT_ENABLE=1', '../scenarios/ndn-simple.cc', '-c', >>>>> '-o', 'scenarios/ndn-simple.cc.2.o'] >>>> Can you help me out? >>>> Thanks a lot. >>>> Klaus >>>> -- Klaus Schneider >>>> Mail: klaus.schneider at uni-bamberg.de LinkedIn: >>>> https://www.linkedin.com/in/schneiderklaus >>>> _______________________________________________ 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 -------------- 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 spiros.mastorakis at gmail.com Thu Feb 26 15:38:22 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Thu, 26 Feb 2015 15:38:22 -0800 Subject: [ndnSIM] FIB Manual Configuration In-Reply-To: <54EFACC7.3030205@uci.edu> References: <54EFACC7.3030205@uci.edu> Message-ID: Hello Cesar, yes, you got it right. There is a default forwarding strategy used, which is the BestRouteStrategy2. This default forwarding strategy is defined here: https://github.com/NDN-Routing/ndnSIM/blob/master/NFD/daemon/fw/available-strategies.cpp#L36 -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 26, 2015, at 3:31 PM, Cesar Ghali wrote: > > Hi all, > > I have a scenario with 3 nodes, consumer, router and producer connected > in a line. The consumer requests content /prefix and the producer serves > this content. Cache is disabled on all nodes. I did not choose a > forwarding strategy using ndn::StrategyChoiceHelper, nor configured FIB > manually or automatically. Still, all interests manage to find their way > to the producer. I used --visualize and NS_LOG=nfd.BestRouteStrategy2 to > confirm this observation. > > Any idea why this is happening? Is there any default routing strategy > that will take place if user don't specify one? > > Thanks for the help, > Cesar > > -- > cesarghali.info > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From alexander.afanasyev at ucla.edu Thu Feb 26 15:43:43 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Thu, 26 Feb 2015 15:43:43 -0800 Subject: [ndnSIM] FIB Manual Configuration In-Reply-To: <54EFACC7.3030205@uci.edu> References: <54EFACC7.3030205@uci.edu> Message-ID: <5085EC14-68DC-47BF-AA01-E44CE9130521@ucla.edu> Hi Cesar, Did you specify "helper.SetDefaultRoutes(true);" ? If so, you are getting a "default" route installed on each node, pointing to all available faces. In the visualizer, you can check content of FIB on each node. --- Alex PS For the list of default choice of strategies, check model/ndn-l3-protocol.cc (lines 108-111): / /localhost/nfd/strategy/best-route /localhost /localhost/nfd/strategy/broadcast /localhost/nfd /localhost/nfd/strategy/best-route /ndn/broadcast /localhost/nfd/strategy/broadcast All of these strategies require some FIB entry to be present, so you definitely has some FIB entry installed by some process. > On Feb 26, 2015, at 3:31 PM, Cesar Ghali wrote: > > Hi all, > > I have a scenario with 3 nodes, consumer, router and producer connected > in a line. The consumer requests content /prefix and the producer serves > this content. Cache is disabled on all nodes. I did not choose a > forwarding strategy using ndn::StrategyChoiceHelper, nor configured FIB > manually or automatically. Still, all interests manage to find their way > to the producer. I used --visualize and NS_LOG=nfd.BestRouteStrategy2 to > confirm this observation. > > Any idea why this is happening? Is there any default routing strategy > that will take place if user don't specify one? > > Thanks for the help, > Cesar > > -- > cesarghali.info -------------- 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 cghali at uci.edu Thu Feb 26 15:49:44 2015 From: cghali at uci.edu (Cesar Ghali) Date: Thu, 26 Feb 2015 15:49:44 -0800 Subject: [ndnSIM] FIB Manual Configuration In-Reply-To: <5085EC14-68DC-47BF-AA01-E44CE9130521@ucla.edu> References: <54EFACC7.3030205@uci.edu> <5085EC14-68DC-47BF-AA01-E44CE9130521@ucla.edu> Message-ID: <54EFB118.40408@uci.edu> Thanks Spyros and Alex for your reply. Actually "helper.SetDefaultRoutes(true);" was the problem. I removed it and now I'm able to manually configure FIB entries. Thanks again, Cesar On 02/26/2015 03:43 PM, Alex Afanasyev wrote: > Hi Cesar, > > Did you specify "helper.SetDefaultRoutes(true);" ? If so, you are getting a "default" route installed on each node, pointing to all available faces. > > In the visualizer, you can check content of FIB on each node. > > --- > Alex > > PS > For the list of default choice of strategies, check model/ndn-l3-protocol.cc (lines 108-111): > / /localhost/nfd/strategy/best-route > /localhost /localhost/nfd/strategy/broadcast > /localhost/nfd /localhost/nfd/strategy/best-route > /ndn/broadcast /localhost/nfd/strategy/broadcast > > All of these strategies require some FIB entry to be present, so you definitely has some FIB entry installed by some process. > >> On Feb 26, 2015, at 3:31 PM, Cesar Ghali wrote: >> >> Hi all, >> >> I have a scenario with 3 nodes, consumer, router and producer connected >> in a line. The consumer requests content /prefix and the producer serves >> this content. Cache is disabled on all nodes. I did not choose a >> forwarding strategy using ndn::StrategyChoiceHelper, nor configured FIB >> manually or automatically. Still, all interests manage to find their way >> to the producer. I used --visualize and NS_LOG=nfd.BestRouteStrategy2 to >> confirm this observation. >> >> Any idea why this is happening? Is there any default routing strategy >> that will take place if user don't specify one? >> >> Thanks for the help, >> Cesar >> >> -- >> cesarghali.info -- cesarghali.info -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 473 bytes Desc: OpenPGP digital signature URL: From sugadev.cse at gmail.com Sat Feb 28 02:38:53 2015 From: sugadev.cse at gmail.com (SUGADEV C) Date: Sat, 28 Feb 2015 16:08:53 +0530 Subject: [ndnSIM] Handoff in ndnsim Message-ID: i would like to demonstrate handoff in ndn. can anyone help me out in this -------------- next part -------------- An HTML attachment was scrubbed... URL: From romanlutz13 at gmail.com Sat Feb 28 08:08:02 2015 From: romanlutz13 at gmail.com (Roman Lutz) Date: Sat, 28 Feb 2015 11:08:02 -0500 Subject: [ndnSIM] First steps - problem, no result after running simulation Message-ID: Hello everybody! I am completely new to ndnSIM and want to use it for privacy analysis. I installed everything according to the descriptions on the website (Ubuntu) and got no errors. When I come to the section "compile and run", it says I should run ./waf --run=ndn-simple When I do that, I get the following as a result: Waf: Entering directory ns-3/build Waf: Leaving directory ns-3/build 'build' finished successfully (2.088s) But I can't find the built version somewhere to run it. According to the website, it should already run with that command, but I don't get any output. I suppose there should be some kind of output? Is that normal or am I doing something wrong? I read the instructions several times, but I can't find anything I might have done wrong. Thanks already in advance for your help! Roman Lutz -------------- next part -------------- An HTML attachment was scrubbed... URL: From poschdaniel2 at gmail.com Sat Feb 28 08:31:28 2015 From: poschdaniel2 at gmail.com (Daniel Posch) Date: Sat, 28 Feb 2015 17:31:28 +0100 Subject: [ndnSIM] First steps - problem, no result after running simulation In-Reply-To: References: Message-ID: <54F1ED60.4050100@gmail.com> Hi, try ./waf --run "ndn-simple" --vis Best regards, Daniel Am 28.02.2015 um 17:08 schrieb Roman Lutz: > Hello everybody! > > I am completely new to ndnSIM and want to use it for privacy analysis. > I installed everything according to the descriptions on the website > (Ubuntu) and got no errors. When I come to the section "compile and > run", it says I should run > ./waf --run=ndn-simple > > When I do that, I get the following as a result: > Waf: Entering directory ns-3/build > Waf: Leaving directory ns-3/build > 'build' finished successfully (2.088s) > > But I can't find the built version somewhere to run it. According to > the website, it should already run with that command, but I don't get > any output. I suppose there should be some kind of output? > Is that normal or am I doing something wrong? I read the instructions > several times, but I can't find anything I might have done wrong. > Thanks already in advance for your help! > > Roman Lutz > > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim --- Diese E-Mail wurde von Avast Antivirus-Software auf Viren gepr?ft. http://www.avast.com -------------- next part -------------- An HTML attachment was scrubbed... URL: From ali090385 at gmail.com Sat Feb 28 11:10:42 2015 From: ali090385 at gmail.com (Al Dab) Date: Sat, 28 Feb 2015 11:10:42 -0800 Subject: [ndnSIM] How to prevent packet drops in ndnSIM 1.0? Message-ID: Hi, I am performing some simulations on ndnSIM 1.0 and for some of my measurements I'd like to completely eliminate interest/data drops or at least make them as close to zero as possible. My understanding is that most packet drops happen due to a timeout or a queue overflow. For the interest part, I have tried to increase the lifetime of the interest packets, MaxPitEntryLifetime and also the queue size as follows: ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerZipfMandelbrot"); // to be installed on all consumers consumerHelper.SetAttribute ("LifeTime", StringValue ("9999s")); ... Config::Set ("/NodeList//$ns3::ndn::Pit/MaxPitEntryLifetime", TimeValue (Seconds (9999))); // for all nodeID's ... Config::SetDefault ("ns3::DropTailQueue::MaxPackets", StringValue ("9999")); Still, I am getting some interest and data drops. These drops are measured through L3AggregateTracer and tend to increase by increasing the channel delay using the following command: Config::SetDefault ("ns3::PointToPointChannel::Delay", StringValue ("500ms")); I am wondering what other settings can lead to packet drops, both on interests and data and what is the most efficient way of preventing such drops? Thanks, Ali -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Sat Feb 28 11:38:37 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sat, 28 Feb 2015 11:38:37 -0800 Subject: [ndnSIM] First steps - problem, no result after running simulation In-Reply-To: References: Message-ID: <3DE7B773-FECD-4391-A23F-8E18EC08A6FE@gmail.com> Hello Roman, the first thing that you can do is to activate the logging module of NS3. This will work only when NS-3 is compiled in debug mode (not in optimized mode) and can be done by typing: NS_LOG=ndn.Producer:ndn.Consumer ./waf --run= The other thing that you can do to collect some results/statistics/metrics is to enable the tracers: http://ndnsim.net/2.0/metric.html The last thing that you can do is to enable the visualizer. This will work only If you have compiled with python bindings and can be done by typing: ./waf ?run= --vis Hope that this helps. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 28, 2015, at 8:08 AM, Roman Lutz wrote: > > Hello everybody! > > I am completely new to ndnSIM and want to use it for privacy analysis. > I installed everything according to the descriptions on the website (Ubuntu) and got no errors. When I come to the section "compile and run", it says I should run > ./waf --run=ndn-simple > > When I do that, I get the following as a result: > Waf: Entering directory ns-3/build > Waf: Leaving directory ns-3/build > 'build' finished successfully (2.088s) > > But I can't find the built version somewhere to run it. According to the website, it should already run with that command, but I don't get any output. I suppose there should be some kind of output? > Is that normal or am I doing something wrong? I read the instructions several times, but I can't find anything I might have done wrong. > Thanks already in advance for your help! > > Roman Lutz > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim From spiros.mastorakis at gmail.com Sat Feb 28 13:43:19 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sat, 28 Feb 2015 13:43:19 -0800 Subject: [ndnSIM] Handoff in ndnsim In-Reply-To: References: Message-ID: Google (scholar) is your friend :) https://scholar.google.com/scholar?hl=en&q=ndn+handoff&btnG=&as_sdt=1%2C5&as_sdtp= -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 28, 2015, at 2:38 AM, SUGADEV C wrote: > > handof From alexander.afanasyev at ucla.edu Sat Feb 28 15:21:50 2015 From: alexander.afanasyev at ucla.edu (Alex Afanasyev) Date: Sat, 28 Feb 2015 15:21:50 -0800 Subject: [ndnSIM] How to prevent packet drops in ndnSIM 1.0? In-Reply-To: References: Message-ID: <501BC226-067E-4E5B-AA6B-18201ABB4FB0@ucla.edu> Hi Ali, No matter how big queue you set, if the rate with which you send packets exceed the capacity of the link, you will get data or interest packet to be dropped and interests will timeout. To prevent losses, you just need to make sure your topology matches the application demand. ? Alex > On Feb 28, 2015, at 11:10 AM, Al Dab wrote: > > Hi, > > I am performing some simulations on ndnSIM 1.0 and for some of my measurements I'd like to completely eliminate interest/data drops or at least make them as close to zero as possible. My understanding is that most packet drops happen due to a timeout or a queue overflow. For the interest part, I have tried to increase the lifetime of the interest packets, MaxPitEntryLifetime and also the queue size as follows: > > ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerZipfMandelbrot"); // to be installed on all consumers > consumerHelper.SetAttribute ("LifeTime", StringValue ("9999s")); > ... > Config::Set ("/NodeList//$ns3::ndn::Pit/MaxPitEntryLifetime", TimeValue (Seconds (9999))); // for all nodeID's > ... > Config::SetDefault ("ns3::DropTailQueue::MaxPackets", StringValue ("9999")); > > Still, I am getting some interest and data drops. These drops are measured through L3AggregateTracer and tend to increase by increasing the channel delay using the following command: > > Config::SetDefault ("ns3::PointToPointChannel::Delay", StringValue ("500ms")); > > I am wondering what other settings can lead to packet drops, both on interests and data and what is the most efficient way of preventing such drops? > > Thanks, > Ali -------------- 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 ali090385 at gmail.com Sat Feb 28 16:22:30 2015 From: ali090385 at gmail.com (Al Dab) Date: Sat, 28 Feb 2015 16:22:30 -0800 Subject: [ndnSIM] How to prevent packet drops in ndnSIM 1.0? In-Reply-To: <501BC226-067E-4E5B-AA6B-18201ABB4FB0@ucla.edu> References: <501BC226-067E-4E5B-AA6B-18201ABB4FB0@ucla.edu> Message-ID: Hi Alex, That's a fair point. At this stage, however, I control the queue overflows by making sure that total number of generated interests during my entire simulation time will not exceed the capacity of individual queues. Also, I keep the interests rate fairly low---consumer nodes will request on average 1 interest per sec. While keeping the interest rate fixed, the channel delay, however, is going to be my independent variable which I'd like to be able to set to different values ranging between 1-500ms and still not get packet timeouts/drops. With the previously described configurations, a 500ms channel delay makes the majority of interests timed out (i.e., #TimedOutInterests almost matches #InInterests, even though #DropInterests is fairly low---strange?). Also, on data packets #DropData almost matches #InData and I barely receive any data on the consumers side. I suspect all such drops are purely due to timeouts which presumably could be avoided if packets time-to-live is set sufficiently high. Isn't that right? Thanks, Ali P.S. -- The topology I use is a binary tree of height 6, consumers as leaves and the sole provider as root. On Sat, Feb 28, 2015 at 3:21 PM, Alex Afanasyev < alexander.afanasyev at ucla.edu> wrote: > Hi Ali, > > No matter how big queue you set, if the rate with which you send packets > exceed the capacity of the link, you will get data or interest packet to be > dropped and interests will timeout. > > To prevent losses, you just need to make sure your topology matches the > application demand. > > ? > Alex > > On Feb 28, 2015, at 11:10 AM, Al Dab wrote: > > Hi, > > I am performing some simulations on ndnSIM 1.0 and for some of my > measurements I'd like to completely eliminate interest/data drops or at > least make them as close to zero as possible. My understanding is that most > packet drops happen due to a timeout or a queue overflow. For the interest > part, I have tried to increase the lifetime of the interest packets, > MaxPitEntryLifetime and also the queue size as follows: > > ndn::AppHelper consumerHelper ("ns3::ndn::ConsumerZipfMandelbrot"); // to > be installed on all consumers > consumerHelper.SetAttribute ("LifeTime", StringValue ("9999s")); > ... > Config::Set ("/NodeList//$ns3::ndn::Pit/MaxPitEntryLifetime", > TimeValue (Seconds (9999))); // for all nodeID's > ... > Config::SetDefault ("ns3::DropTailQueue::MaxPackets", StringValue > ("9999")); > > Still, I am getting some interest and data drops. These drops are measured > through L3AggregateTracer and tend to increase by increasing the channel > delay using the following command: > > Config::SetDefault ("ns3::PointToPointChannel::Delay", StringValue > ("500ms")); > > I am wondering what other settings can lead to packet drops, both on > interests and data and what is the most efficient way of preventing such > drops? > > Thanks, > Ali > > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From cghali at uci.edu Sat Feb 28 18:19:56 2015 From: cghali at uci.edu (Cesar Ghali) Date: Sat, 28 Feb 2015 18:19:56 -0800 Subject: [ndnSIM] Send Data from NFD to Scenario Message-ID: <63B3638E-0009-4B76-ADB9-16CB47C62482@uci.edu> Hi all, I was checking how StrategyChoiceHelper::InstallAll sets the selected forwarding strategy. It looks like a command is send to the node in question with all needed parameters. What I?m trying to do, is to have something similar to TracedCallBack that a specific strategy invokes and my scenario implements. I don?t think this can be done using the old fashion TracedCallBack though. One way to do it, is to modify the command that is sent to the node to include a pointer to the function that will be invoked (I still need to figure out how to do this.) Is there a better way to do this? Thanks for the help, Cesar -- PGP Key: http://www.cesarghali.info/contact.html PGP Key ID: 0x455D8052 -------------- next part -------------- An HTML attachment was scrubbed... URL: From spiros.mastorakis at gmail.com Sat Feb 28 18:42:57 2015 From: spiros.mastorakis at gmail.com (Spyridon (Spyros) Mastorakis) Date: Sat, 28 Feb 2015 18:42:57 -0800 Subject: [ndnSIM] Send Data from NFD to Scenario In-Reply-To: <63B3638E-0009-4B76-ADB9-16CB47C62482@uci.edu> References: <63B3638E-0009-4B76-ADB9-16CB47C62482@uci.edu> Message-ID: <6177A98F-6040-4C1F-9607-5AD7B3899C2D@gmail.com> Hi Cesar, I am not sure that I have fully understand what you want to do and its purpose. However, I can clarify that the StrategyChoiceHelper sends special signed Interest commands to the Strategy Choice Manager of NFD in order to define the desired strategy for a specific namespace. For more info, you take a look here: http://named-data.net/wp-content/uploads/2014/07/NFD-developer-guide.pdf For the second part of the question, let me clarify that your scenario should define all the desired parameters and then just be simulated. Again, I have not fully understand what you would like to do, but probably it would be useful for you to use signals to trigger events: https://github.com/NDN-Routing/ndnSIM/blob/master/NFD/daemon/fw/forwarder.hpp#L116-L124 Hope that this helps. -- Spyridon (Spyros) Mastorakis Personal Website: http://cs.ucla.edu/~mastorakis/ Internet Research Laboratory PhD Computer Science UCLA > On Feb 28, 2015, at 6:19 PM, Cesar Ghali wrote: > > Hi all, > > I was checking how StrategyChoiceHelper::InstallAll sets the selected forwarding strategy. It looks like a command is send to the node in question with all needed parameters. What I?m trying to do, is to have something similar to TracedCallBack that a specific strategy invokes and my scenario implements. I don?t think this can be done using the old fashion TracedCallBack though. > > One way to do it, is to modify the command that is sent to the node to include a pointer to the function that will be invoked (I still need to figure out how to do this.) Is there a better way to do this? > > Thanks for the help, > Cesar > > -- > PGP Key: http://www.cesarghali.info/contact.html > PGP Key ID: 0x455D8052 > > _______________________________________________ > ndnSIM mailing list > ndnSIM at lists.cs.ucla.edu > http://www.lists.cs.ucla.edu/mailman/listinfo/ndnsim