Commit Graph
188 Commits
Author SHA1 Message Date
awlaneandAlex Afanasyev af975e5ed5 Update dummy keychain patch to avoid potential segfaults
Under certain circumstances, use of the dummy keychain patch can cause fairly
frequent segfaults when NFD creates UDP multicast faces. These appear to have
been due to issues with using using function-local static variables in a way that
was not thread safe. After some collaboration with Alex Afanasyev regarding finding
a cause, we landed on this fix which adjusts the offending code.

Co-Authored-By: Alex Afanasyev <aa@cs.fiu.edu>
Change-Id: Iadb812cb8a3d87b83421b7fa109dd539f0c7065f
2023-10-09 17:43:55 +00:00
Davide Pesavento 273e80f1fe ci: update all actions to the latest version
Change-Id: Ib799183ea5d613b784f275213b4b2f0f97b80cb8
2023-09-20 23:28:11 -04:00
Varun Patil aed282d565 app: allow using list for command
This allows spaces in arguments

Change-Id: Icb71157eba43488028ea4f207e8009d0201c87c7
2023-09-06 15:10:33 -07:00
awlane 92bc429fe1 Add boolean parameter to NDNRoutingHelper constructor to allow for creating permanent faces.
Refs #5264

Change-Id: I6da3e777261ec978c8cff7da4d10f9661371dacf
2023-07-27 02:29:07 +00:00
awlane cb8c911f41 Allow float value for bw parameter in topology for non-integer values in megabits.
Refs #5263

Change-Id: I1c58129a474b3ec7362419c3a76863079b648b57
2023-07-24 22:55:28 +00:00
awlane 2e7b584ab5 Update dummy keychain patch for v2 namespace change
Change-Id: I8559c33fa8b02d0144b3e23c6c2d4033059e02d4
2023-06-27 08:02:20 -05:00
tylerliu 86647794f8 performance improvements
Change-Id: Ic8aaa0728a43936cd4c6e1ed590e01ba8f0fbf5a
2023-03-14 17:38:26 -07:00
dhensley6691 edd777fdfc Add an argument returnConvergenceInfo to checkConvergence which returns detailed information when convergence fails.
Adds returnConvergenceInfo as an argument to checkConvergence which returns a dictionary of nodes detailing which prefixes were missing from each node. Argument defaults to false to ensure backwards compatibility with pre-existing experiment code.

Refs: #5236
Change-Id: Ia690d50b42f849deee755098248e91a428b8af19
2022-12-13 17:22:36 +00:00
Dylan Hensley dc05e3ce90 docs: Fix broken links in README.md
The links in README.md pointed to an outdated link for the contributor guide and to AUTHORS.md instead of AUTHORS.rst

Refs: #5235
Change-Id: I380127d607b52773cc2d4c3020c9ac9950fe6f44
2022-11-20 19:25:06 -08:00
Varun Patil 047b92cf30 docker: use source install and prune image
Using source over PPA seems appropriate since MiniNDN is
used primarily for experimentation.

Other fixes:
* Let MiniNDN install mininet.
* Switch to Ubuntu 22.04
* Fix incorrect pruning of layers

Change-Id: Id5e52756929fbe3a40597c738ca81989ffb2c075
Signed-off-by: Varun Patil <varunpatil@ucla.edu>
2022-10-31 09:21:31 -07:00
Varun Patil aad8dbea87 docker: add GitHub build and push workflow
Change-Id: Ic600e91129ad81f3a41d4cc9fd9b1d45d44351c3
Signed-off-by: Varun Patil <varunpatil@ucla.edu>
2022-10-14 17:12:29 -07:00
Junxiao Shi 1e720875d2 install: fix git error and support Ubuntu 22.04
refs #5204

Change-Id: Ic6e2ce789746a18cdb8b97e5a4e8175a89ad2e8d
2022-08-01 14:53:33 -07:00
Varun Patil 63a330d317 Add static routes to NFDs in parallel
This allows setting up static routing in large
topologies in a reasonable time. Some timer values
are also reduced, seems to work fine to me

Change-Id: I112cfd216615a100db6dc18182db40ba614d83e6
2022-07-28 14:29:12 -07:00
awlane d8e6b8e508 Create helper methods for specifying face creation via topology
and changes to enable users to run NLSR in Mini-NDN-Wifi.

Refs: #5232
Change-Id: Iac8bd170f34985aa2b7ee080033a6ceaf334bd0c
2022-07-20 14:50:26 -05:00
Varun Patil c69041f603 Allow existing faces in createFace
Change-Id: I48c09c34a81822c25cbab25bff979194829e067f
2022-06-27 20:18:48 -07:00
Varun Patil 97a347fb3a Fix and move Dockerfile to this repository
Change-Id: I07039719c82d3a727b108f7875f231cd6b79493d
2022-05-24 14:33:51 -07:00
awlane 3e95ee8bd7 Fix for dummy keychain patch for ndn-cxx 8e2a6
Change-Id: I94c4e94ba70bafba8f410b4aee748529d75826d6
2022-05-23 16:24:26 -05:00
awlane a169f5702e Allow specification of working directory via constructor argument and related cleanup
Change-Id: Ifc73371c920d1d4e47b1fa04e57de5aebd2a6b40
2022-04-22 12:54:33 -08:00
awlane c32a07be3e Fix broken checks for presence of dummy keychain due to type mismatch
Refs #5200

