Capa de Transporte TCP/IP: Funciones, Puertos y Sockets
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 4,57 KB
Capa de Transporte: Consideraciones Clave
La capa de transporte es el corazón de toda jerarquía de protocolos.
Función Principal
Proporcionar un transporte de datos eficiente, confiable y económico a los procesos de la capa de aplicación, independientemente de la red o redes físicas subyacentes.
Ofrece dos tipos de servicio: Orientado a conexión y Sin conexión.
Si se produce un error en las capas inferiores, las cuales no pueden ser controladas por las superiores, el error ha de ser solucionado por la capa de transporte.
Causas y Tipos de Errores
- Desórdenes en el orden de llegada.
- Duplicidad de paquetes.
- Pérdidas de información.
Causas comunes de error:
- Errores del cableado.
- Interferencias.
- Funcionamiento inadecuado de dispositivos.
- Bloqueo de recursos.
Funciones de la Capa de Transporte
- Comunicación fiable extremo a extremo.
- Control de errores.
- Control de flujo.
- Gestión simultánea de varias conexiones.
- Comunicar origen y destino a través de una red.
A nivel de transporte, se especifica con qué aplicación se desea comunicar.
Elementos del Protocolo de Transporte
1. Direcciones
Cuando se establece una conexión, ¿con qué proceso remoto se conectará? Deben establecerse direcciones de transporte.
- Puerto en el modelo TCP/IP.
- AALSAPs en ATM (Asynchronous Transfer Mode).
2. Establecimiento de una Conexión
Proceso típico:
- Cliente envía CONNECT REQUEST.
- Servidor responde con CONNECT RESPONSE.
3. Liberación de una Conexión
- Liberación simétrica: Dos conexiones unidireccionales que se liberan cada una por separado.
- Liberación asimétrica: Se libera la conexión en un momento determinado, lo que puede producir pérdida de datos.
4. Control de Flujo y Liberación de Búfer
Mecanismos para gestionar la tasa de envío de datos y la memoria intermedia.
Puertos y Sockets
Puertos
Cada proceso que se debe comunicar con otro se identifica con uno o más puertos.
Un puerto es un número de 16 bits que permite identificar a qué protocolo de nivel superior (programa de aplicación) debe entregarse el segmento recibido.
Las aplicaciones que envían segmentos a un host (dirección IP) necesitan identificar procesos concretos (puertos) dentro del sistema.
Puertos Bien Conocidos
- Asignados a las aplicaciones servidor que usan protocolos estándar (ej: servidor HTTP usa el puerto 80).
- Son asignados por la IANA (Internet Assigned Numbers Authority).
- Están dentro del rango de 0 a 1023.
- Permiten a los clientes encontrar los servidores sin necesidad de información de configuración previa.
Puertos Efímeros
- Se asignan a las aplicaciones cliente.
- Los clientes no necesitan puertos bien conocidos porque inician la comunicación con los servidores y envían su número de puerto dentro del segmento.
- El host en funcionamiento proporciona un puerto a cada proceso cliente mientras lo necesita.
- Rango: 1024 a 65535. El puerto asignado es aleatorio dependiendo del Sistema Operativo.
Sockets
Concepto de Socket
- Una dirección de socket es la tupla: (protocolo, dirección local, proceso local). Ejemplo: (TCP, 192.168.5.10, 6003).
- Una asociación o conexión es la quíntupla que especifica completamente los dos procesos de una conexión: (protocolo, dirección local, proceso local, dirección exterior, proceso exterior). Ejemplo: (TCP, 192.168.5.10, 6003, 192.168.5.1, 53).
- La media asociación o conector se llama también socket o dirección de transporte.
- Una conexión está formada por un socket de origen y un socket de destino.
- El concepto de socket fue introducido en el UNIX de Berkeley y se ha convertido en un estándar de facto.
Interfaces de Sockets
La interfaz del socket se distingue por los diferentes servicios suministrados:
- Interfaz de sockets orientada a flujo: Servicio confiable orientado a conexión (ej: TCP).
- Interfaz de sockets orientada a datagramas: Servicio no orientado a conexión (ej: UDP).
- Interfaz de sockets a bajo nivel: Permite acceso directo a protocolos de bajo nivel como IP e ICMP.