കമ്പ്യൂട്ടർ നെറ്റ്വർക്കിംഗിനുള്ള സോക്കറ്റ് പ്രോഗ്രാമിംഗിന്റെ ഒരു അവലോകനം

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

ഇന്റർനെറ്റ് സോഫ്റ്റ്വെയറിന്റെ വികസനം എന്ന മറ്റൊരു സവിശേഷതയെപ്പോലെ ശബ്ദമുണ്ടാക്കാമെങ്കിലും, വെബിൽ വളരെ മുമ്പേ സോക്കറ്റ് സാങ്കേതികവിദ്യ നിലനിന്നിരുന്നു. ഇന്നത്തെ ഏറ്റവും പ്രചാരമുള്ള നെറ്റ്വർക്ക് സോഫ്റ്റ്വെയർ ആപ്ലിക്കേഷനുകൾ സോക്കറ്റുകൾ അനുസരിച്ചാണ്.

നിങ്ങളുടെ നെറ്റ്വർക്കിന് എന്താണ് സോക്കറ്റുകൾ ചെയ്യാൻ കഴിയുക

ഒരു സോക്കറ്റ് കൃത്യമായി രണ്ട് സോഫ്റ്റ്വെയറുകളിലായി (ഒരു പോയിന്റ് ടു പോയിന്റ് കണക്ഷൻ എന്ന് വിളിക്കപ്പെടുന്ന) തമ്മിൽ ഒരൊറ്റ കണക്ഷൻ പ്രതിനിധീകരിക്കുന്നു. ഒന്നിലധികം സോക്കറ്റുകൾ ഉപയോഗിച്ചുകൊണ്ട് ക്ലസ്റ്റുകൾ / സെർവറുകൾ അല്ലെങ്കിൽ വിതരണ സിസ്റ്റങ്ങൾ എന്നിവയ്ക്ക് രണ്ട് തരത്തിലും കൂടുതൽ ആശയവിനിമയം നടത്താനാകും. ഉദാഹരണത്തിനു്, പല വെബ് ബ്രൌസറുകളും ഒറ്റ സെർവറുപയോഗിച്ച് ഒരേ വെബ് സെർവറിലൂടെ സെർവറിൽ ഉണ്ടാക്കുന്ന സോക്കറ്റുകൾ ഉപയോഗിച്ച് ആശയവിനിമയം നടത്താം.

സോക്കറ്റ് അടിസ്ഥാനമാക്കിയുള്ള സോഫ്റ്റ്വെയർ സാധാരണയായി രണ്ട് വ്യത്യസ്ത കമ്പ്യൂട്ടറുകളിൽ പ്രവർത്തിക്കുന്നു, എന്നാൽ ഒരു കമ്പ്യൂട്ടറിൽ പ്രാദേശികമായി ( ഇന്റർപ്രോസസ് ) ആശയവിനിമയത്തിന് സോക്കറ്റുകൾ ഉപയോഗിക്കാനാകും. സോക്കറ്റുകൾ ദ്വിദിനമാണ് , അതായത്, കണക്ഷന്റെ ഇരുവശവും ഡാറ്റ അയയ്ക്കുന്നതും സ്വീകരിക്കുന്നതും പ്രാപ്തമാണ്. ചിലപ്പോൾ ആശയവിനിമയം ആരംഭിക്കുന്ന ഒരു പ്രയോഗം "ക്ലയന്റ്" എന്നും "സെർവർ" എന്നും വിളിക്കപ്പെടുന്നു, എന്നാൽ ഈ പദങ്ങൾ പിയർ നെറ്റ്വർക്കിംഗുമായി ആശയക്കുഴപ്പം സൃഷ്ടിക്കുന്നു, സാധാരണയായി അവ ഒഴിവാക്കണം.

സോക്കറ്റ് API- കളും ലൈബ്രറികളും

