PathView Voice

PathView Voice is an add-on module that enables you to assess your network’s ability to handle voice traffic. PathView Voice offers two tools for assessing voice performance: voice assessment and voice test.

Assessment vs. test

Assessments differ from tests both in methodology and purpose. They rely on continuous monitoring and diagnostic techniques to infer voice quality. They’re good tools for testing the suitability of your entire network in advance of a voip deployment, or checking an existing deployment for issues. Many paths can be tested simultaneously, and the testing is light on bandwidth consumption compared to a voice test. A typical use for a voice assessment might be to test the quality of the network paths between the server room and the voip handsets on end-users’ desks. This is as opposed to performing the assessment over a WAN link.

In contrast to assessments, voice tests simulate voice calls using the same application layer protocols and codecs that would be used in an actual voice call. As a result, voice tests provide a more accurate measure of how your network would treat voice traffic, but at the expense of greater bandwidth consumption. A voice test can test 100+ concurrent voice calls depending on appliance model and as such, it consumes the same amount of bandwidth that one would expect if there were that many actual calls being made on the network. Voice tests should be used to measure voice performance between two sites—perhaps across an MPLS WAN link, or a trunk between two buildings. As it uses the same signalling and codecs as a voice call, it’s able to gather more in-depth metrics for analysis, such as packet reorder and discards, which is not possible with voice assessments. If you are experiencing voice issues between sites, or want to load test a link for voice performance, then a voice test is the correct tool to use.

Prerequisite: Voice tests require path targets to be an appliance.

Basic vs. advanced

Basic voice assessment runs a diagnostic on each selected path but returns path-level—rather than hop-level—readiness, MOS, loss, and jitter.

Advanced voice assessment is designed to be executed for longer periods in order to capture transient conditions. To that end, they consist of periodic diagnostics plus continuous monitoring. Because of this combination of analysis techniques advanced assessments are able to additionally return latency, total capacity, and the percentage of time the path was available during the test. If the net MOS score is less than 3.8 an additional diagnostic is triggered for the path. Advanced assessment config options also include call load ramp-up and scheduled start/stop time.

Voice test vs. PathTest

Voice test is similar to PathTest: they’re both short-duration voice testing tools and they offer mostly the same options. The difference is that PathTest uses layer 3 to simulate voice traffic, like continuous monitoring and voice assessments; and it returns only packet loss statistics at the selected bit rate. You would use these results primarily to corroborate the voice loss results returned from continuous monitoring, which is in part why PathPlus is included in the basic license. Generally voice tests and assessments are better options, with one exception which is that PathTest can generate higher call loads than PathView Voice.

Simulated vs. real

When measuring call quality, it doesn’t matter whether you are using test traffic containing real encoded human voice. Test traffic is comprised of two components, one is SIP and the other is RTP. SIP is the control protocol that is responsible for coordinating the two endpoints of the call. SIP doesn’t care whether those endpoints are appliances or actual humans, the nature and flow of that traffic is the same. The second component, RTP, is the application layer protocol that wraps the encoded human voice sample. The resulting RTP packet is encapsulated in udp, and then again in IP, so ultimately all the network layer sees, or needs to see for that matter, is the IP header.

So how can PathView assess call quality when the RTP payload is meaningless? The answer is that we know which network characteristics have an impact on call quality, and we know how each one impacts call quality. The characteristics we’re interested in are bandwidth utilization, loss, latency, and jitter.

Bandwidth
To convert human voice from analog to digital, it’s sampled thousands of times per second, using one of several techniques called ‘codecs’ that results in not only conversion, but also compression. The amount of compression, the number of samples taken, and the number of samples packed into each IP packet all directly affected how much bandwidth is consumed by the call. When your call is traversing a network with insufficient bandwidth for the voip configuration, the call will experience higher latency and possibly packet loss.
Packet loss
Packet loss is important because when you use udp, lost packets are not re-transmitted, and so lost packets results in broken audio on the listener’s end.
Latency
Latency is the time it takes for audio to get from the speaker to the listener. Audio becomes more distorted latency increases. There are several ways latency gets introduced into your conversation: propagation delay is simply the time it takes for packets to travel on wire to the destination. The farther apart the source and target, the greater the propagation delay. Queuing delay is introduced when a network hop is congested and can’t route incoming packets immediately on ingress. There’s also handing delay which is the time it takes it takes to put a packet on the wire, but generally that is out of the user’s control and negligible compared to the other two.
Jitter
Jitter is variation in latency. Regular delivery of packets is critical to accurately reproducing the audio signal. To counter any variation in latency your handset has a configurable jitter buffer, measured in milliseconds, which meters ingress packets. Tuning the jitter buffer is important because a jitter buffer that is too small results in dropped packets and one that is too large introduces latency unnecessarily.

