fastest possible data transfer

Sarantis Paskalis paskalis at di.uoa.gr
Wed Feb 13 17:02:59 EET 2008


On Mon, Feb 11, 2008 at 03:20:17PM +0200, Alexandros Papadopoulos wrote:
> θα ήθελα τις γνώμες/εμπειρίες σας σχετικά με το παρακάτω: Έχουμε δύο
> linux μηχανάκια, το Α και το Β. Στο Α υπάρχει μια διαδικασία που
> δημιουργεί τεράστια αρχεία (αρκετά GB έκαστο), τα οποία θέλουμε να
> μεταφέρουμε με κάποιο τρόπο στο Β. Τα δύο μηχανάκια έχουν ένα GigE
> crossover μεταξύ τους.
>
> Η ερώτηση είναι: ποιος είναι ο γρηγορότερος τρόπος;
>
> rsync?
> NFS?
> SMB? (!)
> netcat?

Προκειμένου για μεταφορά μέσω rsync, http, ftp, κτλ, η απόδοση είναι 
ουσιαστικά η απόδοση του TCP, και για τόσο μεγάλα αρχεία ακριβώς η ίδια.
Υπάρχει πιθανότητα το bottleneck να μην είναι στο δίκτυο, αλλά στους 
επιμέρους υπολογιστές (διάβασμα, γράψιμο στο δίσκο, επεξεργασία, κτλ).  

Αν αυτό δεν συμβαίνει, τότε το μόνο overhead που μπαίνει είναι αυτό των 
επικεφαλίδων στα πακέτα (IP, TCP, ethernet).  Εκεί μπορείς να παίξεις με 
το frame size (default για Ethernet: 1500 bytes).  Οι GigE κάρτες 
υποστηρίζουν jumbo frames (9K bytes), τα οποία προσφέρουν μείωση στα 
transmitted overhead bytes (από ~3.6% σε ~0.6%), αλλά και μείωση των 
interrupts που προκαλεί η λήψη κάθε πακέτου (κατά 6 φορές).

Δεν ξέρω κατά πόσο είναι εφικτό να βάλεις περισσότερες GigE κάρτες σε 
κάθε μηχανάκι και να τις συνδυάσεις ως multilink PPP.

-- Sarantis




More information about the Linux-greek-users mailing list