¿Cómo se comparan FTP, FTPS, SFTP y SCP en términos de velocidad de transferencia y cómo puedo compararlos mediante pruebas?
¿Cómo se comparan FTP, FTPS, SFTP y SCP en términos de velocidad de transferencia y cómo puedo compararlos mediante pruebas?
Respuestas:
Si tiene una red rápida de área amplia, encontrará eso sftp
y tendrá scp
aproximadamente la misma velocidad, que es lenta. Ambos sufren problemas de rendimiento en el openssh subyacente. Con el hardware moderno, esto no se debe a la sobrecarga de cifrado, sino a problemas con la implementación de openssh: implementa su propio mecanismo interno de ventanas que se descompone en conexiones rápidas.
Estos problemas se vuelven más obvios en las conexiones de larga distancia (mayor latencia), pero he experimentado lentitud incluso en las LAN.
Estos están bien documentados y hay parches disponibles para solucionar el problema. Parchear cualquier extremo de la conexión puede ayudar; Lo ideal sería parchear ambos extremos. Para obtener más información y los parches, consulte SSH de alto rendimiento en Pittsburgh Supercomputer Center.
Por cierto, la sobrecarga de cifrado también puede convertirse en un problema, una vez que se resuelve el problema de la ventana. Los parches también tienen soluciones para eso.
Mientras tanto, encontrarás que ftp
es lamentablemente inseguro; envía contraseñas en texto plano.
ftps
Creo que envuelve el protocolo ftp en SSL. Probablemente sea más rápido que SFTP / SCP sin parchear.
Una nota final: en mi experiencia, el cliente WinSCP es (al menos a veces) dolorosamente lento. No sé por qué, pero según sus preguntas frecuentes, no soy la única persona que ha tenido este problema. Entonces, si está scp''desde Windows, y parece lento, intente con un cliente diferente. Incluso con un servidor openssh no parcheado, puede hacerlo mucho, mucho mejor con un cliente diferente. No estoy seguro de cuáles son buenos clientes, desafortunadamente.
En general, todos los protocolos funcionarán aproximadamente igual. Es más probable que esté limitado por la velocidad de su red o disco que por el protocolo.
Las versiones anteriores de OpenSSH (SFTP / SCP) usaban un tamaño de ventana fijo que limitaría la velocidad en redes de alta latencia (digamos transatlántico). Hay un conjunto de parches para solucionar este problema llamado HPN (red de alto rendimiento) y se incluye en la mayoría de las instalaciones modernas de OpenSSH.
Si se encuentra en una situación como un enlace LAN de gigabit o más rápido y una CPU más lenta, SFTP / SCP puede encontrarse con un cuello de botella. Podrá saberlo porque el proceso ssh / scp / sftp utilizará el 100% de la CPU en el alojamiento de envío o recepción. Si está utilizando una versión más reciente de OpenSSH (6.4+), puede habilitar una versión roscada del cifrado AES que podrá utilizar más de 1 núcleo para manejar el cifrado y será menos probable que esté limitado por la CPU en lugar del disco o ancho de banda de la red.
Si controla tanto el lado de envío como el de recepción, OpenSSH 6+ también tiene un modo opcional 'NONECIPHER'. Esto utiliza el cifrado regular / claves, etc. para iniciar sesión en la máquina remota, pero luego cae a una conexión no cifrada para la copia del archivo real. Esto eliminará la sobrecarga de la CPU. Hay salvaguardas integradas en NONECIPHER que le impiden obtener un shell que no está encriptado.
Al final, el protocolo no debería ser la limitación de la velocidad, aunque las versiones anteriores de ssh tienen problemas con los enlaces de alta latencia.
Basado en la sobrecarga de cifrado, diría que el FTP simple probablemente tenga un rendimiento ligeramente mejor que los otros protocolos, pero probablemente sea insignificante. Usaría el protocolo que proporciona la seguridad que necesita primero, luego me preocuparía por el rendimiento.
Dicho esto, tendrás que configurar una prueba para encontrar los números reales. Todo lo anterior es solo mi opinión. Si está probando el rendimiento localmente, configure un servidor en su red. Si el uso final será a través de Internet, realice la prueba desde un host externo.
Como siempre, google tiene las respuestas,
FTP v / s SFTP v / s FTPS
que dice FTP> FTPS> SFTP
FTP también parece ser más rápido que SCP en la prueba de otra persona ( http://www.lysesoft.com/support/forums /viewtopic.php?f=5&t=542 ) pero recomendaría probarlo usted mismo para verlo.
Por lo tanto, configure SCP y FTP en cualquier casilla aleatoria de su red, luego ejecute una transferencia de archivos típica y vea cuánto tarda en ambos