AWS cli documentation change
Summary
Updated CLI version references from 1.40.40 to 2.27.42, added documentation for new 'preferred_transfer_client' and 'target_bandwidth' configuration options, introduced Experimental Configuration Values section, and removed deprecated version warning.
Security assessment
The changes primarily document new transfer client options (CRT vs classic) and bandwidth management features. While the CRT client optimization for specific EC2 instances might have performance implications, there is no explicit mention of security vulnerabilities being addressed. The experimental section disclaimer is standard for unstable features but doesn't indicate security risks.
Diff
diff --git a/cli/latest/topic/s3-config.md b/cli/latest/topic/s3-config.md index 4fc58ab82..c68581126 100644 --- a//cli/latest/topic/s3-config.md +++ b//cli/latest/topic/s3-config.md @@ -15 +15 @@ - * [AWS CLI 1.40.40 Command Reference](../index.html) » + * [AWS CLI 2.27.42 Command Reference](../index.html) » @@ -40,0 +41,3 @@ + * preferred_transfer_client + * target_bandwidth + * Experimental Configuration Values @@ -57,6 +59,0 @@ First time using the AWS CLI? See the [User Guide](https://docs.aws.amazon.com/c -### Note: - -You are viewing the documentation for an older major version of the AWS CLI (version 1). - -AWS CLI version 2, the latest major version of AWS CLI, is now stable and recommended for general use. To view this page for the AWS CLI version 2, click [here](https://awscli.amazonaws.com/v2/documentation/api/latest/topic/s3-config.html). For more information see the AWS CLI version 2 [installation instructions](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html) and [migration guide](https://docs.aws.amazon.com/cli/latest/userguide/cliv2-migration.html). - @@ -82,0 +80,2 @@ These are the configuration values you can set specifically for the `aws s3` com +For experimental `s3` configuration values, see the the Experimental Configuration Values section. + @@ -172 +171 @@ Once the S3 commands have decided to use multipart operations, the file is divid -This controls the maximum bandwidth that the S3 commands will utilize when streaming content data to and from S3. Thus, this value only applies for uploads and downloads. It does not apply to copies nor deletes because those data transfers take place server side. The value is in terms of **bytes** per second. The value can be specified as: +This controls the maximum bandwidth that the S3 commands will utilize when streaming content data to and from S3. Thus, this value only applies for uploads and downloads. It does not apply to copies nor deletes because those data transfers take place server side. The value can be specified as: @@ -174,2 +173,2 @@ This controls the maximum bandwidth that the S3 commands will utilize when strea - * An integer. For example, `1048576` would set the maximum bandwidth usage to 1 MB per second. - * A rate suffix. You can specify rate suffixes using: `KB/s`, `MB/s`, `GB/s`, etc. For example: `300KB/s`, `10MB/s`. + * An integer in terms of **bytes** per second. For example, `1048576` would set the maximum bandwidth usage to 1 MB per second. + * A rate suffix. This can be expressed in terms of either bytes per second (`B/s`) or bits per second (`b/s`). You can specify rate suffixes using: `KB/s`, `MB/s`, `GB/s`, `Kb/s`, `Mb/s`, `Gb/s` etc. For example: `300KB/s`, `10MB/s`, `300Kb/s`, `10Mb/s`. @@ -204,0 +204,54 @@ By default, this is disabled for streaming uploads (UploadPart and PutObject), b +### preferred_transfer_client¶ + +**Default** \- `auto` + +Determines the underlying Amazon S3 transfer client to use for transferring files to and from S3. Valid choices are: + + * `auto` \- Auto resolve the Amazon S3 transfer client to use. Currently, it resolves to `crt` when all of the following criteria is met: + + * The `s3` command used is not an S3 to S3 copy transfer. The `crt` transfer client currently only supports uploads to S3, downloads from S3, and deletion of S3 objects. + * The host running the AWS CLI is optimized for the `crt` transfer client. Currently, the `crt` transfer client is optimized for Amazon EC2 instances that are running Linux as the operating system and are of any of these instance types: + * `p4d.24xlarge` + * `p4de.24xlarge` + * `p5.48xlarge` + * `trn1n.32xlarge` + * `trn1.32xlarge` + * There are no other running processes of the AWS CLI using the CRT S3 transfer client. To force multiple concurrently running processes of the AWS CLI to use the CRT S3 transfer client, set the `preferred_transfer_client` configuration variable to `crt`. + +Otherwise, it resolves to `classic`. Between versions of the AWS CLI, auto resolution criteria may change. To guarantee use of a specific transfer client, set the `preferred_transfer_client` configuration variable to the appropriate transfer client listed below. + + * `classic` \- Use the builtin, Python-based transfer client that supports all `s3` commands, parameters, and most configuration values. + + * `crt` \- Use the AWS Common Runtime (CRT) transfer client when possible. It is a C-based S3 transfer client that can improve transfer throughput. Currently, the CRT transfer client does not support all of the functionality available in the `classic` transfer client. The list below details what functionality is currently not supported by the `crt` transfer client option and the corresponding behavior of the AWS CLI if it is configured to prefer the `crt` transfer client: + + * S3 to S3 copies - Falls back to using the `classic` transfer client + * Region redirects - Transfers fail for requests sent to a region that does not match the region of the targeted S3 bucket. + * `max_concurrent_requests`, `max_queue_size`, `multipart_threshold`, and `max_bandwidth` configuration values - Ignores these configuration values. + + + +### target_bandwidth¶ + +### Note + +This configuration option is only supported when the `preferred_transfer_client` configuration value is set to or resolves to `crt`. The `classic` transfer client does not support this configuration option. + +**Default** \- Automatically derived based on system + +Controls the target bandwidth that the transfer client will try to reach for S3 uploads and downloads. By default, the AWS CLI will automatically attempt to choose a target bandwidth that matches the system’s maximum network bandwidth. Currently, if the AWS CLI is unable to determine the maximum network bandwith, the AWS CLI falls back to a target bandwidth of ten gigabits per second (i.e. equivalent to setting the `target_bandwidth` configuration option to `10000000000b/s`). To set a specific target bandwith, explicitly configure the `target_bandwidth` configuration option. Its value can be specified as: + + * An integer in terms of **bytes** per second. For example, `1073741824` would set the target bandwidth to 1 gibibyte per second. + * A rate suffix. This can be expressed in terms of either bytes per second (`B/s`) or bits per second (`b/s`). You can specify rate suffixes using: `KB/s`, `MB/s`, `GB/s`, `Kb/s`, `Mb/s`, `Gb/s` etc. For example: `200MB/s`, `10GB/s`, `200Mb/s`, `10Gb/s`. When specifying rate suffixes, values are expanded using powers of 2 instead of 10. For example, specifying `1KB/s` is equivalent to specifying `1024B/s` instead of `1000B/s`. + + + +This difference between `target_bandwidth` and the `max_bandwidth` is that `max_bandwidth` is purely for rate limiting and makes no adjustments to increase throughput. The `target_bandwidth` configuration may make adjustments mid-transfer command in order to increase throughput and reach the requested bandwidth. + +## Experimental Configuration Values¶ + +### Warning + +All configuration values listed in this section are considered experimental and are **not** recommended for use in production. Furthermore, backwards compatibility or even existence of each configuration value is not guaranteed between versions of the AWS CLI. + +There are currently no experimental configuration values. + @@ -215 +268 @@ By default, this is disabled for streaming uploads (UploadPart and PutObject), b - * [AWS CLI 1.40.40 Command Reference](../index.html) » + * [AWS CLI 2.27.42 Command Reference](../index.html) » @@ -219,0 +273,2 @@ By default, this is disabled for streaming uploads (UploadPart and PutObject), b + +© Copyright 2025, Amazon Web Services. Created using [Sphinx](https://www.sphinx-doc.org/).