tcp_nodelay 또는 tcp_nagle_limit 옵션

AIX®에서는 TCP_NODELAY 소켓 옵션이 기본적으로 비활성화되어 있어 요청/응답 워크로드에 큰 지연이 발생할 수 있으며, 몇 바이트만 전송한 후 응답을 기다릴 수 있습니다. TCP는 응답 패킷에 대한 TCP 응답을 Piggyback 방식으로 처리하므로 지연된 응답을 구현합니다. 지연은 보통 200ms입니다.

대부분의 TCP 구현은 Nagle 알고리즘을 구현합니다. 이 경우 TCP 연결에는 아직 응답하지 않은 미결 상태의 소형 세그먼트가 한 개만 있을 수 있습니다. 따라서 TCP는 응답을 수행할 때까지 또는 더 많은 데이터를 번들로 묶어서 전체 크기 세그먼트를 전송할 수 있을 때까지 패킷 전송을 지연시킵니다.

요청/응답 워크로드를 사용하는 애플리케이션은 setsockopt() 호출을 사용하여 TCP_NODELAY 옵션을 사용으로 설정해야 합니다. 예를 들어, telnetrlogin 유틸리티, NFS(Network File System) 및 웹 서버는 nagle을 사용 안함으로 설정하기 위해 이미 TCP_NODELAY 옵션을 사용하고 있습니다. 그러나 일부 애플리케이션은 이 옵션을 사용하지 않으므로, 네트워크 MTU 크기와 소켓에 대한 전송(쓰기) 크기에 따라 성능이 저하될 수 있습니다.

TCP_NODELAY를 사용으로 설정하지 않은 애플리케이션을 처리할 경우 다음 조정 옵션을 사용하여 nagle을 사용 안함으로 설정할 수 있습니다.

  • TCP 나글 제한
  • tcp_nodelay ISNO 옵션
  • TCP 노드레이어 어택
  • 패스트티모
  • 어댑터에서 인터럽트 합치기