1) Entering PROBE_RTT when necessary.
2) Congestion window gain of 0.65 instead of constant 4 packets.
3) {1.1, 0.9} pair instead of {1.25, 0.75}
4) Recovery mode.
5) No reaction to losses due to Recovery mode's implementation.
6) Supports encoder.
7) A new test compiling most of the simulation tests.
8) Bucket for high gain phase, disabled by default.
9) Pacer specific to BBR.
BUG=webrtc:7713
Review-Url: https://codereview.webrtc.org/2999073002
Cr-Commit-Position: refs/heads/master@{#19418}
38 lines
1.3 KiB
C++
38 lines
1.3 KiB
C++
/*
|
|
* Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#ifndef WEBRTC_MODULES_PACING_PACER_H_
|
|
#define WEBRTC_MODULES_PACING_PACER_H_
|
|
|
|
#include "webrtc/modules/include/module.h"
|
|
#include "webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h"
|
|
|
|
namespace webrtc {
|
|
class Pacer : public Module, public RtpPacketSender {
|
|
public:
|
|
virtual void SetEstimatedBitrate(uint32_t bitrate_bps) {}
|
|
virtual void SetEstimatedBitrateAndCongestionWindow(
|
|
uint32_t bitrate_bps,
|
|
bool in_probe_rtt,
|
|
uint64_t congestion_window) {}
|
|
virtual void OnBytesAcked(size_t bytes) {}
|
|
void InsertPacket(RtpPacketSender::Priority priority,
|
|
uint32_t ssrc,
|
|
uint16_t sequence_number,
|
|
int64_t capture_time_ms,
|
|
size_t bytes,
|
|
bool retransmission) override = 0;
|
|
int64_t TimeUntilNextProcess() override = 0;
|
|
void Process() override = 0;
|
|
~Pacer() override {}
|
|
};
|
|
} // namespace webrtc
|
|
#endif // WEBRTC_MODULES_PACING_PACER_H_
|