Sending large SIP packets over UDP?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Benny

Thanks for the detailed response on my question. It is highly appriciated.

I came up with one final idea that it would be great if you could give 
thumps up or down on if I am missing some special cases.

I am only interested in having minimal delay for the INVITE, the rest I 
do not care about, all other messages can very well be TCP.

So my proposal was to set transport=tcp for the outgoing proxy and then 
in pjsua_make_call(..) when assigning the route set I will know 
beforhand if this INVITE is to be sent on tcp or udp. Ofcourse I will 
not know the exact size in bytes but I will have a good idea if it is 
<1300 bytes.

What I imagine doing is modify the route-set for the account under these 
special conditions and either remove it completly (less good, require 
dns lookup?) or make a temp route-set as a copy of the original one and 
just remove the transport=tcp parameter making this dialog use the same 
route-set but UDP instead of the default TCP if the estimation of the 
packet size is <1300.

I tested just to remove the:
f (!pj_list_empty(&acc->route_set))
        pjsip_dlg_set_route_set(dlg, &acc->route_set);

all together and it appears to work ok. Registration etc is TCP and the 
dialog is running UDP. The next step would be making a clone of the 
acc->route_set and removing the transport=tcp.

This seems like a pretty simple solution for my needs. Do you think I 
miss something vital in taking this approach?

Thanks

Johan





[Index of Archives]     [Asterisk Users]     [Asterisk App Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [Linux API]
  Powered by Linux