Change-Id: I848c979c414cb802fe09359efda96c7dd29aa73d
2022-04-19 11:55:11 -08:00
awlane 49e43c39cd Update ndn-cxx dummy keychain patch for API changes
Change-Id: Ib57923ebcf1b5b00513ed50907629acfd1b56f60
2022-03-22 17:03:28 -05:00
dulalsaurab 90faa588cc Prepare 0.6.0 release
Change-Id: I3475f8a5929e0d0672f89aa0a51c25c3880fb03f
2021-12-27 18:02:05 -08:00
Alex Lane 1d3c0a8ac5 Add Nfdc functionality to enable working with FaceID rather than FaceURI exclusively
refs: #5130

Change-Id: I1b7ca1846cafdde8e959663ba53d5bd50b455b39
2021-12-19 04:23:00 +00:00
dulalsaurab 2085544799 examples: adding some basic examples
* consumer/producer
 * ndnping
 * traffic generator
 * catchunks/putchunks

Change-Id: Ie4c37f08f29a945f2fb1ce0b4d36da1bfb3edd3b
2021-12-17 09:11:56 -08:00
dulalsaurab 8c8e633d26 container: pre-built Vagrant box and docker container
Change-Id: Id49a6426f52fd3e22a94fee4607b7e2a6d0a7454
2021-12-17 01:12:03 +00:00
Junxiao Shi 48ada89a8a install: rewrite install script
* set dependency versions: PPA, git repository & commit
* separate download and build+install steps
* don't reinstall package if it's already installed

refs #4630

Change-Id: I966fac5e1633cbabf78ce20cd151a35618efc345
2021-11-04 09:02:21 -06:00
dulalsaurab 578f2ec695 Examples: incorporate latest change of NDNPing Class
Change-Id: I01d59de621992a87c082074766dc18e9a7b549a2
2021-06-17 08:58:02 -07:00
Saurab Dulal b428660d54 Revert "simple topology files with no additional parameters"
This reverts commit eef6ee890e.

