Despabilando la MonoNeurona::Internet es de todos [Inicio] [Regresar]
Hacktivismo \ Introducción al protocolo TCP
Hacktivismo
Introducción al protocolo TCP

Este artículo ha sido consultado en 735 ocasiones.

por GuyBrush


Introducción

  El TCP (Protocolo de Control de Transmision) se diseño para proporcionar una
corriente de bytes confiable a traves de una interred no confiable.
Una  interred es diferente de una sola red porque las distintas partes pueden
tener  topologias,  anchos de banda,  retardos,  tamaños de  paquete y  otros
parametros con grandes diferencias. Se diseño el TCP para adaptarse dinamica-
mente a las  propiedades de la  interred y para ser robusto ante muchos tipos
de fallas.

  Cada maquina que reconoce el TCP tiene una entidad de transporte TCP,ya sea
un proceso de usuario o una parte del nucleo que maneja las corrientes TCP y
tiene interfaz con la capa IP. Una entidad TCP acepta corrientes de datos de
usuario de los procesos locales, los divide en partes que no exceden 64 K

( en la practica, generalmente de unos 1500 bytes ), y envia cada parte como
datagrama  IP independiente.  Cuando llegan a una maquina  datagramas IP que
contienen  datos TCP,  son entregados a la entidad TCP,  que reconstruye las
corrientes originales de bytes.

  La capa IP  no ofrece ninguna garantia de que los datagramas  se entregaran
adecuadamente, por lo que es responsabilidad del TCP terminar de temporizar y
retransmitirlos segun se necesite.Los datagramas que si llegan pueden hacerlo
desordenadamente;tambien es responsabilidad del TCP reensamblarlos en mensajes
con la secuencia adecuada. En resumen, el  TCP debe proveer  la confiabilidad
que la mayoria de los usuarios quiere y que el IP no proporciona.



Modelo de servicio TCP

 El servicio TCP se obtiene haciendo que tanto el transmisor como el receptor
creen puntos terminales,  llamados sockets.  Cada socket tiene un numero
(direccion) de socket que consiste en la direccion IP del host y en un numero
de 16 bits local a ese host,llamado puerto.Puerto es el nombre TCP de un TSAP

Para obtenerse el servicio TCP, debe establecerse explicitamente una conexion
entre un socket de la maquina transmisora y un socket de la maquina receptora.
Las llamadas de socket son las siguientes:

* SOCKET   (Enchufar)     * Crea un nuevo punto terminal de comunicacion.
* BIND     (Ligar)        * Conecta una direccion local a un socket.
* LISTEN   (Escuchar)     * Anuncia la disposicion de aceptar conexiones;
                            indica tamaño de cola.
* ACCEPT   (Aceptar)      * Bloquea al invocador hasta la llegada de un
                            intento de conexion.
* CONNECT  (Conectar)     * Intenta activamente establecer una conexion.
* SEND     (Enviar)       * Envia datos a traves de la conexion.
* RECEIVE  (Recibir)      * Recibe datos de la conexion.
* CLOSE    (Cerrar)       * Libera la conexion.


Puede usarse un socket para varias conexiones al mismo tiempo. En otras
palabras, dos o mas conexiones pueden terminar en el mismo socket.
Las conexiones se identifican mediante los identificadores de ambas terminales,
es decir (socket1, socket2). No se usan numeros de circuito virtual ni ningun
otro identificador.


Los numeros de puerto por debajo del 256 se llaman puertos bien conocidos y se
reservan para servicios estandar. Por ejemplo, el FTP usa el puerto 21,
el TELNET el 23, etc.

Todas las conexiones TCP son duplex integral y punto a punto. Duplex integral
significa que el trafico puede ir en ambos sentidos al mismo tiempo.  Punto a
punto significa que cada conexion tiene exactamente dos puntos terminales.
El TCP no reconoce la multitransmision ni la difusion.

Una conexion TCP es una corriente de bytes, no una corriente de mensajes.
Los limites de mensaje no se conservan de extremo a extremo. Por ejemplo,
si el proceso transmisor hace cuatro escrituras de 512 bytes en una corriente
TCP, estos datos pueden entregarse al proceso receptor como cuatro bloques de
512 bytes, dos bloques de 1024 byte, un bloque de 2048 bytes, o de algun otro
modo. No hay manera de que el receptor detecte las unidades en las que se
escribieron los datos.

Cuando una aplicacion pasa datos al TCP, el TCP puede enviarlos de inmediato
o guardarlos en un buffer ( con el fin de reunir una cantidad mayor de
informacion para enviarla junta ), a discrecion propia...


Última actualización: 2007-04-29 10:56:58-05



ir arriba
The Queen is here Mozilla Firefox The Best DataBase CakePHP Framework CSS GNU Hacker