summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc4165.txt
blob: 8075c112d150e7313ca7a7963136a5a29c64e95f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
Network Working Group                                       T. George
Request for Comments: 4165                                B. Bidulock
Category: Standards Track                                     OpenSS7
                                                             R. Dantu
                                            University of North Texas
                                                      H. Schwarzbauer
                                                              Siemens
                                                         K. Morneault
                                                        Cisco Systems
                                                       September 2005


       Signaling System 7 (SS7) Message Transfer Part 2 (MTP2) -
               User Peer-to-Peer Adaptation Layer (M2PA)

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This document defines a protocol supporting the transport of
   Signaling System Number 7 (SS7) Message Transfer Part (MTP) Level 3
   signaling messages over Internet Protocol (IP) using the services of
   the Stream Control Transmission Protocol (SCTP).  This protocol would
   be used between SS7 Signaling Points using the MTP Level 3 protocol.
   The SS7 Signaling Points may also use standard SS7 links using the
   SS7 MTP Level 2 to provide transport of MTP Level 3 signaling
   messages.  The protocol operates in a manner similar to MTP Level 2
   so as to provide peer-to-peer communication between SS7 endpoints.













George, et al.              Standards Track                     [Page 1]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


Table of Contents

   1. Introduction ....................................................3
      1.1. Scope ......................................................3
      1.2. Terminology ................................................3
      1.3. Abbreviations ..............................................4
      1.4. Conventions ................................................5
      1.5. Signaling Transport Architecture ...........................5
      1.6. Services Provided by M2PA ..................................7
      1.7. Functions Provided by M2PA .................................9
      1.8. Definition of the M2PA Boundaries .........................10
      1.9. Differences Between M2PA and M2UA .........................10
   2. Protocol Elements ..............................................12
      2.1. Common Message Header .....................................12
      2.2. M2PA Header ...............................................13
      2.3. M2PA Messages .............................................14
   3. State Control ..................................................17
      3.1. SCTP Association State Control ............................17
      3.2. M2PA Link State Control ...................................18
   4. Procedures .....................................................19
      4.1. Procedures to Support MTP2 Features .......................19
      4.2. Procedures to Support the MTP3/MTP2 Interface .............30
      4.3. SCTP Considerations .......................................33
   5. Examples of M2PA Procedures ....................................34
      5.1. Link Initialization (Alignment) ...........................34
      5.2. Message Transmission and Reception ........................37
      5.3. Link Status Indication ....................................37
      5.4. Link Status Message (Processor Outage) ....................38
      5.5. Level 2 Flow Control ......................................42
      5.6. MTP3 Signaling Link Congestion ............................44
      5.7. Link Deactivation .........................................45
      5.8. Link Changeover ...........................................45
   6. Security Considerations ........................................47
   7. IANA Considerations ............................................47
      7.1. SCTP Payload Protocol Identifier ..........................47
      7.2. M2PA Protocol Extensions ..................................48
   8. Acknowledgements ...............................................49
   9. References .....................................................50
      9.1. Normative References ......................................50
      9.2. Informative References ....................................51











George, et al.              Standards Track                     [Page 2]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


1.  Introduction

1.1.  Scope

   There is a need for Switched Circuit Network (SCN) signaling protocol
   delivery over an IP network.  This includes message transfer between
   the following:

      - a Signaling Gateway (SG) and a Media Gateway Controller (MGC)
        [RFC2719]

      - a SG and an IP Signaling Point (IPSP)

      - an IPSP and an IPSP

   This could allow for convergence of some signaling and data networks.
   SCN signaling nodes would have access to databases and other devices
   in the IP network domain that do not use SS7 signaling links.
   Likewise, IP telephony applications would have access to SS7
   services.  There may also be operational cost and performance
   advantages when traditional signaling links are replaced by IP
   network "connections".

   The delivery mechanism described in this document allows for full
   MTP3 message handling and network management capabilities between any
   two SS7 nodes communicating over an IP network.  An SS7 node equipped
   with an IP network connection is called an IP Signaling Point (IPSP).
   The IPSPs function as traditional SS7 nodes using the IP network
   instead of SS7 links.

   The delivery mechanism should:

      - Support seamless operation of MTP3 protocol peers over an IP
        network connection.

      - Support the MTP Level 2 / MTP Level 3 interface boundary.

      - Support management of SCTP transport associations and traffic
        instead of MTP2 Links.

      - Support asynchronous reporting of status changes to management.

1.2.  Terminology

   MTP  - The Message Transfer Part of the SS7 protocol [Q.700] [Q.701]
   [Q.702] [Q.703] [Q.704] [Q.705] [T1.111].

   MTP2 - MTP Level 2, the MTP signaling link layer.



George, et al.              Standards Track                     [Page 3]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   MTP3 - MTP Level 3, the MTP signaling network layer.

   MTP2-User - A protocol that normally uses the services of MTP Level
   2.  The only MTP2 user is MTP3.  The MTP2 user is equivalent to the
   M2PA user.

   Signaling End Point (SEP) - An SS7 Signaling Point that originates or
   terminates signaling messages.  One example is a central office
   switch.  [RFC2719]

   IP Signaling Point (IPSP) - An SS7 Signaling Point with an IP network
   connection used for SS7 over IP.

   Signaling Gateway (SG) - A signaling agent that receives/sends SCN
   native signaling at the edge of the IP network [RFC2719].  In this
   context, an SG is an SS7 Signaling Point that has both an IP network
   connection used for SS7 over IP, and a traditional (non-IP) link to
   an SS7 network.

   Signal Transfer Point (STP) - A Signal Transfer Point as defined by
   MTP standards, e.g., [Q.700].

   Signaling Point (STP) - A Signaling Point as defined by MTP
   standards, e.g., [Q.700].

   Association - An association refers to an SCTP association [RFC2960].
   The association provides the transport for MTP3 protocol data units
   and M2PA adaptation layer peer messages.

   Network Byte Order - Most significant byte first, also known as "Big
   Endian".  See [RFC791], Appendix B "Data Transmission Order".

   Stream - A stream refers to an SCTP stream [RFC2960].

1.3.  Abbreviations

   BSNT   - Backward Sequence Number to be Transmitted

   FSNC   - Forward Sequence Number of last message accepted by remote
            level 2

   LI     - Length Indicator

   MSU    - Message Signal Unit

   SCCP   - Signaling Connection Control Part

   SCN    - Switched Circuit Network



George, et al.              Standards Track                     [Page 4]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   SCTP   - Stream Control Transmission Protocol

   SIF    - Signaling Information Field

   SIO    - Service Information Octet

   SLC    - Signaling Link Code

   SS7    - Signaling System Number 7

   SSN    - Stream Sequence Number

   STP    - Signal Transfer Point

1.4.  Conventions

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

1.5.  Signaling Transport Architecture

   The architecture that has been defined [RFC2719] for Switched Circuit
   Network (SCN) signaling transport over IP uses multiple components,
   including an IP transport protocol, the Stream Control Transmission
   Protocol (SCTP), and an adaptation module to support the services
   expected by a particular SCN signaling protocol from its underlying
   protocol layer.

   Within this framework architecture, this document defines an SCN
   adaptation module that is suitable for the transport of SS7 MTP3
   messages.  The adaptation layer, known as the MTP2 User Peer-to-peer
   Adaptation Layer (M2PA), provides MTP3 with an interface and services
   similar to MTP2.  In effect, MTP2 and lower layers of the traditional
   SS7 protocol stack are replaced by an IP equivalent.

   Figure 1 shows the seamless interworking at the MTP3 layer.  MTP3 is
   adapted to the SCTP layer using the MTP2 User Peer-to-peer Adaptation
   Layer (M2PA).  All the primitives between MTP3 and MTP2 are supported
   by M2PA.  The SCTP association acts as one SS7 link between the
   IPSPs.  An IPSP may have the Signaling Connection Control Part (SCCP)
   and other SS7 layers above MTP3.









George, et al.              Standards Track                     [Page 5]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


               ********   IP   ********
               * IPSP *--------* IPSP *
               ********        ********

               +------+        +------+
               | TCAP |        | TCAP |
               +------+        +------+
               | SCCP |        | SCCP |
               +------+        +------+
               | MTP3 |        | MTP3 |
               +------+        +------+
               | M2PA |        | M2PA |
               +------+        +------+
               | SCTP |        | SCTP |
               +------+        +------+
               | IP   |        | IP   |
               +------+        +------+

        IP    - Internet Protocol
        IPSP  - IP Signaling Point
        SCTP  - Stream Control Transmission Protocol [RFC2960]

        Figure 1.  M2PA Symmetrical Peer-to-Peer Architecture

   Figure 2 shows an example of M2PA used in a Signaling Gateway (SG).
   The SG is an IPSP that is equipped with both traditional SS7 and IP
   network connections.

   The SEP and the SG communicate through a traditional SS7 link, which
   follows a protocol such as [Q.702].  The SG and the IPSP communicate
   through an IP link using the M2PA protocol.  Messages sent from the
   SEP to the IPSP (and vice versa) are routed by the SG.

   Any of the nodes in the diagram could have SCCP or other SS7 layers
   above MTP3.  The Signaling Gateway acts as a Signal Transfer Point
   (STP).  Other STPs MAY be present in the SS7 path between the SEP and
   the SG.














George, et al.              Standards Track                     [Page 6]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


       ********  SS7   ***************   IP   ********
       * SEP  *--------*     SG      *--------* IPSP *
       ********        ***************        ********

       +------+                               +------+
       | TCAP |                               | TCAP |
       +------+                               +------+
       | SCCP |                               | SCCP |
       +------+        +-------------+        +------+
       | MTP3 |        |    MTP3     |        | MTP3 |
       +------+        +------+------+        +------+
       | MTP2 |        | MTP2 | M2PA |        | M2PA |
       |      |        |      +------+        +------+
       |      |        |      | SCTP |        | SCTP |
       +------+        +------+------+        +------+
       | MTP1 |        | MTP1 | IP   |        | IP   |
       +------+        +------+------+        +------+

        SEP   - SS7 Signaling Endpoint

            Figure 2.  M2PA in IP Signaling Gateway

   Figure 2 is only an example.  Other configurations are possible.  In
   short, M2PA uses the SCTP association as an SS7 link.  The
   M2PA/SCTP/IP stack can be used in place of an MTP2/MTP1 stack.

