My Knowledge

리눅스 TCP 체크섬 오프로드 본문

Network

리눅스 TCP 체크섬 오프로드

행복한하루 2007. 9. 17. 23:41
이번 글도 TCP 체크섬 오프로드 (TCP Checksum Offload)에 관한 글입니다.

지난 글에서는  TCP 체크섬 오프로드 (TCP Checksum Offload) (클릭하시면 해당 글을 보실 수 있습니다.) 에 대하여 간단히 알아봤고, 윈도우즈에서 해당 기능을 어떻게 enable / disable 시키는지에 대해서 알아 봤습니다.

이번 글에서는 해당 기능을 Linux (리눅스)에서 어떻게 enable / disable 시키는지에 대하여 알아 보도록 하겠습니다.

아무래도 Linux (리눅스)에서 개발을 더 많이 하기 때문에 윈도우즈에서 언급했던 방법 보다 더 유용할 것으로 생각됩니다.

1. TCP 체크섬 오프로드 지원 여부를 확인한다.

TCP 체크섬 오프로드 지원 여부를 확인하기 위해서는 ethtool 이라는 명령을 사용합니다. 이 명령은 여러가지 옵션들을 가지고 있는데, 이중에 -k 라는 옵션을 이용하면 관련 정보를 보여 줍니다.

rx-checksumming: on , tx-checksumming: on 이라고 되어 있으므로, 현재 상태는 TCP 체크섬 계산을 Etherenet 카드에서 하고 있다는 의미 입니다.


$ ethtool -k eth0

Offload parameters for eth0:
rx-checksumming: on
tx-checksumming: on
scatter-gather: on
tcp segmentation offload: on
$


2. TCP 체크섬 오프로드 Disable

disalbe 시키는 방법은 간단합니다. 아래와 같이 -K (대문자) 옵션을 주고 interface 이름을 쓰신 다음 tx /  rx on / off 를 선택해서 입력하시면 됩니다.

$ ethtool -K eth0 tx off
$

3. TCP 체크섬 오프로드 적용 확인

처음과 마찬가지로 ehtool -k eth0 라고 입력하면 tx-checksumming: off 되어 있음을 확인 할 수 있습니다.


$ ethtool -k eth0
Offload parameters for eth0:
rx-checksumming: on
tx-checksumming: off
scatter-gather: on
tcp segmentation offload: on
tcp segmentation offload: on
$


eth0 말고도 지원하는 인터페이스가 더 있는 경우에도 ethtool을 이용하여 TCP체크섬 오프로드 기능을 제어 할 수 있습니다.

'Network' 카테고리의 다른 글

Wireshark 실행 권한  (1) 2013.03.01
공유기 유해사이트 차단  (0) 2007.12.14
Wireshark TCP 체크섬 끄기  (0) 2007.10.02
무선랜 보안 설정 방법  (0) 2007.09.28
TCP 체크섬 오프로드  (3) 2007.09.14