Domanda

Sto cercando un buon modo per trasferire quantità non banali (10G > x > 10MB) di dati da una macchina all'altra, potenzialmente su più sessioni.

Ho esaminato brevemente

  • * ftp (sftp, tftp, ftp)
  • http
  • torrent (fuori perché non avrò una rete di seed in generale)
  • rsync (non sono sicuro di poter davvero adattare questo a ciò di cui ho bisogno)

Esistono altri protocolli che potrebbero adattarsi un po 'meglio al conto? La maggior parte di quanto sopra non è molto tollerante ai guasti in sé e per sé, ma si affida piuttosto alle app client / server per colmare il problema. In questa fase mi interessa molto di più del protocollo stesso, piuttosto che una particolare implementazione client / server che funzioni bene.

(E sì, so di poter scrivere il mio su udp, ma preferirei quasi tutto !!)

È stato utile?

Soluzione

Uso rsync (su SSH) per trasferire qualsiasi cosa che possa richiedere più di un minuto.

È facile limitare il limite, sospendere / riprendere e ottenere rapporti sui progressi. Puoi automatizzarlo con le chiavi SSH. È (di solito) già installato (su * nix box, comunque).

A seconda delle necessità, probabilmente rsync può adattarsi. Se stai distribuendo a molti utenti, FTP / HTTP potrebbe essere migliore per le preoccupazioni del firewall; ma rsync è ottimo per i trasferimenti uno a uno o uno a pochi.

Altri suggerimenti

rsync è quasi sempre la scommessa migliore.

poiché trasferisce solo differenze, se il trasferimento viene interrotto, la volta successiva non sarà così diverso come il primo (quando non c'era un file a destinazione)

BitTorrent non richiede una grande rete di semi per essere efficace - funzionerà perfettamente con una seminatrice e un peer. C'è un po 'di overhead nell'impostare un tracker ecc., Ma una volta impostato sarebbe un metodo di trasferimento piacevole, scattante e tollerante ai guasti.

Bene, HTTP è una buona opzione, in quanto supporta il riavvio dei trasferimenti parziali utilizzando intervalli di byte . FTP o TFTP sono utili perché è possibile ottenere un software server estremamente semplice da configurare, anziché dover bloccare qualcosa come un server HTTP.

GridFTP è ciò che Argonne sta usando per trasportare enormi quantità di dati affidabili.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top