Computer >> कंप्यूटर ट्यूटोरियल >  >> नेटवर्किंग >> नेटवर्किंग

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड

Cher Don द्वारा

Open Systems Interconnection मॉडल को जानें

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड

अवलोकन

इस श्रृंखला में, हम बुनियादी बातों से निपटेंगे जैसे:
(भाग 1) DNS कैसे काम करता है?
(भाग 2) नेटवर्क स्टैक, OSI मॉडल [आप यहां हैं!]
(भाग 3) HTTP मेथड्स और फॉर्मेट्स
(भाग 4) क्लाइंट पहचान
(भाग 5) बेसिक/डाइजेस्ट ऑथेंटिकेशन
(भाग 6) SSL/TLS के साथ HTTPS काम करना

OSI मॉडल

Open Systems Interconnection (OSI) मॉडल कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए एक मानकीकृत मॉडल है। यह अंतर्निहित तकनीक के बारे में नहीं है, बल्कि संचार में शामिल परतों के बारे में है। आइए OSI मॉडल के भीतर विभिन्न परतों का पता लगाएं:

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड विशिष्ट 5-लेयर्ड OSI मॉडल

1. Application Layer (एप्लिकेशन परत)

यह परत कनेक्शन स्थापित होने के बाद एप्लिकेशन को नेटवर्क पर संवाद करने की अनुमति देती है, जैसे Web Browser (एप्लिकेशन) से Server तक। इस लेयर में प्रोटोकॉल के उदाहरणों में HTTP और TELNET शामिल हैं।

HyperText Transfer Protocol (HTTP)

इंटरनेट पर फाइल ट्रांसफर करने के लिए नियमों का एक सेट। उदाहरण के लिए, जब आप ब्राउज़र में URL दर्ज करते हैं, तो ब्राउज़र वेबपेज के लिए HTTP रिक्वेस्ट भेजता है। होस्ट तब वेबपेज को, उसमें मौजूद सभी तत्वों जैसे इमेज, टेक्स्ट, वीडियो, स्टाइलिंग फॉन्ट्स आदि के साथ वापस करता है।

2. Transport Layer (ट्रांसपोर्ट परत)

यह लेयर संदेशों के होस्ट-टू-होस्ट संचार के लिए जिम्मेदार है। इस लेयर में प्रोटोकॉल के उदाहरणों में TCP और UDP शामिल हैं।

Transmission Control Protocol (TCP)

सबसे आम कनेक्शन-ओरिएंटेड प्रोटोकॉल। यह परिभाषित करता है कि नेटवर्क वार्तालाप कैसे स्थापित और बनाए रखा जाए। यह क्लाइंट और होस्ट के बीच एक कनेक्शन (जिसे सॉकेट कहा जाता है) स्थापित करने के लिए 3-वे हैंडशेक में 3-तरफा हैंडशेक में जिम्मेदार है।

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड

डेटा का अनुरोध करने वाला उपयोगकर्ता सर्वर को SYN डेटा पैकेट भेजेगा, सिंक्रनाइज़ेशन का अनुरोध करते हुए। सर्वर तब उपयोगकर्ता को SYN-ACK के साथ प्रतिक्रिया देगा, यह दर्शाता है कि उसने डेटा पैकेट को स्वीकार किया है, और कनेक्ट करना भी चाहता है। कनेक्शन तब स्थापित होता है जब उपयोगकर्ता सर्वर को अंतिम ACK भेजता है।

TCP अपनी सुंदरता के कारण सबसे आम है, जिसमें यह निम्नलिखित की पेशकश करने में सक्षम है:

कनेक्शन-ओरिएंटेड संचार
डेटा एक्सचेंज से पहले कनेक्शन सुनिश्चित करने के लिए एंड-पॉइंट्स के बीच हैंडशेक प्रोटोकॉल स्थापित करें, और डेटा स्ट्रीम (डेटा पैकेट्स) के रूप में ट्रांसमिट करें।

विश्वसनीयता
चेकसम्स का उपयोग करके, यह सुनिश्चित करता है कि ट्रांसमिट और प्राप्त डेटा पैकेट्स समान हैं। यदि लापता/भ्रष्ट पैकेट्स हैं, तो यह सेंडर को NACK संदेश भेजकर डेटा पैकेट्स के पुनः ट्रांसमिशन का अनुरोध करेगा।

क्रम
डेटा पैकेट्स को क्रमांकित और ट्रांसमिट किया जाता है। जैसे, TCP सुनिश्चित करेगा कि प्राप्त पैकेट्स एप्लिकेशन को डिलीवर करने से पहले पुनः क्रमबद्ध हैं।

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

