Update neutron network node section to adjust MTU

I updated the neutron network node section to discuss the
implications of tunneling protocols such as GRE, provide
potential solutions, and recommend using DHCP to adjust the
instance MTU.

This patch does not address the equivalent section for the
deprecated OVS plug-in.

Change-Id: Ia8dd9fe78d5c845c85bfde0d96481a55f754e121
Closes-Bug: #1322799
This commit is contained in:
Matthew Kassawara 2014-08-17 02:28:15 +00:00
parent a16447c990
commit 951c047c28
2 changed files with 106 additions and 2 deletions

View File

@ -3455,9 +3455,9 @@
</glossentry>
<glossentry>
<glossterm>Generic Routing Encapsulation (GRE)</glossterm>
<glossterm>generic routing encapsulation (GRE)</glossterm>
<indexterm class="singular">
<primary>Generic Routing Encapsulation (GRE)</primary>
<primary>networks</primary>
</indexterm>
<glossdef>
<para>Protocol that encapsulates a wide variety of network
@ -4361,6 +4361,18 @@
</glossdef>
</glossentry>
<glossentry>
<glossterm>internet protocol (IP)</glossterm>
<indexterm class="singular">
<primary>networks</primary>
</indexterm>
<glossdef>
<para>Principal communications protocol in the internet protocol
suite for relaying datagrams across network boundaries.</para>
</glossdef>
</glossentry>
<glossentry>
<glossterm>Internet Service Provider (ISP)</glossterm>
<indexterm class="singular">
@ -4578,6 +4590,18 @@
</glossdef>
</glossentry>
<glossentry>
<glossterm>jumbo frames</glossterm>
<indexterm class="singular">
<primary>networks</primary>
</indexterm>
<glossdef>
<para>Feature in modern Ethernet networks that supports frames up to
approximately 9000 bytes.</para>
</glossdef>
</glossentry>
<glossentry>
<glossterm>Juno</glossterm>
<indexterm class="singular">
@ -4921,6 +4945,18 @@
</glossdef>
</glossentry>
<glossentry>
<glossterm>maximum transmission unit (MTU)</glossterm>
<indexterm class="singular">
<primary>networks</primary>
</indexterm>
<glossdef>
<para>Maximum frame or packet size for a particular network
medium. Typically 1500 bytes for Ethernet networks.</para>
</glossdef>
</glossentry>
<glossentry>
<glossterm>melange</glossterm>
<indexterm class="singular">
@ -5924,6 +5960,18 @@
</glossdef>
</glossentry>
<glossentry>
<glossterm>path MTU discovery (PMTUD)</glossterm>
<indexterm class="singular">
<primary>networks</primary>
</indexterm>
<glossdef>
<para>Mechanism in IP networks to detect end-to-end MTU and adjust
packet size accordingly.</para>
</glossdef>
</glossentry>
<glossentry>
<glossterm>pause</glossterm>
<indexterm class="singular">

View File

@ -248,6 +248,62 @@ use_namespaces = True</programlisting>
file.</para>
</note>
</step>
<step>
<para>Tunneling protocols such as
<glossterm>generic routing encapsulation (GRE)</glossterm>
include additional packet headers that increase overhead and
decrease space available for the payload or user data. Without
knowledge of the virtual network infrastructure, instances attempt
to send packets using the default Ethernet
<glossterm>maximum transmission unit (MTU)</glossterm> of 1500 bytes.
<glossterm>Internet protocol (IP)</glossterm> networks contain the
<glossterm>path MTU discovery (PMTUD)</glossterm> mechanism to detect
end-to-end MTU and adjust packet size accordingly. However, some
operating systems and networks block or otherwise lack support for
PMTUD causing performance degradation or connectivity failure.</para>
<para>Ideally, you can prevent these problems by enabling
<glossterm>jumbo frames</glossterm> on the physical network that
contains your tenant virtual networks. Jumbo frames support MTUs
up to approximately 9000 bytes which negates the impact of GRE
overhead on virtual networks. However, many network devices lack
support for jumbo frames and OpenStack administrators often lack
control of network infrastructure. Given the latter complications,
you can also prevent MTU problems by reducing the instance MTU to
account for GRE overhead. Determining the proper MTU value often
takes experimentation, but 1454 bytes works in most environments.
You can configure the <glossterm>DHCP</glossterm> server that assigns
IP addresses to your instances to also adjust the MTU.</para>
<note>
<para>Some cloud images such as CirrOS ignore the DHCP MTU
option.</para>
</note>
<substeps>
<step os="ubuntu;debian">
<para>Edit the <filename>/etc/neutron/dhcp_agent.ini</filename>
file and add the following keys to the
<literal>[DEFAULT]</literal> section:</para>
<programlisting language="ini">[DEFAULT]
...
dnsmasq_config_file = /etc/neutron/dnsmasq-neutron.conf</programlisting>
</step>
<step os="rhel;centos;fedora;sles;opensuse">
<para>Run the following command:</para>
<screen><prompt>#</prompt> <userinput>openstack-config --set /etc/neutron/dhcp_agent.ini DEFAULT \
dnsmasq_config_file /etc/neutron/dnsmasq-neutron.conf</userinput></screen>
</step>
<step>
<para>Create and edit the
<filename>/etc/neutron/dnsmasq-neutron.conf</filename> file and
add the following keys:</para>
<programlisting>dhcp-option-force=26,1454</programlisting>
</step>
<step>
<para>Kill any existing
<systemitem role="process">dnsmasq</systemitem> processes:</para>
<screen><prompt>#</prompt> <userinput>killall dnsmasq</userinput></screen>
</step>
</substeps>
</step>
</procedure>
<procedure>
<title>To configure the metadata agent</title>