mirror of
https://github.com/rtbrick/bngblaster.git
synced 2024-05-06 15:54:57 +00:00
590 lines
58 KiB
HTML
590 lines
58 KiB
HTML
<!DOCTYPE html>
|
|
<html class="writer-html5" lang="en" >
|
|
<head>
|
|
<meta charset="utf-8" /><meta name="generator" content="Docutils 0.17.1: http://docutils.sourceforge.net/" />
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>Traffic Streams — BNG Blaster 0.7 documentation</title>
|
|
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
|
|
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
|
|
<link rel="stylesheet" href="_static/tabs.css" type="text/css" />
|
|
<!--[if lt IE 9]>
|
|
<script src="_static/js/html5shiv.min.js"></script>
|
|
<![endif]-->
|
|
|
|
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
|
<script src="_static/jquery.js"></script>
|
|
<script src="_static/underscore.js"></script>
|
|
<script src="_static/doctools.js"></script>
|
|
<script src="_static/js/theme.js"></script>
|
|
<link rel="index" title="Index" href="genindex.html" />
|
|
<link rel="search" title="Search" href="search.html" />
|
|
<link rel="next" title="Reports" href="reports.html" />
|
|
<link rel="prev" title="MPLS" href="routing/mpls.html" />
|
|
</head>
|
|
|
|
<body class="wy-body-for-nav">
|
|
<div class="wy-grid-for-nav">
|
|
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
|
|
<div class="wy-side-scroll">
|
|
<div class="wy-side-nav-search" >
|
|
<a href="index.html" class="icon icon-home"> BNG Blaster
|
|
<img src="_static/rtbrick_logo.png" class="logo" alt="Logo"/>
|
|
</a>
|
|
<div role="search">
|
|
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
|
|
<input type="text" name="q" placeholder="Search docs" />
|
|
<input type="hidden" name="check_keywords" value="yes" />
|
|
<input type="hidden" name="area" value="default" />
|
|
</form>
|
|
</div>
|
|
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="Navigation menu">
|
|
<ul class="current">
|
|
<li class="toctree-l1"><a class="reference internal" href="install.html">Installation</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="quickstart.html">Quickstart Guide</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="interfaces.html">Interfaces</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="access/index.html">Access Protocols</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="routing/index.html">Routing Protocols</a></li>
|
|
<li class="toctree-l1 current"><a class="current reference internal" href="#">Traffic Streams</a><ul>
|
|
<li class="toctree-l2"><a class="reference internal" href="#configuration">Configuration</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="#stream-configuration-file">Stream Configuration File</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="#stream-commands">Stream Commands</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="#raw-streams">RAW Streams</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="#threaded-streams">Threaded Streams</a></li>
|
|
<li class="toctree-l2"><a class="reference internal" href="#start-stop-session-stream-traffic">Start/Stop Session Stream Traffic</a></li>
|
|
</ul>
|
|
</li>
|
|
<li class="toctree-l1"><a class="reference internal" href="reports.html">Reports</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="configuration/index.html">Configuration</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="api/index.html">API/CLI</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="controller.html">Controller</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="troubleshooting.html">Troubleshooting</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="reference/index.html">Reference</a></li>
|
|
<li class="toctree-l1"><a class="reference internal" href="faq.html">Frequently Asked Questions</a></li>
|
|
</ul>
|
|
|
|
</div>
|
|
</div>
|
|
</nav>
|
|
|
|
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="Mobile navigation menu" >
|
|
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
|
|
<a href="index.html">BNG Blaster</a>
|
|
</nav>
|
|
|
|
<div class="wy-nav-content">
|
|
<div class="rst-content">
|
|
<div role="navigation" aria-label="Page navigation">
|
|
<ul class="wy-breadcrumbs">
|
|
<li><a href="index.html" class="icon icon-home"></a> »</li>
|
|
<li>Traffic Streams</li>
|
|
<li class="wy-breadcrumbs-aside">
|
|
<a href="_sources/streams.rst.txt" rel="nofollow"> View page source</a>
|
|
</li>
|
|
</ul>
|
|
<hr/>
|
|
</div>
|
|
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
|
<div itemprop="articleBody">
|
|
|
|
<section id="traffic-streams">
|
|
<span id="streams"></span><h1>Traffic Streams<a class="headerlink" href="#traffic-streams" title="Permalink to this headline"></a></h1>
|
|
<p>Traffic streams allow doing various forwarding verification
|
|
and QoS tests using BNG Blaster.</p>
|
|
<img alt="Interactive Streams" src="_images/bbl_streams.png" />
|
|
<p>Traffic streams are be divided in bounded and raw streams.
|
|
The first one is bound to an access configuration and derives
|
|
addresses dynamically from the sessions.</p>
|
|
<p>A raw stream is supported on <a class="reference internal" href="interfaces.html#interfaces"><span class="std std-ref">network interfaces</span></a> only.</p>
|
|
<section id="configuration">
|
|
<h2>Configuration<a class="headerlink" href="#configuration" title="Permalink to this headline"></a></h2>
|
|
<p>Following a simple PPPoE example with streams.</p>
|
|
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"interfaces"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"network"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"interface"</span><span class="p">:</span><span class="w"> </span><span class="s2">"eth2"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"address"</span><span class="p">:</span><span class="w"> </span><span class="s2">"10.0.0.1/24"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"gateway"</span><span class="p">:</span><span class="w"> </span><span class="s2">"10.0.0.2"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"address-ipv6"</span><span class="p">:</span><span class="w"> </span><span class="s2">"fc66:1337:7331::1/64"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"gateway-ipv6"</span><span class="p">:</span><span class="w"> </span><span class="s2">"fc66:1337:7331::2"</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"access"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"interface"</span><span class="p">:</span><span class="w"> </span><span class="s2">"eth1"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"outer-vlan-min"</span><span class="p">:</span><span class="w"> </span><span class="mi">1001</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"outer-vlan-max"</span><span class="p">:</span><span class="w"> </span><span class="mi">2000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"inner-vlan-min"</span><span class="p">:</span><span class="w"> </span><span class="mi">7</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"inner-vlan-max"</span><span class="p">:</span><span class="w"> </span><span class="mi">7</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"pppoe"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"stream-group-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"interface"</span><span class="p">:</span><span class="w"> </span><span class="s2">"eth1"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"outer-vlan-min"</span><span class="p">:</span><span class="w"> </span><span class="mi">2001</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"outer-vlan-max"</span><span class="p">:</span><span class="w"> </span><span class="mi">4000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"inner-vlan"</span><span class="p">:</span><span class="w"> </span><span class="mi">7</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"pppoe"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"stream-group-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">2</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">}</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">]</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"streams"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"BestEffort"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"stream-group-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ipv4"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"both"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1000</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Voice"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"stream-group-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ipv4"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"downstream"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"priority"</span><span class="p">:</span><span class="w"> </span><span class="mi">128</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"vlan-priority"</span><span class="p">:</span><span class="w"> </span><span class="mi">2</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"network-ipv4-address"</span><span class="p">:</span><span class="w"> </span><span class="s2">"10.0.0.10"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">100</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"BestEffort"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"stream-group-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">2</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ipv4"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"both"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">}</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">]</span><span class="w"></span>
|
|
<span class="p">}</span><span class="w"></span>
|
|
</pre></div>
|
|
</div>
|
|
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"> </span><span class="nt">"streams"</span><span class="p">:</span><span class="w"> </span><span class="p">{}</span><span class="w"> </span><span class="p">}</span><span class="w"></span>
|
|
</pre></div>
|
|
</div>
|
|
<table class="colwidths-given docutils align-default">
|
|
<colgroup>
|
|
<col style="width: 25%" />
|
|
<col style="width: 50%" />
|
|
<col style="width: 25%" />
|
|
</colgroup>
|
|
<thead>
|
|
<tr class="row-odd"><th class="head"><p>Attribute</p></th>
|
|
<th class="head"><p>Description</p></th>
|
|
<th class="head"><p>Default</p></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr class="row-even"><td><p><cite>name</cite></p></td>
|
|
<td><p>Mandatory stream name</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>stream-group-id</cite></p></td>
|
|
<td><p>Stream group identifier</p></td>
|
|
<td><p>0 (raw)</p></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>type</cite></p></td>
|
|
<td><p>Mandatory stream type (<cite>ipv4</cite>, <cite>ipv6</cite> or <cite>ipv6pd</cite>)</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>direction</cite></p></td>
|
|
<td><p>Mandatory stream direction (<cite>upstream</cite>, <cite>downstream</cite> or <cite>both</cite>)</p></td>
|
|
<td><p><cite>both</cite></p></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>source-port</cite></p></td>
|
|
<td><p>Overwrite the default source port</p></td>
|
|
<td><p>65056</p></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>destination-port</cite></p></td>
|
|
<td><p>Overwrite the default destination port</p></td>
|
|
<td><p>65056</p></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>ipv4-df</cite></p></td>
|
|
<td><p>Set IPv4 DF bit</p></td>
|
|
<td><p>true</p></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>priority</cite></p></td>
|
|
<td><p>IPv4 TOS / IPv6 TC</p></td>
|
|
<td><p>0</p></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>vlan-priority</cite></p></td>
|
|
<td><p>VLAN priority</p></td>
|
|
<td><p>0</p></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>length</cite></p></td>
|
|
<td><p>Layer 3 (IP header + payload) traffic length (76 - 9000)</p></td>
|
|
<td><p>128</p></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>pps</cite></p></td>
|
|
<td><p>Stream traffic rate in packets per second</p></td>
|
|
<td><p>1</p></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>bps</cite></p></td>
|
|
<td><p>Stream traffic rate in bits per second (layer 3)</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>a10nsp-interface</cite></p></td>
|
|
<td><p>Select the corresponding A10NSP interface for this stream</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>network-interface</cite></p></td>
|
|
<td><p>Select the corresponding network interface for this stream</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>network-ipv4-address</cite></p></td>
|
|
<td><p>Overwrite network interface IPv4 address</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>network-ipv6-address</cite></p></td>
|
|
<td><p>Overwrite network interface IPv6 address</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>destination-ipv4-address</cite></p></td>
|
|
<td><p>Overwrite the IPv4 destination address</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>destination-ipv6-address</cite></p></td>
|
|
<td><p>Overwrite the IPv6 destination address</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>access-ipv4-source-address</cite></p></td>
|
|
<td><p>Overwrite the access IPv4 source address (client)</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>access-ipv6-source-address</cite></p></td>
|
|
<td><p>Overwrite the access IPv6 source address (client)</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>threaded</cite></p></td>
|
|
<td><p>Run those streams in separate threads</p></td>
|
|
<td><p>false</p></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>thread-group</cite></p></td>
|
|
<td><p>Assign this stream to thread group (1-255)</p></td>
|
|
<td><p>0 (thread per stream)</p></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>max-packets</cite></p></td>
|
|
<td><p>Send a burst of N packets and stop</p></td>
|
|
<td><p>0 (infinity)</p></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>start-delay</cite></p></td>
|
|
<td><p>Wait N seconds after session is established before start</p></td>
|
|
<td><p>0</p></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>tx-label1</cite></p></td>
|
|
<td><p>MPLS send (TX) label (outer label)</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>tx-label1-exp</cite></p></td>
|
|
<td><p>EXP bits of first label (outer label)</p></td>
|
|
<td><p>0</p></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>tx-label1-ttl</cite></p></td>
|
|
<td><p>TTL of first label (outer label)</p></td>
|
|
<td><p>255</p></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>tx-label2</cite></p></td>
|
|
<td><p>MPLS send (TX) label (inner label)</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>tx-label2-exp</cite></p></td>
|
|
<td><p>EXP bits of first label (inner label)</p></td>
|
|
<td><p>0</p></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>tx-label2-ttl</cite></p></td>
|
|
<td><p>TTL of first label (inner label)</p></td>
|
|
<td><p>255</p></td>
|
|
</tr>
|
|
<tr class="row-even"><td><p><cite>rx-label1</cite></p></td>
|
|
<td><p>Expected receive MPLS label (outer label)</p></td>
|
|
<td></td>
|
|
</tr>
|
|
<tr class="row-odd"><td><p><cite>rx-label2</cite></p></td>
|
|
<td><p>Expected receive MPLS label (inner label)</p></td>
|
|
<td></td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p>For L2TP downstream traffic the IPv4 TOS is applied to the outer IPv4
|
|
and inner IPv4 header.</p>
|
|
<p>The <code class="docutils literal notranslate"><span class="pre">pps</span></code> option supports also float numbers like 0.1, or 2.5 PPS and has
|
|
priority over <code class="docutils literal notranslate"><span class="pre">bps</span></code> where second is only a helper to calculate the <code class="docutils literal notranslate"><span class="pre">pps</span></code>
|
|
based on given <code class="docutils literal notranslate"><span class="pre">bps</span></code> and <code class="docutils literal notranslate"><span class="pre">length</span></code>.</p>
|
|
<p>The options <code class="docutils literal notranslate"><span class="pre">access-ipv4-source-address</span></code> and <code class="docutils literal notranslate"><span class="pre">access-ipv6-source-address</span></code>
|
|
are used to test the BNG RPF functionality with traffic send from source addresses
|
|
different to those assigned to the client.</p>
|
|
</section>
|
|
<section id="stream-configuration-file">
|
|
<h2>Stream Configuration File<a class="headerlink" href="#stream-configuration-file" title="Permalink to this headline"></a></h2>
|
|
<p>The command line argument <code class="docutils literal notranslate"><span class="pre">-T</span> <span class="pre"><filename></span></code> allows to include
|
|
streams defined from a separate file. The format is equal to
|
|
streams defined in the actual configuration file. Such stream
|
|
configuration files could be generated by scripts and
|
|
easily merged with the base configuration.</p>
|
|
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"streams"</span><span class="p">:</span><span class="w"> </span><span class="p">[]</span><span class="w"></span>
|
|
<span class="p">}</span><span class="w"></span>
|
|
</pre></div>
|
|
</div>
|
|
</section>
|
|
<section id="stream-commands">
|
|
<h2>Stream Commands<a class="headerlink" href="#stream-commands" title="Permalink to this headline"></a></h2>
|
|
<p>The <code class="docutils literal notranslate"><span class="pre">session-streams</span></code> command returns detailed stream statistics per session.</p>
|
|
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">session-streams</span> <span class="pre">session-id</span> <span class="pre">1</span></code></p>
|
|
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"status"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ok"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"code"</span><span class="p">:</span><span class="w"> </span><span class="mi">200</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"session-streams"</span><span class="p">:</span><span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"session-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">59670</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">54610</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-accounting-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">59655</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-accounting-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">54594</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1100</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">9028800</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">8240000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">9.0288</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">8.24</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"streams"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"BestEffort"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"upstream"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"flow-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-first-seq"</span><span class="p">:</span><span class="w"> </span><span class="mi">362</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-last-seq"</span><span class="p">:</span><span class="w"> </span><span class="mi">54593</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-tos-tc"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-outer-vlan-pbit"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-inner-vlan-pbit"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-len"</span><span class="p">:</span><span class="w"> </span><span class="mi">1014</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-len"</span><span class="p">:</span><span class="w"> </span><span class="mi">1030</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">54232</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">54594</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-loss"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-delay-nsec-min"</span><span class="p">:</span><span class="w"> </span><span class="mi">37650</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-delay-nsec-max"</span><span class="p">:</span><span class="w"> </span><span class="mi">98595049</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">8240000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">8112000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-bps-l3"</span><span class="p">:</span><span class="w"> </span><span class="mi">8000000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">8.24</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">8.112</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-mbps-l3"</span><span class="p">:</span><span class="w"> </span><span class="mf">8.0</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"BestEffort"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"downstream"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"flow-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">2</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-first-seq"</span><span class="p">:</span><span class="w"> </span><span class="mi">362</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-last-seq"</span><span class="p">:</span><span class="w"> </span><span class="mi">54593</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-tos-tc"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-outer-vlan-pbit"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-inner-vlan-pbit"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-len"</span><span class="p">:</span><span class="w"> </span><span class="mi">1026</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-len"</span><span class="p">:</span><span class="w"> </span><span class="mi">1014</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">54232</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">54594</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-loss"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-delay-nsec-min"</span><span class="p">:</span><span class="w"> </span><span class="mi">43550</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-delay-nsec-max"</span><span class="p">:</span><span class="w"> </span><span class="mi">98903960</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">8112000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">8208000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-bps-l3"</span><span class="p">:</span><span class="w"> </span><span class="mi">8000000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">8.112</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">8.208</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-mbps-l3"</span><span class="p">:</span><span class="w"> </span><span class="mf">8.0</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"Voice"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"downstream"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"flow-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">3</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-first-seq"</span><span class="p">:</span><span class="w"> </span><span class="mi">37</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-last-seq"</span><span class="p">:</span><span class="w"> </span><span class="mi">5458</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-tos-tc"</span><span class="p">:</span><span class="w"> </span><span class="mi">128</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-outer-vlan-pbit"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-inner-vlan-pbit"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-len"</span><span class="p">:</span><span class="w"> </span><span class="mi">1026</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-len"</span><span class="p">:</span><span class="w"> </span><span class="mi">1014</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">5422</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">5458</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-loss"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-delay-nsec-min"</span><span class="p">:</span><span class="w"> </span><span class="mi">41700</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-delay-nsec-max"</span><span class="p">:</span><span class="w"> </span><span class="mi">96548542</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">100</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">100</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">811200</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">820800</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-bps-l3"</span><span class="p">:</span><span class="w"> </span><span class="mi">800000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">0.8112</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">0.8208</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-mbps-l3"</span><span class="p">:</span><span class="w"> </span><span class="mf">0.8</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">}</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">]</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">}</span><span class="w"></span>
|
|
<span class="p">}</span><span class="w"></span>
|
|
</pre></div>
|
|
</div>
|
|
<p>The <code class="docutils literal notranslate"><span class="pre">rx-outer-vlan-pbit</span></code> might be wrong depending on network interface driver and
|
|
optional VLAN offloading.</p>
|
|
<p>The measured <code class="docutils literal notranslate"><span class="pre">rx-delay-nsec-min/max</span></code> shows the minimum and maximum calculated delay
|
|
in nanosecond. The delay is calculated by subtracting the send and receive timestamp.
|
|
The send timestamp is stored in the BBL header (see section Traffic). This calculated
|
|
result depends also on the actual test environment, configured rx-interval and host IO
|
|
delay.</p>
|
|
<p>Traffic streams will start as soon as the session is established using the rate as configured
|
|
starting with sequence number 1 for each flow. The attribute <code class="docutils literal notranslate"><span class="pre">rx-first-seq</span></code> stores the first
|
|
sequence number received. Assuming the first sequence number received for given flow is 1000
|
|
combined with a rate of 1000 PPS would mean that it took around 1 second until forwarding is
|
|
working. After first packet is received for a given flow, for every further packet it checks
|
|
if there is a gap between last and new sequence number which is than reported as loss.</p>
|
|
<p>The <code class="docutils literal notranslate"><span class="pre">rx/tx-accounting-packets</span></code> are all packets which should be counted in the session volume
|
|
accounting of the BNG, meaning session rx/tx packets excluding control traffic.</p>
|
|
<p>Each flow can be queried separately using jsonpath expression with name and direction or flow-id.</p>
|
|
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>$ sudo bngblaster-cli run.sock session-streams session-id 1 | jq '."session-streams".streams[] | select(.name == "BE" and .direction == "downstream" )'
|
|
</pre></div>
|
|
</div>
|
|
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"BE"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"downstream"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"flow-id"</span><span class="p">:</span><span class="w"> </span><span class="mi">2</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-first-seq"</span><span class="p">:</span><span class="w"> </span><span class="mi">33</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-last-seq"</span><span class="p">:</span><span class="w"> </span><span class="mi">27040</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-tos-tc"</span><span class="p">:</span><span class="w"> </span><span class="mi">213</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-outer-vlan-pbit"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-inner-vlan-pbit"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-len"</span><span class="p">:</span><span class="w"> </span><span class="mi">126</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-len"</span><span class="p">:</span><span class="w"> </span><span class="mi">114</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">27008</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-packets"</span><span class="p">:</span><span class="w"> </span><span class="mi">27040</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-loss"</span><span class="p">:</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-delay-nsec-min"</span><span class="p">:</span><span class="w"> </span><span class="mi">50450</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-delay-nsec-max"</span><span class="p">:</span><span class="w"> </span><span class="mi">10561572</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">99</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">99</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">90288</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-bps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mi">99792</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-bps-l3"</span><span class="p">:</span><span class="w"> </span><span class="mi">79200</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"tx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">0.090288</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-mbps-l2"</span><span class="p">:</span><span class="w"> </span><span class="mf">0.099792</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"rx-mbps-l3"</span><span class="p">:</span><span class="w"> </span><span class="mf">0.0792</span><span class="w"></span>
|
|
<span class="p">}</span><span class="w"></span>
|
|
</pre></div>
|
|
</div>
|
|
</section>
|
|
<section id="raw-streams">
|
|
<h2>RAW Streams<a class="headerlink" href="#raw-streams" title="Permalink to this headline"></a></h2>
|
|
<p>Streams with default <code class="docutils literal notranslate"><span class="pre">stream-group-id</span></code> set to zero are considered as raw streams not
|
|
bound to any session which is supported in downstream only. For those streams the
|
|
destination address must be explicitly set.</p>
|
|
<p>RAW streams can be used for traffic between two or network interfaces but also to send traffic
|
|
from network to access interfaces.</p>
|
|
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"streams"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"RAW"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ipv4"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"downstream"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"priority"</span><span class="p">:</span><span class="w"> </span><span class="mi">128</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"network-ipv4-address"</span><span class="p">:</span><span class="w"> </span><span class="s2">"10.0.0.20"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"destination-ipv4-address"</span><span class="p">:</span><span class="w"> </span><span class="s2">"1.1.1.1"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"length"</span><span class="p">:</span><span class="w"> </span><span class="mi">256</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">}</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">]</span><span class="w"></span>
|
|
<span class="p">}</span><span class="w"></span>
|
|
</pre></div>
|
|
</div>
|
|
<p>If <code class="docutils literal notranslate"><span class="pre">destination-ipv4-address</span></code> is set to a multicast IP address (224.0.0.0 - 239.255.255.255),
|
|
the BNG Blaster will set the the destination MAC address to the corresponding
|
|
multicast MAC address automatically. For unicast traffic the network gateway MAC address is used.</p>
|
|
</section>
|
|
<section id="threaded-streams">
|
|
<h2>Threaded Streams<a class="headerlink" href="#threaded-streams" title="Permalink to this headline"></a></h2>
|
|
<p>With threading enabled, those streams will be started per default in a dedicated thread per flow.
|
|
This means one thread per session and stream direction. A threaded, bidirectional stream assigned
|
|
to 10 sessions will therefore run in 20 threads. It is also possible to assign multiple
|
|
steams to a single thread using thread groups.</p>
|
|
<p>In most environments we see between 200.000 and 300.000 PPS single threaded is working. Depending
|
|
on actual setup this can be also much more. With threaded streams we are also able to scale up to
|
|
10 million PPS depending on actual configuration and setup. This allows to start 1 million flows
|
|
with 1 PPS per flow over 4 threads in example to verify all prefixes of a BGP full table.</p>
|
|
<p>The BNG Blaster is currently tested for up to 1 million flows which is not a hard limitation but
|
|
everything above should be considered as experimental.</p>
|
|
<div class="highlight-json notranslate"><div class="highlight"><pre><span></span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"streams"</span><span class="p">:</span><span class="w"> </span><span class="p">[</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"RAW1"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ipv4"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"downstream"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"priority"</span><span class="p">:</span><span class="w"> </span><span class="mi">128</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"destination-ipv4-address"</span><span class="p">:</span><span class="w"> </span><span class="s2">"10.0.0.1"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"length"</span><span class="p">:</span><span class="w"> </span><span class="mi">256</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">100000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"network-interface"</span><span class="p">:</span><span class="w"> </span><span class="s2">"eth1"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"threaded"</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"thread-group"</span><span class="p">:</span><span class="w"> </span><span class="mi">1</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">},</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">{</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"name"</span><span class="p">:</span><span class="w"> </span><span class="s2">"RAW2"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"type"</span><span class="p">:</span><span class="w"> </span><span class="s2">"ipv4"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"direction"</span><span class="p">:</span><span class="w"> </span><span class="s2">"downstream"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"priority"</span><span class="p">:</span><span class="w"> </span><span class="mi">128</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"destination-ipv4-address"</span><span class="p">:</span><span class="w"> </span><span class="s2">"10.0.0.1"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"length"</span><span class="p">:</span><span class="w"> </span><span class="mi">256</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"pps"</span><span class="p">:</span><span class="w"> </span><span class="mi">100000</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"network-interface"</span><span class="p">:</span><span class="w"> </span><span class="s2">"etg1"</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"threaded"</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span><span class="w"></span>
|
|
<span class="w"> </span><span class="nt">"thread-group"</span><span class="p">:</span><span class="w"> </span><span class="mi">2</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">}</span><span class="w"></span>
|
|
<span class="w"> </span><span class="p">]</span><span class="w"></span>
|
|
<span class="p">}</span><span class="w"></span>
|
|
</pre></div>
|
|
</div>
|
|
</section>
|
|
<section id="start-stop-session-stream-traffic">
|
|
<h2>Start/Stop Session Stream Traffic<a class="headerlink" href="#start-stop-session-stream-traffic" title="Permalink to this headline"></a></h2>
|
|
<p>Session stream traffic can be started/stopped dynamically
|
|
using the commands <code class="docutils literal notranslate"><span class="pre">stream-traffic-enabled</span></code> and <code class="docutils literal notranslate"><span class="pre">stream-traffic-disabled</span></code>.</p>
|
|
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">stream-traffic-disabled</span> <span class="pre">session-id</span> <span class="pre">1</span></code></p>
|
|
<p>Those commands start/stop the traffic for all sessions if invoked without
|
|
session identifier.</p>
|
|
<p><code class="docutils literal notranslate"><span class="pre">$</span> <span class="pre">sudo</span> <span class="pre">bngblaster-cli</span> <span class="pre">run.sock</span> <span class="pre">stream-traffic-disabled</span></code></p>
|
|
<p>Alternatively all session and stream traffic (including RAW streams)
|
|
can be started or stopped globally using the <code class="docutils literal notranslate"><span class="pre">traffic-start</span></code> and
|
|
<code class="docutils literal notranslate"><span class="pre">traffic-stop</span></code> commands.</p>
|
|
</section>
|
|
</section>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
<footer><div class="rst-footer-buttons" role="navigation" aria-label="Footer">
|
|
<a href="routing/mpls.html" class="btn btn-neutral float-left" title="MPLS" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> Previous</a>
|
|
<a href="reports.html" class="btn btn-neutral float-right" title="Reports" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
|
|
</div>
|
|
|
|
<hr/>
|
|
|
|
<div role="contentinfo">
|
|
<p>© Copyright 2020-2022, RtBrick, Inc..</p>
|
|
</div>
|
|
|
|
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
|
|
<a href="https://github.com/readthedocs/sphinx_rtd_theme">theme</a>
|
|
provided by <a href="https://readthedocs.org">Read the Docs</a>.
|
|
|
|
|
|
</footer>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
<script>
|
|
jQuery(function () {
|
|
SphinxRtdTheme.Navigation.enable(true);
|
|
});
|
|
</script>
|
|
|
|
</body>
|
|
</html> |