ഇൻറർനെറ്റിൽ നിലവാരമുള്ള ആപ്ലിക്കേഷൻ പ്രോഗ്രാമിംഗ് ഇന്റർഫേസുകൾ (എപിഐ) നടപ്പിലാക്കുന്ന നിരവധി ലൈബ്രറികളും ഉണ്ട്. ആദ്യത്തെ മുഖ്യധാരാ പാക്കേജ് - യുണിക്സ് സിസ്റ്റങ്ങളിൽ ബെർക്ലി സോക്കറ്റ് ലൈബ്രറി ഇപ്പോഴും വ്യാപകമാണ്. മൈക്രോസോഫ്റ്റ് ഓപ്പറേറ്റിങ് സിസ്റ്റത്തിനുള്ള വിൻഡോസ് സോക്കറ്റ്സ് (വിൻസോക്ക്) ലൈബ്രറിയാണ് മറ്റൊരു പൊതു API. മറ്റ് കമ്പ്യൂട്ടർ ടെക്നോളജികളുമായി ബന്ധപ്പെട്ട, സോക്കറ്റ് API കൾ തികച്ചും പ്രായപൂർത്തിയായവയാണ്: 1982 മുതൽ 1993 മുതൽ ബെർക്ക്ലി സാകേകൾ മുതൽ വിൻസെക്ക് ഉപയോഗത്തിലാണ്.

സോക്കറ്റ് API കൾ താരതമ്യേന ചെറുതും ലളിതവുമാണ്. റീഡ് () , എഴുതുക () , close () തുടങ്ങിയ ഫയൽ ഇൻപുട്ട് / . ഉപയോഗിയ്ക്കുന്ന പ്രോഗ്രാമിങ് ഭാഷയും സോക്കറ്റ് ലൈബ്രറിയും അനുസരിച്ചാണ് യഥാർത്ഥ പ്രവർത്തനം വിളിക്കേണ്ടത്.

സോക്കറ്റ് ഇന്റർഫെയിസ് രീതികൾ

സോക്കറ്റ് ഇന്റർഫെയിസുകൾ മൂന്നു് വിഭാഗങ്ങളായി വേർതിരിച്ചിരിയ്ക്കുന്നു:

  • സ്ട്രീം സോക്കറ്റുകൾ, ഏറ്റവും പൊതുവായ ടൈപ്പ്, രണ്ട് ആശയവിനിമയ കക്ഷികൾ ആദ്യം ഒരു സോക്കറ്റ് കണക്ഷൻ സ്ഥാപിക്കണം, ആ കണക്ഷൻ വഴി കടന്നു പോകുന്ന ഏതെങ്കിലും ഡാറ്റ അത് അയച്ച അതേ ക്രമത്തിൽ എത്തിച്ചേരുന്നതിന് ഉറപ്പ് നൽകും - കണക്ഷൻ ഓറിയെന്റഡ് പ്രോഗ്രാമിങ് മാതൃക.
  • ഡാറ്റാാഗാം സോക്കറ്റുകൾ "കണക്ഷൻ കുറവ്" സെമന്റിക്കുകൾ വാഗ്ദാനം ചെയ്യുന്നു. ഡാറ്റാഗ്രാമുകൾ ഉപയോഗിച്ച്, സ്ട്രീംസ് പോലെ സ്പഷ്ടമാക്കുന്നതിനേക്കാൾ കണക്ഷനുകൾ ഉൾപ്പെടുത്തുന്നു. ഒന്നിലധികം പാർട്ടികൾ ആവശ്യമുള്ള datagrams അയക്കുകയും മറ്റേയ്ക്കായി പ്രതികരിക്കുന്നതിന് കാത്തിരിക്കുകയും ചെയ്യുന്നു; സന്ദേശങ്ങൾ ട്രാൻസ്മിഷൻ അല്ലെങ്കിൽ ക്രമത്തിൽ നിന്നും ലഭിച്ച നഷ്ടപ്പെടാം, പക്ഷെ ഇത് പ്രശ്നങ്ങളുടെ ഉത്തരവാദിത്തമാണ്, കൂടാതെ ഈ പ്രശ്നങ്ങൾ കൈകാര്യം ചെയ്യാൻ സോക്കറ്റുകളല്ല. ഡാറ്റാക്രം സോക്കറ്റുകൾ നടപ്പിലാക്കുന്നത്, ചില സാഹചര്യങ്ങളിൽ അവരുടെ ഉപയോഗം ന്യായീകരിച്ച്, സ്ട്രീം സോക്കറ്റുകൾ ഉപയോഗിക്കുന്നതിനെ അപേക്ഷിച്ച് പ്രകടന ബൂസ്റ്റും അധിക ഫ്ലെക്സിബിലിറ്റിയും നൽകുന്നു.
  • മൂന്നാം തരം സോക്കറ്റ് - അസംസ്കൃത സോക്കറ്റ് - ടിസിപി , യുഡിപി പോലുള്ള സാധാരണ പ്രോട്ടോക്കോളുകൾക്കുള്ള ലൈബ്രറിയുടെ അന്തർനിർമ്മിത പിന്തുണ ബൈപാസ് ചെയ്യുന്നു. കസ്റ്റം കുറഞ്ഞ-ലെവൽ പ്രോട്ടോക്കോൾ ഡവലപ്മെന്റിനായി റോ സോക്കറ്റുകൾ ഉപയോഗിക്കുന്നു.

