Tối ưu thông số TCP/IP: MTU, RWIN, MSS

Công việc tinh chỉnh gồm có 4 vấn đề chính :

1) Cách đọc kết quả TCP Analyzer
2) Cách tinh chỉnh TCP Optimizer
3) Cách đọc kết quả Tracert
4) Cách đọc kết quả HijackThis

I.Cách đọc kết quả TCP Analyzer

Nói đến TCP Analyzer và TCP Optimizer là nói đến 3 thuật ngữ quan trọng nhất của chúng là MTU, MSS, TCP Window (RWIN)

Dưới đây là kết quả TCP Analyzer thông thường (test bằng cách vào TCP Analyzer mục Share your results bên dưới):

tcp-mtu-mss.jpg (529×154)



« SpeedGuide.net TCP Analyzer Results »
Tested on: 08.23.2009 04:47
IP address: 123.21.xxx.xx proxy:203.162.3.162)
Client OS: Windows XP

TCP options string: 020405ac0103030101010402
MSS: 1452
MTU: 1492
TCP Window: 127776 (multiple of MSS)
RWIN Scaling: 1 bits (2^1=2)
Unscaled RWIN : 63888
Recommended RWINs: 63888, 127776, 255552, 511104, 1022208
BDP limit (200ms): 5111kbps (639KBytes/s)
BDP limit (500ms): 2044kbps (256KBytes/s)
MTU Discovery: ON
TTL: 42
Timestamps: OFF
SACKs: ON
IP ToS: 00000000 (0)

Định nghĩa MTU, MSS và RWIN :

MTU là gì ? :
MTU (Maximum Tranmission Unit) là đơn vị truyền tải dữ liệu lớn nhất của modem, số lượng dữ liệu lớn nhất hay kích thước lớn nhất có thể của 'gói' dữ liệu (packet). Gói dữ liệu này còn chứa cả thông tin về tiêu đề, nội dung truyền tải (header and trailer).
Mức MTU tối ưu cho modem ADSL và ADSL 2+ là 1492, MTU cho truyền hình cáp như Medianet và SCTV (Cable connection) là 1500. MTU có thể chỉnh sửa trong Modem/Router.

MSS là gì ?:
MSS (Maximum Segment Size) là kích thước mảnh dữ liệu (data) lớn nhất. Được tính theo công thức : MTU-40 (do không chứa header và trailer)
Mức MSS tối ưu cho ADSL là 1452, MTU cho truyền hình cáp (Cable connection) là 1460.

TCP Window là gì ?:
TCP Window (TCP Receive Window hoặc RWIN) là bộ đệm (buffer) chứa số lượng dữ liệu máy tính chuẩn bị tiếp nhận. Là cấp số nhân chẵn của MSS. Nếu RWIN được xác lập quá lớn thì lượng dữ liệu thất thoát sẽ lớn trong trường hợp gói dữ liệu bị thất lạc hoặc hư hỏng, còn nếu ta chọn quá nhỏ tốc độ truyền dẫn sẽ rất chậm.

----------------------------------------------------------------------------------------

II. Cách tinh chỉnh TCP Optimizer


Cách tinh chỉnh dưới đây là Custom Settings (chỉnh bằng tay) trong TCP Optimizer :

Thẻ General Settings :
Custom settings - chọn
Modify All Network Adapters - chọn
network adapter selection - NIC của bạn được hiểu là card mạng
MTU ?
TTL - 64
Checksum Offloading : enabled 0
Windows Scaling - ?
TCP Receive Window - ?
MTU Discovery - Yes
Black Hole Detect - No
Selective Acks - Yes
Max Duplicate ACKs - 2
TCP 1323 Options:
Timestamps - bỏ chọn

Thẻ Advanced Settings :

--- Internet Explorer Optimization---
Max Connections per Server : 10
Max Connections per 1.0 Server : 10

--- Host Resolution Priority ---
LocalPriority : 5
Host Priority : 6
DNSPriority : 7
NetbtPriority : 8

--- LAN Tweaks ---
Lan Browsing speedup : optimized
LAN Request Buffer Size : 32768

--- Dynamic Port Allocation ---
MaxUserPor : 65535
TcpTimedWaitDelay : 30

--- Type/Quality of Service ---
QoS: NonBestEffortLimit : 0
ToS: DisableUserTOSSetting : 0
ToS: DefaultTOSValue : 0

--- DNS Error Caching ---
NegativeCacheTime : 0
NetFailureCacheTime : 0
NegativeSOACache Time : 0

