time is _much_ harder to estimate and measure than bytes.
if you have a full-duplex connection (i.e. hard-wired ethernet on modern switches), bytes and time have a very close correlation.
if you are on a shared media connection (unfortunantly including all radio based systems), then the correlation is not as close due to the fact that you can't know ahead of time how long it will take to send the data (you have to wait for other systems, retry, etc)
I think bytes is as accurate as you are going to be able to get.