[Asterisk-Dev] IAX2 RFC and retries.

Derek Smithies derek at indranet.co.nz
Fri May 20 16:16:04 MST 2005


Steve,
 this confusion can be summarized as::

On one hand, we have the comment in the source code:
#define AST_IAX_COMMAND_VNAK     18      /* If we receive voice  
                        before valid first voice frame, send this */

On the other hand, we have the searches of the source code you report:

> line 6787, if it gets any kind of full frame, before the preceeding  
> full frame.
> line 7719: if it gets a mini frame before the previous full voice  
> frame (therefore, indicating that a full frame was lost or not  
> received out of order)
> line 7741: ditto, I think
> line 6652: same thing for trunking.
> 
> Therefore, I conclude, that VNAK is designed to request  
> retransmission of _any_ kind of lost frame, presumably to speed up  
> retransmissions so they may be sent earlier than the retransmit timer.

I do agree with you, VNAK does seem to be the 'catch all' for out of 
sequence issues.

Now you see why I hate the argument that one can just RTFC.
The code is (on first reading) ambiguous. 


===============================================
Conclusion: writing the spec has helped flush out an inconsistancy in the 
code. Can you change the comment on VNAK above ? Please ???

Derek.
-- 
Derek Smithies Ph.D.                         
IndraNet Technologies Ltd.                
Email: derek at indranet.co.nz         
ph +64 3 365 6485                          
Web: http://www.indranet-technologies.com/  




More information about the asterisk-dev mailing list