Mercurial > hg > nginx-quic
view auto/os/conf @ 8162:c5ea341f705a quic
QUIC: optimized acknowledgement generation.
For application level packets, only every second packet is now acknowledged,
respecting max ack delay.
13.2.1 Sending ACK Frames
In order to assist loss detection at the sender, an endpoint SHOULD
generate and send an ACK frame without delay when it receives an ack-
eliciting packet either:
* when the received packet has a packet number less than another
ack-eliciting packet that has been received, or
* when the packet has a packet number larger than the highest-
numbered ack-eliciting packet that has been received and there are
missing packets between that packet and this packet.
13.2.2. Acknowledgement Frequency
A receiver SHOULD send an ACK frame after receiving at least two
ack-eliciting packets.
author | Vladimir Homutov <vl@nginx.com> |
---|---|
date | Fri, 23 Oct 2020 17:08:50 +0300 |
parents | e4c21e417277 |
children | 35afae4b3dff |
line wrap: on
line source
# Copyright (C) Igor Sysoev # Copyright (C) Nginx, Inc. echo "checking for $NGX_SYSTEM specific features" case "$NGX_PLATFORM" in FreeBSD:*) . auto/os/freebsd ;; Linux:*) . auto/os/linux ;; SunOS:*) . auto/os/solaris ;; Darwin:*) . auto/os/darwin ;; win32) . auto/os/win32 ;; DragonFly:*) have=NGX_FREEBSD . auto/have_headers CORE_INCS="$UNIX_INCS" CORE_DEPS="$UNIX_DEPS $FREEBSD_DEPS" CORE_SRCS="$UNIX_SRCS $FREEBSD_SRCS" echo " + sendfile() found" have=NGX_HAVE_SENDFILE . auto/have CORE_SRCS="$CORE_SRCS $FREEBSD_SENDFILE_SRCS" ngx_spacer=' ' ;; NetBSD:*) CORE_INCS="$UNIX_INCS" CORE_DEPS="$UNIX_DEPS $POSIX_DEPS" CORE_SRCS="$UNIX_SRCS" NGX_RPATH=YES ;; HP-UX:*) # HP/UX have=NGX_HPUX . auto/have_headers CORE_INCS="$UNIX_INCS" CORE_DEPS="$UNIX_DEPS $POSIX_DEPS" CORE_SRCS="$UNIX_SRCS" CC_AUX_FLAGS="$CC_AUX_FLAGS -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1" CC_AUX_FLAGS="$CC_AUX_FLAGS -D_HPUX_ALT_XOPEN_SOCKET_API" ;; OSF1:*) # Tru64 UNIX have=NGX_TRU64 . auto/have_headers have=NGX_HAVE_STRERROR_R . auto/nohave CORE_INCS="$UNIX_INCS" CORE_DEPS="$UNIX_DEPS $POSIX_DEPS" CORE_SRCS="$UNIX_SRCS" ;; GNU:*) # GNU Hurd have=NGX_GNU_HURD . auto/have_headers CORE_INCS="$UNIX_INCS" CORE_DEPS="$UNIX_DEPS $POSIX_DEPS" CORE_SRCS="$UNIX_SRCS" CC_AUX_FLAGS="$CC_AUX_FLAGS -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64" ;; *) CORE_INCS="$UNIX_INCS" CORE_DEPS="$UNIX_DEPS $POSIX_DEPS" CORE_SRCS="$UNIX_SRCS" ;; esac case "$NGX_MACHINE" in i386 | i686 | i86pc) have=NGX_HAVE_NONALIGNED . auto/have NGX_MACH_CACHE_LINE=32 ;; amd64 | x86_64) have=NGX_HAVE_NONALIGNED . auto/have NGX_MACH_CACHE_LINE=64 ;; sun4u | sun4v | sparc | sparc64) have=NGX_ALIGNMENT value=16 . auto/define # TODO NGX_MACH_CACHE_LINE=64 ;; ia64 ) have=NGX_ALIGNMENT value=16 . auto/define # TODO NGX_MACH_CACHE_LINE=64 ;; aarch64 ) have=NGX_ALIGNMENT value=16 . auto/define NGX_MACH_CACHE_LINE=64 ;; *) have=NGX_ALIGNMENT value=16 . auto/define NGX_MACH_CACHE_LINE=32 ;; esac if test -z "$NGX_CPU_CACHE_LINE"; then NGX_CPU_CACHE_LINE=$NGX_MACH_CACHE_LINE fi have=NGX_CPU_CACHE_LINE value=$NGX_CPU_CACHE_LINE . auto/define