This is an automated email from the ASF dual-hosted git repository.

masaori pushed a commit to branch quic-latest
in repository https://gitbox.apache.org/repos/asf/trafficserver.git


The following commit(s) were added to refs/heads/quic-latest by this push:
     new 1f8eeae  Prevent retransmitting Handshake packets many many times
1f8eeae is described below

commit 1f8eeaee5364da3db3fe3e7cb130827321690d88
Author: Masaori Koshiba <masa...@apache.org>
AuthorDate: Thu Aug 24 14:39:47 2017 +0900

    Prevent retransmitting Handshake packets many many times
---
 iocore/net/quic/QUICLossDetector.cc | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/iocore/net/quic/QUICLossDetector.cc 
b/iocore/net/quic/QUICLossDetector.cc
index 12a7368..6d66a02 100644
--- a/iocore/net/quic/QUICLossDetector.cc
+++ b/iocore/net/quic/QUICLossDetector.cc
@@ -339,10 +339,17 @@ QUICLossDetector::_retransmit_handshake_packets()
 {
   SCOPED_MUTEX_LOCK(transmitter_lock, 
this->_transmitter->get_transmitter_mutex().get(), this_ethread());
   SCOPED_MUTEX_LOCK(lock, this->mutex, this_ethread());
+  std::set<QUICPacketNumber> retransmitted_handshake_packets;
+
   for (auto &info : this->_sent_packets) {
     if (!info.second->handshake) {
       break;
     }
+    retransmitted_handshake_packets.insert(info.first);
     this->_transmitter->retransmit_packet(*info.second->packet);
   }
+
+  for (auto packet_number : retransmitted_handshake_packets) {
+    this->_sent_packets.erase(packet_number);
+  }
 }

-- 
To stop receiving notification emails like this one, please contact
['"commits@trafficserver.apache.org" <commits@trafficserver.apache.org>'].

Reply via email to