Issues with cloud-based providers

Suppose you have an appliance deployed at small office and the cloud-based voip service is choppy and echoey. In a situation like this, the first step would be to verify the integrity of the network connection itself. Create a dual-ended path to one of our AppNeta WAN targets, and add the default WAN alert profile to it. Let it run for a while, and if everything with that path looks good, the next step is to verify the connection to the voip server. Create a single-ended path to the service provider’s PBX; you might have to get in touch with the service provider to get its ip. Use the default voice WAN alert profile to capture any events and kick off diagnostics. Again, let it run for a while, and once you’ve established that your network paths are in decent shape, run a basic voice assessment. It has the advantage of being lightest in weight of all the tools in PathView Voice; pay attention to MOS, loss, and jitter. If the basic assessment doesn’t capture the issues you’re experiencing, try a longer running advanced voice assessment.

Choosing good voice targets

All handsets are not created equal, some have a limited ability to respond to our test packets. This would manifest as low MOS even though the audio sounds fine. When in doubt, open a support ticket.

Pay attention to the kind of network device you are targeting for an assessment. If running an assessment on a path that is targeting a printer, that assessment is going to return terrible results—which is expected because it’s not related to voice in any way. When you’re using ‘discover my network’. Narrow the address range to just your voip subnet. This shouldn’t be an issue with ‘add monitored paths’ or ‘add new path’ since data only target types will not be available for selection.

PathView Voice terms

Packet discards
Packets arriving at the destination too late, as determined by the jitter buffer size. For example, if a packet arrives more than 40ms later than expected, it is discarded when the default jitter buffer size of 40ms is used.
Total capacity
See what is capacity?
Availability
The percentage of time a connection exists between the appliance and the target during the length of the assessment.
Reordering
Packets within a burst that arrived out of their original sequence. Because packets travel through a network path independently, they may not arrive in the order in which they were sent. In multi-link, load-balanced networks, data can become reordered, especially during high-traffic periods
Readiness
A 5-tier representation of MOS that helps you understand well a path is handling voice traffic: 4.2 - 5 is excellent, 3.8 - 4.19 is good, 3.4 - 3.79 is marginal, 2.8 - 3.39 is poor, and 1.0 - 2.79 is very poor.
MOS
An estimate of the rating that a typical user would give to the sound quality of a call. It is expressed on a scale of 1 to 5, where 5 is perfect. It is a function of loss, latency, and jitter. It also varies with voice codec and call load. If audio codec G.722.1 is selected for a session, a MOS score will not appear.
Packet loss
See simulated vs. real.
Latency
See simulated vs. real.
Jitter
See simulated vs. real.

Voice test

In contrast to assessments and continuous monitoring, voice test uses higher layer protocols SIP and RTP simulate voice calls. This better approximates actual calls and offers more voice-related statistics, but comes at the expense of greater bandwidth consumption. It returns to you a couple more voice-related statistics than continuous monitoring, but also requires the path target to be an appliance.

