Publicado el 14 de Mayo del 2021
762 visualizaciones desde el 14 de Mayo del 2021
54,1 KB
6 paginas
Creado hace 25a (13/03/2000)
PROTOCOLOS TCP/UDP
PROTOCOLOS TCP-UDP
1203
Sobre el funcionamiento y la trama de datos de los protocolos de transporte en capa 4.
Referido a los protocolos de RFC (TCP y UDP) y los protocolos ISO (TP4).
1- PROTOCOLO TCP
1.1- TRAMA TCP PARA INTERNET
El protocolo TCP puede entregar los siguientes servicios: multiplexación para varias puertas de usuario (varias puertas de
aplicación en TCP sobre una TCP/IP); gestión de la conexión (inicio, mantenimiento y terminación). transporte de datos
(full-dúplex, ordenamiento, control de flujo, chequeo de errores). Tratándose el protocolo TCP de un servicio orientado con-
conexión el funcionamiento incluye el establecimiento y finalización de la llamada. La estrategia de transferencia de datos
incluye la retransmisión, la detección de duplicación y el control de flujo. En la Fig 01 se indica el modelo de capas y en la
Fig 02 la trama RFC-0793. En la Tabla 01 se indican las funciones de cada campo del paquete TCP. En la Tabla 02 se
muestra una traza de mensaje intercambiado entre entidades TCP/IP.
-SP
-DP
-SN
-AN
-DO
-RSV
-Flags
.URG
.ACK
.PSH
.RST
.SYN
.FIN
-WIN
-CS
-UP
-OPT
-Data
Tabla 01: Elementos de protocolo RFC-793 para Capa 4 (TCP).
2 Bytes. Identifica la puerta (Port TCP) de acceso al servicio origen en TCP. Se trata de direcciones TSAP
que numeran desde 1 a 225 los protocolos más conocidos (Echo:7, SMTP:25; FTP:21; Telnet:23;
Gopher:70; y Web:80). El protocolo UDP identifica las aplicaciones SNMP:161; TFTP:69 y RPC-Sun:111.
Desde la port 256 a 1023 se reserva para aplicaciones UNIX. Las aplicaciones propietarias llevan la
dirección de port desde 1024 hasta 49151; las direcciones superiores a 40152 se asignan en forma
dinámica.
La combinación de la dirección IP y la port TCP/UDP es conocida como Socket cuya asignación puede
estar predeterminada (para protocolos conocidos) o se asigna entre los valores no utilizados (para las
aplicaciones nuevas).
2 Bytes. Identifica la puerta de acceso al servicio de destino. Tiene igual estructura a SP.
4 Bytes. (Sequence Number) Número secuencial del primer octeto de datos en el segmento para la puerta
correspondiente. Permite el proceso de requerimiento de retransmisión automática ARQ. La longitud
máxima del mensaje de capas superiores que puede segmentar TCP es de 232 Bytes; la longitud máxima del
segmento que puede entregar a IP es de 216 Bytes.
4 Bytes. Contiene el número de secuencia del próximo Byte que el TCP espera recibir. Es un
reconocimiento ACK de los Bytes recibidos.
4 bits. (Data Offset) Número de palabras de 4 Bytes del encabezado.
6 bits. Reservados.
6 bits. Son bits utilizados para señalar la validez de otros campos y para el control de conexión.
1 bit. Indica la existencia del puntero urgente en los datos (UP al final del header). Se trata de la función
Break que notifica a la aplicación del TCP receptora que los datos son urgentes y deben ser presentados de
inmediato en pantalla.
1 bit. Indica la existencia del campo de reconocimiento (AN al inicio del header).
1 bit. Función push envía los datos desde un usuario (login remoto) cuando se presiona Return. Los datos
son transferidos por TCP y presentados en la aplicación del otro extremo.
1 bit. Indica que se debe realizar un Reset de conexión debido a un error grave.
1 bit. Usado para iniciar el seteo de conexión entre nodos. Se usa solo en el primer paquete de la conexión;
en éste el primer byte de datos se numera como SN+1. El valor SN es un número de 4 bytes (se incrementa
cada 4.10-6 seg; período de 5 hs).
1 bit. No más datos desde el emisor. Usado para iniciar la desconexión del enlace TCP.
2 Bytes. (Window). Crédito para control de flujo. Una PC tiene una capacidad de buffer limitada (4 kBytes)
equivalente a 4 tramas de Ethernet de 1 kByte. Un crédito 0 detiene la emisión de datos.
2 Bytes. (Checksum) Control de error sobre el encabezado y la carga útil. Permite la detección de errores
para realizar la retransmisión.
2 Bytes. (Urgent Pointer). Puntero que indica la cantidad de datos urgentes (identifica el final de los datos
urgentes en el campo de datos que deben tratarse con prioridad).
Opcional de longitud variable.
Datos de capas superiores.
1203-(1)
7
4
3
PROTOCOLOS TCP/UDP
TFTP
SNMP
H.323
VoIP
SMTP
Telnet
HTTP
FTP
CMIP
X.500
X.400
FTAM
RTCP
RTP
UDP
MOSPF
IGMP
RSVP
RIP
OSPF
ICMP
ARP
RARP
TCP
TP4
IP
CLNP
Fig 01. Modelo de capas para los protocolos TCP y UDP.
Fig 02. Campos de los protocolos TCP y UDP.
1203-(2)
PROTOCOLOS TCP/UDP
Si la conexión al medio de enlace se supone mediante una LAN del tipo IEEE 802.3, se dispone de los campos de dirección
SAP dentro del protocolo LLC y SNAP adicional. Las direcciones son:
-En Ethernet IEEE 802.3: el Type: IP=0800; ARP=0806 y RARP=8035.
-En SNAP (Sub-Network Address Point). Consta de 2 campos: 3 Bytes para el identificador de versión de protocolo IP y 2
Bytes para identificador de SAP (0800 para TCP/IP y 0600 para XNS).
-La dirección SAP en la capa IP se determina mediante el campo Protocol y en TCP/UDP se identifican mediante dos Bytes
de Port.
HEWLETT-PACKARD Network Advisor
Measurement: Network Stack Decode
Display Mode: Viewing All Frames
DETAILED FORMAT TCP
Source port
Destination port
Sequence number
Data offset
Flags:
Urgent flag
Ack flag
Push flag
Reset flag
Syn flag
Fin flag
Window
Checksum
Urgent pointer
Option type
Option length
Max seg size
DETAILED FORMAT IP
Version
Internet header length
Precedence
Delay
Throughput
Reliability
Reserved
Total Length
Identification
Reserved
May/Do Not Fragment
Fragmentation allowed
Last/More Fragments
Last fragment
Offset
Time To Live
Next Protocol
Checksum
Source
Destination
DETAILED FORMAT ETHERNET
Destination address
Source address
Individual, global
Type
Tabla 02. Traza de protocolos TCP-IP-Ethernet
Open Views: Summary Detailed Data
Print Time: 21:45:31
User prog. port
Telnet
Initial sequence number
Number of 32-bit words in header
Synchronizing sequence numbers
Not used
MaxiTnilm segment size
(32 bit words)
Routine
Delay normal
Throughput normal
Reliability normal
TCP
Individual, global
IP
Prínt Type: Frames 1
Print Date: 10/03/95
1208
23
0
6
..00-0010
..0.....
...0....
....0...
.....0..
......1.
.......0
512
20-D9
0
2
4
1460
4
5
000.....
...0....
....0...
......0..
......00
44
198
0.......
.0......
..0.....
0
31
6
2A-88
160.1.131.180
132.0.200.200
00-20-8A-00-28-4F
HP---------82-E9-DC
08-00
1203-(3)
PROTOCOLOS TCP/UDP
1.2- FUNCIONAMIENTO DE TCP
INICIO DE CONEXIÓN. Se trata de un saludo de 3 pasos. Cada extremo informa el número secuencial SN que pretende
utilizar. El primer paquete lleva la bandera SYN=1 y el número secuencial SN=X (se genera mediante un contador de 32 bits
que se incrementa cada 4 µseg y de período 5 horas). La respuesta a este paquete consiste en SYN=1 y ACK=1 más el propio
número secuencial SN=Y y el acuse de recibo AN=X+1 (acuse de recibo del valor X). El tercer paso es responder al paquete
anterior con ACK=1 y el acuse de recibo AN=Y+1.
RETRANSMISIÓN. Mediante el mecanismo de reconocimiento se puede pedir la retransmisión de segmentos cuando estos
llegan corruptos por errores o faltan segmentos intermedios. Es de fundamental importancia cuando las capas inferiores de la
red no prevén la retransmisión (tal es el caso de Frame Relay y ATM). Las redes Ethernet (IEEE 802.3) y el protocolo PPP
tienen desactivado el mecanismo de control en el protocolo LLC (tampoco corrigen errores).
La capa 3 (Internet) no se ocupa de la confirmación de datagramas. Es TCP quien confirma, para cada puerta individual, los
segmentos recibidos. La combinación de los campos AN y WIN permite el reconocimiento y el control de flujo.
Cuando se requiere emitir una secuencia de N bytes de datos, el TCP coloca la bandera PSH=1 (empujando la emisión
inmediata) y SYN=1; en tanto que la numeración secuencial SN=X. El receptor retorna un mensaje con ACK=1 y la
confirmación AN en el valor X+N+1 y el valor de la ventana WIN. Cuando existe un error se envía las banderas
RST,SYN,ACK=1. En la siguiente Tabla 03 se indica un ejemplo.
Tabla 03. Ejemplo del proceso de retransmisión entre los terminales A y B.
Transmisión desde A hacia B
SN= 1 TL= 1093
SN= 1093 TL= 1217
SN= 2310 TL= 310
SN= 2310 TL= 310
SN= 2620 TL= 20
SN= 2640 TL= 1060
Condiciones de enlace
⇒ ⇐
Error de comunicación
...tiempo de espera...
Respuesta desde B hacia A
AN= 1093 WIN= 2000
AN= 2310 WIN= 2000
AN= 2310 WIN= 500
AN= 2620 WIN= 20
AN= 2640 WIN= 0
AN= 2640 WIN= 2000
CONTROL DE FLUJO. El mismo mecanismo de reconocimiento permite regular el flujo de datos en el protocolo TCP. El
control de flujo de datos se complica debido al retardo entre entidades TCP y por la pérdida de segmentos. Además debe
considerarse la posibilidad de arribo de segmentos fuera de orden y a la pérdida de segmentos con información de crédito.
Sin el control de flujo los datos pueden superar la capacidad del buffer de recepción antes de ser procesados.
Se hace uso de dos elementos AN y el crédito o ventana (Window):
-AN=H reconoce hasta la secuencia (H-1) e indica que espera la secuencia H;
-el crédito WIN=K autoriza la transmisión hasta la secuencia (H-1)+K.
Obsérvese que los mecanismos de control de flujo se complican sucesivamente desde la capa 1 a la c
Comentarios de: Protocolos TCP-UDP (0)
No hay comentarios