Unidirectional TCP keep-alive for Classic Load Balancer and Network Load Balancer

0

I own a fleet of IoT devices. The devices send data to the cloud on varying frequencies (it can be 1 minute or 30 minutes). The devices are old and can't be modified to send keep-alives. I'm currently using Classic Load Balancer and considering Network Load Balancer. I'm trying to mimic Classic Load Balancer's behavior for TCP flows, and prevent Network Load Balancer from closing the connection after an idle timeout of 350 seconds. Will a unidirectional keep-alive that is sent from the server be enough to keep the Network Load Balancer connection open?

Nir_Sh
已提问 3 年前1053 查看次数
1 回答
0
已接受的回答

For Classic Load Balancer, TCP keep-alives will not keep the connection alive. HTTP payload is required for the connection to be alive for Classic Load Balancers.

With Network Load Balancer, the TCP keep-alives can prevent the connection from reaching the idle timeout. However, the keep-alives must be enabled in both directions. If the server sends a keep-alive message, the client has to respond with a keep-alive acknowledgment. If the clients are unresponsive to keep-alives from the server, the idle timeout of 350 seconds will be reached. If either endpoint (client or server) sends traffic to the idle connection, Network load Balancer will generate a reset.

The HTTP payload will also keep the connection alive in case of NLB however you will have to make sure that it is being sent before hitting the 350sec timeout.

AWS
已回答 3 年前
profile picture
专家
已审核 1 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则