यदि मेरे पास एक बड़ा HTTP पैकेट है जो कई टीसीपी पैकेट में विभाजित हो गया है, तो मैं उन्हें एक ही HTTP पैकेट में कैसे पुनर्निर्माण कर सकता हूं? असल में, जहां पैकेट में मैं यह बताना चाहता हूं कि एक HTTP पैकेट कब शुरू/समाप्त हो रहा है? मुझे टीसीपी हेडर में किसी भी झंडे/फ़ील्ड दिखाई नहीं दे रहे हैं जो HTTP पैकेट की शुरुआत या अंत को दर्शाता है।HTTP पैकेट पुनर्निर्माण
संपादित करें: प्रतिक्रियाओं का पालन करें। यदि टीसीपी धारा का प्रबंधन करता है, तो यह कैसे पता चलता है कि स्ट्रीम कब शुरू होती है और समाप्त होती है? क्या यह सॉकेट खोलने और बंद होने से निर्धारित है? कुछ स्तर पर कुछ प्रोटोकॉल, यह जानने में सक्षम होना चाहिए कि HTTP स्ट्रीम/पैकेट कब शुरू हो गया है और समाप्त हो गया है। यही वह है जिसे मैं जानना चाहता हूं।
जिस स्थिति में मैं हूं, मैं सी # में एक पैकेट स्निफ़ेर का उपयोग कर रहा हूं जो टीसीपी पैकेट में पढ़ता है, और मैं HTTP अनुरोध/प्रतिक्रिया/आदि का पुनर्निर्माण करने में सक्षम होना चाहता हूं। इंटरफ़ेस के माध्यम से जा रहा है जैसे वायरशर्क और कई अन्य स्नीफर्स कैसे प्रबंधित करते हैं। वैकल्पिक रूप से कोई सी # पुस्तकालय है जो आपको HTTP स्ट्रीम में उच्च स्तर पर टैप करने देता है, जिससे मुझे HTTP स्ट्रीम/पैकेट को पुनर्निर्माण करने की बचत होती है?
धन्यवाद।
सामग्री-लंबाई क्षेत्र निर्धारित नहीं है तो, वहाँ लंबाई भी काम करने के लिए अन्य तरीके हैं। जैसे http://www.httpwatch.com/httpgallery/chunked/ – mike
थोड़ी देर हो सकती है, लेकिन 'सामग्री-लंबाई' शीर्षलेख कुल पैकेट लंबाई निर्दिष्ट नहीं करता है। यह केवल सामग्री के आकार को निर्दिष्ट करता है, इस प्रकार शरीर, जो हेडर के बाद आता है। शीर्षलेख और शरीर को \ r \ n \ r \ n' से अलग किया जाता है। –