Para poder entender el protocolo IAX vamos
a ver un ejemplo del flujo de datos de una comunicación
IAX2:

Una llamada IAX o IAX2 tiene tres fases:
A) Establecimiento de la llamada
El terminal A inicia una conexión y manda un mensaje
"new". El terminal llamado responde con un "accept"
y el llamante le responde con un "Ack". A continuación
el terminal llamado da las señales de "ringing"
y el llamante contesta con un "ack" para confirmar
la recepción del mensaje. Por último, el llamado
acepta la llamada con un "answer" y el llamante confirma
ese mensaje.
B) Flujo de datos o flujo de audio
Se mandan los frames M y F en ambos sentidos con la información
vocal. Los frames M son mini-frames que contienen solo una cabecera
de 4 bytes para reducir el uso en el ancho de banda. Los frames
F son frames completos que incluyen información de sincronización.
Es importante volver a resaltar que en IAX este flujo utiliza
el mismo protocolo UDP que usan los mensajes de señalización
evitando problemas de NAT.
C) Liberación de la llamada o desconexión
La liberación de la conexión es tan sencillo como
enviar un mensaje de "hangup" y confirmar dicho mensaje. |