Commit Graph

13 Commits

Author SHA1 Message Date
Harald Welte 8525764791 fr: UE_CT: Store BVCI + CellId in each UE
Change-Id: I1a25a03e17b3d957763512dc4acda134338df3be
2021-02-04 14:58:22 +01:00
Harald Welte bfff717e1c fr/fr-net: Use four parallel FR NS-VC instead of just one
Related: OS#4974
Change-Id: I366ceea525c09236f5432ba043a757e593d4ed0e
2021-02-04 10:48:21 +01:00
Harald Welte 106ba34a26 fr: TC_bvc_bringup
Change-Id: I91d61e01158802496a1058748c51506f0472b24e
2021-02-03 19:28:05 +01:00
Harald Welte f1f23bf785 fr: Generalize and document functions
This prepares a lot of the FR_Tests functionality to be re-used in more
test cases.

Change-Id: I95b759ad85d9d1cba1533122672e7ff5628bc014
2021-02-03 19:28:05 +01:00
Harald Welte 02cdc7cf2c fr: Add component id in logs; add 15s timeout waiting for BVC-UNBLOCK
Change-Id: If62d54517ee9af828d6fa56d83073260ceced1e8
2021-02-03 19:28:05 +01:00
Harald Welte 5e78788c4e fr: Make TC_foo() actually terminate
Rather than running in an endless loop (useful for manual tets),
terminate each UE_CT after sending 50 packets.  Also adjust the ramping
and timeouts in a way that it manages to terminate ahead of the guard
timeout.

Change-Id: I7f40f5c59d399d528072986d067b5014fbd085c4
2021-02-03 19:28:05 +01:00
Harald Welte 681949b047 fr: Implement per-UE guard timeout
Change-Id: Ie52b1923ca81f7717be446891df1bfdb67ed7ed7
2021-02-03 19:28:05 +01:00
Harald Welte 056858ac62 fr: Don't wait indefinitely, but wait until all UE components terminate
Change-Id: Ifdf9c7fb625ccdb467b3b87f79431da18fea5f2e
2021-02-03 19:28:05 +01:00
Harald Welte d6de98418c FR/FRNET: Introduce simplistic simulation of UEs
Let's start a number of per-UE/TLLI component on each BVC, and generate
some uplink traffic with random-payload 512-byte LLC frames.  The
FRNET(SGSN) side simply ignores all of those by means of a
CreateCallback.

Change-Id: I1b25b4a650d831bb07e9623b76e6c3dcdd71ac88
2020-11-16 20:32:20 +01:00
Harald Welte 4d112c926c BSSGP_Emulation: Allow a "CreateCb" to handle unknown inbound TLLI
The existing BSSGP Code assumed that the TLLIs were always known "a
priori" by the test case.  With the newly-introduced create_cb,
the user can provide a function to handle any incoming messages for an
unknown TLLL.  The default handler behaves like before: fail +
terminate.

Change-Id: Ice0e145f5a6518ff79547dd851042b7965f38e00
2020-11-16 19:13:26 +00:00
Harald Welte de6f3ee592 FR/FRNET: Dynamically create number of BVC at runtime
We don't want the number of NSE and the number of BVC to be a
compile-time choice, but rather something dynamic at rutime.  This
allows configuration files to define those details.

Change-Id: I55b44481b5322deaf78619c1689462d716ddfcec
2020-11-12 20:02:07 +00:00
Harald Welte 90f1974fb0 NS_Emulation: Support multiple NS-VC within one NSE (NS-VCG)
This is something we need to simulate more complex scenarios,
particularly in the context of frame relay.

Change-Id: If1220852785853f8a5d8de183d5053ddd6ccb958
2020-11-12 20:02:07 +00:00
Harald Welte 023b61b2cb FR/FRNET: add Frame Relay emulation
Add frame relay testcase for BSS and SGSN side.
The test cases require hdlc interfaces (based on
dadhi with super channels and no lmi).

Change-Id: I95d64dc26a8d2ff02d6cf2bfcd22a97e5481f957
2020-10-16 04:06:39 +02:00