blob: 27b057d3e3472f5a3b83343fedba34dcfbfb635f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
<table class="head">
<tr>
<td class="head-ltitle">IF_NTB(4)</td>
<td class="head-vol">Device Drivers Manual</td>
<td class="head-rtitle">IF_NTB(4)</td>
</tr>
</table>
<div class="manual-text">
<section class="Sh">
<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
<p class="Pp"><code class="Nm">if_ntb</code> — <span class="Nd">Virtual
Ethernet interface for Non-Transparent Bridges</span></p>
</section>
<section class="Sh">
<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
<p class="Pp">To compile this driver into your kernel, place the following lines
in your kernel configuration file:</p>
<div class="Bd Pp Bd-indent"><code class="Cd">device ntb</code>
<br/>
<code class="Cd">device ntb_transport</code>
<br/>
<code class="Cd">device if_ntb</code></div>
<p class="Pp">Or, to load the driver as a module at boot, place the following
line in <a class="Xr">loader.conf(5)</a>:</p>
<div class="Bd Pp Bd-indent Li">
<pre>if_ntb_load="YES"</pre>
</div>
<p class="Pp">The following tunables are settable from the
<a class="Xr">loader(8)</a>:</p>
<dl class="Bl-ohang">
<dt id="hw.if_ntb.num_queues"><var class="Va">hw.if_ntb.num_queues</var></dt>
<dd>Limits maximal number of queues per interface. Default is unlimited.</dd>
</dl>
</section>
<section class="Sh">
<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
<p class="Pp">The <code class="Nm">if_ntb</code> driver attaches on top of the
<a class="Xr">ntb_transport(4)</a> driver to utilize one or more of its
packet queues to create virtual Ethernet network interface between the
systems. Typical MTU for the interface is about 64KB to reduce overhead.
Default MAC address for the interface is randomly generated.</p>
<p class="Pp">The <code class="Nm">if_ntb</code> driver does not implement any
real hardware offload, but since PCIe link is protected by CRC32, in some
situations it may be possible to save some CPU cycles by enabling fake
checksum offload on both link sides via setting
<code class="Cm">rxcsum</code> and <code class="Cm">txcsum</code> interface
options.</p>
</section>
<section class="Sh">
<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
ALSO</a></h1>
<p class="Pp"><a class="Xr">ntb_transport(4)</a></p>
</section>
<section class="Sh">
<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
<p class="Pp">The <code class="Nm">if_ntb</code> driver was developed by Intel
and originally written by <span class="An">Carl Delsey</span>
<<a class="Mt" href="mailto:carl@FreeBSD.org">carl@FreeBSD.org</a>>.
Later improvements were done by <span class="An">Conrad E. Meyer</span>
<<a class="Mt" href="mailto:cem@FreeBSD.org">cem@FreeBSD.org</a>> and
<span class="An">Alexander Motin</span>
<<a class="Mt" href="mailto:mav@FreeBSD.org">mav@FreeBSD.org</a>>.</p>
</section>
<section class="Sh">
<h1 class="Sh" id="BUGS"><a class="permalink" href="#BUGS">BUGS</a></h1>
<p class="Pp">Linux supports only one queue per interface, so manual
configuration may be required for compatibility.</p>
</section>
</div>
<table class="foot">
<tr>
<td class="foot-date">September 2, 2017</td>
<td class="foot-os">FreeBSD 15.0</td>
</tr>
</table>
|