नेटवर्क टोपॉलॉजीज् आणि पॅकेट स्विचिंग (अच्युत गोडबोले)

अच्युत गोडबोले achyut.gobole@gmail.com
रविवार, 6 ऑक्टोबर 2019

अनेक कॉम्प्युटर्स एकमेकांशी जोडून एक नेटवर्क तयार होतं. ही नेटवर्क्स मुख्यत: तीन प्रकारची असतात. लोकल एरिया नेटवर्क (LAN), मेट्रोपोलिटन एरिया नेटवर्क (MAN) आणि वाइड एरिया नेटवर्क (WAN). LAN मध्ये एका ऑफिसमधले किंवा इमारतीतले कॉम्प्युटर्स जोडले जातात; MAN मध्ये एका शहरातले कॉम्प्युटर्स जोडले जातात, तर WAN मध्ये एका राज्यातले, देशातले किंवा जगातले कॉम्प्युटर्स जोडले जातात. कम्युनिकेशनसाठी फ्रेम्स किंवा पॅकेटस्‌ची कल्पना वापरतात. यामध्ये संदेशाचे अनेक तुकडे करून पाठवले जातात. LAN मध्ये या भागांना ‘फ्रेम्स’ म्हणतात, तर WAN आणि इंटरनेटमध्ये त्यांना ‘पॅकेट्‍स’ म्हणतात.

अनेक कॉम्प्युटर्स एकमेकांशी जोडून एक नेटवर्क तयार होतं. ही नेटवर्क्स मुख्यत: तीन प्रकारची असतात. लोकल एरिया नेटवर्क (LAN), मेट्रोपोलिटन एरिया नेटवर्क (MAN) आणि वाइड एरिया नेटवर्क (WAN). LAN मध्ये एका ऑफिसमधले किंवा इमारतीतले कॉम्प्युटर्स जोडले जातात; MAN मध्ये एका शहरातले कॉम्प्युटर्स जोडले जातात, तर WAN मध्ये एका राज्यातले, देशातले किंवा जगातले कॉम्प्युटर्स जोडले जातात. कम्युनिकेशनसाठी फ्रेम्स किंवा पॅकेटस्‌ची कल्पना वापरतात. यामध्ये संदेशाचे अनेक तुकडे करून पाठवले जातात. LAN मध्ये या भागांना ‘फ्रेम्स’ म्हणतात, तर WAN आणि इंटरनेटमध्ये त्यांना ‘पॅकेट्‍स’ म्हणतात.

अनेक कॉम्प्युटर्स एकमेकांशी जोडून एक नेटवर्क तयार होतं. ही नेटवर्क्स मुख्यत: तीन प्रकारची असतात. लोकल एरिया नेटवर्क (LAN), मेट्रोपोलिटन एरिया नेटवर्क (MAN) आणि वाइड एरिया नेटवर्क (WAN). LAN मध्ये एका ऑफिसमधले किंवा इमारतीतले कॉम्प्युटर्स जोडले जातात; MAN मध्ये एका शहरातले कॉम्प्युटर्स जोडले जातात, तर WAN मध्ये एका राज्यातले, देशातले किंवा जगातले कॉम्प्युटर्स जोडले जातात. उदाहरणार्थ, समजा माझ्या कंपनीचं एक ऑफिस आहे आणि तिच्या सर्व जगभर अनेक देशात शाखा आहेत. अशा वेळी मी LAN, MAN आणि WAN या सगळ्यांचा वापर करून माझ्या इमारतीतल्या, शहरातल्या आणि जगातल्या माझ्या कंपनीमधल्या कोणाशीही संवाद साधू शकतो आणि त्यांना ईमेल्स, फाईल्स किंवा इतरही संदेश पाठवू शकतो.

कम्युनिकेशनसाठी फ्रेम्स किंवा पॅकेटस्‌ची कल्पना वापरतात. यामध्ये संदेशाचे अनेक तुकडे करून पाठवले जातात. LAN मध्ये या भागांना ‘फ्रेम्स’ म्हणतात, तर WAN आणि इंटरनेटमध्ये त्यांना ‘पॅकेट्स’ म्हणतात. फ्रेमच्या हेडरमध्ये फ्रेम नंबर; तसंच पाठवणाऱ्याचा (सोर्स) आणि ज्याला पाठवायचंय (डेस्टिनेशन) त्याचा अशा दोघांचे पत्ते आणि चूक ओळखण्यासाठी फ्रेममधल्या बिट्सवर कुठलातरी अल्गॉरिदम वापरून काढलेला चेकसम किंवा CRC अशी सगळी माहिती असते.
(आकृती १)

