Stefano Avallone
cf8ef91a29
wifi: Do not check lifetime expiration when dequeuing frames
...
Frames are dequeued when they have been acknowledged, dropped
or are going to be replaced by other frames. In all such cases,
it is not needed to check for lifetime expiration. This check instead
causes troubles when the lifetime of a frame expires while receiving
the acknowledgment (a BAR may be scheduled unnecessarily).
2021-10-20 12:13:50 +02:00
Stefano Avallone
3ad1dde7a1
wifi: Make WifiMacQueue::Insert private
...
Also, reduce the usage of WifiMacQueue::PushFront. The goal is to
only allow enqueuing packets at the end of the wifi MAC queue, in
view of the introduction of a wifi MAC queue scheduler.
2021-10-19 20:10:25 +02:00
Stefano Avallone
dae6bbca5b
wifi: Iterators to queued items are not exposed by WifiMacQueueItem
2021-10-19 20:10:25 +02:00
Stefano Avallone
b8bc106706
wifi: Remove unused global empty wifi MAC queue
2021-10-19 20:10:25 +02:00
Stefano Avallone
882a746500
wifi: Replace iterators with pointers to queued items in public APIs
2021-10-19 20:10:22 +02:00
Stefano Avallone
cf2ccdc041
wifi: Add WifiMacQueue methods to manipulate queued items
...
Also, remove unused Remove overload.
2021-10-19 20:07:27 +02:00
Stefano Avallone
fea3bf208c
Update CHANGES.html
2021-10-19 18:53:34 +02:00
Stefano Avallone
c35945ebf2
wifi: Install (Qos)Txop objects appropriately
2021-10-13 17:40:31 +02:00
Stefano Avallone
8e1c5525ab
wifi: RegularWifiMac::QosSupported attribute must be properly set
...
We don't override it later (when setting the standard) anymore
2021-10-13 16:07:56 +02:00
Ameya Deshpande
f25866e922
nix-vector-routing: ( fixes #466 ) Handle loopback IPv4/6 addresses
...
- Add the condition for handling loopback addresses in `RouteOutput ()`.
- Add about this change in "Scope and Limitations" of Nix documentation.
Signed-off-by: Ameya Deshpande <ameyanrd@outlook.com >
2021-10-12 15:13:13 +00:00
Stefano Avallone
dcf022ad8b
wifi: ( fixes #468 ) Compute correct size of MU-BAR Trigger Frames
2021-10-12 09:56:50 +02:00
Stefano Avallone
dba8375e18
wifi: ( fixes #467 ) AP only records association failed when AssocResp is discarded
2021-10-11 17:44:53 +02:00
Ameya Deshpande
1f894ae7eb
nix-vector-routing: Remove the unused BuildNixVectorLocal () function
...
This commit removes the dead function `BuildNixVectorLocal ()`.
This issue is discussed in #466 .
Signed-off-by: Ameya Deshpande <ameyanrd@outlook.com >
2021-10-11 09:32:02 +00:00
Tommaso Pecorella
b7ddd9d3f5
internet: Align RIPng and RIP implementations
2021-10-10 00:54:21 +02:00
Tommaso Pecorella
db1fa07947
internet: Fix RIPng address selection for intermediate nodes
2021-10-10 00:09:49 +02:00
Tommaso Pecorella
ed8d74879a
internet: Fix src address selection for localhost
2021-10-10 00:09:00 +02:00
Tommaso Pecorella
24f73cc470
internet: fix icmpv6 test
2021-10-06 23:04:57 +00:00
Stefano Avallone
96fdc81c68
wifi: Mark an MPDU as acknowledged before removing it from the in-flight queue
...
This avoids a crash in the event that an MPDU sent in an S-MPDU under
a Block Ack agreement is acknowledged after its lifetime expired.
2021-10-06 17:16:22 +02:00
Sébastien Deronne
a34c01091c
wifi: Fix includes in YansErrorRateModel
2021-10-04 21:43:02 +02:00
Tom Henderson
d64ef57466
Update release files to start next release
2021-10-01 13:01:32 -07:00
Tom Henderson
168c6a1c41
Merge ns-3.35-release branch
2021-10-01 12:55:30 -07:00
Tom Henderson
ac88b75eac
Update availability in RELEASE_NOTES
2021-10-01 12:51:59 -07:00
Tom Henderson
687a2745f5
Update VERSION and documentation tags for ns-3.34 release
2021-10-01 12:51:14 -07:00
Tom Henderson
fdba90a9bd
documentation: Update ns-3 version in tutorial examples
2021-10-01 12:41:22 -07:00
Tom Henderson
44cd4d9750
Small correction to RELEASE_NOTES
2021-10-01 12:41:22 -07:00
Tom Henderson
d14aada5a0
Update AUTHORS and RELEASE_NOTES
2021-09-29 17:01:56 -07:00
Aditya Chirania
b5dee14b24
tcp: Update ns3-tcp-loss test artifacts for previous commit
2021-09-29 14:09:01 -07:00
Gauri Prasad
235732f6af
tcp: ( fixes #410 ) Fix TCP Westwood bandwidth estimation bug
2021-09-29 14:06:47 -07:00
Bhaskar Kataria
9844819d88
traffic-control: (from !706 ) Fix FqPIE qdisc not using attributes
2021-09-29 13:58:29 -07:00
Tom Henderson
d56a3db06a
Update AUTHORS, CHANGES.html, and RELEASE_NOTES
2021-09-27 19:26:12 -07:00
Tom Henderson
28886a3a25
traffic-control: ( fixes #258 ) Avoid overflow, divide-by-zero in TbfQueueDisc
...
Thanks to Tianfan Zhang for finding the bug and starting a patch to fix.
2021-09-27 14:35:16 -07:00
Tom Henderson
4e9afa965d
bindings: Rescan all APIs
2021-09-27 11:18:37 -07:00
Sébastien Deronne
017a08c44f
wifi: Cleanup some remaining references to MacLow
2021-09-26 21:42:24 +00:00
Gabriel Ferreira
5c13e6014e
wifi: remove unnecessary GetSifs calls
2021-09-26 20:46:44 +00:00
Sébastien Deronne
946472f0ca
wifi: Add support for 4096-QAM in YansErrorRateModel
2021-09-26 17:26:09 +00:00
Sébastien Deronne
924860e9e3
wifi: Some more PHY rework to support amendments beyond 802.11ax
2021-09-26 17:26:09 +00:00
Stefano Avallone
62542e5fb9
wifi: WifiMacQueueItem does not keep a pointer to the queue it is stored into
...
Instead, it keeps the AC index associated with the queue it is stored into
2021-09-26 17:06:27 +00:00
Stefano Avallone
97c888cd55
wifi: Add a RegularWifiMac method to return a specified MAC queue
2021-09-26 17:06:27 +00:00
Stefano Avallone
39947f3cac
wifi: Propagate AC index down to WifiMacQueue through Txop
2021-09-26 17:06:27 +00:00
Stefano Avallone
c0b2eb808f
Update RELEASE_NOTES and CHANGES.html
2021-09-26 17:06:27 +00:00
Stefano Avallone
382a2aa3f6
wifi: Trace dropped QoS old packets
2021-09-26 17:06:27 +00:00
Stefano Avallone
d9c1111ef1
wifi: Cleanup unused code
2021-09-26 17:06:27 +00:00
Stefano Avallone
8b354fe29c
wifi: Keep MPDUs in the queue until acknowledged (with BA agreement)
2021-09-26 17:06:27 +00:00
Stefano Avallone
d04a17af6f
wifi: Make WifiMacQueue::TtlExceeded public
...
so that other components can easily remove MPDUs with expired
lifetime and fire the Expired trace source.
2021-09-26 17:06:27 +00:00
Stefano Avallone
1259d04200
wifi: Add in-flight attribute to MPDUs
2021-09-26 17:06:27 +00:00
Stefano Avallone
da4c36ef9a
wifi: Keep MPDUs in the queue until acknowledged (if no BA agreement)
2021-09-26 17:06:27 +00:00
Stefano Avallone
edcd9a6909
wifi: Cleanup WifiMacQueue
...
1. MPDUs with expired lifetime are already discarded:
- when a QosTxop releases/requests the channel
- when we check if there are pending BlockAckReq frames
hence, it is useless (and sometimes troublesome) to check
for MPDUs with expired lifetime at every packet dequeue
2. Dequeue{ByTid, ByAddress, ...} were not used and hence
removed (one can use a Peek* method and then Dequeue())
3. Given that a WifiMacQueueItem stores an iterator, add a
Dequeue method (the only one in addition to the default one)
that receives a WifiMacQueueItem and dequeues it in constant time
2021-09-26 17:06:27 +00:00
Stefano Avallone
6bce3d9916
wifi: Replace aggregated MSDUs with the A-MSDU upon aggregation
...
So far, when A-MSDU aggregation is performed, MPDUs containing the
constituent MSDUs are kept in the queue until the MPDU containing
the A-MSDU (which is kept out of the queue) is transmitted.
Now, as soon as A-MSDU aggregation is performed, MPDUs containing
the constituent MSDUs are dequeued and the MPDU containing the
A-MSDU is enqueued in their place.
2021-09-26 17:06:27 +00:00
Alexander Krotov
d8fe6bac00
core: (merges !623 ) Print available values on EnumChecker::GetValue () error
2021-09-25 12:42:23 -07:00
Philip Hönnecke
52fa7235b2
energy: ( fixes #423 ) SimpleDeviceEnergyModel calculation of consumed energy
2021-09-25 12:28:58 -07:00