Can I disable idle timeouts in Azure's iLB (Internal Load Balancer)?

Toshio Yamazaki 70 Reputation points
2023-06-28T11:07:16.7066667+00:00

When a client connects to a server via Azure's Internal Load Balancer (iLB), is there any way to prevent the session from timing out?

The load balancing rules in Azure's iLB (Internal Load Balancer) allow for a session idle timeout of 4 to 30 minutes.

I would like to know if there is a way to disable this idle timeout setting.

If anyone knows anything about this, I would appreciate it.

Azure Load Balancer
Azure Load Balancer

An Azure service that delivers high availability and network performance to applications.

0 comments No comments

Answer accepted by question author
GitaraniSharma-MSFT 50,207 Reputation points Microsoft Employee Moderator
2023-06-28T15:02:22.09+00:00

Hello @Toshio Yamazaki ,

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

I understand that you would like to know if you can disable idle timeout setting in Azure internal load balancer.

Azure Load Balancer has an idle timeout setting of 4 minutes to 30 minutes. By default, it is set to 4 minutes. And 30 minutes is the maximum available limit of TCP idle timeout at the moment.

Please refer: https://learn.microsoft.com/en-us/azure/load-balancer/load-balancer-tcp-reset#configurable-tcp-idle-timeout

https://learn.microsoft.com/en-us/azure/load-balancer/load-balancer-tcp-idle-timeout?tabs=tcp-reset-idle-portal

As of today, you cannot disable this setting.

https://feedback.azure.com/d365community/idea/f3e7e408-8826-ec11-b6e6-000d3a4f0789

https://feedback.azure.com/d365community/idea/3b2d27ae-7493-ed11-a81b-000d3ae5ae95

If you wish you may leave your feedback in the below forum requesting this feature. All the feedback you share in these forums will be monitored and reviewed by the Microsoft engineering teams responsible for building Azure.

https://feedback.azure.com/d365community/forum/8ae9bf04-8326-ec11-b6e6-000d3a4f0789

However, you can use Standard Load Balancer to enable TCP Reset on Idle for a given rule. Enabling this feature will cause Load Balancer to send bidirectional TCP Resets (TCP RST packet) to both client and server endpoints at the time of idle timeout for all matching flows. This will inform your application endpoints that the connection has timed out and is no longer usable. Endpoints can immediately establish a new connection if needed.

Please refer: https://docs.microsoft.com/en-us/azure/load-balancer/load-balancer-tcp-reset

For many scenarios, TCP reset may reduce the need to send TCP (or application layer) keepalives to refresh the idle timeout of a flow.

If your idle durations exceed the load balancer idle timeout configuration limits or your application shows an undesirable behavior with TCP Resets enabled, you should use TCP keepalives, or application layer keepalives, to monitor the liveness of the TCP connections. For more information, see these .NET examples.

To avoid losing the connection, configure the TCP keep-alive with an interval less than the idle timeout setting or increase the idle timeout value.

Kindly let us know if the above helps or you need further assistance on this issue.


Please "Accept the answer" if the information helped you. This will help us and others in the community as well.

Was this answer helpful?

1 person found this answer helpful.

0 additional answers

Sort by: Most helpful

Your answer

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