Diferencia entre revisiones de «Capa de trasporte»
(→TCP) |
|||
| Línea 49: | Línea 49: | ||
== Formato do segmento TCP == | == Formato do segmento TCP == | ||
| + | |||
| + | {| border="2" cellpadding="4" cellspacing="0" style="margin: 1em 1em 1em 0; background: #f9f9f9; border: 1px #aaa solid; border-collapse: collapse; float:right;" | ||
| + | |+<small>''Cabezallo dunha [[trama]] TCP''</small> | ||
| + | |- align="center" | ||
| + | ! colspan="1"|+ | ||
| + | ! colspan="4"|Bits 0 - 3 | ||
| + | ! colspan="6"|4 - 9 | ||
| + | ! colspan="6"|10 - 15 | ||
| + | ! colspan="16"|16 - 31 | ||
| + | |- align="center" | ||
| + | ! colspan="1"|0 | ||
| + | | colspan="16"|<small>Porto na orixe</small> | ||
| + | | colspan="16"|<small>Porto no destino</small> | ||
| + | |- align="center" | ||
| + | ! colspan="1"|32 | ||
| + | | colspan="32"|<small>Número de secuencia</small> | ||
| + | |- align="center" | ||
| + | ! colspan="1"|64 | ||
| + | | colspan="32"|<small>Número de confirmación (ACK)</small> | ||
| + | |- align="center" | ||
| + | ! colspan="1"|96 | ||
| + | | colspan="4"|<small>Offset</small> | ||
| + | | colspan="6"|<small>Reservados</small> | ||
| + | | colspan="6"|<small>''Flags''</small> | ||
| + | | colspan="16"|<small>Fiestra<br />''Window''</small> | ||
| + | |- align="center" | ||
| + | ! colspan="1"|128 | ||
| + | | colspan="16"|<small>Checksum''</small> | ||
| + | | colspan="16"|<small>Punteiro de urxencia</small> | ||
| + | |- align="center" | ||
| + | ! colspan="1"|160 | ||
| + | | colspan="32"|<small>Opcións (opcional)</small> | ||
| + | |- align="center" | ||
| + | | colspan="8"|<small>''Padding'' (ata 32)</small> | ||
| + | |- align="center" | ||
| + | ! colspan="1"|224 | ||
| + | | colspan="32"| <br />Datos<br /> | ||
| + | |- align="center" bgcolor="#ffffff" | ||
| + | | colspan="33" align="center" | | ||
| + | {| border="2" cellpadding="4" cellspacing="0" style="margin: 1em 1em 1em 0; background: #f9f9f9; border: 1px #aaa solid; border-collapse: collapse; align:center;" | ||
| + | |+ <small>Detalle do campo ''Flags''</small> | ||
| + | |- | ||
| + | ! + !! 10 !! 11 !! 12 !! 13 !! 14 !! 15 | ||
| + | |- | ||
| + | | 96 || ''UrgPtr'' || ACK || ''Push'' || RST || SYN || FIN | ||
| + | |} | ||
== Establecemento da conexión == | == Establecemento da conexión == | ||
Revisión del 23:49 11 dic 2020
Sumario
Introducción
Este nivel está encargado da transferencia libre de erros dos datos entre o emisor e o receptor, aínda que non estén directamente conectados e de mantener o fluxo da rede.
Hay dous tipos de servizo na capa de transporte: orientado e non orientado á conexión.
No servizo orientado á conexión consta de tres partes:
- establecimiento
- transferencia de datos
- liberación
No servizo non orientado á conexión tratanse os paquetes de xeito individual.
Porén, dous son os protocolos máis utilizados desta capa: TCP e UDP.
TABLA
Direccionamento. Portos
A capa de trasnporte engade a noción de porto para distinguir entre moitos destinos dentro dunha máquina para coñecer qué aplicación recollerá a mensaxe; así pois cada aplicación estará a espera dunha mensaxe nun porto determinado (escoitando un porto).
Os portos utilízanse tanto para recepción coma para o envío de mensaxes. Os portos están numerados e as aplicacións estándaar utilizan sempre o mesmo porto.
O uso de portos permite que unha máquina poida conectarse simultáneamente a diversas máquinas, xa que aínda que todos os paquetes terán o mesmo enderezo, contarán con distintos portos.
Os números de portos están formados por 2 bytes, polo que existen 65.536 posibles portos diferentes para cada máquina:
- O 0 é un porto reservado
- Do 1 o 1023 reciben o nome de portos ben coñecidos
- ICMP 8
- FTP 20 para transmisión de datos e 21 para control
- SSH 22
- Telnet 23
- SMTP 25
- HTTP 80
- HTTPS 443
- Do 1024 ó 49151 son os portos denominados rexistrados que poden usados por calquera aplicación
- Do 49152 o 65535 son os portos denominados efímeros; son dinámicos, de uso temporal utilizados polo sistema operativo cando unha aplicación ten que conectarse a un servidor e necesita un porto por onde sair.
TCP
O Protocolo de control de transmisión crea “conexións” a través das cales pode enviarse un fluxo de datos. O protocolo garantiza que os datos serán entregados no seu destino sen erros e no mesmo orde no que se transmitiron.; proporciona tamen un mecanismo para distinguir distintas aplicacións dentro dunha mesma máquina a través do concepto de porto.
É por tanto fiable porque se garantiza que os datos enviados chegan correctamente o seu destino e é orientado a conexión porque establece unha conexión previa a transmisión dos datos entre orixe e destino que será pechada cando finalice a transmisión.
A unidade de datos (PDU) do protocolo TCP chámase segmento e viaxa no campo de datos dun datagrama IP.
IMAXE
Para acadar ese servizo fiable facendo uso do protocolo IP (que non o é) utilizase un sistema de recoñecemento de mensaxes que consiste en que para cada mensaxe recibido devolvese unha confirmación (acknowledgemente ou ACK) para que o emisor saibe que chegou correctamente; se pasado un tempo non o recibe, o emisor reenvía a mensaxe.
O protocolo utilizado chámase protocolo de fiestra deslizante. As mensaxes e as confirmacións van umeradas e o emisor pode enviar máis dunha mensaxe antes de ter reecibidas todas as confirmacións anteriores.
Formato do segmento TCP
| + | Bits 0 - 3 | 4 - 9 | 10 - 15 | 16 - 31 | ||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | Porto na orixe | Porto no destino | ||||||||||||||||||||||||||||||||||||||||||||
| 32 | Número de secuencia | |||||||||||||||||||||||||||||||||||||||||||||
| 64 | Número de confirmación (ACK) | |||||||||||||||||||||||||||||||||||||||||||||
| 96 | Offset | Reservados | Flags | Fiestra Window | ||||||||||||||||||||||||||||||||||||||||||
| 128 | Checksum | Punteiro de urxencia | ||||||||||||||||||||||||||||||||||||||||||||
| 160 | Opcións (opcional) | |||||||||||||||||||||||||||||||||||||||||||||
| Padding (ata 32) | ||||||||||||||||||||||||||||||||||||||||||||||
| 224 | Datos | |||||||||||||||||||||||||||||||||||||||||||||
Establecemento da conexiónUn extremo (o servidor) fai unha apertura pasiva e outro (o cliente) fai unha apaertura activa.
Transmisión de datosLOREM IPSUM LOREM IPSUM
Peche da conexión
UDPO protocolo de datagramas de usuario permite o envío de datagramas a través da rede sen establecer previamente unha conexión tampouco ten confirmación ni control de fluxo, polo que os paquetes poden adiantarse uns a outros; e igualmente non se sabe se chegan correctamente, xa que non hay confirmación de entrega ou recepción. Polo tanto non é fiable porque as mensaxes UDP poden chegar danadas, duplicadas ou non chegar; e non é orientado a conexión porque non esteblece conexión previa co outro extremo. O seu uso principal é para protocolos como DHCP, BOOTP, DNS e outros nos que o intercambio de paquetes para a conexión/desconexión sería maior que o contido, así como para a transmisión de audio e vídeo en tiempo real, oonde é deseable un menor retardo aínda que se perda parte da información. A unidade de datos (PDU) do protocolo UDP chámase segmento e viaxa no campo de datos do datagrama IP. Formato do segmento UDPOs campos do segmento UDP son os seguintes:
|
||||||||||||||||||||||||||||||||||||||||||||||

