Como construir uma rede local rápida

35

Eu trabalho na produção de filmes e preciso de acesso MUITO rápido a arquivos muito grandes de material bruto. Eu estou atualmente usando docas eSATA 6Gbps para discos rígidos internos, que vão tão rápido quanto a unidade vai.

Se eu fosse usar um servidor e conectar-me às minhas estações de trabalho via rede, que tecnologia (relativamente acessível) me permitiria chegar perto ou exceder a velocidade da unidade?

Ben
fonte
12
Ethernet 10Gbps é bem em "acessível se você tiver orçamento" intervalo nos dias de hoje. No entanto, 8 ou 16 Gbps SAN (rede de área de armazenamento - também conhecido como fiberchannel) pode ser mais adequado para o uso específico?
Ecnerwal
3
Ele é especificamente projetado / otimizado para redes de armazenamento.
Ecnerwal
3
Só quero checar - você está usando SSDs? Se não, essa é uma atualização essencial.
trpt4him
1
Não vejo nenhum valor agregado de uma SAN em comparação a um NAS mais simples e mais barato.
jiggunjer
3
Para responder adequadamente, mais informações são necessárias: qual quantidade de dados deve ser armazenada, quantos usuários simultâneos, onde os dados são acessados ​​(qual tipo de máquina)? Uma rede de 100 Gbs não ajudará se acessada de uma máquina 2 ou 3 com adaptador de rede de 1 Gb.
JFL

Respostas:

31

Aqui no início de 2017, a julgar pelas informações prontamente disponíveis on-line, parece que os HDDs SATA mais rápidos atingem o máximo de cerca de 220 MegaBytes / s, o que corresponde a 1.760 Gigabits / s.

Então, se você está apenas tentando superar a velocidade de uma única unidade, e você está limitado a HDDs por considerações de custo por terabyte para enormes arquivos de vídeo, então 10 Gigabit Ethernet é suficiente.


Como um aparte, note que o Thunderbolt Networking é de 10 Gigabit / seg também, então se você já tem portas Thunderbolt, você pode experimentar isso. Ele pode conseguir bater suas portas de 6 Gigabit eSATA 3, embora eu não tenha certeza sobre isso, porque eSATA é muito específico de armazenamento, enquanto que fazer armazenamento sobre Ethernet tem mais sobrecarga. Observe também que o Thunderbolt é um barramento de desktop; ele atinge apenas alguns metros, não os 100m que 10 Gigabit Ethernet podem suportar. Então, embora Thunderbolt possa ser interessante para experimentar e criar protótipos enquanto você pesa suas opções, provavelmente não é a solução certa a longo prazo para você, a menos que você queira manter todas as suas estações de trabalho e discos conectados em uma grande mesa.


Então, isso foi para HDDs individuais. Mas se você unir essas unidades para que cada leitura ou gravação se espalhe por várias unidades, você poderá obter um desempenho muito melhor do que o desempenho de uma única unidade. Além disso, dependendo do seu orçamento, você pode colocar SSDs NVME PCIe / M.2 em um PC para atuar como servidor / NAS e obter um desempenho de armazenamento extremamente rápido (cerca de 3,4 GigaByte / s = 27 gigabits / s) por dirigir.

Nesse caso, você pode querer olhar para algo mais rápido do que 10 Gigabit Ethernet, mas olhando em volta, parece que os preços saltam dramaticamente além de 10 Gigabit Ethernet. Então, você pode querer fazer uma agregação de links em vários links de 10Gigabit. Eu também vi algumas anedotas on-line que usavam equipamentos de rede, como o usado 40Gbps InfiniBand coisas, pode ser comprado no eBay por muito barato, se você não se importa com os aborrecimentos que vêm com a compra de equipamentos usados ​​no eBay.

Spiff
fonte
1
E quanto às múltiplas placas de rede de 10 Gbit + ligação?
André Borie
2
ligação permitir ter fluxos separados usar links físicos diferentes, mas um fluxo único usará apenas uma placa de rede. Portanto, isso será útil quando vários arquivos forem exibidos para pessoas diferentes ao mesmo tempo, mas não aumentará a largura de banda para um único acesso a arquivos.
JFL
4
@ John No, Ethernet é 94% eficiente com quadros padrão de 1500 bytes, e ainda melhor com quadros jumbo. Eu costumo ver 930+ Mbps de taxa de transferência sem sequer tentar. O Gigabit Ethernet não permite hubs, apenas switches, por isso é sempre full duplex e, portanto, nunca tem colisões.
Spiff
1
A ligação Ethernet @JFL (agregação de link IEEE 802.3ad) distribui carga pacote por pacote, não por fluxo. Como as tecnologias de rede geralmente são projetadas em camadas discretas, a Ethernet (camada 2, a camada de enlace de dados) não tem idéia sobre os protocolos acima, como IP ou TCP, por isso não faz ideia dos fluxos.
Spiff
2
A agregação de @JFL Linux certamente pode usar algumas informações de layer3 + (o Linux pode fazer muitas coisas incomuns), lembre-se de que você realmente precisa dos dois lados para suportar o mesmo método de ligação para ser útil. Se você estiver se conectando a um switch, poderá realmente usar o que o switch suporta.
Zoredache
5