A voice test is comprised of one or more sessions; each session specifies a path, a number of concurrent calls, and qos settings. Tests are structured this way so that you can evaluate a variety of call scenarios, all within the same test.

  1. You must add at least one session: click Add new Session.
  2. All of the options have defaults, so the least you have to do is select a path from the drop-down.
  3. Click OK to accept your settings; PathView Voice will then verify: the source and destination appliance software version number; that the source appliance is connected to AppNeta; and that the destination appliance is reachable at the ports specified in the sessions advanced setting. If all of these checks must pass in order to include the session in the test. In any case, you’ll notice that the ‘save voice test’ and ‘save as template’ buttons become available.
  4. Select one or more valid sessions, and then one of the following: ‘start voice test’, ‘save voice test’, ‘schedule test’, or ‘save as template’.

    Save as template
    Save the test so that you can later clone it to make new tests; templates are listed on the ‘templates’ tab of the manage voice tests page, where there are additional options under in the action menu. Click a row edit the template.
    Start voice test
    Start the voice test immediately.
    Save voice test
    Save your voice test settings so that you can run the test later. Saved voice tests are listed on the ‘tests’ tab of the manage voice tests page. Rows display a diskette icon, and additional options are available under in the action menu.
    Schedule test
    Start the voice test at a later date and time. Scheduled voice tests are listed on the ‘schedules’ tab of the manage voice tests page, where there are additional options under in the action menu.
  5. Voice test results:
    • ‘Run test again’ takes you to the new PathView Voice test page and loads the exact same session configurations. From there you can start, save, schedule, etc.
    • Download a copy of the report by selecting ‘download pdf’ from this dropdown.
    • Tests can be in one of these states: initializing, running, completed, saved, stopped, and failed.
    • Links are provided to view advanced settings and metrics.
    • You can display up to 10 sessions at a time on the same set of charts.
    • Moving your cursor along plotted data displays a the time the measurement was taken; the chart is updated with the value.

Basic voice assessment

Assessments enable you to evaluate the voice capability of your entire network at once. Whereas voice test assesses the voice capability on a per-path basis, i.e., each path has its own test settings, assessment is a shotgun approach in which you add multiple paths and apply the same settings to each. Basic voice assessment doesn’t offer scheduling, call load ramp-up, MOS-triggered diagnostics, or a path readiness score; advanced voice assessment does.

If any path is targeting an OS X sequencer: Note that OS X rate limits icmp responses by default. There are two ways to disable this behavior:
  • To disable it temporarily: enter sysctl –w net.inet.icmp.icmplim=0 from the command line; the limit will be reset when the system restarts.
  • To permanently remove it: create _/etc/sysctl.conf_ and add the following line: net.inet.icmp.icmplim=0
  1. Navigate to PathView > PathView Voice, and click ‘+new basic voice assessment’.
  2. Choose from the applicable existing paths, or create new paths.

    Add from monitored paths
    Data only target types will not be available for selection. All targets other than ‘Pathview appliance’ are converted to target type ‘voice handset’, this just controls some under-the-hood mechanics of testing.
    Discover targets
    See Discover my network.
    Add new path
    Source appliances must have an PathView Voice license.
  3. Configure your basic voice assessment’s settings.

    Quality of service
    If qos testing is enabled, the each path is tested twice: once with the qos on, and once with qos off. After a new qos setting is created, you can manage it from > manage qos templates.
    Target type
    When a selected path has a target type that is not selected for call load analysis, that path is tested with only one call.
    Call load
    The default number of concurrent calls is 5, the maximum is 250. When the call load is greater than one, the test is performed multiple times starting with one call and incrementing by one each time.
  4. Basic voice assessment results:
    • Download a copy of the report by selecting ‘download pdf’ from this dropdown.
    • ‘Run assessment again’ takes you to the new PathView Voice test page and loads the exact same session configurations. From there you can start, save, schedule, etc.
    • The bar chart shows the number of tested devices at each readiness level.

Advanced voice assessment