1.5.1.  Point Code Representation

   MTP requires that each node with an MTP3 layer is identified by an
   SS7 point code.  In particular, each IPSP MUST have its own SS7 point
   code.

1.6.  Services Provided by M2PA

   The SS7 MTP3/MTP2 (MTP2-User) interface is retained in the IPSP.  The
   M2PA protocol layer is required to provide a set of services to its
   user equivalent to that provided by MTP Level 2 to MTP Level 3.

   These services are described in the following subsections.

1.6.1.  Support for MTP Level 2 / MTP Level 3 Interface Boundary

   This interface is the same as the MTP2/MTP3 interface described in
   the applicable SS7 standards [Q.703] [Q.704] [T1.111] [Q.2140], with
   the addition of support for the larger sequence numbers found in
   [T1.111] and [Q.2210].





George, et al.              Standards Track                     [Page 7]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   M2PA receives the primitives sent from MTP3 to its lower layer.  M2PA
   processes these primitives or maps them to appropriate primitives at
   the M2PA/SCTP interface.  Likewise, M2PA sends primitives to MTP3
   similar to those used in the MTP3/MTP2 interface.

   Because M2PA uses larger sequence numbers than MTP2, the MTP3
   Changeover procedure MUST use the Extended Changeover Order and
   Extended Changeover Acknowledgement messages described in [Q.2210]
   and [T1.111].

   Also, the following MTP3/MTP2 primitives must use the larger sequence
   numbers:

      - BSNT Confirmation

      - Retrieval Request and FSNC

1.6.2.  Support for Peer-to-Peer Communication

   In SS7, MTP Level 2 sends three types of messages, known as signal
   units: Message Signal Units (MSUs), Link Status Signal Units (LSSUs),
   and Fill-In Signal Units (FISUs).

   MSUs originate at a higher level than MTP2, and are destined for a
   peer at another node.  Likewise, M2PA passes these messages from MTP3
   to SCTP as data for transport across a link.  These are called User
   Data messages in M2PA.

   LSSUs allow peer MTP2 layers to exchange status information.
   Analogous messages are needed for M2PA.  The Link Status message
   serves this purpose.

   FISUs are transmitted continuously when no other signal units are
   waiting to be sent.  FISUs also carry acknowledgement of messages.
   Since an IP network is a shared resource, it would be undesirable to
   have a message type that is sent continuously as is the case with
   FISUs.  Furthermore, SCTP does not require its upper layer to
   continuously transmit messages.  Therefore, M2PA does not provide a
   protocol data unit like the FISU.  The M2PA User Data message is used
   to carry acknowledgement of messages.  If M2PA needs to acknowledge a
   message, and it has no MTP3 message of its own to send, an empty User
   Data message can be sent.









George, et al.              Standards Track                     [Page 8]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


1.7.  Functions Provided by M2PA

1.7.1.  MTP2 Functionality

   M2PA provides MTP2 functionality that is not provided by SCTP; thus,
   together M2PA and SCTP provide functionality similar to that of MTP2.

   SCTP provides reliable, sequenced delivery of messages.

   M2PA functionality includes:

      - Data retrieval to support the MTP3 changeover procedure

      - Reporting of link status changes to MTP3

      - Processor outage procedure

      - Link alignment procedure

1.7.2.  Mapping of SS7 and IP Entities

   The M2PA layer must maintain a map of each of its SS7 links to the
   corresponding SCTP association.

1.7.3.  SCTP Association Management

   SCTP allows a user-specified number of streams to be opened during
   the initialization.  It is the responsibility of the M2PA layer to
   ensure proper management of the streams allowed within each
   association.

   M2PA uses two streams in each direction for each association.  Stream
   0 in each direction is designated for Link Status messages.  Stream 1
   is designated for User Data messages, as well as Link Status messages
   that must remain in sequence with the User Data messages.  Separating
   the Link Status and User Data messages into separate streams allows
   M2PA to prioritize the messages in a manner similar to MTP2.

   Notifications received from SCTP are processed by M2PA or translated
   into an appropriate notification to be sent to the upper layer MTP3.

1.7.4.  Retention of MTP3 in the SS7 Network

   M2PA allows MTP3 to perform all of its Message Handling and Network
   Management functions with IPSPs as it does with other SS7 nodes.






George, et al.              Standards Track                     [Page 9]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


1.8.  Definition of the M2PA Boundaries

1.8.1.  Definition of the M2PA / MTP Level 3 Boundary

   The upper layer primitives provided by M2PA are the same as those
   provided by MTP2 to MTP3.  These primitives are described in the
   applicable SS7 standards [Q.703] [Q.704] [T1.111] [Q.2140].

1.8.2.  Definition of the Lower Layer Boundary between M2PA and SCTP

   The upper layer primitives provided by SCTP are described in
   [RFC2960] Section 10 "Interface with Upper Layer".

1.9.  Differences Between M2PA and M2UA

   The MTP2 User Adaptation Layer (M2UA) [M2UA] also adapts the MTP3
   layer to the SCTP/IP stack.  It does so through a backhauling
   architecture [RFC2719].  This section is intended to clarify some of
   the differences between the M2PA and M2UA approaches.

   A possible M2PA architecture is shown in Figure 3.  Here the IPSP's
   MTP3 uses its underlying M2PA as a replacement for MTP2.
   Communication between the two layers MTP3/M2PA is defined by the same
   primitives as in SS7 MTP3/MTP2.  M2PA performs functions similar to
   MTP2.

       ********  SS7   ***************   IP   ********
       * SEP  *--------*     SG      *--------* IPSP *
       ********        ***************        ********

       +------+        +-------------+        +------+
       | SCCP |        |    SCCP     |        | SCCP |
       +------+        +-------------+        +------+
       | MTP3 |        |    MTP3     |        | MTP3 |
       +------+        +------+------+        +------+
       | MTP2 |        | MTP2 | M2PA |        | M2PA |
       |      |        |      +------+        +------+
       |      |        |      | SCTP |        | SCTP |
       +------+        +------+------+        +------+
       | MTP1 |        | MTP1 | IP   |        | IP   |
       +------+        +------+------+        +------+

                  Figure 3.  M2PA in IP Signaling Gateway

   A comparable architecture for M2UA is shown in Figure 4.  In M2UA,
   the MGC's MTP3 uses the SG's MTP2 as its lower SS7 layer.  Likewise,
   the SG's MTP2 uses the MGC's MTP3 as its upper SS7 layer.  In SS7,




George, et al.              Standards Track                    [Page 10]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   communication between the MTP3 and MTP2 layers is defined by
   primitives.  In M2UA, the MTP3/MTP2 communication is defined as M2UA
   messages and sent over the IP connection.

       ********  SS7   ***************   IP   ********
       * SEP  *--------*     SG      *--------* MGC  *
       ********        ***************        ********

       +------+                               +------+
       | SCCP |                               | SCCP |
       +------+                               +------+
       | MTP3 |             (NIF)             | MTP3 |
       +------+        +------+------+        +------+
       | MTP2 |        | MTP2 | M2UA |        | M2UA |
       |      |        |      +------+        +------+
       |      |        |      | SCTP |        | SCTP |
       +------+        +------+------+        +------+
       | MTP1 |        | MTP1 | IP   |        | IP   |
       +------+        +------+------+        +------+

        NIF   - Nodal Interworking Function

                  Figure 4.  M2UA in IP Signaling Gateway

   M2PA and M2UA are similar in that:

      a. Both transport MTP3 data messages.

      b. Both present an MTP2 upper interface to MTP3.

   Differences between M2PA and M2UA include:

      a. M2PA: IPSP processes MTP3/MTP2 primitives.
         M2UA: MGC transports MTP3/MTP2 primitives between the SG's MTP2
               and the MGC's MTP3 (via the NIF) for processing.

      b. M2PA: SG-IPSP connection is an SS7 link.
         M2UA: SG-MGC connection is not an SS7 link.  It is an
               extension of MTP to a remote entity.

      c. M2PA: SG is an SS7 node with a point code.
         M2UA: SG is not an SS7 node and has no point code.

      d. M2PA: SG can have upper SS7 layers, e.g., SCCP.
         M2UA: SG does not have upper SS7 layers since it has no MTP3.

      e. M2PA: relies on MTP3 for management procedures.
         M2UA: uses M2UA management procedures.



George, et al.              Standards Track                    [Page 11]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   Potential users of M2PA and M2UA should be aware of these differences
   when deciding how to use them for SS7 signaling transport over IP
   networks.

2.  Protocol Elements

   This section describes the format of various messages used in this
   protocol.

   All fields in an M2PA message must be transmitted in the network byte
   order, i.e., most significant byte first, unless otherwise stated.

2.1.  Common Message Header

   The protocol messages for M2PA require a message header structure
   that contains a version, message class, message type, and message
   length.  The header structure is shown in Figure 5.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |    Version    |     Spare     | Message Class | Message Type  |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                        Message Length                         |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                     Figure 5.  Common Message Header

2.1.1.  Version

   The version field contains the version of M2PA.  The supported
   versions are:

            Value
          (decimal)  Version
          ---------  -------
              1      Release 1.0 of M2PA protocol

