blob: 632db5e6681b83e54c9095fcf18245498b863a01 [file] [log] [blame]
Harald Welte8a1e7b82017-09-06 12:35:04 +02001[[chapter_introduction]]
2== Overview
3
4[[intro_overview]]
5=== About OsmoGGSN
6
7OsmoGGSN is a Free / Open Source Software implementation of the GPRS
8GGSN (Gateway GPRS support node) element in side the packet switched
9core network of 2G and 3G cellular networks.
10
11The GGSN function is the tunnel endpoint on the core network side,
12from where the external (IP) packet data network
13
14=== Software Components
15
16==== GTP Implementation (libgtp)
17
18The OsmoGGSN source code includes a shared library implementation of
19the GTP protocol used on the GGSN-SGSN interface. This library
20and associated header files are installed system-wide and are
21available to other programs/applications.
22
23In fact, libgtp is what the OsmoSGSN also uses for its use of GTP.
24
25==== sgsnemu
26
27In order to test OsmoGGSN without running a SGSN and other elements
28of a cellular network, there is a small command-line utility called
29*sgsnemu* which is able to simulate the customary operations of a SGSN
30towards the GGSN, such as a PDP Context Activation.
31
32*sgsnemu* can even be used for testing against other GGSNs, as the GTP
33protocol is standardized across implementations.
34
35==== osmo-ggsn
36
37*osmo-ggsn* is the actual name of the OsmoGGSN executable program. It
38implements the GGSN functionality. All parameters are set using the
39configuration file, by default located in *./osmo-ggsn.cfg*
40
41==== systemd service file
42
43In *contrib/osmo-ggsn.service* you can find a sample service file for
44OsmoGGSN which can be used with systemd.
45
46==== init script
47
48In *contrib/osmo-ggsn.init* you can find a sample init script to be used
49on systems with classic init process.
50
51=== Limitations
52
53OsmoGGSN supports both GTP0 (GSM 09.60) and GTP1 (3GPP 29.060). In the
54following tables the support of each individual message type is
55detailed. The numbers before each feature indicates the relevant
56section in the standard.
57
58==== GSM 09.60 (GTPv0)
59
60[options="header",cols="50%,15%,15%,15%,5%"]
61|===
62| Feature | gtplib | osmo-ggsn | sgsnemu | notes
635+<|*7.4 Path Management Messages*
64|7.4.1 Echo Request |Supported |Supported |Supported |
65|7.4.2 Echo Response |Supported |Supported |Supported |
66|7.4.3 Version Not Supported |Supported |Supported |Supported |
675+<| *7.5 Tunnel Management Messages*
68|7.5.1 Create PDP Context Request|Supported |Supported |Supported |
69|7.5.2 Create PDP Context Response|Supported |Supported |Supported |
70|7.5.3 Update PDP Context Request|Supported |Supported |Not |
71|7.5.4 Update PDP Context Response|Supported |Supported |Not |
72|7.5.5 Delete PDP Context Request|Supported |Supported |Supported |
73|7.5.6 Delete PDP Context Response|Supported |Supported |Supported |
74|7.5.7 Create AA PDP Context Request|Unsupported |Unsupported |Unsupported |
75|7.5.8 Create AA PDP Response|Unsupported |Unsupported |Unsupported |
76|7.5.9 Delete AA PDP Context Request|Unsupported |Unsupported |Unsupported |
77|7.5.10 Delete AA PDP Context Response|Unsupported |Unsupported |Unsupported |
78|7.5.11 Error Indication |Supported |Supported |Supported |
79|7.5.12 PDU Notification Request|Unsupported |Unsupported |Unsupported |
80|7.5.13 PDU Notification Response|Unsupported |Unsupported |Unsupported |
81|7.5.14 PDU Notification Reject Request|Unsupported |Unsupported |Unsupported |
82|7.5.15 PDU Notification Reject Response|Unsupported |Unsupported |Unsupported |
835+<| *7.6 Location Management Messages*
84|7.6.1 Send Routeing Information for GPRS Request|Unsupported |Unsupported |Not applicable |
85|7.6.2 Send Routeing Information for GPRS Response|Unsupported |Unsupported |Not applicable |
86|7.6.3 Failure Report Request|Unsupported |Unsupported |Not applicable |
87|7.6.3 Failure Report Response|Unsupported |Unsupported |Not applicable |
88|7.6.5 Note MS GPRS Present Request|Unsupported |Unsupported |Not applicable|
89|7.6.6 Note MS GPRS Present Response|Unsupported |Unsupported |Not applicable|
905+<| *7.5 Mobility Management Messages*
91|7.5.1 Identification Request|Unsupported |Not applicable|Not applicable|
92|7.5.2 Identification Response|Unsupported |Not applicable|Not applicable |
93|7.5.3 SGSN Context Request|Unsupported |Not applicable|Not applicable|
94|7.5.4 SGSN Context Response|Unsupported |Not applicable|Not applicable|
95|7.5.5 SGSN Context Acknowledge|Unsupported |Not applicable|Not applicable|
96|===
97
98==== 3GPP 29.060 (GTPv1)
99
100[options="header",cols="50%,15%,15%,15%,5%"]
101|===
102|Feature |gtplib |osmo-ggsn |sgsnemu |notes
1035+<|*7.2 Path Management Messages*
104|7.2.1 Echo Request |Supported |Supported |Supported |
105|7.2.2 Echo Response |Supported |Supported |Supported |
106|7.2.3 Version Not Supported|Supported |Supported |Supported |
107|7.2.4 Extension Headers Notification|Supported |Supported |Supported |
1085+<|*7.3 Tunnel Management Messages*
109|7.3.1 Create PDP Context Request|Supported |Supported |Supported |1
110|7.3.2 Create PDP Context Response|Supported |Supported |Supported |
111|7.3.3 Update PDP Context Request|Supported |Supported |Not applicable|1
112|7.3.4 Update PDP Context Response|Supported |Supported |Not applicable|
113|7.3.5 Delete PDP Context Request|Supported |Supported |Supported |
114|7.3.6 Delete PDP Context Response|Supported |Supported |Supported |
115|7.3.7 Error Indication |Supported |Supported |Supported |
116|7.3.8 PDU Notification Request|Unsupported |Unsupported |Unsupported |
117|7.3.9 PDU Notification Response|Unsupported |Unsupported |Unsupported |
118|7.3.10 PDU Notification Reject Request|Unsupported |Unsupported |Unsupported |
119|7.3.10 PDU Notification Reject Response|Unsupported |Unsupported |Unsupported |
1205+<|*7.4 Location Management Messages*
121|7.4.1 Send Routeing Information for GPRS Request|Unsupported |Unsupported |Not applicable |
122|7.4.2 Send Routeing Information for GPRS Response|Unsupported |Unsupported |Not applicable |
123|7.4.3 Failure Report Request|Unsupported |Unsupported |Not applicable|
124|7.4.3 Failure Report Response|Unsupported |Unsupported |Not applicable|
125|7.4.5 Note MS GPRS Present Request|Unsupported |Unsupported |Not applicable|
126|7.4.6 Note MS GPRS Present Response|Unsupported |Unsupported |Not applicable|
1275+<|*7.5 Mobility Management Messages*
128|7.5.1 Identification Request|Unsupported |Not applicable|Not applicable|
129|7.5.2 Identification Response|Unsupported |Not applicable |Not applicable|
130|7.5.3 SGSN Context Request|Unsupported |Not applicable|Not applicable|
131|7.5.4 SGSN Context Response|Unsupported |Not applicable |Not applicable|
132|7.5.5 SGSN Context Acknowledge|Unsupported |Not applicable|Not applicable|
133|7.5.6 Forward Relocation Request|Unsupported |Not applicable|Not applicable|
134|7.5.7 Forward Relocation Response|Unsupported |Not applicable|Not applicable|
135|7.5.8 Forward Relocation Complete|Unsupported |Not applicable|Not applicable|
136|7.5.9 Relocation Cancel Request|Unsupported |Not applicable|Not applicable|
137|7.5.10 Relocation Cancel Response|Unsupported |Not applicable|Not applicable|
138|7.5.11 Forward Relocation Complete |Unsupported |Not applicable |Not applicable |
139|7.5.12 Forward SRNS Context Acknowledge|Unsupported |Not applicable|Not applicable|
140|7.5.13 Forward SRNS Context|Unsupported |Not applicable|Not applicable|
141|===
142
143Notes
144
1451) The "Secondary PDP Context Activation Procedure" is not supported.