bts: Add paging related tests
We're testing at 80% and 200% of PCH capacity, both for either IMSI-only
or TMSI-only paging requests. The way how we test ensures:
* the expected number of paged mobile identities end up on the Um interface
* we implicitly check the queuing limit of 200 paging records by
overflowing it in the 20-seconds-of-200%-load cases
* we implicitly check the batching of mobile identities into different
paging types
* we test the PCH load reporting over RSL
As a side note, in case you were ever wondering what's the expected
paging throughput / capacity, there are now helper functions to compute
it. For our combined CCCH/SDCCH4, it's about 16 IMSIs per second or
about 32 TMSIs per second.
Change-Id: I0b80b72bdab3d80d915296d70e1174623fbd8610
diff --git a/library/L3_Templates.ttcn b/library/L3_Templates.ttcn
index a614122..c2825a6 100644
--- a/library/L3_Templates.ttcn
+++ b/library/L3_Templates.ttcn
@@ -280,6 +280,74 @@
}
}
+template PDU_ML3_NW_MS tr_PAGING_REQ1(template MobileIdentityLV mi1 := ?,
+ template MobileIdentityTLV mi2 := *) := {
+ discriminator := '0110'B,
+ tiOrSkip := {
+ skipIndicator := '0000'B
+ },
+ msgs := {
+ rrm := {
+ pagingReq_Type1 := {
+ messageType := '00100001'B,
+ pageMode := ?,
+ channelNeeded := ?,
+ mobileIdentity1 := mi1,
+ mobileIdentity2 := mi2,
+ p1RestOctets := ?
+ }
+ }
+ }
+}
+
+template PDU_ML3_NW_MS tr_PAGING_REQ2(template TMSIP_TMSI_V mi1 := ?,
+ template TMSIP_TMSI_V mi2 := ?,
+ template MobileIdentityTLV mi3 := *) := {
+ discriminator := '0110'B,
+ tiOrSkip := {
+ skipIndicator := '0000'B
+ },
+ msgs := {
+ rrm := {
+ pagingReq_Type2 := {
+ messageType := '00100010'B,
+ pageMode := ?,
+ channelNeeded := ?,
+ mobileIdentity1 := mi1,
+ mobileIdentity2 := mi2,
+ mobileIdentity3 := mi3,
+ p2RestOctets := ?
+ }
+ }
+ }
+}
+
+template PDU_ML3_NW_MS tr_PAGING_REQ3(template TMSIP_TMSI_V mi1 := ?,
+ template TMSIP_TMSI_V mi2 := ?,
+ template TMSIP_TMSI_V mi3 := ?,
+ template TMSIP_TMSI_V mi4 := ?) := {
+ discriminator := '0110'B,
+ tiOrSkip := {
+ skipIndicator := '0000'B
+ },
+ msgs := {
+ rrm := {
+ pagingReq_Type3 := {
+ messageType := '00100100'B,
+ pageMode := ?,
+ channelNeeded := ?,
+ mobileIdentity1 := mi1,
+ mobileIdentity2 := mi2,
+ mobileIdentity3 := mi3,
+ mobileIdentity4 := mi4,
+ p3RestOctets := ?
+ }
+ }
+ }
+}
+
+
+
/* Send template for PAGING RESPONSE */
template (value) PDU_ML3_MS_NW ts_PAG_RESP(MobileIdentityLV mi_lv) := {
discriminator := '0000'B, /* overwritten */