Se você mantiver os discos SATA, a implementação da Ethernet de 10 Gb e a criação de um RAID10 de tamanho razoável no servidor resultará em um aumento de desempenho notável além do de um único disco SATA. Esse será um investimento valioso, pois você pode compartilhar o servidor entre tantas estações de trabalho quantas forem necessárias e adicionar no futuro adicionando switches. Você precisará executar o cabo ethernet Cat-6, já que o Cat-5E não o cortará - não se esqueça de adicionar essa despesa aos seus cálculos. Você também pode adicionar SSDs como cache para acelerar ainda mais o sistema; já que você está trabalhando com imagens de vídeo, eu suponho que você precisa de grandes quantidades de espaço de armazenamento, o que seria extremamente caro para construir puramente com SSDs.

Você pode comprar um servidor de montagem em rack pré-fabricado da Dell ou da HP e usar a placa RAID de hardware ou, se for mais uma pessoa de hardware, comprar um chassi mais barato da Supermicro e construir a máquina de armazenamento usando RAID de software Windows ou Linux. O RAID por hardware geralmente é mais rápido quando um RAID1 está envolvido, uma vez que o software deve gravar em cada disco e esperar que a gravação seja concluída antes de passar para a próxima operação; uma placa RAID geralmente pode gravar em ambos os discos em paralelo e armazenar em cache a operação de gravação, retornando o controle para o sistema operacional imediatamente. Observe, no entanto, que, embora um RAID0 seja ainda mais rápido, você não terá redundância e uma única falha na unidade causará perda total de dados; nunca use um RAID0 quando tiver dados que você deseja manter. Eu recomendo entrar em contato com a Dell ou a HP ou outro grande nome para ver se eles podem ajudá-lo a especificar um sistema para atender às suas necessidades.

Na extremidade superior da escala, você tem Redes de Área de Armazenamento (SANs), mas elas são projetadas para permitir muitas operações de um grande número de clientes separados em paralelo; Um benefício disso é que o throughput é muito alto para um pequeno número de máquinas conectadas, mas é provavelmente um exagero para suas necessidades e muito caro. Na extremidade inferior, você tem dispositivos Network Attached Storage (NAS) que outros mencionaram, mas embora seja muito mais simples que um servidor completo, eu não os recomendo, pois um NAS é freqüentemente uma caixa preta; eles são projetados para serem plug & amp; jogar para a maioria dos usuários e, como resultado, você tem pouco controle sobre o sistema operacional - acabei de mandar de volta um pequeno NAS que comprei para o escritório de um cliente, pois ele se tornou instável após um dia de uso.

Outra vantagem de construir um servidor é que você está concentrando todas as suas filmagens em um só lugar, o que torna prático e relativamente fácil fazer o backup regularmente. Nunca negligencie sua estratégia de backup; um dia você precisará depender disso!

Gargravarr
fonte
3
"O software deve gravar em cada disco e esperar que a gravação seja concluída antes de passar para a próxima operação". Isso não é verdade há várias décadas; Mesmo os discos que não são do servidor suportam atualmente o enfileiramento de comandos. E estritamente falando, com o software DMA não precisa esperar também. Isso é suportado em desktops desde 1998, aproximadamente.
MSalters
Provavelmente, é importante notar que enquanto a primeira sentença é verdadeira para um único usuário, a largura de banda compartilhada de 10Gb significa que, com vários usuários tentando acessar o compartilhamento simultaneamente, a largura de banda que cada um receberá cairá abaixo dos níveis de usuário único SATA.
Dan Neely
2
um NAS não é um dispositivo especial por definição, você pode ter um Linux normal com samba ou NFS e chamá-lo de NAS. A principal diferença é o compartilhamento no nível do arquivo versus o compartilhamento em nível de bloco. Um dispositivo de bloco só pode ser usado por um cliente por vez. Também as SANs são mais caras e levam mais tempo e mais conhecimento para serem configuradas.
jiggunjer
@jiggunjer Muito verdadeiro, mas a maioria dos que construiria um PC com o Samba o chamaria de servidor de arquivos, não de NAS. Eu estou apenas jogando no tecnicismo para significar o dispositivo de propósito especial. Também é verdade sobre as SANs, e é por isso que as classifiquei como excessivas.
Gargravarr
@DanNeely sim, à medida que mais clientes são adicionados com acesso simultâneo, a velocidade para cada estação de trabalho diminui, mas a taxa total de dados que sai do servidor deve permanecer muito alta. Aumentar com o cache SSD pode compensar a maior parte disso.
Gargravarr
3

