Thursday, April 28, 2011

Fast Start vs Slow Start

 Fast Start

In 'call start fast' a fastStart element is added to the H.225 setup indicating which codec, IP address and port to use for RTP.
In  'fast start' mode, the transmitted H.225 SETUP message is a lot larger (the more suggested codecs, the larger).

Fast start allows for H323 media connections to be started at the beginning of a call.  This is helpful for ringback scenarios, and also reduces the amount of time calls take to establish media. H245 is still negotiated later, but the actual media can be done earlier through H225 messages.

Gateways do fast start by default

### Procedure to enable fast start ###

voice service voip
call start fast

### Sample debug output in Fast start ###

330011: *Apr 10 09:02:07.509: ISDN Se0/1/0:15 Q931: Sending SETUP  callref = 0x012B callID = 0x80B3 switch = primary-net5 interface = User
330012: *Apr 10 09:02:07.513: ISDN Se0/1/0:15 Q931: TX -> SETUP pd = 8  callref = 0x012B
        Bearer Capability i = 0x8090A3
                Standard = CCITT
                Transfer Capability = Speech
                Transfer Mode = Circuit
                Transfer Rate = 64 kbit/s
        Channel ID i = 0xA98381
                Exclusive, Channel 1
        Calling Party Number i = 0x0081, '3019'
                Plan:Unknown, Type:Unknown
        Called Party Number i = 0x80, '8001'
                Plan:Unknown, Type:Unknown
330013: *Apr 10 09:02:07.529: ISDN Se0/1/0:15 Q931: RX <- CALL_PROC pd = 8  callref = 0x812B
        Channel ID i = 0xA98381
                Exclusive, Channel 1
330014: *Apr 10 09:02:07.597: ISDN Se0/1/0:15 Q931: RX <- ALERTING pd = 8  callref = 0x812B
330015: *Apr 10 09:02:09.229: ISDN Se0/1/0:15 Q931: RX <- CONNECT pd = 8  callref = 0x812B
330016: *Apr 10 09:02:09.233: %ISDN-6-CONNECT: Interface Serial0/1/0:0 is now connected to 8001 N/A
330017: *Apr 10 09:02:09.233: ISDN Se0/1/0:15 Q931: TX -> CONNECT_ACK pd = 8  callref = 0x012B

Slow Start

In 'slow start' there are implementations that wait until after the CONNECT to negotiate IP addresses, ports and codecs. In 'slow start' mode a lot more H.245 messages are exchanged over a (possible) separate TCP connection.

Slow start is the older method, and requires a full h245 exchange before the media is negotiated.  H245 is fully responsible for setting this up, and takes more RTT to set up than fast start.

### Procedure to enable slow start ###

voice service voip
call start slow

### Sample debug output in Slow start ###
TX -> SETUP pd = 8 callref = 0x04

 Bearer Capability i = 0x8890
 Channel ID i = 0x83
 Called Party Number i = 0x80, `415555121202'

RX <- CALL_PROC pd = 8 callref = 0x84
 Channel ID i = 0x89
RX <- CONNECT pd = 8 callref = 0x84
TX -> CONNECT_ACK pd = 8 callref = 0x04....

### Verify the faststart or slow start

check your configuration using "show call active voice"


  1. H225: Call Control
    H245: Media Control

  2. "H245 is still negotiated later" can you please explain on this