| <?xml version='1.0' encoding='utf-8' ?> |
| <!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ |
| <!ENTITY % BOOK_ENTITIES SYSTEM "cloudstack.ent"> |
| %BOOK_ENTITIES; |
| ]> |
| <!-- Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| http://www.apache.org/licenses/LICENSE-2.0 |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| <section id="network-rate"> |
| <title>Network Throttling</title> |
| <para>Network throttling is the process of controlling the network access and bandwidth usage |
| based on certain rules. &PRODUCT; controls this behaviour of the guest networks in the cloud by |
| using the network rate parameter. This parameter is defined as the default data transfer rate in |
| Mbps (Megabits Per Second) allowed in a guest network. It defines the upper limits for network |
| utilization. If the current utilization is below the allowed upper limits, access is granted, |
| else revoked.</para> |
| <para>You can throttle the network bandwidth either to control the usage above a certain limit for |
| some accounts, or to control network congestion in a large cloud environment. The network rate |
| for your cloud can be configured on the following:</para> |
| <itemizedlist> |
| <listitem> |
| <para>Network Offering</para> |
| </listitem> |
| <listitem> |
| <para>Service Offering</para> |
| </listitem> |
| <listitem> |
| <para>Global parameter</para> |
| </listitem> |
| </itemizedlist> |
| <para>If network rate is set to NULL in service offering, the value provided in the |
| vm.network.throttling.rate global parameter is applied. If the value is set to NULL for network |
| offering, the value provided in the network.throttling.rate global parameter is |
| considered.</para> |
| <para>For the default public, storage, and management networks, network rate is set to 0. This |
| implies that the public, storage, and management networks will have unlimited bandwidth by |
| default. For default guest networks, network rate is set to NULL. In this case, network rate is |
| defaulted to the global parameter value.</para> |
| <para>The following table gives you an overview of how network rate is applied on different types |
| of networks in &PRODUCT;.</para> |
| <informaltable> |
| <tgroup cols="2" align="left" colsep="1" rowsep="1"> |
| <colspec colwidth="1.0*" colname="1" colnum="1"/> |
| <colspec colwidth="3.18*" colname="2" colnum="2"/> |
| <thead> |
| <row> |
| <entry><para>Networks</para></entry> |
| <entry><para>Network Rate Is Taken from</para></entry> |
| </row> |
| </thead> |
| <tbody> |
| <row> |
| <entry><para>Guest network of Virtual Router</para></entry> |
| <entry><para>Guest Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Public network of Virtual Router</para></entry> |
| <entry><para>Guest Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Storage network of Secondary Storage VM</para></entry> |
| <entry><para>System Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Management network of Secondary Storage VM</para></entry> |
| <entry><para>System Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Storage network of Console Proxy VM</para></entry> |
| <entry><para>System Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Management network of Console Proxy VM</para></entry> |
| <entry><para>System Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Storage network of Virtual Router</para></entry> |
| <entry><para>System Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Management network of Virtual Router</para></entry> |
| <entry><para>System Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Public network of Secondary Storage VM</para></entry> |
| <entry><para>System Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Public network of Console Proxy VM</para></entry> |
| <entry><para>System Network Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Default network of a guest VM</para></entry> |
| <entry><para>Compute Offering</para></entry> |
| </row> |
| <row> |
| <entry><para>Additional networks of a guest VM</para></entry> |
| <entry><para>Corresponding Network Offerings</para></entry> |
| </row> |
| </tbody> |
| </tgroup> |
| </informaltable> |
| <para>A guest VM must have a default network, and can also have many additional networks. |
| Depending on various parameters, such as the host and virtual switch used, you can observe a |
| difference in the network rate in your cloud. For example, on a VMware host the actual network |
| rate varies based on where they are configured (compute offering, network offering, or both); |
| the network type (shared or isolated); and traffic direction (ingress or egress). </para> |
| <para>The network rate set for a network offering used by a particular network in &PRODUCT; is |
| used for the traffic shaping policy of a port group, for example: port group A, for that |
| network: a particular subnet or VLAN on the actual network. The virtual routers for that network |
| connects to the port group A, and by default instances in that network connects to this port |
| group. However, if an instance is deployed with a compute offering with the network rate set, |
| and if this rate is used for the traffic shaping policy of another port group for the network, |
| for example port group B, then instances using this compute offering are connected to the port |
| group B, instead of connecting to port group A.</para> |
| <para>The traffic shaping policy on standard port groups in VMware only applies to the egress |
| traffic, and the net effect depends on the type of network used in &PRODUCT;. In shared |
| networks, ingress traffic is unlimited for &PRODUCT;, and egress traffic is limited to the rate |
| that applies to the port group used by the instance if any. If the compute offering has a |
| network rate configured, this rate applies to the egress traffic, otherwise the network rate set |
| for the network offering applies. For isolated networks, the network rate set for the network |
| offering, if any, effectively applies to the ingress traffic. This is mainly because the network |
| rate set for the network offering applies to the egress traffic from the virtual router to the |
| instance. The egress traffic is limited by the rate that applies to the port group used by the |
| instance if any, similar to shared networks. </para> |
| <para>For example:</para> |
| <para>Network rate of network offering = 10 Mbps</para> |
| <para>Network rate of compute offering = 200 Mbps</para> |
| <para>In shared networks, ingress traffic will not be limited for &PRODUCT;, while egress traffic |
| will be limited to 200 Mbps. In an isolated network, ingress traffic will be limited to 10 Mbps |
| and egress to 200 Mbps.</para> |
| </section> |