Comparação de protocolos de transferência de arquivos - Comparison of file transfer protocols

Este artigo lista os protocolos de comunicação projetados para transferência de arquivos em uma rede de telecomunicações .

Os protocolos para sistemas de arquivos compartilhados - como o 9P e o Network File System - estão além do escopo deste artigo, assim como os protocolos de sincronização de arquivos .

Protocolos para redes comutadas por pacotes

Uma rede comutada por pacotes transmite dados que são divididos em unidades chamadas de pacotes . Um pacote compreende um cabeçalho (que descreve o pacote) e uma carga útil (os dados). A Internet é uma rede comutada por pacotes, e a maioria dos protocolos nesta lista são projetados para sua pilha de protocolos , o conjunto de protocolos IP .

Eles usam um dos dois protocolos da camada de transporte : o protocolo de controle de transmissão (TCP) ou o protocolo de datagrama do usuário (UDP). Nas tabelas abaixo, a coluna "Transporte" indica qual (is) protocolo (s) o protocolo de transferência usa na camada de transporte. Alguns protocolos projetados para transmitir dados por UDP também usam uma porta TCP para supervisão.

A coluna " Porta do servidor " indica a porta a partir da qual o servidor transmite os dados. No caso do FTP , essa porta difere da porta de escuta. Alguns protocolos - incluindo FTP, FTP Secure , FASP e Tsunami - ouvem em uma "porta de controle" ou "porta de comando", na qual recebem comandos do cliente.

Da mesma forma, o esquema de criptografia indicado na coluna "Criptografia" se aplica apenas aos dados transmitidos e não ao sistema de autenticação .

Visão geral

Chave de cor:     Padrão internacional     Padrão de Internet     Padrão proposto     Rascunho da Internet
Protocolo Autor original Publicado pela primeira vez Conjunto de protocolos Padrão Refs
Nome completo Abreviação
BitTorrent BT Bram Cohen 2001 N / D Não
Protocolo de entrega de arquivo CCSDS CFDP 2002 N / D ISO 17355: 2007 (v4)
CCSDS 727.0-B-5
Transferência de arquivo cruzado CFT N / D Não
Protocolo de transferência de arquivo Ether EFTP John Shoch 1979 Pacote PARC Universal Não
Protocolo rápido e seguro FASP Ying Xu , Michelle Munson, Serban Simu 2007 N / D Não
Entrega de arquivo por transporte unidirecional FLAUTA Sociedade da Internet 2004 N / D RFC  6726
Protocolo de serviço de arquivo FSP Wen-King Su 1991 N / D Não
Acesso e gerenciamento de transferência de arquivos FTAM ISO 8571-4: 1988
Protocolo de Transferência de Arquivos FTP Abhay Bhushan 1971 Suíte de protocolo de Internet RFC  959
FTP Seguro FTPS Sociedade da Internet 1997 Suíte de protocolo de Internet RFC  2228 , 4217
HTTP seguro HTTPS Taher Elgamal et al. 1995 Suíte de protocolo de Internet RFC  7230
Host Unix Linkage File Transfer HULFT ? 1993 N / D Não
Protocolo de Transferência de Hipertexto HTTP Tim Berners-Lee et al. 1991 Suíte de protocolo de Internet RFC  7231
Protocolo de Micro Transporte μTP Ludvig Strigeus , Greg Hazel, Stanislav Shalunov , Arvid Norberg, Bram Cohen 2007 N / D Não
Protocolo de disseminação multicast MDP Não
Protocolo de transferência de arquivos multicast MFTP C. Kenneth Miller et al. 1995 N / D Rascunho da IETF (1998)
Protocolo de transporte multicast confiável orientado por NACK NORMA RFC  5740
Protocolo de transferência de arquivos Odette OFTP Organização para troca de dados pela Tele Transmission na Europa 1986 X.25 RFC  6726
Odette File Transfer Protocol 2 OFTP2 Organização para troca de dados pela Tele Transmission na Europa 2007 X.25, suíte de protocolo de Internet RFC  5024 (V1.3)
Blast UDP confiável RBUDP Eric He et al. 2002 N / D Não
Cópia remota rcp ? 1982 Suíte de protocolo de Internet Não
Cópia segura SCP Tatu Ylönen ? Capsula segura Não
Protocolo de transferência de hipertexto seguro S-HTTP Grupo de Trabalho de Segurança de Transações na Web da IETF 1999 N / D RFC  2660
Transferência de arquivo assíncrona simples SAFT Ulli Horlacher 1995 N / D Não
Protocolo de Transferência de Arquivo Simples SFTP Mark K. Lottor 1984 N / D RFC  913
Protocolo de transferência de arquivos SSH SFTP Tatu Ylönen c. 1997 Capsula segura Rascunho da IETF (2006)
T.127 T.127 ITU 1995 N / D ITU T.127
Protocolo de transferência de arquivos trivial TFTP Noel Chiappa 1980 Suíte de protocolo de Internet RFC  1350
Protocolo UDP Tsunami Tsunami Mark Meiss et al. 2002 N / D Não
Tus protocolo aberto para uploads de arquivos recuperáveis tus Felix Geisendörfer, Marius Kleidl et al. 2014 N / D Não
Protocolo de transferência de dados baseado em UDP UDT Yunhong Gu 2004 N / D Não
Protocolo de transferência de arquivos baseado em UDP UFTP Dennis Bush 2001 N / D Não
Cópia de Unix para Unix UUCP Mike Lesk 1979 N / D Não
Transferência de dados de velocidade de dobra WDT Laurent Demailly et al. 2015 N / D Não

