diff --git a/quic/core/frames/quic_max_stream_id_frame.cc b/quic/core/frames/quic_max_stream_id_frame.cc
deleted file mode 100644
index 19270e8..0000000
--- a/quic/core/frames/quic_max_stream_id_frame.cc
+++ /dev/null
@@ -1,25 +0,0 @@
-// Copyright (c) 2016 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "net/third_party/quiche/src/quic/core/frames/quic_max_stream_id_frame.h"
-
-namespace quic {
-
-QuicMaxStreamIdFrame::QuicMaxStreamIdFrame()
-    : QuicInlinedFrame(MAX_STREAM_ID_FRAME),
-      control_frame_id(kInvalidControlFrameId) {}
-
-QuicMaxStreamIdFrame::QuicMaxStreamIdFrame(QuicControlFrameId control_frame_id,
-                                           QuicStreamId max_stream_id)
-    : QuicInlinedFrame(MAX_STREAM_ID_FRAME),
-      control_frame_id(control_frame_id),
-      max_stream_id(max_stream_id) {}
-
-std::ostream& operator<<(std::ostream& os, const QuicMaxStreamIdFrame& frame) {
-  os << "{ control_frame_id: " << frame.control_frame_id
-     << ", stream_id: " << frame.max_stream_id << " }\n";
-  return os;
-}
-
-}  // namespace quic
diff --git a/quic/core/frames/quic_max_stream_id_frame.h b/quic/core/frames/quic_max_stream_id_frame.h
deleted file mode 100644
index 6177687..0000000
--- a/quic/core/frames/quic_max_stream_id_frame.h
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright (c) 2016 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef QUICHE_QUIC_CORE_FRAMES_QUIC_MAX_STREAM_ID_FRAME_H_
-#define QUICHE_QUIC_CORE_FRAMES_QUIC_MAX_STREAM_ID_FRAME_H_
-
-#include <ostream>
-
-#include "net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h"
-#include "net/third_party/quiche/src/quic/core/quic_constants.h"
-#include "net/third_party/quiche/src/quic/core/quic_types.h"
-#include "net/third_party/quiche/src/quic/platform/api/quic_export.h"
-
-namespace quic {
-
-// IETF format MAX_STREAM_ID frame.
-// This frame is used by the sender to inform the peer of the largest
-// stream id that the peer may open and that the sender will accept.
-struct QUIC_EXPORT_PRIVATE QuicMaxStreamIdFrame
-    : public QuicInlinedFrame<QuicMaxStreamIdFrame> {
-  QuicMaxStreamIdFrame();
-  QuicMaxStreamIdFrame(QuicControlFrameId control_frame_id,
-                       QuicStreamId max_stream_id);
-
-  friend QUIC_EXPORT_PRIVATE std::ostream& operator<<(
-      std::ostream& os,
-      const QuicMaxStreamIdFrame& frame);
-
-  // A unique identifier of this control frame. 0 when this frame is received,
-  // and non-zero when sent.
-  QuicControlFrameId control_frame_id;
-
-  // The maximum stream id to support.
-  QuicStreamId max_stream_id;
-};
-
-}  // namespace quic
-
-#endif  // QUICHE_QUIC_CORE_FRAMES_QUIC_MAX_STREAM_ID_FRAME_H_
diff --git a/quic/core/frames/quic_stream_id_blocked_frame.cc b/quic/core/frames/quic_stream_id_blocked_frame.cc
deleted file mode 100644
index 627ad2a..0000000
--- a/quic/core/frames/quic_stream_id_blocked_frame.cc
+++ /dev/null
@@ -1,27 +0,0 @@
-// Copyright (c) 2016 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "net/third_party/quiche/src/quic/core/frames/quic_stream_id_blocked_frame.h"
-
-namespace quic {
-
-QuicStreamIdBlockedFrame::QuicStreamIdBlockedFrame()
-    : QuicInlinedFrame(STREAM_ID_BLOCKED_FRAME),
-      control_frame_id(kInvalidControlFrameId) {}
-
-QuicStreamIdBlockedFrame::QuicStreamIdBlockedFrame(
-    QuicControlFrameId control_frame_id,
-    QuicStreamId stream_id)
-    : QuicInlinedFrame(STREAM_ID_BLOCKED_FRAME),
-      control_frame_id(control_frame_id),
-      stream_id(stream_id) {}
-
-std::ostream& operator<<(std::ostream& os,
-                         const QuicStreamIdBlockedFrame& frame) {
-  os << "{ control_frame_id: " << frame.control_frame_id
-     << ", stream id: " << frame.stream_id << " }\n";
-  return os;
-}
-
-}  // namespace quic
diff --git a/quic/core/frames/quic_stream_id_blocked_frame.h b/quic/core/frames/quic_stream_id_blocked_frame.h
deleted file mode 100644
index f9ccca2..0000000
--- a/quic/core/frames/quic_stream_id_blocked_frame.h
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright (c) 2016 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef QUICHE_QUIC_CORE_FRAMES_QUIC_STREAM_ID_BLOCKED_FRAME_H_
-#define QUICHE_QUIC_CORE_FRAMES_QUIC_STREAM_ID_BLOCKED_FRAME_H_
-
-#include <ostream>
-
-#include "net/third_party/quiche/src/quic/core/frames/quic_inlined_frame.h"
-#include "net/third_party/quiche/src/quic/core/quic_constants.h"
-#include "net/third_party/quiche/src/quic/core/quic_types.h"
-#include "net/third_party/quiche/src/quic/platform/api/quic_export.h"
-
-namespace quic {
-
-// IETF format STREAM_ID_BLOCKED frame.
-// The sender uses this to inform the peer that the sender wished to
-// open a new stream but was blocked from doing so due due to the
-// maximum stream ID limit set by the peer (via a MAX_STREAM_ID frame)
-struct QUIC_EXPORT_PRIVATE QuicStreamIdBlockedFrame
-    : public QuicInlinedFrame<QuicStreamIdBlockedFrame> {
-  QuicStreamIdBlockedFrame();
-  QuicStreamIdBlockedFrame(QuicControlFrameId control_frame_id,
-                           QuicStreamId stream_id);
-
-  friend QUIC_EXPORT_PRIVATE std::ostream& operator<<(
-      std::ostream& os,
-      const QuicStreamIdBlockedFrame& frame);
-
-  // A unique identifier of this control frame. 0 when this frame is received,
-  // and non-zero when sent.
-  QuicControlFrameId control_frame_id;
-
-  QuicStreamId stream_id;
-};
-
-}  // namespace quic
-
-#endif  // QUICHE_QUIC_CORE_FRAMES_QUIC_STREAM_ID_BLOCKED_FRAME_H_
