ടണൽ വലിയ കൈമാറ്റങ്ങൾ ഉപേക്ഷിക്കുന്നു, പക്ഷേ പിംഗ് കടത്തിവിടുന്നു, അതിനാൽ ഉപദേശം വേഗം വരുന്നു: MTU കുറയ്ക്കുക. തിരുത്തൽ ചിലപ്പോൾ പ്രവർത്തിക്കുന്നു, പിന്നീട് അത് ഓരോ നെറ്റ്വർക്കിലെയും ഓരോ പ്രൊഫൈലിലും പ്രയോഗിക്കുന്നു. അവിടെയാണ് ലക്ഷ്യബോധമുള്ള അറ്റകുറ്റപ്പണി സ്ഥിരമായ പ്രകടനനികുതിയാകുന്നത്. ചെയ്യേണ്ട താരതമ്യം പാതയുടെ യഥാർത്ഥ പരിധിക്കും അതിന് താഴെ ഓരോ പാക്കറ്റും ചെറുതാക്കുന്നതിന്റെ ചെലവിനും ഇടയിലാണ്.

MTU കുറയ്ക്കുമ്പോൾ യഥാർത്ഥത്തിൽ എന്താണ് ചുരുങ്ങുന്നത്

ഓരോ പാക്കറ്റും നിങ്ങളുടെ ഡാറ്റ വഹിക്കുന്നതിന് മുമ്പ് തലക്കെട്ടുകൾ വഹിക്കുന്നു. 1500 ബൈറ്റ് ഈതർനെറ്റ് പാതയിൽ IPv4 ഉം TCP ഉം 40 ബൈറ്റ് എടുത്ത് പേലോഡിന് 1460 വിടുന്നു; എൻകാപ്സുലേഷൻ മുകളിൽ പുറത്തെ IP, UDP, ടണൽ തലക്കെട്ടുകൾ ചേർക്കുന്നു, അതിനാൽ അകത്തെ പേലോഡ് ബജറ്റ് വീണ്ടും കുറയുന്നു. ഇന്റർഫേസിന്റെ MTU കുറയ്ക്കുന്നത് ആ ബജറ്റ് മനഃപൂർവം ചെറുതാക്കുന്നു.

ചെലവ് ബൈറ്റുകളുടെ എണ്ണത്തിനല്ല, പാക്കറ്റുകളുടെ എണ്ണത്തിന് ആനുപാതികമാണ്. അതേ ഫയൽ കൂടുതൽ പാക്കറ്റുകളായി വിഭജിച്ചാൽ പാതയിലെ ഓരോ ഉപകരണത്തിലും കൂടുതൽ ഇടവേളകൾ, കൂടുതൽ റൂട്ടിംഗ് തീരുമാനങ്ങൾ, ഓരോ പാക്കറ്റിനും കൂടുതൽ പ്രോസസ്സിംഗ് ആവശ്യമാണ്. ഇതിനകം സെക്കൻഡിൽ പാക്കറ്റ് പരിധിക്ക് അടുത്തുള്ള റൂട്ടറിൽ അത് റൗണ്ടിംഗ് പിശകല്ല, യഥാർത്ഥ മന്ദഗതിയാണ്. കൈമാറ്റം തന്നെ വിജയിച്ചാലും ചെലവ് കാണാം.

അതുകൊണ്ടാണ് ചെറിയ MTU ഒരു നിയന്ത്രണത്തെ വളഞ്ഞുപോകുന്ന മാർഗമാണ്, പൊതുവായ ഒപ്റ്റിമൈസേഷനല്ല. വലിയ ഫ്രെയിം വഹിക്കാൻ കഴിയാത്ത പാതയ്ക്കെതിരെ അത് വിശ്വാസ്യത വാങ്ങുന്നു, കുറയ്ക്കൽ ആവശ്യമില്ലാത്ത ഓരോ പാക്കറ്റിനും ഓവർഹെഡ് ഈടാക്കുന്നു.

ചെറിയ MTU എപ്പോഴാണ് ശരിയായ തിരുത്തൽ

ക്ലാസിക് ലക്ഷണം നിർദ്ദിഷ്ടമാണ്: TCP ഹാൻഡ്ഷേക്ക് പൂർത്തിയാകുന്നു, ചെറിയ പ്രതികരണങ്ങൾ എത്തുന്നു, വലിയ ഡൗൺലോഡ് നിലയ്ക്കുന്നു അല്ലെങ്കിൽ റീസെറ്റ് ചെയ്യുന്നു. 1472 ബൈറ്റിൽ വിഭജിക്കരുത് ബിറ്റുള്ള പിംഗ് പരാജയപ്പെടുന്നു, 1400 ബൈറ്റ് പിംഗ് വിജയിക്കുന്നു, ഇത് പൂർണ്ണ വലിപ്പമുള്ള പാക്കറ്റ് വഹിക്കാൻ കഴിയാത്തതും അയച്ചയാൾക്ക് കുറയ്ക്കാൻ പറയുന്ന ICMP സന്ദേശം എത്തിക്കാത്തതുമായ പാതയെ സൂചിപ്പിക്കുന്നു.

