ട്രിക്കിൾ ഉള്ള ഒരു ലിനക്സ് സിസ്റ്റത്തിലെ ആപ്ലിക്കേഷനുകൾ ഉപയോഗിക്കുന്ന നെറ്റ്uവർക്ക് ബാൻഡ്uവിഡ്ത്ത് എങ്ങനെ പരിമിതപ്പെടുത്താം


നിങ്ങളുടെ എല്ലാ നെറ്റ്uവർക്ക് ബാൻഡ്uവിഡ്uത്തിലും ഒരു ആപ്ലിക്കേഷൻ ആധിപത്യം പുലർത്തുന്ന സാഹചര്യങ്ങൾ നിങ്ങൾ എപ്പോഴെങ്കിലും നേരിട്ടിട്ടുണ്ടോ? ഒരു ആപ്ലിക്കേഷൻ നിങ്ങളുടെ എല്ലാ ട്രാഫിക്കും തിന്നുതീർക്കുന്ന ഒരു സാഹചര്യത്തിൽ നിങ്ങൾ എപ്പോഴെങ്കിലും ഉണ്ടായിട്ടുണ്ടെങ്കിൽ, ട്രിക്കിൾ ബാൻഡ്uവിഡ്ത്ത് ഷേപ്പർ ആപ്ലിക്കേഷന്റെ പങ്ക് നിങ്ങൾ വിലമതിക്കും.

ഒന്നുകിൽ നിങ്ങളൊരു സിസ്റ്റം അഡ്uമിൻ അല്ലെങ്കിൽ ഒരു ലിനക്uസ് ഉപയോക്താവ് ആണെങ്കിലും, നിങ്ങളുടെ നെറ്റ്uവർക്ക് ബാൻഡ്uവിഡ്ത്ത് ഒരൊറ്റ ആപ്ലിക്കേഷനിൽ ബേൺ ചെയ്തിട്ടില്ലെന്ന് ഉറപ്പാക്കാൻ ആപ്ലിക്കേഷനുകൾക്കുള്ള അപ്uലോഡ്, ഡൗൺലോഡ് വേഗത എങ്ങനെ നിയന്ത്രിക്കാമെന്ന് നിങ്ങൾ പഠിക്കേണ്ടതുണ്ട്.

[ നിങ്ങൾക്ക് ഇതും ഇഷ്ടപ്പെടാം: ലിനക്സിലെ നെറ്റ്uവർക്ക് ഉപയോഗം വിശകലനം ചെയ്യാൻ 16 ഉപയോഗപ്രദമായ ബാൻഡ്uവിഡ്ത്ത് മോണിറ്ററിംഗ് ടൂളുകൾ ]

എന്താണ് ട്രിക്കിൾ?

ട്രിക്കിൾ ഒരു നെറ്റ്uവർക്ക് ബാൻഡ്uവിഡ്ത്ത് ഷേപ്പർ ടൂളാണ്, അത് ആപ്ലിക്കേഷനുകളുടെ അപ്uലോഡ്, ഡൗൺലോഡ് വേഗത നിയന്ത്രിക്കാൻ ഞങ്ങളെ അനുവദിക്കുകയും അവയിലൊന്ന് ലഭ്യമായ ബാൻഡ്uവിഡ്ത്ത് മുഴുവനും (അല്ലെങ്കിൽ മിക്കതും) ഹോഗ് ചെയ്യുന്നത് തടയുകയും ചെയ്യുന്നു.

കുറച്ച് വാക്കുകളിൽ പറഞ്ഞാൽ, ഓരോ ഉപയോക്തൃ നിയന്ത്രണത്തിനും വിരുദ്ധമായി, ഓരോ ആപ്ലിക്കേഷന്റെയും അടിസ്ഥാനത്തിൽ നെറ്റ്uവർക്ക് ട്രാഫിക് നിരക്ക് നിയന്ത്രിക്കാൻ ട്രിക്കിൾ നിങ്ങളെ അനുവദിക്കുന്നു, ഇത് ഒരു ക്ലയന്റ്-സെർവർ പരിതസ്ഥിതിയിൽ ബാൻഡ്uവിഡ്ത്ത് രൂപപ്പെടുത്തുന്നതിന്റെ മികച്ച ഉദാഹരണമാണ്, ഇത് ഒരുപക്ഷേ ഞങ്ങൾ കൂടുതൽ സജ്ജമാക്കുന്ന സജ്ജീകരണമാണ്. പരിചയമുള്ള.

ട്രിക്കിൾ എങ്ങനെ പ്രവർത്തിക്കുന്നു?

കൂടാതെ, ഓരോ ആപ്ലിക്കേഷന്റെയും അടിസ്ഥാനത്തിൽ മുൻഗണനകൾ നിർവചിക്കാൻ ഒരു ട്രിക്കിൾ ഞങ്ങളെ സഹായിക്കും, അതുവഴി മുഴുവൻ സിസ്റ്റത്തിനും മൊത്തത്തിലുള്ള പരിധികൾ സജ്ജീകരിക്കുമ്പോൾ, മുൻഗണനയുള്ള ആപ്പുകൾക്ക് സ്വയമേവ കൂടുതൽ ബാൻഡ്uവിഡ്ത്ത് ലഭിക്കും.

ഈ ടാസ്uക് നിർവ്വഹിക്കുന്നതിന്, TCP കണക്ഷനുകൾ ഉപയോഗിക്കുന്ന സോക്കറ്റുകളിലേക്ക് ഡാറ്റ അയയ്uക്കുന്നതിനും സ്വീകരിക്കുന്നതിനും ട്രിക്കിൾ ട്രാഫിക് പരിധികൾ സജ്ജമാക്കുന്നു. ഡാറ്റാ ട്രാൻസ്ഫർ നിരക്കുകൾ ഒഴികെ, ട്രിക്കിൾ ഏത് നിമിഷവും രൂപപ്പെടുത്തുന്ന പ്രക്രിയയുടെ സ്വഭാവം ഒരു തരത്തിലും പരിഷ്uക്കരിക്കില്ല എന്നത് നമ്മൾ ശ്രദ്ധിക്കേണ്ടതാണ്.

