doc: Update AUTHORS, CHANGES.md, and RELEASE_NOTES.md for ns-3.42

This commit is contained in:
Tom Henderson
2024-05-27 22:12:43 -07:00
parent d696de6086
commit adb6b82340
3 changed files with 59 additions and 40 deletions

View File

@@ -1,3 +1,4 @@
Rami Abdallah <abdallah.rami@gmail.com>
Eduardo Abinader (eduardo.abinader@gmail.com)
John Abraham (john.abraham.in@gmail.com)
Danilo Abrignani (dabrignani@gmail.com)
@@ -43,6 +44,7 @@ Matthew Bradbury (matt-bradbury@live.co.uk)
Dan Broyles (muxman@sbcglobal.net)
Jonathan Brugge (j.d.brugge@student.utwente.nl)
Junling Bu (linlinjavaer@gmail.com)
Alessio Bugetti (alessiobugetti98@gmail.com)
Elena Buchatskaia (borovkovaes@iitp.ru)
Alessio Bugetti (alessiobugetti98@gmail.com)
Nuno Cardoso (nunopcardoso@gmail.com)
@@ -56,6 +58,7 @@ Aditya Chaudhary (adityach2002@gmail.com)
Shobhit Chaurasia (000shobhitchaurasia@gmail.com)
Luciano Jerez Chaves (ljerezchaves@gmail.com)
Eugene Chemeritskiy (echemeritskiy@arccn.ru)
Rui Chen (rui@chenrui.dev)
Yufei Cheng (yfcheng@ittc.ku.edu)
Aditya Chirania (adityachirania97@gmail.com)
Zhao Wen Chow (shu@mos.ics.keio.ac.jp)
@@ -136,6 +139,7 @@ Atishay Jain (atishayjain25@gmail.com)
Sourabh Jain (jainsourabh679@gmail.com)
Vivek Jain (jain.vivek.anand@gmail.com)
Sam Jansen (sam.jansen@gmail.com)
Jacob Janzen (jacob.a.s.janzen@gmail.com)
Chandrakant Jena (chandrakant.barcelona@gmail.com)
Liu Jian (liujatp@gmail.com)
Sascha Alexander Jopen (jopen@informatik.uni-bonn.de)
@@ -151,6 +155,7 @@ Nils Kattenbeck (nils.kattenbeck@rwth-aachen.de)
Morteza Kheirkhah (m.kheirkhah@sussex.ac.uk)
Jörg Christian Kirchhof (christian.kirchhof@rwth-aachen.de)
Ohad Klausner
Wojtek Kosior (koszko@koszko.org)
Katarina Koutlia (katerina.koutlia@cttc.es)
Shravya Ks (shravya.ks0@gmail.com)
Flavio Kubota (flaviokubota@gmail.com)
@@ -193,6 +198,7 @@ Andrey Mazo (mazo@iitp.ru)
Jonathan McCrohan (jmccroha@tcd.ie)
Andrew McGregor (andrewmcgr@gmail.com)
Miralem Mehic (miralemmehic@gmail.com)
Zili Meng (zilim@ieee.org)
Levente Mészáros (levy@omnetpp.org)
Vedran Miletić (rivanvx@gmail.com)
Saswat Mishra (clicksaswat@gmail.com)
@@ -270,11 +276,13 @@ Karsten Roscher (sfx@rocktale.de)
Ali Rostami (a.rostami@rutgers.edu)
Bill Roome (wdr@bell-labs.com)
David Rua (david.rua@gmail.com)
Chan Ruihua (chenrh20@mails.tsinghua.edu.cn)
Andrea Sacco (andrea.sacco85@gmail.com)
Richard Sailer (richard_sailer@systemli.org)
Lynne Salameh (l.salameh@cs.ucl.ac.uk)
Providence Salumu Munga (Providence.Salumu@gmail.com, Providence.Salumu_Munga@it-sudparis.eu)
Francisco Javier Sánchez-Roselly (fnavarro@ujaen.es)
Mattia Sandri (sandrimatt@dei.unipd.it)
Charitha Sangaraju (charitha29193@gmail.com)
Siddharth Santurkar (siddharth.santurkar@ieee.org)
Gaurav Sathe (gaurav.sathe@tcs.com)
@@ -288,6 +296,7 @@ Ioannis Selinis (selinis.g@gmail.com)
Tomasz Seweryn (tomasz.seweryn7@gmail.com)
Dmitrii Shakshin (d.shakshin@gmail.com)
Kulin Shah (m.kulin@gmail.com)
Muyuan Shen (shmy315@gmail.com)
Guowang Shi (shiguowang2007@gmail.com)
Phillip Sitbon (phillip.sitbon@gmail.com)
Pedro Silva (pmms@inesctec.pt)

View File

