Duas unidades conectadas a um hub USB podem ignorar o computador ao compartilhar dados?

20

Se eu conectar duas unidades USB a um hub USB externo e copiar dados de uma unidade para outra, os dados passam pelo computador? Ou os dados serão gerenciados pelo hub USB?

Isso tem algum benefício de desempenho?

IAmJulianAcosta
fonte
8
Não está claro o que você está perguntando.
Sun
5
Parece que ele está tentando copiar ou mover arquivos de um disco rígido externo para outro disco rígido externo, todos conectados a um hub USB externo que finalmente está conectado a um PC. Eu não acho que haverá qualquer benefício no desempenho.
Scott Rhee 23/09
O protocolo USB é baseado em um modelo principal de escravo. Normalmente, o computador atua como mestre. Se você remover o mestre, os escravos não poderão operar, porque ninguém pode dizer a eles o que fazer.
SpaceTrucker 23/09
6
@ SpaceTrucker: Verdade, mas isso não é relevante. Um mestre pode dizer ao slave1 para enviar bytes XYZ ao slave 2. No entanto, não existe esse comando no conjunto de comandos USB. Toda a comunicação USB é de ou para o host USB (ou seja, PC).
MSalters
1
O dispositivo de armazenamento USB requer um host. Um hub USB não é um host. O que você não é possível.
Ramhound 23/09

Respostas:

57

Não, isso não vai funcionar. Todos os dados que você está copiando precisarão ser lidos pelo computador a partir da unidade de origem, antes de serem copiados para a unidade de destino.

Se houver algo, ter dois discos rígidos conectados ao mesmo hub USB pode diminuir a velocidade. Se você tiver vários dispositivos conectados ao hub, eles deverão compartilhar a largura de banda.

lzam
fonte
7
Isto está correto. É melhor conectar cada unidade a um conjunto diferente de portas USB - portas emparelhadas em muitos computadores atuam efetivamente como um hub interno; conectar as unidades a pares diferentes ajudará a garantir que cada dispositivo tenha a largura de banda total de 480mbps (assumindo USB 2.0).
Doktor J
6
O @DoktorJ está certo, a maioria dos computadores possui apenas alguns (2-4) hosts USB (controladores); portanto, 8 a 12 portas na placa-mãe são replicadas usando hubs internos reais. No Windows, pode-se usar o Gerenciador de dispositivos e, em seguida, "Exibir" / "Dispositivos por conexão" para descobrir como os dispositivos USB estão conectados internamente.
Agent_L
16

Os USB são um protocolo orientado a host, não um padrão ponto a ponto como o firewire. As unidades são apenas dispositivos, não são hospedeiras para controlar ou decidir nada. Sem o anfitrião, eles nem conseguem interagir com o mundo exterior.

Supondo que você possa conectar as duas unidades dessa maneira, como elas podem saber quais arquivos / pastas você deseja copiar? Eles copiarão de qual unidade para qual unidade e substituirão os arquivos duplicados? Como eles se comportarão se as unidades estiverem cheias?

phuclv
fonte
9
Ou, de fato, como eles entenderiam o sistema de arquivos?
ChrisInEdmonton
16

Os dispositivos conectados ao computador através de um hub não podem se comunicar ou compartilhar dados dentro do hub; todo o tráfego está entre cada dispositivo e o computador.

Não há benefício no desempenho ao conectar duas unidades a um hub e pode haver um prejuízo no desempenho. O hub, em si, está conectado ao computador por meio de uma conexão USB; portanto, tudo o que estiver conectado ao hub deve compartilhar a capacidade da conexão do computador do hub.

O uso simultâneo de mais de uma unidade conectada a um hub como USB 2.0 [1] geralmente excederá a largura de banda USB 2.0 da conexão do computador do hub, potencialmente também afetando o desempenho de outros dispositivos USB 2.0 conectados ao hub. Isso pode acontecer mesmo com uma única unidade USB 2.0 conectada durante a transferência ativa de dados.


[1] A conexão USB 2.0 inclui unidades USB 2.0 conectadas a qualquer hub ou unidades USB 3.0 conectadas a um hub USB 2.0. Em um hub USB 3.0, os dispositivos USB 2.0 têm um caminho de dados USB 2.0 separado com sua própria limitação de largura de banda.

