My comments on draft-ietf-bmwg-sip-bench-meth-09

William Cerveny <[email protected]>
Newsgroups gmane.ietf.bmwg
Message-ID <[email protected]>
Below are my high level comments on draft-ietf-bmwg-sip-bench-meth-09
denoted by /* comment */ ; I'm sending more detailed (mostly grammatical
comments) directly to the authors. I've identified the section and
general line number in which the comment is made.

Of note, I had trouble following the variables in the pseudocode, but I
may not have been following close enough attention to the code.

Bill Cerveny

<begin comments on draft-ietf-bmwg-sip-bench-meth-09>

desktop-10-36:scratch wcerveny$ cat grep-output-meth-2014-04-17.txt
1. Abstract:

30-   objective comparison of the capacity of SIP devices.  Test setup
31-   parameters and a methodology are necessary because SIP allows a
wide
32-   range of configuration and operational conditions that can
influence
33:/* In my opinion, sentence beginning with "A standard terminology
..."
34:   is an assumed and I'm not sure it should be in the abstract */
35-   performance benchmark measurements.  A standard terminology and
36-   methodology will ensure that benchmarks have consistent definition
37-   and were obtained following the same procedures.
--
2. Introduction:
--
200-   only.
201-
202-   The device-under-test (DUT) is a SIP server, which may be any SIP
203:/* Capitalization in "Benchmarks can be ..." is inconsistant */
204-   conforming [RFC3261] device.  Benchmarks can be obtained and
compared
205-   for different types of devices such as SIP Proxy Server, Session
206-   Border Controllers (SBC), SIP registrars and SIP proxy server
paired
--
--
208-
209-   The test cases provide metrics for benchmarking the maximum 'SIP
210-   Registration Rate' and maximum 'SIP Session Establishment Rate'
that
211:/* Is "extended period" defined? */
212-   the DUT can sustain over an extended period of time without
failures.
213-   Some cases are included to cover Encrypted SIP.  The test
topologies
214-   that can be used are described in the Test Setup section. 
Topologies
--
--
219-
220-   SIP permits a wide range of configuration options that are
explained
221-   in Section 4 and Section 2 of [I-D.sip-bench-term].  Benchmark
values
222:/* Is associated media defined */
223-   could possibly be impacted by Associated Media.  The selected
values
224-   for Session Duration and Media Streams per Session enable
benchmark
225-
--
3. Benchmarking Topologies
--
259-
260-   There are two test topologies; one in which the DUT does not
process
261-   the media (Figure 1) and the other in which it does process media
262:/* EA defined? */
263-   (Figure 2).  In both cases, the tester or EA sends traffic into
the
264-   DUT and absorbs traffic from the DUT.  The diagrams in Figure 1
and
265-   Figure 2 represent the logical flow of information and do not
dictate
--
4.3 Associated Media
--
346-4.3.  Associated Media
347-
348-   Some tests require Associated Media to be present for each SIP
349:/* Is this redundant? */
350-   session.  The test topologies to be used when benchmarking DUT
351-   performance for Associated Media are shown in Figure 1 and Figure
2.
352-
--
4.6 Session Duration
--
370-
371-   The value of the DUT's performance benchmarks may vary with the
372-   duration of SIP sessions.  Session Duration MUST be reported with
373:/* I'm not sure if this sentence ("A Session Duration ...") is
properly
374-formed (it might be), but I had difficulty following the logic of
the
375:sentence */
376-   benchmarking results.  A Session Duration of zero seconds
indicates
377-   transmission of a BYE immediately following successful SIP
378-   establishment indicate by receipt of a 200 OK.  An infinite
Session
--
4.8 Benchmarking algorithm
--
409-
410-   During the Candidate Identification phase, the test runs until n
411-   sessions have been attempted, at session attempt rates, r, which
vary
412:/* Upper case N and lower case n are different variables?? Same with
"R" */
413-   according to the algorithm below, where n is also a parameter of
test
414-   and is a relatively large number, but an order of magnitude
smaller
415-   than N. If no errors occur during the time it takes to attempt n
--
--
415-   than N. If no errors occur during the time it takes to attempt n
416-   sessions, we increment r according to the algorithm.  If errors
are
417-   encountered during the test, we decrement r according to the
418:/* sentence "The algorithm provides ..." needs clarification
419:Is the word "how" unnecessary? */
420-   algorithm.  The algorithm provides a variable, G, that allows us
to
421-   control how the accuracy, in sessions per second, that we require
of
422-   the test.
--
--
422-   the test.
423-
424-   After this candidate rate has been discovered, the test enters
the
425:/* Is N consistent with N in pseudocode? */
426-   Steady State phase.  In the Steady State phase, N session
Attempts
427-   are made at the candidate rate.  The goal is to find a rate at
which
428-   the DUT can process calls "forever" with no errors and the test
--
--
432-   the steady-state phase is entered again until a final (new)
steady-
433-   state rate is achieved.
434-
435:/* Would this process be clearer if presented as a list? */
436-   The iterative process itself is defined as follows: A starting
rate
437-   of r = 100 sessions per second is used and we place calls at that
438-   rate until n = 5000 calls have been placed.  If all n calls are
--
--
436-   The iterative process itself is defined as follows: A starting
rate
437-   of r = 100 sessions per second is used and we place calls at that
438-   rate until n = 5000 calls have been placed.  If all n calls are
439:/* sps defined? This said, it's easy to figure out */
440-   successful, the rate is increased to 150 sps and again we place
calls
441-   at that rate until n = 5000 calls have been placed.  The attempt
rate
442-   is continuously ramped up until a failure is encountered before n
=
--
--
449-   between the rate at which failures occurred and the last
successful
450-   rate.  Continuing in this way, an attempt rate without errors is
451-   found.  The tester can specify a margin of error using the
parameter G,
452:/* units? */
453-   measured in units of sessions per second.
454-
455-   The pseudo-code corresponding to the description above follows.
--
--
478-      G  := 5      ; granularity of results - the margin of error in
479-                   ; sps
480-      C  := 0.05   ; calibration amount: How much to back down if we
481:/* using "s" before definition, in my opinion; consider "found
candidate rate
482:s but cannot send at s" (Still not right, though ... */
483-                   ; have found candidate s but cannot send at rate
s
484-                   ; for time T without failures
485-
--
--
487-      ; ---- Initialization of flags, candidate values and upper
bounds
488-
489-      f  := false  ; indicates a success after the upper limit
490:/* Capital F never used in pseudocode */
491-      F  := false  ; indicates that test is done
492-      c  := 0      ; indicates that we have found an upper limit
493-
--
--
499-                                   ; characteristics until n
500-                                   ; requests have been sent
501-             if (all requests succeeded) {
502:/* undefined variable r'?  does this matter? */
503-                r' := r ; save candidate value of metric
504-                if ( c == 0 ) {
--
6.3 Session Establishment Rate with Media not on DUT
--
649-          be recorded using any pertinent parameters as shown in the
650-          reporting format of Section 5.1.
651-
652:/* Long sentence in general, but minimally last part of sentence
doesn't
653:conclude */
654-   Expected Results:  Session Establishment Rate results obtained
with
655-      Associated Media with any number of media streams per SIP
session
656-      are expected to be identical to the Session Establishment Rate

<end comments on draft-ietf-bmwg-sip-bench-meth-09>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.