HUAWEI CLOUD EULEROS-定制TCP重传策略:使用说明

时间:2025-06-17 16:10:49

使用说明

  • 开启TCP重传策略定制能力。通过如下命令,将net.ipv4.tcp_sock_retrans_policy_custom配置为1:
    [root@localhost ~]# sysctl -w net.ipv4.tcp_sock_retrans_policy_custom=1

    设置线性退避4次,最大重传10次,最大重传间隔时间20秒:

    tcp_sock_retrans_policy policy = {0};
    policy.tcp_linear_timeouts_times = 4; 
    policy.tcp_retries_max = 10; 
    policy.tcp_rto_max = 20; 
    setsockopt(sockfd, SOL_TCP, TCP_SOCK_RETRANS_POLICY_CUSTOM, (const void*)&policy, sizeof(struct tcp_sock_retrans_policy));
  • 恢复为默认策略:
    tcp_sock_retrans_policy policy = {0};
    setsockopt(sockfd, SOL_TCP, TCP_SOCK_RETRANS_POLICY_CUSTOM, (const void*)&policy, sizeof(struct tcp_sock_retrans_policy));
  • 关闭TCP重传策略定制能力:
    [root@localhost ~]# sysctl -w net.ipv4.tcp_sock_retrans_policy_custom=0

    定制TCP重传策略功能在HCE2.0版本内核进行修改,在HCE2.0版本glibc中使用该功能,需要在用户态代码中添加TCP_SOCK_RETRANS_POLICY_CUSTOM 宏以及对应的结构体tcp_sock_retrans_policy。

support.huaweicloud.com/usermanual-hce/zh-cn_topic_0000002350949965.html