Commit Graph

14993 Commits

Author SHA1 Message Date
Steven Smith
8fa163fb0a nix-vector-routing: (merges !380) Provide faster lookups by IP address
Use hash table to lookup nodes by IP addresses rather than linear search
2020-09-27 14:56:08 -07:00
Tom Henderson
4d1387cac0 network: (merges !424) Handle additional SimpleNetDevice review comments 2020-09-27 14:18:29 -07:00
Greg Steinbrecher
bf42996137 network: (merges !424) Align error-model-test-suite with previous commit
Default size of a DropTailQueue is "100p" and error-model-test-suite calls
Send directly (rather than relying on flow control).  Previously, the
rest of the packets would be sent instantly, but previous commit fixes
that bug, so this commit makes the buffer large enough to hold all packets
2020-09-27 12:40:20 -07:00
Greg Steinbrecher
a77e4d39b2 network: (merges !424) Fix instant send in SimpleNetDevice for empty queue
Also consolidate scheduling logic into ScheduleTransmit() rather than
repeating in both SendFrom() and TransmitComplete()
2020-09-27 12:40:10 -07:00
Peter D. Barnes, Jr
b90d4dee6d core: Move Set (void) to .h to terminate recursion. 2020-09-26 08:44:08 -07:00
Harsh Patel
aa56b99e32 fd-net-device: Update documentation for DPDK package installation 2020-09-23 20:42:30 -07:00
Greg Steinbrecher
a4f82a82ff traffic-control: Update test to be parametric (covers problem in !409)
Preserve original test case as one of the options, but add coverage for the single-packet queue case,
which led to !409, as well as some other potential edge cases.
2020-09-23 16:38:55 -07:00
Greg Steinbrecher
4c99303b48 network: (fixes !409) Fix double send in SimpleNetDevice when queue length is 1 packet
Remove a spurious check for queue occupancy in SimpleDevice::TransmitComplete that could lead to double sends. See MR !409 for details.
2020-09-23 16:37:49 -07:00
Tommaso Pecorella
9938e70cb7 core: fix test linking Address from network module 2020-09-22 11:57:56 +02:00
Tommaso Pecorella
35271f301f core: fix AttributeContainerValue::Get 2020-09-22 11:57:16 +02:00
Tom Henderson
a348b4b4b7 fd-net-device: Handle case in which PACKET_QDISC_BYPASS is undefined 2020-09-20 17:17:29 -07:00
Bhaskar Kataria
55253ad346 traffic-control: CE packets treated as ECT1 when L4S mode is enabled
This patch fixes L4S classification for commit b12ac521
2020-09-20 16:34:25 -07:00
Bhaskar Kataria
a5f26de555 traffic-control: (merges !379) Add PIE queue disc active/inactive feature 2020-09-20 16:20:02 -07:00
Jared Dulmage
19a5e0de30 mobility: (merges !101) Add CartesianToGeographic conversion with test
There are cases where it is useful to return to geographic
coordinates from cartesian.  One example is when you have a
mobile node, the position is updated in cartesian coordinates
but you may have a need to understand the geographic position
or heading when determining position relative to other objects
placed geographically, or to compute compass heading or surface
speed.
2020-09-20 16:00:33 -07:00
Jared Dulmage
7514b453f0 config-store: (merges !93) Address review comments for RawTextConfig MR
- Added documentation to raw-text-config.h
- Fixed abort conditions in raw-text-config.cc, RawTextConfigLoad::Strip
- Fixed formatting of ParseLine block in load functions
- Added value.clear() after setting attribute
- Added --load option to config-store-save example, removed config-store-load
- Updated comments, doxygen docs, and example help text.
2020-09-20 15:53:05 -07:00
Jared Dulmage
411c776f03 Copyright and contact to Caliola Engineering, LLC 2020-09-20 15:47:25 -07:00
Jared Dulmage
a8c8965d4d Changes according to MR 93 feedback
-- Added GPL license to config-store-load.cc example
-- Enclosed all if-condition code in braces
-- Changed ASSERT checks on inputs in raw-text-config.cc to ABORT checks
2020-09-20 15:47:25 -07:00
Jared Dulmage
416457f0a5 Added usage string and filename command-line argument 2020-09-20 15:47:25 -07:00
Jared Dulmage
8c3e44642c Amended comments to main to reflect intent of this example 2020-09-20 15:47:25 -07:00
Jared Dulmage
9040da4a9c Address comments in NS-3 merge request 93
There were a number of constructive comments on the original
merge request.

