Inicio > Redes > El Protocolo TCP.

El Protocolo TCP.

Lunes, 12 de Enero de 2009 Dejar un comentario Ir a comentarios

tcp_segmentEste protocolo esta en la capa de transporte, por lo tanto muchos programas dentro de una red de ordenadores pueden utilizarlo para comunicarse entre si mediante el envi贸 de un flujo de datos. Es en esta parte de la comunicaci贸n donde se asegura que los paquetes llegue sin errores y ordenados a la capa de aplicaci贸n. Tambi茅n proporciona un mecanismo para distinguir distintas aplicaciones dentro de una misma maquina. Es lo que conocemos como puerto.La informaci贸n se fracciona en datagramas de tama帽o mas manejable para que luego sean enviados a trav茅s del protocolo TCP como partes independientes, de manera segura. Para conseguir esto el TCP a帽ade a cada datagrama una cabecera.

.

Esta cabecera contiene una serie de campos obligatorios que se utilizaran para asegurar en el destino que la info. llego correctamente y para reconstruir la informaci贸n original de manera ordenada, adem谩s podemos incluir de manera adicional hasta 132 bits. Este tama帽o debe de ser m煤ltiplo de 32 bits a si que hay que rellenarlo de ceros para completar el tama帽o requerido.

Campos de los datagramas TCP:

  1. Puerto de origen: 16 bits. Hace falta asignar un puerto a cada ordenador para distinguirlos.
  2. Puerto destino: 16 bits: lo mismo que en el origen. Se suelen usar puertos est谩ndar por ejemplo el 21 para el ftp o el 23 para el Telnet.
  3. Numero de secuencia: 32 bits: indica el numero del primer byte de datos del segmento TCP. Con esto se organizan los paquetes en el destino y se eliminan los duplicados.
  4. Numero de confirmaci贸n: 32 bits: si el flag ACK esta activo este campo contiene el valor del siguiente numero de secuencia que el sistema espera recibir. Siempre tendr谩 un valor cuando la conexi贸n se haya establecido.
  5. Flags: 6 bits: determina el funcionamiento de la conexi贸n TCP. Tipos:
    • URG: flag de urgencia. Indica que el campo urgent pointer tiene info. significativa.
    • ACK: reconoce una recepci贸n correcta de datos indicando al campo de n煤mero de confirmaci贸n que es significativo.
    • PSH: funci贸n push que indica al receptor que ha de pasar los datos a la capa de aplicaci贸n r谩pidamente.
    • RST: indica reinicio de la conexi贸n.
    • SYN: indica que se trata de un paquete que se utiliza al inicio de sesi贸n para sincronizar los n煤meros de secuencia.
    • Fin: indica que no existen m谩s datos y se comienza la negociaci贸n del fin de la conexi贸n.
  6. Ventana: 16 bits: especifica el numero de bytes de datos que pueden ser recibidos empezando por el indicado en le campo numero de confirmaci贸n.
  7. Checksum: 16 bits: se utiliza para la integridad de la transmisi贸n.
  8. Urgent pointer: 16 bits: indica el desplazamiento en el que se encuentran los datos urgentes con el prop贸sito de que el receptor pueda acceder directamente. Solo es valido cuando el flag URG viene marcado.
  9. Options: campo opcional. Permite que una aplicaci贸n negocie durante la configuraci贸n de la conexi贸n caracter铆sticas como el tama帽o m谩ximo de segmento.
  10. Padding: tiene la misi贸n de conseguir que la cabecera tenga un tama帽o m煤ltiplo de 32 bits a帽adiendo ceros necesarios para conseguirlo.
  11. Datos: en este campo es donde se almacenan los datos del envi贸.
Categories: Redes Tags: , ,
  1. Martes, 13 de Enero de 2009 a las 12:10 | #1

    Hola chaval! A ver si a fuerza de leer tu blog me pongo al dia con lo de las redes…

    Por cierto, una sugerencia: Aunque parezca algo basico podrias currarte un post parecido a un manual r谩pido de como configurar una red local o una conexion a internet por wifi, algo sencillito, parece que no pero ganarias visitillas con eso…

    Un saludo y sigue con esto!

  1. Sin trackbacks aún.