Guia breu per a la programació Socket per a xarxes d'ordinadors TCP / IP

La programació de sockets connecta equips de servidor i client

La programació de sockets és la tecnologia fonamental de les comunicacions en xarxes TCP / IP . Un socket és un punt final d'un enllaç bidireccional entre dos programes que s'executen en una xarxa. El socket proporciona un punt final de comunicació bidireccional per enviar i rebre dades amb un altre socket. Les connexions de sockets normalment s'executen entre dos equips diferents en una xarxa d'àrea local ( LAN ) oa través d'Internet, però també es poden utilitzar per a la comunicació interprocessos en una única computadora.

Endolls i adreces

Els punts finals de sock en xarxes TCP / IP tenen una adreça única que és la combinació d'una adreça IP i un número de port TCP / IP. Com que el sòcol està enllaçat a un número de port específic, la capa TCP pot identificar l'aplicació que hauria de rebre les dades que se li han enviat. Quan creeu un nou sòcol, la biblioteca del sòcol genera automàticament un número de port únic en aquest dispositiu. El programador també pot especificar els números de port en situacions específiques.

Com funcionen els sockets del servidor

Normalment, un servidor s'executa en una sola computadora i té un sòcol que està enllaçat a un port específic. El servidor espera una altra computadora per fer una sol·licitud de connexió. L'equip client coneix el nom de l'amfitrió de l'ordinador del servidor i el número de port en què el servidor està escoltant. L'equip client s'identifica i, si tot va bé, el servidor permet connectar l'equip client.

Biblioteques de sòcol

En comptes de codificar directament a les API de sòcol de baix nivell, els programadors de xarxa normalment utilitzen biblioteques de sòcol. Dues biblioteques de sòcol comunament utilitzades són Berkeley Sockets per a sistemes Linux / Unix i sistemes WinSock per a Windows.

Una biblioteca de socket proporciona un conjunt de funcions d'API similars a les que utilitzen els programadors per treballar amb fitxers, com open (), read (), write () i close ().