Assessments enable you to evaluate the voice capability of your entire network at once. Whereas voice test assesses the voice capability on a per-path basis, i.e., each path has its own test settings, assessment is a shotgun approach in which you add multiple paths and apply the same settings to each. Advanced voice assessment is very similar to continuous monitoring: it uses layer 3 using icmp and udp packets to simulate voice traffic and returns to you mostly the same measurements; the difference is that it allows you to vary the call load and ramp-up, and returns to you a snapshot of multiple paths in a nicely formatted report. The report includes a color-coded readiness score for each path so that you know at-a-glance where any problems lie.

  1. Navigate to PathView > PathView Voice > and click the button shown.
  2. Choose from the applicable existing paths, or create new paths.

    Add from monitored paths
    Paths with a target type of ‘auto’ are converted to target type ‘voice handset’.
    Discover targets
    See Discover my network.
    Add new path
    Source appliances must have an PathView Voice license.
  3. When you schedule a voice assessment for a future date, the paths involved in the assessment count towards your path count, not just on the date the assessment runs, but from the date you make the schedule until the assessment completes.
  4. Adjust the slider to update the calculated duration for cycle, ramp-up, and steady-state.

    Call load ramp-up
    Call load ramp-up simulates call load fluctuations that could occur over a 24-hour period. One ‘call load cycle’ consists of a period during which call load increases from 1 to the specified number of concurrent calls, and a period of steady state at the specified concurrent call number.
    Concurrent calls
    The default number of concurrent calls is 5, the maximum is 25. When the call load is greater than one, the test is performed multiple times starting with one call and incrementing by one each time.
    Target types
    When a selected path has a target type that is not selected for call load analysis, that path is tested with only one call.
  5. Advanced voice assessment results:
    • Download a copy of the report by selecting ‘download pdf’ from this dropdown.
    • ‘Run assessment again’ takes you to the new PathView Voice test page and loads the exact same session configurations. From there you can start, save, schedule, etc.
    • The bar chart shows the number of tested devices at each readiness level.

Path Plus

Path Plus is a collection of basic network investigation tools, e.g., ping, traceroute, and nslookup, plus a traffic generator called PathTest. PathTest is very similar to other bandwidth measurement tools like speedtest.net, where bandwidth is measured in a destructive fashion. Essentially PathTest generates huge bursts of packets with the goal of entirely saturating the path to the target. When PathTest starts to see massive loss it marks that point as the maximum bandwidth. While this flooding technique produces accurate results, it does make the network inoperable for the duration of the test.

Here are a few examples of how you can use PathTest:

  • Verify that a link can achieve the capacity provisioned by your ISP.
  • Generate traffic with a dscp marking to verify or stress a traffic engineering strategy.
  • When separate bandwidth is allocated to data and voice, use PathTest with PathView Voice to stress the network with both types of traffic at the same time.

Data assessments

Data assessments run regular path diagnostics on multiple paths at once, with the goal of predicting your network’s ability to deliver data-intensive applications. Data assessments return familiar metrics (loss, latency, jitter, etc.), but also a ‘readiness’ value. Readiness is a succinct representation of how well a network path is expected to handle data-intensive applications and is based on a predictive model developed by AppNeta. Data assessments are best used to evaluate your networks ability to handle activities like ftp transfers, backups, and recovery. These types of activities primarily demand bandwidth for long, steady tcp transfers under relatively constant network conditions, i.e., packet loss, routes, and bandwidth are not varying appreciably. Data assessments won’t be as relevant to voice, video, best-effort, or transactional data.

Readiness

Conceptually readiness is like MOS for data, but with key differences: MOS is based on current performance and is typically related to the symptomatic evaluation of the network path—that is, what the loss, latency and jitter impose upon the quality of the service. Readiness on the other hand leverages the diagnostic capability of PathView to discover the origins of loss, latency, and jitter, and then characterize the range of performance possible in the presence of those causes.

The basis for readiness is throughput, which is the critical measure of how well a data-intensive application is performing. Modeling is used to estimate throughput at layer 4, based on layer 3 behaviors and set of parameters that represent a typical tcp configuration. This estimate considers total capacity and utilization; and the effect of loss, latency, and jitter on tcp congestion control. Assuming no performance bottlenecks at higher layers, it also reflects the throughput that is available to the application at layer 7.

If you want to influence your readiness score increase throughput. Keep in mind however that readiness neither throughput exactly nor is it a linear function of throughput.

PathView Video

PathView Video is an add-on module that measures video conference quality. In PathView Video you perform discrete tests that account for network path, number of calls, direction, codec, etc. These tests, which can be run on-demand or scheduled, enable you to measure how network security and traffic-shaping impacts video calls, and verify that qos is having the desired effect. You can execute a video test only a path that has a source appliance with an PathView Video license.