Recursos

A coluna "Gerenciado" indica se o protocolo foi projetado para transferência gerenciada de arquivos (MFT). Os protocolos MFT priorizam a transmissão segura em aplicações industriais que requerem recursos como registros de transações auditáveis, monitoramento e segurança de dados ponta a ponta . Esses protocolos podem ser preferidos para o intercâmbio eletrônico de dados .

Protocolo Criptografia
(dados)
Transferência
retomada
Compatível
com multicast
Gerenciou Refs
BitTorrent Nenhum sim Pessoa para pessoa Não
Protocolo de entrega de arquivos CCSDS (CFDP) sim Não Não
Transferência cruzada de arquivos ( CFT ) TLS / SSL sim
Ether File Transfer Protocol ( EFTP ) Nenhum ? Não Não
Protocolo rápido e seguro ( FASP ) AES-256 / AES-192 / AES-128 sim Não
Entrega de arquivo por transporte unidirecional ( FLUTE ) Opcional / não especificado Não sim
Protocolo de Serviço de Arquivo ( FSP ) Nenhum sim Não Não
Acesso e gerenciamento de transferência de arquivos ( FTAM ) ?
Protocolo de transferência de arquivos ( FTP ) Nenhum sim Não Não
FTP Seguro ( FTPS ) TLS / SSL sim Não Não
HTTP seguro ( HTTPS ) TLS / SSL sim Não Não
Transferência de arquivo de vinculação de host Unix (HULFT) AES ? Não
Protocolo de Transferência de Hipertexto ( HTTP ) Nenhum
(consulte HTTPS e S-HTTP )
sim Não Não
Protocolo de Micro Transporte ( μTP ) Nenhum sim Pessoa para pessoa Não
Protocolo de disseminação multicast (MDP) Nenhum sim sim
Protocolo de transferência de arquivos multicast ( MFTP ) Nenhum sim sim Não
NACK-Oriented Reliable Multicast Transport Protocol (NORM) IPsec sim sim
Odette File Transfer Protocol ( OFTP ) Nenhum sim
Odette File Transfer Protocol 2 ( OFTP2 ) TLS sim
Blast UDP confiável ( RBUDP ) Nenhum Não Não
Cópia remota ( rcp ) Nenhum Não Não Não
Cópia segura ( SCP ) Capsula segura Não Não Não
Protocolo de transferência de hipertexto seguro ( S-HTTP ) CMS / MOSS / outro Não Não Não
Transferência de arquivo assíncrona simples ( SAFT ) PGP ? Não Não
Protocolo de transferência de arquivo simples ( SFTP ) Nenhum sim Não Não
Protocolo de transferência de arquivos SSH ( SFTP ) Capsula segura sim Não Não
T.127 Nenhum sim sim Não
Protocolo de Transferência de Arquivos Trivial ( TFTP ) Nenhum Não Não Não
Protocolo UDP Tsunami Nenhum Não Não Não
Tus protocolo aberto para uploads de arquivos recuperáveis ( tus ) Opcional / não especificado sim Não Não
Protocolo de transferência de dados baseado em UDP ( UDT ) Experimental Não Não Não
Protocolo de transferência de arquivos baseado em UDP ( UFTP ) AES-256 / AES-128 / 3DES / DES sim sim Não
Cópia de Unix para Unix ( UUCP ) Nenhum Algum Não Não
Warp Speed ​​Data Transfer (WDT) AES-128 ( OFB / CTR ) sim Não Não

Portos

Na tabela abaixo, a porta de dados é a porta de rede ou intervalo de portas por meio do qual o protocolo transmite os dados do arquivo. A porta de controle é a porta usada para o diálogo de comandos e atualizações de status entre o cliente e o servidor.

