upTimeMillis does not include time spent in deep sleep. Use elapsedRealtime instead. The time spent in deep sleep is important to include since the keepalives may still be ongoing during deep sleep and so that time should be included in duration calculations. Bug: 273451360 Fixes: 281639289 Test: atest FrameworksNetTests Change-Id: I54350d49bdfec58cc00dea6d82cba01f5d387bb0