comparison src/event/ngx_event_quic.c @ 8159:06af25901b1a quic

QUIC: restored proper usage of ngx_quic_drop_ack_ranges(). ACK Ranges are again managed based on the remembered Largest Acknowledged sent in the packet being acknowledged, which partially reverts c01964fd7b8b.
author Sergey Kandaurov <pluknet@nginx.com>
date Thu, 22 Oct 2020 11:05:50 +0100
parents c01964fd7b8b
children 454aa886c5f3
comparison
equal deleted inserted replaced
8158:c01964fd7b8b 8159:06af25901b1a
2797 if (send_time != NGX_TIMER_INFINITE) { 2797 if (send_time != NGX_TIMER_INFINITE) {
2798 ngx_quic_rtt_sample(c, ack, pkt->level, send_time); 2798 ngx_quic_rtt_sample(c, ack, pkt->level, send_time);
2799 } 2799 }
2800 } 2800 }
2801 2801
2802 ngx_quic_drop_ack_ranges(c, ctx, ack->largest);
2803
2804 pos = ack->ranges_start; 2802 pos = ack->ranges_start;
2805 end = ack->ranges_end; 2803 end = ack->ranges_end;
2806 2804
2807 for (i = 0; i < ack->range_count; i++) { 2805 for (i = 0; i < ack->range_count; i++) {
2808 2806
2869 2867
2870 if (f->pnum >= min && f->pnum <= max) { 2868 if (f->pnum >= min && f->pnum <= max) {
2871 ngx_quic_congestion_ack(c, f); 2869 ngx_quic_congestion_ack(c, f);
2872 2870
2873 switch (f->type) { 2871 switch (f->type) {
2872 case NGX_QUIC_FT_ACK:
2873 case NGX_QUIC_FT_ACK_ECN:
2874 ngx_quic_drop_ack_ranges(c, ctx, f->u.ack.largest);
2875 break;
2874 2876
2875 case NGX_QUIC_FT_STREAM0: 2877 case NGX_QUIC_FT_STREAM0:
2876 case NGX_QUIC_FT_STREAM1: 2878 case NGX_QUIC_FT_STREAM1:
2877 case NGX_QUIC_FT_STREAM2: 2879 case NGX_QUIC_FT_STREAM2:
2878 case NGX_QUIC_FT_STREAM3: 2880 case NGX_QUIC_FT_STREAM3: