Usa ka Overview sa Socket Programming alang sa Computer Networking

Ang usa ka socket mao ang usa sa mga labing mahinungdanon nga mga teknolohiya sa programming sa computer network. Gitugutan sa mga socket ang mga aplikasyon sa software sa network nga makig-istorya gamit ang standard nga mga mekanismo nga gibutang sa mga hardware sa network ug mga operating system.

Bisan og kini daw sama sa laing bahin sa pagpalambo sa software sa Internet, ang teknolohiya sa socket gigugol sa wala pa ang Web. Ug, daghan sa labing popular nga mga aplikasyon sa software sa network nagsalig sa mga socket.

Unsa ang Mahimo sa Mga Sapatos Alang sa Imong Network

Ang usa ka socket nagrepresentar sa usa ka koneksyon tali sa eksaktong duha ka piraso sa software (usa ka gitawag nga point-to-point koneksyon). Kapin sa duha ka mga piraso sa software ang makapakigsulti sa kliyente / server o sa mga sistema sa pagpang-apud-apod pinaagi sa paggamit sa daghang mga socket. Pananglitan, daghang Web browsers dungan nga makakomunikar sa usa ka Web server pinaagi sa usa ka grupo sa mga socket nga gihimo sa server.

Ang Socket-based software sagad modagan sa duha ka magkalahi nga mga computer sa network, apan ang mga socket mahimo usab nga gamiton aron makomunikar sa lokal ( interprocess ) sa usa ka computer. Ang mga socket maoy bidirectional , nga nagpasabot nga ang duha ka kilid sa koneksyon makahimo sa pagpadala ug pagdawat sa datos. Usahay ang usa ka aplikasyon nga nagpasiugda sa komunikasyon gitawag nga "kliyente" ug ang lain nga paggamit sa "server," apan kini nga terminolohiya mosangpot sa kalibog sa peer to peer networking ug sa kasagaran malikayan.

Mga Socket API ug mga Librarya

Ang ubay-ubay nga mga librarya nga nagpatuman sa standard nga mga interface sa programming application (APIs) anaa sa Internet. Ang unang mainstream nga pakete - ang Berkeley Socket Library sa gihapon gigamit sa UNIX nga mga sistema. Laing komon kaayo nga API mao ang Windows Sockets (WinSock) library alang sa mga operating system sa Microsoft. Uyon sa uban pang mga teknolohiya sa computer, ang mga API sa hagdanan nagkahingkod: Ang WinSock gigamit sukad pa sa 1993 ug sa mga socket sa Berkeley sukad sa 1982.

Ang socket APIs medyo gamay ug yano. Daghan sa mga gimbuhaton susama sa mga gigamit sa mga pag-andam sa input / output sa file sama sa read () , write () . Ang aktwal nga buluhaton nga tawag nga gigamit depende sa programming language ug socket library nga gipili.

Socket Interface Types

Ang mga interface sa Socket mahimong bahinon sa tulo ka mga kategoriya:

  • Ang mga socket sa stream , ang labing kasagaran nga matang, nagkinahanglan nga ang duha ka mga partido sa komunikasyon una nga magtukod og koneksyon sa socket, diin ang bisan unsang datos nga gipasa sa maong koneksyon ang gigarantiyahan nga moabut sa sama nga han-ay kung diin kini gipadala - gitawag nga koneksyon nga oriented programming modelo.
  • Ang mga socket sa datagram nagtanyag og "dili kaayo koneksyon" semantiko. Uban sa mga datagrams, ang mga koneksyon mga pahayag nga dili hayag sama sa mga sapa. Ang bisan kinsa nga partido nagpadala lamang og mga datagrams nga gikinahanglan ug nagpaabut sa lain nga pagtubag; ang mga mensahe mahimong mawala sa pagpadala o nadawat nga wala, apan kini mao ang responsibilidad sa aplikasyon ug dili ang mga socket sa pag-atubang niini nga mga problema. Ang pagpatuman sa mga datagram sockets makahatag sa pipila ka mga aplikasyon sa usa ka performance boost ug dugang nga flexibility kung itandi sa paggamit sa mga socket sa stream, nga nagpamatarong sa ilang paggamit sa pipila ka mga sitwasyon.
  • Ang ikatlo nga matang sa socket - ang hilaw nga socket - dili maabli ang suporta sa library sa mga standard protocol sama sa TCP ug UDP . Ang mga socket sa basura gigamit alang sa custom nga pag-usbaw sa protocol sa ubos nga lebel.

Socket Support sa Network Protocols

Ang modernong mga socket sa network sagad gigamit inubanan sa mga protocol sa Internet - IP, TCP, ug UDP. Ang mga librarya nga nagpatuman sa mga tudlo alang sa Internet Protocol naggamit sa TCP alang sa mga sapa, UDP alang sa mga datagrams, ug IP mismo alang sa mga hilaw nga socket.

Aron makig-estorya sa Internet, ang mga library sa IP socket naggamit sa IP address sa pag-ila sa mga partikular nga kompyuter. Daghang mga bahin sa Internet ang nagtrabaho uban sa mga serbisyo sa pagngalan, aron ang mga programmer sa tiggamit ug socket mahimo nga magtrabaho sa mga computer pinaagi sa ngalan ( eg , "thiscomputer.wireless.about.com") imbes sa address ( eg , 208.185.127.40). Ang mga stream ug datagram sockets usab naggamit sa mga IP port numbers aron masayran ang daghang mga aplikasyon gikan sa usag usa. Pananglitan, ang Web browsers sa Internet nahibal-an nga mogamit sa port 80 isip default alang sa mga komunikasyon sa mga socket sa Web server.