HeadlinesBriefing favicon HeadlinesBriefing.com

एप्लिकेशन नेटवर्किंग बेसिक्स

ByteByteGo •
×

एक सरल परिदृश्य की कल्पना करें जहाँ एक ई-कॉमर्स वेब एप्लिकेशन एक API एंडपॉइंट को कॉल करता है जो ग्राहक ऑर्डर के बारे में जानकारी लौटाता है। एप्लिकेशन स्तर पर, यह एक बहुत सरल ऑपरेशन जैसा दिखता है। लेकिन हुड के नीचे बहुत कुछ हो रहा है। पहले, क्लाइंट API एंडपॉइंट से जुड़े IP पते के लिए DNS क्वेरी करता है। DNS एक विशिष्ट एप्लिकेशन सर्वर के पते के बजाय लोड बैलेंसर का पता लौटा सकता है। फिर, ऑपरेटिंग सिस्टम यह निर्धारित करता है कि उस IP पते को पैकेट कैसे भेजे जाने चाहिए। यह उन्हें स्थानीय नेटवर्क, इंटरनेट सेवा प्रदाता (ISP) या कई अन्य राउटरों के माध्यम से भेजने का चुनाव कर सकता है। अंतिम लक्ष्य डेटा पैकेट्स को गंतव्य नेटवर्क तक पहुँचना है। इसके लिए सबसे आम प्रोटोकॉल HTTP है। हालाँकि, HTTP अनुरोध भेजने से पहले, क्लाइंट को आमतौर पर गंतव्य सर्वर के साथ किसी न किसी रूप का कनेक्शन स्थापित करने की आवश्यकता होती है। पारंपरिक HTTPS के साथ, इसका अर्थ है TCP कनेक्शन स्थापित करना। इस प्रकार के कनेक्शन में, क्लाइंट और सर्वर कुछ प्रारंभिक पैकेट्स का आदान-प्रदान करके हैंडशेक करते हैं ताकि दोनों पक्षों को पता चले कि कनेक्शन स्थापित हो गया है। फिर क्लाइंट और सर्वर TLS हैंडशेक करते हैं। केवल इसके बाद ही HTTP अनुरोध सुरक्षित रूप से भेजा जा सकता है। लोड बैलेंसर इसे प्राप्त करता है, एक स्वस्थ एप्लिकेशन इंस्टेंस चुनता है और अनुरोध अग्रेषित करता है। एप्लिकेशन अपना काम करता है और प्रतिक्रिया को उसी मार्ग से वापस भेजता है। यह सब नेटवर्किंग के अंतर्गत आता है। अपनी व्यापक प्रकृति के कारण, नेटवर्किंग डेवलपर्स के लिए महत्वपूर्ण विषय बन जाता है।