പാതയുടെ MTU കണ്ടെത്തൽ ആ ICMP വിഭജന-ആവശ്യ സന്ദേശങ്ങളെ ആശ്രയിച്ചിരിക്കുന്നു. ഫയർവാൾ അവ ഉപേക്ഷിക്കുമ്പോൾ, അയച്ചയാൾ വലിയ പാക്കറ്റ് വീണ്ടും വീണ്ടും ശ്രമിക്കുന്നു, ബന്ധം തൂങ്ങിക്കിടക്കുന്നതുപോലെ തോന്നുന്നു. ടണലിന്റെ ഭാഗത്ത് MTU കുറയ്ക്കുന്നത് ആവർത്തനം ഒഴിവാക്കുന്നു, അത് ആ നെറ്റ്വർക്കിന് നിയമാനുസൃതമായ തിരുത്തലാണ്.

ആക്സസ് സാങ്കേതികവിദ്യകളും സ്വന്തം പരിധികൾ വയ്ക്കുന്നു: PPPoE സാധാരണയായി 1492ൽ പരിമിതപ്പെടുന്നു, ചില മൊബൈൽ, DSL പാതകൾ താഴെയാണ്, കൂടിയിട്ട ടണലുകൾ ഓവർഹെഡ് രണ്ടുതവണ കുറയ്ക്കുന്നു. ഗൈഡിൽ നിന്ന് സംഖ്യ പകർത്തുന്നതിന് പകരം യഥാർത്ഥ പാത അളക്കുക, IPv6 അത് വഹിക്കുന്ന ഓരോ ലിങ്കിലും കുറഞ്ഞത് 1280 ബൈറ്റ് MTU ആവശ്യപ്പെടുന്നു എന്ന് ഓർക്കുക, RFC 8200 നിർദ്ദേശിക്കുന്നതുപോലെ.

ഒന്ന് മാറ്റുന്നതിന് മുമ്പ് മൂന്ന് നിയന്ത്രണങ്ങൾ താരതമ്യം ചെയ്യുക

MTU, MSS, വിഭജനം എന്നിവ വ്യത്യസ്ത പാളികളിലെ വ്യത്യസ്ത നിയന്ത്രണങ്ങളാണ്, തെറ്റായത് മാറ്റിയാൽ ലക്ഷണം അതിന്റെ സ്ഥാനത്ത് തുടരും.

ControlLayerWhat it changesWhere it misleads
Interface MTUIP linkLargest frame the interface will sendPenalizes every protocol, not just the one that failed
TCP MSS clampTCPSegment size advertised in the handshakeLeaves UDP and QUIC untouched
DF and fragmentationIPWhether a router may split a packetCan break path MTU discovery and security assumptions
Tunnel overheadEncapsulationInner MTU after outer headersMismatch shows up only for large inner packets

MSS പരിമിതപ്പെടുത്തുന്നത് പലപ്പോഴും ഏറ്റവും കുറഞ്ഞ ഇടപെടലുള്ള തിരുത്തലാണ്, കാരണം അത് TCPയെ മാത്രം ബാധിക്കുകയും ഇന്റർഫേസ് മറ്റ് ട്രാഫിക്കിന് സ്വതന്ത്രമാക്കുകയും ചെയ്യുന്നു. താഴ്ന്ന ഇന്റർഫേസ് MTU വിശാലവും ചിന്തിക്കാൻ എളുപ്പവുമാണ്, അതുകൊണ്ടാണ് ഉപഭോക്തൃ റൂട്ടറുകളിൽ സാധാരണമായത്, പക്ഷേ ഒരു പ്രോട്ടോക്കോളിന്റെ പ്രശ്നം എല്ലാ പ്രോട്ടോക്കോളുകളിൽ നിന്നും ഈടാക്കുന്നു.

വിഭജിക്കരുത് സ്വഭാവം അപ്രാപ്തമാക്കുന്നത് വിഭജനം അനുവദിച്ച് ലക്ഷണം മറയ്ക്കുന്നു, കൂടാതെ ശരിയായ വലിപ്പം കണ്ടെത്തിയേനെയുള്ള ഫീഡ്ബാക്ക് തകർത്തുകൊണ്ട് സാധാരണയായി കാലതാമസം വഷളാക്കുന്നു. സ്ഥിരമായ പരിഹാരമായി അത് ഒഴിവാക്കുക.

