Update AUTHORS, CHANGES, and RELEASE_NOTES

This commit is contained in:
Tom Henderson
2022-10-27 13:22:02 -07:00
parent 71d6edf987
commit dd8763657d
3 changed files with 74 additions and 63 deletions

View File

@@ -68,6 +68,7 @@ Ankit Deepak (adadeepak8@gmail.com)
Christophe Delahaye (christophe.delahaye@orange.com)
Sébastien Deronne (sebastien.deronne@gmail.com)
Ameya Deshpande (ameyanrd@outlook.com)
Zhiheng Dong (dzh2077@gmail.com)
Christoph Döpmann (doepmanc@informatik.hu-berlin.de)
Jordan Dorham (dorham1@llnl.gov)
Craig Dowell (craigdo@ee.washington.edu)
@@ -109,6 +110,7 @@ Frank Helbert (frank@ime.usp.br)
Tom Henderson (tomhend@u.washington.edu)
Christopher Hepner (hepner@hs-ulm.de)
Budiarto Herman (budiarto.herman@magister.fi)
Heun (git-gmb.hpmta@simplelogin.com)
Tom Hewer (tomhewer@mac.com)
Kristian A. Hiorth (kristahi@ifi.uio.no)
Hrishikesh Hiraskar (hrishihirakar@gmail.com)
@@ -137,6 +139,7 @@ Ouassim Karrakchou (okarr102@uottawa.ca)
Tanmay Kathpalia (tanmay.kathpalia@landisgyr.com)
Konstantinos Katsaros (dinos.katsaros@gmail.com)
Bhaskar Kataria (www.bhaskar.com7@gmail.com)
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
@@ -187,6 +190,7 @@ Faker Moatamri (faker.moatamri@inria.fr)
Edvin Močibob (edvin.mocibob@gmail.com)
Amir Modarresi (amodarresi@ittc.ku.edu)
Akash Mondal (a98mondal@gmail.com)
Lars Moons (lars.moons@student.uantwerpen.be)
Mike Moreton (mjvm_ns@hotmail.com)
Michele Muccio (michelemuccio@virgilio.it)
Esteban Municio (esteban.municio@urjc.es)
@@ -214,6 +218,7 @@ Jendaipou Palmei (jendaipoupalmei@gmail.com)
Parth Pandya (parthpandyappp@gmail.com)
Harsh Patel (thadodaharsh10@gmail.com)
Natale Patriciello (natale.patriciello@gmail.com)
Pavinberg (pavin0702@gmail.com)
Tommaso Pecorella (tommaso.pecorella@unifi.it)
Guangyu Pei (guangyu.pei@boeing.com)
Josh Pelkey (jpelkey@gatech.edu)
@@ -293,6 +298,7 @@ Adrian S. W. Tam (adrian.sw.tam@gmail.com)
Cristiano Tapparello (cristiano.tapparello@rochester.edu)
Hajime Tazaki (tazaki@sfc.wide.ad.jp)
Wilson Thong (wilsonwk@ee.cityu.edu.hk)
Lars Toenning (lars.toenning@gmail.com)
Omer Topal (omer.topal@airties.com)
Mauro Tortonesi (mauro.tortonesi@unife.it)
Quincy Tse (quincy.tse@gmail.com)

View File

