പിങ്

ഒരു കംപ്യൂട്ടർ  ശൃംഖലയിൽ ഒരു കംപ്യുട്ടർ ലഭ്യമാണോ എന്നറിയാൻ ഉപയോഗിക്കുന്ന ഒരു പ്രോഗ്രാമാണ് പിങ് -" ping " . ഇതിനായി പിങ് പ്രോഗ്രാം, നെറ്റ്‌വർക്കിലൂടെ നിർദിഷ്ട ഐ.പി. വിലാസം ഉള്ള കംപ്യുട്ടറിലേക്ക് ഒരു ഡേറ്റ പാക്കറ്റ് അയക്കുന്നു. പ്രസ്തുത കമ്പ്യൂട്ടർ പ്രവർത്തനനിരതമാണെങ്കിൽ അത് ഈ പാക്കറ്റിനോട് പ്രതികരിക്കുകയും പാക്കറ്റ് ആദ്യത്തെ കമ്പ്യൂട്ടറിന്‌ തിരിച്ചയക്കുകയും ചെയ്യുന്നു. ഈ പാക്കറ്റ് നെറ്റ്‌വർക്കിലൂടെ തിരിച്ചുവരാൻ എടുക്കുന്ന സമയവും പ്രതികരണനിരക്കും പിങ് കണക്കാക്കുന്നു. പാക്കറ്റുകൾ നെറ്റ്‌വർക്കിൽ നഷ്ടപ്പെടുകയാണെങ്കിൽ അതും പിങിന് മനസ്സിലാക്കാൻ സാധിക്കും.

 ചരിത്രം 
1983 ഡിസംബറിൽ മൈക് മസ്സ് (Mike Muuss) നെറ്റ്‌വർക്കിലെ തകരാറുകൾ കണ്ടെത്താനായി ഒരു പ്രോഗ്രാം രചിച്ചു. കടലിന്റെ ആഴം അളക്കാനായി ഉപയോഗിക്കുന്ന സോണാർ എന്ന ഉപകരണത്തിന്റെ പ്രവർത്തനവുമായി അതിന് സാമ്യമുണ്ടായിരുന്നു. മൈക് ആ പ്രോഗ്രാമിന് പിങ്(Ping) എന്ന് പേരിട്ടു. പിന്നീട് ഡേവിഡ് എൽ. മിൽസ്(David L. Mills) പിങിനെ പാക്കറ്റ് ഇന്റർനെറ്റ് ഗ്രൂപർ (Packet InterNet Grouper) എന്നു വിളിച്ചു.

 ഉപയോഗിക്കുന്ന വിധം 
ലിനക്സിലെ ഏതെങ്കിലും ഷെല്ലിൽ നിന്നോ, വിൻഡോസിന്റെ കമാൻഡ് പ്രോമ്പ്റ്റിൽ നിന്നോ ping എന്ന നിർദ്ദേശത്തോടൊപ്പം പരിശോധിക്കേണ്ട കമ്പ്യൂട്ടറിന്റെ ഐ.പി. വിലാസമോ, ഡി.എൻ.എസ്. നാമമോ നൽകി ഏറ്റവും ലളിതമായ രീതിയിൽ പിങ് അഭ്യർത്ഥന നടത്താം

ഉദാഹരണം:
 ping 192.168.1.1

 ping en.wikipedia.org

ഇതിനോടൊപ്പം സ്വിച്ചുകൾ ചേർത്ത് കൂടുതൽ കാര്യക്ഷമമായ രീതിയിലും പിങ് നിർദ്ദേശം നൽകാം.

 ലിനക്സിലെ പിങ്ങിങ് 