ട്രിക്കിളിന് എന്ത് ചെയ്യാൻ കഴിയില്ല?

പറയാവുന്ന ഒരേയൊരു പരിമിതി, ആകൃതിയിലുള്ള പ്രക്രിയയ്ക്കും അനുബന്ധ നെറ്റ്uവർക്ക് സോക്കറ്റിനും ഇടയിൽ സ്വയം സ്ഥാപിക്കുന്നതിന് ഡൈനാമിക് ലിങ്കിംഗും ലോഡിംഗും ഉപയോഗിക്കുന്നതിനാൽ, SUID അല്ലെങ്കിൽ SGID ബിറ്റുകൾ സജ്ജീകരിച്ചിട്ടുള്ള സ്റ്റാറ്റിക്കലി ലിങ്ക്ഡ് ആപ്ലിക്കേഷനുകളുമായോ ബൈനറികളുമായോ ട്രിക്കിൾ പ്രവർത്തിക്കില്ല എന്നതാണ്. ട്രിക്കിൾ ഈ രണ്ട് സോഫ്uറ്റ്uവെയർ ഘടകങ്ങൾക്കിടയിൽ ഒരു പ്രോക്uസിയായി പ്രവർത്തിക്കുന്നു.

ട്രിക്കിളിന് പ്രവർത്തിപ്പിക്കുന്നതിന് സൂപ്പർ യൂസർ പ്രത്യേകാവകാശങ്ങൾ ആവശ്യമില്ലാത്തതിനാൽ, ഉപയോക്താക്കൾക്ക് അവരുടെ സ്വന്തം ട്രാഫിക് പരിധികൾ സജ്ജമാക്കാൻ കഴിയും. ഇത് അഭികാമ്യമല്ലാത്തതിനാൽ, സിസ്റ്റം ഉപയോക്താക്കൾക്ക് കവിയാൻ കഴിയാത്ത മൊത്തത്തിലുള്ള പരിധികൾ എങ്ങനെ സജ്ജീകരിക്കാമെന്ന് ഞങ്ങൾ പര്യവേക്ഷണം ചെയ്യും. മറ്റൊരു വിധത്തിൽ പറഞ്ഞാൽ, ഉപയോക്താക്കൾക്ക് അവരുടെ ട്രാഫിക് നിരക്കുകൾ നിയന്ത്രിക്കാൻ കഴിയും, എന്നാൽ എല്ലായ്പ്പോഴും സിസ്റ്റം അഡ്മിനിസ്ട്രേറ്റർ നിശ്ചയിച്ചിട്ടുള്ള അതിരുകൾക്കുള്ളിൽ.

ഈ ലേഖനത്തിൽ, ഒരു ലിനക്സ് സെർവറിൽ ആപ്ലിക്കേഷനുകൾ ഉപയോഗിക്കുന്ന നെറ്റ്uവർക്ക് ബാൻഡ്uവിഡ്ത്ത് എങ്ങനെ പരിമിതപ്പെടുത്താമെന്ന് ഞങ്ങൾ വിശദീകരിക്കും.

ആവശ്യമായ ട്രാഫിക് സൃഷ്uടിക്കുന്നതിന്, ഞങ്ങൾ ക്ലയന്റിൽ (CentOS സെർവർ - dev1: 192.168.0.17) ncftpput, ncftpget (രണ്ട് ടൂളുകളും ncftp ഇൻസ്റ്റാൾ ചെയ്യുന്നതിലൂടെ ലഭ്യമാണ്), കൂടാതെ സെർവറിൽ vsftpd (Debian – dev2: 192.166)8.15 എന്നതിനായി ഉപയോഗിക്കും. പ്രദർശന ഉദ്ദേശ്യങ്ങൾ. RedHat, Fedora, Ubuntu എന്നിവ അടിസ്ഥാനമാക്കിയുള്ള സിസ്റ്റങ്ങളിലും ഇതേ നിർദ്ദേശങ്ങൾ പ്രവർത്തിക്കുന്നു.

ലിനക്സിൽ ncftp, vsftpd എന്നിവ ഇൻസ്റ്റാൾ ചെയ്യുന്നു

1. RHEL/CentOS 8/7-ന്, EPEL റിപ്പോസിറ്ററി പ്രവർത്തനക്ഷമമാക്കുക. എന്റർപ്രൈസ് ലിനക്സിനുള്ള എക്സ്ട്രാ പാക്കേജുകൾ (EPEL) ഫെഡോറ പ്രൊജക്റ്റ് പരിപാലിക്കുന്ന ഉയർന്ന നിലവാരമുള്ള സ്വതന്ത്രവും ഓപ്പൺ സോഴ്uസ് സോഫ്റ്റ്uവെയറിന്റെ ഒരു ശേഖരമാണ്, കൂടാതെ Red Hat Enterprise Linux, CentOS എന്നിവ പോലുള്ള അതിന്റെ സ്പിൻഓഫുകളുമായി 100% പൊരുത്തപ്പെടുന്നു. trickle ഉം ncftp ഉം ഈ ശേഖരത്തിൽ നിന്ന് ലഭ്യമാക്കിയിട്ടുണ്ട്.

2. ncftp ഇനിപ്പറയുന്ന രീതിയിൽ ഇൻസ്റ്റാൾ ചെയ്യുക:

