2009-02-24 11 views
23

मुझे यकीन है कि इसके लिए कुछ प्राचीन विरासत कारण है, लेकिन यह क्या है? ऐसा लगता है कि एक विश्वसनीय सेवा वितरण की दिशा में तैयार है।एनएफएस डिफ़ॉल्ट रूप से यूडीपी का उपयोग क्यों करता है?

+1

प्रतीत होता है कि एनएफएस डिफ़ॉल्ट रूप से यूडीपी का उपयोग नहीं करता है, कुछ जवाब देखें। एनएफएसवी 4 भी टीसीपी का उपयोग कर सकता है? – rogerdpack

+1

हां, एनएफएसवी 4 के लिए, https://tools.ietf.org/html/rfc7530#section-3.1 देखें। यूडीपी ज्यादातर इस बिंदु पर दूर जा रहा है। –

उत्तर

22
  • एनएफएस मूल रूप से एक लैन पर उपयोग करने के लिए डिज़ाइन किया गया था जहां हानि दर बहुत कम थी।
  • यूडीपी तेजी से होता है, और कम भूमि के ऊपर
  • एनएफएस राज्यविहीन है, तो यह ग्राहकों पुन: प्रयास करने के लिए

ध्यान दें कि एनएफएस v3 + टीसीपी उपयोग कर सकते हैं आसान है।

1

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

1

प्रदर्शन। यूसीपी में टीसीपी की तुलना में बहुत कम ओवरहेड है। दूसरी तरफ, एनएफएस को अपने आप पर विश्वसनीय परिवहन को संभालना है (टीसीपी की तुलना में) लेकिन चूंकि यह लैन के लिए एक प्रोटोकॉल है जहां कनेक्शन की समस्याएं और पैकेज ड्रॉप (या बेहतर: होना चाहिए) कोई समस्या नहीं है, यह प्रदर्शन के लिए अनुकूलित है।

+0

यह सिर्फ भ्रामक है। यूडीपी डिफ़ॉल्ट परिवहन होने का सबसे महत्वपूर्ण कारण है कि एनएफएस तेजी से लिंक (उदा। जीबीटी/एस या 10 जीबीआईटी/एस ईथरनेट) पर सही ढंग से कॉन्फ़िगर नहीं किया गया है। – Feuermurmel

+0

@Feuermurmel मुझे यकीन नहीं है कि यह भ्रामक क्यों होना चाहिए। जब तक यह एनएफएस प्रोटोकॉल निर्णय जीबी/एस या उच्चतर नेटवर्क बुनियादी ढांचे के लिए एक आम मामला नहीं बनाया गया था। इसके अलावा टीसीपी स्टैक्स अनुकूलित नहीं थे और (अधिक या कम) गलती-सहिष्णु थे क्योंकि वे आज हैं। मुझे पूरा भरोसा है कि एनएफएस डेवलपर्स ने एक हैंडकाक्टेड प्रोटोकॉल को लागू करने का निर्णय लेने से पहले वर्तमान नेटवर्क स्टैक/प्रोटोकॉल पर प्रदर्शन परीक्षण का एक उचित हिस्सा लागू किया। यह उच्च नेटवर्क गति और अन्य अनुकूलन के साथ भी काम नहीं करता है, शायद यही कारण है कि उन्होंने बाद के संस्करणों में डिफ़ॉल्ट को बदल दिया। – Kosi2801

2

मेरा अनुमान है कि यह शायद विरासत (ऐतिहासिक) कारणों के लिए है। मूल रूप से एनएफएस का उपयोग कम विलंबता नेटवर्क पर किया जाता था जहां त्रुटि की बहुत कम संभावना थी, इसलिए टीसीपी कनेक्शन स्थापित करने के लिए 3-तरफा हैंडशेक शुरू करने के उपरांत (सभी संदेशों की द्वि-दिशात्मक स्वीकृति के साथ) की सादगी से अधिक यूडीपी जैसे कनेक्शन रहित प्रोटोकॉल का उपयोग करना।

जब यूडीपी को परिवहन प्रोटोकॉल के रूप में उपयोग किया जाता है, तो संभवतः यदि आवश्यक हो तो रीट्रांसमिशन प्रबंधित करने के लिए यह एनएफएस क्लाइंट तक होगा।

6

यूडीपी एनएफएसवी 2 के लिए डिफ़ॉल्ट है (जिसे किसी को वास्तव में इन दिनों उपयोग नहीं करना चाहिए) लेकिन एनएफएसवी 3 डिफ़ॉल्ट रूप से टीसीपी का उपयोग करता है। टीसीपी माउंट अधिक विश्वसनीय हैं और आप जानते हैं कि यूडीपी के मुकाबले आपके पास नेटवर्क समस्या बहुत तेज है।

+3

