12a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved.
22a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
32a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// found in the LICENSE file.
42a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "base/basictypes.h"
62a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "net/quic/congestion_control/tcp_receiver.h"
72a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
82a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace net {
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)// Originally 64K bytes, but increased it to 256K to support higher bitrates.
111e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)// static
121e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)const QuicByteCount TcpReceiver::kReceiveWindowTCP = 256000;
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)TcpReceiver::TcpReceiver()
155d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    : receive_window_(kReceiveWindowTCP) {
162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
172a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
182a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)bool TcpReceiver::GenerateCongestionFeedback(
192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)    QuicCongestionFeedbackFrame* feedback) {
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  feedback->type = kTCP;
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  feedback->tcp.receive_window = receive_window_;
222a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return true;
232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
242a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
252a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)void TcpReceiver::RecordIncomingPacket(QuicByteCount bytes,
262a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)                                       QuicPacketSequenceNumber sequence_number,
275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)                                       QuicTime timestamp) {
282a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
302a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}  // namespace net
31