Ensayos

Páginas: 25 (6225 palabras) Publicado: 15 de junio de 2012
Tutorial
Programación de sockets en lenguaje C.
Indice.
1. Notas del autor
2. ¿Qué es un socket?
3. Dominios de comunicación.
4. Tipos de socket en AF_INET.
5. Byte order.
6. Creación de un socket.
7. Función bind().
8. Estructuras
9. Otras funciones utilizadas.
10. Asignación de valores a una variable tipo sockaddr_in.
11. Pasos para establecer laconexión.
12. Descripción de las funciones
13. Ejempo cliente-servidor simple.
14. Ejemplo cliente -servidor concurrente.
15. Bloqueo.
16. Función select()
17. Ejemplos.
18. Bibliografía.
19. Copyright.

1 - Notas del autor.
Aún se están corrigiendo errores, incrementando el contenido
y la cantidad de ejemplos. Ultima modificación 20/4/2000.
Hice todos losesfuersos para que este tutorial no contenga errores, pero
legalmente no me responsabilizo por cualquier daño ocasionado por
este tutorial o por cualquier parte del mismo.
Este tutorial aún cotinúa corrigiéndose y aumentando
su contenido. Le aconsejo visitar su sitio web oficial para verificar si
fue modificado. 

El sitio oficial es :http://www.starlinux.net
1.1 - Agradecimientos ( por orden deaparición ).
Nov. 1999
Daniel Sacco.
Proporcionó los gráficos de las sesiones Nros. 13 y
14.
2/1/2000
Raul Cejas.
Se agregaron las secciones Nros. 15 y 16 para responder sus preguntas.

2 - ¿Qué es un socket?
* Es una interfaz de entrada-salida de datos que permite la intercomunicación
entre procesos.
* Los procesos pueden estar ejecutándose en el mismo o en distintos
sistemas,unidos mediante una red.
2.1 - La analogía con los teléfonos.
Los sockets permiten la comunicación entre procesos, como los teléfonos
permiten la comunicación entre las personas.

3 - Dominios de comunicación.
Los sockets se crean dentro de un dominio de comunicación, igual
que un archivo se crea dentro de un filesystem.
El dominio de comunicación nos dice donde se encuentran los procesosque se van a intercomunicar. 

Si los procesos están en el mismo sistema, el dominio de comunicación
será AF_UNIX, si los procesos están en distintos sistemas
y estos se hallan unidos mediante una red TCP/IP, el dominio de comunicación
será AF_INET.
Cabe aclarar que existen otros dominios de comunicación.
Los sockets no se han diseñado solamente para TCP/IP. La idea original
fue que seusase la misma interfaz también para distintas familias
de protocolos.
En esta introducción solo trataremos el dominio AF_INET.
Algunos dominios:
* AF_INET ( unidos mediante una red TCP/IP).
* AF_UNIX (en el mismo sistema).
* Otros dominios.

4 - Tipos de sockets en el dominio AF_INET.
* Sockets Stream.
* Sockets Datagram.
* Sockets Raw.

Figura 4-1.
SocketsStream son los más utilizados, hacen uso del protocolo
TCP ( figura 4-1), el cual nos provee un flujo de datos bidireccional, secuenciado,
sin duplicación de paquetes y libre de errores. 

La especificación del protocolo TCP se puede leer en la RFC-793 .
Sockets Datagram hacen uso del protocolo UDP, el cual nos provee
un flujo de datos bidireccional, pero los paquetes pueden llegar fuera desecuencia, pueden no llegar o contener errores. 

Por lo tanto el proceso que recibe los datos debe realizar resecuencimiento,
eliminar duplicados y asegurar la confiabilidad. 

Se llaman también sockets sin conexión, porque no hay que
mantener una conexión activa, como en el caso de sockets stream. 

Son utilizados para transferencia de información paquete por paquete.
Ejemplo: dns, tftp, bootp,etc. 

Entoces podríiamos preguntar, Cómo hacen estos programas para
funcionar si pueden perder datos ? 

Ellos implementan un protocolo encima de UDP que realiza control de errores.

La especificacion del protocolo UDP se puede leer en la RFC-768.
Sockets raw no son para el usuario más común, son
provistos principalmente para aquellos interesados en desarrollar nuevos
protocolos de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Ensayo de el Ensayo
  • ensayo de ensayo
  • Ensayo Del Ensayo
  • Ensayo de un ensayo
  • Ensayemos un ensayo
  • ensayo del ensayo
  • Ensayo del ensayo
  • Ensayo del ensayo

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS