Signalling and Encoding
The SIP Trunk Service provides SIP signalling as a method for Communication Providers to inter-connect with the VoIP network, supporting VoIP to VoIP calling as well as calls to/from the PSTN.
The SIP Trunk Service supports the transport of SIP signalling messages using UDP. SIP messages sent using TCP(except for MS Lync), TLS, SCTP and IPSEC are not supported at present.
SIP V2 is supported between the SBC and the customer CPE. The SIP standard is documented in the Internet Engineering Task Force (IETF) RFC 3261.
Please note that this service does not support H.323, SIP-I, SIP-D and SIP-T.
Format of the SIP INVITE Field
The SIP header requirements in the INVITE packets originated from the CPE should be set as follows:
- Request URI must contain the B-number followed by the assigned Gamma SIP gateway IP address:
- INVITE sip:01618700000@”IP Address”;user=phone SIP/2.0
- The FROM header must contain your public facing IP address and originating CLI:
FROM: <sip:+441618777148@”IP Address”>; tag=3528194925-554920
- The TO header must contain the assigned Gamma SIP gateway IP address and the B-number*:*
- To: <sip:01618700000@”IP Address”;user=phone>
- For network security reasons, the source IP of any RTP media streams must match the public IP address provided in the SDP payload. Media streams with source IP addresses not provided in SDP payload will be discarded, resulting in loss of audio.
Traffic on the following ports must be forwarded through relevant routers and firewalls on the customer premises to allow access to the Gamma SIP Trunking Network:
- UDP Port 5060 egress/ingress
- UDP all ports between 6000 - 40000 egress/ingress
- For ingress calls the INVITE Request Line must contain a SIP URI.
- For egress calls from Gamma to the customer the INVITE Request Line will contain a SIP URI.
Example of the initial SIP INVITE
The SIP gateway here is 88.215.61.195 – this will be stated in the SIP Trunking order confirmation.
The CPE IP address is 88.215.25.5 – the public IP address with which Gamma’s SBC communicates. This address is defined in The SIP Trunk Service order, and can be updated via the Gamma Portal. The fields highlighted below must contain the CPE IP address. If the PBX is operating behind a NAT these addresses will need to be NAT’ed by a SIP aware device e.g. an SBC, a router with an ALG, the PBX itself via STUN.
SIP Message
INVITE sip:01412485779@88.215.61.195 SIP/2.0
Via: SIP/2.0/UDP 88.215.25.5:5080;branch=z9hG4bK-a8b33135
From: "+441414040025" <sip:+441414040025@88.215.61.195>;tag=9fa8f5c74acc1965o0
To: <sip:01412485779@88.215.61.195>
Call-ID: 9899ceef-2d38d25d@192.168.1.8
CSeq: 101 INVITE
Max-Forwards: 70
Contact: "+441414040025" sip:+441414040025@88.215.25.5:5080
Expires: 240
User-Agent: Linksys/SPA942-6.1.5(a)
Content-Length: 250
Allow: ACK, BYE, CANCEL, INFO, INVITE, NOTIFY, OPTIONS, PRACK, REFER
Supported: 100rel, replaces
Content-Type: application/sdp
SDP
v=0
o=- 14849 14849 IN IP4 192.168.1.8
s=-
c=IN IP4 88.215.25.5
t=0 0
m=audio 7776 RTP/AVP 8 18 101
a=rtpmap:8 PCMA/8000
a=rtpmap:18 G729a/8000
a=fmtp:18 annexb=no
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-15
a=ptime:20
a=sendrecv
Explanation:
The Via header (the topmost via if there are multiple) is used in conjunction with the layer 3 IP address for authentication. If the address is unknown to our SBC (e.g. LAN address) it will respond 403: Forbidden.
The Contact header advises our SBC where to respond to. If this is a LAN address, or some other address which you’re not expecting traffic on, the 2-way dialog will be disrupted and calls will not setup correctly.
The c= parameter in the SDP (connection address) is the address to which your user agent is requesting media (RTP) is sent. Again, this needs to be reachable by the SBC. If this is not NAT’ed, and you send a LAN IP address, the call may setup OK but you will get one way speech (with the remote party not heard by the SIP Trunking user)