@@ -13,43 +13,39 @@ Note that users who upgrade the simulator across versions, or who work directly
This file is a best-effort approach to solving this issue; we will do our best but can guarantee that there will be things that fall through the cracks, unfortunately. If you, as a user, can suggest improvements to this file based on your experience, please contribute a patch or drop us a note on ns-developers mailing list.
Changes from ns-3.41 to ns-3-dev
--------------------------------
Changes from ns-3.41 to ns-3.42
-------------------------------
### New API
* (wifi) New trace helper `WifiPhyRxTraceHelper` for detailed tracing of Wi-Fi Phy reception events
* (wifi) New trace sources `SpectrumWifiPhy::SignalTransmission`, `YansWifiPhy::SignalArrival`, and `YansWifiPhy::SignalTransmission`
* (wifi) New trace sources `WifiPhyStateHelper::RxOutcome` and`WifiPhy::PhyRxPpduDrop`, to support additional tracing.
* Objects now can be aggregated to multiple objects though the `Object::UnidirectionalAggregateObject` function. Objects aggregated in such a way can not use `GetObject` to access the objects they are aggregated to.
* (network) Added `ApplicationHelper` helper class to create and install applications, removing
redundant code in existing helpers and reducing the burden to add yet another helper when a new
application model is added.
* (antenna) Added `CircularApertureAntennaModel` class which characterizes the antenna gain pattern of the reflector antenna with circular aperture described in 3GPP TR 38.811 v15.4.0, Section 6.4.1
* (core) Objects now can be aggregated to multiple objects though the `Object::UnidirectionalAggregateObject` function. Objects aggregated in such a way can not use `GetObject` to access the objects they are aggregated to.
* (core) Added `TestVector` iterators and dot product operator for `Vector2D` and `Vector3D` types
* (mobility) Added a new mobility model `GeocentricConstantPositionMobilityModel` for orbital and/or aerial nodes, and coordinate conversion methods between geocentric and topocentric coordinate systems
* (propagation, spectrum) Added 3GPP 38.811 Non-Terrestrial Networks (NTNs) channel model. Specifically, the large-scale phenomena have been implemented by extending `ThreeGppPropagationLossModel` with classes representing the various NTN propagation scenarios (Dense Urban, Urban, Rural and Suburban), while the frequency-dependent phenomena have been implemented by defining the corresponding scenarios in `ThreeGppChannelModel`.
* (network) Added `ApplicationHelper` helper class to create and install applications, removing redundant code in existing helpers and reducing the burden to add yet another helper when a new application model is added.
* (wifi) Added a new **SingleRtsPerTxop** attribute to `WifiDefaultProtectionManager`, which, if set to true, prevents to use protection mechanisms (RTS or MU-RTS) more than once in a TXOP (unless required for specific purposes, such as transmitting an Initial Control Frame to an EMLSR client).
* (wifi) Added a new **RtsCtsTxDurationThresh** to `WifiRemoteStationManager` to enable RTS/CTS protection based on the TX duration of the data frame. Both the value of this attribute and the value of the existing **RtsCtsThreshold** attribute are evaluated: if either of the thresholds (or both) is exceeded, RTS/CTS is used.
* (mobility) Added a new mobility model `GeocentricConstantPositionMobilityModel` for orbital and/or aerial nodes, and coordinate conversion methods between geocentric and topocentric coordinate systems
* (antenna) Added `CircularApertureAntennaModel` class which characterizes the antenna gain pattern of the reflector antenna with circular aperture described in 3GPP TR 38.811 v15.4.0, Section 6.4.1
* (core) Added `TestVector` iterators and dot product operator for `Vector2D` and `Vector3D` types
* (propagation, spectrum) Added 3GPP 38.811 Non-Terrestrial Networks (NTNs) channel model. Specifically, the large-scale phenomena have been implemented by extending `ThreeGppPropagationLossModel` with classes representing the various NTN propagation scenarios (Dense Urban, Urban, Rural and Suburban), while the frequency-dependent phenomena have been implemented by defining the corresponding scenarios in `ThreeGppChannelModel`.
* (wifi) New trace helper `WifiPhyRxTraceHelper` for detailed tracing of Wi-Fi Phy reception events
* (wifi) New trace sources `WifiPhy::SignalTransmission`, `SpectrumWifiPhy::SignalArrival`, and `YansWifiPhy::SignalArrival`
* (wifi) New trace sources `WifiPhyStateHelper::RxOutcome` and`WifiPhy::PhyRxPpduDrop`, to support additional tracing.
### Changes to existing API
* `InetSocketAddress::SetTos()` and `InetSocketAddress::GetTos()` have been removed.
Applications have a new Attribute to set the IPv4 ToS field.
* (applications) Applications have a new Attribute to set the IPv4 ToS field.
* (core) Deprecated enum `TestDuration` in `TestCase` class. It has been replaced by enum class `Duration`.
* (core) In `TestSuite` class, deprecated `ALL`, `UNIT`, `SYSTEM`, `EXAMPLE` and `PERFORMANCE`. They have been replaced by `Type::ALL`, `Type::UNIT`, `Type::SYSTEM`, `Type::EXAMPLE` and `Type::PERFORMANCE`, respectively.
* (core) Deprecated `EventId::IsRunning()`. It has been replaced with `EventId::IsPending()`.
* (wifi) `WifiPhyRxfailureReason` enum has a new drop reason `SIGNAL_DETECTION_ABORTED_BY_TX` to account for PPDUs dropped during the initial reception phase
* (wifi) Deprecated `WIFI_TID_TO_LINK_MAPPING_{NOT_SUPPORTED,SAME_LINK_SET,ANY_LINK_SET}`. They have been replaced by `WifiTidToLinkMappingNegSupport::{NOT_SUPPORTED,SAME_LINK_SET,ANY_LINK_SET}`, respectively.
* (wifi) Deprecated `{IDLE, CCA_BUSY, TX, RX, SWITCHING, SLEEP, OFF}`. They have been replaced by `WifiPhyState::{IDLE, CCA_BUSY, TX, RX, SWITCHING, SLEEP, OFF}`, respectively.
* (energy) The model library code of the energy module now uses the nested namespace `energy`.
* (lr-wpan) `MacPibAttributeIdentifier` attribute ids are now standard compliant.
* (lr-wpan) Multiple new identifiers added to `MacPibAttributeIdentifier`.
* (lr-wpan) Adds standard version comments to `MLME-GET.request` function.
* (lr-wpan) In the MAC layer, renamed `m_selfExt` to the variable `m_macExtendedAddress` to make it consistent with the standard specification.
* (lr-wpan) The Lr-wpan module now uses the namespace `lrwpan`.
* (lr-wpan) The model library code of the lr-wpan module now uses the nested namespace `lrwpan`.
* (lr-wpan) The `LrWpan` prefix of variables, structs and enumerations in the PHY and MAC was shorten to reflect the recent namespace change.
* (wifi) Deprecated `WIFI_TID_TO_LINK_MAPPING_{NOT_SUPPORTED,SAME_LINK_SET,ANY_LINK_SET}`. They have been replaced by `WifiTidToLinkMappingNegSupport::{NOT_SUPPORTED,SAME_LINK_SET,ANY_LINK_SET}`, respectively.
* (wifi) Deprecated `{IDLE, CCA_BUSY, TX, RX, SWITCHING, SLEEP, OFF}`. They have been replaced by `WifiPhyState::{IDLE, CCA_BUSY, TX, RX, SWITCHING, SLEEP, OFF}`, respectively.
* (wifi) Obsoleted **Txop** attributes `MinCw`, `MaxCw`, `Aifsn` and `TxopLimit`. The corresponding attributes for multi-link devices (`MinCws`, `MaxCws`, `Aifsns` and `TxopLimits`) can be used instead.
* (energy) The energy module and all its contents now uses the namespace `energy`.
### Changes to build system
@@ -58,7 +54,7 @@ Applications have a new Attribute to set the IPv4 ToS field.
### Changed behavior
* Fixed the corner rebound direction in `RandomWalk2d[Outdoor]MobilityModel` and the initial direction in case of node starting from a border or corner.
* (mobility) Fixed the corner rebound direction in `RandomWalk2d[Outdoor]MobilityModel` and the initial direction in case of node starting from a border or corner.
* (tcp) TcpCubic and TcpLinuxReno will no longer grow their congestion window when application-limited, now matching Linux behavior
Changes from ns-3.40 to ns-3.41