मल्टीप्लेक्सिंग
मूल रूप से, यह एक ही सॉकेट पर सूचना के कई स्ट्रीम्स को समवर्ती रूप से भेजने में सक्षम है। ये सॉकेट पर विभिन्न पोर्ट्स के माध्यम से किए जाते हैं। हम लेख में आगे मल्टीप्लेक्सिंग और पाइपलाइनिंग के बीच अंतर पर चर्चा करेंगे।

User Datagram Protocol (UDP)

TCP के समान होते हुए, यह एक कनेक्शन-लेस प्रोटोकॉल है। यह TCP का पूर्ण विपरीत है, जो इसे अविश्वसनीय और अनियंत्रित बनाता है। ड्रॉप्ड पैकेट्स को पुनः ट्रांसमिट नहीं किया जाएगा, जिससे डेटा में अंतराल पैदा होंगे।

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड

हालांकि, यह इसे समय-संवेदनशील एप्लिकेशन के लिए सर्वश्रेष्ठ बनाता है, जैसे इंटरनेट पर वॉयस कॉल (VoIP)। ऐसा इसलिए है क्योंकि इसे ट्रांसमिट करने से पहले 3-वे हैंडशेक की आवश्यकता नहीं होती, जिससे यह तेज़ होता है। इसके अलावा, ड्रॉप्ड डेटा पैकेट्स VoIP में कोई समस्या नहीं हैं, क्योंकि मानव कान VoIP में ड्रॉप्ड पैकेट्स के साथ आने वाले छोटे अंतराल को संभालने में बहुत अच्छा है।

3. Network Layer (नेटवर्क परत)

यह लेयर नेटवर्क कनेक्शन के लिए डेटा रूटिंग पथ प्रदान करने के लिए जिम्मेदार है। मूल रूप से, यह सबसे तार्किक पथ के साथ नेटवर्क पर डेटा पैकेट्स को स्थानांतरित करता है।

Internet Protocol (IP)

डेटा पैकेट्स की संरचना को परिभाषित करता है, साथ ही इसे स्रोत और गंतव्य जानकारी के साथ लेबल करता है।

स्रोत और गंतव्य जानकारी IP एड्रेस के रूप में होती है, जो 104.16.121.127(IPv4), या 2001:db8:0:1234:0:567:8:1(IPv6) के रूप में हो सकती है।

4. Link/ Physical Layer (लिंक/भौतिक परत)

यह लेयर OSI मॉडल की जड़ है, जहां जानकारी या तो लोकल एरिया नेटवर्क (LAN) के लिए लिंक लेयर में, और फिजिकल लेयर में एक फिजिकल सिग्नल जैसे इलेक्ट्रिकल, मैकेनिकल मीडियम कोड वर्ड्स या सिम्बल्स के रूप में ट्रांसमिट होती है।

रूट्स को विजुअलाइज़ करना

tracert google.com का उपयोग करके, रूट को क्लाइंट-साइड (आपका कंप्यूटर) से होस्ट (google.com) तक ट्रेस किया जा सकता है।

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड

उपरोक्त से, आप मेरे डिवाइस 192.168.1.254 से राउटर 10.243.128.1 तक शुरू होने वाले रूट को देख सकते हैं, इंटरनेट सर्विस प्रोवाइडर (ISP) के माध्यम से जो पुर्तगाल में स्थित है, और इसी तरह आगे।

पूरक परतें

TCP/IP मॉडल

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड TCP ड्रॉप्ड डेटा पैकेट्स के पुनः ट्रांसमिशन का अनुरोध करेगा, और उन्हें पुनः क्रमबद्ध करेगा

IP केवल डेटा पैकेट की संरचना के लिए जिम्मेदार है। जैसे, यदि डेटा पैकेट भ्रष्ट या ड्रॉप हो जाता है तो यह सुधार नहीं करेगा। यहीं TCP खेल में आता है, क्लाइंट को भेजने से पहले डेटा पैकेट्स को क्रमांकित करता है। क्लाइंट की तरफ, TCP खोए/भ्रष्ट पैकेट्स के पुनः ट्रांसमिशन का अनुरोध करेगा, और फिर डेटा के पैकेट्स को पुनर्व्यवस्थित करेगा।

HTTP/TCP मॉडल

जैसा कि हमने पहले उल्लेख किया है, HTTP अब TCP हैंडशेक द्वारा बनाए गए कनेक्शन के माध्यम से अनुरोध कर सकता है। लेकिन वे एक दूसरे के पूरक कैसे हैं?

