[OpenSIPS-Users] accounting and strange scenarios

Stanisław Pitucha viraptor at gmail.com
Wed Sep 1 15:43:21 CEST 2010


Hi all,

I've got 2 situations where opensips doesn't store the `acc` info
properly (imo), for some reason.
The first case is a bit complicated (best viewed with your favourite
monospace font):

--->8---
A       Proxy       B
INV->
      <-100-INV
        INV->
                  <-100-INV
                  <-180-INV
      <-180-INV
                  <-200-INV
      <-200-INV
CANCEL->
      <-200-CAN
ACK-INV->
BYE->
        BYE->
        ACK-INV->
        CANCEL->
                  <-200-CAN
                  <-487-BYE
      <-487-BYE
--->8---

So there are are lots of packet reorderings and on top of that, The
cancel seems to be sent out before 200(INVITE) is received by A-side.
This leaves me with accepted INVITE and no BYE (because BYE was
rejected) in the acc table. CANCEL is not accounted at all.

The second case a bit similar:

--->8---
A       Proxy       B
INV->
      <-100-INV
        INV->
                  <-100-INV
                  <-180-INV
      <-180-INV
                  <-200-INV
      <-200-INV
ACK-INV->
        ACK-INV->
BYE->
                  <-BYE
        BYE->
      <-BYE
200-BYE->
                  <-481-BYE
        200-BYE->
--->8---

The accepted BYE is not in the `acc` table either for some reason. I'm
left with INVITE only.

Are those opensips-acc bugs? Do you know some more clever way to deal
with accounting in this case?

Regards,
Stan



More information about the Users mailing list