Reason for revert: Topologies (http://minindn.memphis.edu/experiment.html#configuration) with no
additional parameter (e.g. hyperbolic coordinates) can't be processed by the existing script.
processTopo assumes that additional parameters exist which is not always true.

Change-Id: I8532b399de2c6f8b2a11823711b7637758dab630
2021-06-16 23:58:20 +00:00
Philipp Moll f53ab47678 ndn_routing_helper: Show status of route calculation
Change-Id: Ib38cedfed57bc8fe1397526c3d05bac6c3d80c93
2021-06-08 12:23:04 +02:00
Alex Lane 407c5f0ef3 Allow for creation of net object without topology and mixed topology fixes
refs: #5160, #5162

Change-Id: I54c2be3a9b4ee152057a8c4f1b52c9abd7b1a2a1
2021-05-14 14:48:59 -05:00
dulalsaurab 0ed7772f3f Bug fix on ndnpingclient and experiment script
Mininet host object is passed as a prefix from experiment
to ndnpingclient, string replacement operation on the
prefix fails at the client which crashes the Mini-NDN

Change-Id: I36c1f9e2e455321d8c650fd9711088b7e5ef2b22
2021-05-13 20:16:42 +00:00
Chad Cothran eef6ee890e simple topology files with no additional parameters
Change-Id: Ie121994596424249b969bb3af94c81d768fb0fc4
2021-03-26 11:15:27 -08:00
Alexander Lane ea2d5d6802 Add wireless simulation to redesigned Mini-NDN using Mininet-wifi.
refs: #4858

Change-Id: If9f7dd069203309c998ab2ff570a6cc8ee362434
2020-10-08 15:01:18 -05:00
Alex Lane 5dbf99dd78 Hotfix for broken code artifact in install.sh
Change-Id: I3296bff4b8e095f334958d1734f15c42f03c7105
2020-10-01 17:10:48 -05:00
Saurab Dulal 576a419ef2 Prepare 0.5.0 release
Small fix to properly handle ndnsec identity check message and also update copyright years in several files.

Change-Id: I1fae8749f7d755f4af1ccca519c236480ff3f824
2020-09-16 16:35:36 +00:00
Alex Lane 587b78ff64 Add a script to generate up-to-date NDN testbed topologies for Mini-NDN
Change-Id: I9686c65fe2f38fbc980c5fb54d876ebb3d9e7ede
2020-09-14 16:05:48 -05:00
Italo Valcy ccd85b1cf1 Change workDir and resultDir to be class attribute
Change-Id: Ia52c273492195163afb3ad14f92bcf06eaee075a
2020-09-04 12:41:16 -07:00
Alex Lane 722dcd53bd patches: updates dummy keychain patch for v2 namespace changes and ndn-cxx changes
Change-Id: I43a1d4a092190a953945cf43ea5f57556a325a9c
2020-08-28 16:06:35 -05:00
phmoll 9efd73922b BUGFIX IP-Routing helper did not work for large topologies
The initial version of the IP routing helper had issues with larger
topologies, especially when multiple paths between nodes are possible.
This fix ensures, that the same route between two nodes are
installed in both directions. This leads to a 100% reachability of nodes
in larger scenarios.

Change-Id: I6165caf11e61dd948320139752c271d8cf063b2a
2020-08-26 08:24:15 -07:00
Laqin Fan cf8e7541ab Check NDN security in Minindn class before printing related info.
refs: #5125

Change-Id: I6f8c154dcce0dd1285f26a244945aff0041f5d11
2020-08-25 01:01:15 -05:00
Ashlesh Gawande 76dbe6633c nfd: uncomment transport in client.conf to allow connections on /run/<node>.sock
refs: #5039

Change-Id: Id14c60ca171f80277a248cb9452c3b4d3e39ebce
2020-04-15 21:30:37 -07:00
Ashlesh Gawande f48424a4a7 patches: update dummy keychain patch to compile against latest ndn-cxx
Change-Id: I1cf323b9550707df0e9662f527348965649c1d94
2020-04-04 17:07:28 -07:00
Giovanni Grieco bb31ed2fcd install.sh: quiet apt install for Vagrant
Vagrant VM provisioning doesn't have any mechanism for user interaction.
For this reason, it is necessary to tell APT that we are in a
non-interactive session and any install question should be answered
automatically by its preset.

For this reason, according to issue #42 and GitHub PR #43, I propose to
add "quiet" option to install.sh. This option tells Debian-based systems
to run APT in non-interactive mode. In case of important questions
during install, we can update the preset list specified in quiet_install
subroutine.

Flag functionality can always be extended in the future to support
unexpected cases where Vagrant provision hangs due to user interaction
request by some other program.

Change-Id: Iab3ce5f9b19cd6bfcf2fa180c433fb5d5d521914
2020-03-24 12:18:22 +01:00
phmoll 1f1de1f87b Add GEANT network as mini-ndn topology
Change-Id: Ieb7e96b473436ce62c2ece6f24801c7f5b9ff4dc
2020-03-18 06:36:29 +01:00
Saurab Dulal 082e4449bb routing-helper: fix route computation bug
Route computation for link-state had a bug, neighbor's list
contained the host itself and so the computation was erroneous,
and ultimately crashing.

Change-Id: I461476eef83b73b64ae943f6f08bf576e3719b94
2020-03-17 21:30:14 -05:00
Philipp Moll 55e2dd9087 Add MiniNDN utility application for PCAP logging
Change-Id: I4f8ee5b6b970c7b74e3697af4a08b72d2169dc2a
2020-03-05 21:47:42 -08:00
phmoll 52223f7144 ndn_routing_helper: fix overwriting of existing prefixes
Instead of overwriting the existing prefixes, the prefixes given
in `prefix` are now appended to the list of already existing
prefixes.

Change-Id: I300f72ab8b0d2688a3379f295499a6ffdcbb54a4
2020-03-05 21:37:49 -08:00
phmoll ad8d37e89d Move logfiles to resultDir after evaluation finished
Reimplement the behavior that copies log files to the
`resultDir`, which was most likely lost when restructuring
MiniNDN. Parts of the patch are reused from an old
MiniNDN revision.

Change-Id: I3045237950320d1eb7840af9828459e47f6d9884
2020-03-04 08:42:27 +01:00
dulalsaurab 5c79db0aec Check duplicate HR coordinates in topology file
refs: #4812
Change-Id: If6c88d24d74e8d5d0d5e815eef1270fafe7b51e6
2020-02-27 06:10:13 +00:00
Eric Newberry a95b681d95 docs: restructure and update AUTHORS.md
refs #5078

Change-Id: Ieae783cb94a482b2ec25be895f4ca3939cc190d3
2020-02-05 19:40:44 -08:00
Ashlesh Gawande 6c86e30f63 **breaking** mini-ndn: re-design
refs: #5062

Everything is now done through examples like Mininet.
bin/minindn no longer provided as a binary installed in the system
bin/minindnedit GUI: will no longer be maintained
Remove cluster edition, will be re-introduced later

Change-Id: Id4ef137cb2a04d1b0dd24d01941757363bbf7d26
2019-12-05 15:13:01 -06:00