# yum update && sudo yum install ncftp		[On RedHat based systems]
# aptitude update && aptitude install ncftp	[On Debian based systems]	

3. ഒരു പ്രത്യേക സെർവറിൽ ഒരു FTP സെർവർ സജ്ജീകരിക്കുക. FTP അന്തർലീനമായി സുരക്ഷിതമല്ലെങ്കിലും, ഫയലുകൾ അപ്uലോഡ് ചെയ്യുന്നതിനോ ഡൗൺലോഡ് ചെയ്യുന്നതിനോ സുരക്ഷ ആവശ്യമില്ലാത്ത സന്ദർഭങ്ങളിൽ ഇത് ഇപ്പോഴും വ്യാപകമായി ഉപയോഗിക്കപ്പെടുന്നു എന്നത് ശ്രദ്ധിക്കുക.

ട്രിക്കിളിന്റെ ഔദാര്യങ്ങൾ ചിത്രീകരിക്കുന്നതിനാണ് ഞങ്ങൾ ഇത് ഈ ലേഖനത്തിൽ ഉപയോഗിക്കുന്നത്, കാരണം ഇത് ക്ലയന്റിലുള്ള stdout-ൽ ട്രാൻസ്ഫർ നിരക്കുകൾ കാണിക്കുന്നു, മറ്റൊരു തീയതിക്കും സമയത്തിനും ഇത് ഉപയോഗിക്കണോ വേണ്ടയോ എന്നതിനെക്കുറിച്ചുള്ള ചർച്ച ഞങ്ങൾ ഉപേക്ഷിക്കും.

# yum update && yum install vsftpd 		[On RedHat based systems]
# apt update && apt install vsftpd 	[On Debian based systems]

ഇപ്പോൾ, FTP സെർവറിലെ /etc/vsftpd/vsftpd.conf ഫയൽ ഇനിപ്പറയുന്ന രീതിയിൽ എഡിറ്റ് ചെയ്യുക:

$ sudo nano /etc/vsftpd/vsftpd.conf
OR
$ sudo /etc/vsftpd.conf

ഇനിപ്പറയുന്ന മാറ്റങ്ങൾ വരുത്തുക:

anonymous_enable=NO
local_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES

അതിനുശേഷം, നിങ്ങളുടെ നിലവിലെ സെഷനായി vsftpd ആരംഭിക്കുന്നതും ഭാവിയിലെ ബൂട്ടുകളിൽ സ്വയമേവ ആരംഭിക്കുന്നതിന് ഇത് പ്രവർത്തനക്ഷമമാക്കുന്നതും ഉറപ്പാക്കുക:

# systemctl start vsftpd 		[For systemd-based systems]
# systemctl enable vsftpd
# service vsftpd start 			[For init-based systems]
# chkconfig vsftpd on

4. റിമോട്ട് ആക്uസസിനായി SSH കീകൾ ഉള്ള ഒരു CentOS/RHEL ഡ്രോപ്uലെറ്റിൽ FTP സെർവർ സജ്ജീകരിക്കാൻ നിങ്ങൾ തിരഞ്ഞെടുക്കുകയാണെങ്കിൽ, റൂട്ടിന്റെ വീടിന് പുറത്ത് ആവശ്യമുള്ള ഉള്ളടക്കം അപ്uലോഡ് ചെയ്യുന്നതിനും ഡൗൺലോഡ് ചെയ്യുന്നതിനും ഉചിതമായ ഡയറക്ടറിയും ഫയൽ അനുമതികളും ഉള്ള ഒരു പാസ്uവേഡ് പരിരക്ഷിത ഉപയോക്തൃ അക്കൗണ്ട് നിങ്ങൾക്ക് ആവശ്യമാണ്. ഡയറക്ടറി.

തുടർന്ന് നിങ്ങളുടെ ബ്രൗസറിൽ ഇനിപ്പറയുന്ന URL നൽകി നിങ്ങളുടെ ഹോം ഡയറക്ടറിയിലേക്ക് ബ്രൗസ് ചെയ്യാം. FTP സെർവറിൽ സാധുവായ ഒരു ഉപയോക്തൃ അക്കൗണ്ടും പാസ്uവേഡും ആവശ്യപ്പെടുന്ന ഒരു ലോഗിൻ വിൻഡോ പോപ്പ് അപ്പ് ചെയ്യും.

ftp://192.168.0.15

പ്രാമാണീകരണം വിജയിക്കുകയാണെങ്കിൽ, നിങ്ങളുടെ ഹോം ഡയറക്uടറിയിലെ ഉള്ളടക്കങ്ങൾ നിങ്ങൾ കാണും. ഈ ട്യൂട്ടോറിയലിൽ പിന്നീട്, മുമ്പത്തെ ഘട്ടങ്ങളിൽ അപ്uലോഡ് ചെയ്ത ഫയലുകൾ പ്രദർശിപ്പിക്കുന്നതിന് നിങ്ങൾക്ക് ആ പേജ് പുതുക്കാൻ കഴിയും.

Linux-ൽ Trickle എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം

ഇപ്പോൾ yum അല്ലെങ്കിൽ apt വഴി trickle ഇൻസ്റ്റാൾ ചെയ്യുക.

വിജയകരമായ ഒരു ഇൻസ്റ്റലേഷൻ ഉറപ്പാക്കാൻ, ടൂൾ തന്നെ ഇൻസ്റ്റാൾ ചെയ്യുന്നതിനു മുമ്പ്, നിലവിൽ ഇൻസ്റ്റോൾ ചെയ്തിരിക്കുന്ന പാക്കേജുകൾ അപ്-ടു-ഡേറ്റ് ആണെന്ന് (yum അപ്ഡേറ്റ് ഉപയോഗിച്ച്) ഉറപ്പാക്കുന്നത് നല്ല പരിശീലനമായി കണക്കാക്കപ്പെടുന്നു.