ഒരു സംഖ്യയ്ക്ക് പകരം വിനിമയം അളക്കുക

വിഭജിക്കരുത് പ്രോബ് ഉപയോഗിച്ച് പാതയുടെ പരിധി കണ്ടെത്തുക, ഉയരത്തിൽ തുടങ്ങി ഉത്തരം വരുന്നതുവരെ താഴേക്ക് പോകുക:

ping -M do -s 1472 203.0.113.10
ping -M do -s 1400 203.0.113.10
tracepath 203.0.113.10

തുടർന്ന് രണ്ട് ക്രമീകരണങ്ങളിലും യഥാർത്ഥ ജോലി താരതമ്യം ചെയ്യുക: അതേ ഫയൽ കൈമാറ്റം, അതേ എൻഡ്പോയിന്റ്, അതേ നെറ്റ്വർക്ക്. പൂർത്തീകരണ സമയവും വീണ്ടും അയയ്ക്കലുകളും രേഖപ്പെടുത്തുക, ഉദാഹരണത്തിന് nstat -az TcpRetransSegs ഉപയോഗിച്ച്, ടണൽ ചെറിയ റൂട്ടറിൽ അവസാനിക്കുന്നെങ്കിൽ ഉപകരണത്തിന്റെ CPU നിരീക്ഷിക്കുക. ചെറിയ സിന്തറ്റിക് ത്രൂപുട്ട് പരിശോധന കുറച്ച് മെഗാബൈറ്റുകൾക്ക് ശേഷം മാത്രം പ്രത്യക്ഷപ്പെടുന്ന നിലയ്ക്കൽ വിട്ടുപോകാം.

കുറയ്ക്കലിന് ശേഷം പാക്കറ്റ് കൗണ്ടറുകൾ ഉയരും, കാരണം അതേ കൈമാറ്റം ഇപ്പോൾ കൂടുതൽ പാക്കറ്റുകൾ ഉപയോഗിക്കുന്നു. അത് പ്രതീക്ഷിക്കാവുന്നതാണ്, ഉയർന്ന ത്രൂപുട്ടിന്റെ തെളിവല്ല. പൂർത്തിയായ ആപ്ലിക്കേഷൻ ഡാറ്റ, വീണ്ടും അയയ്ക്കലുകളുടെ എണ്ണം, പ്രതികരണശേഷി എന്നിവ താരതമ്യം ചെയ്യുക, പാക്കറ്റ് നിരക്ക് മാത്രമല്ല.

മാറ്റം ഘട്ടങ്ങളായി കൊണ്ടുവരിക, അത് പരിമിതമായി നിർത്തുക

യഥാർത്ഥ മൂല്യം രേഖപ്പെടുത്തുക, ഒരു നിയന്ത്രണം മാറ്റുക, സ്ഥിരമാക്കുന്നതിന് മുമ്പ് അളവ് ആവർത്തിക്കുക. തെളിവുകൾ നേട്ടം കാണിക്കുന്നില്ലെങ്കിൽ, അത് സജ്ജീകരിക്കാൻ ഉപയോഗിച്ച അതേ ഇന്റർഫേസ് കമാൻഡ് ഉപയോഗിച്ച് മുമ്പത്തെ മൂല്യം പുനഃസ്ഥാപിക്കുക:

ip link set dev wg0 mtu 1420
ip link set dev wg0 mtu 1500

ഫലം അത് ആവശ്യമായിരുന്ന നെറ്റ്വർക്കിൽ മാത്രം പരിമിതപ്പെടുത്തുക. ഹോട്ടൽ Wi-Fi, മൊബൈൽ ഹോട്ട്സ്പോട്ട്, ഓഫീസ് LAN എന്നിവയിൽ പ്രവർത്തിക്കേണ്ട പ്രൊഫൈൽ, ക്ലയന്റിന് പാത കണ്ടെത്താൻ കഴിയുന്നില്ലെങ്കിൽ, അവയിലേതെങ്കിലും ആവശ്യപ്പെടുന്ന ഏറ്റവും താഴ്ന്ന മൂല്യം പാരമ്പര്യമായി സ്വീകരിക്കരുത്.

ശരിയായ മൂല്യം പാതയിൽ അതിജീവിക്കുന്ന ഏറ്റവും വലിയ MTU ആണ്, ലക്ഷണം അപ്രത്യക്ഷമാക്കുന്ന ഏറ്റവും ചെറിയതല്ല. പാത, പ്രോബിന്റെ ഫലം, പിൻവലിക്കൽ എന്നിവ രേഖപ്പെടുത്തുക, ആക്സസ് നെറ്റ്വർക്ക് മാറുമ്പോൾ ക്രമീകരണം അവലോകനം ചെയ്യുക.

അനുബന്ധ ലേഖനങ്ങൾ