TCP Timeout Issues in Azure

Brad Farmer 20 Reputation points
2025-04-07T17:10:03.0333333+00:00

I'm running into an issue with TCP timeouts and Helix(Perforce) Core on a fairly new Azure Instance. With large file uploads we keep seeing TCP resets. The application is set to defer to the OS. Everything on the OS appears to be at the default settings with TCP. No matter what options we tweak, we can't seem to go longer than 4 minutes without a TCP reset.

We are not running Azure Firewall or a Load Balancer, which is where nearly all the documentation points for this type of issue. I did find one lone article talking about a 4 minute timeout for an FTP server in Azure. They mentioned the only way to fix it was to use a command called set-azureendpoint to modify the TCP properties on the AzureVM using powershell. I've had trouble getting this command to work but before I dive too deep into this rabbit hole is there any light anyone can shed on this?

PS. We run a Fortigate in Azure. The settings there for TCP are fairly loose by default.

Azure Virtual Network
Azure Virtual Network
An Azure networking service that is used to provision private networks and optionally to connect to on-premises datacenters.
2,720 questions
{count} votes

Accepted answer
  1. UJTyagi-MSFT 930 Reputation points Microsoft Employee
    2025-04-10T09:29:30.6866667+00:00

    Hello @Brad Farmer ,

    Welcome to the Microsoft Q&A Platform. Thank you for reaching out & I hope you are doing well.

    • Helix(Perforce) Core are SAAS offering from Perforce and hence the instance settings are managed by the SAAS provider on Azure Marketplace.
    • Hence Perforce support team need to be engaged to advise the settings on the Helix instance
    • I found once article which talks about setting up the keepalives to maintain TCP settings on Helix instance and on client side. Refer the below article.
    • https://portal.perforce.com/s/article/net-keepalive-settings-don-t-always-work-with-parallel-syncs-in-Helix-Core
    • Since you already mentioned that you are not running Azure Firewall or a Load Balancer or other transit device, it seems you need to tune TCP settings on instance itself.
    • set-azureendpoint command is long deprecated and was useful for configuring endpoints and ACLs(Replaced by NSG), it does not directly modify TCP settings. The cmdlet was part of the Azure Service Management (ASM) model (aka "classic" deployment model), which has largely been replaced by Azure Resource Manager (ARM).

    Hope the answer is able to help to reach the right support.

    If the below answer addressed your query, please don’t forget to click "Accept the answer" and Up-Vote for the same, which might be beneficial to other community members reading this thread. And, if you have any further query do let us know.

    Thanks,

    Ujjawal Tyagi


0 additional answers

Sort by: Most helpful

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.