2.1.2.  Spare

   The Spare field SHOULD be set to all zeroes (0's) by the sender and
   ignored by the receiver.  The Spare field SHOULD NOT be used for
   proprietary information.








George, et al.              Standards Track                    [Page 12]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


2.1.3.  Message Class

   The following List contains the valid Message Classes:

            Value
          (decimal)  Message Class
          ---------  -------------
             11      M2PA Messages

   Other values are invalid for M2PA.

2.1.4.  Message Type

   The following list contains the message types for the defined
   messages.

            Value
          (decimal)  Message Type
          ---------  -------------
              1      User Data
              2      Link Status

   Other values are invalid.

2.1.5.  Message Length

   The Message Length defines the length of the message in octets,
   including the Common Header.

2.2.  M2PA Header

   All protocol messages for M2PA require an M2PA-specific header.  The
   header structure is shown in Figure 6.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |     unused    |                      BSN                      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |     unused    |                      FSN                      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                  Figure 6.  M2PA-specific Message Header

2.2.1.  Backward Sequence Number (BSN)

   This is the FSN of the message last received from the peer.




George, et al.              Standards Track                    [Page 13]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


2.2.2.  Forward Sequence Number (FSN)

   This is the M2PA sequence number of the User Data message being sent.

   The FSN and BSN values range from 0 to 16,777,215.

2.3.  M2PA Messages

   The following section defines the messages and parameter contents.
   An M2PA message consists of a Common Message Header and M2PA Header,
   followed by the data appropriate to the message.

   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   \                                                               \
   /                     Common Message Header                     /
   \                                                               \
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   \                                                               \
   /                  M2PA-specific Message Header                 /
   \                                                               \
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   \                                                               \
   /                         Message Data                          /
   \                                                               \
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The field "Message Data" contains either:

      - a User Data message (Section 2.3.1), or
      - a Link State message (Section 2.3.2)

2.3.1.  User Data

   The User Data is the data sent from MTP3.  The User Data is an
   optional field.  It need not be included in an acknowledgement-only
   message.

   The format of the User Data message is as follows:

    0                   1                   2                   3
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   \                                                               \
   /                            Data                               /
   \                                                               \
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+





George, et al.              Standards Track                    [Page 14]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   The Data field contains the following fields of the MTP Message
   Signal Unit (MSU):

      - the Message Priority field (PRI)
      - Service Information Octet (SIO)
      - Signaling Information Field (SIF)

   The MTP MSU is described in Q.703 [Q.703], Section 2.2, "Signal Unit
   Format", and T1.111.3 [T1.111], Section 2.2, "Signal Unit Format".
   The Japanese TTC standard uses the PRI field as an MTP3 Message
   Priority field [JT-Q703] [JT-Q704].  For versions of MTP that do not
   use these two bits, the entire first octet of the Data field is
   spare.

   The format of the first octet of the Data field is:

       0
       0 1 2 3 4 5 6 7
      +-+-+-+-+-+-+-+-+
      |PRI|   spare   | (followed by SIO, SIF)
      +-+-+-+-+-+-+-+-+

      PRI - Priority used only in national MTP defined in [JT-Q703] and
            [JT-Q704].  These bits are spare for other MTP versions.

   Note that the Data field SHALL NOT contain other components of the
   MTP MSU format:

      - Flag
      - Backward Sequence Number (BSN)
      - Backward Indicator Bit (BIB)
      - Forward Sequence Number (FSN)
      - Forward Indicator Bit (FIB)
      - Length Indicator (LI)
      - Check bits (CK)

   The Data field SHALL be transmitted in the byte order as defined by
   MTP3.

   M2PA SHALL NOT add padding to the MTP3 message.

   Note: In the SS7 Recommendations, the format of the messages and
   fields within the messages are based on bit transmission order.  In
   these recommendations, the Least Significant Bit (LSB) of each field
   is positioned to the right.  The received SS7 fields are populated
   octet by octet as received into the 4-octet word, as shown below.





George, et al.              Standards Track                    [Page 15]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   As an example, in the ANSI MTP protocol, the Data field format is
   shown below:

      |MSB---------------------------------------------------------LSB|
       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |PRI|   spare   |      SIO      |   SIF octet   |      ...      |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      \                                                               \
      /                               :                               /
      \                                                               \
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |      ...      |      ...      |      ...      |   SIF octet   |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   Within each octet, the Least Significant Bit (LSB) per the SS7
   Recommendations is to the right (e.g., bit 15 of SIO is the LSB).

2.3.2.  Link Status

   The MTP2 Link Status message can be sent between M2PA peers to
   indicate link status.  This message performs a function similar to
   the Link Status Signal Unit in MTP2.  The format of the Link Status
   message is as follows:

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                            State                              |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   The valid values for State are shown in the following table.

            Value
          (decimal)  Description
          ---------  -----------
              1      Alignment
              2      Proving Normal
              3      Proving Emergency
              4      Ready
              5      Processor Outage
              6      Processor Recovered
              7      Busy
              8      Busy Ended
              9      Out of Service (OOS)





George, et al.              Standards Track                    [Page 16]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


2.3.2.1.  Link Status Proving

   The Link Status Proving message may optionally carry additional
   bytes.  If the optional bytes are used, the format of the message is
   as follows.

       0                   1                   2                   3
       0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                            State                              |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      \                                                               \
      /                            filler                             /
      \                                                               \
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   It is RECOMMENDED that the length of the Link Status Proving message
   be similar to the size of the User Data messages that will be carried
   on the link.

   It is RECOMMENDED that the filler field contain a number pattern that
   varies among the Link Status Proving messages, and that allows the
   SCTP checksum [RFC3309] to be used to verify the accuracy of
   transmission.

3.  State Control

3.1.  SCTP Association State Control

   Figure 7 illustrates state changes in the M2PA management of the SCTP
   association, together with the causing events.  Note that some of the
   error conditions are not shown in the state diagram.

   Following is a list of the M2PA Association States and a description
   of each.

   IDLE - State of the association during power-up initialization.

   ASSOCIATING - M2PA is attempting to establish an SCTP association.

   ESTABLISHED - SCTP association is established.










George, et al.              Standards Track                    [Page 17]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


                         +-----------+
                         |   IDLE    |
                         +-----------+
                               |
                               | Associate
                               | (Issue SCTP associate)
                               |
                               |   +----------------------+
                               |   |         (Issue SCTP  |
                               V   V          associate)  |
                         +-------------+                  |
                         | ASSOCIATING |----------------->+
                         +-------------+  SCTP Comm Error |
                               |                          |
                               |                          |
                               | SCTP Comm Up             |
                               |                          |
                               V                          |
                         +-------------+                  |
                         | ESTABLISHED |----------------->+
                         +-------------+   SCTP Comm Error
                                        OR SCTP Comm Lost

           Figure 7.  M2PA Association State Transition Diagram

3.2.  M2PA Link State Control

   The M2PA link moves from one state to another in response to various
   events.  The events that may result in a change of state include:

      - MTP3 primitive requests

      - Receipt of messages from the peer M2PA

      - Expiration of timers

      - SCTP notifications

   These events affect the M2PA link state in a manner similar to MTP2.












George, et al.              Standards Track                    [Page 18]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


4.  Procedures

   Because M2PA provides MTP3 with an interface and functionality like
   MTP2, its internal functioning is similar to that of MTP2.

   Except as modified in this document, M2PA SHOULD follow the
   requirements of the applicable MTP2 specification.  These may include
   [Q.703] or [T1.111].  The same standard MUST be followed on both ends
   of the M2PA link.

   In particular, the corresponding applicable timer value defaults and
   ranges specified for the applicable MTP2 standard should be used for
   the M2PA timers.

   When referring to MTP2 terminology in this document, the terminology
   of [Q.703] is used.  This does not imply that the requirements of
   [Q.703] are to be followed.

4.1.  Procedures to Support MTP2 Features

4.1.1.  Signal Unit Format, Delimitation, Acceptance

   Messages for transmission across the network must follow the format
   described in Section 2.

   SCTP provides reliable, in-sequence delivery of user messages.
   Therefore the related functionality of MTP2 is not needed.  SCTP does
   not provide functions related to Link State Control in MTP2.  These
   functions must be provided by M2PA.

   Since SCTP provides delivery of messages, there is no need for M2PA
   to delimit its messages with a flag, as is done in MTP2.
   Furthermore, M2PA does not need to perform zero bit insertion and
   deletion on its messages.

   Since SCTP uses a checksum to detect transmission errors, there is no
   need for an M2PA checksum, as is needed in MTP2.  This also
   eliminates the need for the error rate monitors of MTP2.

   Since SCTP provides reliable delivery and ordered delivery, M2PA does
   not perform retransmissions.  This eliminates the need for the
   forward and backward indicator bits in MTP2 signal units.

   Acceptance of a message is indicated by a successful receipt of the
   message from SCTP.






George, et al.              Standards Track                    [Page 19]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


4.1.2.  MTP and SCTP Entities

   This section describes how M2PA relates MTP and SCTP entities.

   Each MTP link corresponds to an SCTP association.  To prevent
   duplicate associations from being established, it is RECOMMENDED that
   each endpoint know the IP address (or IP addresses, if multi-homing
   is used) and port number of both endpoints.  SCTP prevents two
   associations with the same IP addresses and port numbers from being
   established.

   It is necessary for at least one of the endpoints to be listening on
   the port on which the other endpoint is trying to establish the
   association.  Therefore, at least one of the port numbers SHOULD be
   the M2PA registered port.

   If only one association is to be established between these two IP
   addresses, then the association SHOULD be established using the M2PA
   registered port at each endpoint.

   If it is desirable to create multiple associations (for multiple
   links) between the two IP addresses, different port numbers can be
   used for each association.  Nevertheless, the M2PA registered port
   number SHOULD be used at one end of each association.

   Each combination of IP address/port for the two endpoints (i.e., each
   association) MUST be mapped to the same Signaling Link Code (SLC) at
   each endpoint, so that each endpoint knows which link is being
   created at the time the SCTP association is established.  However,
   M2PA does not do any processing based on the SLC.

   Following are examples of the relationships between associations and
   links.  Note that a link is an SCTP association identified by two
   endpoints.  Each endpoint is identified by an IP address and port
   number.  Each association is mapped to an SLC.

   Figure 8 shows a case with two IPSPs, each with two IP addresses.
   Two associations are the links that connect the two IPSPs.  Since
   these links are in the same link set, they MUST have different SLCs.

   Table 1 shows the relationships in tabular form.  Table 1 is only
   conceptual.  The actual method for mapping the SCTP associations to
   the SLCs is implementation dependent.








George, et al.              Standards Track                    [Page 20]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


                   IPSP X                        IPSP Y

               +-------------+               +-------------+
               |             |     SCTP      |             |
               |         IPA | association 1 | IPB         |
               |   port = PW +---------------+ port = PW   |
               |     SLC = a |               | SLC = a     |
               |             |               |             |
               |             |               |             |
               |             |     SCTP      |             |
               |         IPC | association 2 | IPD         |
               |   port = PW +---------------+ port = PW   |
               |     SLC = b |               | SLC = b     |
               |             |               |             |
               |             |               |             |
               +-------------+               +-------------+

            IPx = IP address
            PW  = Registered port number for M2PA

               Figure 8.  Two IPSPs with Two IP Addresses Each


        +-------------+---------------------------------------+-----+
        | Association |      IPSP X       |      IPSP Y       | SLC |
        |             +------------+------+------------+------+     |
        |             | IP address | Port | IP address | Port |     |
        +=============+============+======+============+======+=====+
        |      1      |    IPA     |  PW  |    IPB     |  PW  |  a  |
        +-------------+------------+------+------------+------+-----+
        |      2      |    IPC     |  PW  |    IPD     |  PW  |  b  |
        +-------------+------------+------+------------+------+-----+

              Table 1.  Two IPSPs with Two IP Addresses Each

   Figure 9 and Table 2 show an example with three IPSPs.  Note that in
   this example, the two links are in different link sets.  Therefore,
   it is possible that the SLC values a and b MAY be equal.













George, et al.              Standards Track                    [Page 21]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


                   IPSP X                        IPSP Y

               +-------------+               +-------------+
               |             |     SCTP      |             |
               |         IPA | association 1 | IPB         |
               |   port = PW +---------------+ port = PW   |
               |     SLC = a |               | SLC = a     |
               |             |               |             |
               |             |               |             |
               |             |     SCTP      |             |
               |         IPC | association 2 |             |
               |   port = PW +-------+       |             |
               |     SLC = b |       |       |             |
               |             |       |       |             |
               |             |       |       |             |
               +-------------+       |       +-------------+
                                     |
                                     |
                                     |           IPSP Z
                                     |
                                     |       +-------------+
                                     |       |             |
                                     |       | IPD         |
                                     +-------+ port = PW   |
                                             | SLC = b     |
                                             |             |
                                             |             |
                                             |             |
                                             |             |
                                             |             |
                                             |             |
                                             |             |
                                             |             |
                                             +-------------+

            IPx = IP address
            PW  = Registered port number for M2PA

                 Figure 9.  One IPSP Connected to Two IPSPs












George, et al.              Standards Track                    [Page 22]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


        +-------------+---------------------------------------+-----+
        | Association |      IPSP X       |     IPSP Y/Z      | SLC |
        |             +------------+------+------------+------+     |
        |             | IP address | Port | IP address | Port |     |
        +=============+============+======+============+======+=====+
        |      1      |    IPA     |  PW  |    IPB     |  PW  |  a  |
        +-------------+------------+------+------------+------+-----+
        |      2      |    IPC     |  PW  |    IPD     |  PW  |  b  |
        +-------------+------------+------+------------+------+-----+

                 Table 2.  One IPSP Connected to Two IPSPs

   Figure 10 and Table 3 show two associations between the same IP
   addresses.  This is accomplished by using different port numbers for
   each association at one endpoint.

                   IPSP X                        IPSP Y

               +-------------+               +-------------+
               |             |     SCTP      |             |
               |         IPA | association 1 | IPB         |
               |   port = P1 +---------------+ port = PW   |
               |     SLC = a |               | SLC = a     |
               |             |               |             |
               |             |               |             |
               |             |     SCTP      |             |
               |         IPA | association 2 | IPB         |
               |   port = PW +---------------+ port = PW   |
               |     SLC = b |               | SLC = b     |
               |             |               |             |
               |             |               |             |
               +-------------+               +-------------+

            IPx = IP address
            P1  = Pre-selected port number
            PW  = Registered port number for M2PA

             Figure 10.  Multiple Associations Between Two IP Addresses













George, et al.              Standards Track                    [Page 23]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


        +-------------+---------------------------------------+-----+
        | Association |      IPSP X       |      IPSP Y       | SLC |
        |             +------------+------+------------+------+     |
        |             | IP address | Port | IP address | Port |     |
        +=============+============+======+============+======+=====+
        |      1      |    IPA     |  P1  |    IPB     |  PW  |  a  |
        +-------------+------------+------+------------+------+-----+
        |      2      |    IPA     |  PW  |    IPB     |  PW  |  b  |
        +-------------+------------+------+------------+------+-----+

           Table 3.  Multiple Associations Between Two IP Addresses

   The association SHALL contain two streams in each direction.  Stream
   0 is designated for Link Status messages.  Stream 1 is designated for
   User Data messages, as well as Link Status messages that must remain
   in sequence with the User Data messages.

   The following Link Status messages SHALL be sent on the Link Status
   stream (stream 0):

      - Alignment
      - Proving Normal
      - Proving Emergency
      - Ready (when sent during alignment)
      - Busy
      - Busy Ended
      - Out of Service

   The following Link Status messages SHALL be sent on the User Data
   stream (stream 1):

      - Processor Outage
      - Processor Recovered
      - Ready (when sent at the end of processor outage)

4.1.3.  Link Alignment

   The purposes of the alignment procedure are:

      (1) To provide a handshaking procedure so that both endpoints are
          prepared to send SS7 traffic, and to prevent traffic from
          being sent before the other end is ready.

      (2) To verify that the SCTP association is suitable for use as an
          SS7 link.






George, et al.              Standards Track                    [Page 24]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   Link alignment takes place after the association is established.  If
   SCTP fails to establish the association, and M2PA has received a
   Start Request from its MTP3, then M2PA SHALL report to MTP3 that the
   link is out of service.

   The Link Status Out of Service message replaces the SIOS message of
   MTP2.  Unlike MTP2, the message SHOULD NOT be transmitted
   continuously.  After the association is established, M2PA SHALL send
   a Link Status Out of Service message to its peer.  Prior to the
   beginning of alignment, M2PA MAY send additional Link Status Out of
   Service messages.

   The Link Status Alignment message replaces the SIO message of MTP2.
   This message is sent to signal the beginning of the alignment
   procedure.  The Link Status Alignment message SHOULD NOT be
   transmitted continuously.  M2PA MAY send additional Link Status
   Alignment until it receives Link Status Alignment, Link Status
   Proving Normal, or Link Status Proving Emergency from the peer.

   The Link Status Proving Normal message replaces the SIN message of
   MTP2.  The Link Status Proving Emergency message replaces the SIE
   message of MTP2.

   The proving period MAY be omitted if this is allowed by the
   applicable MTP2 standard (e.g., [Q.2140]).

   If proving is performed, then during the proving period (i.e., after
   M2PA starts the proving period timer T4), M2PA SHALL send Link Status
   Proving messages to its peer at an interval defined by the protocol
   parameter Proving_Interval.  It is RECOMMENDED that Proving_Interval
   be set so that the traffic load generated with the Link Status
   Proving messages during the proving period is comparable to the
   normal traffic load expected when the link is in service.

   The Link Status Ready message replaces the FISU of MTP2 that is sent
   at the end of the proving period.  The Link Status Ready message is
   used to verify that both ends have completed proving.  When M2PA
   starts timer T1, it SHALL send a Link Status Ready message to its
   peer in the case where MTP2 would send a FISU after proving is
   complete.  If the Link Status Ready message is sent, then M2PA MAY
   send additional Link Status Ready messages while timer T1 is running.
   These Link Status Ready messages are sent on the Link Status stream.

   In the case that MTP2 sends an MSU or SIPO message at the end of
   proving, M2PA SHALL send (respectively) a User Data or Link Status
   Processor Outage message.





George, et al.              Standards Track                    [Page 25]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


4.1.4.  Processor Outage

   The Link Status Processor Outage message replaces the SIPO message of
   MTP2.  Unlike MTP2, the message SHOULD NOT be transmitted
   continuously.  M2PA SHALL send a Link Status Processor Outage message
   to its peer at the beginning of a processor outage condition where
   MTP2 would send SIPO.  M2PA MAY send additional Link Status Processor
   Outage messages as long as that condition persists.  The Link Status
   Processor Outage message SHALL be sent on the User Data stream.

   While in a local processor outage (LPO) condition:

      (a) Any User Data messages received from the peer MUST NOT be
          acknowledged and MUST be buffered.

      (b) M2PA SHOULD continue to acknowledge User Data messages
          received and accepted by MTP3 before the local processor
          outage.

      (c) M2PA SHOULD continue to transmit messages that have been sent
          by its upper layer MTP3.

   While there is a remote processor outage (RPO) condition:

      (a) M2PA SHOULD continue to acknowledge User Data messages
          received and accepted by MTP3, regardless of the remote
          processor outage.

      (b) If any User Data messages received from the peer after the
          Link Status Processor Outage cannot be delivered to MTP3, then
          these messages MUST NOT be acknowledged and MUST be buffered.

   If M2PA receives a Flush command from MTP3,

      (a) M2PA SHALL discard any incoming messages that were queued and
          unacknowledged during the processor outage condition.

      (b) M2PA SHALL discard messages in the transmit and retransmit
          queues as required by MTP2.

   If M2PA receives a Continue command from MTP3, M2PA SHALL begin
   processing the incoming messages that were queued and unacknowledged
   during the processor outage condition.

   When the local processor outage condition ends, M2PA SHALL send a
   Link Status Processor Recovered message to its peer on the User Data
   stream.  This message is used to signal the end of the processor
   outage condition, instead of an MSU or FISU, as is used in MTP2.  The



George, et al.              Standards Track                    [Page 26]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   BSN in the Link Status Processor Recovered message is set to the FSN
   of the last User Data message received (and not discarded) from the
   peer M2PA.  M2PA SHALL cease transmitting User Data messages after
   sending the Link Status Processor Recovered message, until it has
   received the Link Status Ready message (see below).

   Upon receiving the Link Status Processor Recovered message, the M2PA
   in RPO SHALL respond with a Link Status Ready message on the User
   Data stream.  The BSN in the Link Status Ready message is set to the
   FSN of the last User Data message received (and not discarded) from
   the peer M2PA.

   Upon receiving the Link Status Ready message, the M2PA formerly in
   LPO SHALL respond with a Link Status Ready message on the User Data
   stream.  The BSN in the Link Status Ready message is set to the FSN
   of the last User Data message received (and not discarded) from the
   peer M2PA.

   M2PA (at both the LPO and RPO ends) uses the BSN value in the
   received Link Status Ready message to resynchronize its sequence
   numbers, if this is required by MTP2.  M2PA SHALL NOT resume
   transmitting User Data messages until it has sent the Link Status
   Ready message.

   During resynchronization, M2PA SHALL NOT discard any received User
   Data messages that were sent after the processor outage ended.

   When M2PA experiences a local processor outage, it MAY put the link
   out of service by sending a Link Status Out of Service message, if
   this is allowed by the applicable MTP2 standard (e.g., [Q.2140]).

   In other respects, M2PA SHOULD follow the same procedures as MTP2 in
   processor outage.

4.1.5.  Level 2 Flow Control

   The Link Status Busy message replaces the SIB message of MTP2.  The
   message SHOULD NOT be transmitted continuously.  M2PA SHALL send a
   Link Status Busy message to its peer at the beginning of a receive
   congestion condition where MTP2 would send SIB.  M2PA MAY send
   additional Link Status Busy messages as long as that condition
   persists.  When the condition ends, M2PA SHALL send a Link Status
   Busy Ended message to its peer.

   M2PA SHALL continue transmitting messages while it is in receive
   congestion, but MUST NOT acknowledge the message that triggered the
   sending of the Link Status Busy message, nor any messages received
   before the sending of Link Status Busy Ended.



George, et al.              Standards Track                    [Page 27]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   When the peer M2PA receives the first Link Status Busy message, it
   SHALL start the Remote Congestion timer T6 if there are messages in
   the retransmission buffer awaiting acknowledgement (i.e., T7 is
   running).  M2PA SHALL stop the T7 timer if it is running.  Additional
   Link Status Busy messages received while T6 is running do not cause
   T6 to be reset and do not cause T7 to be started.  While T6 is
   running, T7 SHALL NOT be started.

   When the peer M2PA receives the Link Status Busy Ended message and T6
   has not expired, it SHALL stop T6 (if T6 is running) and start T7 (if
   there are messages awaiting acknowledgement in the retransmission
   buffer).

   The peer M2PA SHOULD continue receiving and acknowledging messages
   while the other end is busy, but MUST NOT send User Data messages
   after receiving Link Status Busy and before receiving Link Status
   Busy Ended.

4.1.6.  Link Out of Service

   The Link Status Out of Service message replaces the SIOS message of
   MTP2.  Unlike MTP2, the message SHOULD NOT be transmitted
   continuously.  M2PA SHALL send a Link Status Out of Service message
   to its peer at the beginning of a condition where MTP2 would send
   SIOS.  M2PA MAY send additional Link Status Out of Service messages
   as long as that condition persists.

   When M2PA places a link in the OUT OF SERVICE state, M2PA SHOULD NOT
   terminate the SCTP association.

4.1.7.  SCTP Association Problems

   The SCTP association for a link may become unusable, such as when one
   of the following occurs:

      - SCTP sends a Send Failure notification to M2PA.

      - SCTP sends a Communication Lost notification to M2PA.

      - SCTP sends a Communication Error notification to M2PA.

      - The SCTP association is lost.

   If the SCTP association for a link becomes unable to transmit or
   receive messages, M2PA SHALL report to MTP3 that the link is out of
   service and enter the OUT OF SERVICE state.





George, et al.              Standards Track                    [Page 28]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


4.1.8.  Transmission and Reception Priorities

   In MTP, Link Status messages have priority over User Data messages
   ([Q.703], Section 11.2).  To achieve this in M2PA, M2PA uses separate
   streams in its SCTP association for Link Status messages and User
   Data messages.

   M2PA SHALL send all messages using the ordered delivery option of
   SCTP.

   M2PA SHOULD give higher priority to messages sent on the Link Status
   stream than to messages sent on the User Data stream when sending
   messages to SCTP.

   M2PA SHOULD give higher priority to reading the Link Status stream
   than to reading the User Data stream.

   M2PA SHOULD give higher priority to receiving notifications from SCTP
   than to reading either the Link Status stream or the User Data
   stream.

4.1.9.  M2PA Version Control

   A node upgraded to a newer version of M2PA SHOULD support the older
   versions used on other nodes with which it is communicating.  If that
   is the case, then alignment can proceed normally.

   In particular, it is recommended that for future modifications to
   this protocol:

      - Any newer version SHOULD be able to process the messages from an
        older version.

      - A newer version of M2PA SHOULD refrain from sending messages to
        an older version of M2PA messages that the older version cannot
        process.

      - If an older version of M2PA receives a message that it cannot
        process, it SHOULD discard the message.

      - In cases where different processing is done in two versions for
        the same format of a message, then the newer version SHOULD
        contain procedures to recognize and handle this appropriately.

   In case a newer version of M2PA is incompatible with an older
   version, the newer version SHOULD recognize this and prevent the
   alignment of the link.  If a Link Status Alignment message with an




George, et al.              Standards Track                    [Page 29]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   unsupported version is received by the newer version, the receiving
   end's M2PA SHOULD reply with a Link Status Out of Service message and
   not complete the alignment procedure.

4.2.  Procedures to Support the MTP3/MTP2 Interface

4.2.1.  Sending and Receiving Messages

   When MTP3 sends a message for transmission to M2PA, M2PA passes the
   corresponding M2PA message to SCTP using the SEND primitive.

   User Data messages SHALL be sent via the User Data stream (stream 1)
   of the association.

   M2PA Link Status messages are passed to SCTP using the SEND
   primitive.

   The following Link Status messages SHALL be sent on the Link Status
   stream (stream 0):

      - Alignment
      - Proving Normal
      - Proving Emergency
      - Ready (when sent during alignment)
      - Busy
      - Busy Ended
      - Out of Service

   The following Link Status messages SHALL be sent on the User Data
   stream (stream 1):

      - Processor Outage
      - Processor Recovered
      - Ready (when sent at the end of processor outage)

   If M2PA receives a message from SCTP with an invalid Message Class or
   unsupported Message Type in the Common Message Header, M2PA SHALL
   discard the message.

   For message types other than User Data, the Forward Sequence Number
   is set to the FSN of the last User Data message sent.

   If M2PA receives a User Data message with an FSN that is out of
   order, M2PA SHALL discard the message.

   Note: In all calculations involving FSN and BSN, the programmer
   should be aware that the value wraps around to 0 after reaching its
   maximum value.



George, et al.              Standards Track                    [Page 30]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   When there is a message to acknowledge, M2PA MUST acknowledge the
   message with the next User Data message sent.  If there is no User
   Data message available to be sent when there is a message to
   acknowledge, M2PA SHOULD generate and send a User Data message with
   no data payload, without delay.  (In other words, in the case where
   MTP2 would acknowledge a message with a FISU, M2PA SHOULD acknowledge
   the message with an empty User Data message.)  The FSN for this empty
   User Data message is not incremented.  It MUST contain the same FSN
   as the most recently sent User Data message that contains data.
   Delaying of acknowledgements can result in poor SS7 performance.

   If M2PA receives an empty User Data message, it SHALL NOT send an
   acknowledgement of that message.

   Note that there is no reason to place Link Status messages or empty
   User Data messages in the M2PA retransmit buffer, since these
   messages are not retrieved for changeover and timer T7 does not apply
   to them.

   Note that since SCTP provides reliable delivery and ordered delivery
   within the stream, M2PA does not perform retransmissions.
   Nevertheless, M2PA SHALL retain transmitted User Data messages in a
   retransmit queue until they are acknowledged.  These messages are
   needed in case MTP3 performs data retrieval as part of a changeover
   procedure.

   Because propagation delays in IP networks are more variable than in
   traditional SS7 networks, a single T7 timer (excessive delay of
   acknowledgement), as in MTP2, is inadequate.  If any message is
   unacknowledged after a period equal to the T7 value, the T7 timer
   SHALL expire.

4.2.2.  MTP3 Signaling Link Congestion

   M2PA SHALL detect transmit congestion in its buffers according to the
   requirements for signaling link transmit congestion in MTP3, e.g.,
   Q.704 [Q.704], Section 3.8.

4.2.3.  Changeover

   The objective of the changeover is to ensure that signaling traffic
   carried by the unavailable signaling link is diverted to the
   alternative signaling link(s) as quickly as possible while avoiding
   message loss, duplication, or mis-sequencing.  For this purpose, the
   changeover procedure includes data retrieval, which is performed
   before opening the alternative signaling links to the diverted
   traffic.  Data retrieval consists of these steps:




George, et al.              Standards Track                    [Page 31]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


      (1) buffer updating, i.e., identifying all those User Data
          messages in the retransmission buffer of the unavailable
          signaling link which have not been received by the far end
          M2PA, as well as untransmitted messages, and

      (2) transferring those messages to the transmission buffers of the
          alternate links.

   Note that only User Data messages containing data are retrieved and
   transmitted over the alternate links.  Link Status messages and empty
   User Data messages SHALL NOT be retrieved and transmitted over the
   alternate links.

   M2PA's Sequence Numbers are 24 bits long.  MTP2's Forward and
   Backward Sequence Numbers are only seven bits long.  Hence, it is
   necessary for MTP3 to accommodate the larger sequence numbers.  This
   is done through the use of the Extended Changeover Order (XCO) and
   Extended Changeover Acknowledgement (XCA) messages instead of the
   Changeover Order (COO) and Changeover Acknowledgement (COA) messages.
   The XCO and XCA messages are specified in [Q.2210] Section 9.8.1 and
   T1.111.4 [T1.111], Section 15.4.  Only the XCO and XCA messages from
   [Q.2210] or [T1.111] are required.  The BSN is placed in the XCO/XCA
   message as explained in [Q.2210] and [T1.111].

   Also, the following MTP3/MTP2 primitives MUST use the larger sequence
   numbers:

      - BSNT Confirmation

      - Retrieval Request and FSNC

   If M2PA receives a Retrieval Request and FSNC request from MTP3, M2PA
   SHALL retrieve from its buffers and deliver to MTP3 in order:

      (a) any transmitted User Data messages beginning with the first
          unacknowledged message with FSN greater than FSNC.

      (b) any untransmitted User Data messages.

   For emergency changeover, MTP3 retrieves only the unsent messages for
   transmission on the alternate link(s).  If M2PA receives a Retrieval
   Request and FSNC request with no FSNC value, or with an invalid FSNC,
   then M2PA SHALL retrieve from its buffers and deliver to MTP3 in
   order:

      (a) any untransmitted User Data messages.





George, et al.              Standards Track                    [Page 32]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   The Japanese TTC version of MTP defined in [JT-Q703] and [JT-Q704]
   has a Retrieval Request (as well as Retrieval Request and FSNC).  The
   Retrieval allows MTP3 to retrieve both unsent and unacknowledged
   messages for transmission on the alternate link(s).  In this version
   of MTP, if M2PA receives a Retrieval Request, then M2PA SHALL
   retrieve from its buffers and deliver to MTP3 in order:

      (a) any transmitted but unacknowledged User Data messages.

      (b) any untransmitted User Data messages.

4.2.3.1.  Multiple User Data Streams and Changeover

   The changeover procedure makes it problematic for M2PA to have
   multiple User Data streams in one direction for a link.  Buffer
   updating would have to be done separately for each User Data stream
   to avoid duplication or loss of messages.  But MTP3 provides for only
   one XCO/XCA message for sending the last-received sequence number.

   Even with sequence numbering of User Data messages at the M2PA layer,
   it is necessary to perform buffer updating on each stream.  Since the
   M2PA messages would be delivered over multiple streams, there could
   be a gap in the M2PA sequence numbers at the receiving end when the
   changeover procedure begins.  If only the M2PA sequence number is
   used in the XCO/XCA message, there would be a possibility of losing
   the messages in the gap, or duplicating messages after the gap.

   M2PA links with multiple User Data streams would be possible if a
   multiple-BSNT XCO/XCA message is defined in MTP3, or if MTP3 allows
   multiple XCO/XCA messages (one for each User Data stream) to be sent
   during a changeover.  This is beyond the scope of this document.

4.3.  SCTP Considerations

   Some M2PA procedures may be affected by the use of SCTP as a
   transport layer.  These considerations are discussed in this section.

4.3.1.  SCTP Slow Start

   SCTP contains a slow start algorithm to control the amount of data
   being injected into the network.  The algorithm allows SCTP to probe
   the network to determine the available capacity.  The algorithm is
   invoked in these cases: when transmission begins on an association,
   after a sufficiently long idle period, or after repairing loss
   detected by the SCTP retransmission timer.






George, et al.              Standards Track                    [Page 33]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   It is possible that transmission of M2PA messages MAY be delayed by
   SCTP slow start under certain conditions, including the following:

      (a) Link Alignment.  Link alignment takes place after an
          association is established.  SCTP invokes the slow start
          algorithm since transmission is beginning on the association.

      (b) Changeover.  Messages are retrieved from one link
          (association) and transferred to another for transmission.  If
          the second link had previously been idle, or is in the process
          of link alignment, SCTP may invoke the slow start algorithm.

      (c) Path failure (multi-homing).  If SCTP switches from a failed
          path to a new path, and the new path had previously been idle,
          SCTP may invoke the slow start algorithm.

      (d) Reduced traffic volume.  Any time that M2PA sends a low volume
          of traffic on a link and then the volume increases, SCTP may
          invoke the slow start algorithm.

   Programmers should be aware of this condition and how it may affect
   M2PA performance.  In some cases, it may be possible to avoid the
   negative effects of slow start.  For example, the Link Status Proving
   messages sent during the proving period may be used to complete slow
   start before the link is placed in service.

5.  Examples of M2PA Procedures

   In general, messages passed between MTP3 and M2PA are the same as
   those passed between MTP3 and MTP2.  M2PA interprets messages from
   MTP3 and sends the appropriate message to SCTP.  Likewise, messages
   from SCTP are used to generate a meaningful message to MTP3.

   Note that throughout this section, the primitives between MTP3 and
   M2PA are named using the MTP terminology [Q.700] [Q.701] [Q.702]
   [Q.703] [Q.704] [Q.705].  Communications between M2PA and SCTP are
   named using SCTP terminology.

5.1.  Link Initialization (Alignment)

   An example of the message flow used to bring an SS7 link in service
   is shown in Figures 11 and 12.  Alignment is done by both ends of the
   link.  To simplify the diagram, alignment is shown on one end only.
   Some messages from the remote end are not shown.  It is assumed in
   this example that SCTP has been initialized.






George, et al.              Standards Track                    [Page 34]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        .           Associate   .           .           .           .
        .           ------------>           .           .           .
        .           .           .           .           .           .
        .           .           (SCTP Association       .           .
        .           .            procedure)             .           .
        .           .           .           .           .           .
        .           Communication Up        Communication Up        .
        .           <------------           ------------>           .
        .           .           .           .           .           .
        .           Link Status Out of Service          .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        Emergency OR            .           .           .           .
        Emergency Ceases        .           .           .           .
        ------------>           .           .           .           .
        .           .           .           .           .           .
        Start       .           .           .           .           .
        ------------>           .           .           .           .
        .           .           .           .           .           .
        .           .           .           .           .           .
        .           Link Status Alignment   .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        .           Start timer T2          .           .           .
        .           .           .           .           .           .
        .           .           .   Link Status Alignment           .
        .           <------------------------------------           .
        .           .           .           .           .           .
        .           Stop timer T2           .           .           .
        .           .           .           .           .           .

        Proving period begins.

           Figure 11.  Example: Link Initialization - Alignment














George, et al.              Standards Track                    [Page 35]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        .           Start timer T3          .           .           .
        .           Link Status Proving     .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        .           .           .     Link Status Proving           .
        .           <------------------------------------           .
        .           .           .           .           .           .
        .           Stop timer T3           .           .           .
        .           .           .           .           .           .
        .           Start timer T4          .           .           .
        .           Link Status Proving     .           .           .
        .           ------------------------------------>           .
        .           ------------------------------------>           .
        .           ------------------------------------>           .
        .           ------------------------------------>           .
        .           ------------------------------------>           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        .           Timer T4 expires        .           .           .
        .           .           .           .           .           .

        Send Link Status Ready (one or more) and wait for the remote end
        to complete its proving period.

        .           .           .           .           .           .
        .           Start timer T1          .           .           .
        .           .           .           .           .           .
        .           Link Status Ready       .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        .           .           .           .           .           .
        .           .           .       Link Status Ready           .
        .           <------------------------------------           .
        .           .           .           .           .           .
        .           Stop timer T1           .           .           .
        .           .           .           .           .           .
        In Service              .           .           In Service
        <------------           .           .           ------------>
        .           .           .           .           .           .

        MTP3 MAY begin sending data messages.

            Figure 12.  Example: Link Initialization - Proving





George, et al.              Standards Track                    [Page 36]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


5.2.  Message Transmission and Reception

   Messages are transmitted using the Data Request primitive from MTP3
   to M2PA.  Figure 13 shows the case where the Link is In Service.  The
   message is passed from MTP3 of the source to MTP3 of the destination.

       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        Message for             .           .           .           .
        transmission            .           .           .           .
        ------------>           .           .           .           .
        .           .           .           .           .           .
        .           Send        .           .           .           .
        .           (Data Message)          .           .           .
        .           ------------>           .           .           .
        .           .           .           .           .           .
        .           .           (SCTP sends message)    .           .
        .           .           .           .           .           .
        .           .           .           Receive                 .
        .           .           .           ------------>           .
        .           .           .           .           .           .
        .           .           .           .        Received message
        .           .           .           .           ------------>
        .           .           .           .           .           .

            Figure 13.  Example: Link Initialization - In Service

5.3.  Link Status Indication

   An example of a Link Status Indication is shown in Figure 14.  If
   SCTP sends a Communication Lost primitive to M2PA, M2PA notifies MTP3
   that the link is out of service.  MTP3 responds in its usual way.

       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        .           Communication Lost      .           .           .
        .           <------------           .           .           .
        .           .           .           .           .           .
        Out of Service          .           .           .           .
        <------------           .           .           .           .
        .           .           .           .           .           .

                Figure 14.  Example: Link Status Indication






George, et al.              Standards Track                    [Page 37]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


5.4.  Link Status Message (Processor Outage)

   Figure 15 shows how M2PA responds to a local processor outage.  M2PA
   sends a Link Status message to its peer.  The peer M2PA notifies MTP3
   of the outage.  MTP3 can then follow the processor outage procedures
   as in [Q.703].

       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        .       M2PA detects    .           .           .           .
        .       Local Processor .           .           .           .
        .       Outage          .           .           .           .
        .           .           .           .           .           .
        .           Link Status .           .           .           .
        .           Processor Outage        .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        .           .           .           .        Remote Processor
        .           .           .           .        Outage         .
        .           .           .           .           ------------>
        .           .           .           .           .           .
        .           Link Status             .           .           .
        .           Processor               .           .           .
        .           Recovered               .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        .           .           .           .        Remote Processor
        .           .           .           .        Outage Ceases
        .           .           .           .           ------------>
        .           .           .           .           .           .
        .           .           .       Link Status Ready           .
        .           <------------------------------------           .
        .           .           .           .           .           .
        .           Link Status Ready       .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        Message for             .           .           .           .
        transmission            .           .           .           .
        ------------>           .           .           .           .
        .           .           .           .           .           .
        .           User Data               .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .

        Figure 15.  Example: Link Status Message - Processor Outage





George, et al.              Standards Track                    [Page 38]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   Figure 16 shows an example of processor outage in more detail.  All
   M2PA messages in this example are sent on the Data stream (stream 1).

                    A                                   B
       ----------------------------        ----------------------------

       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        6 Messages for          .           .           .           .
        transmission            .           .           .           .
        ------------>           .           .          6 Messages for
        .           .           .           .            transmission
        .           .           .           .           <------------
        .           User Data FSN=1         .           .           .
        .           ------------------------------------>           .
        .           User Data FSN=2         .           .           .
        .           ------------------------------------>           .
        .           User Data FSN=3         .           .           .
        .           ------------------------------------>           .
        .           .           .        User Data FSN=11           .
        .           <------------------------------------           .
        .           .           .        User Data FSN=12           .
        .           <------------------------------------           .
        .           .           .        User Data FSN=13           .
        .           <------------------------------------           .

   Side A detects LPO.

        .           .           .           .           .           .
        .           .           .  User Data FSN=14 BSN=3           .
        .           <------------------------------------           .
        .           .           .  User Data FSN=15 BSN=3           .
        .           <------------------------------------           .
        .           .           .  User Data FSN=16 BSN=3           .
        .           <------------------------------------           .
        .           LS PO FSN=3 BSN=11      .           .           .
        .           ------------------------------------>           .
        .           .           .           .        Remote Processor
        .           .           .           .        Outage         .
        .           .           .           .           ------------>

   While in LPO, A must buffer messages 14-16 without acknowledging
   them.  A may continue transmitting messages from MTP3, and
   acknowledging messages that were received before LPO.






George, et al.              Standards Track                    [Page 39]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


        .           .           .           .           .           .
        .           User Data FSN=4 BSN=13  .           .           .
        .           ------------------------------------>           .
        .           User Data FSN=5 BSN=13  .           .           .
        .           ------------------------------------>           .
        .           User Data FSN=6 BSN=13  .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .

    While in RPO, B may continue acknowledging messages.  Suppose that
    B receives message 4 and 5, but has not processed 6 yet.

         .           .           .           .           .           .
         .                  (empty) User Data FSN=16 BSN=4
         .           <------------------------------------           .
         .                  (empty) User Data FSN=16 BSN=5
         .           <------------------------------------           .

    LPO ends at A.  A flushes 14-16 (the messages that were buffered
    without acknowledgement).

         .           .           .           .           .           .
         .           LS PR FSN=6 BSN=13      .           .           .
         .           ------------------------------------>           .
         .           .           .           .        Remote Processor
         .           .           .           .        Outage Ceases
         .           .           .           .           ------------>
         .           .           .           .           .           .

    Suppose that B processed message 5, but never processed message 6.
    B flushes message 6 from its Receive Buffer.  B notifies A of this
    using the Link Status Ready message setting BSN=5, the last message
    that was processed at B.

         .           .           .           .           .           .
         .           .           .           .           .           .
         .           .           .   LS Ready FSN=13 BSN=5           .
         .           <------------------------------------           .
         .           .           .           .           .           .

    B has completed synchronization of sequence numbers and has sent
    an LS Ready, so it is able to resume sending data at this point
    with the new sequence numbers (starting with FSN=14).








George, et al.              Standards Track                    [Page 40]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


         .           .           .           .           .           .
         .           .           .           .           . Message for
         .           .           .           .            transmission
         .           .           .           .           <------------
         .           .           .  User Data FSN=14 BSN=5           .
         .           <------------------------------------           .
         .           .           .           .           .           .

    A can use the Link Status Ready information to resynchronize its
    sequence numbers to begin with FSN=6 in the next User Data message.

         .           .           .           .           .           .
         .           LS Ready FSN=5 BSN=13   .           .           .
         .           ------------------------------------>           .
         .           .           .           .           .           .

    A has completed synchronization of sequence number and has both
    received and sent an LS Ready, so it is able to resume sending data
    at this point with the new sequence numbers and acknowledging data
    received after receiving LS Ready.


         .           .           .           .           .           .
         .           .           .           .           .           .
         .           User Data FSN=5 BSN=14 (empty)      .           .
         .           ------------------------------------>           .
         .           .           .           .           .           .
         Message for             .           .           . Message for
         transmission            .           .            transmission
         ------------>           .           .           <------------
         .           User Data FSN=6 BSN=14  .           .           .
         .           ------------------------------------>           .
         .           .           .  User Data FSN=15 BSN=5           .
         .           <------------------------------------           .
         .           .           .           .           .           .
         .           .      (empty) User Data FSN=15 BSN=6           .
         .           <------------------------------------           .
         .           User Data FSN=6 BSN=15 (empty)      .           .
         .           ------------------------------------>           .
         .           .           .           .           .           .
         .           .           .           .           .           .
         .           .           .           .           .           .

            Figure 16.  Example: Processor Outage and Recovery







George, et al.              Standards Track                    [Page 41]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


5.5.  Level 2 Flow Control

   Figures 17 and 18 illustrate the Level 2 Flow Control procedure.  In
   Figure 17, congestion ceases before timer T6 expires.  Figure 18
   shows the case where T6 expires.

       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        .           Implementation dependent            .           .
        .           determination of M2PA               .           .
        .           receive congestion onset            .           .
        .           .           .           .           .           .
        .           Link Status Busy        .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        .           .           .           .          Start        .
        .           .           .           .          Timer T6     .
        .           .           .           .           .           .
        .           Implementation dependent            .           .
        .           determination of M2PA               .           .
        .           receive congestion abatement        .           .
        .           .           .           .           .           .
        .           Link Status Busy Ended  .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        .           .           .           .          Stop         .
        .           .           .           .          Timer T6     .
        .           .           .           .           .           .

       Figure 17.  Example: Level 2 Flow Control - Congestion Ceases




















George, et al.              Standards Track                    [Page 42]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        .           Implementation dependent            .           .
        .           determination of M2PA               .           .
        .           receive congestion onset            .           .
        .           .           .           .           .           .
        .           Link Status Busy        .           .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        .           .           .           .          Start        .
        .           .           .           .          Timer T6     .
        .           .           .           .            :          .
        .           .           .           .            :          .
        .           .           .           .          Timer T6     .
        .           .           .           .          Expires      .
        .           .           .           .           .           .
        .           .          Link Status Out of Service           .
        .           <------------------------------------           .
        .           .           .           .           .           .
        .           .           .           .          Out of Service
        .           .           .           .           ------------>
        .           .           .           .           .           .

       Figure 18.  Example: Level 2 Flow Control - Timer T6 Expires


























George, et al.              Standards Track                    [Page 43]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


5.6.  MTP3 Signaling Link Congestion

   In Figure 19, M2PA notifies MTP3 of congestion onset and abatement.
   The notification includes the congestion level, if there are levels
   of congestion defined.

       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        .           Implementation dependent            .           .
        .           determination of M2PA   .           .           .
        .           transmit congestion     .           .           .
        .           onset (level)           .           .           .
        .           .           .           .           .           .
        Congestion Indication   .           .           .           .
        (level)     .           .           .           .           .
        <------------           .           .           .           .
        .           .           .           .           .           .
        .           Implementation dependent            .           .
        .           determination of M2PA   .           .           .
        .           transmit congestion     .           .           .
        .           abatement (level)       .           .           .
        .           .           .           .           .           .
        Congestion Indication   .           .           .           .
        (level)     .           .           .           .           .
        <------------           .           .           .           .
        .           .           .           .           .           .

            Figure 19.  Example: MTP3 Signaling Link Congestion






















George, et al.              Standards Track                    [Page 44]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


5.7.  Link Deactivation

   Figure 20 shows an example of link deactivation.  MTP3 can request
   that a link be taken out of service.

       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        Stop        .           .           .           .           .
        ------------>           .           .           .           .
        .           .           .           .           .           .
        .           Link Status Out of Service          .           .
        .           ------------------------------------>           .
        .           .           .           .           .           .
        Out of Service          .           .           .           .
        <------------           .           .           .           .
        .           .           .           .           .           .

                  Figure 20.  Example: Link Deactivation

5.8.  Link Changeover

   In Figure 21, MTP3 performs a changeover because the link went out of
   service.  MTP3 selects a different link to retransmit the
   unacknowledged and unsent messages.


























George, et al.              Standards Track                    [Page 45]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


       MTP3        M2PA        SCTP        SCTP        M2PA        MTP3
       ----        ----        ----        ----        ----        ----
        .           .           .           .           .           .
        .           Communication Lost      .           .           .
        .           <------------           .           .           .
        .           .           .           .           .           .
        Out of Service          .           .           .           .
        <------------           .           .           .           .
        .           .           .           .           .           .
        Retrieve BSNT           .           .           .           .
        ------------>           .           .           .           .
        .           .           .           .           .           .
        BSNT Confirmation       .           .           .           .
        <------------           .           .           .           .
        .           .           .           .           .           .
        XCO (BSNT) on another link          .           .           .
        ------------------------------------------------------------>
        .           .           .           .           .           .
        .           .           .           .           Retrieve BSNT
        .           .           .           .           <------------
        .           .           .           .           .           .
        .           .           .           .       BSNT Confirmation
        .           .           .           .           ------------>
        .           .           .           .           .           .
        .           .           .           .           .  XCA (BSNT)
        <------------------------------------------------------------
        .           .           .           .           .           .
        Retrieval Request       .           .           .           .
        and FSNC    .           .           .           .           .
        ------------>           .           .           .           .
        .           .           .           .           .           .
        Retrieved Message       .           .           .           .
        <------------           .           .           .           .
        .  :        .           .           .           .           .
        .  :        .           .           .           .           .
        <------------           .           .           .           .
        .           .           .           .           .           .
        Retrieval Complete      .           .           .           .
        <------------           .           .           .           .
        .           .           .           .           .           .
        Send messages on another link.

                   Figure 21.  Example: Link Changeover








George, et al.              Standards Track                    [Page 46]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


6.  Security Considerations

   M2PA is designed to carry signaling messages for telephony services.
   As such, M2PA MUST involve the security needs of several parties:

      - the end users of the services

      - the network providers

      - the applications involved

   Additional requirements MAY come from local regulation.

   While these parties may have some overlapping security needs, their
   needs may not be identical.  Any security solution SHOULD fulfill all
   of the different parties' needs.

   Consult [RFC3788] for a discussion of security requirements and for
   guidance on the use of security protocols.  Implementers of M2PA MUST
   follow the guidelines in [RFC3788].

7.  IANA Considerations

7.1.  SCTP Payload Protocol Identifier

   The SCTP Registered User Port Number Assignment for M2PA is 3565.
   The TCP Registered User Port Number 3565 is also assigned to M2PA, in
   case a specification for M2PA over TCP is created.

   The value assigned by IANA for the Payload Protocol Identifier in the
   SCTP Payload Data chunk is

        M2PA     5

   The SCTP Payload Protocol Identifier is included in each SCTP Data
   chunk, to indicate which protocol the SCTP is carrying.  This Payload
   Protocol Identifier is not directly used by SCTP but may be used by
   certain network entities to identify the type of information being
   carried in a Data chunk.

   The User Adaptation peer may use the Payload Protocol Identifier as a
   way of determining additional information about the data being
   presented to it by SCTP.








George, et al.              Standards Track                    [Page 47]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


7.2.  M2PA Protocol Extensions

   This protocol may be extended through IANA in three ways:

      - through definition of additional message classes,

      - through definition of additional message types, and

      - through definition of additional message parameters.

   The definition and use of new message classes, types, and parameters
   is an integral part of SIGTRAN adaptation layers.  Thus, these
   extensions are assigned by IANA through an IETF Consensus action as
   defined in [RFC2434].

   The proposed extension must in no way adversely affect the general
   working of the protocol.

   The defined values for the message classes, types, and parameters are
   listed in the Signaling User Adaptation Layer registry
   (sigtran-adapt).

7.2.1.  IETF Defined Message Classes

   The documentation for a new message class MUST include the following
   information:

      (a) A long and short name for the message class.

      (b) A detailed description of the purpose of the message class.

7.2.2 IETF Defined Message Types

   Documentation of the message type MUST contain the following
   information:

      (a) A long and short name for the new message type.

      (b) A detailed description of the structure of the message.

      (c) A detailed definition and description of the intended use of
          each field within the message.

      (d) A detailed procedural description of the use of the new
          message type within the operation of the protocol.

      (e) A detailed description of error conditions when receiving this
          message type.



George, et al.              Standards Track                    [Page 48]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   When an implementation receives a message type that it does not
   support, it MUST discard the message.

7.2.3.  IETF-defined Parameter Extension

   Documentation of the message parameter MUST contain the following
   information:

      (a) Name of the parameter type.

      (b) Detailed description of the structure of the parameter field.

      (c) Detailed definition of each component of the parameter value.

      (d) Detailed description of the intended use of this parameter
          type, and an indication of whether, and under what
          circumstances, multiple instances of this parameter type may
          be found within the same message type.

7.2.4.  Defined Values

   This section lists the values defined in this document that should be
   included in the Signaling User Adaptation Layer registry
   (sigtran-adapt).

   The following values for Message Class are defined in this document:

            Value
          (decimal)  Message Class
          ---------  -------------
             11      M2PA Messages

   The following values for Message Type are defined in this document:

            Value
          (decimal)  Message Type
          ---------  -------------
              1      User Data
              2      Link Status

8.  Acknowledgements

   The authors would like to thank the following for their valuable
   comments and suggestions: Brian Tatum, Wayne Davis, Cliff Thomas,
   Jeff Copley, Monique Bernard, Malleswar Kalla, Ian Rytina, Greg
   Sidebottom, Al Varney, Jeff Craig, and Andrew Booth.





George, et al.              Standards Track                    [Page 49]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


9.  References

9.1.  Normative References

   [JT-Q703]  TTC, "Message Transfer Part Signalling Link," TTC Standard
              JT-Q703, Telecommunication Technology Committee (TTC),
              version 3 (April 27, 1994).

   [JT-Q704]  TTC, "Message Transfer Part Signalling Network Functions,"
              TTC Standard JT-Q704, Telecommunication Technology
              Committee (TTC), version 4 (May 30, 2002).

   [Q.703]    ITU, "Signalling System No. 7 - Signalling Link," ITU-T
              Recommendation Q.703, ITU-T Telecommunication
              Standardization Sector of ITU (July 1996).

   [Q.704]    ITU, "Message Transfer Part - Signalling Network Functions
              and Messages," ITU-T Recommendation Q.704, ITU-T
              Telecommunication Standardization Sector of ITU (July
              1996).

   [Q.2140]   ITU, "B-ISDN ATM Adaptation Layer - Service Specific
              Coordination Function for Signalling at the Network Node
              Interface (SSCF at NNI)," ITU-T Recommendation Q.2140,
              ITU-T Telecommunication Standardization Sector of ITU
              (February 1995).

   [Q.2210]   ITU, "Message Transfer Part Level 3 Functions and Messages
              Using the Services of ITU-T Recommendation Q.2140," ITU-T
              Recommendation Q.2210, ITU-T Telecommunication
              Standardization Sector of ITU (July 1996).

   [RFC791]   Postel, J., "Internet Protocol", STD 5, RFC 791, September
              1981.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2434]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 2434,
              October 1998.

   [RFC2960]  Stewart, R., Xie, Q., Morneault, K., Sharp, C.,
              Schwarzbauer, H., Taylor, T., Rytina, I., Kalla, M.,
              Zhang, L., and V. Paxson, "Stream Control Transmission
              Protocol", RFC 2960, October 2000.





George, et al.              Standards Track                    [Page 50]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


   [RFC3309]  Stone, J., Stewart, R., and D. Otis, "Stream Control
              Transmission Protocol (SCTP) Checksum Change", RFC 3309,
              September 2002.

   [RFC3788]  Loughney, J., Tuexen, M., and J. Pastor-Balbas, "Security
              Considerations for Signaling Transport (SIGTRAN)
              Protocols", RFC 3788, June 2004.

   [T1.111]   ANSI, "American National Standard for Telecommunications -
              Signaling System Number 7 (SS7) - Message Transfer Part
              (MTP)," ANSI T1.111-2001, American National Standards
              Institute (February 2001).

9.2.  Informative References

   [M2UA]     K. Morneault, et. al., "Signaling System 7 (SS7) Message
              Transfer Part 2 (MTP2) - User Adaptation Layer," RFC 3331,
              Internet Engineering Task Force - Signalling Transport
              Working Group (September, 2002).

   [Q.700]    ITU, "Introduction to CCITT Signalling System No. 7,"
              ITU-T Recommendation Q.700, ITU-T Telecommunication
              Standardization Sector of ITU (March 1993).

   [Q.701]    ITU, "Functional Description of the Message Transfer Part
              (MTP) of Signalling System No. 7," ITU-T Recommendation
              Q.701, ITU-T Telecommunication Standardization Sector of
              ITU (March 1993).

   [Q.702]    ITU, "Signalling Data Link," ITU-T Recommendation Q.702,
              ITU-T Telecommunication Standardization Sector of ITU
              (November 1988).

   [Q.705]    ITU, "Signalling System No. 7 - Signalling Network
              Structure," ITU-T Recommendation Q.705, ITU-T
              Telecommunication Standardization Sector of ITU (March
              1993).

   [RFC2719]  Ong, L., Rytina, I., Garcia, M., Schwarzbauer, H., Coene,
              L., Lin, H., Juhasz, I., Holdrege, M., and C. Sharp,
              "Framework Architecture for Signaling Transport", RFC
              2719, October 1999.