यह सच है - जब आप टीसीपी पर एनएफएस का उपयोग कर रहे हैं और नेटवर्क समस्या है तो आपको लंबे समय तक और स्टाइल हैंडल मिलते हैं। यूडीपी के साथ यह यूडीपी पैकेट विस्फोटक की तीव्र शक्ति से ठीक हो जाता है। – synthesizerpatel

0

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

2

यूडीपी स्टेटलेस है, टीसीपी नहीं है, लेकिन टीसीपी में कई पूर्वनिर्धारित गुण हैं जो एनएफएस को नहीं मिला है, या बल्कि एनएफएस विनिर्देशों को नियंत्रित करना चाहता था। विशेष रूप से, जब टीसीपी पैकेट स्थानान्तरण कर रहा है, तो यह समय-समय पर शासन करता है,

यूडीपी के साथ, आप उन ऊपरी हिस्से को खो देते हैं जिन्हें आप विशेष रूप से किसी भी तरह से नहीं चाहते हैं। जब एनएफएस फाइल सिस्टम, मूल रूप से विचार था, सिस्टम एक लेखन करता है, और यदि यह केवल आधा खत्म होता है, तो यह बुरा होगा ... इसलिए एनएफएस (हार्ड मोड में) हमेशा लेनदेन को पूरा करने के लिए पुनः प्रयास करना जारी रखेगा, 1 मिनट, 5, 10, और घंटा, एक दिन ... जब कनेक्शन वापस आता है तो लेनदेन पूरा हो सकता है ...

एनएफएस टीसीपी के बजाय "राज्य" की देखभाल करता है, जिसका डिजाइन एक नया राज्य स्थापित करता है नया कनेक्शन (या पुन: कनेक्शन), कनेक्शन (और राज्य) जो भी (हार्डवेयर) कारण के लिए मर सकता है और एक नया कनेक्शन उस स्थिति को जारी नहीं रखेगा ... फ़ाइल को संसाधित करने के बारे में सोचें ... आप केवल प्रक्रिया को अकेले छोड़ दें, एनएफएस कनेक्शन थोड़ी देर के लिए बाहर निकलता है, लेकिन जब यह वापस आता है, तो सबकुछ अभी जारी रहेगा .. इन दिनों एप्लिकेशन बेहतर हैं, मार्ग असंख्य हैं, चीजें अधिक मॉड्यूलर हैं, और हम बहुत अधिक अधीर हैं ... अगर यह नहीं जा रहा है योजना .. किसी को फोन कॉल मिलती है और उसे लॉग ऑन करना पड़ता है और वैसे भी इसे जा सकता है, वैसे भी वे ... दिन में वापस आ सकते हैं, जब इसे छोड़ा जा सकता है, यह एक और निर्बाध चीज़ थी ...जिस तरह से यह काम करता है वह आज भी अच्छा है, लेकिन अब बहुत सारे विकल्प हैं, और अब और अधिक लोगों को तुरंत सबकुछ ठीक करने की ज़रूरत है। इसके अलावा प्रत्येक अंत गुजरने वाले सत्र का विचार आगे और आगे काम करता है और नौकरियों के बीच में नहीं होता है, जब तक कि दोनों पक्ष सहमत नहीं हैं कि वे कर चुके हैं - दिन में एनएफएस ने आपके लिए बहुत कुछ किया था ....

समानता कुछ हद तक समान है कि आरएस 232 सामान कैसे काम करता है ... इलेक्ट्रॉनिक्स अपनी बात करेगा और अपने बफर लोड करेगा और पूर्ण हो जाएगा और उसे रोकना होगा (या जानकारी खोना होगा), वे जानकारी की उस धारा को पार कर सकते हैं (और उनके बफर खाली कर सकते हैं और जारी रखें) जब सीटीएस (पिन पर धातु पिन में पिन भेजने के लिए साफ़ करें) उच्च या निम्न था (जिसे कभी भी माना जाता था)।

1

यूडीपी का भी उपयोग किया गया क्योंकि यह स्मृति उपयोग को बहुत कम कर सकता है। 1 9 80 के दशक में जब एनएफएस मूल रूप से विकसित हुआ था, तो आपके पास यूनिक्स सिस्टम 4-8 एमबी रैम की तरह होगा, और (कम से कम अकादमिक वातावरण में) "सर्वर" कुछ ही इन 4-8 एमबी सिस्टमों में से एक हो सकता है अतिरिक्त डिस्क इसे लगाया। सर्वर पर रैम का उपयोग एक बड़ी चिंता थी, आप कई एमबी को टीसीपी बफर में खो सकते थे कि मेरे डिस्क कैश के रूप में बेहतर इस्तेमाल किया गया है। इसने मेमोरी प्रेशर को संभालना भी आसान बना दिया, एक अतिरंजित एनएफएस सर्वर बस अनुरोध छोड़ सकता है।

संबंधित मुद्दे