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

Unified Diff: net/quic/core/quic_session.h

Issue 2963763003: In QUIC, send data is copied to streams rather than frames. Protected by FLAGS_quic_reloadable_flag… (Closed)
Patch Set: Rebase Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/core/quic_packet_generator_test.cc ('k') | net/quic/core/quic_session.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/core/quic_session.h
diff --git a/net/quic/core/quic_session.h b/net/quic/core/quic_session.h
index bad3a738253df95ffc6453180850b1978833fc00..9310f9ad66ddc3bd1ab3c52eedcde83d68b51cfb 100644
--- a/net/quic/core/quic_session.h
+++ b/net/quic/core/quic_session.h
@@ -108,6 +108,15 @@ class QUIC_EXPORT_PRIVATE QuicSession : public QuicConnectionVisitorInterface,
bool HasPendingHandshake() const override;
bool HasOpenDynamicStreams() const override;
void OnPathDegrading() override;
+ void SaveStreamData(QuicStreamId id,
+ QuicIOVector iov,
+ size_t iov_offset,
+ QuicStreamOffset offset,
+ QuicByteCount data_length) override;
+ bool WriteStreamData(QuicStreamId id,
+ QuicStreamOffset offset,
+ QuicByteCount data_length,
+ QuicDataWriter* writer) override;
// StreamNotifierInterface methods:
void OnStreamFrameAcked(const QuicStreamFrame& frame,
@@ -269,6 +278,8 @@ class QUIC_EXPORT_PRIVATE QuicSession : public QuicConnectionVisitorInterface,
bool use_stream_notifier() const { return use_stream_notifier_; }
+ bool streams_own_data() const { return streams_own_data_; }
+
protected:
using StaticStreamMap = QuicSmallMap<QuicStreamId, QuicStream*, 2>;
@@ -516,6 +527,10 @@ class QUIC_EXPORT_PRIVATE QuicSession : public QuicConnectionVisitorInterface,
// This session is notified on every ack or loss.
const bool use_stream_notifier_;
+ // Streams of this session own their outstanding data. Outstanding data here
+ // means sent data waiting to be acked.
+ const bool streams_own_data_;
+
DISALLOW_COPY_AND_ASSIGN(QuicSession);
};
« no previous file with comments | « net/quic/core/quic_packet_generator_test.cc ('k') | net/quic/core/quic_session.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698