# yum -y update && yum install trickle 		        [On RedHat based systems]
# apt -y update && apt install trickle 	[On Debian based systems]

ആവശ്യമുള്ള ബൈനറിയിൽ ട്രിക്കിൾ പ്രവർത്തിക്കുമോയെന്ന് പരിശോധിക്കുക. ഞങ്ങൾ നേരത്തെ വിശദീകരിച്ചതുപോലെ, ഡൈനാമിക് അല്ലെങ്കിൽ പങ്കിട്ട ലൈബ്രറികൾ ഉപയോഗിച്ച് ബൈനറികളിൽ മാത്രമേ ട്രിക്കിൾ പ്രവർത്തിക്കൂ. ഒരു നിശ്ചിത ആപ്ലിക്കേഷൻ ഉപയോഗിച്ച് ഈ ടൂൾ ഉപയോഗിക്കാമോ എന്ന് പരിശോധിക്കാൻ, നമുക്ക് അറിയപ്പെടുന്ന ldd യൂട്ടിലിറ്റി ഉപയോഗിക്കാം, ഇവിടെ ldd എന്നത് ലിസ്റ്റ് ഡൈനാമിക് ഡിപൻഡൻസികളെ സൂചിപ്പിക്കുന്നു.

പ്രത്യേകമായി, ഏതെങ്കിലും പ്രോഗ്രാമിന്റെ ഡൈനാമിക് ഡിപൻഡൻസികളുടെ പട്ടികയിൽ glibc (GNU C ലൈബ്രറി) ഉണ്ടെന്ന് ഞങ്ങൾ നോക്കും, കാരണം സോക്കറ്റുകൾ വഴി ആശയവിനിമയത്തിൽ ഉൾപ്പെട്ടിരിക്കുന്ന സിസ്റ്റം കോളുകൾ കൃത്യമായി നിർവ്വചിക്കുന്നത് ആ ലൈബ്രറിയാണ്.

തന്നിരിക്കുന്ന ബൈനറിയുടെ ബാൻഡ്uവിഡ്ത്ത് രൂപപ്പെടുത്താൻ ട്രിക്കിൾ ഉപയോഗിക്കാനാകുമോ എന്ന് കാണുന്നതിന്, അതിനെതിരെ താഴെ പറയുന്ന കമാൻഡ് പ്രവർത്തിപ്പിക്കുക:

# ldd $(which [binary]) | grep libc.so

ഉദാഹരണത്തിന്,

# ldd $(which ncftp) | grep libc.so

ആരുടെ ഔട്ട്പുട്ട്:

# libc.so.6 => /lib64/libc.so.6 (0x00007efff2e6c000)

ഔട്ട്uപുട്ടിലെ ബ്രാക്കറ്റുകൾക്കിടയിലുള്ള സ്ട്രിംഗ് സിസ്റ്റത്തിൽ നിന്ന് സിസ്റ്റത്തിലേക്കും അതേ കമാൻഡിന്റെ തുടർന്നുള്ള റണ്ണുകൾക്കിടയിലും പോലും മാറിയേക്കാം, കാരണം ഇത് ഫിസിക്കൽ മെമ്മറിയിലെ ലൈബ്രറിയുടെ ലോഡ് വിലാസത്തെ പ്രതിനിധീകരിക്കുന്നു.

മുകളിലുള്ള കമാൻഡ് ഫലങ്ങളൊന്നും നൽകുന്നില്ലെങ്കിൽ, അതിനർത്ഥം അത് പ്രവർത്തിപ്പിച്ച ബൈനറി libc ഉപയോഗിക്കുന്നില്ല എന്നാണ്, അതിനാൽ ആ സാഹചര്യത്തിൽ trickle ബാൻഡ്uവിഡ്ത്ത് ഷേപ്പറായി ഉപയോഗിക്കാൻ കഴിയില്ല.

ലിനക്സിൽ ട്രിക്കിൾ എങ്ങനെ ഉപയോഗിക്കാമെന്ന് മനസിലാക്കുക

ട്രിക്കിളിന്റെ ഏറ്റവും അടിസ്ഥാനപരമായ ഉപയോഗം ഒറ്റപ്പെട്ട മോഡിലാണ്. ഈ സമീപനം ഉപയോഗിച്ച്, നൽകിയിരിക്കുന്ന ആപ്ലിക്കേഷന്റെ ഡൗൺലോഡും അപ്uലോഡ് വേഗതയും വ്യക്തമായി നിർവചിക്കാൻ ട്രിക്കിൾ ഉപയോഗിക്കുന്നു. ഞങ്ങൾ നേരത്തെ വിശദീകരിച്ചതുപോലെ, സംക്ഷിപ്തതയ്ക്കായി, ഡൗൺലോഡ് ചെയ്യുന്നതിനും അപ്uലോഡ് ടെസ്റ്റുകൾക്കും ഞങ്ങൾ അതേ ആപ്ലിക്കേഷൻ ഉപയോഗിക്കും.

ട്രിക്കിൾ ഉപയോഗിച്ചും അല്ലാതെയും ഞങ്ങൾ ഡൗൺലോഡും അപ്uലോഡ് വേഗതയും താരതമ്യം ചെയ്യും. -d ഓപ്uഷൻ KB/s-ലെ ഡൗൺലോഡ് വേഗതയെ സൂചിപ്പിക്കുന്നു, അതേസമയം -u ഫ്ലാഗ് അതേ യൂണിറ്റ് കൊണ്ട് അപ്uലോഡ് വേഗത പരിമിതപ്പെടുത്താൻ ട്രിക്കിളിനോട് പറയുന്നു. കൂടാതെ, ഞങ്ങൾ -s ഫ്ലാഗ് ഉപയോഗിക്കും, അത് ട്രിക്കിൾ സ്റ്റാൻഡ് എലോൺ മോഡിൽ പ്രവർത്തിക്കണമെന്ന് വ്യക്തമാക്കുന്നു.