1.  Prior checks in RawTextConfigLoad::Strip ensured the value string
was entirely enclosed in quotation marks.  The original MR removed
those checks.  This revision reintroduces those checks.  Assert
messages have been improved with more information.
2.  RawTextConfigLoad::ParseString was not checking for an empty
line before accessing the first element.
3.  RawTextConfigLoad::ParseString was improved to better handle
whitespace prior to the final value field.

A new config-store-load example was created to allow one to check
a hand-edited config-store raw text file to test the new features.
2020-09-20 15:47:25 -07:00
Jared Dulmage
a65112aa5d Add features for human-editable RawTextConfig files
Features include: ignore # (hash) prefixed comment lines,
ignore blank lines, allow multi-line values.  The latter
feature is particularly useful for entering large arrays
of values that may be set to a container structure.
2020-09-20 15:47:25 -07:00
Jared Dulmage
d244597a2b Documentation, better conformance to AttributeChecker conventions
Both PairChecker and AttributeContainerChecker factory functions
modified to return more generic AttributeCheckers similar to other
attribute types. By removing the templated return type, the internal
templated classes become necessary to define checkers for each
templated type. This follows the pattern in PointerChecker and
ObjectContainerChecker.

The pair-value-test-suite and attribute-container-test-suite were
amended to account for the changes in the checker factories. All
tests continue to pass.

Plenty of documentation was added to PairValue and AttributeContainerValue
and I also removed some dead code.
2020-09-20 15:33:38 -07:00
Jared Dulmage
c8f2bf250e Addressed comments for nsnam/ns-3-dev MR 91
- Removed unnecessary files src/core/model/{attribute-container,pair}.cc
- Removed 'explicit' modifier to PairChecker
- Modified output stream operator for PairValue; update PairValueTestCase
- Updated src/core/wscript to latest master
- Added Pair and AttributeContainer to utils/print-introspected-doxygen.cc
2020-09-20 14:52:02 -07:00
Jared Dulmage
9392a452d8 Copyright and contact to Caliola Engineering, LLC 2020-09-20 14:52:02 -07:00
Jared Dulmage
643378b816 Removed extended-attribute-helper.h
This file should be part of another merge request.
2020-09-20 14:52:02 -07:00
Jared Dulmage
4f4c893e52 STL container and pair attributes
This commit adds the ability to read / write attributes corresponding
to STL containers or pair structures.  Testcases are included and
demonstrate how to add container or pair member variables as
attributes to your class.
2020-09-20 14:52:02 -07:00
Tom Henderson
d1d0423f4c network: Rescan APIs 2020-09-18 09:20:32 -07:00
Tommaso Pecorella
20644db04f network: add LollipopCounter - a sequence number counter type 2020-09-18 00:25:30 +00:00
Tommaso Pecorella
3a353f3032 click: fix out-of-namespace call. 2020-09-17 21:32:09 +00:00
Tommaso Pecorella
f483dc72dd Add NS_ABORT_MSG_IF to preprocessed macros 2020-09-17 13:03:12 +02:00
Tommaso Pecorella
ece1b3616c Fix NS_ABORT_MSG_UNLESS processing 2020-09-17 13:02:42 +02:00
Tommaso Pecorella
a483ebaf5b Update doxygen configuration to 1.8.20 2020-09-17 13:02:10 +02:00
Tom Henderson
696bc53b08 fd-net-device: Finalize merge of DPDK and netmap emulation features
* Handle code review comments (due to Rediet and Mohit)
* Add attribute to configure netmap sync and notify period
2020-09-16 21:04:44 -07:00
Harsh Patel
8108a52069 fd-net-device: Add DPDK emulation support in fd-emu examples
This commit:
	- Add DPDK emulation support in fd-emu examples
	- Minor DpdkNetDevice Documentation Changes

