// 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_TEST_TOOLS_SIMULATOR_TRAFFIC_POLICER_H_ #define QUICHE_QUIC_TEST_TOOLS_SIMULATOR_TRAFFIC_POLICER_H_ #include "absl/container/flat_hash_map.h" #include "quiche/quic/test_tools/simulator/packet_filter.h" #include "quiche/quic/test_tools/simulator/port.h" namespace quic { namespace simulator { // Traffic policer uses a token bucket to limit the bandwidth of the traffic // passing through. It wraps around an input port and exposes an output port. // Only the traffic from input to the output is policed, so in case when // bidirectional policing is desired, two policers have to be used. The flows // are hashed by the destination only. class TrafficPolicer : public PacketFilter { … }; } // namespace simulator } // namespace quic #endif // QUICHE_QUIC_TEST_TOOLS_SIMULATOR_TRAFFIC_POLICER_H_