Common SIP VoIP configurations
This section describes some common SIP VoIP configurations and simplified SIP dialogs for these configurations. This section also shows some examples of how adding a FortiGate unit affects SIP processing.
Peer to peer configuration
In the peer to peer configuration shown below, two SIP phones (in the example, FortiFones) communicate directly with each other. The phones send SIP request and response messages back and forth between each other to establish the SIP session.
SIP peer to peer configuration
- Phone A dials Phone B by sending an INVITE request
- Phone B is notified of incoming call – phone rings SIP Phone A (PhoneA@10.31.101.20)
- RTP Media session opens when Phone B answers SIP Phone B (PhoneB@10.31.101.30)
Peer to peer configurations are not very common because they require the SIP phones to keep track of the names and addresses of all of the other SIP phones that they can communicate with. In most cases a SIP proxy or re- direct server maintains addresses of a large number of SIP phones and a SIP phone starts a call by contacting the SIP proxy server.
SIP proxy server configuration
A SIP proxy server act as intermediary between SIP phones and between SIP phones (for example, two FortiFones) and other SIP servers. As shown below, SIP phones send request and response messages the SIP proxy server. The proxy server forwards the messages to other clients or to other SIP proxy servers. Proxy servers can hide SIP phones by proxying the signaling messages. To the other users on the VoIP network, the signaling invitations look as if they come from the SIP proxy server.
SIP in proxy mode
SIP Proxy Server
- The proxy server looks up the SIP address of Phone B and forwards the INVITE request to Phone B
- Phone A dials Phone B by sending an INVITE request to the SIP proxy server SIP phones register with SIP proxy server
- RTP Media session opens when Phone B answers
- Phone B is notified of incoming call by proxy server – phone rings
SIP Phone A SIP Phone B
(PhoneA@10.31.101.20) (PhoneB@10.31.101.30)
A common SIP configuration would include multiple networks of SIP phones. Each of the networks would have its own SIP server. Each SIP server would proxy the communication between phones on its own network and between phones in different networks.
SIP redirect server configuration
A SIP redirect server accepts SIP requests, maps the addresses in the request into zero or more new addresses and returns those addresses to the client. The redirect server does not initiate SIP requests or accept calls. As shown below, SIP clients send INVITE requests to the redirect server, which then looks up the destination address. The redirect server returns the destination address to the client. The client uses this address to send the INVITE request directly to the destination SIP client.
SIP in redirect model
SIP Redirect Server
The redirect server looks up the SIP address of Phone B and sends Phone B’s address back to Phone A
- Phone A dials Phone B by sending an INVITE request to the redirect server
- SIP phones register with SIP redirect server
- Phone A sends the INVITE request to Phone B
- RTP Media session opens when Phone B answers
- Phone B is otified of incoming call by Phone A – phone rings
n |
SIP Phone A SIP Phone B
(PhoneA@10.31.101.20) (PhoneB@10.31.101.30)
SIP registrar configuration
A SIP registrar accepts SIP REGISTER requests from SIP phones for the purpose of updating a location database with this contact information. This database can then become a SIP location service that can be used by SIP proxy severs and redirect servers to locate SIP clients. As shown below, SIP clients send REGISTER requests to the SIP registrar.
SIP registrar and proxy servers
SIP Proxy Server
Phone A dials Phone B
by sending an INVITE request to the SIP proxy server
The SIP proxy server looks up Phone A and Phone B on the registrar
Phone B is notified of incoming call by proxy server – phone rings
RTP Media session opens when Phone B answers
SIP Phone A SIP Phone B
SIP phones register with the SIP registrar