El Jueves, 19 de Febrero de 2009, Alex Hermann escribió:
On Wednesday 18 February 2009 16:47:36 Ovidiu Sas wrote:
The issue here is that if you send in-dialog requests from a proxy, you break the CSeq for all the subsequent in-dialog requests sent by endpoints.
Isn't the whole point of the dialog module that it keeps track of the dialog state (including the CSeq)?. It could increase/replace it in passing requests when necessary.
It's not so easy. dialog module just takes in account one dialog while an INVITE would generate various early-dialogs. In one of those early-dialog there could be an in-dialog request (INFO, PRACK...) so the CSeq must be incremeted *just* for that early dialog. This would totally fail with the current dialog module implementation.
Also, if there is a PRACK the proxy should also handle the RSeq header.
In conclusion, a proxy CANNOT generate in-dialog requests safely. It could work just in a few escenarios.