Menu

#14 enhanced AUTH feature

closed
nobody
None
5
2006-10-16
2006-10-06
bbyrd74
No

The current version of SIPp cannot auth multiple
registrations (one for each unique user) due to it
incrementing the nonce count, even though the dialog is
a new dialog.

I have the need to test capacity and performance of a
registrar that can handle 100000 configured and active
accounts. I have created 100000 accounts in the registrar.

I have also created a CSV file with each individual
username and auth password field.

I am using a simple .xml file that is used for each
auth attempt (register, 401, ack, register, 200)

This test works fine for "-m 1", but as soon as the
second account is tried to be authenticated, the
registrar under test sends back another 401 because
SIPP used nc=00000002

But since this was a completely new user/dialog/callID,
the nonce should have been nc=00000001

Will this be an option for the future?

Discussion

  • Olivier Jacques

    Olivier Jacques - 2006-10-16

    Logged In: YES
    user_id=999021

    As cnonce is random, I agree that nc should not be
    incremented as there is very little chance that cnonce will
    be the same twice (and will be an issue anyway).
    So, I have removed the incrementation of nc - fixed in rev
    55 (sipp.2006-10-16).

     
  • Olivier Jacques

    Olivier Jacques - 2006-10-16
    • status: open --> closed
     
  • bbyrd74

    bbyrd74 - 2006-10-16

    Logged In: YES
    user_id=1614898

    Perhaps it would be best to put in logic to select whether
    or not to increase the NC at the testers discretion.

    Sometimes a test would require the NC to increment
    (reregistrations). Sometimes a test would require it to not
    be incremented (different users registering one after another)

    So maybe we need the NC to only increment per transaction of
    each unique users dialogs?

     
  • Olivier Jacques

    Olivier Jacques - 2006-10-16

    Logged In: YES
    user_id=999021

    According to RFC 2617,
    " nonce-count
    This MUST be specified if a qop directive is sent (see
    above), and MUST NOT be specified if the server did not send
    a qop directive in the WWW-Authenticate header field. The
    nc-value is the hexadecimal count of the number of requests
    (including the current request) that the client has sent
    with the nonce value in this request. For example, in the
    first request sent in response to a given nonce value, the
    client sends "nc=00000001". The purpose of this directive
    is to allow the server to detect request replays by
    maintaining its own copy of this count - if the same c-value
    is seen twice, then the request is a replay. See the
    description below of the construction of the request-digest
    value."
    My understanding is that the nc is per nonce. Today, nonce
    is generated randomly (rand()) by SIPp and not kept in any
    context.
    Do you feel this should change? If yes, would you be willing
    to provide a patch?

     

Log in to post a comment.