कॉम्प्युटर्समध्ये संवाद होण्यासाठी ते नुसते एकमेकांना वायरनं जोडून चालत नाही. नेटवर्कमध्ये त्यातले कॉम्प्युटर्स कसे जोडलेले असतात त्यावरून त्यांची ‘टोपॉलॉजी’ ठरते. यामध्ये स्टार, बस आणि रिंग अशा तीन मुख्य आणि बेसिक टोपॉलॉजीज असतात. याशिवाय ट्री, मेश अशा इतरही काही टोपॉलॉजीज असतात. या टोपॉलॉजीपासून हायब्रिडसारख्या अनेक गुंतागुंतीच्या रचना होऊ शकतात. या सोबतच्या आकृतीत दाखवल्या आहेत. आपण सध्यापुरतं स्टार, बस आणि रिंग यांचाच विचार करू. स्टार टोपॉलॉजीमध्ये एक मध्यवर्ती कॉम्प्युटर असतो. त्याला ‘हब (H)’ असं म्हणतात. त्याला इतर सगळे कॉम्प्युटर्स जोडलेले असतात. जर एखाद्या (A) कॉम्प्युटरला दुसऱ्या (B) कॉम्प्युटरला संदेश पाठवायचा असेल, तर तो त्या हबकडे (H) प्रथम पाठवावा लागतो. त्यानंतर तो हब योग्य त्या कॉम्प्युटरकडे (या केसमध्ये B कडे) तो संदेश पाठवतो. मात्र, या टोपॉलॉजीमध्ये एक मोठा प्रश्न असतो. तो म्हणजे जर हब बंद पडला, तर सगळं नेटवर्कच बंद पडतं.

बस टोपॉलॉजीमध्ये आकृतीत दाखवल्याप्रमाणं एकाच केबलला सगळे कॉम्प्युटर्स जोडलेले असतात. यातला प्रोटोकॉल गमतिशीर असतो. समजा बसला जोडलेल्या एखाद्या कॉम्प्युटरला बसवरच्या दुसऱ्या कॉम्प्युटरसाठी एक फ्रेम बसवरून पाठवायची असेल, तर काय काय करायचं? आपल्याला वाटेल, की ते सोपं आहे; पण त्यात गुंतागुंत असते.

जेव्हा बसवरून एकाकडून दुसऱ्यासाठी पाठवलेली फ्रेम प्रवास करत असते, तेव्हा त्या वायरमध्ये काही व्होल्टेजेस आणि सिग्नल्स निर्माण होतात. अर्थातच त्याच वेळी कुठलीही दुसरी फ्रेम त्या वायरमधून प्रवास करू शकत नाही. नाहीतर त्या दोन फ्रेम्सची टक्कर (कोलिजन) व्हायची. त्यामुळे ज्याला एखादी फ्रेम पाठवायची आहे, असा कुठलाही नोड सर्वप्रथम बसवरचा सिग्नल तपासतो आणि बस मोकळी असेल, तरच आपली फ्रेम बसवर सोडतो. मात्र, गोष्ट तेवढ्यावरच थांबत नाही. जर नेमकं त्याच क्षणी दुसऱ्याही नोडला एक फ्रेम पाठवायची असेल आणि त्यानंही बसचा ‘कानोसा’ घेऊन ती मोकळी आहे हे ठरवून फ्रेम सोडली तर काय होईल? तर त्या फ्रेम्सची टक्कर होईल. त्यानंतर ही अशी टक्कर झाल्याचं त्या दोन्ही नोड्स‍ना समजेल. तशी टक्कर झाली, तर ते समजण्याचं (कोलिजन डिटेक्टशन) हार्डवेअर बसमध्ये असतं. मग ते दोन्ही नोड्‌स काही रँडम वेळ थांबून पुन्हा आपापली फ्रेम पाठवतील. उदाहरणार्थ, पहिला नोड १ मिलिसेकंद थांबेल, तर दुसरा २ मिलिसेकंद थांबेल. असं रँडम वेळ थांबल्यामुळं पुढच्या वेळी निदान त्या दोघांच्या फ्रेम्सची टक्कर होत नाही.

