Q.931




ITU-T Recommendation Q.931 is the ITU standard ISDN connection control signalling protocol, forming part of Digital Subscriber Signalling System No. 1.[1] Unlike connectionless systems like UDP, ISDN is connection oriented and uses explicit signalling to manage call state: Q.931. Q.931 typically does not carry user data. Q.931 does not have a direct equivalent in the Internet Protocol stack, but can be compared to SIP. Q.931 does not provide flow control or perform retransmission, since the underlying layers are assumed to be reliable and the circuit-oriented nature of ISDN allocates bandwidth in fixed increments of 64 kbit/s. Amongst other things, Q.931 manages connection setup and breakdown. Like TCP, Q.931 documents both the protocol itself and a protocol state machine.


Q.931 was designed for ISDN call establishment, maintenance, and release of network connections between two DTEs on the ISDN D channel. Q.931 has more recently been used as part of the VoIP H.323 protocol stack (see H.225.0) and in modified form in some mobile phone transmission systems[2] and in ATM.


A Q.931 frame contains the following elements:



  • Protocol discriminator (PD) – Specifies which signaling protocol is used for the connection (e.g. PD=8 for DSS1)

  • Call reference value (CR) – Addresses different connections which can exist simultaneously. The value is valid only during the actual time period of the connection

  • Message type (MT) – Specifies the type of a layer 3 message out of the Q.931-defined Message type set for call control (e.g. SETUP). There are messages defined for the call setup, the call release and the control of call features.


  • Information elements (IE) – Specify further information which is associated to the actual message. An IE contains the IE name (e.g. bearer capability), their length and a variable field of contents.




Contents






  • 1 Message examples


  • 2 Disconnect causes


  • 3 Q.2931


  • 4 References





Message examples


Messages typically control or report the status of connections. For example:



  • SETUP (indicating the establishment of a connection)

  • CALL PROCEEDING (indicating that the call is being processed by the destination terminal)

  • ALERTING (tells the calling party that the destination terminal is ringing)

  • CONNECT (sent back to the calling party indicating that the intended destination has answered the call)

  • DISCONNECT (sent to indicate a request to terminate the connection, by the end that seeks to terminate)

  • RELEASE (sent in response to the disconnect request indicating that the call is to be terminated).

  • RELEASE COMPLETE (sent by the receiver of the release to complete the handshake).



Disconnect causes












































































































































































































































































































































































































































Hex
Decimal
Cause
0x1
1
Unallocated or unassigned number
0x2
2
No route to specified transit network (Transit Network Identity)
0x3
3
No route to destination
0x4
4
Send special information tone
0x5
5
Misdialled trunk prefix
0x6
6
Channel unacceptable
0x7
7
Call awarded and being delivered in an established channel
0x8
8
Prefix 0 dialed but not allowed
0x9
9
Prefix 1 dialed but not allowed
0xA
10
Prefix 1 not dialed but required
0xB
11
More digits received than allowed, call is proceeding
0x10
16
Normal call clearing
0x11
17
User busy
0x12
18
No user responding
0x13
19
T.301 expired: – User Alerted, No answer from user
0x15
21
Call rejected
0x16
22
Number changed to number in diagnostic field.
0x17
23
Reverse charging rejected
0x18
24
Call suspended
0x19
25
Call resumed
0x1A
26
Non-selected user clearing
0x1B
27
Destination out of order
0x1C
28
Invalid number format or incomplete address
0x1D
29
EKTS facility rejected by network
0x1E
30
Response to STATUS ENQUIRY
0x1F
31
Normal, unspecified
0x21
33
Circuit out of order
0x22
34
No circuit/channel available
0x23
35
Destination unattainable
0x24
36
Out of order
0x25
37
Degraded service
0x26
38
Network out of order
0x27
39
Transit delay range cannot be achieved
0x28
40
Throughput range cannot be achieved
0x29
41
Temporary failure
0x2A
42
Switching equipment congestion
0x2B
43
Access information discarded
0x2C
44
Requested circuit channel not available
0x2D
45
Preempted
0x2E
46
Precedence call blocked
0x2F
47
Resource unavailable, unspecified
0x31
49
Quality of service unavailable
0x32
50
Requested facility not subscribed
0x33
51
Reverse charging not allowed
0x34
52
Outgoing calls barred
0x35
53
Outgoing calls barred within CUG
0x36
54
Incoming calls barred
0x37
55
Incoming calls barred within CUG
0x38
56
Call waiting not subscribed
0x39
57
Bearer capability not authorized
0x3A
58
Bearer capability not presently available
0x3F
63
Service or option not available, unspecified
0x41
65
Bearer service not implemented
0x42
66
Channel type not implemented
0x43
67
Transit network selection not implemented
0x44
68
Message not implemented
0x45
69
Requested facility not implemented
0x46
70
Only restricted digital information bearer capability is available
0x4F
79
Service or option not implemented, unspecified
0x51
81
Invalid call reference value
0x52
82
Identified channel does not exist
0x53
83
A suspended call exists, but this call identity does not
0x54
84
Call identity in use
0x55
85
No call suspended
0x56
86
Call having the requested call identity has been cleared
0x57
87
Called user not member of CUG
0x58
88
Incompatible destination
0x59
89
Non-existent abbreviated address entry
0x5A
90
Destination address missing, and direct call not subscribed
0x5B
91
Invalid transit network selection (national use)
0x5C
92
Invalid facility parameter 93 Mandatory information element is missing
0x5D
93
Message type non-existent or not implemented
0x5F
95
Invalid message, unspecified
0x60
96
Mandatory information element is missing
0x61
97
Message type non-existent or not implemented
0x62
98
Message not compatible with call state or message type non-existent or not implemented
0x63
99
Information element nonexistent or not implemented
0x64
100
Invalid information element contents
0x65
101
Message not compatible with call state
0x66
102
Recovery on timer expiry
0x67
103
Parameter non-existent or not implemented – passed on
0x6F
111
Protocol error, unspecified
0x7F
127
Internetworking, unspecified
0x80+
128 or

higher


Proprietary diagnostic code (not necessarily bad). Typically used to pass proprietary control or maintenance messages between multiplexers.


Q.2931


Q.2931[3] is a modified and extended variant of Q.931 for use on "B-ISDN" or ATM networks. Q.2931 fulfils a purpose within BISDN similar to that of Q.931 in ISDN. Whilst ISDN allocates bandwidth in fixed 64k increments, B-ISDN/ATM incorporates an elaborate traffic management scheme, allowing precise specification of virtual circuit traffic parameters such as peak and mean bandwidth, jitter, cell loss ratio and so on. In order that ATM switches can manage bandwidth allocation in the network, encodings to express these parameters were added in Q.2931.[4]


Unlike Q.931, although Q.2931 was implemented by many switch manufacturers, it was never widely deployed.



References





  1. ^ ITU-T Recommendation Q.931 Digital subscriber Signalling System No. 1: ISDN user-network interface layer 3 specification for basic call control


  2. ^ such as in GSM, where it is used for circuit switched call control between UE and MSC


  3. ^ ITU-T Recommendation Q.2931 Digital Subscriber Signalling System No. 2 – User-Network Interface (UNI) layer 3 specification for basic call/connection control


  4. ^ for example, see the Extended Quality of Service or eQoS Information Element, which can indicate many quality of service parameters'









這個網誌中的熱門文章

Xamarin.form Move up view when keyboard appear

Post-Redirect-Get with Spring WebFlux and Thymeleaf

Anylogic : not able to use stopDelay()