സ്റ്റാൻഡ് എലോൺ മോഡിൽ ട്രിക്കിൾ പ്രവർത്തിപ്പിക്കുന്നതിനുള്ള അടിസ്ഥാന വാക്യഘടന ഇപ്രകാരമാണ്:

# trickle -s -d [download rate in KB/s] -u [upload rate in KB/s]

ഇനിപ്പറയുന്ന ഉദാഹരണങ്ങൾ സ്വന്തമായി നടപ്പിലാക്കുന്നതിനായി, ക്ലയന്റ് മെഷീനിൽ trickle ഉം ncftp ഉം ഇൻസ്റ്റാൾ ചെയ്തിട്ടുണ്ടെന്ന് ഉറപ്പാക്കുക (എന്റെ കാര്യത്തിൽ 192.168.0.17).

ഇനിപ്പറയുന്ന പരിശോധനകൾക്കായി ഞങ്ങൾ സൗജന്യമായി വിതരണം ചെയ്യാവുന്ന Linux Fundamentals PDF ഫയൽ (ഇവിടെ നിന്ന് ലഭ്യമാണ്) ഉപയോഗിക്കുന്നു.

താഴെ പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഈ ഫയൽ നിങ്ങളുടെ നിലവിലെ വർക്കിംഗ് ഡയറക്ടറിയിലേക്ക് ആദ്യം ഡൗൺലോഡ് ചെയ്യാം:

# wget http://linux-training.be/files/books/LinuxFun.pdf 

ട്രിക്കിൾ ഇല്ലാതെ ഞങ്ങളുടെ FTP സെർവറിലേക്ക് ഒരു ഫയൽ അപ്uലോഡ് ചെയ്യുന്നതിനുള്ള വാക്യഘടന ഇപ്രകാരമാണ്:

# ncftpput -u username -p password 192.168.0.15  /remote_directory local-filename 

എവിടെ /remote_directory എന്നത് ഉപയോക്തൃനാമത്തിന്റെ ഹോമുമായി ബന്ധപ്പെട്ട അപ്uലോഡ് ഡയറക്uടറിയുടെ പാതയാണ്, കൂടാതെ ലോക്കൽ-ഫയൽ നാമം നിങ്ങളുടെ നിലവിലെ പ്രവർത്തിക്കുന്ന ഡയറക്uടറിയിലെ ഒരു ഫയലാണ്.

പ്രത്യേകിച്ചും, ട്രിക്കിൾ കൂടാതെ നമുക്ക് 52.02 MB/s എന്ന പീക്ക് അപ്uലോഡ് വേഗത ലഭിക്കും (ഇത് യഥാർത്ഥ ശരാശരി അപ്uലോഡ് വേഗതയല്ല, തൽക്ഷണം ആരംഭിക്കുന്ന പീക്ക് ആണെന്ന് ദയവായി ശ്രദ്ധിക്കുക), ഫയൽ ഏതാണ്ട് തൽക്ഷണം അപ്uലോഡ് ചെയ്യപ്പെടും:

# ncftpput -u username -p password 192.168.0.15  /testdir LinuxFun.pdf 

ഔട്ട്പുട്ട്:

LinuxFun.pdf:                                        	2.79 MB   52.02 MB/s

ട്രിക്കിൾ ഉപയോഗിച്ച്, ഞങ്ങൾ അപ്uലോഡ് ട്രാൻസ്ഫർ നിരക്ക് 5 KB/s ആയി പരിമിതപ്പെടുത്തും. രണ്ടാമത്തെ തവണ ഫയൽ അപ്uലോഡ് ചെയ്യുന്നതിന് മുമ്പ്, ലക്ഷ്യസ്ഥാന ഡയറക്ടറിയിൽ നിന്ന് ഞങ്ങൾ അത് ഇല്ലാതാക്കേണ്ടതുണ്ട്; അല്ലാത്തപക്ഷം, ഞങ്ങൾ അപ്uലോഡ് ചെയ്യാൻ ശ്രമിക്കുന്നത് ഡെസ്റ്റിനേഷൻ ഡയറക്uടറിയിലെ ഫയലാണെന്നും കൈമാറ്റം നടത്തില്ലെന്നും ncftp ഞങ്ങളെ അറിയിക്കും:

# rm /absolute/path/to/destination/directory/LinuxFun.pdf 

അപ്പോൾ:

# trickle -s -u 5 ncftpput -u username -p password 111.111.111.111 /testdir LinuxFun.pdf 

ഔട്ട്പുട്ട്:

LinuxFun.pdf:                                        	2.79 MB	4.94 kB/s

മുകളിലെ ഉദാഹരണത്തിൽ, ശരാശരി അപ്uലോഡ് വേഗത ~5 KB/s ആയി കുറഞ്ഞതായി നമുക്ക് കാണാൻ കഴിയും.

ആദ്യം, യഥാർത്ഥ ഉറവിട ഡയറക്ടറിയിൽ നിന്ന് PDF ഇല്ലാതാക്കാൻ ഓർക്കുക:

# rm /absolute/path/to/source/directory/LinuxFun.pdf 

ഇനിപ്പറയുന്ന കേസുകൾ ക്ലയന്റ് മെഷീനിലെ നിലവിലെ ഡയറക്uടറിയിലേക്ക് റിമോട്ട് ഫയൽ ഡൗൺലോഡ് ചെയ്യുമെന്നത് ശ്രദ്ധിക്കുക. FTP സെർവറിന്റെ IP വിലാസത്തിന് ശേഷം ദൃശ്യമാകുന്ന കാലയളവ് (‘.‘) ഈ വസ്തുത സൂചിപ്പിക്കുന്നു.

