Adds unwrapped sequence number to feedback info.

The Quic BBR implementation uses packet sequence numbers to keep track
of the time slots used for calculation of send receive rates. To avoid
protocol dependence the port were initially written to use send times
instead.

As there are issues with running BBR in WebRTC, it makes sense to
use an identical implementation as in Quic to ensure that there
aren't implementation issues causing bad behavior. This requires
providing sequence numbers.

This prepares for making the BBR implementation more identical to the
implementation in Quic, this is to ensure that results are comparable.

Bug: webrtc:8415
Change-Id: I2cd96bc6ffb88042bb2b91421bfe6cbf7c1ff8ac
Reviewed-on: https://webrtc-review.googlesource.com/76583
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Commit-Queue: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23353}
This commit is contained in:
Sebastian Jansson
2018-05-22 11:03:04 +02:00
committed by Commit Bot
parent 9aef5dc2ab
commit 02c65869c3
2 changed files with 6 additions and 1 deletions

View File

@ -38,7 +38,9 @@ void SendTimeHistory::AddAndRemoveOld(const PacketFeedback& packet) {
// Add new.
int64_t unwrapped_seq_num = seq_num_unwrapper_.Unwrap(packet.sequence_number);
history_.insert(std::make_pair(unwrapped_seq_num, packet));
PacketFeedback packet_copy = packet;
packet_copy.long_sequence_number = unwrapped_seq_num;
history_.insert(std::make_pair(unwrapped_seq_num, packet_copy));
}
bool SendTimeHistory::OnSentPacket(uint16_t sequence_number,