View File

@@ -13,47 +13,61 @@ a [GitLab.com issue tracker](https://gitlab.com/nsnam/ns-3-dev/-/issues) number,
and references prefixed by '!' refer to a
[GitLab.com merge request](https://gitlab.com/nsnam/ns-3-dev/-/merge_requests) number.
Release 3-dev
-------------
Release 3.42
------------
In this release, we have introduced pedantic warnings to enhance C++ standard conformance and improve portability.
In this release, we have introduced pedantic compiler warnings to enhance C++ standard conformance and improve portability. Also, model library code in the lr-wpan and energy modules has been moved into a nested C++ namespace.
### Availability
This release is available from:
<https://www.nsnam.org/release/ns-allinone-3.42.tar.bz2>
### Supported platforms
This release is intended to work on systems with the following minimal
requirements (Note: not all ns-3 features are available on all systems):
- g++-9 or later, or LLVM/clang++-10 or later
- Python 3.6 or later
- CMake 3.13 or later
- (macOS only) Xcode 11 or later
- (Windows only) Msys2/MinGW64 toolchain or WSL2
Python API requires [Cppyy](https://cppyy.readthedocs.io/en/latest/installation.html) and has only
been tested on Linux. The latest known version to work with ns-3 is cppyy==3.1.2.
been tested on Linux. As of this release, the latest known version to work with ns-3 is cppyy==3.1.2.
### New user-visible features
- (wifi) 1901! - Added WifiPhyRxTraceHelper for Wi-Fi Phy tracing
- (network) !1828 - Added a common helper to create and install applications
- (antenna) !1517 - Added `CircularApertureAntennaModel`, which mimics the reflector antenna with circular aperture described in 3GPP TR 38.811 v15.4.0, Section 6.4.1
- (core) !1517 - Added `TestVector` iterators and dot product operator for `Vector2D` and `Vector3D` types
- (energy) !1948 - Adds C++ namespace 'energy'
- (lr-wpan) !1915 - Use MAC and PHY standard attribute ids
- (lr-wpan) !1924 - Adds MAC attribute identifiers
- (lr-wpan) !1927 - Adds standard version comments to MLME-GET.request function
- (lr-wpan) !1926 - Adds namespace lrwpan and prefix shortening
- (lr-wpan) !1926 - Adds C++ namespace 'lrwpan' and prefix shortening
- (mobility) !1986 - Adds simple constant-mobility-example
- (mobility) !1517 - Added the `GeocentricConstantPositionMobilityModel` mobility model and coordinate conversion methods between geocentric and topocentric coordinate systems
- (propagation, spectrum) !1517 - Added 3GPP 38.811 Non-Terrestrial Networks channel model
- (network) !1828 - Added a common helper to create and install applications
- (wifi) - The `WifiMacHelper` provides a `SetDcf` and a `SetEdca` methods to configure attributes of `Txop` and `QosTxop` objects, respectively
- (wifi) - The `ApWifiMac` provides new attributes (`CwMinsForSta`, `CwMaxsForSta`, `AifsnsForSta` and `TxopLimitsForSta`) to define the EDCA access parameters to include in the EDCA Parameter Set advertised to associated stations
- (wifi) - The `WifiMacHelper` provides a `SetChannelAccessManager` and a `SetFrameExchangeManager` methods to configure attributes of `ChannelAccessManager` and `FrameExchangeManager` objects, respectively
- (wifi) - Simulation duration and data rate parameters of existing wifi examples changed to use Time and DataRate types
- (mobility) !1986 - Adds simple constant-mobility-example
- (energy) !1948 - Adds namespace energy
- (mobility) !1517 - Added the `GeocentricConstantPositionMobilityModel` mobility model and coordinate conversion methods between geocentric and
topocentric coordinate systems
- (antenna) !1517 - Added `CircularApertureAntennaModel`, which mimics the reflector antenna with circular aperture described in
3GPP TR 38.811 v15.4.0, Section 6.4.1
- (core) !1517 - Added `TestVector` iterators and dot product operator for `Vector2D` and `Vector3D` types
- (propagation, spectrum) !1517 - Added 3GPP 38.811 Non-Terrestrial Networks channel model
- (wifi) 1901! - Added WifiPhyRxTraceHelper for Wi-Fi Phy tracing
### Bugs fixed
- (build) #1048 - Resolved an issue with static and monolithic builds incorrectly linking to non-ns-3 libraries.
- (build) #1058 - Corrected the behavior of the ./ns3 clean command in symlinked directories.
- (build) #1065 - Rolled back the -Os optimization setting as the default on MacOS to address lld compatibility issues.
- (bindings) - Preventing module namespace collision by checking if namespace exists before injecting it.
- (core) #1060 - Addressed a stack overflow problem in MakeEvent.
- (bindings, core) #1059 - Resolved potential initialization issues in TimerImpl and ensured compatibility with Cppyy3.
- (bindings, core) - Introduced a helper class to manage static initialization of Time as a workaround for Cppyy3 static initialization problems.
- (bindings, lte, wifi) - Relocated statically initialized variables from header files to source files for Cppyy3 compatibility.
- (build) #1048 - Resolved an issue with static and monolithic builds incorrectly linking to non-ns-3 libraries.
- (build) #1058 - Corrected the behavior of the ./ns3 clean command in symlinked directories.
- (build) #1065 - Rolled back the -Os optimization setting as the default on MacOS to address lld compatibility issues.
- (core) #1060 - Addressed a stack overflow problem in MakeEvent.
- (tests) - Enhanced error handling in test.py to avoid attempts to open non-existent XML files following early test termination by sanitizers.
- (tcp) #735 - BBR fails to discard invalid samples
- (tcp) #966 - Tcp Cubic (and LinuxReno) cwnd should not grow during application-limited phase
- (tcp) #1085 - Do not reset Cubic W_max upon timeout
- (wifi) #1072 - Support configuration of custom EDCA parameters via Txop attributes before device installation