दूरस्थ एक्स सत्रों को गति देना


16

मेरे पास उबंटू 11.10 सर्वर चलने वाली एक रिमोट मशीन है, जिससे मैं ओएस एक्स 10.7.3 से एसएसएच के माध्यम से जुड़ता हूं।

होस्ट Remote.example.com
 फॉरवर्डएक्स 11 हां
 ForwardX11Trust हाँ

कभी-कभी मैं वहां (सबसे विशेष रूप से gitk) एक जीयूआई एप्लिकेशन लॉन्च करना चाहता हूं । लेकिन यूआई धीमी है। रिमोट मशीन और मेरे अपने मैक दोनों में अच्छा इंटरनेट कनेक्शन है। उनके बीच पिंग लगभग 55ms है, और कोई पैकेट नुकसान नहीं है। क्या कुछ है जो मैं चीजों को गति देने के लिए कर सकता हूं?

कुछ अन्य दूरस्थ डेस्कटॉप समाधान सेट करना एक विकल्प है, लेकिन मैं इससे बचना चाहूंगा क्योंकि मुझे इस एप्लिकेशन की बहुत बार आवश्यकता नहीं है।


क्या आपने आवेदन को लागू करते समय संपीड़न को सक्षम करने का प्रयास किया था?
जर्नीमैन गीक

1
धन्यवाद। जैसा कि आप मेरी .ssh/configबोली से देख सकते हैं , नहीं, मैंने नहीं किया। मैं जोड़ दिया है Compression yesऔर CompressionLevel 9मेजबान config करने के लिए। यह अब थोड़ा तेज़ लगता है, लेकिन आरामदायक उपयोग के लिए अभी भी पर्याप्त नहीं है। क्या मैं कुछ और कर सकता हूँ?
अलेक्जेंडर ग्लैडिश

@AlexanderGladysh आपकी अपस्ट्रीम गति क्या है?
EKW

scpउस दूरस्थ मशीन को अपलोड या डाउनलोड करते समय 1.2 MB / s कहता है , जो कम या ज्यादा वह संख्या है जो मेरे ISP द्वारा विज्ञापित की जाती है।
अलेक्जेंडर ग्लैडीश

1
यदि यह संभव है, तो sshfs या किसी अन्य नेटवर्क फाइलसिस्टम का उपयोग करना और स्थानीय रूप से आपके एप्लिकेशन को चलाना संभवत: तेज होगा (जब तक कि आपका गिट रेपो वास्तव में बड़े पैमाने पर न हो)।
एरन

जवाबों:


15

X11 फ़ॉरवर्डिंग के लिए सर्वश्रेष्ठ SSH विकल्पों का लेख डिफ़ॉल्ट एईएस सिफर, आर्कफोर और ब्लोफ़िश सिफर्स के बजाय का उपयोग करने की सिफारिश करता है जो बहुत बेहतर प्रदर्शन करते हैं।

इसलिए एक का उपयोग करना चाहिए:

ssh -c arcfour,blowfish-cbc -XC host.com

एसईबी के तकनीकी नोट (यदि साइट नीचे है तो एक संग्रहीत संस्करण है ) इसके बजाय अनुशंसा करें:

ssh -Y -C -o CompressionLevel=9 -c arcfour,blowfish-cbc user@hostname

यह कुछ और गति लाभ को बेहतर बनाने में मदद कर सकता है जो आपने पहले ही संपीड़न के साथ देखे थे।


1
एईएस, आर्कफोर और ब्लोफ्लिश संपीड़न नहीं हैं; वे क्रिप्टोग्राफी हैं। ध्यान दें कि एईएस से दूर होकर, आप कनेक्शन की सुरक्षा कम करते हैं; इसलिए यह कुछ अवसरों में संभव नहीं है। -Cविकल्प कुंजी यहाँ, हालांकि, क्योंकि कि संपीड़न है। संपीड़न स्तर सेट करने के साथ देखें, इसे मापना सुनिश्चित करें क्योंकि यह CPU पर भारी प्रभाव डाल सकता है ...
Tamara Wijsman

इसके अलावा, कुछ सीपीयू में एईएस एन्क्रिप्शन के लिए हार्डवेयर त्वरण है।
लूट

6

आपने उल्लेख किया कि आप कुछ अन्य दूरस्थ डेस्कटॉप समाधान सेट नहीं करना चाहते हैं लेकिन आप प्रदर्शन के बारे में परवाह करते हैं। X11 एक बहुत ही कुशल प्रोटोकॉल नहीं है, इसलिए आप केवल तब तक मामूली सुधार की उम्मीद कर पाएंगे जब तक आप एक अधिक आधुनिक प्रोटोकॉल का उपयोग नहीं करते हैं।

NX (NoMachine) शायद आपकी सबसे अच्छी पसंद है। यह अभी भी ssh का उपयोग करता है, इसलिए यह अन्य डेस्कटॉप प्रोटोकॉल की तुलना में बहुत अधिक अतिरिक्त प्रयास नहीं होना चाहिए जिसमें फ़ायरवॉल सेटिंग्स में बदलाव की आवश्यकता हो सकती है, आदि Fedora के लिए NX पैकेज हैं, इसलिए मुझे लगता है कि वे Ubuntu के लिए भी उपलब्ध हैं।

यदि आप प्रश्न पूछने के लिए समय निकालने के लिए प्रदर्शन की पर्याप्त देखभाल करते हैं, तो उम्मीद है कि आप NX सीखने के लिए कुछ और मिनट बिता सकते हैं।

EDIT: यह स्पष्ट करने के लिए कि ssh पर X11 कभी तेज क्यों नहीं होगा: एक्स प्रोटोकॉल निम्न-स्तरीय ड्राइंग जैसे कि लाइनों और सर्कल के साथ, और निम्न-स्तरीय घटनाओं जैसे "माउस 3 पिक्सेल को बाईं ओर ले जाता है।" जीटीके और क्यूटी जैसे आधुनिक जीयूआई टूलकिट लाइनों को नहीं खींचते हैं, वे चित्र बनाते हैं। जब X11 SSH से अधिक हो जाता है, तो उसे लगातार छवि डेटा और निम्न-स्तरीय माउस ईवेंट भेजना चाहिए। NX, VNC या रिमोट डेस्कटॉप जैसे उच्च-स्तरीय प्रोटोकॉल, टूलकिट के काम करने के तरीके के बारे में जानकारी देकर बैंडविड्थ और विलंबता को कम कर सकते हैं। उदाहरण के लिए, वे माउस ईवेंट भेजने की आवश्यकता से बच सकते हैं, जब वे खिसकते हैं, तो वे हज़ारों रेडवार्स से बच सकते हैं और वे मेनू जैसे स्क्रीन के क्षेत्रों को कैश कर सकते हैं। यदि प्रदर्शन और भी मामूली है, तो कच्चे X11 हमेशा गलत विकल्प है। सौभाग्य से, वहाँ तेजी से विकल्प की एक भीड़ है कि कॉन्फ़िगर और उपयोग करने के लिए आसान कर रहे हैं।


ऐसा नहीं है कि मैं दूरस्थ डेस्कटॉप का उपयोग नहीं करना चाहता हूं, लेकिन मैं पहले अपने एक्स 11 कनेक्शन को अनुकूलित करने की कोशिश करना चाहूंगा :-) धन्यवाद, मैं एनएक्स को देखूंगा।
अलेक्जेंडर ग्लैडिश
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.