@@ -18,39 +18,36 @@ Changes from ns-3.36 to ns-3.37
### New API
* Added a new attribute **MaxTbPpduDelay** in HeConfiguration for configuring the maximum delay with which a TB PPDU can arrive at the AP after the first TB PPDU in order to be decoded properly. If the delay is higher than **MaxTbPpduDelay**, the TB PPDU is discarded and treated as interference.
* Added new methods (**ConfigHtOptions**, **ConfigVhtOptions**, **ConfigHeOptions** and **ConfigEhtOptions**) to `WifiHelper` to configure HT/VHT/HE/EHT options listed as attributes of the respective Configuration classes through the wifi helper.
* Added new attributes (**AccessReqInterval**, **AccessReqAc** and **DelayAccessReqUponAccess**) to the MultiUserScheduler to allow a wifi AP to coordinate UL MU transmissions even without DL traffic.
* `WifiNetDevice` has a new **Phys** attribute, which is primarily intended to select a specific PHY object of an 11be multi-link device when using path names.
* `Txop` class (wifi module) has new attributes (**MinCws**, **MaxCws**, **Aifsns** and **TxopLimits**) to set minimum CW, maximum CW, AIFSN and TXOP limit for all the links of a multi-link device.
* `WifiPhyListener::NotifyMaybeCcaBusyStart` has been renamed to `WifiPhyListener::NotifyCcaBusyStart` and has two additional parameters: the channel type that indicates for which subchannel the CCA-BUSY is reported and a vector of CCA-BUSY durations for each 20 MHz subchannel. A duration of zero indicates CCA is IDLE, and the vector of CCA-BUSY durations is not empty if the PHY supports 802.11ax and the operational channel width is larger than 20 MHz.
* Added a new attribute **CcaSensitivity** in WifiPhy for configuring the threshold that corresponds to the minimum received power of a PPDU, that occupies the primary channel, should have to report a CCA-BUSY indication.
* Added a new attribute **SecondaryCcaSensitivityThresholds** in VhtConfiguration for configuring the thresholds that corresponds to the minimum received power of a PPDU, that does not occupy the primary 20 MHz channel, should have to report a CCA-BUSY indication. This is made of a tuple, where the first threshold is used for 20 MHz PPDUs, the second one is used for 40 MHz PPDUs and the third one is used for 80 MHz PPDUs.
* In `src/internet`, several changes were made to enable auto-generated neighbor cache:
* (internet) In `src/internet`, several changes were made to enable auto-generated neighbor caches:
* A new helper (NeighborCacheHelper) was added to set up auto-generated neighbor cache.
* New NUD_STATE `STATIC_AUTOGENERATED` was added to help the user manage auto-generated entries in Arp cache and Ndisc cache.
* Add new callbacks RemoveAddressCallback and AddAddressCallback to dynamically update neighbor cache during addresses are removed/added.
* Add NeighborCacheTestSuite to test auto-generated neighbor cache.
* Added two new trace sources to `StaWifiMac`: **LinkSetupCompleted**, which is fired when a link is setup in the context of an 11be ML setup, and **LinkSetupCanceled**, which is fired when the setup of a link is terminated. Both sources provide the ID of the setup link and the MAC address of the corresponding AP.
* (lr-wpan) Adds support for **LrWpanMac** devices association.
* (lr-wpan) Adds support for **LrWpanMac** energy detection (ED) scan.
* (lr-wpan) Adds support for **LrWpanMac** active and passive scan.
* (lr-wpan) Adds support for channel paging to the **LrWpanPhy** (only placeholder, a single modulation/band is currently supported).
* (lr-wpan) Add **LrWpanMac** packet traces and queue limits to Tx queue and Ind Tx queue.
* (propagation) Add O2I Low/High Building Penetration Losses in 3GPP propagation loss model (`ThreeGppPropagationLossModel`) according to **3GPP TR 38.901 7.4.3.1**. Currently, UMa, UMi and RMa scenarios are supported.
* (wifi) Added a new attribute **MaxTbPpduDelay** in HeConfiguration for configuring the maximum delay with which a TB PPDU can arrive at the AP after the first TB PPDU in order to be decoded properly. If the delay is higher than **MaxTbPpduDelay**, the TB PPDU is discarded and treated as interference.
* (wifi) Added new methods (**ConfigHtOptions**, **ConfigVhtOptions**, **ConfigHeOptions** and **ConfigEhtOptions**) to `WifiHelper` to configure HT/VHT/HE/EHT options listed as attributes of the respective Configuration classes through the wifi helper.
* (wifi) Added new attributes (**AccessReqInterval**, **AccessReqAc** and **DelayAccessReqUponAccess**) to the MultiUserScheduler to allow a wifi AP to coordinate UL MU transmissions even without DL traffic.
* `(wifi) WifiNetDevice` has a new **Phys** attribute, which is primarily intended to select a specific PHY object of an 11be multi-link device when using path names.
* (wifi) `Txop` class has new attributes (**MinCws**, **MaxCws**, **Aifsns** and **TxopLimits**) to set minimum CW, maximum CW, AIFSN and TXOP limit for all the links of a multi-link device.
* (wifi) `WifiPhyListener::NotifyMaybeCcaBusyStart` has been renamed to `WifiPhyListener::NotifyCcaBusyStart` and has two additional parameters: the channel type that indicates for which subchannel the CCA-BUSY is reported and a vector of CCA-BUSY durations for each 20 MHz subchannel. A duration of zero indicates CCA is IDLE, and the vector of CCA-BUSY durations is not empty if the PHY supports 802.11ax and the operational channel width is larger than 20 MHz.
* (wifi) Added a new attribute **CcaSensitivity** in WifiPhy for configuring the threshold that corresponds to the minimum received power of a PPDU, that occupies the primary channel, should have to report a CCA-BUSY indication.
* (wifi) Added a new attribute **SecondaryCcaSensitivityThresholds** in VhtConfiguration for configuring the thresholds that corresponds to the minimum received power of a PPDU, that does not occupy the primary 20 MHz channel, should have to report a CCA-BUSY indication. This is made of a tuple, where the first threshold is used for 20 MHz PPDUs, the second one is used for 40 MHz PPDUs and the third one is used for 80 MHz PPDUs.
* (wifi) Added two new trace sources to `StaWifiMac`: **LinkSetupCompleted**, which is fired when a link is setup in the context of an 11be ML setup, and **LinkSetupCanceled**, which is fired when the setup of a link is terminated. Both sources provide the ID of the setup link and the MAC address of the corresponding AP.
### Changes to existing API
* Adds support for channel paging to the **LrWpanPhy** (only placeholder, a single modulation/band is currently supported).
* Adds supporting structures used by **LrWpanMac** (PAN descriptor, Command Payload Header, Capability Field).
* Mac(8|16|48|64)Address address allocation pool is now reset between consecutive runs.
* Adds support for **LrWpanMac** energy detection (ED) scan.
* IPv6 Router Solicitations (RS) are now retransmitted up to 4 times, following RFC 5779.
* Adds support for **LrWpanMac** active and passive scan.
* Add supporting association structures: parameters, callbacks and the pending transaction list to **LrWpanMac**.
* The **TxopTrace** trace source of wifi `QosTxop` now has an additional argument (the third one) indicating the ID of the link the TXOP refers to (for non-MLDs, this value is zero).
* The maximum allowed channel width (in MHz) for a data transmission is passed to the **GetDataTxVector** method of the `WifiRemoteStationManager`.
* The **WifiMacQueueItem** class has been renamed as **WifiMpdu**.
* The **Assoc** and **DeAssoc** trace sources of `StaWifiMac` provide the AP MLD address in case (de)association takes place between a non-AP MLD and an AP MLD.
* Adds support for **LrWpanMac** devices association.
* Pan Id compression is now possible in **LrWpanMac** when transmitting data frames. i.e. When src and dst pan ID are the same, only one PanId is used, making the MAC header 2 bytes smaller. See IEEE 802.15.4-2006 (7.5.6.1).
* Add O2I Low/High Building Penetration Losses in 3GPP propagation loss model (`ThreeGppPropagationLossModel`) according to **3GPP TR 38.901 7.4.3.1**. Currently, UMa, UMi and RMa scenarios are supported.
* Replace **LrWpanMac** Tx Queue and Ind Tx Queue pointers for smart pointers.
* Add **LrWpanMac** packet traces and queue limits to Tx queue and Ind Tx queue.
* (lr-wpan) Replace **LrWpanMac** Tx Queue and Ind Tx Queue pointers for smart pointers.
* (lr-wpan) Adds supporting structures used by **LrWpanMac** (PAN descriptor, Command Payload Header, Capability Field).
* (lr-wpan) Add supporting association structures: parameters, callbacks and the pending transaction list to **LrWpanMac**.
* (wifi) The **TxopTrace** trace source of wifi `QosTxop` now has an additional argument (the third one) indicating the ID of the link the TXOP refers to (for non-MLDs, this value is zero).
* (wifi) The maximum allowed channel width (in MHz) for a data transmission is passed to the **GetDataTxVector** method of the `WifiRemoteStationManager`.
* (wifi) The **WifiMacQueueItem** class has been renamed as **WifiMpdu**.
* (wifi) The **Assoc** and **DeAssoc** trace sources of `StaWifiMac` provide the AP MLD address in case (de)association takes place between a non-AP MLD and an AP MLD.
### Changes to build system
@@ -65,21 +62,24 @@ Changes from ns-3.36 to ns-3.37
* Replaced Python-based .ns3rc with a CMake-based version.
* Deprecated .ns3rc files will be updated to the new CMake-based format and a backup will be placed alongside it.
* Added the `./ns3 configure --filter-module-examples-and-tests='module1;module2'` option, which can be used to filter out examples and tests that do not use the listed modules.
* Deprecated symlinks in favor of stub headers.
* Deprecated symlinks in the build/ directory in favor of stub headers.
* Added support for faster linkers `lld` and `mold`. These will be used if found. The order of priority is: `mold` > `lld` > default linker.
* Added support for Windows using the Msys2/MinGW64 toolchain (supports both Unix-like Bash shell shipped with Msys2 and native shells such as CMD and PowerShell).
* Added new `./ns3 run` options for profilers: `--memray` and `--heaptrack` for memory profiling of Python scripts and C++ programs, respectively, and `--perf` for performance profiling on Linux.
### Changed behavior
* Lr-wpan: **LrWpanPhy** now change to TRX_OFF after a CSMA-CA failure when the RxOnWhenIdle flag is set to false in the **LrWpanMac**.
* The **Channel** attribute of `WifiNetDevice` is deprecated because it became ambiguous with the introduction of multiple links per device. The **Channel** attribute of `WifiPhy` can be used instead.
* The O2I Low/High Building Penetration Losses will add losses in the pathloss calculation when buildings are present and a UE results to be in O2I state. In order to not consider these losses, they can be disabled by setting BuildingPenetrationLossesEnabled to false.
* Support for four types of UE handover failure are now modeled:
* (internet) IPv6 Router Solicitations (RS) are now retransmitted up to 4 times, following RFC 5779.
* (lr-wpan) **LrWpanPhy** now change to TRX_OFF after a CSMA-CA failure when the RxOnWhenIdle flag is set to false in the **LrWpanMac**.
* (lr-wpan) Pan Id compression is now possible in **LrWpanMac** when transmitting data frames. i.e. When src and dst pan ID are the same, only one PanId is used, making the MAC header 2 bytes smaller. See IEEE 802.15.4-2006 (7.5.6.1).
* (lte) Support for four types of UE handover failure are now modeled:
* A HO failure is triggered if eNB cannot allocate non-contention-based preamble.
* Handover joining timeout is now handled.
* Handover leaving timeout is now handled.
* Upon RACH failure during HO, the UE will perform cell selection again.
* (network) Mac(8|16|48|64)Address address allocation pool is now reset between consecutive runs.
* (propagation) The O2I Low/High Building Penetration Losses will add losses in the pathloss calculation when buildings are present and a UE results to be in O2I state. In order to not consider these losses, they can be disabled by setting BuildingPenetrationLossesEnabled to false.
* (wifi) The **Channel** attribute of `WifiNetDevice` is deprecated because it became ambiguous with the introduction of multiple links per device. The **Channel** attribute of `WifiPhy` can be used instead.
Changes from ns-3.36 to ns-3.36.1
---------------------------------