Nada supera a flexibilidade e a facilidade de configuração da 10gbe, mas a SAS é surpreendentemente conectável em rede por conta própria:

Para um pequeno número de estações de trabalho (n & lt; 8) em que os volumes não precisam ser graváveis ​​em vários computadores ao mesmo tempo, o SAS funciona muito bem. Com um Tyan JBOD (US $ 1.500) e um LSI HBA (US $ 400), obtemos 3.400 MB / s (27 Gbps) de transferências sustentadas para SSD. O JBOD possui um comutador interno com 3 uplinks para HBA, mas os comutadores SAS estão disponíveis para contagens de portas mais altas.

Aqui está um teste de velocidade de um dos nossos volumes:

CDM5 showing 2,862MB/s sequential read with 32 iops in queue.  4k single threaded random read 29MB/s

Internamente, usamos essa solução com Windows Server clusterizado executando espaços de armazenamento que são distribuídos para clientes com 10gb.

Clustered Windows Servers

Mitch
fonte
2

https://www.newegg.com/Product/Product.aspx?Item=N82E16820147593&cm_re=samsung_m.2- -20-147-593- -Produtos

Primeiro, M.2 SSD que deu a placa-mãe correta pode chegar a 2gb-4gb / s, e possivelmente maior. RAID alguns destes juntos, e suas velocidades são ainda maiores.

O uso de várias placas de rede de 10 gb pode aproximar você das velocidades nativas.

Qualquer coisa mais que 10g é muito mais dinheiro.

40 NIC gigabit https://www.serversupply.com/products/part_search/pid_lookup.asp?pid=263133&gclid=Cj0KEQiA9P7FBRCtoO33_LGUtPQBEiQAU_tBgIU2jZrJKf0kXFy96roOllcRkp7j-VoubG_n7xb0_pgaAnaT8P8HAQ

cybernard
fonte
Acima de 10gb também é provável que coloque a velocidade do barramento local como um fator limitante :) Um slot PCI-Express 2.0 x16 é, teoricamente, 64GBit / s - mas overheads em todos os lados (barramento na memória, software do driver na memória, carga da CPU ...) vai roer muito perto de onde você pode estar feliz se o seu 10GBe corre na velocidade da linha ...
rackandboneman
2
@rackandboneman: É por isso que você tem NICs inteligentes. A Ethernet de 10 Gb / s é a velocidade bruta. Os cabeçalhos Ethernet, IP e TCP podem ser manipulados pela NIC, deixando a CPU para lidar apenas com os dados reais.
MSalters
SE esses mecanismos de descarregamento funcionarem em combinação com seu cenário de aplicação - e enquanto eles reduzem o uso da CPU, eles não reduzirão o volume de dados de forma significativa a menos que muito desse tráfego seja lixo em primeiro lugar ...
rackandboneman
O @rackandboneman PCIe 3.0 x16 existe para que as velocidades possam duplicar.
cybernard
10gbe pode ser bem mais barato que isso: Mellanox nic por US $ 180 e 25gbe chega perto Mellanox 25gbe por US $ 300 . O que mata você é o custo da porta nos switches, mas o eBay ou uma malha completa faz com que esse problema desapareça.
Mitch
0

Use uma placa de fibra ethernet com um switch de fibra, idealmente multimodo ou modo único com pads. Se você tem o orçamento que você pode fazer a coisa toda 10gbps, se você usar a agregação de link com uma placa de fibra de porta dupla, você pode obter 20gbps. Como o termo "relativamente acessível" muda dependendo de qual é o seu orçamento, números reais sobre o que você está disposto a gastar seriam úteis.

Sunny
fonte
0

A maneira mais barata seria usar a agregação de link (o IE executa N cabos, normalmente 2) em vez de um.

Dessa forma, um link barato de 1 Gb para a sujeira se tornará um link de 2 Gb.

Obviamente, isso significa que você precisa de pelo menos 4 portas para um único servidor cliente.

Antzi
fonte
e o cliente precisa de 2 portas ... Os switches simples funcionam com isso? ou deveria ser um link direto?
jiggunjer
@jiggunjer switch simples pode ser usado para isso, mas você precisa de uma configuração especial em todos os computadores / servidores que usam este esquema
Antzi
Essa agregação é a mesma que a ligação mencionada nos comentários da resposta de @Spiff? Nesse caso, a largura de banda não é aumentada para o acesso a um único arquivo ...
jiggunjer
@jiggunjer Isso realmente se resume a como você faz a configuração, então eu realmente não posso responder.
Antzi
1
@FlorianCastellane mais recente barato que eu comprei não era. Depende das especificações
Antzi