ईथरनेट को कैसे पता चलता है कि फ्रेम कितना लंबा है?


17

विकिपीडिया पर ईथरनेट प्रविष्टि को देखते हुए , मैं यह पता नहीं लगा सकता कि यह कैसे इंगित किया जाता है कि ईथरनेट फ्रेम कितना लंबा है। EtherType / लंबाई हेडर फ़ील्ड स्पष्ट रूप से या तो एक फ़्रेम प्रकार या एक स्पष्ट लंबाई का संकेत दे सकता है, और मैं अनुमान लगा रहा हूं कि फ्रेम प्रकार के मामले में, यह पता लगाने के लिए कुछ अन्य तर्क करना होगा कि पैकेट कितना लंबा है। उदाहरण के लिए, यदि EtherType फ़ील्ड 0x0800 है, जो IPv4 पेलोड को इंगित करता है, और इसलिए प्राप्त NIC को IP पैकेट की लंबाई का पता लगाने के लिए पेलोड के पहले 32 बिट्स की जांच करनी होगी, और इसलिए इसकी कुल लंबाई का पता लगाना होगा ईथरनेट फ्रेम, और पता है कि एंड-ऑफ-फ़्रेम चेकसम और इंटरफ़्रेम गैप को कब देखना है।

क्या यह ध्वनि सही है? मैंने ईथरनेट (भाग 1, वैसे भी) के लिए IEEE 802.3 कल्पना को देखा , जो इसे पुष्टि करने के लिए लगता है, लेकिन यह बहुत अपारदर्शी है।


जवाबों:


21

फिजिकल कोडिंग सबलेयर फ्रेम को डीलिमिट करने और मैक लेयर तक भेजने के लिए जिम्मेदार है।

उदाहरण के लिए, गीगाबिट ईथरनेट में, 8B / 10B एन्कोडिंग योजना 8-बिट बाइट को एनकोड करने के लिए 10 बिट कोडग्रुप का उपयोग करती है। अतिरिक्त दो बिट्स बताते हैं कि क्या एक बाइट नियंत्रण जानकारी या डेटा है। नियंत्रण जानकारी कॉन्फ़िगरेशन, Start_of_packet, End_of_packet, IDLE, Carrier_extend, Error_propagation हो सकती है।

यह है कि एक एनआईसी को पता है कि एक फ्रेम कहां से शुरू और समाप्त होता है। इसका मतलब यह भी है कि फ्रेम की लंबाई पूरी तरह से डिकोड होने से पहले ज्ञात नहीं है, सी में एक पूर्ण-समाप्त स्ट्रिंग के अनुरूप है।


1
यह IEEE Std 802.3-2015 (धारा तीन), 36.2.4.2 और 36.2.4.15 में निर्दिष्ट है (इस अपठनीय चीज के अन्य स्थानों के बीच वे मानक कहते हैं;)।
स्टेफानक्ट

1

जिस लेख को आप वास्तव में अपने प्रश्न का उत्तर देना चाहते हैं वह है http://en.wikipedia.org/wiki/E ईथरनेट_II_framing ; जो कहते हैं:

चूंकि यह उद्योग-विकसित मानक एक औपचारिक IEEE मानकीकरण प्रक्रिया से गुजरा है, इसलिए EtherType फ़ील्ड को नए 802.3 मानक में (डेटा) लंबाई फ़ील्ड में बदल दिया गया था। (ओरिजिनल इथरनेट पैकेट एक स्पष्ट लंबाई की गिनती के बजाए इसे घेरने वाले फ्रेम के साथ अपनी लंबाई को परिभाषित करते हैं।) चूंकि पैकेट प्राप्तकर्ता को अभी भी यह जानना है कि पैकेट की व्याख्या कैसे की जाती है, इसलिए मानक को लंबाई का पालन करने और निर्दिष्ट करने के लिए IEEE 802.2 हेडर की आवश्यकता होती है। पैकेट प्रकार।


मुझे लगता है कि मैं स्पष्ट नहीं हूं कि "मूल ईथरनेट पैकेट उस फ्रेम के साथ अपनी लंबाई को परिभाषित करता है जो इसे घेरता है" का अर्थ है। प्रस्तावना / शुरू-फ्रेम बिट्स बहुत स्पष्ट हैं, लेकिन ग्राहक को कैसे पता चलता है कि फ्रेम का अंत हो गया है? यह सीआरसी और इंटरफ्रेम अंतर के बीच अंतर कैसे करता है? IFG यादृच्छिक विद्युत शोर है, आसानी से वास्तविक संकेत से अलग है?
22

"क्लासिक ईथरनेट" में फ्रेम का अंत अवैध एन्कोडिंग द्वारा संकेत दिया गया है।
वेटाइन

@womble, आपके द्वारा जोड़ा गया लेख अच्छा है लेकिन आपके द्वारा उद्धृत बिट संदर्भ से बहुत भ्रामक है। ईथरनेट नेटवर्क पर अधिकांश फ्रेम आज एक स्पष्ट लंबाई क्षेत्र का उपयोग नहीं करते हैं।
पीटर ग्रीन

-3

तार्किक रूप से, केवल तीन विकल्प हैं:

  1. जैसे स्थिर फ्रेम आकार का उपयोग करना।
  2. इसके हेडर, या कहीं और, या यहां तक ​​कि कुछ झंडे के साथ इसे बांधने में फ्रेम आकार निर्दिष्ट करना।
  3. फ्रेम भेजने का कोई मतलब नहीं है

ईथरनेट में इनमें से एक काम करता है क्योंकि आधुनिक नेटवर्किंग के लिए वर्तमान में कोई अन्य विकल्प उपलब्ध नहीं हैं;) 1 और 3 ईथरनेट के लिए गलत हैं, इसलिए आप सही हैं!


-3

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

http://www3.rad.com/networks/infrastructure/lans/etherform.htm#_ieee

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