നെറ്റ്വർക്ക് പ്രോട്ടോക്കോളുകളിൽ സോക്കറ്റ് പിന്തുണ

ആധുനിക നെറ്റ്വർക്ക് സോക്കറ്റുകൾ സാധാരണയായി ഇന്റർനെറ്റ് പ്രോട്ടോക്കോളുകളുമായി സംയോജിച്ച് ഉപയോഗിക്കുന്നു - IP, TCP, UDP. ഇന്റർനെറ്റ് പ്രോട്ടോക്കോൾ വേണ്ടി സോക്കറ്റുകൾ നടപ്പിലാക്കുന്ന ലൈബ്രറികൾ സ്ട്രീം ചെയ്യാനായി TCP, datagrams- ക്ക് UDP, കൂടാതെ റോ സോക്കറ്റുകൾക്ക് തന്നെ IP എന്നിവ ഉപയോഗിക്കുന്നു.

ഇന്റർനെറ്റിൽ ആശയവിനിമയം നടത്താൻ, ഐപി സോക്കറ്റ് ലൈബ്രറികൾ പ്രത്യേക കമ്പ്യൂട്ടറുകൾ തിരിച്ചറിയാൻ ഐപി വിലാസം ഉപയോഗിക്കുന്നു. ഇന്റർനെറ്റ് സേവനത്തിന്റെ പല ഭാഗങ്ങളും നാമകരണ സേവനങ്ങളോടെ പ്രവർത്തിക്കുന്നു, അങ്ങനെ ഉപയോക്താക്കളും സോക്കറ്റ് പ്രോഗ്രാമീയർമാരും കമ്പ്യൂട്ടറുകൾക്ക് പേര് ഉപയോഗിച്ച് ( ഉദാഹരണത്തിന് , "thiscomputer.wireless.about.com") വിലാസത്തിൽ ( ഉദാ : 208.185.127.40) പ്രവർത്തിപ്പിക്കാം. സ്ട്രീം ആന്റ് ഡാറ്റാഗ്രാം സോക്കറ്റുകൾ ഒന്നിൽ നിന്നും ഒന്നിലധികം ആപ്ലിക്കേഷനുകളെ വേർതിരിച്ചറിയാൻ ഐപി പോർട്ട് നമ്പറുകൾ ഉപയോഗിക്കുന്നു. ഉദാഹരണത്തിന്, വെബ് സെർവറുകളിൽ സോക്കറ്റ് ആശയവിനിമയങ്ങൾക്ക് സ്ഥിരമായി പോർട്ട് 80 ഉപയോഗിക്കുന്നതിന് ഇന്റർനെറ്റിലെ വെബ് ബ്രൌസറുകൾക്ക് അറിയാം.