A coluna "Atribuída pela IANA" indica se a porta está listada no Registro do número da porta do protocolo de transporte e nome do serviço, que é curado pela Autoridade para atribuição de números da Internet (IANA). A IANA dedica cada número de porta no registro a um serviço específico com um protocolo de transporte específico . A tabela abaixo lista o protocolo de transporte na coluna "Transporte".

Protocolo Porta de dados Porta de controle Atribuído
por IANA
Cessionário Refs
Servidor Cliente Transporte Servidor Cliente Transporte
BitTorrent 6881 6881 TCP 6881 6881 TCP Não N / D
Protocolo de entrega de arquivos CCSDS ( CFDP )
Transferência cruzada de arquivos ( CFT ) 1761 TCP / X.25
Ether File Transfer Protocol ( EFTP ) N / D N / D Nenhum N / D N / D Nenhum N / D N / D
Protocolo rápido e seguro ( FASP ) ≥33001 UDP 22 TCP Não N / D
Entrega de arquivo por transporte unidirecional ( FLUTE ) 4001 UDP Não N / D
Protocolo de Serviço de Arquivo ( FSP ) Escolhido pelo usuário UDP Não N / D
Acesso e gerenciamento de transferência de arquivos ( FTAM ) 4800/102 TCP
Protocolo de transferência de arquivos ( FTP ) Modo ativo 20 20 TCP 21 ≥1024 TCP sim Jon Postel
Modo passivo ≥1024 ≥1024
FTP Seguro ( FTPS ) 989 TCP 990 TCP sim Christopher Allen
HTTP seguro ( HTTPS ) 443 TCP TCP sim IESG
Transferência de arquivo de vinculação de host Unix (HULFT) 30000 TCP TCP Não N / D
Protocolo de Transferência de Hipertexto ( HTTP ) 80 TCP TCP sim Tim Berners-Lee
Protocolo de Micro Transporte ( μTP ) UDP Não N / D
Protocolo de disseminação multicast (MDP) Escolhido pelo usuário UDP
Protocolo de transferência de arquivos multicast ( MFTP ) 5402 UDP sim Steve Bannister
NACK-Oriented Reliable Multicast Transport Protocol (NORM) UDP
Odette File Transfer Protocol ( OFTP ) 3305 TCP / X.25 TCP / X.25
Odette File Transfer Protocol 2 ( OFTP2 ) 6619 TCP / X.25 TCP / X.25
Blast UDP confiável ( RBUDP ) Escolhido pelo usuário UDP Não N / D
Cópia remota ( rcp ) 514 TCP TCP sim
Cópia segura ( SCP ) 22 TCP TCP sim
Protocolo de transferência de hipertexto seguro ( S-HTTP ) 80 TCP TCP Não N / D
Transferência de arquivo assíncrona simples ( SAFT ) 487 TCP sim Ulli Horlacher
Protocolo de transferência de arquivo simples ( SFTP ) 115 TCP TCP sim Mark Lottor
Protocolo de transferência de arquivos SSH ( SFTP ) 22 TCP TCP sim
T.127 1503 TCP TCP sim Jim Johnston
Protocolo de Transferência de Arquivos Trivial ( TFTP ) 69 UDP sim David Clark
Protocolo UDP Tsunami Escolhido pelo usuário UDP TCP Não N / D
Tus protocolo aberto para uploads de arquivos recuperáveis ( tus ) 80 TCP TCP Não N / D
Protocolo de transferência de dados baseado em UDP ( UDT ) Escolhido pelo servidor UDP Não N / D
Protocolo de transferência de arquivos baseado em UDP ( UFTP ) 1044 UDP Não N / D
Cópia de Unix para Unix ( UUCP ) 540 TCP TCP sim
Warp Speed ​​Data Transfer (WDT) Escolhido pelo servidor ou pelo usuário TCP TCP Não N / D

Protocolos seriais

Um cabo adaptador RS-232 de 9 para 25 pinos

Os protocolos a seguir foram projetados para comunicação serial , principalmente para o padrão RS-232 . Eles são usados ​​para fazer upload e download de arquivos de computador via modem ou cabo serial (por exemplo, por modem nulo ou conexão direta por cabo ). UUCP é um protocolo que pode operar com RS-232 ou com o Transmission Control Protocol como seu transporte. O protocolo Kermit pode operar em qualquer transporte de computador a computador: serial direto, modem ou rede (notavelmente TCP / IP , incluindo em conexões protegidas por SSL, SSH ou Kerberos). OBject EXchange é um protocolo para transferência sem fio de objetos binários através do padrão Bluetooth . O Bluetooth foi concebido como um substituto sem fio do RS-232.

Visão geral

