freebsd-nq/share/man/man4/ntb.4
Carl Delsey e47937d1b7 Add a new driver to support the Intel Non-Transparent Bridge(NTB).
The NTB allows you to connect two systems with this device using a PCI-e
link. The driver is made of two modules:
 - ntb_hw which is a basic hardware abstraction layer for the device.
 - if_ntb which implements the ntb network device and the communication
   protocol.

The driver is limited at the moment to CPU memcpy instead of using DMA, and
only Back-to-Back mode is supported. Also the network device isn't full
featured yet. These changes will be coming soon. The DMA change will also
bring in the ioat driver from the project branch it is on now.

This is an initial port of the GPL/BSD Linux driver contributed by Jon Mason
from Intel. Any bugs are my contributions.

Sponsored by: Intel
Reviewed by: jimharris, joel (man page only)
Approved by: jimharris (mentor)
2013-04-29 22:48:53 +00:00

115 lines
3.7 KiB
Groff

.\"
.\" Copyright (c) 2013 Intel Corporation
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\" notice, this list of conditions, and the following disclaimer,
.\" without modification.
.\" 2. Redistributions in binary form must reproduce at minimum a disclaimer
.\" substantially similar to the "NO WARRANTY" disclaimer below
.\" ("Disclaimer") and any redistribution must be conditioned upon
.\" including a substantially similar Disclaimer requirement for further
.\" binary redistribution.
.\"
.\" NO WARRANTY
.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
.\" HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
.\" IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
.\" POSSIBILITY OF SUCH DAMAGES.
.\"
.\" ntb driver man page.
.\"
.\" Author: Carl Delsey <carl@FreeBSD.org>
.\"
.\" $FreeBSD$
.\"
.Dd Apr 11, 2013
.Dt NTB 4
.Os
.Sh NAME
.Nm ntb ,
.Nm ntb_hw ,
.Nm if_ntb
.Nd Intel(R) Non-Transparent Bridge driver
.Sh SYNOPSIS
To compile this driver into your kernel,
place the following lines in your kernel configuration file:
.Bd -ragged -offset indent
.Cd "device ntb_hw"
.Cd "device if_ntb"
.Ed
.Pp
Or, to load the driver as a module at boot, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
if_ntb_load="YES"
.Ed
.Sh DESCRIPTION
The
.Nm
driver provides support for the Non-Transparent Bridge (NTB) in the Intel S1200,
Xeon E3 and Xeon E5 processor families.
.Pp
The NTB allows you to connect two computer systems using a PCI-e link if they
have the correct equipment and connectors.
.Sh CONFIGURATION
The NTB memory windows need to be configured by the BIOS.
If your BIOS allows you to set their size, you should set the size of both
memory windows to 1 MiB.
This needs to be done on both systems.
.Pp
Each system needs to have a different IP address assigned.
The MAC address is randomly generated.
Also for maximum performance, the MTU should be set to 16 kiB.
This can be down by adding the line below to
.Xr rc.conf 5 :
.Bd -literal -offset indent
ifconfig_ntb0="inet 192.168.1.10 netmask 255.255.255.0 mtu 16384"
.Ed
.Pp
And on the second system :
.Bd -literal -offset indent
ifconfig_ntb0="inet 192.168.1.11 netmask 255.255.255.0 mtu 16384"
.Ed
.Pp
If you are using the UDP protocol, you may want to increase the
.Va net.inet.udp.maxdgram
.Xr sysctl 8
variable.
.Sh SEE ALSO
.Xr rc.conf 5 ,
.Xr sysctl 8
.Sh AUTHORS
.An -nosplit
The
.Nm
driver was developed by Intel and originally written by
.An Carl Delsey Aq carl@FreeBSD.org.
.Sh BUGS
If the driver is unloaded, it cannot be reloaded without a system reboot.
.Pp
The network support is limited.
It isn't fully configurable yet.
It also isn't integrated into
.Xr netgraph 4
or
.Xr bpf 4 .
.Pp
NTB to Root Port mode is not yet supported.
.Pp
There is no way to protect your system from malicious behavior on the other
system once the link is brought up.
Anyone with root or kernel access on the other system can read or write to
any location on your system.
In other words, only connect two systems that completely trust each other.