Co-authored-by: Hrishikesh Hiraskar <hrishihiraskar@gmail.com>
Co-authored-by: Mohit P. Tahiliani <tahiliani@nitk.edu.in>
2020-09-16 10:45:18 -07:00
Tom Henderson
7482644eb4 fd-net-device: Netmap and DPDK documentation and small fixes 2020-09-16 10:44:39 -07:00
Pasquale Imputato
ff8083ca2e fd-net-device: add support for emulation in netmap mode 2020-09-16 10:42:24 -07:00
Pasquale Imputato
3766889b74 stats: (fixes #197) Avoid writing stats-config.h 2020-09-16 08:30:49 -07:00
Tom Henderson
0a21a38041 Update coding style 2020-09-16 08:30:49 -07:00
Harsh Patel
bbc1b0c707 fd-net-device: Addressed review comments
Co-authored-by: Hrishikesh Hiraskar <hrishihiraskar@gmail.com>
Co-authored-by: Mohit P. Tahiliani <tahiliani@nitk.edu.in>
2020-09-16 08:30:49 -07:00
Hrishikesh Hiraskar
5f988be2cd fd-net-device: Make dpdk-net-device compatible with libdpdk package
Co-authored-by: Harsh Patel <thadodaharsh10@gmail.com>
Co-authored-by: Mohit P. Tahiliani <tahiliani@nitk.edu.in>
2020-09-16 08:30:49 -07:00
Harsh Patel
8682b797e0 fd-net-device: Make dpdk-net-device compatible with DPDK 19.11
Co-authored-by: Hrishikesh Hiraskar <hrishihiraskar@gmail.com>
Co-authored-by: Mohit P. Tahiliani <tahiliani@nitk.edu.in>
2020-09-16 08:30:49 -07:00
Hrishikesh Hiraskar
598dcf54a7 fd-net-device: Add dpdk-net-device documentation
Co-authored-by: Harsh Patel <thadodaharsh10@gmail.com>
Co-authored-by: Mohit P. Tahiliani <tahiliani@nitk.edu.in>
2020-09-16 08:30:49 -07:00
Hrishikesh Hiraskar
1e9f448409 fd-net-device: Add dpdk-net-device examples
Examples added:
	* fd-dpdk-emu-ping : Ping application
	* fd-dpdk-emu-onoff : OnOff application

Co-authored-by: Harsh Patel <thadodaharsh10@gmail.com>
Co-authored-by: Mohit P. Tahiliani <tahiliani@nitk.edu.in>
2020-09-16 08:30:49 -07:00
Hrishikesh Hiraskar
859eea3c22 fd-net-device: Add dpdk-net-device
Extended fd-net-device to support DPDK.
Changes done:
    * Add DpdkNetDevice
    * FdNetDevice modified to support inheritance
    * FdNetDevice modified to support TypeId
    * EmuFdNetDevice modified to initialize DpdkNetDevice

Co-authored-by: Harsh Patel <thadodaharsh10@gmail.com>
Co-authored-by: Mohit P. Tahiliani <tahiliani@nitk.edu.in>
2020-09-16 08:30:49 -07:00
Alexander Krotov
42f96eed08 Add EditorConfig
EditorConfig is an universal editor configuration file.

It is not sufficient to configure C++ code style, but enough to set indentation settings in many editors.

See https://editorconfig.org for details.
2020-09-16 13:38:01 +00:00
Natale Patriciello
47e9dee1fd spectrum: Replace std::shuffle with customized shuffle to control the channel randomness
see merge request !412
2020-09-15 23:38:08 +02:00
Anna Poon
91babc8f21 adding changes for intern apps for merge 2020-09-15 19:45:49 +00:00
Jordan Dorham
54e8615566 implementing time changes in netanim 2020-09-15 19:37:50 +00:00
Jordan Dorham
2118311d80 Time arithmetic implementation changes in propagation module 2020-09-15 19:37:31 +00:00
Anna Poon
ba8362f3d7 adding changes without whitespace for merge 2020-09-15 19:36:36 +00:00