Documentation ¶
Overview ¶
Package gtp provides simple and painless handling of GTP (GPRS Tunneling Protocol).
This package is the wrapper for all versions of GTP. Please see the godocs of each version instead.
GTPv0: https://pkg.go.dev/github.com/wmnsk/go-gtp/v0
GTPv1: https://pkg.go.dev/github.com/wmnsk/go-gtp/v1
GTPv2: https://pkg.go.dev/github.com/wmnsk/go-gtp/v2
Please also see README.md for detailed usage of the APIs provided by this package, as well as how to run the examples.
https://github.com/wmnsk/go-gtp/blob/master/README.md
https://github.com/wmnsk/go-gtp/tree/master/examples/gw-tester
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( ErrInvalidVersion = errors.New("got invalid version") ErrInvalidLength = errors.New("length value is invalid") ErrTooShortToParse = errors.New("too short to decode as GTP") ErrTooShortToMarshal = errors.New("too short to serialize") )
Common error definitions.
Functions ¶
Types ¶
type Message ¶
type Message interface { MarshalTo([]byte) error UnmarshalBinary(b []byte) error MarshalLen() int Version() int MessageType() uint8 MessageTypeName() string // deprecated SerializeTo([]byte) error DecodeFromBytes(b []byte) error }
Message is an interface that defines all versions of GTP message.
Directories ¶
Path | Synopsis |
---|---|
examples
|
|
gw-tester/enb
Command enb works as pseudo eNB that forwards packets through GTPv1 tunnel.
|
Command enb works as pseudo eNB that forwards packets through GTPv1 tunnel. |
gw-tester/mme
Command mme works as pseudo MME/HSS communicates S/P-GW with GTPv2 signaling.
|
Command mme works as pseudo MME/HSS communicates S/P-GW with GTPv2 signaling. |
gw-tester/pgw
Command pgw is a dead simple implementation of P-GW only with GTP-related features.
|
Command pgw is a dead simple implementation of P-GW only with GTP-related features. |
gw-tester/sgw
Command sgw is a dead simple implementation of S-GW.
|
Command sgw is a dead simple implementation of S-GW. |
mme
Command mme is a reference implementation of MME with go-gtp.
|
Command mme is a reference implementation of MME with go-gtp. |
pgw
Command pgw is a dead simple implementation of P-GW only with GTP-related features.
|
Command pgw is a dead simple implementation of P-GW only with GTP-related features. |
sgw
Command sgw is a dead simple implementation of S-GW only with GTP-related features.
|
Command sgw is a dead simple implementation of S-GW only with GTP-related features. |
Package gtpv0 provides simple and painless handling of GTPv0 protocol in pure Golang.
|
Package gtpv0 provides simple and painless handling of GTPv0 protocol in pure Golang. |
ie
Package ie provides encoding/decoding feature of GTPv0 Information Elements.
|
Package ie provides encoding/decoding feature of GTPv0 Information Elements. |
message
Package message provides encoding/decoding feature of GTPv0 protocol.
|
Package message provides encoding/decoding feature of GTPv0 protocol. |
testutils
Package testutils is an internal package to be used for unit tests.
|
Package testutils is an internal package to be used for unit tests. |
Package gtpv1 provides simple and painless handling of GTPv1-C and GTPv1-U protocol in pure Golang.
|
Package gtpv1 provides simple and painless handling of GTPv1-C and GTPv1-U protocol in pure Golang. |
ie
Package ie provides encoding/decoding feature of GTPv1 Information Elements.
|
Package ie provides encoding/decoding feature of GTPv1 Information Elements. |
message
Package message provides encoding/decoding feature of GTPv1 protocol.
|
Package message provides encoding/decoding feature of GTPv1 protocol. |
testutils
Package testutils is an internal package to be used for unit tests.
|
Package testutils is an internal package to be used for unit tests. |
Package gtpv2 provides the simple and painless handling of GTPv2-C protocol in pure Golang.
|
Package gtpv2 provides the simple and painless handling of GTPv2-C protocol in pure Golang. |
ie
Package ie provides encoding/decoding feature of GTPv2 Information Elements.
|
Package ie provides encoding/decoding feature of GTPv2 Information Elements. |
message
Package message provides encoding/decoding feature of GTPv2 protocol.
|
Package message provides encoding/decoding feature of GTPv2 protocol. |
testutils
Package testutils is an internal package to be used for unit tests.
|
Package testutils is an internal package to be used for unit tests. |
Package utils provides some utilities which might be useful specifically for GTP(or other telco protocols).
|
Package utils provides some utilities which might be useful specifically for GTP(or other telco protocols). |