Protocolo Autor Lançado pela primeira vez Licença Descrição Refs
BiModem Erik Labs 1989 Transferências bidirecionais.
EXPLOSÃO Grupo de Pesquisa em Comunicações 1981 Protocolo poderoso originado no minicomputador Data General Nova e depois transferido para micros e mainframes.
C-MODEM Lavio Pareschi 1989 Comprimentos de pacote de 32 a 4096 bytes, modo de streaming opcional (mas normalmente usado).
Protocolo B CompuServe 1981 Transferência de arquivos oferecida, bem como um fluxo de comando.
JMODEM Richard B. Johnson ? Derivado de XMODEM com blocos de 512 a 8192 bytes e compressão RLE.
HS / Link Samuel H. Smith 1991
Sapo Frank da Cruz et al. 1981 Código aberto (BSD) a partir de 2011 Transferência independente de transporte e plataforma de arquivos de texto e binários em conexões full ou half-duplex com conversão de formatos de arquivo de texto e conjuntos de caracteres.
LeechModem Sam Brown ? Variações de X e Y que falsificavam downloads com falha para evitar cotas de download BBS.
Lince Matthew Thomas 1989 Semelhante ao Kermit: pacotes de 64 bytes, 2 a 16 pacotes por janela, CRC-32. Pouco ou nenhum suporte fora do próprio programa Lynx.
NMODEM LB Neal 1990 Essencialmente XMODEM-CRC com blocos de 2048 bytes.
Protocolo de transferência de arquivos OBEX ? ? Um protocolo de transferência de arquivo síncrona no objeto do Exchange (OBEX) Bluetooth perfil .
OBEX Push ? ? Um protocolo de transferência de arquivo assíncrono no perfil OBject EXchange (OBEX) Bluetooth.
Apostador Steve Punter ? Conjunto de protocolos semelhantes a XMODEM semelhantes, mas diferentes, para várias máquinas Commodore.
SEAlink Thom Henderson 1986 Um protocolo compatível com MODEM7 / XMODEM com suporte a janela deslizante desenvolvido para evitar atrasos de propagação em transmissões de satélite e redes de pacotes .
SMODEM Arisoft ?
Tmodem Mike Bryeans ?
UUCP Mike Lesk 1979 Conjunto de protocolos para copiar arquivos entre máquinas Unix, usado para muitos fins, incluindo a distribuição de e-mail. Também permite o envio de comandos, o que levou aos primeiros worms da Internet . O protocolo de transferência de arquivos dentro do UUCP é o protocolo "g".
MODEM7 Mark M. Zeigler, James K. Mills 1980 Pequena extensão de XMODEM para adicionar suporte a nomes de arquivos e transferências em lote.
XMODEM Ward Christensen 1977 Domínio público Protocolo muito simples que teve uso generalizado e forneceu o padrão para muitos protocolos a seguir.
WXMODEM Peter Boswell 1986 Domínio público Versão do XMODEM com janelas deslizantes para maior desempenho.
YMODEM Chuck Forsberg 1985 Domínio público Série de expansões opcionais em XMODEM para melhor desempenho.
ZMax Mike Bryeans c. 1991 Modificações no ZMODEM para permitir pacotes de até 32 kB de comprimento.
ZMODEM Chuck Forsberg 1986 Domínio público Protocolo de streaming que abandona a compatibilidade com XMODEM, mas oferece uma ampla variedade de novos recursos e desempenho aprimorado. Tornou-se quase universal em sistemas BBS no início de 1990.

Recursos

Protocolo Tamanho do bloco de dados
(bytes)

Compressão de dados
Detecção de erro Transferência
retomada
Bidirecional Janela deslizante Refs
BiModem sim
EXPLOSÃO 84 - 1024+ RLE CRC sim sim sim
C-MODEM 32-4096 CRC sim
Protocolo B 128-2048 Soma de verificação CRC32 / CRC16 / 8 bits sim sim
JMODEM 64-8192 RLE
HS / Link CRC32 sim sim
Sapo ≤9024 (negociado) RLE (codificação de comprimento de execução, negociado) Soma de verificação ou CRC16 (negociado) Sim (somente arquivos binários, negociados) Não Ao longo full-duplex somente (negociado)
LeechModem
Lince RLE CRC32 sim
NMODEM 2048
OBject EXchange
Apostador
SEAlink sim sim
SMODEM sim
Tmodem Não
UUCP "g" ≤4096 Não Não
MODEM7 128 Não Checksum Pare e espere ARQ
XMODEM 128 Não Checksum Pare e espere ARQ
WXMODEM ≤512 sim
YMODEM 1024 Não CRC16
ZMax ≤ ~ 32.768 CRC32
ZMODEM 256/1024 Não CRC32 sim sim

Veja também

Notas

Referências

Leitura adicional