FTP File Transfer Protocol RFC 959 Patricio Galdames

  • Slides: 19
Download presentation
FTP File Transfer Protocol RFC 959 Patricio Galdames S. DCC Universidad de Chile pgaldame@dcc.

FTP File Transfer Protocol RFC 959 Patricio Galdames S. DCC Universidad de Chile pgaldame@dcc. uchile. cl 19 -05 -2021 Patricio Galdames S. 1

Objectivos del FTP (RFC 959) • Promover el intercambio de archivos • Alentar el

Objectivos del FTP (RFC 959) • Promover el intercambio de archivos • Alentar el uso indirecto de computadores remotos • Proteger al usuario de la variaciones que puede presentar el almacenamiento de archivos • Transferencia de datos confiable y eficiente • “FTP, aunque usado directamente por un usuario a traves de un terminal, esta orientado principalmente al uso de programas” 19 -05 -2021 Patricio Galdames S. 2

Modelo Lógico FTP PI: Protocol Interpreter DTP: Data Transfer Protocol Server PI File System

Modelo Lógico FTP PI: Protocol Interpreter DTP: Data Transfer Protocol Server PI File System 19 -05 -2021 Server DTP Control Data User Interface User PI User DTP Patricio Galdames S. File System 3

Conexiones de Control y de Datos 1. Funciones de control (comandos) y los códigos

Conexiones de Control y de Datos 1. Funciones de control (comandos) y los códigos de respuesta son transferidos sobre la conexión de control. 2. Todas las transferencias de datos se realizan sobre la conexión de datos. 3. La conexión de Control debe mantenerse “activa” mientras una transferencia de datos ocurre. 19 -05 -2021 Patricio Galdames S. 4

Conexión de Control • La conexión de control es un servicio “bien conocido”. Puerto

Conexión de Control • La conexión de control es un servicio “bien conocido”. Puerto 21 • La conexión de control usa el protocolo TELNET. • Los comandos y respuestas son lineas de texto (ASCII). 19 -05 -2021 Patricio Galdames S. 5

Modelo de Conexión Estándar Control A 19 -05 -2021 Data Patricio Galdames S. B

Modelo de Conexión Estándar Control A 19 -05 -2021 Data Patricio Galdames S. B 6

Modelo de Conexión Alternativo Control B 19 -05 -2021 A Data Patricio Galdames S.

Modelo de Conexión Alternativo Control B 19 -05 -2021 A Data Patricio Galdames S. Control C 7

Comandos de Control de Acceso USER Especifica usuario PASS Especifica contraseña CWD Cambiar directorio

Comandos de Control de Acceso USER Especifica usuario PASS Especifica contraseña CWD Cambiar directorio CDUP Cambiar directorio al directorio que le precede QUIT logout 19 -05 -2021 Patricio Galdames S. 8

Comandos de Transferencia PORT publicar el puerto de datos local PASV servidor debe escuchar

Comandos de Transferencia PORT publicar el puerto de datos local PASV servidor debe escuchar (modo pasivo) TYPE establecer representación de datos MODE establecer modo de la transferencia STRU establecer estructura de archivos 19 -05 -2021 Patricio Galdames S. 9

Comandos de servicio RETR recuperar un archivo STOR enviar un archivo APPE enviar un

Comandos de servicio RETR recuperar un archivo STOR enviar un archivo APPE enviar un archivo y agregar a uno existente ABOR abortar comando de servicio anterior PWD imprimir directorio de trabajo LIST transferir lista de archivos sobre el enlace de datos REST indicar al servidor desde que posición del archivo se comenzará la descarga. 19 -05 -2021 Patricio Galdames S. 10

Respuestas FTP • Todos las respuestas son enviadas por el enlace de control. •

Respuestas FTP • Todos las respuestas son enviadas por el enlace de control. • Las respuestas es una simple linea que contiene • Código de estado compuesto por 3 digitos (Enviado como un carácter numerico de 3 caracteres). • Mensaje de texto. • La especificación FTP incluye soporte para varias lineas de respuesta 19 -05 -2021 Patricio Galdames S. 11

Código de Estado de Respuesta FTP Primer digito del código de estado indica el

Código de Estado de Respuesta FTP Primer digito del código de estado indica el tipo de respuesta: ‘ 1’: Respuesta Preliminar Positiva (se comprendio, pero hay que esperar). ‘ 2’: Respuesta de Termino Positivo (exitoso). ‘ 3’: Respuesta Intermedia Positiva (esperando por más información). ‘ 4’: Transiente de Termino Negativo (error – intentarlo nuevamente). ‘ 5’: Respuesta Negativa Permanente (error – no puede ejecutarse). 19 -05 -2021 Patricio Galdames S. 12

Código de estatus de Respuesta FTP • Segundo digito indica grupo de la función.

Código de estatus de Respuesta FTP • Segundo digito indica grupo de la función. ‘ 0’: Sintaxis (problema con la sintaxis del comando). ‘ 1’: Informacion (repuesta de ayuda o estado del comando). ‘ 2’: Conexión (problema con la conexión). ‘ 3’: Autentificacion (problemas con el login). ‘ 4’: No especificado. ‘ 5’: Sistema de archivos (relacionado con el sistema de archivos). • Tercer digito indica problema especifico dentro del grupo de la función. 19 -05 -2021 Patricio Galdames S. 13

Modos de Transferencia de Datos 1. STREAM: archivo es transmitido como un stream de

Modos de Transferencia de Datos 1. STREAM: archivo es transmitido como un stream de bytes. 2. BLOCK: archivo es transmitido como una serie de bloques precedidos por headers que contienen un contador y un codigo de descripción (EOF, EOR, marcador de recomienzo). 3. COMPRIMIDO: usa un esquema de compresión simple – comprime los bloques que son transmitidos. 19 -05 -2021 Patricio Galdames S. 14

RFC 959 • The RFC incluye mucho más información y muchos detalles que incluyen:

RFC 959 • The RFC incluye mucho más información y muchos detalles que incluyen: • • Los parámetros de los comandos Las listas de los códigos de estado de las respuestas Diagramas de estado del protocolo Sesiones de muestra 19 -05 -2021 Patricio Galdames S. 15

FTP Activo vs FTP Pasivo • FTP Activo: • Comando: cliente > 1024 servidor

FTP Activo vs FTP Pasivo • FTP Activo: • Comando: cliente > 1024 servidor 21 • Datos: cliente > 1024 servidor 20 • FTP Pasivo • Comando: cliente > 1024 servidor 21 • Datos: cliente > 1024 servidor 1024 19 -05 -2021 Patricio Galdames S. 16

Ejemplo FTP Pasivo 19 -05 -2021 Patricio Galdames S. 17

Ejemplo FTP Pasivo 19 -05 -2021 Patricio Galdames S. 17

Ejemplo FTP Activo 19 -05 -2021 Patricio Galdames S. 18

Ejemplo FTP Activo 19 -05 -2021 Patricio Galdames S. 18

FIN 19 -05 -2021 Patricio Galdames S. 19

FIN 19 -05 -2021 Patricio Galdames S. 19