HTTP Persistent Connections
यह एक ही TCP कनेक्शन पर कई HTTP रिक्वेस्ट/रिस्पॉन्स की अनुमति देगा, हर रिक्वेस्ट/रिस्पॉन्स पर एक नया कनेक्शन खोलने के विपरीत।

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड Persistent Connection के लिए सैंपल रिस्पॉन्स

यह HTTP Header के माध्यम से किया जाता है, जहां Connection: Keep-Alive। डिफ़ॉल्ट रूप से, कनेक्शन केवल 30 सेकंड के आइडल के बाद एक अन्य रिस्पॉन्स पर बंद होगा जहां Connection: Close भेजा जाता है।

TCP Slow Start
जैसा कि पहले उल्लेख किया गया है, TCP फ्लो कंट्रोल का समर्थन करता है। यह TCP Slow Start के माध्यम से किया जाता है, जो नेटवर्क कंजेशन के लिए रोकथाम का एक रूप है।

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड

सेंडर के पास एक कंजेशन विंडो (CWND) है और रिसीवर के पास एक रिसीवर विंडो (RWND) है। यदि डेटा कंजेशन/रिसीवर विंडो से बड़ा है, तो क्रमशः बफर अंडर/ओवररन होगा।

इसे रोकने के लिए, सेंडर एक छोटे कंजेशन विंडो (CWND = 1) के साथ डेटा पैकेट भेजकर शुरू करेगा, रिसीवर की रिसीवर विंडो के लिए धीरे-धीरे जांच करेगा।

रिसीवर एक एक्नॉलेज के साथ प्रतिक्रिया देगा, जिससे सेंडर को हर बार डेटा पैकेट्स को दोगुना करने के लिए प्रेरित किया जाएगा जब तक कि कोई एक्नॉलेज प्राप्त न हो। इस बिंदु पर, डेटा पैकेट्स की इष्टतम संख्या खोज ली गई है, जिससे अन्य कंजेशन कंट्रोल एल्गोरिदम कनेक्शन को इस गति पर बनाए रख सकते हैं।

एक साथ काम करना
इसलिए, TCP Slow Start डेटा पैकेट्स की इष्टतम संख्या का पता लगाने में सक्षम है जिसे कनेक्शन बंद होने से पहले भेजा जाए। यह होस्ट से क्लाइंट को भेजे गए डेटा की मात्रा को बफर ओवररन के जोखिम के बिना अनुकूलित करने की अनुमति देगा (डेटा उससे तेजी से भेजा जाता है जितना इसे प्राप्त किया जा सकता है)।

अन्य HTTP फीचर्स

HTTP Pipelining

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड

HTTP/1.1 में यह फीचर एक ही सॉकेट पर एक साथ कई रिक्वेस्ट भेजने की अनुमति देता है, बिना रिस्पॉन्स की प्रतीक्षा किए। हालांकि, इसे नए HTTP/2 वर्जन में TCP Multiplexing द्वारा बदल दिया गया है।

मुख्य अंतर यह है कि हालांकि दोनों एक ही सॉकेट पर एक साथ कई रिक्वेस्ट की अनुमति देते हैं, Pipelining को अभी भी रिस्पॉन्स को क्रम में भेजने की आवश्यकता होगी। इसका मतलब है कि यदि अनुरोधित आइटम क्रम (A, B, C) में हैं, तो क्लाइंट आइटम C प्राप्त नहीं करेगा यदि आइटम B को ठीक से डिलीवर नहीं किया गया है।

Multiplexing में, क्रम मायने नहीं रखता। यह तेज डिलीवरी समय की अनुमति देगा।

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

Parallel Connections

कभी एक वेबपेज खोला और वेबपेज के कई घटकों (वीडियो बार, थंबनेल, बटन) को एक साथ लोड होते देखा?