--- Gaming Tweak - Disable Nagle's algorithm ---
TcpAckFrequency : Enabled 1
TCPNoDelay : Enabled 1
TcpDelackticks : default n/a

Cuối cùng nhấn "Apply Changes" và khởi động máy để có hiệu lực.
Sau khi khởi động, post TCP Analyzer mới

Không kéo thanh Connection Speed khi chỉnh Custom Settings !

1) Làm thế nào xác định MTU và thủ thuật liên quan đến MTU :

Cách xem MTU trên Win 7, VIsta, XP : bạn vào http://www.speedguide.net/analyzer.php xem kết quả MTU trong mục Share your results !

VD:

« SpeedGuide.net TCP Analyzer Results »
Tested on: 08.22.2009 23:40
IP address: 123.21.xx.xxproxy:203.162.3.162)
Client OS: Windows XP

TCP options string: 020405ac0103030101010402
MSS: 1452
MTU: 1492
TCP Window: 127776 (multiple of MSS)
RWIN Scaling: 1 bits (2^1=2)
Unscaled RWIN : 63888
Recommended RWINs: 63888, 127776, 255552, 511104, 1022208
BDP limit (200ms): 5111kbps (639KBytes/s)
BDP limit (500ms): 2044kbps (256KBytes/s)
MTU Discovery: ON
TTL: 42
Timestamps: OFF
SACKs: ON
IP ToS: 00000000 (0)

Như đã nói ở trên MTU tối ưu cho ADSL là 1492, truyền hình cáp là 1500. Nếu MTU không đạt mức này bạn xem qua 2 khả năng :

+ Modem có nằm trong mục này không :http://www.go.vn/diendan/showthread....chon-mua-modem

+ Nếu modem đã tương thích nhưng vẫn không lên 1492 hoặc 1500 bạn phải đăng nhập vào modem và chỉnh MTU & MRU (nếu có) lên 1492 hoặc 1500, MSS (nếu có) là 1452 hoặc 1460.

Để log on (đăng nhập) vào modem bạn click vào http://192.168.1.1 hoặc http://10.0.0.2

Username: admin
Password : admin hoặc 1234

Nếu không log on được, bạn tham khảo thêm sách hướng dẫn kèm theo modem hoặc tra tạihttp://www.go.vn/diendan/showthread....name-vao-modem
2) Làm thế nào xác định TCP Window (RWIN) :

RWIN PHỤ THUỘC VÀO :

+ Bandwidth (băng thông: tốc độ download của gói cước đăng ký)
+ Nước bạn đang ở
+ Nước bạn thường xuyên lướt web, download...

Công thức RWIN

RWIN = BANDWIDTH (DOWNLOAD) * MAX.LATENCY /8

Max.Latency : Độ trễ cao nhất đến nước bạn thường xuyên lướt web, download...

+ RWIN phải là số chẵn, chia hết cho MSS (nằm trong Recommend RWINs) !
+ Mạng Wireless có RWIN cao hơn bình thường do có Latency cao hơn

Dưới đây là các thiết lập TCP Window tối ưu cho đường truyền Việt Nam :

Nếu MTU 1492 (cho đường truyền ADSL)

1 Mbps => TCP Window 63888 (dựa vào Recommend RWINs trong TCP Analyzer)

1.5 Mbps - 3 Mbps => TCP Window 127776

5 Mbps - 7 Mbps => TCP Window 255552

8 Mbps - 14 Mbps => TCP Window 511104

15 Mbps trở lên => TCP Window 1022208

Nếu MTU 1500 (cho đường truyền cáp)

1 Mbps => TCP Window 64240

1.5 Mbps - 3 Mbps => TCP Window 128480

Lưu ý download torrent thì chỉnh TCP Window gấp đôi lên !

Nếu MTU không thể lên mức tối đa thì bạn cũng dựa vào Recommended RWINs mà tính. VD với MTU 1472

1 Mbps => TCP Window 63008 (dựa vào Recommend RWINs)

1.5 Mbps - 3 Mbps => TCP Window 126016

5 Mbps - 7 Mbps => TCP Window 252032

8 Mbps - 14 Mbps => TCP Window 504064

15 Mbps trở lên => TCP Window 1008128

3) Làm thế nào xác định Windows Scaling:

Khi TCP Window đạt hơn mức 65535 thì ta chọn Windows Scaling. Còn không thì bỏ chọn mục này.

4) Các hằng số không thay đổi :

Custom settings - chọn
Modify All Network Adapters - chọn
network adapter selection - NIC của bạn
TTL - 64
Checksum Offloading : enabled 0
MTU Discovery - Yes
Black Hole Detect - No
Selective Acks - Yes
Max Duplicate ACKs - 2
TCP 1323 Options:
Timestamps - bỏ chọn

