Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 1
Tik-109/110.300
Telecommunications architectures:
Protocols
Hannu H. KARI/Helsinki University of Technology (HUT)
TML-laboratory/CS/HUT
Agenda
Protocol design
Multivendor interfaces Handling protocol error Handling lost packets
Handling corrupted data
Handling failed network elements Fault tolerant system design
Protocol examples
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 3
Protocol design:
architecture
Local area network
Server
Router
Local area network
Server
Router
Corporate 2
Corporate 1 Serving GPRS
Support Node (SGSN)
Gateway GPRS Support Node (GGSN)
Gateway GPRS Support Node (GGSN)
GPRS INFRA- STRUCTURE
HLR MSC/VLR
Other GPRS
operators Border gateway
Gb
Gr Gd
Gi.IP Gi.X.25 Gi.IP
Firewall Firewall
Firewall
Firewall R/S Um
SMS-GMSC
Gr Gd
Gs
Gp Gc
Gn, Gp
Gn, Gp
EIR Gf
Gf
BTS BSC PSTN
GPRS backbone
Data network (Internet)
Data network (X.25)
Data network (Internet) SS7 Network
Protocol design
• Example protocol stack
Um Gb
MS BSS SGSN
SNDC SMS GMM
LLC
RLC
MAC
GSM RF
Relay RLC
MAC
GSM RF
BSSGP Network
Service
L1
SNDC SMS GMM
LLC
BSSGP Network
Service
L1
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 5
Protocol design
• Basic operation model
4. Confirm
1. Request 3. Response 2. Indication
Level - N+1
Level - N
Multivendor interfaces
• Proprietary interfaces
• Implementations of different manufacturers won’t necessarily interwork
• Possible manufacturer extensions, interpretations, solutions, combined equipments, ...
• Multivendor interfaces
• Well defined protocols
• Strong interoperability requirements
• Interoperability testing (type approvals)
• Support for multiple versions
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 7
Handling protocol errors
• E.g., in GTP protocol (GPRS Tunneling Protocol), the protocol layer handles:
• Protocol has version numbers
• Handling too short packets
• Unknown and erroneous headers
• Unexpected message
• Missing or invalid mandatory elements
• Unknown information element
• Out of sequence information elements
• Repeated information elements
• Incorrect optional information elements
• TLV, TV, V formatting (T=Type, L=Length, V=Value)
Handling lost packets
• In principle, data packets at any protocol layer may be lost
• Methods to cope lost packets
• Acknowledges
• Timers
• Retries
• State machines
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 9
Handling corrupted data
• Methods to cope corrupted data
• CRC checks (RLC, LLC, L2 under IP, …)
• Sanity checks of data
• State machines
Handling failed network elements
• Network elements with permanent data (HLR failure)
• After restart, inform all MSC/VLRs and SGSNs that have MSs of that HLR
• Network elements with non-permanent data (SGSN failure)
• Inform associated neigboring element
• VLRs
• Inform MS next time when it next time sends uplink message
• Inform GGSN next time when GGSN sends MT data. MS may be paged
• MT SMSs are rejected
• CS page is sent to entire MSC/VLR area or to MSC/VLR specified
area
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 11
Handling failed network elements
• Simpler network elements (GGSN failure)
• Inform SGSN when SGSN sends MO data
• Reject data packets MT packets
Fault tolerant systems
• Fault models
• Only knows faults can be handled (i.e., if you are not prepared to handle the faults, you can’t survive those faults)
• Fault prevention
• Fault detection
• Fault isolation
• Reduced/Degraded service
• Fault recovery
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 13
Example:
Simple procedure, Attach
MS Network
ATTACH REQUEST ATTACH ACCEPT
ATTACH COMPLETE
Example:
Signaling chart
7d. Cancel Location Ack 7c. Cancel Location 7b. Update Location
7g. Update Location Ack 7e. Insert Subscriber Data 7f. Insert Subscriber Data Ack 6d. Insert Subscriber Data
6c. Cancel Location Ack 6b. Cancel Location 3. Identity Response
2. Identification Response 2. Identification Request 1. Attach Request
5. IMEI Check 3. Identity Request
4. Authentication
6a. Update Location
7a. Location Updating Request
7h. Location Updating Accept 6f. Update Location Ack 6e. Insert Subscriber Data Ack
MS BSS new SGSN old SGSN GGSN EIR HLR
old MSC/VLR new
MSC/VLR
9. Attach Complete 8. Attach Accept
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 15
Example:
Signaling chart
• 1) The MS initiates the attach procedure by the transmission of an Attach Request (IMSI or P TMSI and old RAI, Classmark, CKSN, Attach Type, DRX Parameters, old P TMSI Signature) message to the SGSN.
IMSI shall be included if the MS does not have a valid P TMSI available. If the MS has a valid P TMSI, then P TMSI and the old RAI associated with P TMSI shall be included. Classmark contains the MS's GPRS multislot
capabilities and supported GPRS ciphering algorithms in addition to the existing classmark parameters defined in GSM 04.08. Attach Type indicates which type of attach that is to be performed, i.e., GPRS attach only, GPRS Attach while already IMSI attached, or combined GPRS / IMSI attach. DRX Parameters indicates whether the MS uses discontinuous reception or not.
If the MS uses discontinuous reception, then DRX Parameters also indicate
when the MS is in a non-sleep mode able to receive paging requests and
channel assignments. If the MS uses P TMSI for identifying itself and if it
has also stored its old P TMSI Signature, then the MS shall include the old
P TMSI Signature in the Attach Request message.
Example:
Signaling chart
• 8) The SGSN sends an Attach Accept (P TMSI, VLR TMSI, P TMSI Signature) to the MS. P TMSI is included if the SGSN allocates a new P TMSI.
• 9) If P TMSI or VLR TMSI was changed, the MS acknowledges the
received TMSI(s) with Attach Complete (P TMSI, VLR TMSI).
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 17
Example:
Time critical approach
MS Network
ATTACH REQUEST Start T3310
ATTACH ACCEPT Stop T3310
ATTACH COMPLETE
Stop T3350
If P-TMSI and/or TMSI allocated Start T3350 If P-TMSI and/or
TMSI allocated
Sequence diagram
C.1 ATTACH, GPRS only, MS unknown in the network
GMMREG-ATTACH- REQ [Attach type, READY-timer, STANDBY-timer ]
START Tattach LL-UNITDATA-REQ [PDU=Attach Req ( IMSI or TLLIplusRAI), oldTLLI,Cipher=off ]
GRR-DATA-REQ
[LLC-UI, SAPI=signalling]
GRR-DATA-IND
[LLC-UI, TLLI, RAI,CI]
LL-UNITDATA-IND
[PDU=Attach Req ( IMSI or TLLIplusRAI), oldTLLI, CI]
LLGMM-ASSIGN-REQ
[Kc, Algorithm]
START Tauth LL-UNITDATA-REQ
GRR-DATA--REQ
STOP Tauth [ PDU=Auth-Cipher-
Req (Alg, RAND,..), oldTLLI, Cipher=off ] [LLC-UI,
DRX, CLM, SAPI=signalling]
GRR-DATA-IND
[LLC-UI]
LL-UNITDATA-IND
[PDU=Auth-Cipher- Req (Alg., RAND,…) ]
LL-UNITDATA-REQ
[PDU=Auth-Cipher- Resp (SRES), oldTLLI,Cipher=off ]
GRR-DATA-REQ
[LLC-UI, SAPI=signalling]
GRR-DATA-IND
[LLC-UI, oldTLLI]
LL-UNITDATA-IND
[PDU=Auth-Cipher- Resp (SRES), oldTLLI ]
[Kc, Algorithm]
MS NET
GMM
SNDCP SM LLC RR RR BSSGP LLC GMM SM SNDCP
LLGMM-ASSIGN-REQ
START Tident LL-UNITDATA-REQ
[ PDU=
Identification Req, oldTLLI, Cipher=off ] GRR-DATA--REQ
[LLC-UI, DRX, CLM, SAPI=signalling]
GRR-DATA-IND
[LLC-UI]
LL-UNITDATA-IND
[PDU=
Identification Req]
STOP Tident LL-UNITDATA-REQ
[PDU=Identification- Resp (IMSI), oldTLLI,Cipher=off ]
GRR-DATA-REQ
[LLC-UI, SAPI=signalling]
GRR-DATA-IND
[LLC-UI, TLLI]
LL-UNITDATA-IND
[PDU=Identification- Resp (IMSI), oldTLLI ] The oldTLLI may be a
Local TLLI, or a Foreign TLLI, or a Random TLLI
IMSI fetched if
- No GPRS MM Context exists, and - Attach Request without IMSI
The network starts the authentication together with setting the ciphering mode.
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 19
Example:
Service primitives
PRIMITIVE PARAMETER
(message, info elements of message, other parameters)
REFERE
GMMREG-ATTACH-REQ attach-type, READY-timer, STANDBY-timer 6.6.1.1 GMMREG-ATTACH-CNF PLMNs MT-caps, attach-type. 6.6.1.2
GMMREG-ATTACH-REJ cause 6.6.1.3
GMMREG-DETACH-REQ detach-type, power-off/normal-detach 6.6.1.4
GMMREG-DETACH-CNF detach-type 6.6.1.5
GMMREG-DETACH-IND detach-type 6.6.1.6
Example:
Service primitives
• 6.6.1.1 GMMREG-ATTACH-REQ
• MS initiates the GPRS and/or IMSI attach. GMM is requested to send an ATTACH REQUEST message to the network. The attachment is registration pending in the MS.
• 6.6.1.2 GMMREG-ATTACH-CNF
• The attach (either GPRS-attach or IMSI-attach or both) was successful. The network confirmed the attach, i.e.the ATTACH ACCEPT message was received by the MS. The LLC and RR sublayer will be informed by GMM about the TLLI to be used.
• 6.6.1.3 GMMREG-ATTACH-REJ
• The attach (either GPRS-attach or IMSI-attach or both) has failed. The network rejected the attach attempt, i.e. the
message ATTACH REJECT was received from the network.
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 21
Example:
Information exchange
• Attach request
EI Information Element Type/Reference Presence Format Length Protocol discriminator Protocol discriminator
10.2 M V 1/2
Skip indicator Skip indicator
10.3.1 M V ½
Attach request message identity Message type
10.4 M V 1
MS classmark MS classmark 4
10.5.5.12 M LV 4 - 6
Attach type Attach type
10.5.5.2
M V ½
GPRS ciphering key sequence number
Ciphering key sequence number 10.5.1.2
M V ½
DRX parameter DRX parameter
10.5.5.6
M V 2
Force to standby Force to standby
10.5.5.7 M V ½
Spare half octet Spare half octet
10.5.1.8 M V ½
P-TMSI or IMSI Mobile station identity
10.5.5.13 M LV 6 - 10
X MS Radio Access capability MS RA capability
10.5.5.12.a O TLV 5-12
Old P-TMSI signature P-TMSI signature
10.5.5.8 O TV 4
Old routing area identification Routing area identification 10.5.5.15
O TV 7
Requested READY timer value
Timer 10.5.5.16
O TV 2
Requested STANDBY timer value Timer
10.5.5.16 O TV 2
MS classmark MS classmark 1
10.5.1.5 O TV 2
Example:
Information exchange
• 9.5.1.0 MS Radio Access capability
• This IE may be included by the MS in order to provide its radio access capabilities.
• 9.5.1.1 Old P-TMSI signature
• This IE is included if a valid P-TMSI and P-TMSI signature are stored in the MS.
• 9.5.1.2 Old routing area identification
• This IE is included if the MS has stored the old RAI and an associated valid P-TMSI.
• 9.5.1.3 Requested READY timer value
• This IE may be included if the MS wants to indicate a preferred value for READY timer.
• 9.5.1.4 Requested STANDBY timer value
• This IE may be included if the MS wants to indicate a preferred value for STANDBY timer.
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 23
Example:
Information exchange
• Attach accept
EI Information Element Type/Reference Presence Format Length Protocol discriminator Protocol discriminator
10.2
M V 1/2
Skip indicator Skip indicator 10.3.1
M V 1/2
Attach accept message identity Message type 10.4
M V 1
Attach result Attach result
10.5.5.1
M V 1/2
Force to standby Force to standby 10.5.5.7
M V 1/2
Routing area identification Routing area identification 10.5.5.15
O TV 7
Periodic RA update timer Timer value 10.5.5.16
M V 1
P-TMSI signature P-TMSI signature 10.5.5.8
O TV 4
Negotiated DRX parameter DRX parameter 10.5.5.6
O TV 3
Negotiated READY timer value
Timer 10.5.5.16
O TV 2
Negotiated STANDBY timer value
Timer 10.5.5.16
O TV 2
Allocated P-TMSI Mobile station identity 10.5.5.13
O TLV 7
MS identity Mobile identity
10.5.1.4
O TLV 6 - 11
GMM cause GMM cause
10.5.5.14
O TV 2
Example:
Information exchange
• Sample information elements
• attach result
• routing area identifier
8 7 6 5 4 3 2 1
Routing Area Identification IEI octet 1
MCC digit 2 MCC digit 1 octet 2
1 1 1 1 MCC digit 3 octet 3
MNC digit 2 MNC digit 1 octet 4
LAC octet 5
LAC cont’d octet 6
RAC octet 7
8 7 6 5 4 3 2 1 Attach result
IEI
0 spare
Result of attach
octet 1
Result of attach (octet 1) Bits
3 2 1
0 0 1 GPRS only attached
0 1 1 Combined GPRS/IMSI attached All other values are reserved.
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 25
Example:
Information exchange
• Attach complete
EI Information Element Type/Reference Presence Format Length Protocol discriminator Protocol discriminator
10.2
M V 1/2
Skip indicator Skip indicator
10.3.1
M V 1/2
Attach complete message identity
Message type 10.4
M V 1
Force to standby Force to standby 10.5.5.7
M V 1/2
Spare half octet Spare half octet 10.5.1.8
M V 1/2
Example:
Information exchange
• Attach reject
EI Information Element Type/Reference Presence Format Length
Protocol discriminator Protocol discriminator 10.2
M V 1/2
Skip indicator Skip indicator 10.3.1
M V 1/2
Attach reject message identity Message type 10.4
M V 1
GMM cause GMM cause
10.5.5.14
M V 1
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 27
Example:
Exception cases
• If the attach request cannot be accepted by the network, an ATTACH REJECT message is transferred to the MS. The MS receiving the ATTACH REJECT message stops timer T3310 and takes one of the following actions depending upon the reject cause:
• # 3 (Illegal MS)
# 6 (Illegal ME)
# 7 (GPRS services not allowed)
• The MS shall set the GPRS update status to GU3 ROAMING NOT ALLOWED (and shall store it according to section 4.1.3.2.9) and shall delete any P-TMSI, P-TMSI signature, RAI and GPRS ciphering key sequence number. The SIM shall be considered as invalid until switching off or the SIM is removed. The new state is GMM-DEREGISTERED.
• # 11 (PLMN not allowed)
# 12 (Location area not allowed)
# 13 (Roaming not allowed in this location area)
Example:
Exception cases
• The MS shall delete any RAI, P-TMSI, P-TMSI signature and GPRS ciphering key sequence number stored, shall set the GPRS update status to GU3
ROAMING NOT ALLOWED (and shall store it according to section 4.1.3.2.9) and shall change to state GMM-DEREGISTERED.
• The MS shall store the LAI or the PLMN identity in the appropriate
forbidden list, i.e. in the “forbidden PLMN list” for cause #11, in the list of
“forbidden location areas for regional provision of service” for cause #12 or
in the list of “forbidden location areas for roaming” for cause #13. In case
cause #11 or #13 was received, the MS shall perform a PLMN selection
instead of a cell selection.
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 29
Example:
Abnormal cases
a) Access barred because of access class control
• The GPRS attach procedure shall not be started. The MS stays in the current serving cell and applies normal cell reselection process. The GPRS attach
procedure is started as soon as possible, i.e. when access is granted or because of a cell change.
b) Lower layer failure before the ATTACH ACCEPT or ATTACH REJECT message is received
• The procedure shall be aborted, the MS shall keep, if any, the stored P-TMSI, RAI, and GPRS ciphering key sequence number and shall proceed as described below.
c) T3310 time-out
• On the first expiry of the timer, the MS reset and restart timer T3310 and shall retransmit the ATTACH REQUEST message. This retransmission is repeated until the timer has expired four times, i.e. on the fiftth expiry of timer T3310, the GPRS attach procedure shall be aborted and the MS shall proceed as described below.
Example:
Abnormal cases
d) ATTACH REJECT, other causes than those treated in section 4.7.3.1.4 e) Change of cell into a new routing area
• If a cell change into a new routing area occurs before an ATTACH ACCEPT or ATTACH REJECT message has been received, the GPRS attach procedure shall be aborted and re-initiated immediately. If a routing area border is crossed when the ATTACH ACCEPT message is received but before an ATTACH
COMPLETE message is sent, the GPRS attach procedure shall be aborted and the routing area updating procedure shall be initiated. If a P-TMSI was allocated during the GPRS attach procedure, this P-TMSI shall be used in the routing area updating procedure. If a P-TMSI signature was allocated together with the P- TMSI during the GPRS attach procedure, this P-TMSI signature shall be used in the routing area updating procedure.
f) Power off
• If the MS is in state GMM-REGISTERED-INITIATED at power off, the GPRS detach procedure shall be performed.
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 31
Example:
Abnormal cases
g) Procedure collision
• If the MS receives a DETACH REQUEST message from the network in state GMM-REGISTERED-INITIATED, the GPRS detach procedure shall be progressed and the GPRS attach procedure shall be aborted. If the cause IE, in the DETACH REQUEST message, indicated a “reattach request”, the GPRS attach procedure shall be progressed and the DETACH REQUEST message shall be ignored.
Example:
State machine
• General state machine idle
attached
context active
attach
detach
activate context
deactivate context detach
mobility management
send/receive SMS
mobility management
send/receive SMS
send/receive data
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 33
Example:
State machine
• Simple state machine
IDLE
REGISTRA- TION PEND.
GMMREG- ATTACH-REQ
GMMREG-ATTACH-CFN GMMREG- ATTACH-REJ
GMMREG-DETACH-CFN
REGISTERED
GMMREG-DETACH -IND
GMMREG-DETACH -REQ (power off)
GMMREG-DETACH-REQ (not power off)
DE-
REGISTRA- TION PEND.
Example:
State machine at MS
NULL RA-UPDATING-
INITIATED
DEREGISTERED Enable
GPRS
DETACH requested (not power off)
REGISTERED
Any state
DEREGISTERED- INITIATED
ATTACH
request ATTACH rejected DETACH
requested (power off)
Network init. DETACH requested
Lower layer failure ATTACH accept RAU rejected
Network init. DETACH implicit DETACHd DETACH accepted Lower layer failure
RAU requested RAU accepted RAU failed
REGISTERED- INITIATED Disable
GPRS
Tik-109/110.300 Fall 2000 © Hannu H. Kari Page 35
Example:
State machine at network
DE-REGISTEREDGMM-
- Network initiated DETACH requested
REGISTEREDGMM-
GMM-COMMON- PROCEDURE-INITIATED
GMM- DE-REGISTERED-
INITIATED
- COMMON procedure failed
- Lower layer failure - ATTACH procedure
successful
- MS initiated DETACH requested - RAU rejected
- Iimplicit DETACH
- DETACH accepted - Lower layer failure
- COMMON procedure successful
- ATTACH procedure successful
- COMMON procedure requested
- COMMON procedure requested