TCP/IP 버퍼 크기 조정
WebSphere® Application Server는 TCP/IP 소켓 통신 메커니즘을 독점적으로 사용합니다. TCP/IP 소켓 연결의 경우 전송 및 수신 버퍼 크기는 수신 창에서 정의합니다. 수신 창은 전송을 인터럽트하기 전에 전송할 수 있고 수신할 수 없는 데이터량을 지정합니다. 너무 많은 데이터가 전송되면 버퍼가 오버런되고 전송이 인터럽트됩니다. 데이터 전송 인터럽션을 제어하는 메커니즘을 플로우 제어라고 합니다. TCP/IP 버퍼의 수신 창 크기가 너무 작으면 수신 창 버퍼가 자주 오버런되고 수신 버퍼가 빌 때까지 플로우 제어 메커니즘이 데이터 전송을 중지합니다.
이 태스크 정보
플로우 제어는 상당한 CPU 시간을
소비할 수 있고 데이터 전송 인터럽션의 결과로서 추가 네트워크 지연으로
이어질 수 있습니다. 정상 운영 조건에서 플로우 제어를 피하려면
버퍼 크기를 늘릴 것을 권장합니다. 큰 버퍼 크기는 플로우 제어가 발생하는
가능성을 줄여주고 CPU 사용량 향상의 결과를 가져옵니다. 그러나 버퍼 크기가
커지면 어떤 경우 성능에 역효과를 미칠 수 있습니다. TCP/IP 버퍼가 너무 크고
애플리케이션이 충분히 신속하게 데이터를 처리하지 못하면 페이징이 증가될 수 있습니다.
목표는 플로우 제어를 피할만큼만 값을 크게 지정하는 것이지 시스템이 처리할 수 있는 것보다
많은 데이터를 버퍼에 누적시킬만큼 크게 지정하는 것이 아닙니다.
기본
버퍼 크기는 8KB입니다. 최대 크기는 8MB(8096KB)입니다. 최적 버퍼 크기는 전환 및 시스템 유형, 수신확인 타이밍, 오류 비율 및 네트워크 토폴로지,
메모리 크기 및 데이터 전송 크기를 포함하는 몇 가지 네트워크 환경 요소에 따라 달라집니다.
데이터 전송 크기가 과도하게 크면 버퍼 크기를 최대값으로 설정하여
처리량을 향상시키고 플로우 제어 발생을 줄이며 CPU 비용을 줄이고자 할 수 있습니다.
웹 서버와 WebSphere Application Server 간의 소켓 연결에 대한 버퍼 크기가
64KB로 설정됩니다. 대부분의 경우 이 값이
적당합니다.
애플리케이션이 IBM® Developer
Kit for Java(TM) JDBC 드라이버 또는
IBM Toolbox for Java™ JDBC 드라이버를
사용하여 원격 데이터베이스에 액세스할 때 플로우 제어가 문제일 수 있습니다.
데이터 전송이 크면 플로우 제어가 많은 양의
CPU 시간을 소비할 수 있습니다. IBM Toolbox
for Java JDBC 드라이버를 사용하는 경우 사용자 정의
특성을 사용하여 각 데이터 소스에 대한 버퍼 크기를 구성할 수 있습니다. 버퍼 크기를 크게(예: 1MB) 지정할 것을 권장합니다.
일부 시스템 범위 설정은 소켓의 기본 8KB 버퍼 크기를
대체할 수 있습니다. 일부 애플리케이션(예:
WebSphere Commerce Suite)의 경우,
180KB의 버퍼 크기는 플로우 제어를 줄이고 일반적으로
페이징에 부정적인 영향을 주지 않습니다. 최적값은 특정 시스템 특성에 따라 다릅니다. 사용자 시스템에
이상적인 버퍼 크기를 결정하기 전에 몇 가지 값을 시도해야 할 수 있습니다.
TCP/IP는 일부 심각한 원격 메소드 지연의 원인이 될 수 있습니다.
자세한 정보는 System p 및 AIX에서 IBM WebSphere Application Server 실행: 최적화 및 우수 사례에서
"TCP/IP 네트워크 설정"을 참조하십시오. 또한 TCP 스트리밍 워크로드 조정을 참조하십시오.
자세한 정보는
Linux
튜닝을 참조하십시오.
TCP/IP 버퍼 크기 조정에 대한 정보는
Windows
2000 및 Windows Server 2003 TCP 기능 문서를
참조하십시오. TcpWindowSize 값을 8388608 또는 16777216으로
설정을 고려하십시오.
시스템 범위 값을 변경하려면 다음 단계를 수행하십시오.
![[IBM i]](../images/iseries.gif)
![[z/OS]](../images/ngzos.gif)
프로시저
![[z/OS]](../images/ngzos.gif)
![[IBM i]](../images/iseries.gif)
결과
이상적인 버퍼 크기를 판별할 때까지 이 프로세스를 반복하십시오.
![[z/OS]](../images/ngzos.gif)
![[IBM i]](../images/iseries.gif)
다음에 수행할 작업
TCP/IP 버퍼 크기가 변경되었습니다. 이상적인 버퍼 크기를 판별할 때까지 이 프로세스를 반복하십시오.
TCP/IP 성능에 대한 자세한 정보는 Performance Capabilities Reference의 제 5장을 참조하십시오. Performance Capabilities
Reference의 몇 가지 개정판에 대한 링크는 Performance Management Resource Library에 있습니다.