आपको अधिकतम बाइट्स कैसे प्राप्त होते हैं जिन्हें sendto(..)
को यूडीपी पोर्ट के रूप में खोले सॉकेट के लिए कॉल किया जा सकता है?भेजने के लिए अधिकतम बफर लंबाई?
उत्तर
चूंकि यूडीपी कनेक्शन उन्मुख नहीं है, यह संकेत करने का कोई तरीका नहीं है कि दो पैकेट एक साथ हैं। नतीजतन आप एक एकल आईपी पैकेट (65535) के अधिकतम आकार से सीमित हैं। जो डेटा आप भेज सकते हैं वह कुछ हद तक कम है, क्योंकि आईपी पैकेट आकार में आईपी हेडर (आमतौर पर 20 बाइट्स) और यूडीपी हेडर (8 बाइट्स) शामिल हैं।
ध्यान दें कि इस आईपी पैकेट को छोटे पैकेट में फिट करने के लिए खंडित किया जा सकता है (उदाहरण के लिए ~ ईथरनेट के लिए 1500 बाइट्स)।
मुझे इस ओएस को प्रतिबंधित करने के बारे में पता नहीं है।
getockopt() का उपयोग करें। This site आपके द्वारा पुनर्प्राप्त किए जा सकने वाले उपयोग और विकल्पों का एक अच्छा टूटना है।
Windows में, आप कर सकते हैं:
int optlen = sizeof(int); int optval; getsockopt(socket, SOL_SOCKET, SO_MAX_MSG_SIZE, (int *)&optval, &optlen);
लिनक्स के लिए, यूडीपी आदमी पृष्ठ के अनुसार, कर्नेल MTU खोज का उपयोग करेगा (यह जाँच करेगा क्या अधिकतम यूडीपी पैकेट आकार यहाँ और गंतव्य के बीच है , और इसे चुनें), या यदि एमटीयू खोज बंद है, तो यह अधिकतम आकार इंटरफ़ेस एमटीयू और खंड को बड़ा कर देगा। यदि आप ईथरनेट पर भेज रहे हैं, तो सामान्य एमटीयू 1500 बाइट्स है।
मैक ओएस एक्स पर (SO_SNDBUF) भेजने और प्राप्त करने (SO_RCVBUF) के लिए अलग-अलग मान हैं। यह भेजने बफर (आदमी getsockopt) के आकार है:
getsockopt (जुर्राब, SOL_SOCKET, SO_SNDBUF, (int *) & optval, & optlen);
एक बड़ा संदेश भेजने की कोशिश कर रहा है (स्थानीय लूपबैक के माध्यम से भेजे गए यूडीपी पर तेंदुए 9216 ऑक्टेट्स पर) परिणामस्वरूप "संदेश बहुत लंबा/EMSGSIZE" होगा।
- 1. अधिकतम लंबाई
- 2. अधिकतम लंबाई
- 3. अधिकतम सरणी लंबाई कोटा
- 4. अधिकतम अपलोड लंबाई
- 5. यूयूआईडी अधिकतम वर्ण लंबाई
- 6. अधिकतम बफर आकार
- 7. एंड्रॉइड एडिटटेक्स्ट अधिकतम लंबाई
- 8. एसक्यूएल सीई अधिकतम लंबाई
- 9. बाइट की अधिकतम लंबाई []?
- 10. अधिकतम (लंबाई (क्षेत्र)) mysql
- 11. अधिकतम पृष्ठ लंबाई
- 12. अधिकतम पहचानकर्ता लंबाई
- 13. स्कैला बफर: आकार या लंबाई?
- 14. यूडीपी sendto() और recvfrom() अधिकतम बफर आकार
- 15. अधिकतम MIMETYPE लंबाई जब डीबी
- 16. विंडोज उपयोगकर्ता नाम अधिकतम लंबाई
- 17. शीर्षक विशेषता की अधिकतम लंबाई
- 18. node.js में अधिकतम अनुरोध लंबाई
- 19. MySQL और GROUP_CONCAT() अधिकतम लंबाई
- 20. एंड्रॉइड: यूआरएल की अधिकतम लंबाई
- 21. अधिकतम विधि नाम की लंबाई
- 22. अधिकतम डिफ़ॉल्ट लंबाई xsd स्ट्रिंग
- 23. एचटीएमएल आईडी के लिए व्यावहारिक अधिकतम लंबाई क्या है?
- 24. एमवीसी 2 संपादक के लिए अधिकतम लंबाई और आकार
- 25. ईएनएन मूल्य के लिए अधिकतम लंबाई क्या है?
- 26. क्रोम ब्राउज़र में यूआरएल के लिए अधिकतम लंबाई
- 27. कॉलम मान की लंबाई प्राप्त करें, कॉलम की अधिकतम लंबाई
- 28. MATLAB फ़ंक्शन नामों की अधिकतम लंबाई
- 29. आरएसएस विवरण आइटम की अधिकतम लंबाई
- 30. यूआरएल टुकड़े की अधिकतम लंबाई (हैश)