തുള്ളി ഇല്ലാതെ:

# ncftpget -u username -p  password 111.111.111.111 . /testdir/LinuxFun.pdf 

ഔട്ട്പുട്ട്:

LinuxFun.pdf:                                        	2.79 MB  260.53 MB/s

ട്രിക്കിൾ ഉപയോഗിച്ച്, ഡൗൺലോഡ് വേഗത 20 KB/s ആയി പരിമിതപ്പെടുത്തുന്നു:

# trickle -s -d 30 ncftpget -u username -p password 111.111.111.111 . /testdir/LinuxFun.pdf 

ഔട്ട്പുട്ട്:

LinuxFun.pdf:                                        	2.79 MB   17.76 kB/s

സൂപ്പർവൈസ് ചെയ്uത [നിയന്ത്രിതമല്ലാത്ത] മോഡിൽ ട്രിക്കിൾ പ്രവർത്തിപ്പിക്കുന്നു

/etc/trickled.conf-ൽ നിർവചിച്ചിരിക്കുന്ന പരാമീറ്ററുകളുടെ ഒരു ശ്രേണിയെ പിന്തുടർന്ന് ട്രിക്കിൾ അൺമാനേജ്ഡ് മോഡിലും പ്രവർത്തിക്കാൻ കഴിയും. ട്രിക്കിൾ (ഡെമൺ) എങ്ങനെ പെരുമാറുകയും ട്രിക്കിൾ നിയന്ത്രിക്കുകയും ചെയ്യുന്നു എന്ന് ഈ ഫയൽ നിർവചിക്കുന്നു.

കൂടാതെ, മൊത്തത്തിൽ, എല്ലാ ആപ്ലിക്കേഷനുകൾക്കും ഉപയോഗിക്കുന്നതിന് ആഗോള ക്രമീകരണങ്ങൾ സജ്ജമാക്കണമെങ്കിൽ, ഞങ്ങൾ trickled കമാൻഡ് ഉപയോഗിക്കേണ്ടതുണ്ട്. ഈ കമാൻഡ് ഡെമൺ പ്രവർത്തിപ്പിക്കുകയും ഓരോ തവണയും പരിധികൾ വ്യക്തമാക്കാതെ തന്നെ ട്രിക്കിളിലൂടെ പ്രവർത്തിപ്പിക്കുന്ന എല്ലാ ആപ്ലിക്കേഷനുകളും പങ്കിടുന്ന ഡൗൺലോഡ്, അപ്uലോഡ് പരിധികൾ നിർവ്വചിക്കാൻ ഞങ്ങളെ അനുവദിക്കുന്നു.

ഉദാഹരണത്തിന്, ഓട്ടം:

# trickled -d 50 -u 10

ട്രിക്കിളിലൂടെ പ്രവർത്തിക്കുന്ന ഏതൊരു ആപ്ലിക്കേഷന്റെയും ഡൗൺലോഡ്, അപ്uലോഡ് വേഗത യഥാക്രമം 30 KB/s, 10 KB/s എന്നിങ്ങനെ പരിമിതപ്പെടുത്തും.

നിങ്ങൾക്ക് എപ്പോൾ വേണമെങ്കിലും ട്രിക്കിൽഡ് പ്രവർത്തിക്കുന്നുണ്ടോയെന്നും എന്ത് ആർഗ്യുമെന്റുകൾ ഉപയോഗിച്ചും പരിശോധിക്കാമെന്നത് ശ്രദ്ധിക്കുക:

# ps -ef | grep trickled | grep -v grep

ഔട്ട്പുട്ട്:

root 	16475 	1  0 Dec24 ?    	00:00:04 trickled -d 50 -u 10

ഈ ഉദാഹരണത്തിൽ, ഈ ലിങ്കിൽ നിന്ന് ഡൗൺലോഡ് ചെയ്യാൻ ലഭ്യമായ സൗജന്യമായി വിതരണം ചെയ്യാവുന്ന അവൻ സമ്മാനം എന്ന വീഡിയോ ഞങ്ങൾ ഉപയോഗിക്കും.

താഴെ പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് ഞങ്ങൾ ഈ ഫയൽ നിങ്ങളുടെ നിലവിലെ പ്രവർത്തിക്കുന്ന ഡയറക്ടറിയിലേക്ക് ആദ്യം ഡൗൺലോഡ് ചെയ്യും:

# wget http://media2.ldscdn.org/assets/missionary/our-people-2014/2014-00-1460-he-is-the-gift-360p-eng.mp4 

ആദ്യം, മുകളിൽ ലിസ്റ്റുചെയ്തിരിക്കുന്ന കമാൻഡ് ഉപയോഗിച്ച് ഞങ്ങൾ ട്രിക്ക്ഡ് ഡെമൺ ആരംഭിക്കും:

# trickled -d 30 -u 10

തുള്ളി ഇല്ലാതെ:

# ncftpput -u username -p password 192.168.0.15 /testdir 2014-00-1460-he-is-the-gift-360p-eng.mp4 

ഔട്ട്പുട്ട്:

2014-00-1460-he-is-the-gift-360p-eng.mp4:           	18.53 MB   36.31 MB/s

ട്രിക്കിൾ ഉപയോഗിച്ച്:

# trickle ncftpput -u username -p password 192.168.0.15 /testdir 2014-00-1460-he-is-the-gift-360p-eng.mp4 

ഔട്ട്പുട്ട്:

2014-00-1460-he-is-the-gift-360p-eng.mp4:           	18.53 MB	9.51 kB/s