View File

@@ -3,12 +3,16 @@ ns-3 RELEASE NOTES
This file contains ns-3 release notes (most recent releases first).
All of the ns-3 documentation is accessible from the ns-3 website:
<http://www.nsnam.org> including tutorials: <http://www.nsnam.org/tutorials.html>
ns-3 documentation is accessible from the [ns-3 website](https://www.nsnam.org).
Consult the file [CHANGES.md](CHANGES.md) for more detailed information about changed
API and behavior across ns-3 releases.
In the following, numeric references prefixed by '#' refer to
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
-------------
@@ -19,50 +23,35 @@ requirements (Note: not all ns-3 features are available on all systems):
- g++-8 or later, or LLVM/clang++-6 or later
- Python 3.6 or later
- CMake 3.10 or later
- (macOS only) Xcode 11 or later
- (Windows only) Msys2/MinGW64 toolchain
Python API requires Cppyy (https://cppyy.readthedocs.io/en/latest/installation.html).
Python API requires [Cppyy](https://cppyy.readthedocs.io/en/latest/installation.html).
### New user-visible features
- (lr-wpan) !959 - Add PHY channel page support
- (lr-wpan) Adds PAN descriptor, CommandPayload Header and Capability Field
- (wifi) !984 - MultiUserScheduler can request channel access periodically
- (lr-wpan) !991 - Adds MAC ED scan support
- (internet) !996 - IPv6 Router Solicitations (RS) are now retransmitted up to 4 times, following RFC 5779.
- (lr-wpan) !997 - Adds MAC ACTIVE and PASSIVE scan support
- (wifi) CCA has been reworked to report the channel type in the CCA-BUSY indication and the per-20 MHz CCA bitmap for 802.11ax.
- (wifi) PPDUs are transmitted on the largest primary channel that is found to be idle (according to the CCA-BUSY indication provided by the PHY) when gaining a TXOP.
- (internet) Add auto-generate ARP/NDISC cache, as the outcome of GSoC 2022 project.
- (wifi) Add support for fragmentation of Information Elements.
- (wifi) Implement 802.11be Multi-link discovery and setup
- (lr-wpan) !1072 - Adds support for association (network bootstrap)
- (lr-wpan) Adds support for PAN Id compression (IEEE 802.15.4-2006 (7.5.6.1))
- (utils) `utils/bench-simulator` has been moved to `utils/bench-scheduler` to better reflect what it actually tests
- (utils) `utils/bench-scheduler` has been enhanced to test multiple schedulers.
- (lte) LTE handover failure is now handled for joining and leaving timeouts, RACH failure, and preamble allocation failure.
- (lr-wpan) !991 - Adds MAC ED scan support
- (lr-wpan) !959 - Add PHY channel page support
- (lr-wpan) !997 - Adds MAC ACTIVE and PASSIVE scan support
- (lr-wpan) !1072 - Adds support for association (network bootstrap)
- (lr-wpan) !1131 - Add support for configurable tx queue and ind tx queue limits.
- (lr-wpan) !1133 - Add a post-rx error model.
- (lr-wpan) Adds support for PAN Id compression (IEEE 802.15.4-2006 (7.5.6.1))
- (lr-wpan) Adds PAN descriptor, CommandPayload Header and Capability Field
- (utils) `utils/bench-simulator` has been moved to `utils/bench-scheduler` to better reflect what it actually tests
- (utils) `utils/bench-scheduler` has been enhanced to test multiple schedulers.
- (wifi) !984 - MultiUserScheduler can request channel access periodically
- (wifi) CCA has been reworked to report the channel type in the CCA-BUSY indication and the per-20 MHz CCA bitmap for 802.11ax.
- (wifi) PPDUs are transmitted on the largest primary channel that is found to be idle (according to the CCA-BUSY indication provided by the PHY) when gaining a TXOP.
- (wifi) Add support for fragmentation of Information Elements.
- (wifi) Implement 802.11be Multi-link discovery and setup
### Bugs fixed
- (wifi) Fix setting of stations' max supported channel width
- (wifi) Fix setting TX power for HE TB PPDUs in case AP requested using the max TX power
- (wifi) #521 - UL OFDMA support
- (lr-wpan) #536 - Fixes PHY not going to TRX_OFF after CSMA-CA failure (RxOnWhenIdle(false))
- (wifi) Only include QoS Null frames for TIDs for which a BA agreement exists in responses to BSRP TFs
- (wifi) Notify RX end only for the last received HE TB PPDU
- (wifi) Correctly compute the time to RX end to be passed to WifiPhyStateHelper::SwitchToRx()
- (wifi) #709 Adjust WifiPhy::RxSensitivity with channel width for YansWifiChannel
- (wifi) Align default TXOP limit for VI and VO to 802.11-2020
- (wifi) #696 - 802.11ax assert failed. cond="seqNumber < SEQNO_SPACE_SIZE && startingSeqNumber < SEQNO_SPACE_SIZE"
- (wifi) Fix acknowledgment in SU format for DL MU PPDUs including PSDUs of different TIDs
- (wifi) Fix the TID of QoS Null frames in response to BSRP TF
- (core) #756 - Fix `CsvReader::GetValueAs()` functions for `char` arguments
- #758 - Fix warnings about `for` loops with variables that are "too small" to fully represent the data being looped
- (lr-wpan) #692 - Replace raw pointers for smart pointers in Tx queue and Ind Tx queue.
- (core) Fix int64x64-cairo.h bool operator
- (build) #676 Fix missing version defines
- (build) #684 Fix prevents hidden source files from being processed as scratches
- (build) #687 Display how to forward arguments to programs with the ns3 script
@@ -75,6 +64,22 @@ Python API requires Cppyy (https://cppyy.readthedocs.io/en/latest/installation.h
- (build) #733 Fix installation to optionally include python bindings and uninstallation to remove pkg-config files
- (build) #734 Fix installation to include tap-creator and raw-sock-creator
- (build) Widen the search scope of headers and libraries to better support Bake
- (core) #756 - Fix `CsvReader::GetValueAs()` functions for `char` arguments
- (core) Fix int64x64-cairo.h bool operator
- (general) #758 - Fix warnings about `for` loops with variables that are "too small" to fully represent the data being looped
- (lr-wpan) #536 - Fixes PHY not going to TRX_OFF after CSMA-CA failure (RxOnWhenIdle(false))
- (lr-wpan) #692 - Replace raw pointers for smart pointers in Tx queue and Ind Tx queue.
- (wifi) #521 - UL OFDMA support
- (wifi) #696 - 802.11ax assert failed. cond="seqNumber < SEQNO_SPACE_SIZE && startingSeqNumber < SEQNO_SPACE_SIZE"
- (wifi) #709 Adjust WifiPhy::RxSensitivity with channel width for YansWifiChannel
- (wifi) Fix setting of stations' maximum supported channel width
- (wifi) Fix setting TX power for HE TB PPDUs in case AP requested using the max TX power
- (wifi) Only include QoS Null frames for TIDs for which a BA agreement exists in responses to BSRP TFs
- (wifi) Notify RX end only for the last received HE TB PPDU
- (wifi) Correctly compute the time to RX end to be passed to WifiPhyStateHelper::SwitchToRx()
- (wifi) Align default TXOP limit for VI and VO to 802.11-2020
- (wifi) Fix acknowledgment in SU format for DL MU PPDUs including PSDUs of different TIDs
- (wifi) Fix the TID of QoS Null frames in response to BSRP TF
Release 3.36.1
--------------