George, et al.              Standards Track                    [Page 51]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


Authors' Addresses

   Tom George
   Plano, TX
   USA

   Phone: +1-972-985-4594
   EMail: tgeorge_tx@verizon.net

   Brian Bidulock
   OpenSS7 Corporation
   1469 Jeffreys Crescent
   Edmonton, AB  T6L 6T1
   Canada

   Phone: +1-780-490-1141
   EMail: bidulock@openss7.org

   Ram Dantu, Ph.D.
   Assistant Professor
   Department of Computer Science
   University of North Texas
   Denton, TX 76203
   USA

   Phone: +1-940-565-2822
   EMail: rdantu@unt.edu

   Hanns Juergen Schwarzbauer
   SIEMENS AG
   Hofmannstr. 51
   81359 Munich
   Germany

   Phone: +49-89-722-24236
   EMail: HannsJuergen.Schwarzbauer@Siemens.com

   Ken Morneault
   Cisco Systems Inc.
   13615 Dulles Technology Drive
   Herndon, VA 20171
   USA

   Phone: +1-703-484-3323
   EMail: kmorneau@cisco.com






George, et al.              Standards Track                    [Page 52]
^L
RFC 4165      SS7 MTP2-User Peer-to-Peer Adaptation Layer September 2005


Full Copyright Statement

   Copyright (C) The Internet Society (2005).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at ietf-
   ipr@ietf.org.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.







George, et al.              Standards Track                    [Page 53]
^L