인터넷 전송속도를 늘려보자~ [인터넷 전송속도 증가 -MTU 설정 변경]
인터넷 전송속도를 늘려보자~
[인터넷 전송속도 증가 -MTU 설정 변경]
- 오래된 글 입니다. 적용이 안되는 부분도 있으니 ... 필요한 정보만 찾아서 보시길 권합니다.
Name |
| |||
Homepage | ![]() http://fresh.name | |||
Subject | ![]() 인터넷 전송속도를 늘려보자~ | |||
더 빠른 인터넷을 위한 레지스트리를 만들자
윈도우즈 레지스트리는 윈도우즈를 운영하기 위한 정보를 담고 있다. 윈도우즈에 깐 소프트웨어나 하드웨어에 대한 정보는 물론 윈도우즈 옵션도 레지스트리에서 손 볼 수 있다. 초고속 인터넷의 속도를 200% 올릴 수 있는 네트워크 옵션도 레지스트리에서 정한다. ADSL과 케이블 모뎀을 위한 특별한 레지스트리를 만들자.
네트워크 옵션을 왜 바꿔야 하나요?
인터넷은 데이터를 주고받기 위해 TCP/IP 프로토콜을 쓴다. TCP/IP 프로토콜은 데이터 한 개를 작은 데이터 여러 개 묶음으로 잘라서 이 묶음을 내가 통신할 상대와 주고받는다. 이 작은 데이터 꾸러미를 패킷이라고 하는데 패킷의 최대 크기를 MTU(maximum transmission unit : 최대 전송 단위)라고 한다. 최대 MTU 크기는 1,500바이트다.
MTU 값이 클수록 실어 나를 수 있는 데이터 크기가 커진다. 1톤의 짐을 나를 수 있는 트럭과 1.5톤을 나를 수 있는 트럭이 30톤의 물건을 다른 곳으로 옮길 때 1.5톤 트럭이 더 빨리 나를 수 있는 것과 같다.
윈도우즈 95와 98이 나왔을 때 전화 모뎀으로 인터넷에 접속했기 때문에 MTU 값을 전화 모뎀에 맞는 576바이트에 맞췄다. 하지만 초고속 인터넷 서비스는 모뎀보다 자료를 더 많이, 더 빨리 주고받을 수 있어 전화 모뎀에 맞춘 MTU 값은 초고속 인터넷에서 쓰기에 너무 작다. 초고속 인터넷 서비스에 맞는 MTU 값을 찾아 윈도우즈 네트워크 옵션을 업그레이드해주면 인터넷이 더 빨라진다.
MTU 값은 커야 할까? 작아야 할까?
패킷 값의 크기는 큰 것이 좋을까? 작은 것이 좋을까? 초고속 인터넷 최적화에 대해 묻는 분들이 내놓는 질문이다. MTU 값의 크기에 따른 장단점을 알아보자.
MTU 값을 크게 잡으면?
MTU 값을 늘려 패킷을 크게 잡으면 인터넷 속도가 더 빨라질까? 그렇지 않다. 패킷은 인터넷으로 상대방에게 가면서 여러 개의 길잡이, 즉 라우터를 만난다. 라우터는 패킷과 패킷 안에 있는 송수신 정보를 보고 다른 네트워크 경로로 패킷을 보낸다. 패킷의 크기가 앞으로 지나갈 네트워크 경로가 감당할 수 없을 만큼 크면 통과할 수 있는 작은 크기로 나눠서 보낸다. 패킷이 너무 커 라우터를 지날 때마다 작은 조각으로 나뉘면 나뉘는 시간 때문에 패킷이 상대방에게 도달하는 시간이 더 걸린다.
MTU 값을 줄이면?
패킷 크기를 무조건 줄이는 것도 좋지 않다. 패킷에는 송수신에 필요한 정보를 담은 부분이 있는데 실제로 보내는 순수한 데이터와는 관계없다. 따라서 데이터를 잘게 쪼갤수록 패킷이 많이 생기고, 각각의 패킷이 목적지에 닿으려면 송수신 정보가 늘어난다. 송수신 정보를 보내는 데 필요한 시간과 공간이 늘어나면 실제로 보내는 데이터의 양이 준다.
핑 테스트로 내게 꼭 맞는 MTU 값 찾기
MTU 값을 찾으려면 핑을 쓴다. 핑은 간단하면서도 유용한 네트워크 진단 유틸리티다. 핑을 쓰면 상대방 PC가 죽었는지 살았는지, 내가 보낸 응답에 대해 상대방 PC가 얼만큼 시간이 지나서 그 대답을 해주는지 알 수 있다.
핑을 잘 쓰면 MTU 값도 금방 찾는다. 내가 보낼 수 있는 가장 큰 패킷 크기를 정하고, 그 패킷이 쪼개져 보내지면 안된다는 옵션을 건다. 이렇게 패킷 옵션을 정하고 목적지로 보내면, 패킷을 받은 라우터는 내가 보낸 패킷이 너무 크다고 여겨 목적지로 패킷을 보내기 위해 작은 크기로 나누려고 한다. 하지만 보낸 쪽에서 패킷을 나누지 말라는 옵션을 붙어 보냈기 때문에, 라우터는 패킷을 나눠서 보내는 대신 패킷을 전달할 수 없다는 메시지를 보낸다.
패킷의 크기를 바꿔가며 핑 테스트를 하다 보면, 라우터가 쪼개지 않아도 목적지로 보낼 수 있는 패킷 크기를 구할 수 있다. 패킷을 쪼개서 보낼 필요가 없기 때문에 라우터에서 패킷을 쪼개느라 걸리는 시간을 아끼고, 최대한 많은 데이터를 패킷에 담을 수 있어 더 빨리 데이터를 목적지에 보낸다. 바로 이 값을 MTU 값으로 만드는 것이다. 핑을 이용해서 MTU 값을 구하자.
적당한 MTU 값을 가지면 라우터에서 패킷을 쪼개 보낼 필요가 없어 시간이 절약되고, 데이터를 많이 보낼 수 있는 넉넉한 패킷 크기를 가지기 때문에 인터넷 속도도 빠르다.
1. 시작→실행을 누르고 빈 칸에 cmd를 적고 확인을 누른다.
2. 명령 프롬프트 창이 열린다. ping -f -l 1400 [내가 쓰는 초고속 인터넷 업체 서버]를 적고 엔터를 누른다.
3. 결과에 reply from ....’이라는 답이 나오면 1,400에서 1씩 올리면서, packet needs to be fragmented but df set이 나오면 1,400에서 1씩 내리면서 핑 테스트를 계속한다.
4. packet needs to be fragmented but df set이라는 메시지가 나오지 않는 가장 큰 수를 얻으면 테스트를 멈춘다. 값을 메모지에 적는다. 필자는 1,464가 가장 큰 숫자였다.
5. 테스트가 끝나면 결과 값에 28을 더한다. 그 결과 값이 내 초고속 인터넷에 딱 맞는 MTU 값이다. 1,464에 28을 더한 1,492가 MTU 값이다.
왜 핑 테스트 결과에 28을 더할까?
핑 테스트에서 얻은 결과는 송수신에 필요한 정보를 담은 20바이트의 IP 헤더와 데이터 송수신에 생기는 문제를 해결하기 위해 쓰는 인터넷 제어 메시지 프로토콜(ICMP:internet control message protocol)를 위한 8바이트의 공간을 계산하지 않고 빼두었다.
이 28 바이트의 공간은 패킷이 제대로 목적지에 가기 위한 정보를 담은 것으로 패킷을 보낼때 반드시 필요하다. 따라서 핑 테스트에서 구한 값에 테스트에서 빠진 IP 헤더와 ICMP를 위한 28바이트의 공간을 더한 값을 MTU 값으로 계산한다.
네트워크 옵션 자료 계산하기
MTU 값을 구했으면 이제 이 MTU 값을 가지고 네트워크 옵션에 필요한 자료를 계산한다. 필요한 값은 MSS(maximum segment size)과 RWIN(TCP receive window) 값이다.
MSS 값은 데이터 송수신에 이용한 정보를 뺀 데이터의 양을 말한다. MTU 값에서 40바이트를 뺀 값을 MSS 값으로 쓴다. 즉, MTU 값이 1,492라면 MSS 값은 40을 뺀 1,452다.
RWIN은 자료를 받는 쪽의 PC가 만들어 놓은 버퍼 공간이다. 자료를 보내는 쪽은 버퍼의 크기만큼 미리 자료를 보낼 수 있다. 받은 데이터에 문제가 없다는 것을 자료를 보내는 쪽에 알려주는데, 이때 몇 개의 실제 데이터(MSS)를 받은 뒤에 제대로 받았다는 것을 알려줄지 결정하는 것이 RWIN 값이다. RWIN 값은 항상 MSS 값의 배수로 계산해서 RWIN 값과 보낸 실제 데이터 양이 딱 맞아 떨어지게 한다. 초고속 인터넷을 위한 RWIN 값은 18만에서 40만 사이에 있는 값을 쓰는 것이 좋다.
방금 구한 RWIN 값을 10진수에서 16진수로 바꾸자. 윈도우즈에 있는 계산기 프로그램을 쓰면 10진수를 16진수로 쉽게 바꾼다.
1. 시작→프로그램→보조 프로그램→계산기를 고르고, 메뉴에서 보기를 눌러 공학용을 고른다.
2. 왼쪽에서 Dec을 고르고, 방금 구한 10진수의 RWIN 값을 적자. 필자는 MSS 값의 256배를 더한 371,712를 적었다.
3. Hex를 고른다. 십진수 371,712가 16진수인 5AC00로 변했다. 16진수로 변한 RWIN 값을 적어둔다.
초고속 인터넷용 레지스트리 파일 만들고 깔기
윈도우즈 2000과 XP를 위한 초고속 인터넷용 레지스트리 파일을 만들자. 윈도우즈 레지스트리 에디터로 레지스트리에 직접 네트워크 옵션을 넣을 수 있다. 레지스트리 파일로 만들면 윈도우즈를 새로 깔 때 편하다. 만들어 놓은 레지스트리 파일을 두 번 누르면 바로 윈도우즈 레지스트리에 초고속 인터넷에 딱 맞춘 네트워크 옵션을 넣어줘 매번 레지스트리 에디터를 열고 일일히 값을 넣어주지 않아도 된다. 초고속 인터넷을 위한 나만의 레지스트리 파일을 만들자.
1. 바탕 화면에 커서를 대고 마우스 오른쪽 버튼을 눌러 메뉴에서 새로 만들기→텍스트 문서를 고른다.
2. 새로운 파일 이름을 정한다. 필자는 myreg.reg라고 적었다. 어떤 이름을 써도 되지만 파일 확장자는 반드시 reg여야 한다.
3. 만든 파일에 커서를 대고 마우스 오른쪽 버튼을 눌러 편집을 누른다.
4. 메모장이 뜨면 다음을 입력한다. TcpWindowsSize와 GlobalMaxTcpWindowSize에는 앞에서 구한 16진수로 된 RWIN 값을 적는다. 나머지 값은 대소문자의 구분은 반드시 지킨다.
Windows Registry Editor Version 5.00 <엔터>
<엔터>
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] <엔터>
"SackOpts"=dword:00000001 <엔터>
"TcpWindowSize"=dword:0005ac00 <엔터>
"Tcp1323Opts"=dword:00000001 <엔터>
"DefaultTTL"=dword: 00000080<엔터>
"EnablePMTUBHDetect"=dword:00000000 <엔터>
"EnablePMTUDiscovery"=dword:00000001 <엔터>
"GlobalMaxTcpWindowSize"=dword:0005ac00 <엔터>
5. 파일→저장을 누른다. 창 오른쪽에 X를 눌러 닫는다.
6. 방금 만든 파일을 마우스 왼쪽 버튼으로 두 번 누르면 레지스트리에 등록하겠냐고 묻는 창이 뜬다. 예를 누른다.
7. 레지스트리에 등록되었다는 메시지가 뜬다. 확인을 누른다.
초고속 인터넷 패치가 효과가 있는지 알아보자
패치하기 전에 인터넷 속도를 검사하고, 패치한 뒤 다시 한번 인터넷 속도를 검사한다. 벤치비에서 초고속 인터넷을 패치하기 전과 패치한 뒤 차이를 알아본다.
1. 초고속 인터넷 패치를 하기 전 벤치비에서 속도 테스트 한다. 다운로드는 6.004Mbps, 업로드는 641.9Kbps가 나왔다.
2. 초고속 인터넷 패치를 하고 다시 벤치비에서 속도 테스트를 했다. 다운로드는 6.872Mbps로 패치하기 전보다 올라갔고, 업로드는 556.8kbps가 나와 패치하기 전보다 떨어졌다.
공유 프로그램을 써도 쌩쌩 날게 만들기
공유 프로그램이나 FTP 서버로 이용자끼리 자료를 교환하는 것이 인기다. 인터넷에서 쉽게 구하기 힘든 자료도 공유 프로그램이나 FTP 서버에서 찾곤 한다. FTP 서버를 운영하거나 공유 프로그램을 쓰면 e-메일을 보내거나 다른 곳에 파일을 보낼 때 인터넷 속도가 느려진다. 공유 프로그램이나 FTP 서버를 돌리면서 초고속 인터넷을 빠르게 만들자.
서브유에서 이용자마다 차이를 주자
서브유는 윈도우즈에서 도는 FTP 서버 프로그램이다. FTP 서버에 필요한 모든 재주를 갖춰 FTP 서버를 만드는 사람들이 즐겨 쓴다. 서브유는 자료를 주고받을 때 속도를 조절하는 재주가 있다. FTP 서버를 이용하는 사람마다 속도를 정할 수 있고 서버가 쓰는 인터넷 속도도 바꾼다.
서브유 전체가 쓰는 네트워크 속도를 제한해서 서버를 돌려도 내 인터넷 속도는 영향을 주지 않도록 만들자. 익명 접속으로 FTP 서버에 들어온 이용자는 느리게, 계정 접속으로 FTP 서버에 들어온 이용자는 자료를 빨리 가져가도록 옵션을 바꾸자.
1. 트레이에 있는 서브유 아이콘을 마우스 왼쪽 버튼으로 두 번 누르면 서브유 창이 뜬다.
2. 왼쪽 메뉴에서 serv-u servers→local server→settings를 차례로 누르고, 오른쪽 창에서 general 탭을 고른다.
3. max speed 옆 칸이 비었다. 값을 지정하지 않으면 서브유는 내 PC가 쓸 수 있는 속도를 최대한 쓴다. 속도를 제한하려면 적당한 값을 넣는다. 35KB/s 정도만 쓸 수 있게 해주었다.
내게 맞는 업로드 제한 속도 구하기
공유 프로그램이나 서버에 업로드 속도를 최대값으로 정하면 웹 서핑이나 e-메일을 보낼 때 속도가 느려 끊기거나 시간이 오래 걸린다. 초고속 인터넷 서비스는 다운로드 속도는 넉넉하지만 업로드 속도는 적기 때문에 업로드 속도를 제한하는 것이 좋다. 먼저 인터넷 속도 벤치마크 사이트에서 내 인터넷 속도를 테스트한다. 업로드 속도 결과에 따라 공유 프로그램이나 서버 프로그램에 정할 업로드 속도를 구한다.
업로드 속도가 600Kbps 이상일 때 : 40% 정도를 공유 프로그램에 정한다.
예) 업로드 속도 결과가 631Kbps이면, 631Kbps*0.4=252.4Kbps=31.55KB/s
업로드 속도가 600kbps 이하일 때 : 10~30% 정도를 공유 프로그램에 정한다.
예) 업로드 속도 결과가 460Kbps이면, 460Kbps*0.3= 138Kbps=17.25KB/s
------------------------------------------------------------------------
본인이 사용을 하기 위하여, 원문의 내용을 스크랩 및 내용을 추가 하였습니다.
원문 작성자의 삭제 요구가 있을 경우, 즉시 삭제 조치를 하겠습니다.
------------------------------------------------------------------------
TiStory blog : https://sosmt.tistory.com
Afreeca TV : http://bj.afreecatv.com/sosmt1004/vods
문제의 소지가 될 수 있는 부분에 대해
말씀을 주시면 바로 시정하도록 하겠습니다.