faluco
62faef7c71
- Replaced all uses of the log::console method.
4 years ago
Andre Puschmann
f32d9f8322
ttcn3: call stop in UE dtor
...
fixes stop issue of TTCN3 DUT
4 years ago
Pedro Alvarez
b3bfe336a9
Make sure that remote address test has a ip mask
4 years ago
Sylvain Munaut
6ce5863f03
test/tft_test: Add a combined test for IPv6 packets
4 years ago
Sylvain Munaut
9ba8b62972
test/tft_test: Update filter test suite
...
The “IPv4 local address type” filter should be 9 bytes since it includes
not only the ip address, but also its subnet mask.
Quoting from 3GPP TS 24.008 10.5.6.12:
"""
For "IPv4 remote address type", the packet filter component value field
shall be encoded as a sequence of a four octet IPv4 address field and a
four octet IPv4 address mask field. The IPv4 address field shall be
transmitted first. For "IPv4 local address type", the packet filter
component value field shall be encoded as defined for "IPv4 remote
address type".
"""
Same for the ToS which also includes a 1 byte mask value
4 years ago
Ismael Gomez
b94d24ed98
Take into account CRS from neigbhour cells when measuring interference ( #1757 )
...
* Take into account CRS from neigbhour cells when measuring interference
* fix std::isnormal compilation
* Fixed compilation of test
* Address comments
* Remove unused overrides
4 years ago
Andre Puschmann
1afc137032
[REBASE] Make PHY non-blocking and fefactor HO procedure ( #1753 )
...
* Make PHY non-blocking and fefactor HO procedure
* makes entire PHY non-blocking through command interface
* adds dedicated queue for cell_search/cell_select commands
* refactor HO procedure to run faster, in one stack cycle. Looks closer to the specs
* force ue to always apply SIB2 configuration during reestablishment
* Run update_measurements in all workers
Co-authored-by: Ismael Gomez <ismagom@gmail.com>
4 years ago
faluco
f0d651ae8e
- Fixed a leak in the MME class not releasing the static byte buffer pool.
...
- Now the pool gets destroyed on program exit using a unique_ptr.
- Removed manual cleanup() calls in all the code base to free the pool instance.
4 years ago
Ismael Gomez
5968157ea5
Protect better the access to shared variables in phy_common and metrics ( #1750 )
4 years ago
Andre Puschmann
a36f9bddc2
ttcn3: use RNTI values in RACH provided by tester
...
this patch extends the SS to use the C-RNTI and Temp CRNTI values
provided by the tester for RAR and Msg3.
4 years ago
Andre Puschmann
d90de639e5
ttcn3_syssim: continue when epoll returns -1
...
this allows to debug and step in the SS
4 years ago
Andre Puschmann
1b266257a1
ttcn3_phy: improve logging of cell measurements
4 years ago
Andre Puschmann
3088cdbb0f
ttcn3: fix uncaught exception in SS
...
fix accessing child element in parsed Json without checking
its existence.
4 years ago
Andre Puschmann
3e824f6370
ttcn3: convert TTI action vector to queue
...
this makes sures queued events are executed FIFO
4 years ago
Andre Puschmann
624c8142ad
ttcn3: refactor cell handling in SS
...
this rather large patch changes the way cells are handled in the SS.
It moves RLC and PDCP entities to the cell map of the SS, such that each cell
has its own entities. This allows to support HO operation, for example,
in which two cells need to send SRB messages.
It also extends most of the syssim interface to include the cell name
in all commands so they can be applied on the specified cell only.
4 years ago
Andre Puschmann
4650a620d9
ttcn3: refactor cell search and selection in TTCN3 PHY
...
- make sure only suitable cells are reported/selected
4 years ago
Andre Puschmann
973de8f78d
ttcn3_dut: block OS signals before starting log backend
...
this prevents the backend thread from handling the signals. they
are only handled by epoll running in the main thread.
this fixes #1713
4 years ago
faluco
c178e362b8
- Rewrite log management so that a log sink can be swapped for each testcase.
4 years ago
Ismael Gomez
4c1d3ef7e8
Fix implementation of Random Access problem ( #1689 )
...
* Fix implementation of Random Access problem
* Apply AS activated condition on RLF before calling Reestablishment
4 years ago
Ismael Gomez
f49fbd6d02
Fix the order of HO/reest measurement actions ( #1696 )
4 years ago
Andre Puschmann
92d76a5eb6
mac_test: update tests involving BSR handling
...
* split existing BSR test into dedicated test for short, long, and trunc
BSR tests
* update MAC tests that include packing UL BSR.
(After checking TS 36.321 again it seems we have reported old UL buffer states)
4 years ago
Ismael Gomez
54eed11e1d
Refactor decision for extended CSI/SRS
4 years ago
Francisco Paisana
92221eb780
update of rrc_interface_mac to remove signal from mac to rrc that RA failed in case of handover failure
4 years ago
Andre Puschmann
641a4a5e79
mac_test: fix compilation if PCAP write is enabled
4 years ago
Daniel Willmann
7d0ae71f17
ttcn3_sys_interface: Handle initial cell attenuation
...
When new Cells are added they can have an attenuation configured
directly. Honor that setting.
4 years ago
Ismael Gomez
72cc4e0ca5
Stop ContentionResolutionTimer on RA error. Updated test
4 years ago
Francisco Paisana
75b204bc52
fix phy ctrl call to cell selection observers
4 years ago
Francisco Paisana
834c0b3929
integrated new observer pattern into phy controller fsm
4 years ago
Francisco Paisana
48dd436d86
integrated observer pattern into rrc phy ctrl fsm
4 years ago
Andre Puschmann
5e40bfe72c
mac_pdu: unpack and print BSR index as well as BSR value in bytes
...
before the BSR was extracted but the actual index (between 0 and 63)
was not stored but directly converted into bytes.
for log parsing and debugging it is easier to follow the index
value. this patch therefore adds both values to the log message
and extends the API accordingly.
4 years ago
faluco
e5a792d508
- Fix unused variable.
4 years ago
faluco
cfd3f51931
Import of srslog into srsepc and srsenb. ( #1574 )
...
* - Import of srslog into srsepc and srsenb.
* - Removed logger_file and logger_stdout files.
4 years ago
Andre Puschmann
9550bd3ef8
rlc: revisit interface for MAC and RRC
...
* add locked and unlocked version of has_data() since one is
called from stack and one from PHY threads
* add comments in each interface section as to why locking
is required or not
* remove RLC rwlock when not required
* move calls only used by RRC to RRC section
4 years ago
Pedro Alvarez
c686e6cea1
SRSUE: Set SCell configuration is unlocking ( #1544 )
4 years ago
Ismael Gomez
443dee7035
Changes in Cell Selection Procedure ( #1557 )
...
* Fixes RRC cell reselection procedure
4 years ago
Francisco Paisana
4fb8011a6d
updated phy controller to use task scheduler
4 years ago
Francisco Paisana
9c5471b094
more ergonomic event callback
4 years ago
Francisco Paisana
58a9610efa
use of stack event loop to propagate cell search and selection results
4 years ago
Francisco Paisana
d48a45976e
moved cell selection/search complete event signalling out of phy_controller
4 years ago
Francisco Paisana
48138b5281
removal of phy cell selection procedure as it now it is replaced by phy controller
4 years ago
Francisco Paisana
489969722e
implemented phy controller FSM to perform cell selection & search. The controller also tracks the phy sync state
4 years ago
Andre Puschmann
a7911f0dab
pdcp,rlc: refactor SDU queueing policy
...
this patch refactors the SDU queuing and dropping policy of the RLC and PDCP layer.
the previous design had issues when packets have been generated at a higher
rate above the PDCP than they could be consumed below the RLC.
When the RLC SDU queues were full, we allowed two policies, one to block on the write
and the other to drop the SDU. Both options are not ideal because they either
lead to a blocking stack thread or to lost PDCP PDUs.
To avoid this, this patch makes the following changes:
* PDCP monitors RLC's SDU queue and drops packets on its north-bound SAP if queues are full
* a new method sdu_queue_is_full() has been added to the RLC interface for PDCP
* remove blocking write from pdcp and rlc write_sdu() interface
* all writes into queues need to be non-blocking
* if Tx queues are overflowing, SDUs are dropped above PDCP, not RLC
* log warning if RLC still needs to drop SDUs
* this case should be avoided with the monitoring mechanism
4 years ago
Francisco Paisana
5e06430455
removal of stack handler interface
4 years ago
Francisco Paisana
7c364070ee
creation of task scheduler interface for classes/functions running outside the main control thread
4 years ago
Francisco Paisana
1a9c04bf2f
use of task scheduler handle in pdcp
4 years ago
Francisco Paisana
4f5e65781f
created task scheduler class to deal with timers, thread pool, multiqueue, internal tasks
4 years ago
Pedro Alvarez
528777fa29
Added sleep to avoid nas test concurrency issue.
4 years ago
Francisco Paisana
510687766f
added comments in rrc cell select test
4 years ago
Francisco Paisana
c6f422d23e
improved cell selection test in srsue::rrc
4 years ago
Andre Puschmann
218fa5cf55
ttcn3_dut: fix bug in DUT
...
reducing the sync queue len to 1 caused an issue when the
PHY was locking the mutex while trying to push a TTI event
on the stack.
instead of signaling the new TTI within the PHY, we now do it outside
in the DUT (after releasing the PHY mutex)
4 years ago
Francisco Paisana
84f34bc736
changed to a label filtering approach for ctest
4 years ago
Francisco Paisana
ebb8f18000
set some extra tests with the prefix "long_"
4 years ago
Francisco Paisana
c6323478d2
remove unecessary sleeps in mac test, and add long_ prefix in long tests
4 years ago
Andre Puschmann
a5c0f96fa7
srsue: limit sync queue length to 1 for ZMQ radio
...
apply same change that we've done on the eNB also on the UE
to avoid the PHY processing TTIs faster than the stack.
Without that, we see lots of those in the logs:
...
08:39:17.580325 [STCK] [W] Detected slow task processing (sync_queue_len=7).
...
4 years ago
Andre Puschmann
c15b2ec810
ttcn3_dut: always create timer when enabling TESTMODE B
...
create timer but dont yet set it. this avoid adding multiple
checks if the timer var is actually initialized.
4 years ago
Andre Puschmann
63f1ea1bec
ttcn3: streamline DRB and SRB Tx interface
...
use the same tx interface with const uint8_t* and length byte instead of std::string
4 years ago
Daniel Willmann
7a25d1d300
Send the RRC_PDU_IND as JSON
...
Fixes: srslte_ttcn3#13, srslte_ttcn3#15
4 years ago
Andre Puschmann
2c5e159420
ttcn3_drb_interface: remove use of GetArray()
...
unfortunately, the rapidjson version shipped with Ubuntu 16.04
doesn't support the GetArray() API so we need to use
normal iterator to loop over the array
4 years ago
Andre Puschmann
bf6ddbe976
ttcn3_drb_interface: use uint8_t and len as tx interface
4 years ago
Andre Puschmann
7f47edf67f
fix issue where PDCP SDU was not going through UE stack to SS
...
this cause the PDCP echo reply not to appear in MAC/PCAP
4 years ago
Andre Puschmann
07f22326b4
pass current SS TTI when formatting DRB common IND
4 years ago
Daniel Willmann
8652f75510
Don't try to guess the lcid, use what we got
4 years ago
Daniel Willmann
0b88161b3c
Send DRB PDUs as JSON to TTCN3
4 years ago
Daniel Willmann
31f1516d74
Use callback to establish connection before sending PDUs in TestmodeB
4 years ago
Daniel Willmann
9aa441f8b6
ttcn3_ue::timer_expired(): Loop through the correct queue
...
Fixes a segfault when a NULL pdu is passed to loop_back_pdu_with_tft()
4 years ago
Daniel Willmann
a3adba0081
Implement DRB establishment and handle rx/tx
4 years ago
Daniel Willmann
999de5f484
ttcn3_helpers: Add function to generate JSON for DRB PDUs
4 years ago
Pedro Alvarez
9c1a7d2cf1
Removed get_bearer_status in PDCP. Renamed get_state/set_state to
...
get_bearer_state/set_bearer_state.
4 years ago
Xavier Arteaga
e0e8405285
SRSUE: initial scell sync
...
SRSUE: SCell Synch feedbacks delay
SRSUE: Implemented SCell Radio offset correction
4 years ago
Xavier Arteaga
f04cf2090a
Integrates number of samples in radio buffer
...
Fix minor issue
Radio: Fix minor bug and add unit test
4 years ago
Xavier Arteaga
de230826b9
Added string helper for removing spaces and parsing list
...
Fix
Fix string parser
4 years ago
Xavier Arteaga
89b24b54e5
Refactored radio class for acommodating multiple RF devices
4 years ago
Daniel Willmann
0e99e2f6eb
srsue: Refactor definition to live in its own .cc file
4 years ago
Xavier Arteaga
e605a6f367
UE PHY test disabled due to unstable behaviour
5 years ago
Xavier Arteaga
0d2b3eb55d
Removed ue_phy_test log overload
5 years ago
Xavier Arteaga
2d8bd0692a
SRSUE: fix and enable UE PHY test
5 years ago
Francisco Paisana
38f848ecdf
fix type name deducing for clang
5 years ago
Francisco Paisana
b8e6ba02e4
remove warnings related to unused vars and fwd declarations with trivial dtors
5 years ago
Francisco Paisana
b506e29b72
removed common ce_typeenum
5 years ago
Xavier Arteaga
58803d1b3e
Added UL EARFCN map and UE PHY interface cleanup
5 years ago
Xavier Arteaga
77d5dedddc
Fix LGTM warnings and recommendations
5 years ago
Francisco Paisana
6ddedd5972
moved pdu to common mac folder
5 years ago
Xavier Arteaga
e6792cf9b7
Refactored OFDM and added half CP window offset in UL Demodulator
5 years ago
Francisco Paisana
c09f76ed6c
unified stack task defer method
5 years ago
Andre Puschmann
d35c9e2b89
nas: add support ot UE test loop mode B
...
extend GW-NAS interface to signal test mode activation.
The method is a noop in the normal GW but is implemented in
the TTCN3 DUT according to TS 36.509 for Mode B
5 years ago
Andre Puschmann
451bbb20e8
ttcn3_ss: refactor AS security activation and use new timed call
5 years ago
Andre Puschmann
54a99d3f66
ttcn3_dut: add basic DRB handler skeleton
...
the handler is currently just listening on the designated port
and prints the received JSON string
5 years ago
Andre Puschmann
84d80f3e32
ss: use factory method to create PDCP config for SRB
5 years ago
Xavier Arteaga
9a2b0b7cc7
Standard vector allocation uses vector library
5 years ago
Xavier Arteaga
25312e81b4
SRSUE: cell select RRC MEAS CFO is carried to PHY Cell object
5 years ago
Xavier Arteaga
cbaba9c0bd
Fix RRC and TTCN3 test
5 years ago
Francisco Paisana
30ae2226c1
common interface for stack multiqueue tasks, background tasks and timers
5 years ago
Andre Puschmann
94c6034339
nas: rename start_attach_request to start_attach_proc
...
this is to better differentiate from "send_attach_request" that
only packs and send the actual attach request message. The
entire attach procedure may include PLMN search, etc.
5 years ago
Andre Puschmann
9239bb14a6
ss: store current TTI in DL/UL grant struct
...
this fixes the TTI log in the PCAP generated by the UE
5 years ago
Andre Puschmann
5267a88d60
ttcn3_ss: remove unneeded NDI reset
5 years ago
Andre Puschmann
562b4ef6c8
ttcn3_ss: add missing timer stepping
5 years ago
Francisco Paisana
344eaf49ec
use logmap in the whole enb and ue
5 years ago
Francisco Paisana
c7741f368f
update rrc_meas_test
5 years ago
Andre Puschmann
b9a2217355
fix uninit vars reported by Coverity
5 years ago
Xavier Arteaga
5e6828c3a0
SRSUE: fix add/mod meas object
5 years ago
Francisco Paisana
70c2510c25
simplified mac_test step interface
5 years ago
Francisco Paisana
e91a7ea513
removed stack-mac interface dedicated methods. We use now the task dispatch methods instead
5 years ago
Francisco Paisana
de03c96c3b
mac::process_pdus now uses the stack task dispatch interface
5 years ago
Francisco Paisana
7f6bde59fc
move write_pdu_pcch and write_pdu_bcch_bch to stack thread
5 years ago
Francisco Paisana
de3c28e52d
added task dispatch capabilities to stack interface
5 years ago
Francisco Paisana
46a1be3e76
updated mac-rlc interface to use unique_byte_buffer
5 years ago
Francisco Paisana
82cb6baef0
now the whole ue and enb mac uses the logmap
5 years ago
Francisco Paisana
45bc123967
remove manual tti counters from the rrc
5 years ago
Francisco Paisana
138347b6b5
nas using stack timers
5 years ago
Francisco Paisana
d3f49d0e3c
changed interface sync-stack to allow tti jumps > 1
5 years ago
Andre Puschmann
cf9306abdb
fix UE CSV metrics header typo
5 years ago
Xavier Arteaga
e832769ae6
Updated copyright
5 years ago
Daniel Willmann
3a804e23fa
ttcn3_sys_interface: Parse SIBs even when "StaticCellInfo" is missing
...
The test TC_9_2_1_1_1 sends a Cell->AddOrReconfigure->Basic message
without a "StaticCellInfo" member. This is used to change SIB1 of
the cell and simulate a different PLMN/TAC in the test.
handle_request_cell_basic() ignored the json message if "StaticCellInfo"
is missing which results in the SIB not being updated (PLMN stays as
00102 for example).
With this patch the SIBs after the json are now parsed even if there
"StaticCellInfo" is missing. A confirmation of the json is not sent
because the test does not seem to expect one in that case.
Related: TC_9_2_1_1_1
5 years ago
Daniel Willmann
bc4e4ff97b
ttcn3_ip_sock_interface.h: Don't respond to UDP/ICMP Close
...
A close request should not be responded to with a ctrl_cnf
5 years ago
Ismael Gomez
e8b8c9922e
Add RF per-channel frequency band constraints ( #1026 )
5 years ago
Xavier Arteaga
76408b195e
Rename TX_DELAY and FDD_HARQ_DELAY_MS
5 years ago
Xavier Arteaga
65711d06dc
PRACH TA base default to 0 and apply clang-format
5 years ago
Xavier Arteaga
e8f9bfc6ba
Addition of PRACH TA correction
5 years ago
Pedro Alvarez
96c82b3fc6
Moved PDCP configs to pdcp_config.h. Added `as_security_cfg_t` structure to hold access stratum keys.
...
Refactored PDCP, RRC and USIM accordingly.
5 years ago
Daniel Willmann
1314b8f653
Implement override_lcid() function in ttcn3_sys_interface
...
Fixes: TC_7_1_1_1 (#6 )
5 years ago
Ismael Gomez
4e12405fff
Remove radio_multi class and organize channels, ports and carrier buffers ( #1019 )
5 years ago
Andre Puschmann
664170fec6
pcap: add CC index when writing PCAP
5 years ago
Andre Puschmann
a8bbe551ac
move thread class into srslte namespace to avoid ambiguity between std::thread
5 years ago
Andre Puschmann
e7c10270fa
ttcn3_ss: fix security activation for PDCP
5 years ago
Andre Puschmann
5a03eaed2b
ss: move timing_info_t to ttcn3_helpers, fix PDCP count handling
5 years ago
Andre Puschmann
72c5b381e4
fix bug when parsing cipher algo config for SS
5 years ago
Andre Puschmann
8a69772ebc
rewrite packing of DL PDU in SS
...
the new algo tries to write more than just one RLC PDU inside a MAC PDU
if this is possible
5 years ago
Andre Puschmann
e919c57a32
add handling of FollowOnFlag from tester
5 years ago
Andre Puschmann
89d5876470
add TimingInfo support for remaining SS commands
5 years ago
Francisco Paisana
e859d622c7
added logref class to forbid logmap pointer invalidation. Created a test for the logref, and introduced it in the scheduler, rrc and nas
5 years ago
Andre Puschmann
81e28aa9dc
add basic support for TimingInfo field from tester
...
this fixes an issue where commands are received out of
order and we are therefore applying configs incorrectly. if
commands include a timinginfo we are now putting the command
on a queue that the SS reads after the start of a new TTI.
the security and cell reconfig commands will be added in another
PR after the AS_security command has been fixed.
5 years ago
Andre Puschmann
55a5947df7
add default init to TTCN3 syssim to prevent segfault when tc_start isn't received
5 years ago
Andre Puschmann
39f2011699
fix issue in SS where Msg4 wouldn't be sent because ConnectionSetup is provided too late
5 years ago
Andre Puschmann
b88e877b4c
ttcn3: make SS single threaded and use SCTP for test ports
...
- remove all threading from SS
- use epoll to handle test port connections, signals, and timers
- convert testport interface to SCTP
5 years ago
Francisco Paisana
c29f08d8d5
refactored si acquisition procedure to use stack timers. Also created an interface that is going to be used for the task/timer handling
5 years ago
Xavier Arteaga
f8165383f6
Neighbour SCell measurement test waits for final measurement before exiting-xx
5 years ago
Francisco Paisana
22f51bb30b
made cell select non-blocking using background threads
5 years ago
Ismael Gomez
4fb83ae26d
Run configure_prach_params as a background task
5 years ago
Andre Puschmann
701e4aa6be
fix bug causing segfault when UE wasn't initialized
5 years ago
Andre Puschmann
b15cd3fdaa
add error handling to TTCN3 socket handlers
5 years ago
Andre Puschmann
42920d508f
fix SS debug output
5 years ago
Xavier Arteaga
6672f6df0f
Minor aesthetic changes in intra measure class and changed scell_search test arguments
5 years ago
Xavier Arteaga
344016ef0a
Refactored and commented SRSUE's Intra measure component
5 years ago
Xavier Arteaga
8f6dd184be
SRSUE: neighbour cell measurement test defined
5 years ago
Andre Puschmann
0e337a01c3
fix SRB2 security handling in SS
5 years ago
Andre Puschmann
9720449cbb
fixing RRC measurement test after logmap refactor
5 years ago
Andre Puschmann
3d7598a4cb
rewrite cell handling in TTCN3 PHY and SS
5 years ago
Andre Puschmann
bbacc35e24
move configuration of default logger to main
...
this prevents the case where a layer requests a new log_filter
before the default logger has been configured
5 years ago
Xavier Arteaga
66bb7d6f82
SRSUE: fix TTCN3 compile
5 years ago
Xavier Arteaga
f8294fb9df
SRSUE: RRC measurements refactor and more fixes
5 years ago