Thẻ Advanced Settings :

--- Internet Explorer Optimization---
Max Connections per Server : 10
Max Connections per 1.0 Server : 10

--- Host Resolution Priority ---
LocalPriority : 5
Host Priority : 6
DNSPriority : 7
NetbtPriority : 8

--- LAN Tweaks ---
Lan Browsing speedup : optimized
LAN Request Buffer Size : 32768

--- Dynamic Port Allocation ---
MaxUserPor : 65535
TcpTimedWaitDelay : 30

--- Type/Quality of Service ---
QoS: NonBestEffortLimit : 0
ToS: DisableUserTOSSetting : 0
ToS: DefaultTOSValue : 0

--- DNS Error Caching ---
NegativeCacheTime : 0
NetFailureCacheTime : 0
NegativeSOACache Time : 0

--- Gaming Tweak - Disable Nagle's algorithm ---
TcpAckFrequency : Enabled 1
TCPNoDelay : Enabled 1
TcpDelackticks : default n/a

5) Các yếu tố ảnh hưởng MTU và TCP Window:

+ MTU vẫn kẹt ở mức 1448 mặc dù bạn đã chỉnh MTU 1492 trong modem :

Đây là do cFos Speed gây ra, gỡ cFos MTU sẽ trở về bình thường !

+ MTU vẫn bị hạn chế như 1482, 1472, 1452 (đặc biệt là các dòng modem D-link cũ) :

Bạn phải nâng cấp Firmware ADSL 2+ ! Chú ý việc nâng cấp firmware sẽ làm hỏng modem nếu gặp sự cố mất điện !

+ MTU chỉ đạt 500 mặc dù bạn đang dùng ADSL :

Chỉnh MTU 1500 và bỏ trống TCP Window ! Không thay đổi các hằng số ! Khởi động và test lại TCP Analyzer

+ TCP Window vẫn không thay đổi mặc dù đã chỉnh trong TCP Optimizer :

- Tải Cablenut rồi chạy nó, gõ vào ô DefaultReceiveWindow thông số TCP Window muốn đổi, các ô khác để nguyên, nhấn Save to registry, khởi động và xem TCP Window thay đổi không !
- TCP Window bị kẹt ớ mức 32768 : đây là do Kaspersky đã chặn port 8080 => vào Setting của Kaspersky > Trafic Monitoring > Port setting > Monitor selected port only ,bỏ chọn General HTTP port 8080 và xem TCP Window có thay đổi không !
- TCP Window vẫn bị kẹt mặc dù đã dùng Cablenut : là do Tuneup Utilities gây ra, TuneUp > Customize Windows > Adjust Internet settings > Thẻ Internet > nhấn nút Setting...Mục Receive Window (RWIN) sửa lại: 127776 > OK > Xong khởi động lại máy !

-----------------------------------------------------------------------------------------

III. Cách đọc kết quả tracert :

Tracert là gì ?

Khi gặp tình trạng rớt mạng, lag liên tục mà không rõ nguyên nhân do máy hay mạng, giải pháp là dùng lệnh tracert trong Windows. Đây cũng là 1 công cụ test độ trễ mạng.

Nếu việc chỉnh TCP Optimizer không mang lại kết quả, thì ta kiểm tra độ trễ mạng theo cách sau :

Vào Start > Run > gõ cmd rồi enter > gõ tracert yahoo.com rồi enter

VD:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.

C:\Users\Kidz Kz>tracert yahoo.com

Tracing route to yahoo.com [69.147.125.65]
over a maximum of 30 hops:

1 <1 ms <1 ms <1 ms 192.168.1.1
2 9 ms 9 ms 9 ms 123.19.176.1
3 11 ms 10 ms 9 ms vdc.vn [123.29.3.165]
4 * * * Request timed out.
5 * * * Request timed out.
6 * * * Request timed out.
7 48 ms 48 ms 48 ms vdc.vn [123.29.11.2]
8 41 ms 40 ms 41 ms 218.188.104.177
9 48 ms 48 ms 48 ms 218.189.5.42
10 212 ms 212 ms 212 ms d1-18-224-143-118-on-nets.com [118.143.224.18]
11 206 ms 205 ms 206 ms 218.189.5.150
12 245 ms 220 ms 221 ms 218.188.105.250
13 250 ms 276 ms 260 ms as-0.pat1.da3.yahoo.com [216.115.100.67]
14 276 ms 277 ms 294 ms as-0.pat1.dcp.yahoo.com [216.115.96.110]
15 278 ms 291 ms 282 ms ae-1-d160.msr1.re1.yahoo.com [216.115.108.25]
16 283 ms 291 ms 291 ms ae-1-d171.msr2.re1.yahoo.com [216.115.108.31]
17 286 ms 284 ms 283 ms te-8-1.bas-a1.re1.yahoo.com [66.196.112.205]
18 298 ms 299 ms 294 ms ir1.fp.vip.re1.yahoo.com [69.147.125.65]

