blob: a7483520965047ab0900012f40f3d5c80bafa760 [file] [log] [blame]
Neels Hofmeyr1971b672020-01-23 04:40:51 +01001msc {
2 hscale="2";
3 ms[label="MS,BSS"],__msc[label="MSC"],hlr[label="HLR proxy"],home[label="Home HLR"];
4
5 ms => __msc [label="CM Service Request / Paging Response"];
6 __msc => hlr [label="Send Auth Info Request"];
7 hlr abox hlr [label="there still are unsent auth tuples\nin the cache"];
8 hlr rbox hlr [label="Send cached, fresh tuples"];
9 __msc <= hlr [label="Send Auth Info Result\ncontaining auth tuples\nfrom the proxy cache"];
10 ms <= __msc [label="Authentication Request"];
11 ms => __msc [label="USIM requests UMTS AKA resync\nAuth Failure with AUTS"];
12 __msc => hlr [label="Send Auth Info Request\ncontaining AUTS IE"];
13 hlr rbox hlr [label="Mark all UMTS AKA tuples as stale"];
14 --- [label="If the home HLR responds in time"];
15 hlr => home [label="Send Auth Info Request"];
16 hlr <= home [label="Send Auth Info Result\nwith 5 auth tuples"];
17 hlr rbox hlr [label="clear tuple cache, store new tuples"];
18 __msc <= hlr [label="Send Auth Info Result"];
19 ms rbox __msc [label="Authentication"];
20 hlr rbox hlr [label="fill up the tuple cache as necessary"];
21 hlr => home [label="Send Auth Info Request"];
22 hlr <= home [label="Send Auth Info Result"];
23 ...;
24 --- [label="If the home HLR is unreachable"];
25 hlr => home [label="Send Auth Info Request"];
26 hlr abox hlr [label="no link\nor\nresponse timeout"];
27 hlr rbox hlr [label="Store the AUTS received earlier,\nand set up a timer to retry SAI\n(a few minutes?)"];
28 --- [label="If no GSM AKA fallback is allowed"];
29 __msc <= hlr [label="Send Auth Info Error"];
30 ms rbox __msc [label="Detach"];
31 --- [label="If GSM AKA fallback is allowed"];
32 hlr rbox hlr [label="Resend only GSM AKA tuples, already sent earlier"];
33 __msc <= hlr [label="Send Auth Info Result\ncontaining GSM AKA auth tuples\nfrom the proxy cache"];
34 ms rbox __msc [label="2G: Authentication\n3G: Detach"];
35 ---;
36 hlr abox hlr [label="AUTS timer triggers"];
37 hlr => home [label="Send Auth Info Request"];
38 hlr <= home [label="Send Auth Info Result"];
39 hlr rbox hlr [label="clear tuple cache, store new tuples"];
40 hlr rbox hlr [label="continue to fill up the cache as necessary"];
41}