हर परत में, पैकेट है खंड को अलग करने के लिए: हेडर, पेलोड
गैर-रॉ सॉकेट का अर्थ है कि आप केवल ट्रांसपोर्ट लेयर पेलोड निर्धारित कर सकते हैं। यानी यह ओएस कार्य है जो परिवहन, नेटवर्क और डेटा लिंक परत शीर्षलेख बनाने के लिए है।
कच्चे सॉकेट का अर्थ है कि आप पैकेट के प्रत्येक अनुभाग, या तो हेडर या पेलोड निर्धारित कर सकते हैं। कृपया ध्यान दें कि कच्चे सॉकेट एक सामान्य शब्द है। मैं कच्चे सॉकेट को वर्गीकृत करता हूं: नेटवर्क सॉकेट एंड डी डेटा-लिंक सॉकेट (या वैकल्पिक रूप से एल 3 सॉकेट और एल 2 सॉकेट)
एल 3 सॉकेट में आप नेटवर्क परत में पैकेट का हेडर और पेलोड निर्धारित कर सकते हैं। उदाहरण के लिए यदि नेटवर्क लेयर प्रोटोकॉल आईपीवी 4 है, तो आप आईपीवी 4 हेडर और पेलोड निर्धारित कर सकते हैं। इस प्रकार आप ट्रांसपोर्ट लेयर हेडर/पेलोड, आईसीएमपी हेडर/पेलोड, रूटिंग प्रोटोकॉल हेडर/पेलोड सेट कर सकते हैं।
एल 2 सॉकेट में आप डेटा लिंक परत में पैकेट का हेडर और पेलोड सेट कर सकते हैं, यानी पैकेट में सब कुछ। इस प्रकार आप एल 3 सॉकेट + एआरपी हेडर/पेलोड, पीपीपी हेडर/पेलोड, पीपीपीओई हेडर/पेलोड, .... निर्धारित करते हैं।
अब प्रोग्रामिंग में:
- सॉकेट (AF_INET, RAW_SOCKET, ...) का अर्थ है L3 सॉकेट, नेटवर्क परत प्रोटोकॉल = आईपीवी 4
- सॉकेट (AF_IPX, RAW_SOCKET, ...) = मतलब है L3 सॉकेट, नेटवर्क परत प्रोटोकॉल IPX
- सॉकेट (AF_INET6, RAW_SOCKET, ...) का अर्थ है L3 सॉकेट, नेटवर्क परत प्रोटोकॉल = आईपीवी 6
- सॉकेट (AF_PACKET, RAW_SOCKET, ...) का अर्थ है एल 2 सॉकेट, डाटा -लिंक परत प्रोटोकॉल = ईथरनेट
तीसरा पैरामीटर पेलोड प्रोटोकॉल निर्दिष्ट करता है।
क्या आप मुझे थोड़ा और स्पष्टीकरण – kar
@kar उदाहरण के साथ संपादित कर सकते हैं। – KBart