blob: 9eeafe868877dcc1bff6c71572faa8607987393c [file] [log] [blame]
Neels Hofmeyrc4628a32018-12-07 14:47:34 +01001msc {
2 hscale=2;
3 bsca [label="BSC-A"], i[label="MSC-I"], a[label="MSC-A"], t[label="MSC-T"], bscb[label="BSC-B"];
4
5 i note t [label="'MSC-A,I,T' are explained in 3GPP TS 49.008 '4.3 Roles of MSC-A, MSC-I and MSC-T'"];
6 i note i [label="I = Internal; the MSC that does BSSMAP to the BSC (may change to a remote MSC-B after HO)"];
7 a note a [label="A = first; the MSC that has MM control BSSMAP to the BSC (never changes)"];
8 t note t [label="T = transitory; the MSC that a handover is going towards (may be MSC-A for inter-BSC HO, may be a remote MSC-B)"];
9
10 bsca => i [label="BSSMAP Handover Required"];
11 i -> a [label="BSSMAP Handover Required"];
12
13 a -> t [label="MAP Prepare Handover"];
14 t => bscb [label="BSSMAP Handover Request"];
15 t <= bscb [label="BSSMAP Handover Request ACK"];
16 a <- t [label="MAP Prepare Handover Response"];
17 i <- a [label="MAP Prepare Handover Response"];
18 bsca <= i [label="BSSMAP Handover Command"];
19
20 --- [label="MS sends RACH to new cell"];
21
22 t <= bscb [label="BSSMAP Handover Detected"];
23 a <- t [label="MAP Access Signaling Request"];
24
25 t <= bscb [label="BSSMAP Handover Complete"];
26 a <- t [label="MAP Send End Signal"];
27
28
29 a abox a [label="MSC-A accepts the new BSC"];
30 i note t [label="previous MSC-I gets dropped, MSC-T becomes the new MSC-I"];
31 i abox i [label="discard"];
32 t abox t [label="MSC-I"];
33
34 bsca <= i [label="BSSMAP Clear Command"];
35
36}