Jerome Martin wrote:
You can also
send a "pending" reply if you're already processing one
INVITE
and get another in the meantime.
Yes, the pending idea is a way to improve basic delaying.
But the thing is that ACK and INVITE are separate transactions, so
testing if the first INVITE transaction has ended is not enough, we also
need to look for the subsequent ACK transaction.
I wonder how this can be handled with TCP. When using UDP, the reINVITE
can be dropped, and will be resent by the client. But what about TCP?
Openser must not drop the INVITE as it won't be retransmitted. Delaying
the reINVITE also means that this thread is blocked which may cause DoS
attacks (it can be exploited by sending INVITE and reINVITEs without ACK).
regards
klaus
--
Klaus Darilion
nic.at