Oracle® Solaris 11.2의 TCP/IP 네트워크, IPMP 및 IP 터널 관리

인쇄 보기 종료

업데이트 날짜: 2014년 7월
 
 

TCP 수신 버퍼 크기 변경

TCP 수신 버퍼의 크기는 TCP 등록 정보 recv_buf(기본값 128KB)를 사용하여 설정됩니다. 하지만 응용 프로그램은 사용 가능한 대역폭을 동일하게 사용하지 않습니다. 따라서 연결 대기 시간에 따라 기본 크기를 변경해야 할 수 있습니다. 예를 들어, Oracle Solaris의 보안 셸 기능을 사용하면 데이터 스트림에서 수행되는 추가 체크섬 및 암호화 프로세스로 인해 대역폭 사용에 대한 오버헤드가 발생합니다. 따라서 버퍼 크기를 늘려야 할 수 있습니다. 마찬가지로, 대량 전송을 수행하는 응용 프로그램이 대역폭을 효율적으로 사용하도록 하려면 동일한 버퍼 크기 조정도 필요합니다.

BDP(대역폭 지연 곱)를 예상하여 사용할 올바른 수신 버퍼 크기를 계산할 수 있습니다. BDP를 계산하려면 사용 가능한 대역폭에 연결 대기 시간 값을 곱하십시오.

연결 대기 시간 값을 가져오려면 ping –s host 명령을 사용하십시오.

적합한 수신 버퍼 크기는 BDP 값에 가깝습니다. 하지만 대역폭 사용도 다양한 옵션에 따라 달라질 수 있습니다. 공유 기반구조 또는 응용 프로그램 수 및 대역폭 사용을 경합하는 사용자로 인해 예상값이 변경될 수 있습니다.

다음과 같이 버퍼 크기 값을 변경합니다.

# ipadm set-prop -p recv_buf=value tcp

다음 예는 버퍼 크기를 164KB로 늘리는 방법을 보여줍니다.

# ipadm show-prop -p recv_buf tcp
PROTO PROPERTY   PERM CURRENT   PERSISTENT   DEFAULT  POSSIBLE
tcp   recv_buf   rw   128000       --        128000   2048-1048576

# ipadm set-prop -p recv_buf=164000 tcp

# ipadm show-prop -p recv_buf tcp
PROTO PROPERTY   PERM CURRENT   PERSISTENT   DEFAULT  POSSIBLE
tcp   recv_buf   rw   164000    164000       128000   2048-1048576

선호 크기는 상황에 따라 달라지므로 버퍼 크기에 대해 선호되는 설정 값은 없습니다. 특정 조건의 각 네트워크에서 서로 다른 BDP 값이 설정되는 다음 예를 고려하십시오.

버퍼 크기의 기본값이 128KB인 일반적인 1Gbps LAN(Local Area Network):
BDP = 128 MBps * 0.001 s = 128 kB
대기 시간이 100밀리초인 이론적 1Gbps WAN(Wide Area Network):
BDP = 128 MBps * 0.1 s = 12.8 MB
유럽-미국 링크(uperf로 측정된 대역폭)
BDP = 2.6 MBps * 0.175 = 470 kB

    BDP를 계산할 수 없으면 다음 지침을 따르십시오.

  • LAN 기반 대량 전송의 경우 버퍼 크기의 기본값(128KB)으로도 충분합니다.

  • 대부분의 WAN 배포에서 수신 버퍼 크기는 2MB 범위 내에 있어야 합니다.


Caution

주의  -  TCP 수신 버퍼 크기를 늘리면 여러 네트워크 응용 프로그램의 메모리 사용 공간이 늘어납니다.