Commit Graph

1227 Commits

Author SHA1 Message Date
F5
556959fa43 mtp: Add examples 2023-09-15 16:04:12 +08:00
Gabriel Ferreira
215f83f9ec core, examples: fix rollback mistake with HAVE_SQLITE3 and core build 2022-05-15 00:12:25 -03:00
Gabriel Ferreira
6473b7ec98 build: rollback linking to globally searched libraries 2022-05-13 18:50:55 -03:00
Gabriel Ferreira
6f5d788e44 stats: fixes for SQLite stats and its example
- Hold string references between binds in sqlite-data-output.cc
- Unref sqlite object to close the file and prevent leakage
- Build wifi-example-sim once for the wifi-example-db.sh script
- Add the missing return 0
2022-05-13 15:34:49 -03:00
Gabriel Ferreira
ea7ca9b690 build: include and link to globally searched libraries 2022-05-12 19:15:48 -03:00
Stefano Avallone
e3f51bccde wifi: Allow enabling UL OFDMA in wifi-he-network script 2022-04-25 21:49:31 +02:00
Gabriel Ferreira
819877045f build: Remove unused CMake code 2022-04-20 18:39:33 -03:00
Tom Henderson
c5a2b513cd wifi: Small updates to three example programs.
* wifi-80211n-mimo.cc:  Add option to disable preamble detection
* wifi-bianchi.cc:  Update comment to account for more Wi-Fi standards
* wifi-simple-infra.cc:  Update stale comments and some minor style cleanup
2022-04-19 11:28:38 -07:00
Mohit P. Tahiliani
44c85d30ca examples: Update fifth.cc and the cwnd plot in the tutorial 2022-04-15 21:50:57 +05:30
Gabriel Ferreira
db4c10bb8c build: python bindings fixes
Includes:
- scan for python examples if bindings are enabled
- do not scan python bindings from modules without a module/bindings directory
- remove broken bindings if pybindgen generation fails
- replace colored message with normal message for find_external_library
- complement pybindgen to check if modules with no bindings folder was scanned and any bindings were generated
2022-04-05 00:28:27 -03:00
Gabriel Ferreira
72e6105195 build: CMake and ns3 fixes
Includes:
- print error message instead of forwarding posix signals in ns3
- supress printing of "Finished executing commands..." for ./ns3 run
- fix ns3 typos and formatting issues
- add verbose options and make doxygen/doxygen-no-build verbose
- re-enable printing of build messages in ./ns3 run
- refactor ns3 dry_run, quiet, jobs and verbose arguments
- check if examples subdirectories have a CMakeLists.txt
2022-04-01 23:44:49 -03:00
Davide Magrin
df05ad1210 wifi: Set wifi-spatial-reuse.cc to use 20 MHz BW
This commit adapts the example to use the new way of specifying channel,
bandwidth and band via the ChannelSettings attribute, solving a
regression that caused it to use an 80 MHz bandwidth instead of the 20
MHz it was originally calibrated with.

