* [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling @ 2023-07-21 5:17 Li, Yi 2023-07-25 4:17 ` Saloni Kasbekar 0 siblings, 1 reply; 8+ messages in thread From: Li, Yi @ 2023-07-21 5:17 UTC (permalink / raw) To: devel; +Cc: Yi Li, Andrei Otcheretianski, Saloni Kasbekar, Zachary Clark-williams REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4505 This gives something like ~3 fold throughput boost. Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> Cc: Saloni Kasbekar <saloni.kasbekar@intel.com> Cc: Zachary Clark-williams <zachary.clark-williams@intel.com> --- NetworkPkg/HttpBootDxe/HttpBootClient.h | 2 +- NetworkPkg/HttpDxe/HttpProto.c | 48 +++++++++++++------------ NetworkPkg/HttpDxe/HttpProto.h | 2 +- 3 files changed, 27 insertions(+), 25 deletions(-) diff --git a/NetworkPkg/HttpBootDxe/HttpBootClient.h b/NetworkPkg/HttpBootDxe/HttpBootClient.h index 2fba713679..86a28bc91a 100644 --- a/NetworkPkg/HttpBootDxe/HttpBootClient.h +++ b/NetworkPkg/HttpBootDxe/HttpBootClient.h @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #ifndef __EFI_HTTP_BOOT_HTTP_H__ #define __EFI_HTTP_BOOT_HTTP_H__ -#define HTTP_BOOT_BLOCK_SIZE 1500 +#define HTTP_BOOT_BLOCK_SIZE 32000 #define HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" #define HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 diff --git a/NetworkPkg/HttpDxe/HttpProto.c b/NetworkPkg/HttpDxe/HttpProto.c index 33ae622c3f..7dfb82dd2e 100644 --- a/NetworkPkg/HttpDxe/HttpProto.c +++ b/NetworkPkg/HttpDxe/HttpProto.c @@ -1073,18 +1073,19 @@ HttpConfigureTcp4 ( Tcp4AP->ActiveFlag = TRUE; IP4_COPY_ADDRESS (&Tcp4AP->RemoteAddress, &HttpInstance->RemoteAddr); - Tcp4Option = Tcp4CfgData->ControlOption; - Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; - Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; - Tcp4Option->DataRetries = HTTP_DATA_RETRIES; - Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; - Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; - Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; - Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; - Tcp4Option->EnableNagle = TRUE; - Tcp4CfgData->ControlOption = Tcp4Option; + Tcp4Option = Tcp4CfgData->ControlOption; + Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; + Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; + Tcp4Option->DataRetries = HTTP_DATA_RETRIES; + Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; + Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; + Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; + Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; + Tcp4Option->EnableNagle = TRUE; + Tcp4Option->EnableWindowScaling = TRUE; + Tcp4CfgData->ControlOption = Tcp4Option; if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) @@ -1156,17 +1157,18 @@ HttpConfigureTcp6 ( IP6_COPY_ADDRESS (&Tcp6Ap->StationAddress, &HttpInstance->Ipv6Node.LocalAddress); IP6_COPY_ADDRESS (&Tcp6Ap->RemoteAddress, &HttpInstance->RemoteIpv6Addr); - Tcp6Option = Tcp6CfgData->ControlOption; - Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; - Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; - Tcp6Option->DataRetries = HTTP_DATA_RETRIES; - Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; - Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; - Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; - Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; - Tcp6Option->EnableNagle = TRUE; + Tcp6Option = Tcp6CfgData->ControlOption; + Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; + Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; + Tcp6Option->DataRetries = HTTP_DATA_RETRIES; + Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; + Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; + Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; + Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; + Tcp6Option->EnableNagle = TRUE; + Tcp6Option->EnableWindowScaling = TRUE; if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) diff --git a/NetworkPkg/HttpDxe/HttpProto.h b/NetworkPkg/HttpDxe/HttpProto.h index 620eb39158..012f1f4b46 100644 --- a/NetworkPkg/HttpDxe/HttpProto.h +++ b/NetworkPkg/HttpDxe/HttpProto.h @@ -37,7 +37,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // #define HTTP_TOS_DEAULT 8 #define HTTP_TTL_DEAULT 255 -#define HTTP_BUFFER_SIZE_DEAULT 65535 +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 #define HTTP_MAX_SYN_BACK_LOG 5 #define HTTP_CONNECTION_TIMEOUT 60 #define HTTP_DATA_RETRIES 12 -- 2.31.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#107122): https://edk2.groups.io/g/devel/message/107122 Mute This Topic: https://groups.io/mt/100271527/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling 2023-07-21 5:17 [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling Li, Yi @ 2023-07-25 4:17 ` Saloni Kasbekar 2023-09-06 8:51 ` Li, Yi 0 siblings, 1 reply; 8+ messages in thread From: Saloni Kasbekar @ 2023-07-25 4:17 UTC (permalink / raw) To: Li, Yi1, devel@edk2.groups.io Cc: Otcheretianski, Andrei, Clark-williams, Zachary Reviewed-by: Saloni Kasbekar <saloni.kasbekar@intel.com> -----Original Message----- From: Li, Yi1 <yi1.li@intel.com> Sent: Thursday, July 20, 2023 10:18 PM To: devel@edk2.groups.io Cc: Li, Yi1 <yi1.li@intel.com>; Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Kasbekar, Saloni <saloni.kasbekar@intel.com>; Clark-williams, Zachary <zachary.clark-williams@intel.com> Subject: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4505 This gives something like ~3 fold throughput boost. Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> Cc: Saloni Kasbekar <saloni.kasbekar@intel.com> Cc: Zachary Clark-williams <zachary.clark-williams@intel.com> --- NetworkPkg/HttpBootDxe/HttpBootClient.h | 2 +- NetworkPkg/HttpDxe/HttpProto.c | 48 +++++++++++++------------ NetworkPkg/HttpDxe/HttpProto.h | 2 +- 3 files changed, 27 insertions(+), 25 deletions(-) diff --git a/NetworkPkg/HttpBootDxe/HttpBootClient.h b/NetworkPkg/HttpBootDxe/HttpBootClient.h index 2fba713679..86a28bc91a 100644 --- a/NetworkPkg/HttpBootDxe/HttpBootClient.h +++ b/NetworkPkg/HttpBootDxe/HttpBootClient.h @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #ifndef __EFI_HTTP_BOOT_HTTP_H__ #define __EFI_HTTP_BOOT_HTTP_H__ -#define HTTP_BOOT_BLOCK_SIZE 1500 +#define HTTP_BOOT_BLOCK_SIZE 32000 #define HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" #define HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 diff --git a/NetworkPkg/HttpDxe/HttpProto.c b/NetworkPkg/HttpDxe/HttpProto.c index 33ae622c3f..7dfb82dd2e 100644 --- a/NetworkPkg/HttpDxe/HttpProto.c +++ b/NetworkPkg/HttpDxe/HttpProto.c @@ -1073,18 +1073,19 @@ HttpConfigureTcp4 ( Tcp4AP->ActiveFlag = TRUE; IP4_COPY_ADDRESS (&Tcp4AP->RemoteAddress, &HttpInstance->RemoteAddr); - Tcp4Option = Tcp4CfgData->ControlOption; - Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; - Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; - Tcp4Option->DataRetries = HTTP_DATA_RETRIES; - Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; - Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; - Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; - Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; - Tcp4Option->EnableNagle = TRUE; - Tcp4CfgData->ControlOption = Tcp4Option; + Tcp4Option = Tcp4CfgData->ControlOption; + Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; + Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; + Tcp4Option->DataRetries = HTTP_DATA_RETRIES; + Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; + Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; + Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; + Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; + Tcp4Option->EnableNagle = TRUE; + Tcp4Option->EnableWindowScaling = TRUE; + Tcp4CfgData->ControlOption = Tcp4Option; if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) @@ -1156,17 +1157,18 @@ HttpConfigureTcp6 ( IP6_COPY_ADDRESS (&Tcp6Ap->StationAddress, &HttpInstance->Ipv6Node.LocalAddress); IP6_COPY_ADDRESS (&Tcp6Ap->RemoteAddress, &HttpInstance->RemoteIpv6Addr); - Tcp6Option = Tcp6CfgData->ControlOption; - Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; - Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; - Tcp6Option->DataRetries = HTTP_DATA_RETRIES; - Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; - Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; - Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; - Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; - Tcp6Option->EnableNagle = TRUE; + Tcp6Option = Tcp6CfgData->ControlOption; + Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; + Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; + Tcp6Option->DataRetries = HTTP_DATA_RETRIES; + Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; + Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; + Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; + Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; + Tcp6Option->EnableNagle = TRUE; + Tcp6Option->EnableWindowScaling = TRUE; if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) diff --git a/NetworkPkg/HttpDxe/HttpProto.h b/NetworkPkg/HttpDxe/HttpProto.h index 620eb39158..012f1f4b46 100644 --- a/NetworkPkg/HttpDxe/HttpProto.h +++ b/NetworkPkg/HttpDxe/HttpProto.h @@ -37,7 +37,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // #define HTTP_TOS_DEAULT 8 #define HTTP_TTL_DEAULT 255 -#define HTTP_BUFFER_SIZE_DEAULT 65535 +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 #define HTTP_MAX_SYN_BACK_LOG 5 #define HTTP_CONNECTION_TIMEOUT 60 #define HTTP_DATA_RETRIES 12 -- 2.31.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#107217): https://edk2.groups.io/g/devel/message/107217 Mute This Topic: https://groups.io/mt/100271527/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling 2023-07-25 4:17 ` Saloni Kasbekar @ 2023-09-06 8:51 ` Li, Yi 2023-09-06 22:41 ` Saloni Kasbekar 0 siblings, 1 reply; 8+ messages in thread From: Li, Yi @ 2023-09-06 8:51 UTC (permalink / raw) To: Kasbekar, Saloni, devel@edk2.groups.io Cc: Otcheretianski, Andrei, Clark-williams, Zachary, Luo, Heng Hi Saloni and Zachary, can you help to merge this patch? It got reviewed-by but not check-in, Thanks! -----Original Message----- From: Kasbekar, Saloni <saloni.kasbekar@intel.com> Sent: Tuesday, July 25, 2023 12:18 PM To: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark-williams, Zachary <zachary.clark-williams@intel.com> Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling Reviewed-by: Saloni Kasbekar <saloni.kasbekar@intel.com> -----Original Message----- From: Li, Yi1 <yi1.li@intel.com> Sent: Thursday, July 20, 2023 10:18 PM To: devel@edk2.groups.io Cc: Li, Yi1 <yi1.li@intel.com>; Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Kasbekar, Saloni <saloni.kasbekar@intel.com>; Clark-williams, Zachary <zachary.clark-williams@intel.com> Subject: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4505 This gives something like ~3 fold throughput boost. Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> Cc: Saloni Kasbekar <saloni.kasbekar@intel.com> Cc: Zachary Clark-williams <zachary.clark-williams@intel.com> --- NetworkPkg/HttpBootDxe/HttpBootClient.h | 2 +- NetworkPkg/HttpDxe/HttpProto.c | 48 +++++++++++++------------ NetworkPkg/HttpDxe/HttpProto.h | 2 +- 3 files changed, 27 insertions(+), 25 deletions(-) diff --git a/NetworkPkg/HttpBootDxe/HttpBootClient.h b/NetworkPkg/HttpBootDxe/HttpBootClient.h index 2fba713679..86a28bc91a 100644 --- a/NetworkPkg/HttpBootDxe/HttpBootClient.h +++ b/NetworkPkg/HttpBootDxe/HttpBootClient.h @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #ifndef __EFI_HTTP_BOOT_HTTP_H__ #define __EFI_HTTP_BOOT_HTTP_H__ -#define HTTP_BOOT_BLOCK_SIZE 1500 +#define HTTP_BOOT_BLOCK_SIZE 32000 #define HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" #define HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 diff --git a/NetworkPkg/HttpDxe/HttpProto.c b/NetworkPkg/HttpDxe/HttpProto.c index 33ae622c3f..7dfb82dd2e 100644 --- a/NetworkPkg/HttpDxe/HttpProto.c +++ b/NetworkPkg/HttpDxe/HttpProto.c @@ -1073,18 +1073,19 @@ HttpConfigureTcp4 ( Tcp4AP->ActiveFlag = TRUE; IP4_COPY_ADDRESS (&Tcp4AP->RemoteAddress, &HttpInstance->RemoteAddr); - Tcp4Option = Tcp4CfgData->ControlOption; - Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; - Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; - Tcp4Option->DataRetries = HTTP_DATA_RETRIES; - Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; - Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; - Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; - Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; - Tcp4Option->EnableNagle = TRUE; - Tcp4CfgData->ControlOption = Tcp4Option; + Tcp4Option = Tcp4CfgData->ControlOption; + Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; + Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; + Tcp4Option->DataRetries = HTTP_DATA_RETRIES; + Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; + Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; + Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; + Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; + Tcp4Option->EnableNagle = TRUE; + Tcp4Option->EnableWindowScaling = TRUE; + Tcp4CfgData->ControlOption = Tcp4Option; if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) @@ -1156,17 +1157,18 @@ HttpConfigureTcp6 ( IP6_COPY_ADDRESS (&Tcp6Ap->StationAddress, &HttpInstance->Ipv6Node.LocalAddress); IP6_COPY_ADDRESS (&Tcp6Ap->RemoteAddress, &HttpInstance->RemoteIpv6Addr); - Tcp6Option = Tcp6CfgData->ControlOption; - Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; - Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; - Tcp6Option->DataRetries = HTTP_DATA_RETRIES; - Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; - Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; - Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; - Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; - Tcp6Option->EnableNagle = TRUE; + Tcp6Option = Tcp6CfgData->ControlOption; + Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; + Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; + Tcp6Option->DataRetries = HTTP_DATA_RETRIES; + Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; + Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; + Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; + Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; + Tcp6Option->EnableNagle = TRUE; + Tcp6Option->EnableWindowScaling = TRUE; if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) diff --git a/NetworkPkg/HttpDxe/HttpProto.h b/NetworkPkg/HttpDxe/HttpProto.h index 620eb39158..012f1f4b46 100644 --- a/NetworkPkg/HttpDxe/HttpProto.h +++ b/NetworkPkg/HttpDxe/HttpProto.h @@ -37,7 +37,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // #define HTTP_TOS_DEAULT 8 #define HTTP_TTL_DEAULT 255 -#define HTTP_BUFFER_SIZE_DEAULT 65535 +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 #define HTTP_MAX_SYN_BACK_LOG 5 #define HTTP_CONNECTION_TIMEOUT 60 #define HTTP_DATA_RETRIES 12 -- 2.31.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#108316): https://edk2.groups.io/g/devel/message/108316 Mute This Topic: https://groups.io/mt/100271527/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling 2023-09-06 8:51 ` Li, Yi @ 2023-09-06 22:41 ` Saloni Kasbekar 2023-09-08 17:07 ` Michael D Kinney 0 siblings, 1 reply; 8+ messages in thread From: Saloni Kasbekar @ 2023-09-06 22:41 UTC (permalink / raw) To: Li, Yi1, devel@edk2.groups.io, Kinney, Michael D Cc: Otcheretianski, Andrei, Clark-williams, Zachary, Luo, Heng Mike, Could you help us merge the patch? Thanks, Saloni -----Original Message----- From: Li, Yi1 <yi1.li@intel.com> Sent: Wednesday, September 6, 2023 1:52 AM To: Kasbekar, Saloni <saloni.kasbekar@intel.com>; devel@edk2.groups.io Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark-williams, Zachary <zachary.clark-williams@intel.com>; Luo, Heng <heng.luo@intel.com> Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling Hi Saloni and Zachary, can you help to merge this patch? It got reviewed-by but not check-in, Thanks! -----Original Message----- From: Kasbekar, Saloni <saloni.kasbekar@intel.com> Sent: Tuesday, July 25, 2023 12:18 PM To: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark-williams, Zachary <zachary.clark-williams@intel.com> Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling Reviewed-by: Saloni Kasbekar <saloni.kasbekar@intel.com> -----Original Message----- From: Li, Yi1 <yi1.li@intel.com> Sent: Thursday, July 20, 2023 10:18 PM To: devel@edk2.groups.io Cc: Li, Yi1 <yi1.li@intel.com>; Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Kasbekar, Saloni <saloni.kasbekar@intel.com>; Clark-williams, Zachary <zachary.clark-williams@intel.com> Subject: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4505 This gives something like ~3 fold throughput boost. Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> Cc: Saloni Kasbekar <saloni.kasbekar@intel.com> Cc: Zachary Clark-williams <zachary.clark-williams@intel.com> --- NetworkPkg/HttpBootDxe/HttpBootClient.h | 2 +- NetworkPkg/HttpDxe/HttpProto.c | 48 +++++++++++++------------ NetworkPkg/HttpDxe/HttpProto.h | 2 +- 3 files changed, 27 insertions(+), 25 deletions(-) diff --git a/NetworkPkg/HttpBootDxe/HttpBootClient.h b/NetworkPkg/HttpBootDxe/HttpBootClient.h index 2fba713679..86a28bc91a 100644 --- a/NetworkPkg/HttpBootDxe/HttpBootClient.h +++ b/NetworkPkg/HttpBootDxe/HttpBootClient.h @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #ifndef __EFI_HTTP_BOOT_HTTP_H__ #define __EFI_HTTP_BOOT_HTTP_H__ -#define HTTP_BOOT_BLOCK_SIZE 1500 +#define HTTP_BOOT_BLOCK_SIZE 32000 #define HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" #define HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 diff --git a/NetworkPkg/HttpDxe/HttpProto.c b/NetworkPkg/HttpDxe/HttpProto.c index 33ae622c3f..7dfb82dd2e 100644 --- a/NetworkPkg/HttpDxe/HttpProto.c +++ b/NetworkPkg/HttpDxe/HttpProto.c @@ -1073,18 +1073,19 @@ HttpConfigureTcp4 ( Tcp4AP->ActiveFlag = TRUE; IP4_COPY_ADDRESS (&Tcp4AP->RemoteAddress, &HttpInstance->RemoteAddr); - Tcp4Option = Tcp4CfgData->ControlOption; - Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; - Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; - Tcp4Option->DataRetries = HTTP_DATA_RETRIES; - Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; - Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; - Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; - Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; - Tcp4Option->EnableNagle = TRUE; - Tcp4CfgData->ControlOption = Tcp4Option; + Tcp4Option = Tcp4CfgData->ControlOption; + Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; + Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; + Tcp4Option->DataRetries = HTTP_DATA_RETRIES; + Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; + Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; + Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; + Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; + Tcp4Option->EnableNagle = TRUE; + Tcp4Option->EnableWindowScaling = TRUE; + Tcp4CfgData->ControlOption = Tcp4Option; if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) @@ -1156,17 +1157,18 @@ HttpConfigureTcp6 ( IP6_COPY_ADDRESS (&Tcp6Ap->StationAddress, &HttpInstance->Ipv6Node.LocalAddress); IP6_COPY_ADDRESS (&Tcp6Ap->RemoteAddress, &HttpInstance->RemoteIpv6Addr); - Tcp6Option = Tcp6CfgData->ControlOption; - Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; - Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; - Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; - Tcp6Option->DataRetries = HTTP_DATA_RETRIES; - Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; - Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; - Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; - Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; - Tcp6Option->EnableNagle = TRUE; + Tcp6Option = Tcp6CfgData->ControlOption; + Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; + Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; + Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; + Tcp6Option->DataRetries = HTTP_DATA_RETRIES; + Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; + Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; + Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; + Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; + Tcp6Option->EnableNagle = TRUE; + Tcp6Option->EnableWindowScaling = TRUE; if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) diff --git a/NetworkPkg/HttpDxe/HttpProto.h b/NetworkPkg/HttpDxe/HttpProto.h index 620eb39158..012f1f4b46 100644 --- a/NetworkPkg/HttpDxe/HttpProto.h +++ b/NetworkPkg/HttpDxe/HttpProto.h @@ -37,7 +37,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // #define HTTP_TOS_DEAULT 8 #define HTTP_TTL_DEAULT 255 -#define HTTP_BUFFER_SIZE_DEAULT 65535 +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 #define HTTP_MAX_SYN_BACK_LOG 5 #define HTTP_CONNECTION_TIMEOUT 60 #define HTTP_DATA_RETRIES 12 -- 2.31.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#108344): https://edk2.groups.io/g/devel/message/108344 Mute This Topic: https://groups.io/mt/100271527/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling 2023-09-06 22:41 ` Saloni Kasbekar @ 2023-09-08 17:07 ` Michael D Kinney 2023-09-08 20:55 ` Michael D Kinney 0 siblings, 1 reply; 8+ messages in thread From: Michael D Kinney @ 2023-09-08 17:07 UTC (permalink / raw) To: Kasbekar, Saloni, Li, Yi1, devel@edk2.groups.io Cc: Otcheretianski, Andrei, Clark-williams, Zachary, Luo, Heng, Kinney, Michael D Acked-by: Michael D Kinney <michael.d.kinney@intel.com> > -----Original Message----- > From: Kasbekar, Saloni <saloni.kasbekar@intel.com> > Sent: Wednesday, September 6, 2023 3:41 PM > To: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io; Kinney, Michael D > <michael.d.kinney@intel.com> > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark-williams, > Zachary <zachary.clark-williams@intel.com>; Luo, Heng <heng.luo@intel.com> > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > window scaling > > Mike, > > Could you help us merge the patch? > > Thanks, > Saloni > > -----Original Message----- > From: Li, Yi1 <yi1.li@intel.com> > Sent: Wednesday, September 6, 2023 1:52 AM > To: Kasbekar, Saloni <saloni.kasbekar@intel.com>; devel@edk2.groups.io > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark-williams, > Zachary <zachary.clark-williams@intel.com>; Luo, Heng <heng.luo@intel.com> > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > window scaling > > Hi Saloni and Zachary, can you help to merge this patch? It got reviewed-by > but not check-in, Thanks! > > -----Original Message----- > From: Kasbekar, Saloni <saloni.kasbekar@intel.com> > Sent: Tuesday, July 25, 2023 12:18 PM > To: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark-williams, > Zachary <zachary.clark-williams@intel.com> > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > window scaling > > Reviewed-by: Saloni Kasbekar <saloni.kasbekar@intel.com> > > -----Original Message----- > From: Li, Yi1 <yi1.li@intel.com> > Sent: Thursday, July 20, 2023 10:18 PM > To: devel@edk2.groups.io > Cc: Li, Yi1 <yi1.li@intel.com>; Otcheretianski, Andrei > <andrei.otcheretianski@intel.com>; Kasbekar, Saloni > <saloni.kasbekar@intel.com>; Clark-williams, Zachary <zachary.clark- > williams@intel.com> > Subject: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window > scaling > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4505 > This gives something like ~3 fold throughput boost. > > Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> > Cc: Saloni Kasbekar <saloni.kasbekar@intel.com> > Cc: Zachary Clark-williams <zachary.clark-williams@intel.com> > --- > NetworkPkg/HttpBootDxe/HttpBootClient.h | 2 +- > NetworkPkg/HttpDxe/HttpProto.c | 48 +++++++++++++------------ > NetworkPkg/HttpDxe/HttpProto.h | 2 +- > 3 files changed, 27 insertions(+), 25 deletions(-) > > diff --git a/NetworkPkg/HttpBootDxe/HttpBootClient.h > b/NetworkPkg/HttpBootDxe/HttpBootClient.h > index 2fba713679..86a28bc91a 100644 > --- a/NetworkPkg/HttpBootDxe/HttpBootClient.h > +++ b/NetworkPkg/HttpBootDxe/HttpBootClient.h > @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #ifndef > __EFI_HTTP_BOOT_HTTP_H__ #define __EFI_HTTP_BOOT_HTTP_H__ > > -#define HTTP_BOOT_BLOCK_SIZE 1500 > +#define HTTP_BOOT_BLOCK_SIZE 32000 > #define HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" > #define HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 > > diff --git a/NetworkPkg/HttpDxe/HttpProto.c b/NetworkPkg/HttpDxe/HttpProto.c > index 33ae622c3f..7dfb82dd2e 100644 > --- a/NetworkPkg/HttpDxe/HttpProto.c > +++ b/NetworkPkg/HttpDxe/HttpProto.c > @@ -1073,18 +1073,19 @@ HttpConfigureTcp4 ( > Tcp4AP->ActiveFlag = TRUE; > IP4_COPY_ADDRESS (&Tcp4AP->RemoteAddress, &HttpInstance->RemoteAddr); > > - Tcp4Option = Tcp4CfgData->ControlOption; > - Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > - Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > - Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > - Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > - Tcp4Option->DataRetries = HTTP_DATA_RETRIES; > - Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; > - Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > - Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > - Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > - Tcp4Option->EnableNagle = TRUE; > - Tcp4CfgData->ControlOption = Tcp4Option; > + Tcp4Option = Tcp4CfgData->ControlOption; > + Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > + Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > + Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > + Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > + Tcp4Option->DataRetries = HTTP_DATA_RETRIES; > + Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; > + Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > + Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > + Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > + Tcp4Option->EnableNagle = TRUE; > + Tcp4Option->EnableWindowScaling = TRUE; > + Tcp4CfgData->ControlOption = Tcp4Option; > > if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || > (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) @@ -1156,17 +1157,18 > @@ HttpConfigureTcp6 ( > IP6_COPY_ADDRESS (&Tcp6Ap->StationAddress, &HttpInstance- > >Ipv6Node.LocalAddress); > IP6_COPY_ADDRESS (&Tcp6Ap->RemoteAddress, &HttpInstance->RemoteIpv6Addr); > > - Tcp6Option = Tcp6CfgData->ControlOption; > - Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > - Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > - Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > - Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > - Tcp6Option->DataRetries = HTTP_DATA_RETRIES; > - Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; > - Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > - Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > - Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > - Tcp6Option->EnableNagle = TRUE; > + Tcp6Option = Tcp6CfgData->ControlOption; > + Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > + Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > + Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > + Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > + Tcp6Option->DataRetries = HTTP_DATA_RETRIES; > + Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; > + Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > + Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > + Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > + Tcp6Option->EnableNagle = TRUE; > + Tcp6Option->EnableWindowScaling = TRUE; > > if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || > (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) diff --git > a/NetworkPkg/HttpDxe/HttpProto.h b/NetworkPkg/HttpDxe/HttpProto.h index > 620eb39158..012f1f4b46 100644 > --- a/NetworkPkg/HttpDxe/HttpProto.h > +++ b/NetworkPkg/HttpDxe/HttpProto.h > @@ -37,7 +37,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // > #define HTTP_TOS_DEAULT 8 > #define HTTP_TTL_DEAULT 255 > -#define HTTP_BUFFER_SIZE_DEAULT 65535 > +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 > #define HTTP_MAX_SYN_BACK_LOG 5 > #define HTTP_CONNECTION_TIMEOUT 60 > #define HTTP_DATA_RETRIES 12 > -- > 2.31.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#108459): https://edk2.groups.io/g/devel/message/108459 Mute This Topic: https://groups.io/mt/100271527/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/leave/12367111/7686176/1913456212/xyzzy [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling 2023-09-08 17:07 ` Michael D Kinney @ 2023-09-08 20:55 ` Michael D Kinney 2024-11-25 10:03 ` Santhosh Kumar V via groups.io 0 siblings, 1 reply; 8+ messages in thread From: Michael D Kinney @ 2023-09-08 20:55 UTC (permalink / raw) To: Kasbekar, Saloni, Li, Yi1, devel@edk2.groups.io Cc: Otcheretianski, Andrei, Clark-williams, Zachary, Luo, Heng, Kinney, Michael D Merged: https://github.com/tianocore/edk2/commit/b240eab03530f063ef5438497d70a731b19a201e > -----Original Message----- > From: Kinney, Michael D <michael.d.kinney@intel.com> > Sent: Friday, September 8, 2023 10:07 AM > To: Kasbekar, Saloni <saloni.kasbekar@intel.com>; Li, Yi1 > <yi1.li@intel.com>; devel@edk2.groups.io > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark- > williams, Zachary <zachary.clark-williams@intel.com>; Luo, Heng > <heng.luo@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com> > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > window scaling > > Acked-by: Michael D Kinney <michael.d.kinney@intel.com> > > > -----Original Message----- > > From: Kasbekar, Saloni <saloni.kasbekar@intel.com> > > Sent: Wednesday, September 6, 2023 3:41 PM > > To: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io; Kinney, Michael D > > <michael.d.kinney@intel.com> > > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark- > williams, > > Zachary <zachary.clark-williams@intel.com>; Luo, Heng > <heng.luo@intel.com> > > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > > window scaling > > > > Mike, > > > > Could you help us merge the patch? > > > > Thanks, > > Saloni > > > > -----Original Message----- > > From: Li, Yi1 <yi1.li@intel.com> > > Sent: Wednesday, September 6, 2023 1:52 AM > > To: Kasbekar, Saloni <saloni.kasbekar@intel.com>; devel@edk2.groups.io > > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark- > williams, > > Zachary <zachary.clark-williams@intel.com>; Luo, Heng > <heng.luo@intel.com> > > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > > window scaling > > > > Hi Saloni and Zachary, can you help to merge this patch? It got > reviewed-by > > but not check-in, Thanks! > > > > -----Original Message----- > > From: Kasbekar, Saloni <saloni.kasbekar@intel.com> > > Sent: Tuesday, July 25, 2023 12:18 PM > > To: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io > > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark- > williams, > > Zachary <zachary.clark-williams@intel.com> > > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > > window scaling > > > > Reviewed-by: Saloni Kasbekar <saloni.kasbekar@intel.com> > > > > -----Original Message----- > > From: Li, Yi1 <yi1.li@intel.com> > > Sent: Thursday, July 20, 2023 10:18 PM > > To: devel@edk2.groups.io > > Cc: Li, Yi1 <yi1.li@intel.com>; Otcheretianski, Andrei > > <andrei.otcheretianski@intel.com>; Kasbekar, Saloni > > <saloni.kasbekar@intel.com>; Clark-williams, Zachary <zachary.clark- > > williams@intel.com> > > Subject: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > window > > scaling > > > > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4505 > > This gives something like ~3 fold throughput boost. > > > > Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> > > Cc: Saloni Kasbekar <saloni.kasbekar@intel.com> > > Cc: Zachary Clark-williams <zachary.clark-williams@intel.com> > > --- > > NetworkPkg/HttpBootDxe/HttpBootClient.h | 2 +- > > NetworkPkg/HttpDxe/HttpProto.c | 48 +++++++++++++------------ > > NetworkPkg/HttpDxe/HttpProto.h | 2 +- > > 3 files changed, 27 insertions(+), 25 deletions(-) > > > > diff --git a/NetworkPkg/HttpBootDxe/HttpBootClient.h > > b/NetworkPkg/HttpBootDxe/HttpBootClient.h > > index 2fba713679..86a28bc91a 100644 > > --- a/NetworkPkg/HttpBootDxe/HttpBootClient.h > > +++ b/NetworkPkg/HttpBootDxe/HttpBootClient.h > > @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #ifndef > > __EFI_HTTP_BOOT_HTTP_H__ #define __EFI_HTTP_BOOT_HTTP_H__ > > > > -#define HTTP_BOOT_BLOCK_SIZE 1500 > > +#define HTTP_BOOT_BLOCK_SIZE 32000 > > #define HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" > > #define HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 > > > > diff --git a/NetworkPkg/HttpDxe/HttpProto.c > b/NetworkPkg/HttpDxe/HttpProto.c > > index 33ae622c3f..7dfb82dd2e 100644 > > --- a/NetworkPkg/HttpDxe/HttpProto.c > > +++ b/NetworkPkg/HttpDxe/HttpProto.c > > @@ -1073,18 +1073,19 @@ HttpConfigureTcp4 ( > > Tcp4AP->ActiveFlag = TRUE; > > IP4_COPY_ADDRESS (&Tcp4AP->RemoteAddress, &HttpInstance->RemoteAddr); > > > > - Tcp4Option = Tcp4CfgData->ControlOption; > > - Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > - Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > - Tcp4Option->DataRetries = HTTP_DATA_RETRIES; > > - Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; > > - Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > - Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > - Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > - Tcp4Option->EnableNagle = TRUE; > > - Tcp4CfgData->ControlOption = Tcp4Option; > > + Tcp4Option = Tcp4CfgData->ControlOption; > > + Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > + Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > + Tcp4Option->DataRetries = HTTP_DATA_RETRIES; > > + Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; > > + Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > + Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > + Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > + Tcp4Option->EnableNagle = TRUE; > > + Tcp4Option->EnableWindowScaling = TRUE; > > + Tcp4CfgData->ControlOption = Tcp4Option; > > > > if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || > > (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) @@ -1156,17 > +1157,18 > > @@ HttpConfigureTcp6 ( > > IP6_COPY_ADDRESS (&Tcp6Ap->StationAddress, &HttpInstance- > > >Ipv6Node.LocalAddress); > > IP6_COPY_ADDRESS (&Tcp6Ap->RemoteAddress, &HttpInstance- > >RemoteIpv6Addr); > > > > - Tcp6Option = Tcp6CfgData->ControlOption; > > - Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > - Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > - Tcp6Option->DataRetries = HTTP_DATA_RETRIES; > > - Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; > > - Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > - Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > - Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > - Tcp6Option->EnableNagle = TRUE; > > + Tcp6Option = Tcp6CfgData->ControlOption; > > + Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > + Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > + Tcp6Option->DataRetries = HTTP_DATA_RETRIES; > > + Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; > > + Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > + Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > + Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > + Tcp6Option->EnableNagle = TRUE; > > + Tcp6Option->EnableWindowScaling = TRUE; > > > > if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || > > (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) diff --git > > a/NetworkPkg/HttpDxe/HttpProto.h b/NetworkPkg/HttpDxe/HttpProto.h index > > 620eb39158..012f1f4b46 100644 > > --- a/NetworkPkg/HttpDxe/HttpProto.h > > +++ b/NetworkPkg/HttpDxe/HttpProto.h > > @@ -37,7 +37,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // > > #define HTTP_TOS_DEAULT 8 > > #define HTTP_TTL_DEAULT 255 > > -#define HTTP_BUFFER_SIZE_DEAULT 65535 > > +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 > > #define HTTP_MAX_SYN_BACK_LOG 5 > > #define HTTP_CONNECTION_TIMEOUT 60 > > #define HTTP_DATA_RETRIES 12 > > -- > > 2.31.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#108462): https://edk2.groups.io/g/devel/message/108462 Mute This Topic: https://groups.io/mt/100271527/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/leave/12367111/7686176/1913456212/xyzzy [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling 2023-09-08 20:55 ` Michael D Kinney @ 2024-11-25 10:03 ` Santhosh Kumar V via groups.io 2024-11-25 17:15 ` Michael D Kinney via groups.io 0 siblings, 1 reply; 8+ messages in thread From: Santhosh Kumar V via groups.io @ 2024-11-25 10:03 UTC (permalink / raw) To: Kasbekar, Saloni, Li, Yi1, devel@edk2.groups.io, michael.d.kinney@intel.com Cc: Otcheretianski, Andrei, Clark-williams, Zachary, Luo, Heng [-- Attachment #1: Type: text/plain, Size: 12783 bytes --] HI All, We are facing issue of httpboot takes more time during large iso file downloading. The issue is reported on the customer side. The HTTP/HTTPs takes long time to download the RHEL ISO image from HTTP/HTTPs servers. Tried with different cards – Intel x810/x710/MLOM, Mellanox and Broad com adapters. But this issue is always reproducible with all the adapters. The issue is caused due to the changes made in HttpProto.h, HttpProto.c , HttpBootClient.c file. The changes are given below, HttpBootClient.h -#define HTTP_BOOT_BLOCK_SIZE 1500 +#define HTTP_BOOT_BLOCK_SIZE 32000 HttpProto.c + Tcp4Option->EnableWindowScaling = TRUE; + Tcp6Option->EnableWindowScaling = TRUE; HttpProto.h -#define HTTP_BUFFER_SIZE_DEAULT 65535 +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 After reverting the changes, the issue is not reproduced. Note: Above changes are from EDK2 TianoCore Bugzilla – Bug 4505 Link: 4505 – NetworkPkg: HTTP protocol throughput too small From our side we tried to reproduce the issue. With change HTTP_BOOT_BLOCK_SIZE as 32000 and HTTP_BUFFER_SIZE_DEAULT as 0x200000. It took 23minutes 40seconds to download the RHEL ISO (11.5 GB) through private network from local HTTP server. With reverted changes HTTP_BOOT_BLOCK_SIZE as1500 and HTTP_BUFFER_SIZE_DEAULT as 65535. It took 17 minutes 15 seconds to download the RHEL ISO (11.5 GB) through private network from local HTTP server. Can you please provide your suggestions on this behaviour? Thanks, santhosh ________________________________ From: devel@edk2.groups.io <devel@edk2.groups.io> on behalf of Michael D Kinney via groups.io <michael.d.kinney=intel.com@groups.io> Sent: Saturday, September 9, 2023 02:25 To: Kasbekar, Saloni <saloni.kasbekar@intel.com>; Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io <devel@edk2.groups.io> Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark-williams, Zachary <zachary.clark-williams@intel.com>; Luo, Heng <heng.luo@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com> Subject: [EXTERNAL] Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling **CAUTION: The e-mail below is from an external source. Please exercise caution before opening attachments, clicking links, or following guidance.** Merged: https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ftianocore%2Fedk2%2Fcommit%2Fb240eab03530f063ef5438497d70a731b19a201e&data=05%7C01%7Csanthoshkumarv%40ami.com%7Cc6667944c43c41e3132b08dbb0ade19d%7C27e97857e15f486cb58e86c2b3040f93%7C1%7C0%7C638298033105005252%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=bMifbtnsYEA6xpgZVDenmtSoa7%2F5%2BC4wETTwnGvxJFk%3D&reserved=0<https://github.com/tianocore/edk2/commit/b240eab03530f063ef5438497d70a731b19a201e> > -----Original Message----- > From: Kinney, Michael D <michael.d.kinney@intel.com> > Sent: Friday, September 8, 2023 10:07 AM > To: Kasbekar, Saloni <saloni.kasbekar@intel.com>; Li, Yi1 > <yi1.li@intel.com>; devel@edk2.groups.io > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark- > williams, Zachary <zachary.clark-williams@intel.com>; Luo, Heng > <heng.luo@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com> > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > window scaling > > Acked-by: Michael D Kinney <michael.d.kinney@intel.com> > > > -----Original Message----- > > From: Kasbekar, Saloni <saloni.kasbekar@intel.com> > > Sent: Wednesday, September 6, 2023 3:41 PM > > To: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io; Kinney, Michael D > > <michael.d.kinney@intel.com> > > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark- > williams, > > Zachary <zachary.clark-williams@intel.com>; Luo, Heng > <heng.luo@intel.com> > > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > > window scaling > > > > Mike, > > > > Could you help us merge the patch? > > > > Thanks, > > Saloni > > > > -----Original Message----- > > From: Li, Yi1 <yi1.li@intel.com> > > Sent: Wednesday, September 6, 2023 1:52 AM > > To: Kasbekar, Saloni <saloni.kasbekar@intel.com>; devel@edk2.groups.io > > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark- > williams, > > Zachary <zachary.clark-williams@intel.com>; Luo, Heng > <heng.luo@intel.com> > > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > > window scaling > > > > Hi Saloni and Zachary, can you help to merge this patch? It got > reviewed-by > > but not check-in, Thanks! > > > > -----Original Message----- > > From: Kasbekar, Saloni <saloni.kasbekar@intel.com> > > Sent: Tuesday, July 25, 2023 12:18 PM > > To: Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io > > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark- > williams, > > Zachary <zachary.clark-williams@intel.com> > > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > > window scaling > > > > Reviewed-by: Saloni Kasbekar <saloni.kasbekar@intel.com> > > > > -----Original Message----- > > From: Li, Yi1 <yi1.li@intel.com> > > Sent: Thursday, July 20, 2023 10:18 PM > > To: devel@edk2.groups.io > > Cc: Li, Yi1 <yi1.li@intel.com>; Otcheretianski, Andrei > > <andrei.otcheretianski@intel.com>; Kasbekar, Saloni > > <saloni.kasbekar@intel.com>; Clark-williams, Zachary <zachary.clark- > > williams@intel.com> > > Subject: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > window > > scaling > > > > REF: https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D4505&data=05%7C01%7Csanthoshkumarv%40ami.com%7Cc6667944c43c41e3132b08dbb0ade19d%7C27e97857e15f486cb58e86c2b3040f93%7C1%7C0%7C638298033105005252%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=xMzBMuvcaWmfXYMR3YrTDvGo6x1aCC%2F9WMDUHbeGvW4%3D&reserved=0<https://bugzilla.tianocore.org/show_bug.cgi?id=4505> > > This gives something like ~3 fold throughput boost. > > > > Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com> > > Cc: Saloni Kasbekar <saloni.kasbekar@intel.com> > > Cc: Zachary Clark-williams <zachary.clark-williams@intel.com> > > --- > > NetworkPkg/HttpBootDxe/HttpBootClient.h | 2 +- > > NetworkPkg/HttpDxe/HttpProto.c | 48 +++++++++++++------------ > > NetworkPkg/HttpDxe/HttpProto.h | 2 +- > > 3 files changed, 27 insertions(+), 25 deletions(-) > > > > diff --git a/NetworkPkg/HttpBootDxe/HttpBootClient.h > > b/NetworkPkg/HttpBootDxe/HttpBootClient.h > > index 2fba713679..86a28bc91a 100644 > > --- a/NetworkPkg/HttpBootDxe/HttpBootClient.h > > +++ b/NetworkPkg/HttpBootDxe/HttpBootClient.h > > @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #ifndef > > __EFI_HTTP_BOOT_HTTP_H__ #define __EFI_HTTP_BOOT_HTTP_H__ > > > > -#define HTTP_BOOT_BLOCK_SIZE 1500 > > +#define HTTP_BOOT_BLOCK_SIZE 32000 > > #define HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" > > #define HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 > > > > diff --git a/NetworkPkg/HttpDxe/HttpProto.c > b/NetworkPkg/HttpDxe/HttpProto.c > > index 33ae622c3f..7dfb82dd2e 100644 > > --- a/NetworkPkg/HttpDxe/HttpProto.c > > +++ b/NetworkPkg/HttpDxe/HttpProto.c > > @@ -1073,18 +1073,19 @@ HttpConfigureTcp4 ( > > Tcp4AP->ActiveFlag = TRUE; > > IP4_COPY_ADDRESS (&Tcp4AP->RemoteAddress, &HttpInstance->RemoteAddr); > > > > - Tcp4Option = Tcp4CfgData->ControlOption; > > - Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > - Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > - Tcp4Option->DataRetries = HTTP_DATA_RETRIES; > > - Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; > > - Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > - Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > - Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > - Tcp4Option->EnableNagle = TRUE; > > - Tcp4CfgData->ControlOption = Tcp4Option; > > + Tcp4Option = Tcp4CfgData->ControlOption; > > + Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > + Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > + Tcp4Option->DataRetries = HTTP_DATA_RETRIES; > > + Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; > > + Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > + Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > + Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > + Tcp4Option->EnableNagle = TRUE; > > + Tcp4Option->EnableWindowScaling = TRUE; > > + Tcp4CfgData->ControlOption = Tcp4Option; > > > > if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || > > (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) @@ -1156,17 > +1157,18 > > @@ HttpConfigureTcp6 ( > > IP6_COPY_ADDRESS (&Tcp6Ap->StationAddress, &HttpInstance- > > >Ipv6Node.LocalAddress); > > IP6_COPY_ADDRESS (&Tcp6Ap->RemoteAddress, &HttpInstance- > >RemoteIpv6Addr); > > > > - Tcp6Option = Tcp6CfgData->ControlOption; > > - Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > - Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > - Tcp6Option->DataRetries = HTTP_DATA_RETRIES; > > - Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; > > - Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > - Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > - Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > - Tcp6Option->EnableNagle = TRUE; > > + Tcp6Option = Tcp6CfgData->ControlOption; > > + Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > + Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > + Tcp6Option->DataRetries = HTTP_DATA_RETRIES; > > + Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; > > + Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > + Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > + Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > + Tcp6Option->EnableNagle = TRUE; > > + Tcp6Option->EnableWindowScaling = TRUE; > > > > if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || > > (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) diff --git > > a/NetworkPkg/HttpDxe/HttpProto.h b/NetworkPkg/HttpDxe/HttpProto.h index > > 620eb39158..012f1f4b46 100644 > > --- a/NetworkPkg/HttpDxe/HttpProto.h > > +++ b/NetworkPkg/HttpDxe/HttpProto.h > > @@ -37,7 +37,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // > > #define HTTP_TOS_DEAULT 8 > > #define HTTP_TTL_DEAULT 255 > > -#define HTTP_BUFFER_SIZE_DEAULT 65535 > > +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 > > #define HTTP_MAX_SYN_BACK_LOG 5 > > #define HTTP_CONNECTION_TIMEOUT 60 > > #define HTTP_DATA_RETRIES 12 > > -- > > 2.31.1.windows.1 -The information contained in this message may be confidential and proprietary to American Megatrends (AMI). This communication is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any distribution of this message, in any form, is strictly prohibited. Please promptly notify the sender by reply e-mail or by telephone at 770-246-8600, and then delete or destroy all copies of the transmission. -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#120829): https://edk2.groups.io/g/devel/message/120829 Mute This Topic: https://groups.io/mt/100271527/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- [-- Attachment #2: Type: text/html, Size: 24751 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling 2024-11-25 10:03 ` Santhosh Kumar V via groups.io @ 2024-11-25 17:15 ` Michael D Kinney via groups.io 0 siblings, 0 replies; 8+ messages in thread From: Michael D Kinney via groups.io @ 2024-11-25 17:15 UTC (permalink / raw) To: Santhosh Kumar V, Kasbekar, Saloni, Li, Yi1, devel@edk2.groups.io Cc: Otcheretianski, Andrei, Clark-williams, Zachary, Luo, Heng, Kinney, Michael D [-- Attachment #1: Type: text/plain, Size: 15396 bytes --] This is an interesting observation. Optimizing the performance of various protocols and block sizes and windows can be complex. You might try using tools like WireShark to compare the behavior of different configurations which values make the performance better and worse and if events like timeout or retries are being introduced. If there are settings that need to be tuned for different network environments, then moving some of these from #defines to PCDs or setup options may be valuable. Mike From: Santhosh Kumar V <santhoshkumarv@ami.com> Sent: Monday, November 25, 2024 2:04 AM To: Kasbekar, Saloni <saloni.kasbekar@intel.com>; Li, Yi1 <yi1.li@intel.com>; devel@edk2.groups.io; Kinney, Michael D <michael.d.kinney@intel.com> Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com>; Clark-williams, Zachary <zachary.clark-williams@intel.com>; Luo, Heng <heng.luo@intel.com> Subject: Re: [EXTERNAL] Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling HI All, We are facing issue of httpboot takes more time during large iso file downloading. The issue is reported on the customer side. The HTTP/HTTPs takes long time to download the RHEL ISO image from HTTP/HTTPs servers. Tried with different cards - Intel x810/x710/MLOM, Mellanox and Broad com adapters. But this issue is always reproducible with all the adapters. The issue is caused due to the changes made in HttpProto.h, HttpProto.c , HttpBootClient.c file. The changes are given below, HttpBootClient.h -#define HTTP_BOOT_BLOCK_SIZE 1500 +#define HTTP_BOOT_BLOCK_SIZE 32000 HttpProto.c + Tcp4Option->EnableWindowScaling = TRUE; + Tcp6Option->EnableWindowScaling = TRUE; HttpProto.h -#define HTTP_BUFFER_SIZE_DEAULT 65535 +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 After reverting the changes, the issue is not reproduced. Note: Above changes are from EDK2 TianoCore Bugzilla - Bug 4505 Link: 4505 - NetworkPkg: HTTP protocol throughput too small From our side we tried to reproduce the issue. With change HTTP_BOOT_BLOCK_SIZE as 32000 and HTTP_BUFFER_SIZE_DEAULT as 0x200000. It took 23minutes 40seconds to download the RHEL ISO (11.5 GB) through private network from local HTTP server. With reverted changes HTTP_BOOT_BLOCK_SIZE as1500 and HTTP_BUFFER_SIZE_DEAULT as 65535. It took 17 minutes 15 seconds to download the RHEL ISO (11.5 GB) through private network from local HTTP server. Can you please provide your suggestions on this behaviour? Thanks, santhosh ________________________________ From: devel@edk2.groups.io<mailto:devel@edk2.groups.io> <devel@edk2.groups.io<mailto:devel@edk2.groups.io>> on behalf of Michael D Kinney via groups.io <michael.d.kinney=intel.com@groups.io<mailto:michael.d.kinney=intel.com@groups.io>> Sent: Saturday, September 9, 2023 02:25 To: Kasbekar, Saloni <saloni.kasbekar@intel.com<mailto:saloni.kasbekar@intel.com>>; Li, Yi1 <yi1.li@intel.com<mailto:yi1.li@intel.com>>; devel@edk2.groups.io<mailto:devel@edk2.groups.io> <devel@edk2.groups.io<mailto:devel@edk2.groups.io>> Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com<mailto:andrei.otcheretianski@intel.com>>; Clark-williams, Zachary <zachary.clark-williams@intel.com<mailto:zachary.clark-williams@intel.com>>; Luo, Heng <heng.luo@intel.com<mailto:heng.luo@intel.com>>; Kinney, Michael D <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>> Subject: [EXTERNAL] Re: [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling **CAUTION: The e-mail below is from an external source. Please exercise caution before opening attachments, clicking links, or following guidance.** Merged: https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ftianocore%2Fedk2%2Fcommit%2Fb240eab03530f063ef5438497d70a731b19a201e&data=05%7C01%7Csanthoshkumarv%40ami.com%7Cc6667944c43c41e3132b08dbb0ade19d%7C27e97857e15f486cb58e86c2b3040f93%7C1%7C0%7C638298033105005252%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=bMifbtnsYEA6xpgZVDenmtSoa7%2F5%2BC4wETTwnGvxJFk%3D&reserved=0<https://github.com/tianocore/edk2/commit/b240eab03530f063ef5438497d70a731b19a201e> > -----Original Message----- > From: Kinney, Michael D <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>> > Sent: Friday, September 8, 2023 10:07 AM > To: Kasbekar, Saloni <saloni.kasbekar@intel.com<mailto:saloni.kasbekar@intel.com>>; Li, Yi1 > <yi1.li@intel.com<mailto:yi1.li@intel.com>>; devel@edk2.groups.io<mailto:devel@edk2.groups.io> > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com<mailto:andrei.otcheretianski@intel.com>>; Clark- > williams, Zachary <zachary.clark-williams@intel.com<mailto:zachary.clark-williams@intel.com>>; Luo, Heng > <heng.luo@intel.com<mailto:heng.luo@intel.com>>; Kinney, Michael D <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>> > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > window scaling > > Acked-by: Michael D Kinney <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>> > > > -----Original Message----- > > From: Kasbekar, Saloni <saloni.kasbekar@intel.com<mailto:saloni.kasbekar@intel.com>> > > Sent: Wednesday, September 6, 2023 3:41 PM > > To: Li, Yi1 <yi1.li@intel.com<mailto:yi1.li@intel.com>>; devel@edk2.groups.io<mailto:devel@edk2.groups.io>; Kinney, Michael D > > <michael.d.kinney@intel.com<mailto:michael.d.kinney@intel.com>> > > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com<mailto:andrei.otcheretianski@intel.com>>; Clark- > williams, > > Zachary <zachary.clark-williams@intel.com<mailto:zachary.clark-williams@intel.com>>; Luo, Heng > <heng.luo@intel.com<mailto:heng.luo@intel.com>> > > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > > window scaling > > > > Mike, > > > > Could you help us merge the patch? > > > > Thanks, > > Saloni > > > > -----Original Message----- > > From: Li, Yi1 <yi1.li@intel.com<mailto:yi1.li@intel.com>> > > Sent: Wednesday, September 6, 2023 1:52 AM > > To: Kasbekar, Saloni <saloni.kasbekar@intel.com<mailto:saloni.kasbekar@intel.com>>; devel@edk2.groups.io<mailto:devel@edk2.groups.io> > > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com<mailto:andrei.otcheretianski@intel.com>>; Clark- > williams, > > Zachary <zachary.clark-williams@intel.com<mailto:zachary.clark-williams@intel.com>>; Luo, Heng > <heng.luo@intel.com<mailto:heng.luo@intel.com>> > > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > > window scaling > > > > Hi Saloni and Zachary, can you help to merge this patch? It got > reviewed-by > > but not check-in, Thanks! > > > > -----Original Message----- > > From: Kasbekar, Saloni <saloni.kasbekar@intel.com<mailto:saloni.kasbekar@intel.com>> > > Sent: Tuesday, July 25, 2023 12:18 PM > > To: Li, Yi1 <yi1.li@intel.com<mailto:yi1.li@intel.com>>; devel@edk2.groups.io<mailto:devel@edk2.groups.io> > > Cc: Otcheretianski, Andrei <andrei.otcheretianski@intel.com<mailto:andrei.otcheretianski@intel.com>>; Clark- > williams, > > Zachary <zachary.clark-williams@intel.com<mailto:zachary.clark-williams@intel.com>> > > Subject: RE: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > > window scaling > > > > Reviewed-by: Saloni Kasbekar <saloni.kasbekar@intel.com<mailto:saloni.kasbekar@intel.com>> > > > > -----Original Message----- > > From: Li, Yi1 <yi1.li@intel.com<mailto:yi1.li@intel.com>> > > Sent: Thursday, July 20, 2023 10:18 PM > > To: devel@edk2.groups.io<mailto:devel@edk2.groups.io> > > Cc: Li, Yi1 <yi1.li@intel.com<mailto:yi1.li@intel.com>>; Otcheretianski, Andrei > > <andrei.otcheretianski@intel.com<mailto:andrei.otcheretianski@intel.com>>; Kasbekar, Saloni > > <saloni.kasbekar@intel.com<mailto:saloni.kasbekar@intel.com>>; Clark-williams, Zachary <zachary.clark- > > williams@intel.com<mailto:williams@intel.com>> > > Subject: [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP > window > > scaling > > > > REF: https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D4505&data=05%7C01%7Csanthoshkumarv%40ami.com%7Cc6667944c43c41e3132b08dbb0ade19d%7C27e97857e15f486cb58e86c2b3040f93%7C1%7C0%7C638298033105005252%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=xMzBMuvcaWmfXYMR3YrTDvGo6x1aCC%2F9WMDUHbeGvW4%3D&reserved=0<https://bugzilla.tianocore.org/show_bug.cgi?id=4505> > > This gives something like ~3 fold throughput boost. > > > > Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com<mailto:andrei.otcheretianski@intel.com>> > > Cc: Saloni Kasbekar <saloni.kasbekar@intel.com<mailto:saloni.kasbekar@intel.com>> > > Cc: Zachary Clark-williams <zachary.clark-williams@intel.com<mailto:zachary.clark-williams@intel.com>> > > --- > > NetworkPkg/HttpBootDxe/HttpBootClient.h | 2 +- > > NetworkPkg/HttpDxe/HttpProto.c | 48 +++++++++++++------------ > > NetworkPkg/HttpDxe/HttpProto.h | 2 +- > > 3 files changed, 27 insertions(+), 25 deletions(-) > > > > diff --git a/NetworkPkg/HttpBootDxe/HttpBootClient.h > > b/NetworkPkg/HttpBootDxe/HttpBootClient.h > > index 2fba713679..86a28bc91a 100644 > > --- a/NetworkPkg/HttpBootDxe/HttpBootClient.h > > +++ b/NetworkPkg/HttpBootDxe/HttpBootClient.h > > @@ -10,7 +10,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent #ifndef > > __EFI_HTTP_BOOT_HTTP_H__ #define __EFI_HTTP_BOOT_HTTP_H__ > > > > -#define HTTP_BOOT_BLOCK_SIZE 1500 > > +#define HTTP_BOOT_BLOCK_SIZE 32000 > > #define HTTP_USER_AGENT_EFI_HTTP_BOOT "UefiHttpBoot/1.0" > > #define HTTP_BOOT_AUTHENTICATION_INFO_MAX_LEN 255 > > > > diff --git a/NetworkPkg/HttpDxe/HttpProto.c > b/NetworkPkg/HttpDxe/HttpProto.c > > index 33ae622c3f..7dfb82dd2e 100644 > > --- a/NetworkPkg/HttpDxe/HttpProto.c > > +++ b/NetworkPkg/HttpDxe/HttpProto.c > > @@ -1073,18 +1073,19 @@ HttpConfigureTcp4 ( > > Tcp4AP->ActiveFlag = TRUE; > > IP4_COPY_ADDRESS (&Tcp4AP->RemoteAddress, &HttpInstance->RemoteAddr); > > > > - Tcp4Option = Tcp4CfgData->ControlOption; > > - Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > - Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > - Tcp4Option->DataRetries = HTTP_DATA_RETRIES; > > - Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; > > - Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > - Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > - Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > - Tcp4Option->EnableNagle = TRUE; > > - Tcp4CfgData->ControlOption = Tcp4Option; > > + Tcp4Option = Tcp4CfgData->ControlOption; > > + Tcp4Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp4Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp4Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > + Tcp4Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > + Tcp4Option->DataRetries = HTTP_DATA_RETRIES; > > + Tcp4Option->FinTimeout = HTTP_FIN_TIMEOUT; > > + Tcp4Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > + Tcp4Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > + Tcp4Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > + Tcp4Option->EnableNagle = TRUE; > > + Tcp4Option->EnableWindowScaling = TRUE; > > + Tcp4CfgData->ControlOption = Tcp4Option; > > > > if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || > > (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) @@ -1156,17 > +1157,18 > > @@ HttpConfigureTcp6 ( > > IP6_COPY_ADDRESS (&Tcp6Ap->StationAddress, &HttpInstance- > > >Ipv6Node.LocalAddress); > > IP6_COPY_ADDRESS (&Tcp6Ap->RemoteAddress, &HttpInstance- > >RemoteIpv6Addr); > > > > - Tcp6Option = Tcp6CfgData->ControlOption; > > - Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > - Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > - Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > - Tcp6Option->DataRetries = HTTP_DATA_RETRIES; > > - Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; > > - Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > - Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > - Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > - Tcp6Option->EnableNagle = TRUE; > > + Tcp6Option = Tcp6CfgData->ControlOption; > > + Tcp6Option->ReceiveBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp6Option->SendBufferSize = HTTP_BUFFER_SIZE_DEAULT; > > + Tcp6Option->MaxSynBackLog = HTTP_MAX_SYN_BACK_LOG; > > + Tcp6Option->ConnectionTimeout = HTTP_CONNECTION_TIMEOUT; > > + Tcp6Option->DataRetries = HTTP_DATA_RETRIES; > > + Tcp6Option->FinTimeout = HTTP_FIN_TIMEOUT; > > + Tcp6Option->KeepAliveProbes = HTTP_KEEP_ALIVE_PROBES; > > + Tcp6Option->KeepAliveTime = HTTP_KEEP_ALIVE_TIME; > > + Tcp6Option->KeepAliveInterval = HTTP_KEEP_ALIVE_INTERVAL; > > + Tcp6Option->EnableNagle = TRUE; > > + Tcp6Option->EnableWindowScaling = TRUE; > > > > if ((HttpInstance->State == HTTP_STATE_TCP_CONNECTED) || > > (HttpInstance->State == HTTP_STATE_TCP_CLOSED)) diff --git > > a/NetworkPkg/HttpDxe/HttpProto.h b/NetworkPkg/HttpDxe/HttpProto.h index > > 620eb39158..012f1f4b46 100644 > > --- a/NetworkPkg/HttpDxe/HttpProto.h > > +++ b/NetworkPkg/HttpDxe/HttpProto.h > > @@ -37,7 +37,7 @@ SPDX-License-Identifier: BSD-2-Clause-Patent // > > #define HTTP_TOS_DEAULT 8 > > #define HTTP_TTL_DEAULT 255 > > -#define HTTP_BUFFER_SIZE_DEAULT 65535 > > +#define HTTP_BUFFER_SIZE_DEAULT 0x200000 > > #define HTTP_MAX_SYN_BACK_LOG 5 > > #define HTTP_CONNECTION_TIMEOUT 60 > > #define HTTP_DATA_RETRIES 12 > > -- > > 2.31.1.windows.1 -The information contained in this message may be confidential and proprietary to American Megatrends (AMI). This communication is intended to be read only by the individual or entity to whom it is addressed or by their designee. If the reader of this message is not the intended recipient, you are on notice that any distribution of this message, in any form, is strictly prohibited. Please promptly notify the sender by reply e-mail or by telephone at 770-246-8600, and then delete or destroy all copies of the transmission. -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#120836): https://edk2.groups.io/g/devel/message/120836 Mute This Topic: https://groups.io/mt/100271527/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=- [-- Attachment #2: Type: text/html, Size: 28853 bytes --] ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-11-25 17:15 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-07-21 5:17 [edk2-devel] [PATCH] NetworkPkg: Increase HTTP buffer size and enable TCP window scaling Li, Yi 2023-07-25 4:17 ` Saloni Kasbekar 2023-09-06 8:51 ` Li, Yi 2023-09-06 22:41 ` Saloni Kasbekar 2023-09-08 17:07 ` Michael D Kinney 2023-09-08 20:55 ` Michael D Kinney 2024-11-25 10:03 ` Santhosh Kumar V via groups.io 2024-11-25 17:15 ` Michael D Kinney via groups.io
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox