Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(42)

Issue 2722933002: Measure packet loss so we can use it to select ICE candidate pairs. (Closed)

Created:
3 years, 9 months ago by Zach Stein
Modified:
3 years, 9 months ago
CC:
webrtc-reviews_webrtc.org, tterriberry_mozilla.com
Target Ref:
refs/heads/master
Project:
webrtc
Visibility:
Public.

Description

Measure packet loss so we can use it to select ICE candidate pairs. BUG=webrtc:7028 Review-Url: https://codereview.webrtc.org/2722933002 Cr-Commit-Position: refs/heads/master@{#17313} Committed: https://chromium.googlesource.com/external/webrtc/+/abbacbf4892b98d77a53d2a5a5ed58d2162afdc6

Patch Set 1 #

Patch Set 2 : better comments and test names #

Total comments: 26

Patch Set 3 : Responding to Taylor's comments (don't divide by zero, simplify packet expiration, use an unordered… #

Patch Set 4 : Move PacketLossEstimator to its own files. #

Patch Set 5 : add forget_after, simplify the implementation and tests, and increase coverage slightly #

Patch Set 6 : Call UpdateResponseRate from inside PacketLossEstimator ocasionally to avoid unbounded memory growt… #

Patch Set 7 : test that UpdateResponseRate is called internally #

Total comments: 24

Patch Set 8 : Don't update the response rate when forgetting old requests + style feedback. #

Total comments: 2

Patch Set 9 : Add back tests that packets are forgotten when UpdateResponseRate is not called. Add a debugging me… #

Patch Set 10 : Clean up some comments and add a test case where a response is received early. #

Total comments: 1

Patch Set 11 : Append ForTesting to TrackedPacketsString method name. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+409 lines, -7 lines) Patch
M webrtc/p2p/BUILD.gn View 1 2 3 2 chunks +3 lines, -0 lines 0 comments Download
A webrtc/p2p/base/packetlossestimator.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +86 lines, -0 lines 0 comments Download
A webrtc/p2p/base/packetlossestimator.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +126 lines, -0 lines 0 comments Download
A webrtc/p2p/base/packetlossestimator_unittest.cc View 1 2 3 4 5 6 7 8 9 1 chunk +172 lines, -0 lines 0 comments Download
M webrtc/p2p/base/port.h View 1 2 3 4 5 6 7 3 chunks +10 lines, -7 lines 0 comments Download
M webrtc/p2p/base/port.cc View 1 2 3 4 4 chunks +12 lines, -0 lines 0 comments Download

Messages

Total messages: 17 (5 generated)
Zach Stein
Just the measurement code so far. Will look at other places to measure from (P2PTransportChannel::OnCheckAndPing?) ...
3 years, 9 months ago (2017-03-01 00:32:00 UTC) #2
Taylor Brandstetter
Looks good; and good idea making this a standalone CL. https://codereview.webrtc.org/2722933002/diff/20001/webrtc/p2p/base/port.cc File webrtc/p2p/base/port.cc (right): https://codereview.webrtc.org/2722933002/diff/20001/webrtc/p2p/base/port.cc#newcode152 ...
3 years, 9 months ago (2017-03-01 02:26:13 UTC) #3
Zach Stein
https://codereview.webrtc.org/2722933002/diff/20001/webrtc/p2p/base/port.cc File webrtc/p2p/base/port.cc (right): https://codereview.webrtc.org/2722933002/diff/20001/webrtc/p2p/base/port.cc#newcode152 webrtc/p2p/base/port.cc:152: // 3) we never expected to see this id ...
3 years, 9 months ago (2017-03-02 00:02:23 UTC) #4
Taylor Brandstetter
https://codereview.webrtc.org/2722933002/diff/20001/webrtc/p2p/base/port.h File webrtc/p2p/base/port.h (right): https://codereview.webrtc.org/2722933002/diff/20001/webrtc/p2p/base/port.h#newcode462 webrtc/p2p/base/port.h:462: int64_t get_responses_received() const { return responses_received_; } On 2017/03/02 ...
3 years, 9 months ago (2017-03-02 03:09:58 UTC) #5
Zach Stein
I think I responded to everything + more. Please take another look, thanks!
3 years, 9 months ago (2017-03-06 21:11:12 UTC) #6
Taylor Brandstetter
https://codereview.webrtc.org/2722933002/diff/120001/webrtc/p2p/base/packetlossestimator.cc File webrtc/p2p/base/packetlossestimator.cc (right): https://codereview.webrtc.org/2722933002/diff/120001/webrtc/p2p/base/packetlossestimator.cc#newcode2 webrtc/p2p/base/packetlossestimator.cc:2: * Copyright 2004 The WebRTC Project Authors. All rights ...
3 years, 9 months ago (2017-03-07 18:16:32 UTC) #7
Zach Stein
Thanks for all the feedback so far! Here is my next round of thinking. https://codereview.webrtc.org/2722933002/diff/120001/webrtc/p2p/base/packetlossestimator.cc ...
3 years, 9 months ago (2017-03-08 06:21:15 UTC) #8
Taylor Brandstetter
lgtm after addressing comment about "PacketLossEstimatorInterface" https://codereview.webrtc.org/2722933002/diff/120001/webrtc/p2p/base/packetlossestimator.cc File webrtc/p2p/base/packetlossestimator.cc (right): https://codereview.webrtc.org/2722933002/diff/120001/webrtc/p2p/base/packetlossestimator.cc#newcode22 webrtc/p2p/base/packetlossestimator.cc:22: UpdateResponseRateIfStale(sent_time); On 2017/03/08 ...
3 years, 9 months ago (2017-03-08 17:48:21 UTC) #9
Zach Stein
Would you mind taking one more quick look before I submit? Thanks! https://codereview.webrtc.org/2722933002/diff/120001/webrtc/p2p/base/packetlossestimator.cc File webrtc/p2p/base/packetlossestimator.cc ...
3 years, 9 months ago (2017-03-08 23:00:09 UTC) #10
Taylor Brandstetter
lgtm https://codereview.webrtc.org/2722933002/diff/180001/webrtc/p2p/base/packetlossestimator.h File webrtc/p2p/base/packetlossestimator.h (right): https://codereview.webrtc.org/2722933002/diff/180001/webrtc/p2p/base/packetlossestimator.h#newcode59 webrtc/p2p/base/packetlossestimator.h:59: std::string TrackedPacketsString(std::size_t max) const; Append "ForTesting"?
3 years, 9 months ago (2017-03-09 00:06:43 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.webrtc.org/2722933002/200001
3 years, 9 months ago (2017-03-20 17:07:45 UTC) #14
commit-bot: I haz the power
3 years, 9 months ago (2017-03-20 17:53:15 UTC) #17
Message was sent while issue was closed.
Committed patchset #11 (id:200001) as
https://chromium.googlesource.com/external/webrtc/+/abbacbf4892b98d77a53d2a5a...

Powered by Google App Engine
This is Rietveld 408576698