// Copyright (c) 2020 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_QUIC_NETWORK_BLACKHOLE_DETECTOR_H_ #define QUICHE_QUIC_CORE_QUIC_NETWORK_BLACKHOLE_DETECTOR_H_ #include "quiche/quic/core/quic_alarm.h" #include "quiche/quic/core/quic_alarm_factory.h" #include "quiche/quic/core/quic_one_block_arena.h" #include "quiche/quic/core/quic_time.h" #include "quiche/quic/platform/api/quic_export.h" #include "quiche/quic/platform/api/quic_flags.h" namespace quic { namespace test { class QuicConnectionPeer; class QuicNetworkBlackholeDetectorPeer; } // namespace test // QuicNetworkBlackholeDetector can detect path degrading and/or network // blackhole. If both detections are in progress, detector will be in path // degrading detection mode. After reporting path degrading detected, detector // switches to blackhole detection mode. So blackhole detection deadline must // be later than path degrading deadline. class QUICHE_EXPORT QuicNetworkBlackholeDetector { … }; } // namespace quic #endif // QUICHE_QUIC_CORE_QUIC_NETWORK_BLACKHOLE_DETECTOR_H_