Video tests can create significant load Unlike continuous monitoring and diagnostic tests, video tests can create significant load, especially when tests include several sessions, or when multiple tests are run concurrently.

Create a video test
PathView Video Tests can simulate one-to-one, one-to-many, and many-to-many conferencing scenarios. To support these use-cases, tests are constructed in units called sessions. Each session is based on one path, a number of calls, call direction, codec, bit rate, and qos.
Save a video test
Save all of the video test sessions and settings. You can find your saved test on the Tests tab of the Manage Video Test page. From the action menu you can schedule, edit, delete, or run the test.
Save as template
Video templates enable you to save a test configuration so that you can re-run it later against the same or different paths. Saved templates are listed on the Templates tab of the PathView Video main page.
* Create a new template—Saves all of your sessions and settings, except for path name.
* Add to existing template—Adds only the test sessions to the template. The template’s existing test name, comments, and duration are retained.
Schedule a video test
Configure PathView Video to repeat a test periodically. You can find your test schedules on the Schedules tab of the manage video tests page. Click anywhere on the row of a test schedule to see its details. You can’t edit a schedule; instead, copy it, make your changes, and then delete the original.
View test results
From the manage video test page, click the row of any test; you don’t need to wait until the test is finished, the results page updates every 30 seconds.

Combine Templates! Use bulk action on the templates tab to select multiple templates. Then select ‘create test’ from one of their action menus. The template performing the action absorbs the sessions from the other template.

Video testing capability by appliance model

The non-G.726 limits shows for each bit rate the number of calls that would be equal to 100% appliance load. You can have multiple sessions with different bit rates, so long as the appliance load doesn’t exceed 100%. For example, an m20 can handle 6 one-way calls at 1024 kbps and 7 two-way calls at 128 kbps at the same time. You don’t need to calculate appliance load in advance. PathView Video will reject any test configuration that exceeds appliance load for either the source or the target, and an error message will indicate which appliance would be overloaded and by how much.

</td>
m20 m22 m30 r40 r400
G.726 Maximum Call Load
25 25 50 100 100
non-G.726 Total Bit Rate (kbps) Direction Maximum Call Load
64 One-way 15 15 72 182 182
Two-way 15 15 70 180 180
128 One-way 15 15 70 180 180
Two-way 14 14 65 175 175
256 One-way 14 14 65 175 175
Two-way 13 13 55 167 167
384 One-way 14 14 60 171 171
Two-way 12 12 45 158 158
512 One-way 13 13 55 167 167
Two-way 12 12 35 150 150
768 One-way 12 12 45 158 158
Two-way 11 10 30 136 136
1024 One-way 12 12 35 150 150
Two-way 10 9 26 123 123
1536 One-way 11 10 30 136 136
Two-way 8 8 17 96 96
2048 One-way 10 9 26 123 123
Two-way 7 7 8 70 70
3072 One-way 8 8 17 96 96
Two-way 5 5 7 57 57
4096 One-way 7 7 8 70 70
Two-way 4 4 6 45 45
5120 One-way 6 6 7 63 63
Two-way 3 3 5 32 32
6144 One-way 5 5 7 57 57
Two-way 2 2 5 20 20
</td>
m25 m35 r45
G.726 Maximum Call Load
50 50 100
non-G.726 Total Bit Rate (kbps) Direction Maximum Call Load
64 One-way 72 72 182
Two-way 70 70 180
128 One-way 70 70 180
Two-way 65 65 175
256 One-way 65 65 175
Two-way 55 55 167
384 One-way 60 60 171
Two-way 45 45 158
512 One-way 55 55 167
Two-way 35 35 150
768 One-way 45 45 158
Two-way 30 30 136
1024 One-way 35 35 150
Two-way 26 26 123
1536 One-way 30 30 136
Two-way 17 17 96
2048 One-way 26 26 123
Two-way 8 8 70
3072 One-way 17 17 96
Two-way 7 7 57
4096 One-way 8 8 70
Two-way 6 6 45
5120 One-way 7 7 63
Two-way 5 5 32
6144 One-way 7 7 57
Two-way 5 5 20