असं करत शेवटी कुठलीही टक्कर न होता ती फ्रेम पाहिजे त्या नोडपर्यंत जाते, तेव्हा तिथं ती अचूक आहे की नाही ते चेकसमवरून तपासलं जातं, आणि त्यात चूक असेल, तर पाठवणाऱ्याकडे (सोर्स) ‘NAK’ हा संदेश जातो आणि मग पाठवणाऱ्या (सोर्स) नोडकडून डेस्टिनेशन नोडकडे पुन्हा ती फ्रेम पाठवली जाते. असं करत शेवटी सगळ्या फ्रेम्स दुसऱ्या नोडला मिळाल्या, की तिथला कॉम्प्युटर त्या सगळ्या फ्रेम्समधली सगळी हेडर्स काढून टाकतो आणि मग त्या फ्रेम्समधला डेटा त्यांच्या क्रमांकांप्रमाणे एकापाठोपाठ ठेवून मूळ संदेश मिळवतो. अशा तऱ्हेनं मूळ संदेश (ईमेल, फाईल, फोटो, संगीत, व्हिडिओ) एका नोडकडून दुसरीकडे जातो.
प्रोटोकॉल म्हणजे काय हे कळावं म्हणून हे उदाहरण सविस्तर दिलंय. या प्रोटोकॉल्सची नावं मात्र बस टोपॉलॉजीसाठी ‘कॅरियर सेन्स मल्टिपल अॅक्सेस विथ कोलिजन डिटेक्ट (CSMA/CD)’, तर रिंग टोपॉलॉजीसाठी ‘IEEE८०२.५’ आणि ‘फायबर डिस्ट्रिब्युटेड डेटा इंटरफेस (FDDI)’ अशी आहेत.
WAN मध्ये संदेशाची अनेक पॅकेटस् बनवली जातात. पण WAN मध्ये आणखी एक प्रश्न असतो तो म्हणजे राउटिंगचा. ‘राउटिंग’ म्हणजे काय हे समजण्यासाठी आपण एखाद्या साध्या नेटवर्कचा विचार करुया.
(आकृती २)

आपण असं समजूया, की आकृती २ मध्ये दाखवल्याप्रमाणं या नेटवर्कमध्ये P आणि Q हे दोन टोकाचे कॉम्प्युटर्स आहेत, तर त्यांच्यामध्ये A, B, C, D, E, F, G, H आणि I असे कॉम्प्युटर्स आहेत आणि ते एकमेकांशी आकृतीत दाखवल्याप्रमाणे जोडलेले आहेत. समजा, आपल्याला एखादी मोठी फाईल (उदाहरणार्थ, ईमेल, एक गाणं, फोटो किंवा व्हिडिओ) P या कॉम्प्युटरकडून Q या कॉम्प्युटरकडे पाठवायची आहे. यासाठी आपल्याकडे P-A-B-F-I-Q, P-A-C-G-I-Q, P-A-B-C-G-I-Q, P-A-D-E-H-I-Q, P-A-B-C-H-I-Q, P-A-E-H-I-Q, किंवा P-A-C-F-I-Q असे अनेक मार्ग आहेत. त्यांना ‘रूटस्’ असं म्हणतात.

सुरवातीला नोड P एक रूट निवडतो. समजा P-A-B-F-I-Q हा रूट निवडला आहे. आता संदेशातलं पहिलं पॅकेट P कडून प्रथम A कडे येतं. त्यानंतर A हा नोड चेकसमचा वापर करून ते पॅकेट बरोबर आलंय की नाही ते तपासून P ला ACK किंवा NAK यापैकी कुठला तरी संदेश पाठवतो. जर P ला A कडून NAK संदेश मिळाला, तर P हा नोड A कडे मूळ पॅकेट पुन्हा पाठवतो. अशा पिंगपाँगनंतर शेवटी A ला P कडून मूळ पॅकेट बिनचूक तऱ्हेनं मिळालं, की मग A ते पॅकेट पुढच्या नोडकडे पाठवतो. इथं प्रत्येक पॅकेट एखाद्या नोडकडे आलं, की ते बिनचूक आल्याची खात्री पटेपर्यंत तिथंच साठवलं (स्टोअर) जातं आणि मगच पुढे पाठवलं (फॉवर्ड) जातं. म्हणूनच या पद्धतीला ‘स्टोअर अँड फॉवर्ड’ असं म्हणतात.