Trace complete.

C:\Users\Kidz Kz>

Nguyên tắc đọc kết quả tracert :

Dòng 1 : là dòng kết nối giữa modem và máy tính, độ trễ tốt nhất là 1ms 1ms 1ms ! Nếu cao hơn hoặc xuất hiện dấu * hay Request timed out thì kết nối modem và máy có vấn đề !

Dòng 2: là kết nối giữa modem và mạng của ISP (nhà cung cấp mạng), độ trễ tốt nhất nên trong khoảng 10-40 ms ! Cao hơn khoảng này hoặc xuất hiện dấu * hay Request timed out thì kết nối modem và mạng ISP có vấn đề !

Dòng 3 trở đi tới trace complete : là kết nối trong mạng giữa các ISP với nhau , nếu xuất hiện dấu * hayRequest timed out thì kết nối trong mạng ISP có vấn đề !

Khắc phục độ trễ dòng 1 và 2 :

+ Tắt modem khoảng 10 phút sau đó cách ly điện càng xa càng tốt ! Nếu không có khoảng trống, nên đặt dưới sàn dưới bàn vi tính.

+ Lưu ý : không cuốn dây cáp mạng, vì khi cuốn chúng sẽ sinh điện từ làm ảnh hưởng đến signal của modem. Nếu dây dài quá thì nhờ người cắt bớt để khỏi cuốn.

Cuối cùng kiểm tra lại tracert có nằm trong khoảng cho phép không ! Nếu vẫn như cũ thì do spyware gây ra. Dùng Google để tìm phần mềm diệt spyware.

Các phần mềm đề nghị : Spybot Search & Destroy và Ad-aware , Superantispyware

+ Đặt modem sao cho các khí nóng dễ dàng thoát ra ngoài qua lỗ thông gió.
- Đặt nằm : kê 2 miếng bìa (hoặc sách) 2 bên mép modem chừa khoảng hở cho khí nóng thoát
- Đặt đứng : đây là cách dễ dàng nhất, dùng đế kèm theo modem ốp sát rồi đặt đứng là được.

+ 1 nguyên nhân khác gây Request timed out là Firewall (thường thì xuất hiện Request timed out từ đầu dòng 2 cho đến trace complete), cách khắc phục là tắt Firewall, bao gồm Firewall của Windows, Firewall của modem (nếu có) và Firewall của hãng thứ 3 như các bộ Internet Security, Zone Alarm, ThreatFire...

Lưu ý : dòng 3 trở đi ta không thể khắc phục được, nguyên nhân có thể là do số lượng truy cập quá đông, đứt cáp, nhiệt độ, khí hậu...

------------------------------------------------------------------------------------------

IV. Cách đọc kết quả HijackThis :

Đầu tiên bạn tải HijackThis ở http://files7.majorgeeks.com/files/4c4c937...ackthis_sfx.exe sau đó chạy HijackThis > nhấn vào Do a system scan and save a log file > chờ 1 chút nó sẽ hiện bảng Notepad, đây là bảng thống kê phần mềm đã cài trên máy của bạn.

Đây là kết quả HijackThis :

Logfile of HijackThis v1.99.1
Scan saved at 346 PM, on 8/23/2009
Platform: Windows XP SP2 (WinNT 5.01.2600)
MSIE: Internet Explorer v6.00 SP2 (6.00.2900.2180)

Running processes:
C:\WINDOWS\System32\smss.exe
C:\WINDOWS\system32\winlogon.exe
C:\WINDOWS\system32\services.exe
C:\WINDOWS\system32\lsass.exe
C:\WINDOWS\system32\svchost.exe
C:\WINDOWS\System32\svchost.exe
C:\Program Files\Java\jre6\bin\jqs.exe
C:\WINDOWS\Explorer.EXE
C:\Program Files\Total Commander AIO 3.0\Plugins\Tools\UniKey\UniKey.exe
R:\Mozilla Firefox 3.5.2\firefox.exe
C:\Program Files\Java\jre6\bin\javaw.exe
C:\Program Files\Total Commander AIO 3.0\TOTALCMD.EXE
C:\WINDOWS\System32\svchost.exe
C:\WINDOWS\system32\NOTEPAD.EXE
C:\WINDOWS\system32\notepad.exe
C:\Program Files\HijackThis\HijackThis.exe

