- To parallelize GET requests by requesting specific byte ranges
- To download the entire object at once
- To encrypt the object during download
- To replicate the object to another bucket