Socket

Socket bat sare-zerbitzuak erabiltzeko komunikazio-puntu bat da. Bi prozesuen arteko datuen komunikazio-kanalaren abstrakzio bat dela esan daiteke.

Era orokorragoan, Socketak sarea erabiltzen duten aplikazio informatikoek TCP/IP sare-zerbitzuak eskuratzeko duten interfaze bat (edo API) dira. Interfaze hori Unix BSD sistema eragilerako sortu zuten, eta gaur egun erabilpen orokorreko beste sistema eragile guztietarako ere inplementatu egin da.

Azalpen zehatza 

Interneteko socket bat horrela dago osatua (TCP/UDP erabiltzen bada):

 Protokoloa (TCP, UDP)
 IP helbide lokala
 Portu lokala
 Urrutiko IP helbidea
 Urrutiko portua

Sistema eragileek socketak prozesuekin eta garraio-mailarekin konbinatzen dituzte, horrela, prozesuak urrutiko helbide bateko beste prozesuekin komunikatu ahal izango dira.

Orokorrean socketak TCP/IP arkitekturarako daude implementatuak, baina beste sare-arkitekturetarako ere implementatu daitezke, IBM-ren SNA-rako adibidez.

Interneteko bi socket-mota:
 SOCK-STREAM (TCP protokoloa erabiliko du): konexiora zuzendutako socketa izango da eta normalean komunikazioa fidagarria eta ordenatua izango da
 SOCK-DGRAM (UDP protokoloa erabiliko du): konexiora ez zuzendutako socketa izando da,komunikazioa datagramari orientatuta izango da eta ez da fidagarria izango,ezta ordenatua ere.

Gehien ezagutzen den beste interfaze bat TLI da, baina, socketarekin konparatuta, bere erabilpena oso txikia da.

Socketen funtzio garrantzitsuenak 

socket(): komunikazio-puntu bat sortuko du

bind(): Socketa eta helbidea lortuko ditu

getsockname(): Socket baten helbidea lortuko du

listen(): socketa konexio-ezarpen pasiborako prestatu

accept(): konexio-ezarpen pasiboa

conecct(): konexio-ezarpen aktiboa

close(): socketa deuseztatu

send(): datuak bidali sciket baten bidez

receive(): datuak jaso socket baten bidez

Socket liburutegiak 

TCP eta UDP protokoloak erabiltzen dituzten komunikazioen liburutegiak:

 SolarSockets (https://web.archive.org/web/20060720112227/http://solarsockets.solar-opensource.com/)

 SDL NET (http://www.libsdl.org/projects/SDL_net)

 C++ Sockets Library (http://www.alhem.net/Sockets/index_spanish.html)

 GNU Common C++ (https://web.archive.org/web/20070416075333/http://www.gnu.org/software/commoncpp/docs/refman/html/_sample_socket_port_8cpp-example.html)

 DirectX - DirectPlay (http://www.microsoft.com)

Ikus, gainera 

 TCP/IP

Erreferentziak 

 Andrew S. Tanenbaum, Konputagailu-sareak (3. argitaldia 2002), EHU arg.
 J.M.Rivadeneyra, TCP/IP Sareak (2.argitaldia 2004)

Sare informatikoak