fixer1234
fonte
1
Só para adicionar ... se você precisar de dispositivos lentos que só sabem como USB 1.1 compartilham uma porta USB 2 ou USB 3 com dispositivos mais rápidos, um hub multi-TT pode melhorar o desempenho ENORME. Infelizmente, eles são quase impossíveis de comprar, porque o multi-TT raramente é anunciado como um recurso explícito e a obtenção de um se resume quase inteiramente à boa sorte.
ByBang3r
3
@ Bitbang3r Apenas curioso ... o que é um hub multi-TT?
IAmJulianAcosta
2
Os hubs USB 2.0 e superiores do @IAmJulianAcosta usam um tradutor de transações (TT) para converter entre padrões (por exemplo, USB 1.1 para USB 2.0). Os hubs de TT único compartilham um tradutor para todas as portas, criando um gargalo de largura de banda. Os hubs Multi-TT fornecem tradutores para cada porta, eliminando o gargalo. Ref: archive.today/znbMF
substancial
3

O USB tem o que é chamado de arquitetura estrela de camada - é preciso haver um mestre que seja o "hub real". O mestre envia tokens, dando aos dispositivos a chance de enviar / receber. Portanto, não há contenção de barramento h / w como em outros barramentos (lembre-se apenas de 2 fios).

Portanto, não há transferência de dispositivo para dispositivo - você tem isso no SCSI ou 1394 (firewire) - uma razão pela qual eles são muito mais caros e complicados, pois todos devem ser capazes de ser um mestre durante a arbitragem.

Portanto, as transferências de dados estão sempre entre o mestre (geralmente hospedado em um computador) e os dispositivos conectados. Um dispositivo nem sabe da existência dos outros dispositivos. O hub é apenas outro dispositivo com características especiais.

Amit Maitra
fonte
"você tem isso no SCSI" - em teoria, isso é possível, mas não é muito feito na vida real. Os dispositivos SCSI (que não sejam interfaces em computadores, é claro) capazes de serem mestres de barramento sempre foram e ainda são extremamente raros. A única aplicação de "dois mestres em um barramento SCSI" que já alcançou uso generalizado foi o armazenamento em cluster - você pode ter dois (ou mais) computadores compartilhando o mesmo conjunto de discos. Os VAXclusters podem funcionar dessa maneira. Eles geralmente usavam Ethernet para o restante das comunicações do cluster, mas isso também poderia passar pelo SCSI.
Jamie Hanrahan
1

Para responder à pergunta do título, existe o USB On The Go ; portanto, teoricamente, sim. Um telefone conectado a um hub conectado a uma unidade flash pode ler dados da unidade flash sem precisar de um computador para realmente executar a transferência de dados.

Na prática, o que você realmente tem é um dispositivo que é realmente um host.

Além disso, apenas poucos dispositivos suportam isso e normalmente não existem unidades que eu conheça.

njzk2
fonte
12
O telefone substitui o computador, não uma unidade externa.
OJFord 23/09/14
1
Esta é realmente uma informação muito boa. Ter o OTG significa que você pode realmente substituir um computador completo por um dispositivo "semelhante a um hub" que assume a função do computador. O dispositivo apenas precisa fornecer uma interface para controlar as funções de movimentação e cópia com algo como um painel LCD ou um servidor de páginas da Web acessível por WLAN. As versões avançadas desse dispositivo podem até fornecer acesso à unidade de rede como um servidor NAS.
ADTC
@OllieFord Esta resposta estava indicando que seria possível criar um disco rígido externo que fosse um dispositivo USB OTG, o que é verdade. Essa resposta respondeu à pergunta do título original, embora o título tenha sido alterado para evitar confusão. Essa resposta é um conceito interessante, embora geralmente não seja prático.
reirab 24/09/14
1
É claro que isso é possível, e não duvido que haja alguns exemplos comerciais para esse caso de uso de nicho (provavelmente eles clonam toda a unidade em vez de copiar uma pasta específica), o OTG não é necessário, você só precisa decidir se ainda um "hub" ou apenas um computador primitivo.
OJFord 24/09
Isso não funcionará, porque o hub USB ainda é assimétrico: há uma porta de uplink conectada ao host / OTG atuando como host e portas de downlink conectadas aos discos rígidos. Mesmo que os discos rígidos teve porto OTG (que não têm), eles ainda não podem mudar o porto OTG para o modo de host em uma downlink. Então, ainda não, mesmo teoricamente.
dirkt 04/10