[SIPForum-discussion] RES: Does SIP support SSL, new protocols, early media, etc?

Rodrigo Pimenta Carvalho pimenta at inatel.br
Thu Jun 11 13:37:44 UTC 2015


Hi Dauren.

Thank you very much for the good explanations!  It is very useful for me.
Some others doubts rose now. As I'm forming a starting knowledge base, to go ahead on my own, could you see my new questions inline, please? 

________________________________________
De: Dauren Zhumagaliev [zdaureen at gmail.com]
Enviado: quinta-feira, 11 de junho de 2015 8:04
Para: Rodrigo Pimenta Carvalho
Assunto: [SIPForum-discussion] Does SIP support SSL, new protocols, early media, etc?

Hi Rodrigo,

Please check my answers to your question. I hope this info will be useful for you:

1 - In my project a SIP client will call others SIP clients at same time, i.e., several SIP clients will receive SIP INVITE, like calling for a conference. But, when one callee answer the call, all the others must stop ringing immediate. The objective is let just one SIP client answer the call. it will be the first that will reply. Can the SIP protocol help me with this idea? Is SIP protocol prepared for such idea, in terms of its messages?
>> In principal, your scenario is possible. Its realization depends only on SIP server or SIP client capabilities. If you "protect interests" of callee, then callee users could be combined into special group (on our SIP server it is Parallel Ringing Group or Multi Device User). SIP server will send INVITE to all callee users in the group and establish dialog with user who answered first. All other INVITE transaction will be canceled with CANCEL message. If you "protect interests" of caller, then you must be familiar with source code of SIP client. Your SIP client must send CANCEL for all sent  INVITEs except answered immediately in special circumstance named, for example, "special group call".

[RODRIGO] >> OK. I intend to use Asterisk as a SIP server. Someone told me that this idea can be programmed in an Asterisk dial plan.

2 - In my project, a callee must receive and view the video from the caller, even before answering the call (early media). Can SIP help me with this requirement? How?

>> Early media usually goes in backward direction from called party to calling party, but nobody prohibited to send it in forward direction. As i suppose, three conditions must be met:
a) Caller terminal must be able to send Video stream as early media  to the address received in Connection Information of 183 Progress SDP or 180 Ringing SDP from Callee.
b) Callee terminal must be able to receive Video stream as early media.
c) Media Proxies (if presented) between Callee and Caller must pass this early media in forward direction.

[RODRIGO]>> According to some observations that I have done with WireShark (protocol sniffer), when a softphone receives a SIP INVITE, it generally replies with 180 Ringing, not 183 Progress. Here, I have some doubts:
                            A) When a softphone replies with 180 Ringing SIP message, it always will contain the SDP in its body? If not, is my responsibility to modify the softphone code and put the SDP information into the SIP message? If SDP is always present in 180 Ringing, it will always carry information about video, as the address where to receive Video stream? If  I want to make my softphone replies with 183 Progress, not 180 Ringing, is my responsibility to modify the softphone code to substitute 180 by 183?
                           B) What do you exactly mean with "Callee terminal must be able to receive Video stream as early media". That is, do you mean that the callee, if a commercial softphone, will have to be modified to show the video even before the call be accepted, or is it possible to find softphone that already do it for me?


3 - I know that SIP can be used together SDP. And I guess that SIP can be used with any another protocol. So, let's suppose that I have created an new protocol based on Json. This protocol will carry information about some IP devices, like IP addresses and port. Can I send SIP messages with a new Json based protocol together? How can SIP help me with this idea?

>> As far as i know, standard SIP (RFC3261) packet is not designed to carry any protocols except SDP, but you can add your specific data as special proprietary header or body field. Usually SIP servers does not rejects requests with unknown fields. So, if your purpose is to carry some information from caller to callee, than it will works.  If you want to modify something in the session with your additional information, then, at least your SIP server must recognize your additional field.

4 - I need send/receive SIP messages encrypted, to provide secure to my SIP clients. In this case, what should I do to provide secure SIP messages using SSL or TLS? Does SIP protocol support this idea in some way? How?

>> SIP protocol works on application layer. So it could be encrypted and protected with TLS. Your SIP server and client must support TLS/SSL. Please check attached scheme of encrypted SIP session between client and server. Basic actions during TLS configuring are:
a) create certificate request on server
b) send request to one of CA
c) import signed certificate to server
d) install/import certificate from server to client.
You can use selfsigned certificate, but some application works only with trusted CA.

Regards,

Dauren













More information about the discussion mailing list