ഇവിടെ ലിനക്സ് ഷെല്ലിൽ നിന്നും ഇംഗ്ലീഷ് വിക്കിപീഡിയയെ(en.wikipedia.org) പിങ് ചെയ്തിരിക്കുന്നു

 [root@server] ping en.wikipedia.org
 PING rr.pmtpa.wikimedia.org (66.230.200.100) 56(84) bytes of data.
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=1 ttl=52 time=87.7 ms
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=2 ttl=52 time=95.6 ms
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=3 ttl=52 time=85.4 ms
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=4 ttl=52 time=95.8 ms
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=5 ttl=52 time=87.0 ms
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=6 ttl=52 time=97.6 ms
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=7 ttl=52 time=87.3 ms
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=8 ttl=52 time=97.5 ms
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=9 ttl=52 time=78.1 ms
 64 bytes from rr.pmtpa.wikimedia.org (66.230.200.100): icmp_seq=10 ttl=52 time=79.5 ms
 --- rr.pmtpa.wikimedia.babunlaut ping statistics ---
 10 packets transmitted, 10 received, 0% packet loss, time 8998ms
 rtt min/avg/max/mdev = 78.162/89.213/97.695/6.836 ms

 വിൻഡോസിലെ പിങ്ങിങ് 
വിഡോസിലെ കമാൻഡ് പ്രോംറ്റിൽ ml.wikipedia.org പിങ് ചെയ്യുന്നത് ചിത്രത്തിൽ കൊടുത്തിരിക്കുന്നു.
250px|thumb|right|വിൻഡോസിലെ പിങ്

 പ്രവർത്തനം 
 എക്കോ റിക്വസ്റ്റ് 
പിങ് നടത്തുന്ന കമ്പ്യൂട്ടറിൽ നിന്നും പരിശോധിക്കേണ്ട കമ്പ്യൂട്ടറിലേക്ക് അയക്കപ്പെടുന്ന ഐ.സി.എം.പി. (ICMP) (ഇന്റർനെറ്റ് കണ്ട്രോൾ മെസ്സേജ് പ്രോട്ടോക്കോൾ) സന്ദേശമാണ് എക്കോ റിക്വസ്റ്റ് (Echo Request). ഇവിടെ എക്കോ റിപ്ലൈ (Echo Reply) പ്രതീക്ഷിച്ചുകൊണ്ട് ഒരു ഡേറ്റ പാക്കറ്റ് വിദൂരകംപ്യുട്ടറിലേക്ക് അയക്കുന്നു. ഈ പാക്കറ്റ് സ്വീകരിക്കുന്ന കംപ്യുട്ടർ ഇത് അയച്ച കംപ്യുട്ടറിലേക്ക് ഒരു എക്കോ റിപ്ലൈ അയയ്ക്കുന്നു. ഈ റിപ്ലൈയിൽ അയച്ച അതേ ഡേറ്റ തന്നെയായിരിക്കും ഉണ്ടാവുക.

സന്ദേശത്തിന്റെ രൂപം

 00  01  02  03  04  05  06  07 08  09  10  11  12  13  14  15 16  17  18  19  20  21  22  23 24  25  26  27  28  29  30  31 Type = 8 Code = 0 Header Checksum Identifier Sequence Number Data :::

 ടൈപ് 8 ആയിരിക്കണം
 കോഡ് 0 ആയിരിക്കണം
 ഐഡന്റിഫയറും(Identifier) സീക്വൻസ് നമ്പറും(Sequence Number) സ്വീകർത്താവിനെ എക്കോ റിക്വസ്റ്റും എക്കോ റിപ്ലേയും കൈകാര്യം ചെയ്യാൻ സഹായിക്കുന്നു.
 എക്കോ റിക്വസ്റ്റിൽ ഉള്ള എല്ലാ വിവരങ്ങളും എക്കോ റിപ്ലേയിലും ഉണ്ടായിരിക്കണം.

 എക്കോ റിപ്ലൈ 
എക്കോ റിക്വസ്റ്റിന് മറുപടിയായി വിദൂരകമ്പ്യൂട്ടർ പിങ് നടത്തിയ കമ്പ്യൂട്ടറിലേക്ക് അയക്കുന്ന ഐ.സി.എം.പി(ICMP) സന്ദേശമാണ് എക്കോ റിപ്ലൈ.

