Professional Documents
Culture Documents
5G Protocols
5G Protocols
Cisco Pune
5G Protocols
1
Modules 8: 5G Core Network Protocols
• HTTP
• PFCP
• NAS
• Diameter
• SIP
• RTP
2
HTTP
3
HTTP
• Use Case SBA
• Preferred Version : HTTP 2.0
4
HTTP Commands and stack
• Request
• Response
• Subscribe
• Notify
5
PFCP
6
Use case of PFCP Protocol
• Sxa - between SGW-C and SGW-U
• Sxb - between PGW-C and PGW-U
• Sxc - between TDF-C and TDF-U
• N4 - between SMF and UPF
7
Protocol Stack
8
PFCP Interfaces
9
PFCP Protocol in 5G
10
SIP - Session Initiation Protocol
SIP
▪
▪ establishing of multimedia
sessions in IP networks
11
The SIP protocol is exchanged between terminals (SIP terminals) and the
network as well as between SIP servers within the network, so it is a user-
network and a network-network protocol.
SIP only opens and closes sessions for various applications; hence it is free
to work for any suitable service type whether old or new. This allows reusing
existing SIP architecture in various ways for new developments.
SIP is only the framework for session control; it can work with different styles
of session description (e.g. quality of service parameters, media descriptor
1
2
Usage of SIP :
After UE finishes radio procedures and it establishes rad
The VoLTE UE initiates a SIP REGISTER to the P-CSCF, using the P-CSCF
IP Address that was made available during the LTE Attach io bearers UE can
start SIP registration towards the IMS for VoLTE call.
Company Confidential
1
3
1. INVITE
2. TRYING (100)
3.RINGING (180)
4. OK (200)
5. ACK
6. BYE
7. OK (200)
14
1
5
INVITE:A request for initiating a session and inviting other parties to join the
session. The proposed description of the session is carried in the message
body. For a two-party call, the calling party indicates the desired media types
and media parameters in the session description. The called party must
indicate the accepted media or media to be used in the message body of the
response.
ACK :An acknowledgement for the final response to the INVITE request. The
ACK request is used in conjunction with the INVITE request.
BYE:A request for terminating sessions.
CANCEL:A request for canceling a previous request sent by a client. CANCEL
does not affect a request to which a final response is received.
REGISTERA request for registering contact information.
OPTIONS: A request for querying servers about their capabilities.
1
6
SIP response is a message generated by a user agent server (UAS) or SIP server to reply a request
generated by a client. It could be a formal acknowledgement to prevent retransmission of requests by a
UAC.
A response may contain some additional header fields of info needed by a UAC.
SIP has six responses.
1xx to 5xx has been borrowed from HTTP and 6xx is introduced in SIP.
1xx is considered as a provisional response and the rest are final responses.
Company Confidential
SIP Response Codes 1xx-6xx
Response Code Meaning
100 (Trying) server has received request and is now performing some unspecified action
180 (Ringing) invited user is alerted (used for local ringback)
181 (Call Forwarded) server indicates that this call is now subject to call forwarding to another set of
destinations
182 (Queued) called party is temporarily unavailable, but server queued call instead rejecting it
183 (Session Progress) unspecified progress events of the call; (for instance used to indicate ISUP: ACM)
300 (Multiple Choices) originally specified address was resolved to multiple choices; user can now specify
one of these destinations and direct the session request to it
301 (Moved Permanently) called user can no longer be found at the requested address; client should try new
address instead
302 (Moved Temporarily) client shall try one the alternative addresses (CONTACT header) for the user
305 (Use Proxy) the requested resource msut be accessed through the proxy given in CONTACT header
380 (Alternative Service) call was not successful, but alternatieve services are available
400 (Bad Request) request could not be processed due to invalid syntax
401 (Unauthorized) request requires user authentication (used by user agent servers and registrars)
402 (Payment Required) reserved for future use
403 (Forbidden) server understands request, but refuses it; (authorization will not overcome the error)
404 (Not Found) server has definitive information that user does not exist at the domain specified in
the request (Request URI)
405 (Method Not Allowed) request method not allowed for the specified address (Request URI)
406 (Not Acceptable) resource identified by the request is not capable of handling the specified content
characteristics
407 (Proxy Authentication Req.) client must first authenticate itself (used by proxies)
408 (Request Timeout) server was not a ble to produce any other response within suitable amount of time
410 (Gone) requested resource no longer available at server, no forwarding address known
413 (Request Entity Too Large) request message body too large for this server
17
17
SIP Response Codes 1xx-6xx(Cont.)
Response Code Meaning
414 (Request URI Too Long) request URI is longer than the server is willing to interpret
415 (Unsupported Media Type) message body is of a format not supported by the server for this method
416 (Unsupported URI Scheme) server cannot process request because URI scheme is unknown
420 (Bad Extension) server did not understand protocol extension in a REQUIRE or PROXY-REQUIRE
header
421 (Extension Required) user agent server needs a particular extension to process the request, but this
extension is not listed in the SUPPORED HEADER field
423 (Interval Too Brief) expiration time of resource refreshed by the request is too short
480 (Temporarily Unavailable) called party's end system was contacted, but user unavalaible (e.g. not logged on)
481 (Call/Transaction does not exist) Call-ID or tags wrong
482 (Loop Detected) server has detected a message loop
483 (Too Many Hops) MAX-FORWARDS header field reached 0
484 (Address Incomplete) request-URI was not sufficient to find an end system
485 (Ambi guous) request-URI was ambiguous (multiple called parties possible)
486 (Busy Here) called party successfully contacted, but called pary not willing or able to take
another call
487 (Request Terminated) the request was terminated by BYE or CANCEL request
488 (Not Acceptable Here) the wanted request is not possible at the specified address
491 (Request Pending) in the same dialogue is a already a request pending
493 (Undecipherable) encrypted message body was not decipherable
500 (Server Internal Error) server encountered unexpected condition making any processing of the request
impossible
501 (Not Implemented) the requested service is not available at this server
502 (Bad Gateway) server received a bad request from next server
503 (Service Unavailable) server is temporarily unable to process the request (overload or maintenance)
504 (Server Time-Out) sever did not receive response from an external server in time
505 (Version Not Supported) server does not support the used SI P version
513 (Message Too Large) server was unable to process request becuase of excessive message length
18
18
SIP Response Codes 1xx-6xx(Cont.)
Response Code Meaning
600 (Busy Everywhere) called party does not wish to take cal at this time
606 (Not Acceptable) user agent of called party was contacted successfully,
but session description, bandwidth or addressing style are
not acceptable
19
19
2
0
Company Confidential
NAS
21
DIAMETER
22
Use case
• R5 protocol
• PCF – P-CSCF
23
2
4
Relay/Proxy/Server
connection A connection B
client server
session
• Authorization
• Authentication
• Accounting
The Diameter protocol consists of the Diameter base protocol and various Diameter
applications.
The Diameter base protocol defines Diameter entities and specifies common
functionalities, including Diameter message delivery, capability negotiation between
Diameter nodes, and error handling.
Diameter applications extend the Diameter protocol by defining service-specific
commands and data units. Examples of Diameter applications include Network
Access Server (NAS), Extensible Authentication Protocol (EAP), Mobile IP (MIP),
and Cryptographic Message Syntax (CMS).
Diameter is a peer-to-peer protocol. Either Diameter node of a link can initiate a
request. If two Diameter links have been established between two nodes, one link is
disabled according to an election mechanism.
In the Diameter protocol, IDs are defined for applications and are included in
Diameter message headers to identify the layers from which messages are sent.
Diameter messages are exchanged in request-answer mode. A Diameter message
consists of a header field and AVPs. A diameter header carries the version, message
length, command flag, command code, application ID, hop-by-hop identifier, and
end-to-end identifier. AVPs encapsulate information related to the Diameter message
and can be added by carriers
Company Confidential
2
5
The Diameter base protocol runs over TCP or SCTP. TCP establishes an
independent connection for each stream, while SCTP bundles several independent
streams into a single SCTP association.
Transport Level Security (TLS) provides security for transport connections, and IP
Security (IPSec) provides security for hop-to-hop connections. Diameter clients must
support either TLS or IPSec. Diameter servers must support both TLS and IPSec.
Diameter cannot run without TLS or IPSec.
DIAMETER base protocol: The DIAMETER base provides the very basic
communication framework with messages and root parameter formats. It does not
contain any specific application message. The DIAMETER base protocol uses TCP
or SCTP for transmission of messages.
DIAMETER Application: The DIAMETER application is placed on top of the base
protocol to use the offered communication facilities. The DIAMETER application itself
provides new request/response messages specific for the services to be provided by
the application. Associated with this are parameters derived from the basic
parameter formats used for the application specific behavior.
Each Diameter application must have Application Identifier, assigned by IANA. The
base protocol does not require an Application Identifier since its support is
mandatory. During the capabilities exchange, Diameter nodes inform their peers of
supported Application. Furthermore, all Diameter messages contain an Application
Identifier. In this context, a Diameter Application means a protocol.
Company Confidential
2
6
Version
Message Length
Command Flags Command Code
Application ID
Hop-by-Hop Identifier
End-to-End Identifier
AVPs
R P E T r r r r
R(equest) 1=Message is Request; 0=Message is Answer
P(roxiable) 1=Message may be proxied; 0=Message must be locally processed
E(rror) 1=Message contains a protocol error (only for answer messages)
T 1=Indicates, that this message is potentially a retransmission
Version
The version field describes the DIAMETER base protocol version used. For the present
document this version must be set to 0x01 (version 1).
Message Length
Length of DIAMETER message including header fields in octets.
Command Flags
This field contains three bits. First the R-bit is used to indicate whether the message is a
request (1) or a response (0). The P-bit indicates whether the message may be proxied (1) or
must be handled locally (0). The last bit is the E-bit which is only for responses important. If
E=1 then the response contains an error.
Command Code
The command code contains the procedure indicator the message belongs to.
Application ID
The application identifier indicates which DIAMETER application is sending/receiving the
message.
Hop-by-Hop ID
This identifier has significance per connection. It is used to associate responses to requests.
End-to-End ID
This is an identifier for the message which remains the same for all connections the message
is sent on. It might be used to detect duplicated messages. This identifier must be unique for a
time period of at least 4 minutes.
28
2
9
RTP/RTCP Functions
- quality measurements
- identification of session parties
UDP
IP v6
Layer 2 / Layer 1
These three things can easily be measured by every RTP stream end-point.
The sequence number and the time stamp in the RTP header are used for
this purpose. These measurements can be exchange by the end-points using
RTCP protocol messages. Furthermore if synchronization entities are used
their Synchronization Source Identifiers are exchanged with the RTCP
protocol at session begin.
3
0
0 PCMU A 8000 1
2 G.721 A 8000 1
9 G.722 A 8000 1
15 G.728 A 8000 1
PCMU
This indicates uniform PCM. So it describes the format of classical audio sampling
with equidistant intervals. The sampling rate is 8 kHz with a sampling width of 8 bits
per sample..
G.721/722/728
These are different ITU-T audio codecs. Especially G.722 and G.728 are designed
by transport over packet networks. All three codecs are running with 8 kHz sampling
rate, but they differ essentially in their coding.
GSM (FR)
This is the standard GSM full rate speech codec. It produces 244 bit long codec
frames every 20 ms. Thus it requires a data rate of around 12 kbps. Also the FR
codec works with a sampling rate with 8 kHz (and 13 bits per sample), but this
indication is principle useless here.
JPEG
The JPEG picture expert group has not only specified JPEG as picture compression
format, but also for video compression. JPEG therefore describes a video format.
H.261
H.261 is the standard video/audio format defined by ITU-T used for video-telephony.
It is already old-fashioned and will be substituted by H.264 and MPEG4.
3
1
Endpoint A Endpoint B
IP Address A IP Address B
In contrast to IP applications like HTTP, FTP, etc. RTP does not have a well
defined port number assigned.
It is up to a session controlling protocol like SIP and a bearer control protocol
like MEGACO to communicate the UDP port numbers for a RTP stream
belonging to an application. This mechanism of course allows to have multiple
RTP streams terminated at the same host.
RTP uses always even numbered port numbers. If RTCP is used in
conjunction with RTP it must use the next higher (odd) port number.
H.248
32
3
3
MGC
the management of resources
on the MG
3GPP defined:
Media Mn Interface: MGC <> IM MGW
(3GPP TS 29332)
Controller Iq Interface: P-CSCF <> IMS A-BGW
(3GPP TS 29.334)
Ix Interface: IBCF <> TrGW
H248 / (3GPP TS 29.238)
MEGACO Mp Interface MRFC- MRFP
MGW
media media
MG
connection point between
two dissimilar networks
H.248 is used between Media Gateway (MGW) and Media Gateway Controller (MGC: e.g. MSC Server).
The protocol has the following main tasks:
control bearer connection setup, modification and release;
indication of events concerning the bearer connections;
trigger and detection of tones and signals on the bearer;
retrieval of statistics about the bearer connection.
Call bearer control protocols are usually specific to the transport technology used, but are also dependent on the
system (e.g. UMTS).
ITU-T defined a basic framework for CBC protocols based on the standard H.248. The same framework is also
provided by IETF for IP environments. In IETF, H.248 is called Media Gateway Control (MEGACO) protocol.
H.248 provides a generalized model how to perform bearer connection control between network control plane and
transport network plane. Four a CBC is needed:
Framework: A framework specifies the functional architecture, interfaces and abstract models.
Messages: Messages are the basic communication units exchanged between functional units defined in the
framework.
Parameters, Events and Signals: Events describe what is detectable and reportable. Signals are various indications
running on the bearer (e.g. busy tone). Parameters describe how bearers and related things can be described.
Procedures: Procedures define rules and actions associated with messages, parameters, signals and events.
A PSTN/CS gateway interfaces with PSTN circuit switched (CS) networks. For signalling, CS networks use ISDN
User Part (ISUP) (or BICC) over Message Transfer Part (MTP), while IMS uses SIP over IP. For media, CS
networks use Pulse-code modulation (PCM), while IMS uses Real-time Transport Protocol (RTP).
A signalling gateway (SGW) interfaces with the signalling plane of the CS. It transforms lower layer protocols as
Stream Control Transmission Protocol (SCTP, an IP protocol) into Message Transfer Part (MTP, an Signalling
System 7 (SS7) protocol), to pass ISDN User Part (ISUP) from the MGCF to the CS network.
A media gateway controller function (MGCF) is a SIP endpoint that does call control protocol conversion between
SIP and ISUP/BICC and interfaces with the SGW over SCTP. It also controls the resources in a Media Gateway
(MGW) across an H.248 interface.
A media gateway (MGW) interfaces with the media plane of the CS network, by converting between RTP and PCM.
It can also transcode when the codecs don't match (e.g., IMS might use AMR, PSTN might use G.711)
34