Throttling enables you to fine-tune the data replication activities for your
environment. Data Replication activities can be throttled using the following:
Frequency of log file transfers. See Log
files for more information.
Replication Activity Throttling is supported only on Windows.
The following can be configured on the Source computer:
Interruption of replication activity, based on the percentage of allocated log
space remaining on the source computer. (See
System Aborted.)
The following can be configured on the Destination computer, and is
recommended; it will impact all source computers that use this destination
computer:
Throttle the source computer, based on the percentage of allocated log
space remaining on the destination computer. When throttling is imposed, it
will reduce the maximum transfer rate specified as the Throttling Amount for
the source computer by 50%. Since this throttle is based on the value
specified as the Throttling Amount for the source computer, if you do not
specify a value, no throttling will be imposed.
Stop the source computer from sending logs, based on the percentage of
allocated log space remaining on the destination computer.
In the throttling amount, maximum network transfer rate, is measured in megabits per
second (Mbps).
On Windows, the setting for Throttling Amount will apply to each pipeline engaged in replication
activity, not the aggregate of all pipelines for all Replication Pairs on the
computer. With respect to the number of pipelines that will be active at any
one time, review the following based on an example of having a Throttling Amount setting
of 10Mbps:
Each Replication Pair requires a pipeline during Baselining or
SmartSync; if you have
3 Replication Pairs in the SmartSync phases at the same time, you have 3
pipelines active, and thus a 30Mbps maximum network transfer rate for
the source client (3 pipelines at 10Mbps each.) After Baselining and
SmartSync have completed
for each Replication Pair, only 1 pipeline will remain in use, and the maximum
network transfer rate will be reduced to 10Mbps.
Fan-Out configurations require a pipeline for each destination client;
if you have 5 Replication Sets configured to replicate data to 5 clients,
you have 5 pipelines active, and thus a 50Mbps maximum network transfer
rate for the source client (5 pipelines at 10Mbps each.)
Other than the cases listed, Baselining or SmartSync, and Fan-Out, all other
replication activity will require 1 pipeline, and thus the Throttling Amount
specified will apply to the aggregate of all activity on the source
computer, comprised of the replication activities of all Replication Pairs.
On UNIX, the setting for Throttling Amount will apply to the aggregate of all pipelines for all Replication Pairs on the
computer. With respect to the number of pipelines that will be active at any
one time, review the following based on an example of having a Throttling Amount setting
of 30Mbps:
Each Replication Pair requires a pipeline during Baselining or SmartSync; if you have
3 Replication Pairs in the SmartSync phases at the same time, you have 3
pipelines active, which will equally divide the specified 30Mbps maximum
network transfer rate for the source client, for a maximum rate of 10Mbps
each. After Baselining and SmartSync have completed for each Replication
Pair, only 1 pipeline will remain in use, and the maximum network transfer
rate of 30Mbps will apply to that pipeline.
Fan-Out configurations require a pipeline for each destination
client; if you have 5 Replication Sets configured to replicate data to 5
clients, you have 5 pipelines active, which will equally divide the
specified 30Mbps maximum network transfer rate for the source client,
for a maximum rate of 6Mbps each.
If your destination computer is serving that function for multiple source
computer, you may need to set this limit on each of the source computers, such
that the destination computer has sufficient time for log replay from all source
computers. Note that the Throttling Amount must be specified first, before you
can create Bandwidth Throttling Rules (see next item.)
The scheduled network throttling, specifying
a time range, and a percentage of maximum transfer rate, specified as the Throttling Amount, during that time range.
Once again, the limit set here will apply to the aggregate of all activity on the source computer, comprised of the replication activities of all Replication
Pairs. This setting allows you to select high and low (or no) activity periods
in a manner similar to the 'operation window' concept used when scheduling the
activities of job-based Agents.
Considerations
When configuring throttling, you should consider what unintended affects
throttling might have on operations. As one example, if you have a source computer
that has significant file write activity, and you impose network bandwidth throttling
which makes it impossible to transfer the logs quickly enough to the destination
computer to keep pace with the rate of change on the source computer, log file
space requirements would increase dramatically on the source computer. In such
a case, provision must be made for sufficient log file space, based on the expected
activity and throttling.
An example of a beneficial use of throttling involves configurations where
multiple source computers are all configured to use the same destination computer.
In this case, you may want to impose throttling on the source computers to allow
the destination computer enough time to keep pace with all the log files it
is receiving, and ensure sufficient log space on the destination computer as
well to accommodate all of the logs it will be receiving.
You can configure Alerts to be generated when throttling is imposed, or
when 80 percent or more of a volume's disk space is consumed, for all of the
client computer's volumes. For more information, see
Alerts and Monitoring.
On Windows in a clustered environment, when a cluster node is
the active node for more than one virtual server at the same time,
throttling rules are applied equally to all of the virtual servers hosted by
that physical node, using
the highest numbers specified for any one of them. For example, consider an
active node hosting three virtual servers simultaneously, with throttling
configured as follows on each of the virtual servers, VS1, VS2, and VS3:
Throttling Parameter
VS1
VS2
VS3
Throttling based on percentage of free log
space on destination:
30%
35%
40%
Stop
replication based on percentage of free log space on
destination:
80%
70%
60%
Abort source based on percentage of free log space
on source:
75%
80%
70%
Network Bandwidth Throttling amount:
10Mbps
40Mbps
90Mbps
Since throttling for all Virtual Servers will be based on the
highest number specified for any one of them, all three Virtual
Servers would be subject to the throttling numbers shown in bold, not
necessarily the numbers specified individually. If throttling is imposed
based on the destination computer running low on log space, in this example,
when free log space reaches 40% on any virtual server, the maximum transfer
rate will be reduced by 50% on each of the virtual servers -- to 5Mbps on
VS1, 20Mbps on VS2, and 45Mbps on VS3.