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
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 .
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
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
- Comparação de aplicativos de compartilhamento de arquivos
- Comparação de software de sincronização de arquivos
- Comparação de sistemas de arquivos distribuídos
- Listas de protocolos de rede
- Lista de números de porta TCP e UDP
- Lista de software de backup
- AS2
- Connect: Direct
- Arquivos transferidos por protocolo shell (FISH)
- Multicast geral pragmático
- Enviar arquivo
- Waarp
Notas
Referências
- da Cruz, Frank (1987). Kermit: um protocolo de transferência de arquivos . Bedford: Digital Press . ISBN 978-0-932376-88-6. OCLC 751527576 - por meio do Google Livros.
- da Cruz, Frank (junho de 1986). "Manual do protocolo Kermit" (PDF) . KermitProject.org . O Projeto Kermit.
- Glass, Brett (30 de maio de 1988). "Xmodem popular por sua simplicidade, status de domínio público". InfoWorld - via Google Books.
- Lottor, Mark K. (setembro de 1984). Protocolo de transferência de arquivo simples . IETF . doi : 10.17487 / RFC0913 . RFC 913 . Retirado em 1 de março de 2018 .
Leitura adicional
- de Goyeneche, Juan-Mariano (20 de março de 1998). "Protocolos de transporte multicast" . Multicast over TCP / IP HOWTO - via The Linux Documentation Project .
- Ele, Eric; Kettimuthu, Rajkumar; Gu, Yunhong; et al., "Variantes UDP confiáveis" (PDF) , Pesquisa de Protocolos e Mecanismos para Transporte Avançado em PIPES LONG FAT , pp. 6-11
- Kaplan, Ali (2009). "Pesquisa de Literatura". Estrutura colaborativa para transferência de dados baseada em P2P de alto desempenho em computação científica ( DOCX ) (tese de doutorado). Indiana University Bloomington. pp. 12–39. ISBN 978-1-109-50327-2. OCLC 648765323 .
- Kientzle, Tim (1995). Guia do programador de trabalho para protocolos seriais . Livros do Grupo Coriolis. ISBN 978-1-883577-20-9. OCLC 441637109 .
- "Sobre o Caco" . KermitProject.org . O Projeto Kermit.
- "The Kermit Software Archive" . KermitProject.org . O Projeto Kermit.