You are on page 1of 3

TCP/IP La Capa de Aplicacin

Sockets
Socket designa un concepto abstracto por el cual dos programas (posiblemente situados en computadoras
distintas) pueden intercambiar cualquier fluo de datos! generalmente de manera fiable " ordenada#
Para que dos programas puedan comunicarse entre s$ es necesario que se cumplan ciertos requisitos%
&ue un programa sea capa' de locali'ar al otro#
&ue ambos programas sean capaces de intercambiarse cualquier secuencia de octetos! es decir!
datos rele(antes a su finalidad#
Para ello son necesarios los dos recursos que originan el concepto de socket%
)n par de direcciones del protocolo de red (direccin IP! si se utili'a el protocolo TCP/IP)! que
identifican la computadora de origen " la remota#
)n par de n*meros de puerto! que identifican a un programa dentro de cada computadora#
Los sockets permiten implementar una arquitectura cliente+ser(idor# La comunicacin debe ser iniciada por
uno de los programas que se denomina programa ,cliente,# -l segundo programa espera a que otro inicie la
comunicacin! por este moti(o se denomina programa ,ser(idor,#
Los sockets se implementan mediante procesos o .ilos e/istente en la m0quina cliente " en la m0quina
ser(idora! que sir(e en *ltima instancia para que el programa ser(idor " el cliente lean " escriban la
informacin# -sta informacin ser0 la transmitida por las diferentes capas de red#
Esquema bsico de funcionamiento.
Tengamos en cuenta las siguientes terminologas:
)n socket es un tipo especial de identificador de arc.i(o (file handle)! que es utili'ado por un
proceso para solicitar ser(icios de red del sistema operati(o#
)na direccin de socket esta compuesto por tres partes#
<protocolo, direccion-local, puerto-local>

Por eemplo! en el protocolo TCP / IP ((ersin 1)%
<tcp, 192.168.14.234, 88>
Se llama conversacin al enlace de comunicacin entre dos procesos#
)na asociacin de 2 componentes especifica completamente los dos procesos que comprenden
una cone/in%
<protocolo, direccion-local, puerto-local, direccion-remota, puerto-remoto>
-n la suite TCP / IP ((ersin 1)! el siguiente podr$a ser una asociacin (0lida%
<tcp, 192.168.14.234, 1!, 192.168.44, 22>
Tipos de "oc#ets
"oc#ets de $lu%o &"tream soc#ets'
-ste tipo de sockets proporcionan un ser(icio confiable! orientado a cone/in! tal como TCP# Los datos se
en($an sin errores o duplicaciones! " se recibe en el mismo orden en el que se en($a# -l control de fluo esta
desarrollado para e(itar las saturacin de datos# 3o .a" l$mites impuestos a los datos intercambiados! que
se consideran una secuencia de b"tes# )n eemplo de una aplicacin que utili'a sockets de fluo es la
transferencia de arc.i(os (4TP)#
"oc#ets de (atagrama
-stos sockets definen un ser(icio no orientado a la cone/in! como )5P# Los datagramas se en($an como
paquetes independientes# -l ser(icio no garanti'a el 6/ito en la entrega de los paquetes! los datos pueden
perderse o duplicarse! " los datagramas pueden llegar fuera de orden# 3o se lle(an a cabo el proceso de
fragmenacin " reensamblae de paquetes# )n eemplo de una aplicacin que utili'a sockets datagrama es
el Ser(icio de 7esolucin de 3ombres (53S)
)*+s para desarrollo de soc#ets
)na interfa' de programacin de aplicaciones (API) permite a los desarrolladores de aplicaciones que
puedan .acer uso de los ser(icios TCP/IP# Las siguientes secciones proporcionan una (isin general de las
APIs m0s comumes para las aplicaciones TCP/IP#
La interfa' de socket es una de (arias APIs para la comunicacin con los protocolos# 5ise8ado para ser un
interfa' gen6rica de programacin de comunicacin! fue introducido por primera (e' por el sistema 1#9:S5
)3I;+based# Aunque la API de sockets de IP(1 nunca fue estandari'ado! se .a con(ertido en un standard
de facto! " el 74C <1=< fue creado para actuali'ar la API para IP(># )na programacin de Sockets de IP(>
m0s a(an'ada se pueden encontrar en el 74C <219#
,as )*+s de "oc#ets proporcionan -unciones .ue permiten a las aplicaciones reali/ar las siguientes
acciones:
S?C@-T% Iniciar un socket (Cliente/Servidor)
:I35% -nla'ar un socket a una direccin de puerto (Servidor)
LIST-3% -scuc.ar en un socket por cone/iones entrantes (Servidor)
ACC-PT% Aceptar una cone/in entrante (Servidor)
C?33-CT% Conectarse a un ser(idor (Cliente)
S-35/7-C-IA-% -n(iar " recibir datos a tra(6s de un socket (Cliente / Servidor)
CL?S-% Cerrar un socket (Cliente / Servidor)
Bibliografa
I:B 7ed:ooks + TCP/IP Tutorial and Tec.nical ?(er(ieC
Curricula CC3AD! Academia CISC?
7edes de Computadoras! AndreC S# Tanenbaum! 1ta# -dicin
Comunicaciones#"#7edes#de#Computadores! E# Stallings! >ta -dicin
"itios
.ttp%//CCC#Cikipedia#org

You might also like