Your understanding is along the right path, but not fully correct. Find below a excerpt from the Definitive Guide book
It’s possible, but unlikely, that multiple datanodes fail while a block is being written. As long as dfs.replication.min replicas (which default to one) are written, the write will succeed, and the block will be asynchronously replicated across the cluster until its target replication factor is reached (dfs.replication, which defaults to three).
This suggests that the time taken by the -put command depends on the dfs.replication.min configuration found in the hdfs-default.xml
By default this is 1. So based on your example, it should take around 4 mins to complete.
As -put will wait for ack only from one data node.