comparison tmo/CSD-tests @ 70:47947e25f922

tmo/CSD-tests: document experimental findings
author Mychaela Falconia <falcon@freecalypso.org>
date Mon, 25 Nov 2024 07:22:43 +0000
parents
children ed314cc25b8d
comparison
equal deleted inserted replaced
69:cf60172895fe 70:47947e25f922
1 A series of experiments seeking to test CSD on the extant network of T-Mobile
2 USA, to be performed while this network is still alive. The main objective is
3 to test CSD calls between a single MS and analog (or PCMU-speaking) PSTN, rather
4 than mobile to mobile.
5
6 Test setup
7 ==========
8
9 The test MS is an FCDEV3B with a legacy T-Mobile SIM. The AT command session
10 will be driven through the dedicated UART, not the usual fc-shell, to enable
11 full use of data functions. Rvinterf will still be used to capture logs; the
12 following command needs to be issued in order to make the firmware emit traces
13 indicating AT command activity:
14
15 sp MMI TRACECLASS 800050
16
17 Issue these two additional commands to trace the MMCM SAP between CC and MM
18 entities of the protocol stack:
19
20 sp MM DUPLICATE CC PCO
21 sp CC DUPLICATE MM PCO
22
23 The objective is to capture all CC protocol messages sent to and received from
24 the network; tracing the exchange between CC and MM seems like the easiest way
25 to accomplish this goal within our existing firmware architecture.
26
27 Experiment 1
28 ============
29
30 In this experiment several MO CSD calls were made from the test MS to
31 +13034944774, the number for USA taxpayer-funded NIST ACTS. Several modes were
32 tested:
33
34 AT+CBST=7,0,1 -- TI GSM MS firmware default
35 AT+CBST=7,0,0
36 AT+CBST=6,0,0
37 AT+CBST=4,0,0
38 AT+CBST=2,0,0
39
40 Results were surprising:
41
42 * Transparent mode works beautifully at 9600 baud, as well as 4800 and 1200
43 baud. Therefore, the previous hypothesis that CSD at 9600 baud no longer
44 works as a result of GSM quality degradation or as a result of IP-fication of
45 internal transports within USA PSTN is now disproven.
46
47 * Transparent mode at 2400 baud produced a different result: successful CONNECT
48 followed by garbage and earlier disconnect, instead of 40 s of good ACTS
49 output in other baud modes. Perhaps a defect in V.22bis implementation in
50 the network IWF?
51
52 * All 3 data TCH modes were observed in L1 traces: TCH/F9.6, TCH/F4.8 and
53 TCH/F2.4, and each of these produced a perfectly good data call in at least
54 one mode.
55
56 * NT mode was only tested with AT+CBST=7,0,1 default, i.e., 9600 baud and asking
57 the IWF for V.32 modem. As revealed by L1 and CC traces, the network does
58 everything it should - but the MS returns NO CARRIER. However, further
59 analysis of CC traces reveals that the DISCONNECT at CC level is initiated by
60 the MS and not by the network! My current working hypothesis is that the MS
61 is unhappy about something it sees at RLP level.
62
63 Additional observations:
64
65 * The MS issues a single SETUP message with BC indicating ITC of 3.1 kHz and the
66 selected CSD mode. The network responds with CALL PROCEEDING, ALERTING and
67 CONNECT in the same cadence as it would for a MO voice call. The timing of
68 ALERTING message is consistent with my expectation of when PSTN plays the
69 ringing tone, and the timing of CC CONNECT message is consistent with my
70 expectation of when Answer Supervision occurs at PSTN level. The CC CONNECT
71 step is reached in all tested modes, including the failing NT mode.
72
73 * The AT-command CONNECT response happens significantly later than CC CONNECT
74 message. My current working hypothesis is that the network generates CC
75 CONNECT when it gets Answer Supervision from PSTN just like it does for voice
76 calls, well before modem connection sequence can happen. Perhaps the status
77 of modem connection is then indicated via V.110 in-band flags, and perhaps
78 the MS is using that in-band status to decide when to declare CONNECT.
79
80 * At the end of each call there was a network-initiated DISCONNECT with cause
81 value 127 (interworking, unspecified) - but in this experiment there is
82 insufficient information to tell if this action is initiated by the IWF upon
83 loss of modem signal, or if it is merely passing along PSTN-level disconnect
84 signaling from the called party. See Experiment 2.
85
86 Experiment 2
87 ============
88
89 In this experiment several MO CSD call attempts were dialed from the test MS to
90 Mother Mychaela's personal voice number on ThemWi; the latter is interconnected
91 with USA PSTN via BulkVS. The objectives were: (1) to confirm the hypothesis
92 about Answer Supervision on PSTN side being the criterion for signaling CC
93 CONNECT to the MS, and (2) to hear what, if anything, the IWF transmits toward
94 PSTN while waiting for modem connection.
95
96 Results:
97
98 * When I answered the call on the destination phone, I heard silence each time.
99 The calling party received CC CONNECT signaling when I made that answer.
100
101 * In both tests where +CBST was set to 7,0,0 and I answered the call, the
102 network (TMO) eventually ended the call, signaling cause 127 to the calling
103 MS like in Experiment 1. (Thus we now know that it is the IWF taking this
104 action, and not the called party hanging up at PSTN level.) In one of these
105 two tests, there was a miraculous CONNECT response from the AT interpreter,
106 some time well after Answer Supervision, but before the IWF-initiated
107 disconnect. In the second test, there was no CONNECT response, only
108 NO CARRIER at the time of IWF-initiated disconnect.
109
110 * In the test case where I didn't answer the destination phone (let the ringing
111 time out), the calling MS received CC DISCONNECT message with cause 17 (user
112 busy), as that is how PSTN middleboxes misinterpret SIP 480 error I return
113 from ThemWi. The AT command interface generated BUSY response.
114
115 * In the final test case in this experiment series, I made the test call with
116 +CBST=7,0,1 and answered the destination phone. The MS initiated DISCONNECT
117 4 s after receiving CC CONNECT, just like it did when calling NIST ACTS.
118
119 Experiment 3
120 ============
121
122 This experiment sought to observe how TMO GSM network handles MT calls from PSTN
123 to a mobile subscriber, including the possiblity of MT CSD calls via AT+CSNS.
124 An MT call was repeatedly dialed from Mother Mychaela's ThemWi phone to the test
125 MS on TMO, with different AT+CSNS and AT+CBST settings established before each
126 call attempt; logs were collected for subsequent analysis.
127
128 Observations:
129
130 * The initial SETUP message from the network to the MS contains _no_ bearer
131 capability IE; the CALL CONFIRM response from the MS does include BC IE,
132 filled with different content depending on AT+CSNS and AT+CBST settings.
133
134 * The network seems to always accept the BC supplied by the MS in that response,
135 and assigns appropriate TCH type and mode.
136
137 * The PSTN caller hears the standard North American ringing tone while the MS
138 emits RING messages on its AT command channel, subsequent to the MS sending
139 CC ALERTING message to the network.
140
141 * When I answer the call with ATA, the MS sends CC CONNECT to the network, the
142 PSTN caller gets Answer Supervision, and I hear modem answer tones from TMO's
143 IWF.
144
145 * Only Transparent modes have been tested so far; the modem answer sequence
146 heard by the PSTN caller depends on the specific modem emulation selected
147 with AT+CBST. With AT+CBST=2,0,0 and AT+CBST=4,0,0 I heard a continuous (no
148 phase reversals) V.25 ANS tone followed by a higher-pitched tone (presumably
149 Unscramled Binary 1s signal of V.22), followed by disconnection; with
150 AT+CBST=6,0,0 and AT+CBST=7,0,0 I heard a V.25 ANS tone *with* phase
151 reversals, directly followed by disconnection (no AC tones).
152
153 Further tests were aborted (I didn't get to testing NT mode) because the network
154 did something that caused the MS firmware (or perhaps the SIM) to go into a
155 funky state; to be investigated as its own separate problem.
156
157 Experiment 4
158 ============
159
160 In this experiment I used two of my legacy T-Mobile SIMs simulateneously: one
161 in the FCDEV3B as in the preceding experiments, the other in a Pirelli DP-L10
162 phone. The Pirelli phone ran RAM-based FC Tourmaline firmware during these
163 tests. Test calls were dialed from the FCDEV3B to the Pirelli; the fw build
164 running on the latter has CSD excluded, but the objective was to see the MT
165 SETUP message as it arrives from the network, before destination MS firmware
166 does anything with it.
167
168 Observation: _no_ BC IE was ever seen in the MT SETUP message, for both voice
169 and data calls dialed from the other TMO subscriber line. It appears that all
170 MO CSD calls were treated by the network in "convert to modem emulation" mode
171 despite the dialed number being another T-Mobile line; the MT leg always
172 received incoming voice calls.
173
174 It thus appears that a change has happened in TMO's network in this regard.
175 Many years ago, before I learned about T vs NT distinction and other critical
176 CSD parameters set with AT+CBST, when I would blindly dial ATDnumber, I was
177 sometimes able to make a data call from a proper FreeCalypso test MS to a
178 Pirelli phone running its official fw: the destination phone would ring and
179 display an incoming call screen, but it said "data call". For this feat to
180 have happened, there must have been a BC IE in the MT SETUP message when the
181 MO leg made a data call - hence the change between past and present bahaviour.