Upload
keoxx
View
223
Download
0
Embed Size (px)
Citation preview
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
1/13
Configuring Your Computer and
Network Adapters for Best
Performance
eBUS Universal Pro and User Mode Data Receiver
eBUS SDK Application Note
This application note covers the basic configuration of a network adapter (NIC) to ensure the best possible performance
of the eBUS Universal Pro driver and the eBUS SDKs user mode data receiver. It also covers other factors, like firewall
and antivirus software, which could affect system performance. Finally, it describes the proper IP configuration for
multiple NICs in one PC.
The eBUS Universal Pro driver can be installed on any brand of NIC and hooks itself on top of the manufacturers
driver.
This publication provides configuration guidelines to assist in achieving maximum system performance. However, werecommend that you experiment with the parameters outlined in this publication to select the configuration that
provides you with the best system performance. To simplify this publication, only Intel NICs are covered. Most of these
features can be found in other manufacturers products, and the configuration changes outlined in this publication are
minor. This publication explains how to configure the NIC using either the Windows 7 operating system or Red Hat
Linux.
The following topics are covered in this application note:
Selecting a NICon page2
Selecting the Appropriate Version of the Manufacturers Driveron page2
Configuring Jumbo Packets, Receive Buffers, and the Interrupt Moderation Rateon page2
Configuring Socket Buffer Size (Linux Operating System Only)on page6
Minimizing the Impact of Windows Firewall and Other Filter Driverson page7
Configuring Multiple NICs in a Single Computeron page7
Configuring Power Management (Windows Operating System Only)on page10
Configuring Your Computers Video and Graphic Cardon page12
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
2/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 2
Selecting a NIC
In general, we recommend the PRO 1000 line of Intel NICs. These NICs are affordable, receive data well, and are easy
to find.
In cases where it is difficult to find an Intel NIC that suits your needs (for example, for some laptops) or
where you already have a non-Intel NIC, we also support all other brands of NICs, with some limitations.
In high data rate applications, for example the total instantaneous bandwidth is larger than100MB/s (possibly from
multiple cameras), we recommended that you to use a PCIe NIC.
Selecting the Appropriate Version of the Manufacturers
Driver
The latest version of a driver is most often the best version, since it has the latest bug fixes from the manufacturer. Thedriver that is distributed with the operating system is often not the most recent and a later version can be obtained from
the manufacturer. We generally suggest using the latest version of the driver provided by the manufacturer.
Configuring Jumbo Packets, Receive Buffers, and the
Interrupt Moderation Rate
You can configure the NIC to ensure the best possible performance. The following table lists the NIC settings that you
can adjust to maximize performance.
Table 1: Configuring Jumbo Packets, Receive Buffers, and Interrupt Moderation Rate
Setting When to change Details Recommendations
Jumbo packets
(jumbo frames)
High data rate Allows for a larger Ethernet frame size,
which corresponds to a larger data
payload per Ethernet frame, and allows
each block to be transferred using fewer
packets. As a result, this setting
decreases the amount of interrupts that
the PC has to service and results in
lower overall CPU usage. When a system
reaches 9K Ethernet frame size, the gain
in CPU savings becomes negligible.
If the image size will be smaller than the
size of the jumbo frame, the use of jumbo
frames should be avoided.
If devices across the network support
jumbo frames, then jumbo frames should
be enabled and configured to support the
desired frame size. Before you enable
jumbo frames, ensure that all of your NICs,
switches, and devices/cameras support
jumbo frames (most new devices do).
Receive buffers
(receive
descriptors)
High data rate or
high frame rate
Sets the number of receive buffers used
by the adapter when copying data to
memory. If the system runs out ofreceive descriptors, the NIC will drop
packets (older packets will be
overwritten).
We recommend that you increase the
receive descriptors to the maximum
possible value.
While an increased number of receive
buffers allows you to store more packets
and improves stability (that is, fewer older
packets are overwritten), more memory is
required.
Note:The number of receive descriptors
does not affect your systems CPU usage.
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
3/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 3
Setting When to change Details Recommendations
Interrupt
moderation rate
(interrupt
throttling)
High data rate
and High frame
rate in 10 GigE
system
When a packet arrives, the adapter
generates an interrupt that allows the
driver to handle the packet. At greater
link speeds, more interrupts are created
and CPU usage increases, resulting in
poor system performance. When you
enable interrupt moderation, the
interrupt rate is lower, resulting in better
system performance.
To improve system performance, you can
configure the interrupt moderation rate.
This setting defines the number of
interrupts per second.
For applications where low latency iscritical, this setting should be
approximately 8000 interrupts per second.
Note that this setting increases the CPU
usage. If some latency as a trade-off for
lower CPU usage is acceptable, then set
the number of interrupts per second at
approximately 1000. If you do not know
what to set, you have two options:
Use the default value set by the
manufacturers drivers.
Some NICs support adaptive throttling
mode. This mode allows for good
overall performance based on the NICload.
Experimentation with your system will
provide you with the appropriate value for
this parameter.
To configure jumbo packets, receive buffers, and interrupt moderation rate (Windows operating
system)
1. On the Windows Startmenu, click Control Panel.
2. Navigate to the Device Managersection of the Control Panel.
In Windows 7, you can locate this section by clicking Hardware and Sound.
Alternately, you can open the Device Manager section of the Control Panel by typing the following
command at the Windows command line prompt:
> r undl l 32. exe devmgr. dl l Devi ceManager_Execute
3. Expand theNetwork adapterslist, right click the NIC that you want to configure, and then click Properties.
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
4/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 4
4. Click the Advancedtab in the Adapter Propertiesdialog box.
5. In most cases, you do not need to change the network adaptors default settings. However, you can adjust the
following settings depending on your data rate and frame rate. For a description of each setting, tips on when to
adjust it, and recommended settings, see Table 1 on page2.
Jumbo Packets(also known as Jumbo Frames)
Receive Buffers(also known as Receiver Descriptors)
Interrupt Moderation Rate(also known as Interrupt Throttling). The default setting
(Adaptive) adjusts the interrupt rates dynamically, depending on traffic type and network usage.
Choosing a different setting can improve network and system performance.
At higher data rates, a Highinterrupt moderation setting may improve system performance. At
lower data rates, a Low interrupt moderation setting is preferred, since delayed interrupts cause
additional latency.
Because the procedures for configuring these options vary from one manufacturer to another (including
the way the value is interpreted), we recommend that you refer to the documentation accompanying the
NIC for instructions.
6. Click OK.
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
5/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 5
To enable jumbo packets (Linux operating system)
You can change the frame size using the following commands:
ifconfig eth[IN X] mtu [SIZ ]
ifconfig eth[IN X] up
where, [IN X]= 0,1,2,,n (depending on the number of NICs present)
[SIZ ]= desired frame size
For example,
ifconfig eth0 down
ifconfig eth0 mtu 8164
ifconfig eth0 up
- Or -
The configuration can be done at boot time by modifying the etc/sysconfig/network-scripts/ifcfg-
eth[INDEX]file with the line:
MTU = [SIZE]
To configure receive descriptors (Linux operating system)
The Intel PCI driver is named e1000 and the PCIe version is named e1000e.
For the PCI version of the driver, for example e1000):
You can customize the Intel driver using the RxDescriptorsparameter on the modprobecommand line. Thiscan be done by loading the driver with:
modprobe e1000 RxDescriptors = 512
If you have more than one NIC that you are configuring, the parameter for each adapter must be comma-
delimited:
modprobe e1000 RxDescriptors = 512, 512, 512
Alternately, the configuration can be performed at boot time by modifying the /etc/modprobe.conffile with
the line:
options e1000 RxDescriptors = 512
For the PCI Express version of the driver, for example e1000e ):
The tool ethtoolprovided by many Linux distributions can be used to configure the number of receive
descriptors (buffers), as per the following command:
ethtool -G ethXrx 512
where, ethXrepresents your NIC (for example, eth0)
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
6/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 6
To configure interrupt coalescing (Linux operating system)
You can customize the Intel driver using the InterruptThrottleRateparameter on the modprobecommand
line. This can be done by loading the driver with:
modprobe e1000 InterruptThrottleRate = 8000
If you have more than one NIC that you are configuring, the parameter for each adapter must be comma-delimited:
modprobe e1000 InterruptThrottleRate = 8000, 8000, 4000
The configuration can be performed at boot up by modifying the /etc/modprobe.conf file with the line:
options e1000 InterruptThrottleRate = 8000
Configuring Socket Buffer Size (Linux Operating System Only)
When you configure the socket buffer size, you are increasing the number of UDP datagrams that the operating system
can buffer before delivering them to the network stack.
You must configure the socket buffer size to ensure that it is large enough to allow the application to survive normal
CPU scheduling latency without dropping packets. For high bandwidth applications (for example, streams of 800 Mbps
or higher), the default value is too small and should be increased.
If the value is too small, the side effect is lost packets, which could have negative side effects on your system. This should
be avoided at all times.
If the value is too large, the application may use excessive amounts of memory. It may also increase the latency in the
system after the connection is lost.
Pick this number with caution. In-house testing shows good results when this value is set to 10,485,760. This is a good
starting value if you need to configure the socket buffer size.
Manual configuration of the socket buffer size is not available in the Windows operating system. It is
only used on the Linux operating system.
To configure the socket buffer size (Linux operating system)
You can change the socket buffer size with the following command:
sysctl -w net.core.rmem_max=10485760
sysctl -w net.core.wmem_max=10485760
The configuration can be performed at boot up by modifying the /etc/sysctl.conffile with the lines:
net.core.rmem_max=10485760
net.core.wmem_max=10485760
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
7/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 7
Minimizing the Impact of Windows Firewall and Other Filter
Drivers
Firewalls, anti-virus software, third-party filter drivers, Wireshark, and Windows networking traffic monitoring software
can affect the performance of your system because they monitor the incoming packets at different network stack layers.
For powerful systems or a low bandwidth stream, the impact of these filters may be negligible. For other systems, the
impact can be significant and needs to be handled appropriately.
To minimize the impact of Windows Firewall and other filter drivers, ensure you:
Turn off the Windows firewall.
Disable the anti-virus scan.
Disable third-party filter drivers (on the NICs properties page).
Do not open the Networkingtab in Windows Task Manager.
Do not run the Windows Performance Monitor (perfmon.exe).
Do not run Wireshark. Only use Wireshark when it is needed for debugging purposes.
Configuring Multiple NICs in a Single Computer
When there are multiple NICs installed in the same computer, we recommend that you configure each NIC with an IP
address on a unique subnet. The following scenario shows a computer with three NICs:
NIC #1
IP address:192.168.128.135
Subnet mask:255.255.255.0. For example, an office network.
NIC #2:
IP address:192.168.3.85
Subnet mask:255.255.255.0. For example, connected to one GigE Vision device.
NIC #3:
IP address:192.168.4.10
Subnet mask:255.255.255.0. For example, connected to another GigE Vision device.
With the configuration above, NIC #1 is on an office network with a DHCP server, which provides an IP address on the
192.168.128.x subnet. NIC #2 and NIC #3 use a static IP address.
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
8/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 8
To configure a static IP address for a NIC
1. In the Windows Control Panel, click Network and Internet.
2. Click Network and Sharing Center.
3. In the left-hand panel, click Change adapter settings.
4. Right-click the NIC and then click Properties.
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
9/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 9
5. Click Internet Protocol Version 4 TCP/IPv4)and then click Properties.
6. Select Use the following IP addressand give the NIC an IP address. We recommend you leave the Default
gatewaybox empty.
7. Close the open dialog boxes to apply the changes.
If NIC #2 and #3 both use Obtain an IP address automatically(the default Windows setting) and there
is no DHCP server on either network, both NICs automatically get an LLA IP address of 169.254.x.y and
a subnet mask of 255.255.0.0. In this situation, the IP addresses are on the same subnet, which is anincorrect configuration.
If there is an unused NIC in your computer and it is not connected to a network, then you do not need to
configure its IP address.
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
10/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 10
Configuring Power Management (Windows Operating System
Only)
For image streaming applications that run for an extended period of time, we recommend that you change the Windows
power plan settings to ensure the computer and NIC never go to sleep. If you do not change the power plan settings, the
computer or NIC may go to sleep when there is no activity from the keyboard or mouse for certain amount of time and
the image stream may be interrupted.
To configure the power plan settings
1. In the Windows Control Panel, click Hardware and Soundand then click Power Options.
2. Beside the selected power plan, click Change plan settings.
3. In the Put the computer to sleeplist, click Never.
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
11/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 11
4. You do not need to change the Turn off the displayoption. You can leave it at its current setting.
To configure the power settings for the NIC
1. In the Windows Control Panel, click Network and Internet.
2.
Click Network and Sharing Center.
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
12/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 12
3. In the left-hand panel, click Change adapter settings.
4. Right-click the NIC and then click Properties.
5. Click Configure.
6.
Configure the power management settings for the NIC to ensure the computer does not turn off the device to
save power.
7. Click OK.
8. Repeat steps 4-7 for each NIC on your computer.
Configuring Your Computers Video and Graphic Card
It is important that you update the version of the video card adapter driver. This component is often used during the
viewing process and may directly impact the overall system performance through CPU usage and the sharing of buses.
7/26/2019 Configuring Your Computer and Network Adapters for Best Performance Application Note
13/13
EX001-017-0006 Version 1.0 Configuring Your Computer and Network Adapters for Best Performance 13
Copyright Information
Copyright 2012 Pleora Technologies Inc.
These products are not intended for use in life support appliances, devices, or systems where malfunction of these
products can reasonably be expected to result in personal injury. Pleora Technologies Inc. (Pleora) customers using or
selling these products for use in such applications do so at their own risk and agree to indemnify Pleora for any damages
resulting from such improper use or sale.
Trademarks
PureGEV, eBUS, iPORT, vDisplay, and all product logos are trademarks of Pleora Technologies. Third party copyrights
and trademarks are the property of their respective owners.
Notice of Rights
All information provided in this manual is believed to be accurate and reliable. No responsibility is assumed by Pleora for
its use. Pleora reserves the right to make changes to this information without notice. Redistribution of this manual in
whole or in part, by any means, is prohibited without obtaining prior permission from Pleora.
Document Number
EX001-017-0006 Version 1.0