Actions9
Overview
The "Set Interface Rate Limit" operation in this Juniper Netconf node allows users to configure rate limiting on a specific interface of a Juniper network device using NETCONF over SSH. This operation sets a policer (rate limit) on the input, output, or both directions of a logical interface unit.
This node is beneficial in scenarios where network administrators want to control traffic flow rates on interfaces to prevent congestion or enforce bandwidth policies. For example, you might use it to limit the maximum bandwidth on an interface connected to a particular customer or service.
Practical example:
- Set a 100 Mbps policer named
li-limit100Mon the physical interfacege-1/2/7, logical unit 0, applying the limit to both incoming and outgoing traffic. - Automatically commit the configuration changes after setting the rate limit.
Properties
| Name | Meaning |
|---|---|
| Host | The hostname or IP address of the Juniper device to connect to. |
| Port | The port number for NETCONF over SSH connection (default is 830). |
| Interface Name | The name of the interface to configure (e.g., ge-1/2/7). |
| Unit Number | The logical unit number of the interface (e.g., 0). |
| Policer Name | The name of the policer (rate limit profile) to apply (e.g., li-limit100M). |
| Direction | The direction(s) to apply the rate limit: Input Only, Output Only, or Both Input and Output. |
| Auto Commit | Whether to automatically commit the configuration changes after applying the rate limit. |
| Commit Timeout (Ms) | Timeout in milliseconds for the commit operation if auto commit is enabled (default 120000 ms). |
Output
The node outputs JSON data representing the result of the NETCONF RPC call to set the interface rate limit. Specifically:
- The XML response from the device is parsed into JSON format.
- If auto commit is enabled, the output includes both the edit-config result and the commit result wrapped inside a
<configuration-result>structure. - If auto commit is disabled, the output indicates that the configuration was edited but not committed.
- The output JSON contains fields like
edit-resultandcommit-resultreflecting the success or failure of each step.
No binary data output is produced by this operation.
Example output JSON structure (simplified):
{
"data": {
"configuration-result": {
"edit-result": { /* result of edit-config RPC */ },
"commit-result": { /* result of commit RPC, if autoCommit true */ },
"commit-status": "not-committed" // if autoCommit false
}
}
}
Dependencies
- Requires a valid API authentication credential with access to the Juniper device via NETCONF over SSH.
- The node uses a NETCONF client library to establish SSH connections and send RPC commands.
- The Juniper device must support NETCONF and have the appropriate policers configured or available.
- Network connectivity to the specified host and port must be open and accessible.
Troubleshooting
- Missing Credentials: The node will throw an error if the required API authentication credentials are missing. Ensure credentials are properly configured.
- Connection Issues: Failure to connect to the Juniper device may occur due to incorrect host, port, network issues, or SSH key problems.
- Invalid Interface or Policer Names: Providing non-existent interface names or policer names will cause the device to reject the configuration.
- Unsupported Direction Value: The direction property must be one of "input", "output", or "both". Other values will cause errors.
- Commit Failures: If auto commit is enabled but the commit fails or times out, the node will report the error. Adjust the commit timeout or verify device status.
- XML Syntax Errors: Malformed XML in the RPC request can cause the device to reject the command. The node constructs XML based on parameters, so ensure inputs are valid.
To resolve errors:
- Verify all input parameters are correct and supported by the device.
- Check network connectivity and credentials.
- Review device logs for detailed error messages.
- Increase commit timeout if commits take longer than expected.