Question

J'ai développé une pile SIP pour mon entreprise. Il est loin d'être parfait et il manque beaucoup de choses des RFC, mais cela est fonctionnel et fonctionne bien avec beaucoup de téléphones souples testés et d'autres matériels et logiciels SIP.

Ma question est la suivante: quelle part de logiciel SIP peut vraiment dire qu'ils sont entièrement conformes à SIP (des téléphones souples que vous pouvez trouver sur Internet)?

Était-ce utile?

La solution

Bonne question.

Pour commencer avec beaucoup de piles SIP, ne parvient pas à implémenter TCP et ne sont donc pas conformes, à partir de la section 18 RFC3261:

Tous les éléments SIP doivent implémenter UDP et TCP. Les éléments SIP peuvent implémenter d'autres protocoles.

L'astérisque en est un bon exemple. Il prétend souvent être conforme au RFC3261, mais le support TCP n'a été que récemment inclus et il y a encore beaucoup de bugs avec. Il y a de meilleurs produits SIP, tels que ceux dérivés SER, qui, je soupçonne que sont conformes au RFC3261, je n'ai jamais en audité aucun, mais SER avait la réputation d'être le principal serveur SIP.

L'autre chose à garder à l'esprit est que la "norme SIP" comprend désormais 8 RFC supplémentaires qui ont mis à jour ou obsolète le RFC3261 d'origine. De plus, il y a un multitude d'autres RFC Pour des extensions et des correctifs pour des choses comme NAT. Je pense qu'il serait sûr de dire qu'il est peu probable qu'il y ait une pile SIP qui est conforme à tous les RFC SIP.

Moi aussi, j'ai écrit une pile SIP et j'ai suivi le même chemin que vous; Le faire fonctionner avec les appareils avec lesquels vous pouvez facilement tester, puis ajouter les parties les plus ésotériques de la norme au fil du temps ou au besoin. Je suis même allé jusqu'à commencer Documenter quel SIP RFCS Je fais un effort pour mettre en œuvre.

Autres conseils

J'avoue aussi écrire ma propre pile SIP.

La Test d'interopérabilité SIP Les événements génèrent beaucoup de données d'interopérations. Par exemple, à partir de SIPIT 25 l'année dernière, nous le trouvons:

Implementations using each transport for SIP messages:
   UDP   98% 
   TCP   83%
   TLS   38% server-auth, 24% mutual-auth
   SCTP   7%
   DTLS   2%

36% of the implementations supported IPv6.

Deux points de terminaison SIP peuvent être conformes à la SIP et ne peuvent toujours pas interférer. Donc, "entièrement conforme à SIP" est, hélas, pas assez pour que vous puissiez dire "fonctionnera" sans faire de tests interopratifs. Cependant, il peut être suffisant pour vous permettre de couper certains de la sélection initiale.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top