Commit Graph

14032 Commits

Author SHA1 Message Date
Tom Henderson
d4cd46fbfe core: (fixes #43) Check if ObjectFactory has been configured 2019-03-31 09:54:35 -07:00
Gabriel Arrobo
63ce6b6869 lte: Remove test disabled from build for several years 2019-03-30 20:32:57 -07:00
Gabriel Arrobo
dba4333f85 Fix various typos 2019-03-30 20:30:18 -07:00
Sébastien Deronne
7112e718dc wifi: Revert a previous change in IdealWifiManager that is causing much lower performance and irregularities
(cherry picked from commit 8d5cd31b78fb862d7e9280ca3bc7468306ab6168)
2019-03-22 19:49:51 +01:00
Sébastien Deronne
de7fc0096c wifi: Small changes for 11ac/11ax
(cherry picked from commit 0684a0083da975bbe2965a1380064ef263a870b0)
2019-03-22 19:48:46 +01:00
Manuel Requena
5c0b2af65d lte: Fix some logs 2019-03-19 12:55:10 +01:00
Alexander Krotov
3381968389 wifi: connect to MacTxRtsFailed in AthstatsHelper::EnableAthstats
TxRtsFailed trace does not exist
2019-03-14 16:13:48 +03:00
Tom Henderson
2518b032f8 spectrum: rescan API definitions for bindings 2019-03-12 14:41:44 -07:00
Tom Henderson
4e72a8dc7d lte: rescan API definitions for bindings 2019-03-12 14:41:10 -07:00
Alexander Krotov
3ee1512428 core: fix return value documentation for TraceConnect/Disconnect 2019-03-12 16:19:07 +03:00
Natale Patriciello
c8c919d1ba lte: Fix EPC test crashes by removing an assert
That's bad, usually the test must be reworked to not fail the assert.
However, there's no time in fixing a decade-old test, and also the code
worked like this since... forever. My fault was to add the assert in the first
instance, thinking that it would be a good service to the users. I was wrong.
2019-03-12 09:50:38 +01:00
Natale Patriciello
79f127cc3f Merge branch 'link2xt/ns-3-dev-trace-fading-loss-model-spectrum' MR !33
* link2xt/ns-3-dev-trace-fading-loss-model-spectrum:
  Move TraceFadingLossModel from lte to spectrum module

Thanks Alexander
2019-03-11 16:55:08 +01:00
Alexander Krotov
4227f89ec7 Move TraceFadingLossModel from lte to spectrum module 2019-03-11 16:53:08 +01:00
Natale Patriciello
5b5282f066 Merge branch 'lte-p2p-helper-dev', as per MR !38
* lte-p2p-helper-dev:
  lte: fixed reviewer comments for p2p helper
  lte: Make point-to-point-epc-helper inheritable

Thanks Zoraze for the review.
2019-03-11 16:17:07 +01:00
Natale Patriciello
8cbec72511 lte: fixed reviewer comments for p2p helper 2019-03-11 16:16:11 +01:00
Natale Patriciello
dd495a9da8 lte: Make point-to-point-epc-helper inheritable 2019-03-11 12:17:08 +01:00
Tom Henderson
e7c1c390b2 lte: rescan API definitions for bindings 2019-03-09 16:51:03 -08:00
Natale Patriciello
119fde090e Revert "lte: Merge branch 'lte-rlc-fix-pdu-delivering', MR !30"
This reverts commit 50cfb45bd1, reversing
changes made to ae2f33cf73.

The commit is faulty because it does not consider LTE HARQ timings.
So, in LTE, would happen that a packet is delivered even in the case that the
previous packet is under HARQ retransmission.

We will check the standard and see what does apply in this case.

Natale
2019-03-08 11:15:27 +01:00
Natale Patriciello
50cfb45bd1 lte: Merge branch 'lte-rlc-fix-pdu-delivering', MR !30
* lte-rlc-fix-pdu-delivering:
  lte: Fix PDU delivering at the edge of reordering window
2019-03-07 22:07:57 +01:00
Natale Patriciello
c43eaacdf0 lte: Fix PDU delivering at the edge of reordering window
If we update the window and THEN we try to reassemble the PDU,
the frame that at the beginning (I mean the frame thanks to which we entered
the if) was inside the window can be "magically" outside, therefore in
the reassembly function, that segment is not delivered.

When the timer expires, everything is then delivered correctly, but waiting
the timer adds 10 ms of unwanted delay.
2019-03-07 22:05:02 +01:00
Natale Patriciello
ae2f33cf73 lte: merge branch 'lte-nr-prereq-v2' (MR !31)
* lte-nr-prereq-v2:
  spectrum: Add API to retrieve Values size and a single value at any position
  lte: Managing SR at SAP interface level.
  lte: Making SimpleUeComponentCarrierManager inheritable
  lte: Do not assume that the helper is setting all the vectors
  lte: ComponentCarrier subclasses can override Set{Dl,Ul}Bandwidth
  lte: ComponentCarrier with cellId is now ComponentCarrierBaseStation
  lte: LteMacSap constructors for ReceivePduParameters and TxOpportunityParameters created
  lte: (fixed #2893) GetPgw in helpers must be const
  lte: EpsBearer support run-time switching between Rel. 11 and Rel. 15
  lte: Added EpsBearer new values (updating it to Rel. 15)
  lte: EpsBearer uses a lookup table
2019-03-07 22:01:51 +01:00
Natale Patriciello
da994d51c1 spectrum: Add API to retrieve Values size and a single value at any position
Values are stored as std::vector of double, but this vector can't be accessed,
even read-only. With this addition, it is possible to know how many elements
are inside the vector, and also to get a const reference to any element.
2019-03-07 21:59:59 +01:00
Natale Patriciello
05dd0e53d3 lte: Managing SR at SAP interface level.
SR is implemented in the NR module; for the moment, just add the possibility at
the interface level. LTE module will not do anything for the moment, waiting for
a feature addition at a later stage.
2019-03-07 21:59:59 +01:00
Natale Patriciello
4bcf5feb50 lte: Making SimpleUeComponentCarrierManager inheritable
In this way it is possible to write extensions at UE side for deciding what
carrier has to be used.
2019-03-07 21:59:58 +01:00
Natale Patriciello
6435c6d894 lte: Do not assume that the helper is setting all the vectors
In lte-enb-rrc, in a lot of places there is the assumption that
vectors such as m_cphySapProvider, m_cmacSapProvider, m_ffrRrcSapProvider, are
filled by the helper.

That assumption does not hold with external modules: therefore, for a better
coexistence, check the size of these vector before doing any operation.
If there are elements in it, then execute; otherwise, just ignore.
2019-03-07 21:59:58 +01:00
Natale Patriciello
12e7e16754 lte: ComponentCarrier subclasses can override Set{Dl,Ul}Bandwidth
These two methos are changed by the subclass in NR and mmWave module.
2019-03-07 21:59:58 +01:00
Natale Patriciello
90966b9126 lte: ComponentCarrier with cellId is now ComponentCarrierBaseStation
For the NR module we have the necessity of implementing a different type of
ComponentCarrierEnb, which will be ComponentCarrierGnb. But, in some methods of
RRC, it is accepted only a pointer to ComponentCarrierEnb.

To solve this situation, since the only needed method from ComponentCarrierEnb
is GetCellId (), this commit creates a new class (ComponentCarrierBaseStation)
that provides the interface for setting and retrieving the cell id. Then, both
ComponentCarrier{Enb,Gnb} derives from ComponentCarrierBaseStation and everyone
is happy. I had to introduce DynamicCast all over the helper to make everything
working.
2019-03-07 21:59:58 +01:00
Natale Patriciello
8fb0649c2b lte: LteMacSap constructors for ReceivePduParameters and TxOpportunityParameters created
Thanks to constructors, it is easier to create these structs. In particular, code like this

MyAwesomeStruct x;
x.value = 10;
x.another = 200;
...

AMethod (x);

can be replaced with

AMethod (MyAwesomeStruct (10, 200));

Reducing the amount of needed lines.
2019-03-07 21:59:58 +01:00
Natale Patriciello
dab08d714d lte: (fixed #2893) GetPgw in helpers must be const
Simple const-correctness enforcing.
2019-03-07 21:59:58 +01:00
Natale Patriciello
d3da3b8628 lte: EpsBearer support run-time switching between Rel. 11 and Rel. 15
EpsBearer is now a ns-3 Object, and carries an attribute, "Release",
to switch between releases.
2019-03-07 21:59:58 +01:00
Natale Patriciello
6674e88fd6 lte: Added EpsBearer new values (updating it to Rel. 15)
Between Rel. x and Rel. 15 (Rel. x being the current one) some values have been
added. This commit adds these missing values.
2019-03-07 21:59:58 +01:00
Natale Patriciello
0273d706b0 lte: EpsBearer uses a lookup table
Moving the existing switch/cases statement to a lookup in a lookup-table,
created with an unordered_map at compile time. The default values for the
lookup table are taken from Rel. 11, as they were in previous ns-3 releases.
2019-03-07 21:59:58 +01:00
Natale Patriciello
4d0b5369c2 ci: Use nsnam worker for very long tasks 2019-03-07 17:26:49 +01:00
Alexander Krotov
bddff8ee90 lte: rename m_fadingModule to m_fadingModel 2019-02-28 12:24:35 +03:00
ZorazeAli
6eae98fbca lte: Refactor DoInitialize methods of LteEnbPhy and LteUePhy
see merge request !29
2019-02-26 11:09:16 +01:00
ZorazeAli
b58cac8135 spectrum: rescan bindings 2019-02-26 09:26:56 +01:00
ZorazeAli
b7465369ae lte: Init DL and UL EARFCN to solve valgrind error
see pull request !26
2019-02-26 08:40:09 +01:00
Sébastien Deronne
624d322466 spectrum: Fix order of PHYs stored in MultiModelSpectrumChannel
See merge request nsnam/ns-3-dev!22
2019-02-24 22:24:14 +01:00
Natale Patriciello
921b47d0aa ci: Fix pacman error while updating 2019-02-21 12:10:52 +01:00
Natale Patriciello
e6600bb598 test: Add CI for valgrind tests 2019-02-18 09:16:50 +01:00
Natale Patriciello
b055fd9138 Merge branch 'master' of gitlab.com:nsnam/ns-3-dev
* 'master' of gitlab.com:nsnam/ns-3-dev:
  wifi: (fixes #26) Update detection threshold documentation
2019-02-17 22:01:05 +01:00
Natale Patriciello
c466278f05 ci: Removed 'y', as per update database, from the CI script for archlinux 2019-02-17 22:00:18 +01:00
Tom Henderson
61cbb19e84 wifi: (fixes #26) Update detection threshold documentation 2019-02-16 09:34:08 -08:00
Gabriel Arrobo
9e1d40a85b lte: Fix typos and some header spacings 2019-02-13 07:30:05 -08:00
Gabriel Arrobo
648b440408 wifi: Fix typo 2019-02-10 21:14:30 -08:00
Gabriel Arrobo
24212d831b mpi: Remove redundant statement 2019-02-10 21:12:07 -08:00
Natale Patriciello
f6c49ef713 ci: Updated docker image to archlinux/base 2019-02-09 10:02:01 +01:00
Tom Henderson
b4cd4aa869 wifi, wave, mesh: Update API definitions 2019-02-04 19:26:02 -08:00
Tom Henderson
34a79a74ae wifi: beacon interval should be multiple of 1024us 2019-02-04 19:25:20 -08:00
Sébastien Deronne
a762d9a3d2 Update CHANGES.html to reflect changes in wifi model 2019-02-03 16:46:43 +01:00