In addition, it also expands the script description to reflect the
discussions in !873 and #566.
2022-03-21 13:57:12 -07:00
Tommaso Pecorella
d5ca973afb examples: Clarify variable names in tcp-variants-comparison.cc 2022-03-21 13:50:10 -07:00
Tommaso Pecorella
e576878f22 examples: (fix #575) Update tcp-variants-comparison to log multiple flows 2022-03-21 13:48:37 -07:00
Mohit P. Tahiliani
452750347b examples: Hook trace source after application starts in BBR example 2022-03-20 18:30:18 +05:30
Szymon Szott
bd5a7b4ff1 wifi: fix typo in wifi-backward-compatibility.cc 2022-03-02 09:21:19 +00:00
Pasquale Imputato
327445ee94 wifi: (merges !843) Allow zero-throughput cases for wifi-he-network example.
The wifi-he-network example should check if the obtained throughout is
greater than zero before failing due to unexpected value.
2022-02-28 07:09:53 -08:00
Gabriel Ferreira
e32c177e45 build: remove waf files, tests and references 2022-02-21 22:08:45 -03:00
Tom Henderson
f50ba3169c wifi: (fixes #470) Update default Wi-Fi standard to 802.11ax 2022-02-14 12:26:32 -08:00
Gabriel Ferreira
acd5da1957 build: refresh project on scratch changes 2022-02-02 23:37:56 +00:00
Tommaso Pecorella
da09260c3e examples: rebase 2022-01-30 12:06:53 -06:00
Gabriel Ferreira
41aacec626 build: CMake refactoring
Includes:
- refactor build_lib and build_lib_example macros
    - unify src and contrib macros
    - replace macro with function not to leak definitions
    - parse list of arguments
- different cmake-format file for modules to list one item per line
2022-01-28 10:20:18 -03:00
Akash Mondal
bd7a35f821 internet: fix errors in IPv6 Path MTU discovery. 2022-01-26 23:42:10 +00:00
Gabriel Ferreira
9342082c53 bindings, build: fix bindings and visualizer build
Includes:
- scan python scripts
- run python scripts from ns3
- replace visualizer file copy with configure_file to prevent cmake refreshes
- replace ns__init__.py file copy with configure_file to prevent cmake refreshes
- fix bindings scanning with cmake
- pass include directories to modulegen for castxml consumption
- add missing parameters of Recv in python-unit-tests.py
- change apiscan targets from apiscan-module to libmodule-apiscan
- change bindings targets from module-bingings to libmodule-bindings
- scanning and bindings build tests
- scan scratch python scripts
- replace FindPython3 with FindPython to be compatible with CMake 3.10
- do not export private visual-simulator-impl.h
- do not export udp-socket-impl.h
- use .so suffix for bindings on Mac instead of .dylib
2022-01-26 01:53:28 -03:00
bbojovic
a4b43d0132 spectrum: Move doppler term D and alpha and improve (Thanks to Sandra Lagen)
Co-authored-by: Sandra Lagen <sandra.lagen@cttc.es>

This commit also fixes an issue that was discovered during this implementation,
and that is that the stream was never assigned for the uniform random variable used for
the term D and alpha generation.

-Store term D and alpha into the channel params structure.
-Make sure to use correct angles and zenit of departure and arrival:
Save the direction of the generation of the channel params and channel matrix,
in order to know when regenerating channel matrix if the saved angles aoa, aod,
zoa and zod are of of s-to-u or u-to-s, so to properly use them.
- Simplify the type of the key of channel matrix map
- Remove unecessary if statements and abort replace by assert
- Add a more detailed description of the ThreeGppSpectrumPropagationLossModel changes
2022-01-22 11:43:28 +01:00
bbojovic
4ca8b12ea0 spectrum: Support passing the TX and RX PhasedArrayModel objects to spectrum model
This possibility is needed for the types of spectrum propagation models that need to have a pointer
to the TX and RX antenna arrays to perform calculations, such as e.g.,
ThreeGppSpectrumPropagationLossModel, which currently has hard limitation of having a maximum of 1
antenna array instance per device. ThreeGppSpectrumPropagationLossModel now inherits a new class
PhasedArraySpectrumPropagationLossModel. Its DoCalcRxPowerSpectralDensity function has now two
additional parameters: TX and RX antenna arrays. Also, AddDevice function is removed from
ThreeGppSpectrumPropagationLossModel, because it is not anymore needed to specify for each
device its TX/RX antenna, since these are now passed as parameters. Hence, to use
ThreeGppSpectrumPropagationLossModel, when implementing Spectrum PHY features,
modules should implement the function of SpectrumPhy GetAntenna to return the instance of
PhasedArrayModel of that SpectrumPhy. These instances will be passed by MultiModelSpectrumChannel
(one of the core classes in the spectrum module) to propagation classes, children of
PhasedArraySpectrumPropagationLossModel, when it is necessary to DoCalcRxPowerSpectralDensity to
callculate the propagation loss.

Additionally: Fixed pair key generation for 3gpp channel model: Previous implementation was
using a cantor function of two integer of 32 bits and as a results was giving a unique
representatio of 32 bits. This is wrong, because such function needed even more than 64
bits to represent that value. Even if in ns-3 simulation we are not going to have such large
node numbers, we should fix this. Instead of just changing 64 bits from cantor function, I propose to
replace the cantor function with just simple concatenation of two 32 bits.

I also propose moving min and max inside of the function, to prevent some eventual future errors
in using GetKey, because with the previous implementation there was assumption that who calls GetKey
will previously sort its parameters, and first provide the min value, and then the max value,
and this was not even documented.
2022-01-22 03:42:49 +01:00
Gabriel Ferreira
33f2ee841b doc: update ns3 API 2022-01-19 16:25:03 -03:00
Sébastien Deronne
3fec6c013d wifi: merge RegularWifiMac and WifiMac 2022-01-09 17:14:04 +01:00
Stefano Avallone
961f9ab025 wifi: Doxygen fixes 2022-01-08 19:23:12 +01:00
Stefano Avallone
2a1d009116 wifi: Separate wifi standard and PHY band 2022-01-08 19:23:12 +01:00
Peter Barnes
0e685cbdbb Use [[maybe_unused]] attribute directly, instead of NS_UNUSED 2021-12-21 10:32:43 +00:00
Tom Henderson
2c19b5b453 internet: Remove Network Simulation Cradle (NSC) 2021-12-10 09:07:03 -08:00
Gabriel Ferreira
f6ef415392 build: CMake bugfixes
Fixes include:
- Handling of relative paths used as output directories
- Accepting comma separated lists of modules to enable/disable
- Echoing all CMake commands at the end of the execution of ns3 script
- More informative optional features summary output
- Replace absolute paths with relative paths in the printed CMake output for less verbose output
- Set debug build type on the CMake side to ensure ccmake doesn't crash
- Prefix INT64X64 with NS3 to indicate user switch
- Compiler version check
- Removal of verbose option
- Suppress empty enabled/disabled module tables

Features include:
- Test for installation/uninstallation of ns-3 as a CMake package
- Test importing ns-3 as a CMake package and use in a 3rd-party project
- Test to check VERSION usage
- ns3 option to enable/disable sanitizers
- Associate headers to libraries targets
2021-12-10 02:13:43 +00:00
Stefano Avallone
bd7ebdd4cf wifi: Switch to the new PHY methods to set the operating channel 2021-12-07 09:45:04 +01:00
Gabriel Ferreira
a893eba7e3 build: Fix CMake and ns3 script bugs, add a test suite and fix formatting 2021-12-05 21:53:49 +00:00
Gabriel Ferreira
3c604d5b2e Update docs with CMake and ns3 wrapper 2021-12-01 12:29:56 -08:00
Gabriel Ferreira
9c876c7f5a CMake buildsystem 2021-12-01 12:29:55 -08:00
Gabriel Ferreira
a4b86694f8 Missing headers and forward declarations 2021-12-01 12:29:55 -08:00
Gabriel Ferreira
22a1631700 Missing __FILE__ macros 2021-12-01 12:29:55 -08:00
Stefano Avallone
c35945ebf2 wifi: Install (Qos)Txop objects appropriately 2021-10-13 17:40:31 +02:00
Tom Henderson
310052adab tcp: Add logging to tcp-validation example 2021-09-13 09:23:57 -07:00
Aditya Chirania
3eecf5162c tcp: (fixes #407) Align TcpCubic::GetSsThresh() with Linux 2021-09-13 09:12:52 +05:30
Szymon Szott
f9cb9342ce Update wifi-spectrum-saturation-example.cc -- fix description of default distance value (from 50 to 1 m) to conform to the code 2021-09-08 15:03:40 +00:00
Stefano Avallone
171d1978d8 wifi: wifi-he-network example uses YansWifiPhy by default (again) 2021-07-02 11:26:06 +02:00
Stefano Avallone
d5bf97887b wifi: Extend wifi-he-networks example to show OFDMA usage 2021-06-15 13:09:07 +02:00
Vivek Jain
f0b7deab3d tcp: Fix BBR code for optimized compilation mode 2021-06-08 09:34:19 -07:00
Mohit P. Tahiliani
490a1b83e4 tcp: Documentation and minor fixes for BBR 2021-06-07 14:51:13 -07:00
Mohit P. Tahiliani
b9e35ffb02 tcp: Add example for BBR 2021-06-07 14:51:13 -07:00
Mohit P. Tahiliani
2526c7df94 tcp: Add TcpBbr to tcp-variants-comparison example 2021-06-07 14:51:13 -07:00
Tom Henderson
acec4714bb examples: (fix of commit e353bafa) Set PCAP data link type 2021-04-20 09:41:53 -07:00