Creates a cross-region traffic scheduling policy for an Enterprise Edition transit router. You can invoke the CreateCenInterRegionTrafficQosPolicy operation to optimize and control forward and routing of cross-area network traffic.
Operation description
-
Only inter-region connections of an Enterprise Edition transit router support inter-region traffic QoS policies.
-
The traffic QoS feature applies only to the outbound direction of an Enterprise Edition transit router.
For example, if you create an inter-region connection between the China (Hangzhou) and China (Qingdao) regions and configure the traffic QoS feature for the transit router in the China (Hangzhou) region, the feature guarantees the bandwidth for various services when traffic flows from the China (Hangzhou) region to the China (Qingdao) region. However, the feature does not guarantee the service bandwidth when traffic flows from the China (Qingdao) region to the China (Hangzhou) region.
-
The CreateCenInterRegionTrafficQosPolicy operation is asynchronous. After you call this operation, the system returns a traffic QoS policy ID, but the policy is not immediately created. The creation task continues in the background. You can call the ListCenInterRegionTrafficQosPolicies operation to query the status of the traffic QoS policy.
If the traffic QoS policy is in the Creating state, the policy is being created. In this state, you can only query the policy and cannot perform other operations.
If the traffic QoS policy is in the Active state, the policy is created.
Before you begin
Before you call the CreateCenInterRegionTrafficQosPolicy operation, make sure that the following requirements are met:
An inter-region connection is created. For more information, see CreateTransitRouterPeerAttachment.
A traffic marking policy is created. For more information, see CreateTrafficMarkingPolicy.
Try it now
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
cen:CreateCenInterRegionTrafficQosPolicy |
create |
*All Resource
|
None | None |
Request parameters
|
Parameter |
Type |
Required |
Description |
Example |
| ClientToken |
string |
No |
The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length. |
123e4567-e89b-12d3-a456-426655**** |
| DryRun |
boolean |
No |
Specifies whether to only precheck the request. Valid values:
|
false |
| TransitRouterId |
string |
Yes |
The transit router instance ID, which is used for forward and routing. |
tr-8vbuqeo5h5pu3m01d**** |
| TransitRouterAttachmentId |
string |
Yes |
The ID of the inter-region connection. |
tr-attach-r6g0m3epjehw57**** |
| TrafficQosPolicyName |
string |
No |
The name of the traffic QoS policy. The name must be 1 to 128 characters in length, and can be left empty. It cannot start with http:// or https://. |
nametest |
| TrafficQosPolicyDescription |
string |
No |
The description of the traffic QoS policy. The description must be 1 to 256 characters in length, and can be left empty. It cannot start with http:// or https://. |
desctest |
| BandwidthGuaranteeMode |
string |
No |
The bandwidth guarantee mode. You can specify an absolute bandwidth value or a bandwidth percentage. Valid values:
|
byBandwidthPercent |
| TrafficQosQueues |
array<object> |
No |
The information about the queues in the traffic QoS policy. You can create up to three queues. To create more queues, call the CreateCenInterRegionTrafficQosQueue operation. |
|
|
object |
No |
The information about the queue. |
||
| QosQueueName |
string |
No |
The name of the queue. You can create up to three queues in a traffic QoS policy and specify a name for each queue. The name must be 1 to 128 characters in length, and can be left empty. It cannot start with http:// or https://. |
nametest |
| RemainBandwidthPercent |
string |
No |
The percentage of the inter-region bandwidth that the queue can use. You can create up to 10 queues in a traffic QoS policy and specify the percentage of the inter-region bandwidth that each queue can use. For example, if you enter 1, packets that match the queue can use up to 1% of the inter-region bandwidth. Note
The sum of the inter-region bandwidth percentages of all queues in a traffic QoS policy cannot exceed 100%. |
1 |
| Bandwidth |
string |
No |
The absolute value of the inter-region bandwidth that the queue can use. Unit: Mbit/s. You can create up to 10 queues in a traffic QoS policy and specify the inter-region bandwidth that each queue can use. For example, if you enter 1, packets that match the queue can use up to 1 Mbit/s of the inter-region bandwidth. Note
The sum of the absolute values of the inter-region bandwidth allocated to all queues in a traffic QoS policy cannot exceed the total inter-region bandwidth. |
1 |
| Dscps |
array |
No |
The DSCP values that match the queue. You can create up to three queues in a traffic QoS policy. Each queue can match up to 60 DSCP values. Separate multiple DSCP values with commas (,). |
|
|
integer |
No |
The DSCP values that match the queue. You can create up to three queues in a traffic QoS policy. Each queue can match up to 60 DSCP values. Separate multiple DSCP values with commas (,). |
5 |
|
| QosQueueDescription |
string |
No |
The description of the queue. You can create up to 10 queues in a traffic QoS policy and add a description to each queue. The description must be 1 to 256 characters in length, and can be left empty. It cannot start with http:// or https://. |
desctest |
| ConsoleDryRun |
boolean |
No |
Specifies whether to only precheck the request. Valid values:
|
false |
Response elements
|
Element |
Type |
Description |
Example |
|
object |
The response. |
||
| TrafficQosPolicyId |
string |
The ID of the traffic QoS policy. |
qos-eczzew0v1kzrb5**** |
| RequestId |
string |
The request ID. |
6DF9A765-BCD2-5C7E-8C32-C35C8A361A39 |
Examples
Success response
JSON format
{
"TrafficQosPolicyId": "qos-eczzew0v1kzrb5****",
"RequestId": "6DF9A765-BCD2-5C7E-8C32-C35C8A361A39"
}
Error codes
|
HTTP status code |
Error code |
Error message |
Description |
|---|---|---|---|
| 400 | AssociationExist.TrafficQos | The traffic qos with the specified attachment already exists. | The error message returned because the specified attachment is already associated with a QoS policy. |
| 400 | InvalidTransitRouterId.NotFound | The specified TransitRouterId is not found. | The error message returned because the specified transit router does not exist. |
| 400 | IllegalParam.TransitRouterAttachmentId | TransitRouterAttachmentId is illegal. | The error message returned because the specified transit router is invalid. |
| 400 | InvalidParamSize.TrafficQosQueues | The queue size included in the traffic QoS policy exceeds the limit. | The queue size included in the traffic scheduling policy exceeds the limit. |
| 400 | IllegalParam.BandwidthGuaranteeModeMismatch | The BandwidthGuaranteeMode does not match the Bandwidth or RemainBandwidthPercent. | The BandwidthGuaranteeMode does not match the Bandwidth or RemainBandwidthPercent. |
| 400 | IllegalParam.AttachmentBandwidthExceed | The entered bandwidth causes the total QoS guaranteed bandwidth to exceed the cross-region bandwidth allocation value. | The entered bandwidth causes the total QoS guaranteed bandwidth to exceed the cross-region bandwidth allocation value. |
| 400 | IllegalParam.BandwidthGuaranteeMode | The input bandwidth guarantee type is not valid. | The input bandwidth guarantee type is not valid. |
| 400 | MissingParam.RemainBandwidthPercent | RemainBandwidthPercent is missing. | RemainBandwidthPercent is missing. |
| 400 | MissingParam.Bandwidth | The parameter Bandwidth is mandatory. | The error message returned because no bandwidth value is specified. You must specify a bandwidth value. |
| 400 | IllegalParam.RemainBandwidthPercent | The specified RemainBandwidthPercent is invalid. | The error message returned because the RemainBandwidthPercent parameter is set to invalid value. |
| 400 | IllegalParam.Bandwidth | Bandwidth is illegal | The error message returned because the specified bandwidth value is invalid. |
| 400 | IllegalParam.BandwidthPackageStatus | The status of the bandwidth package is incorrect. | The status of the bandwidth package is incorrect. |
| 400 | IncorrectStatus.TransitRouterInstance | The status of TransitRouter is incorrect. | The error message returned because the transit router is in an invalid state. |
| 400 | IncorrectStatus.TransitRouterAttachment | TransitRouterAttachmentId status is invalid. | The error message returned because the status of the transit router attachment does not support this operation. Try again later. |
| 400 | InvalidParameter | Invalid parameter. | The error message returned because the parameter is set to an invalid value. |
| 400 | Unauthorized | The AccessKeyId is unauthorized. | The error message returned because you do not have the permissions to perform this operation. |
| 400 | MissingParam.TransitRouterId | The parameter TransitrouterId is mandatory. | The error message returned because the TransitRouterId parameter is not set. |
| 400 | MissingParam.TransitRouterAttachmentId | The parameter TransitRouterAttachmentId is Missing. | The error message returned because the TransitRouterAttachmentId parameter is not set. |
| 400 | Forbidden.CDTServiceExpired | The CDT service is out of service. | The cloud data transfer service has been suspended due for payment. Please renew the service and try again. |
| 400 | OperationUnsupported.TransitRouterType | The specified TransitRouterType does not support the operation. | The error message returned because this operation is not supported by the specified type of transit router. |
| 400 | OperationUnsupported.QosPolicyForLowLatencyLinkType | QoS Policy is not supported for Low Latency LinkType. | QoS Policy is not supported for Low Latency LinkType. |
| 400 | InvalidTransitRouterAttachmentId.NotFound | TransitRouterAttachmentId is not found. | The error message returned because the ID of the network instance does not exist. |
| 400 | IncorrectStatus.TransitRouterAttachmentId | The resource is not in a valid state for the attachment operation. | The error message returned because the operation is not supported when the specified attachment is in an unstable state |
| 400 | InvalidOperation.QueueLinkTypeNotEqualsAttachmentLinkType | The operation is invalid because the link type of an existing QoS queue does not match the link type of the attachment. | The operation is invalid because the link type of an existing QoS queue does not match the link type of the attachment. |
| 400 | ParamMismatch.BandwidthGuaranteeModeAndQueueSchedulingMode | The parameters BandwidthGuaranteeMode and QueueSchedulingMode are incompatible. | The parameters BandwidthGuaranteeMode and QueueSchedulingMode are incompatible. |
| 400 | InvalidOperation.NotSupportHierarchicalQoS | The operation is invalid because the transit router does not support HierarchicalQoS. | The operation is invalid because the transit router does not support HierarchicalQoS. |
| 400 | InvalidOperation.QueuesExceeded | The operation is invalid because the maximum queue quota for HierarchicalQoS has been exceeded. | The operation is invalid because the maximum queue quota for HierarchicalQoS has been exceeded. |
| 400 | ParamMismatch.QueueSchedulingModeAndBandwidth | The parameters QueueSchedulingMode and Bandwidth are incompatible. | The parameters QueueSchedulingMode and Bandwidth are incompatible. |
| 400 | IllegalParam.QueueType | The parameter QueueType is illegal. | The parameter QueueType is illegal. |
| 400 | ParamMismatch.QueueTypeAndBandwidthPercent | The parameters QueueType and BandwidthPercent are incompatible. | The parameters QueueType and BandwidthPercent are incompatible. |
| 400 | InvalidOperation.PriorityQueueExceeded | The operation is invalid because HierarchicalQoS supports only one priority queue. | The operation is invalid because HierarchicalQoS supports only one priority queue. |
| 400 | ParamMismatch.QueueSchedulingModeAndQueueType | The parameters QueueSchedulingMode and QueueType are incompatible. | The parameters QueueSchedulingMode and QueueType are incompatible. |
| 400 | ParamMismatch.QueueSchedulingModeAndLinkType | The parameters QueueSchedulingMode and LinkType are incompatible. | The parameters QueueSchedulingMode and LinkType are incompatible. |
| 400 | IllegalParam.QueueSchedulingMode | The parameter QueueSchedulingMode is illegal. | The parameter QueueSchedulingMode is illegal. |
| 400 | InvalidOperation.TransitRouterNotSupportHierarchicalQoS | The operation is invalid because the transit router does not support HierarchicalQoS. | The operation is invalid because the transit router does not support HierarchicalQoS. |
| 400 | InvalidParameter.TransitRouterAttachmentId | The specified parameter TransitRouterAttachmentId is invalid. | The parameter TransitRouterAttachmentId entered is illegal. |
| 400 | InvalidParameter.TransitRouterId | The specified parameter TransitRouterId is invalid. | The parameter TransitRouterId entered is illegal. |
See Error Codes for a complete list.
Release notes
See Release Notes for a complete list.