R1 - HKCU\Software\Microsoft\Windows\CurrentVersion\Int ernet Settings,ProxyServer = 127.0.0.1:8080
O2 - BHO: IDM Helper - {0055C089-8582-441B-A0BF-17B458C2A3A8} - C:\Program Files\Internet Download Manager\IDMIECC.dll
O2 - BHO: Java™ Plug-In 2 SSV Helper - {DBC80044-A445-435b-BC74-9C25C1C588A9} - C:\Program Files\Java\jre6\bin\jp2ssv.dll
O2 - BHO: JQSIEStartDetectorImpl - {E7E6F031-17CE-4C07-BC86-EABFE594F69C} - C:\Program Files\Java\jre6\lib\deploy\jqs\ie\jqs_plugin.dll
O4 - HKCU\..\Run: [UniKey] C:\Program Files\Total Commander AIO 3.0\Plugins\Tools\UniKey\UniKey.exe
O8 - Extra context menu item: Download All Links with IDM - C:\Program Files\Internet Download Manager\IEGetAll.htm
O8 - Extra context menu item: Download FLV video content with IDM - C:\Program Files\Internet Download Manager\IEGetVL.htm
O8 - Extra context menu item: Download with IDM - C:\Program Files\Internet Download Manager\IEExt.htm
O8 - Extra context menu item: E&xport to Microsoft Excel - res://C:\PROGRA~1\Microsoft Office\OFFICE11\EXCEL.EXE/3000
O9 - Extra button: Research - {92780B25-18CC-41C8-B9BE-3C9C571A8263} - C:\PROGRA~1\Microsoft Office\OFFICE11\REFIEBAR.DLL
O9 - Extra button: Messenger - {FB5F1910-F110-11d2-BB9E-00C04F795683} - C:\Program Files\Messenger\msmsgs.exe
O9 - Extra 'Tools' menuitem: Windows Messenger - {FB5F1910-F110-11d2-BB9E-00C04F795683} - C:\Program Files\Messenger\msmsgs.exe
O10 - Unknown file in Winsock LSP: c:\windows\system32\idmmbc.dll
O10 - Unknown file in Winsock LSP: c:\windows\system32\idmmbc.dll
O10 - Unknown file in Winsock LSP: c:\windows\system32\idmmbc.dll
O10 - Unknown file in Winsock LSP: c:\windows\system32\idmmbc.dll
O10 - Unknown file in Winsock LSP: c:\windows\system32\idmmbc.dll
O10 - Unknown file in Winsock LSP: c:\windows\system32\idmmbc.dll
O17 - HKLM\System\CCS\Services\Tcpip\..\{3AB76418-BB13-4823-B648-DD4699D08704}: NameServer = 208.67.222.222,208.67.220.220
O17 - HKLM\System\CS1\Services\Tcpip\..\{3AB76418-BB13-4823-B648-DD4699D08704}: NameServer = 208.67.222.222,208.67.220.220
O17 - HKLM\System\CS2\Services\Tcpip\..\{3AB76418-BB13-4823-B648-DD4699D08704}: NameServer = 208.67.222.222,208.67.220.220
O20 - Winlogon Notify: igfxcui - C:\WINDOWS\SYSTEM32\igfxdev.dll
O23 - Service: ASP.NET State Service (aspnet_state) - Unknown owner - C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspn et_state.exe (file missing)
O23 - Service: Java Quick Starter (JavaQuickStarterService) - Unknown owner - C:\Program Files\Java\jre6\bin\jqs.exe" -service -config "C:\Program Files\Java\jre6\lib\deploy\jqs\jqs.conf (file missing)

Nguyên tắc đọc kết quả HijackThis :

+ Mục Running processes cho biết máy tính đang chạy những phần mềm nào và services của Windows.

HijackThis giúp bạn phát hiện các phần mềm gây cản trở cho việc chỉnh MTU và TCP Window (mục đích của chúng ta xem máy có cài các trình tăng tốc mạng khác không , vd như cFos Speed, Tweak Master, Tuneup Utilities...cũng như có các phần mềm nào lạ không)

Ngoài ra ta có thể dùng HijackThis để phát hiện virus hoặc spyware từ đó có phương pháp loại trừ chúng !

Để tìm hiểu thêm từng mục như R1, O20, O23... bạn nhấn vào Info trong HijackThis.