बिना सम्पीडन धीमे के साथ scp क्यों है?


11

मुझे एक 20 GB KVM vdisk फाइल ट्रांसफर करने की जरूरत थी , एक CentOS 6.5 VM की रूट फाइलसिस्टम को एक लैब सर्वर से दूसरे में स्टोर करना। बड़े फ़ाइल आकार और तथ्य यह है कि मैं एक बार कुछ सौ मेगा-बाइट्स के लिए इस तरह के vdisk फ़ाइल को संकुचित किया scpथा मुझे सहज रूप से सम्पीडन सक्षम बनाया था लेकिन मैं एक कम स्थानान्तरण गति को देखकर आश्चर्यचकित था। फिर मैंने और के bzip2साथ संयोजन की कोशिश की और चौंका दिया। यहाँ विधियों और औसत थ्रूपुट का सारांश है।sshcat

  • scp -C vm1-root.img root@192.168.161.62:/mnt/vdisks/, 11 एमबी / एस।
  • bzip2 -c vm1-root.img | ssh -l root 192.168.161.62 "bzip2 -d -c > /mnt/vdisks/vm1-root.img", 5 एमबी / एस। यह भी कम परिणाम नेट पर खोज करने के लिए प्रेरित किया।
  • scp -c arcfour -C vm1-root.img root@192.168.161.62:/mnt/vdisks/, 13 एमबी / एस। सर्वरफॉल्ट पर एक उत्तर-c arcfour में जैसा कि सुझाया गया था, का यह उपयोग किया गया था । यह शायद ही मदद की। अंत में, मैंने संपीड़न को अक्षम कर दिया।
  • scp vm1-root.img root@192.168.161.62:/mnt/vdisks/, 23 एमबी / एस।

क्या संपीड़न को तेज नहीं होना चाहिए था?

संपादित करें: मुझे नहीं पता कि प्रश्न को क्यों अस्वीकृत कर दिया गया है। मुझे लगा कि यहां कुछ सीखना है।

ssh(1)@Sven से मैन पेज टिप प्राप्त करने के बाद , मैंने फ़ाइल ट्रांसफर के कुछ वैकल्पिक तरीकों की कोशिश की जिसमें कम्प्रेशन शामिल न हो, दोनों बेहतर परिणाम के साथ।

  • cat vm1-root.img | ssh -l root 192.168.161.62 "cat > /mnt/vdisks/vm1-root.img", 26 एमबी / एस।

  • nc -l 5678 > /mnt/vdisks/vm1-root.imgरिसीवर nc 192.168.161.62 5678 < vm1-root.imgपर और ट्रांसमीटर पर, 40 एमबी / एस। पोर्ट 5678एक मनमाना है जो उपलब्ध था।

का उपयोग करते ncहुए सबसे तेज़ नकल करने की विधि निकली!

अतीत में, scp -Cजब भी मैंने सोचा कि यह बहुत अच्छा काम करेगा। उदाहरण के लिए, /var/log/messages*आकार में कुछ जीबी के syslogs ( ) को स्थानांतरित करते समय । कुछ सौ केबी / एस के एक असम्पीडित हस्तांतरण दर 1-2 एमबी / एस तक बढ़ जाएगी। यह उदाहरण धीमे कनेक्शन के मामले में आता है जैसा कि मैन पेज में बताया गया है।

मेरे पास एक मामला है, जहां 20 जीबी विभाजन के लिए एक नई बनाई गई vdisk छवि का आकार केवल 200 एमबी है। लगभग 25 एमबी / एस के हस्तांतरण दर के साथ, हम 13 मिनट से अधिक के बजाय केवल 8 सेकंड में नकल कर सकते हैं! स्पष्ट रूप से, scpबिना संपीड़न इस मामले में अक्षम scp -Cहै और इससे भी बदतर है।

मुझे लगता है, यहाँ मुख्य सबक यह है कि, scp -Cकेवल एक सुविधा के रूप में सोचा जाना चाहिए। यदि कोई फ़ाइल महत्वपूर्ण रूप से संपीड़ित हो सकती है, तो पहले स्रोत पर इसे संपीड़ित करने के लिए बेहतर है, संपीड़ित फ़ॉर्म को स्थानांतरित करें और अंत में गंतव्य पर डंपप्रेस करें। उपकरण जो जल्दी से संपीड़न और विघटन करते हैं (उदाहरण के लिए pbzip2 ) अधिक से अधिक मदद करेंगे।

जवाबों:


9

उद्धरण man ssh(जो आधार द्वारा उपयोग किया जाता है scp):

मॉडेम लाइनों और अन्य धीमी कनेक्शन पर संपीड़न वांछनीय है, लेकिन केवल फास्ट नेटवर्क पर चीजों को धीमा कर देगा।

समस्या यह है कि डेटा को संपीड़ित करने में अधिक समय लगता है, बस इसे नेटवर्क पर भेजना है।


वह विशेष रूप से पूछ रहा था कि अंतरण दर कम क्यों है, लेकिन मुझे संदेह है कि वास्तव में एसएचएस की गणना डेटा आकार को कुल समय द्वारा पूरे ऑपरेशन में विभाजित करके की जाती है, और उस हिस्से को अलग नहीं करना जहां यह डेटा को संकुचित करता है और वह हिस्सा जहां यह डेटा को कॉपी करता है। नेटवर्क।
Ernie

@ ईनी: यदि आप 20 एमबी / एस की गति के साथ डेटा संचारित कर सकते हैं, और सिस्टम केवल 15 एमबी / एस के साथ इसे वितरित कर सकता है क्योंकि संपीड़न इतना धीमा है, यह केवल 15 एमबी / एस के साथ प्रेषित किया जाएगा। यही सब है इसके लिए।
स्वेन

@ ईनी: द्वारा छपी अंतरण दर scpमें संपीड़ित / डीकंप्रेसिंग में बिताया गया समय शामिल है। यदि ऐसा नहीं होता तो रिपोर्ट किए गए मूल्य आश्चर्यजनक प्रतीत होंगे।
पीपी

0

इसके अलावा, संपीड़न के शीर्ष पर, एनसी को सबसे अच्छी दर मिलती है क्योंकि यह एन्क्रिप्ट नहीं करता है, या तो। और गैर-हानिपूर्ण संपीड़न डेटा के निरर्थक वर्गों को खोजने पर निर्भर करता है, जो नेटवर्क स्तर पर किए जाने पर आप अधिकतम [बफर-आकार] बाइट्स को देख सकते हैं जहां पहले पूरी फ़ाइल के साथ किया जाता है, यह [फ़ाइल-आकार] बाइट्स है जिसके भीतर शिकार और डुप्लिकेट बाइट वाक्यों को क्रंच करना है।

इसके अलावा डिस्क छवियों को हिलाने के लिए आपको ntfsclone / partclone जैसे फाइल सिस्टम-जागरूक टूल का उपयोग करना चाहिए क्योंकि यहां तक ​​कि संपीड़न बिना ब्लॉक किए हुए सादे लंघन को हरा नहीं सकता है - यदि आपको कोई डेटा ट्रांसफर नहीं करना है तो आपका ट्रांसफर रेट अनंत है। इसके अलावा एक विंडो विभाजन पर स्वैप और हाइबरनेशन फ़ाइलों को नष्ट करने के लिए मत भूलना या आप कबाड़ की नकल कर रहे हैं यह बस दूर फेंक देगा और वैसे भी मनोरंजन करेगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.