സന്ദേശത്തിന്റെ രൂപം

 00  01  02  03  04  05  06  07 08  09  10  11  12  13  14  15 16  17  18  19  20  21  22  23 24  25  26  27  28  29  30  31 Type = 0 Code = 0 Header Checksum Identifier Sequence Number Data :::

 ടൈപ്പും കോഡും 0 ആയിരിക്കണം (റിക്വസ്റ്റിൽ നിന്നുള്ള മാറ്റം ശ്രദ്ധിക്കുക)
 ഐഡന്റിഫയറും(Identifier) സീക്വൻസ് നമ്പറും(Sequence Number) സ്വീകർത്താവിനെ എക്കോ റിക്വസ്റ്റും എക്കോറിപ്ലേയും കൈകാര്യം ചെയ്യാൻ സഹായിക്കുന്നു.
 എക്കോ റിക്വസ്റ്റിൽ ഉള്ള എല്ലാ വിവരങ്ങളും എക്കോ റിപ്ലേയിലും ഉണ്ടായിരിക്കണം.

 ദുരുപയോഗങ്ങളും വിവാദങ്ങളും‍ 

2003 മുതലാണ് പിങിന്റെ ദുരുപയോഗങ്ങൾ പുറത്തുവന്നത്. ആ സമയത്ത് ഇന്റർനെറ്റിൽ പടർന്നുകൊണ്ടിരുന്ന പല വേമുകളും (Internet worms) (ഉദാഹരണത്തിന് വെൽച്ചിയ (Welchia)) ആക്രമിക്കാനുള്ള പുതിയ കംപ്യുട്ടറുകളെ കണ്ടെത്തിയിരുന്നത് പിങ് അഭ്യർത്ഥനകൾ വഴിയായിരുന്നു. ഇതുകൂടാതെ പിങ് അഭ്യർത്ഥനകൾ ഇന്റർനെറ്റിന്റെ വാഹകശേഷിയെ വരെ ദോഷകരമായി ബാധിച്ചു. ഇതുകൊണ്ടൊക്കെ പല ഇന്റർനെറ്റ് സേവനദാദാക്കളും (Internet Service Providers) പ്രതികരണം ആവശ്യപ്പെട്ടു കൊണ്ടുള്ള ഇത്തരം ഡേറ്റ പാക്കറ്റുകളെ നെറ്റ്‌വർക്കിൽ നിന്ന് അരിച്ചു മാറ്റുന്നു.

പിങിന്റെ കാര്യത്തിൽ ഇപ്പോഴും രണ്ടഭിപ്രായങ്ങൾ നിലനിൽക്കുന്നുണ്ട്. പിങ് അഭ്യർത്ഥനകളെ പൂർണമായും ഇന്റർനെറ്റിൽ നിന്ന് ഒഴിവാക്കണമെന്നും അങ്ങനെ നെറ്റ്‌വർക്കിന്റെ പ്രവർത്തനം കൂടുതൽ സുഗമമാക്കാമെന്നും ഒരുകൂട്ടം ആൾക്കാർ കരുതുന്നു. മറ്റൊരുകൂട്ടരാകട്ടെ നെറ്റ്‌വർക്കിന്റെ നിരന്തരമായ പരിരക്ഷക്ക് പിങ് അനിവാര്യമാണെന്ന് കരുതുകയും ചെയ്യുന്നു.
 കൂടുതൽ അറിവിന്‌ 
 ട്രേസ്റൂട്ട്

 പുറത്തേക്കുള്ള കണ്ണികൾ 
 - പിങ്ങിന്റെ നിർമാതാവ് മൈക് മസ്സ്(Mike Muuss) ൽ നിന്നും 
 - ലിനക്സ് ജേർണലിൽ നിന്നും
 The Story of the PING Program by its author, Mike Muuss
 ping man page
 An overview of ping from Linux Journal Magazine
 Ping Wiki - Links to hundreds of web based ping pages, sorted by Autonomous System Number.
 ICMP (Ping) Sequence Diagram  (PDF) — Sequence diagram describes ping, trace route and other ICMP operations.
 Pingit  Slightly more usefull than standard ping, Free, Commandline, win32, Ping utility.
 HPing  Command-line oriented TCP/IP packet assembler/analyzer
 Web Ping  Web based ping program

വർഗ്ഗം:കമ്പ്യൂട്ടർ ശൃംഖലകൾ