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