മുകളിലുള്ള ഔട്ട്uപുട്ടിൽ നമുക്ക് കാണാനാകുന്നതുപോലെ, അപ്uലോഡ് ട്രാൻസ്ഫർ നിരക്ക് ~10 KB/s ആയി കുറഞ്ഞു.

ഉദാഹരണം 2 ലെ പോലെ, ഞങ്ങൾ ഫയൽ നിലവിലെ പ്രവർത്തിക്കുന്ന ഡയറക്ടറിയിലേക്ക് ഡൗൺലോഡ് ചെയ്യും.

തുള്ളി ഇല്ലാതെ:

# ncftpget -u username -p password 192.168.0.15 . /testdir/2014-00-1460-he-is-the-gift-360p-eng.mp4 

ഔട്ട്പുട്ട്:

2014-00-1460-he-is-the-gift-360p-eng.mp4:           	18.53 MB  108.34 MB/s

ട്രിക്കിൾ ഉപയോഗിച്ച്:

# trickle ncftpget -u username -p password 111.111.111.111 . /testdir/2014-00-1460-he-is-the-gift-360p-eng.mp4 

ഔട്ട്പുട്ട്:

2014-00-1460-he-is-the-gift-360p-eng.mp4:           	18.53 MB   29.28 kB/s

നേരത്തെ സജ്ജീകരിച്ച ഡൗൺലോഡ് പരിധിക്ക് (30 KB/s) അനുസരിച്ചുള്ളതാണ് ഇത്.

ശ്രദ്ധിക്കുക: ഡെമൺ ആരംഭിച്ചുകഴിഞ്ഞാൽ, ട്രിക്കിൾ ഉപയോഗിക്കുന്ന ഓരോ ആപ്ലിക്കേഷനും വ്യക്തിഗത പരിധികൾ സജ്ജീകരിക്കേണ്ട ആവശ്യമില്ല.

ഞങ്ങൾ നേരത്തെ സൂചിപ്പിച്ചതുപോലെ, trickled.conf വഴി ഒരാൾക്ക് trickle ന്റെ ബാൻഡ്uവിഡ്ത്ത് രൂപീകരണം കൂടുതൽ ഇഷ്ടാനുസൃതമാക്കാൻ കഴിയും. ഈ ഫയലിലെ ഒരു സാധാരണ വിഭാഗത്തിൽ ഇനിപ്പറയുന്നവ ഉൾപ്പെടുന്നു:

[service]
Priority = <value>
Time-Smoothing = <value>
Length-Smoothing = <value>

എവിടെ,

  1. [സേവനം] എന്നത് ഞങ്ങൾ രൂപപ്പെടുത്താൻ ഉദ്ദേശിക്കുന്ന ബാൻഡ്uവിഡ്ത്ത് ഉപയോഗത്തിന്റെ പേരിനെ സൂചിപ്പിക്കുന്നു.
  2. മുൻഗണന ഒരു സേവനത്തിന് മറ്റൊന്നുമായി താരതമ്യപ്പെടുത്തുമ്പോൾ ഉയർന്ന മുൻഗണന നൽകാൻ ഞങ്ങളെ അനുവദിക്കുന്നു, അങ്ങനെ ഡെമൺ കൈകാര്യം ചെയ്യുന്ന എല്ലാ ബാൻഡ്uവിഡ്ത്തും ഹോഗ് ചെയ്യാൻ ഒരൊറ്റ ആപ്ലിക്കേഷനെ അനുവദിക്കുന്നില്ല. സംഖ്യ കുറയുന്തോറും [സേവനം] എന്നതിലേക്ക് കൂടുതൽ ബാൻഡ്uവിഡ്ത്ത് നിയോഗിക്കപ്പെടുന്നു.
  3. സമയ സുഗമമാക്കൽ [സെക്കൻഡിനുള്ളിൽ]: ഏത് സമയ ഇടവേളകൾ ഉപയോഗിച്ച് ആപ്ലിക്കേഷൻ കൈമാറ്റം ചെയ്യാനും കൂടാതെ/അല്ലെങ്കിൽ ഡാറ്റ സ്വീകരിക്കാനും ശ്രമിക്കുമെന്ന് നിർവചിക്കുന്നു. ചെറിയ മൂല്യങ്ങൾ (0.1 - 1 സെ. പരിധിയ്uക്ക് ഇടയിലുള്ളത്) സംവേദനാത്മക ആപ്ലിക്കേഷനുകൾക്ക് അനുയോജ്യമാണ്, കൂടുതൽ തുടർച്ചയായ (മിനുസമാർന്ന) സെഷനിൽ കലാശിക്കും, ബൾക്ക് ട്രാൻസ്ഫർ ആവശ്യമുള്ള ആപ്ലിക്കേഷനുകൾക്ക് അൽപ്പം വലിയ മൂല്യങ്ങൾ (1 - 10 സെ) നല്ലതാണ്. മൂല്യമൊന്നും വ്യക്തമാക്കിയിട്ടില്ലെങ്കിൽ, സ്ഥിരസ്ഥിതി (5 സെ) ഉപയോഗിക്കുന്നു.
  4. ദൈർഘ്യം-മിനുസപ്പെടുത്തൽ [കെബിയിൽ]: ആശയം ടൈം-സ്മൂത്തിംഗിലെ പോലെയാണ്, എന്നാൽ ഒരു I/O പ്രവർത്തനത്തിന്റെ ദൈർഘ്യത്തെ അടിസ്ഥാനമാക്കിയുള്ളതാണ്. മൂല്യമൊന്നും വ്യക്തമാക്കിയിട്ടില്ലെങ്കിൽ, ഡിഫോൾട്ട് (10 KB) ഉപയോഗിക്കും.