HTTP फंडामेंटल्स: कंप्यूटर सिस्टम में टेलीकम्युनिकेशन के लिए व्यापक गाइड _एक साथ लोड हो रहे कई घटक | Photo courtesy of [Cloudflare Mobile SDK](https://www.cloudflare.com/products/mobile-sdk/" rel="noopener" target="blank" title=")

यह Parallel Connections के साथ संभव है, जहां एक ही समय में एक से अधिक TCP कनेक्शन स्थापित होते हैं, जिससे ये घटक एक के बाद एक के बजाय समवर्ती रूप से लोड हो सकते हैं।

हालांकि, हालांकि यह तेजी से लोड होने लग सकता है, यह क्लाइंट की सीमित बैंडविड्थ से पीछे रह सकता है। यदि सभी Parallel Connections सीमित बैंडविड्थ के लिए प्रतिस्पर्धा कर रहे हैं, तो प्रत्येक घटक आनुपातिक रूप से धीमा लोड होगा, जिसके परिणामस्वरूप कुल लोडिंग गति में शून्य लाभ होगा।

निष्कर्ष

OSI मॉडल के साथ, हम नेटवर्क की बड़ी तस्वीर को आसानी से समझ सकते हैं, और वे हार्डवेयर से सॉफ्टवेयर तक एक दूसरे के साथ कैसे इंटरैक्ट करते हैं।

सामान्य तौर पर, यह एक महान शिक्षण उपकरण के साथ-साथ समस्या निवारण के लिए एक संदर्भ है। मॉडल डिजाइन के लिए भी उपयोगी है, क्योंकि यह हर परत पर कार्यों की जांच करता है, जिससे किसी को परत दर परत डिजाइन पर विचार करने के लिए मजबूर किया जाता है।

मैं अब तक OSI 5-Layer मॉडल के माध्यम से गया हूं, जबकि OSI 7-Layer मॉडल भी है जो पहचान, प्रमाणीकरण और डेटा एन्क्रिप्शन से भी संबंधित है।

यह HTTP Introductions Series का भाग 2 है। आप भाग 1 में DNS सर्वर्स के महत्व के बारे में पहला लेख पढ़ सकते हैं। आइए भाग 3 में HTTP रिक्वेस्ट्स की संरचना का पता लगाएं!

नमस्ते! मैं Cher Don हूं, वर्तमान में Data Science में मेजर कर रहा हूं। मैं Paralegal Bot का CTO हूं, और आप नीचे मेरी वेबसाइट पा सकते हैं। पढ़ने के लिए धन्यवाद!

Piqued;
_Quality Content हम कठिन अवधारणाओं के लिए सर्वोत्तम कंटेंट प्रदान करते हैं। हम वहां रहे हैं, और वही महसूस किया जो आप करते हैं…_www.piqued.co

मुफ्त में कोड करना सीखें। freeCodeCamp के ओपन सोर्स करिकुलम ने 40,000 से अधिक लोगों को डेवलपर के रूप में नौकरी पाने में मदद की है। शुरू करें

  1. तत्काल: WPForms 1.5.9 प्रमाणित XSS के लिए असुरक्षित - तत्काल अपडेट आवश्यक तत्काल: WPForms 1.5.9 प्रमाणित XSS के लिए असुरक्षित - तत्काल अपडेट आवश्यक

    WPForms प्लगइन संस्करण 1.5.8.2 और नीचे को प्लगइन का ऑडिट करते समय प्रमाणित स्टोर्ड XSS के लिए असुरक्षित पाया गया। WPForms संस्करण 1.5.9 बेहतर डेटा सैनिटाइजेशन के साथ 5 मार्च, 2020 को जारी किया गया था। CVE ID: CVE-2020-10385 सारांश WPForms 3 मिलियन से अधिक सक्रिय इंस्टॉलेशन के साथ एक लोकप्रिय वर्ड

  1. अपने PrestaShop स्टोर को सुरक्षित करें: मैलवेयर हमलों के विरुद्ध रियल-टाइम सुरक्षा अपने PrestaShop स्टोर को सुरक्षित करें: मैलवेयर हमलों के विरुद्ध रियल-टाइम सुरक्षा

    एक सफल ई-कॉमर्स प्लेटफॉर्म होने के नाते, PrestaShop निस्संदेह हैकर्स के लिए एक आकर्षक लक्ष्य है। हैकर्स लगातार लोकप्रिय CMS में अनदेखी भेद्यता की तलाश में रहते हैं। वे ARP पॉइजनिंग के जरिए ओपन वाई-फाई के ट्रैफिक में मैलवेयर इंजेक्ट करने जैसे नए तरीके खोजते रहते हैं। इसके अलावा, PrestaShop मैलवेयर कि

  1. Facebook पर उन विज्ञापनदाताओं की पहचान कैसे करें जिनके पास आपकी जानकारी है Facebook पर उन विज्ञापनदाताओं की पहचान कैसे करें जिनके पास आपकी जानकारी है

    आप में से अधिकांश ने शायद वाक्यांश यदि आप इसके लिए भुगतान नहीं कर रहे हैं, तो आप उत्पाद हैं सुना होगा। यह आमतौर पर इस तथ्य को स्पष्ट करने के लिए उपयोग किया जाता है कि कथित रूप से मुफ्त सेवाएं और उपभोक्ता सामान कुछ भी हैं लेकिन। टेलीविजन के आगमन के साथ, फ्री-टू-एयर टेलीविजन शो दर्शकों पर निर्देशित वि