Chunked HTTP transfers allow sending a stream of unknown size. Support for chunked transfer is mandated by the HTTP/1.1 protocol. See: https://tools.ietf.org/html/rfc7230#section-4.1
It is unclear to what extent this is actually required (what S3 servers will serve chunked messages?), but it could be useful for uploading streaming data to an S3 server, for instance.