സ്മൂത്തിംഗ് മൂല്യങ്ങൾ മാറ്റുന്നത് ഒരു നിശ്ചിത മൂല്യത്തിന് പകരം ഒരു ഇടവേളയ്ക്കുള്ളിലെ ട്രാൻസ്ഫർ നിരക്കുകൾ ഉപയോഗിച്ച് [സേവനം] വ്യക്തമാക്കിയ ആപ്ലിക്കേഷനിലേക്ക് വിവർത്തനം ചെയ്യും. നിർഭാഗ്യവശാൽ, ഈ ഇടവേളയുടെ താഴ്ന്നതും ഉയർന്നതുമായ പരിധികൾ കണക്കാക്കാൻ ഒരു ഫോർമുലയും ഇല്ല, കാരണം ഇത് ഓരോ നിർദ്ദിഷ്ട സാഹചര്യത്തെയും ആശ്രയിച്ചിരിക്കുന്നു.

CentOS 7 ക്ലയന്റിലെ (192.168.0.17) ഒരു trickled.conf സാമ്പിൾ ഫയലാണ് ഇനിപ്പറയുന്നത്:

[ssh]
Priority = 1
Time-Smoothing = 0.1
Length-Smoothing = 2

[ftp]
Priority = 2
Time-Smoothing = 1
Length-Smoothing = 3

ഈ സജ്ജീകരണം ഉപയോഗിച്ച്, FTP കൈമാറ്റങ്ങളെക്കാൾ SSH കണക്ഷനുകൾക്ക് trickled മുൻഗണന നൽകും. SSH പോലെയുള്ള ഒരു സംവേദനാത്മക പ്രക്രിയ, ചെറിയ സമയ-സുഗമമായ മൂല്യങ്ങൾ ഉപയോഗിക്കുന്നു, അതേസമയം ബൾക്ക് ഡാറ്റ കൈമാറ്റങ്ങൾ (FTP) നടത്തുന്ന ഒരു സേവനം വലിയ മൂല്യം ഉപയോഗിക്കുന്നു.

ഞങ്ങളുടെ മുമ്പത്തെ ഉദാഹരണത്തിലെ ഡൗൺലോഡ്, അപ്uലോഡ് വേഗതകൾക്ക് സ്മൂത്തിംഗ് മൂല്യങ്ങൾ ഉത്തരവാദിയാണ്, ട്രക്കിൾഡ് ഡെമൺ വ്യക്തമാക്കിയ കൃത്യമായ മൂല്യവുമായി പൊരുത്തപ്പെടുന്നില്ല, പക്ഷേ അതിനടുത്തുള്ള ഒരു ഇടവേളയിൽ നീങ്ങുന്നു.

[ നിങ്ങൾക്ക് ഇതും ഇഷ്ടപ്പെടാം: OpenSSH സെർവർ എങ്ങനെ സുരക്ഷിതമാക്കാം, കഠിനമാക്കാം ]

ഉപസംഹാരം

ഫെഡോറ അടിസ്ഥാനമാക്കിയുള്ള വിതരണങ്ങളിലും ഡെബിയൻ/ഡെറിവേറ്റീവുകളിലും ട്രിക്കിൾ ഉപയോഗിച്ച് ആപ്ലിക്കേഷനുകൾ ഉപയോഗിക്കുന്ന ബാൻഡ്uവിഡ്ത്ത് എങ്ങനെ പരിമിതപ്പെടുത്താമെന്ന് ഈ ലേഖനത്തിൽ ഞങ്ങൾ പര്യവേക്ഷണം ചെയ്തിട്ടുണ്ട്. സാധ്യമായ മറ്റ് ഉപയോഗ കേസുകളിൽ ഉൾപ്പെടുന്നു, എന്നാൽ ഇവയിൽ മാത്രം പരിമിതപ്പെടുന്നില്ല:

  • ഉദാഹരണത്തിന്, ടോറന്റ് ക്ലയന്റ് പോലുള്ള ഒരു സിസ്റ്റം യൂട്ടിലിറ്റി വഴി ഡൗൺലോഡ് വേഗത പരിമിതപ്പെടുത്തുന്നു.
  • നിങ്ങൾ ഡെബിയൻ അധിഷ്uഠിത സിസ്റ്റത്തിലാണെങ്കിൽ, പാക്കേജ് മാനേജ്uമെന്റ് സിസ്റ്റമായ \aptitude\ വഴി നിങ്ങളുടെ സിസ്റ്റം അപ്uഡേറ്റ് ചെയ്യാനാകുന്ന വേഗത പരിമിതപ്പെടുത്തുന്നു.
  • നിങ്ങളുടെ സെർവർ ഒരു പ്രോക്സി അല്ലെങ്കിൽ ഫയർവാളിന് പിന്നിലാണെങ്കിൽ (അല്ലെങ്കിൽ പ്രോക്സി അല്ലെങ്കിൽ ഫയർവാൾ തന്നെ), ഡൗൺലോഡ്, അപ്uലോഡ് അല്ലെങ്കിൽ ക്ലയന്റുകളുമായോ പുറത്തുള്ളവരുമായോ ഉള്ള ആശയവിനിമയ വേഗതയിൽ പരിധി നിശ്ചയിക്കാൻ നിങ്ങൾക്ക് ട്രിക്കിൾ ഉപയോഗിക്കാം.

ചോദ്യങ്ങളും അഭിപ്രായങ്ങളും വളരെ സ്വാഗതം ചെയ്യുന്നു. അവർക്ക് ഞങ്ങളുടെ വഴി അയക്കുന്നതിന് ചുവടെയുള്ള ഫോം ഉപയോഗിക്കാൻ മടിക്കേണ്ടതില്ല.