आता एकदा आपलं पॅकेट P कडून A कडे बिनचूक पद्धतीनं आलं, की इथं गंमत होते. P-A-B-F-I-Q या प्रथम निवडलेल्या रूटप्रमाणे खरंतर A च्या पुढचा नोड B हा आहे; पण नेमकं याच वेळी समजा B या कॉम्प्युटरवर खूप लोड आहे किंवा A-B ही लिंक खराब झालीय, असं A या नोडला समजलं, तर A हा नोड पूर्वी ठरलेला रूट बदलून A पासून A-D-E-H-I-Q या रूटनं ते पॅकेट Q कडे पाठवू शकतो; आणि हा रूट जर A नं निवडला, तर तो आता B ऐवजी D या नोडकडे ते पॅकेट पाठवेल. यानंतर D हा नोड आलेलं पॅकेट अचूक आहे की नाही हे चेकसम तपासून ठरवेल आणि त्याप्रमाणे A या नोडला ACK किंवा NAK संदेश पाठवेल. ते पॅकेट अचूकपणे A कडून D पर्यंत पोचेपर्यंत हा पिंगपाँग चालतो. ते अचूकपणे पोचल्यावर D हा नोड पुन्हा त्यावेळच्या नोड्‍सच्या आणि लिंक्सच्या परिस्थितीप्रमाणे D पासून Q पर्यंतचा योग्य तो रूट निवडून त्या रूटवरच्या पुढच्या नोडकडे ते पॅकेट पाठवेल. असं करतकरत ते पॅकेट Q पर्यंत पोचेल.

प्रत्येक नोड त्या वेळच्या नेटवर्कच्या परिस्थितीप्रमाणे डायनॅमिक पद्धतीनं रूट बदलू शकतो. मात्र, हे करता येण्यासाठी प्रत्येक नोडवर त्या नोडपासून इतर नोड्‍सपर्यंत पोचण्यासाठी असणाऱ्या रुट्सची माहिती; तसंच इतर सगळ्या नोड्स आणि लिंक्स यांची क्षमता, वेग, त्यांची स्थिती (त्यांच्यात बिघाड आहे, की त्या चालू आहेत आणि चालू असल्यास त्यावर लोड आणि क्यू किती आहे) या सगळ्यांची माहिती ठेवावी लागते. याला ‘राउटिंग टेबल’ म्हणतात. बदललेल्या परिस्थितीप्रमाणे हे दर नोडवरचं राउटिंग टेबल वारंवार बदलावं लागतं. याच टेबलचा उपयोग करूनच कुठलाही नोड दर क्षणाला योग्य रूट निवडतो आणि मग त्या निवडलेल्या रूटवरच्या पुढच्या नोडकडे संदेश पाठवतो. यालाच ‘पॅकेट स्विचिंग’ असं म्हणतात.

अशा तऱ्हेनं त्या संदेशाची सगळी पॅकेट्स वेगवेगळ्या रुट्सनी P कडून Q कडे आल्यावर Q त्या पॅकेटस् मधली हेडर्स काढतो आणि त्यातल्या पॅकेट नंबरप्रमाणे ती एकापुढे एक अशी ठेवून मूळ संदेश मिळवतो. आता तो जर एक व्हिडिओ असेल, तर Q हा कॉम्प्युटर आपल्या स्क्रीनवर तो व्हिडिओ पाहू शकतो; किंवा ईमेल असेल, तर ती वाचू शकतो. एवढं सगळं आपल्याला नकळत होत असेल याचा आपल्याला पत्ताही नसतो. इंटरनेटमध्ये हे राउटिंग टेबल ठेवणं, सतत ते अपटूडेट ठेवणं आणि त्याचा वापर करून रुट्स ठरवणं (राउटिंग) ही कामं दोन नेटवर्कस्‌ना जोडणारे राउटर्स करत असतात. त्याविषयी नंतरच्या लेखात.


स्पष्ट, नेमक्या आणि विश्वासार्ह बातम्या वाचण्यासाठी 'सकाळ'चे मोबाईल अॅप डाऊनलोड करा
Web Title: saptarang achyut godbole write network topology and pocke switching article