RIP (Routing Information Protocol)
Introduction to (RIP) Routing Information Protocol
RIP को 1969 में develop किया गया था। ये ARAPNET का एक part था। RIP के एक formal standard बनने से पहले ही इसे develop और accept कर लिए गया था। ये एक distance vector protocol है। RIP metric calculate करने के लिए hop counts यूज़ करता है।
RIP metric में जो routers directly connected है उनमें एक hop की और जो दूसरे किसी एक router के द्वारा जुड़े हुए है उनमें 2 hop की दुरी होती है। इसी प्रकार जैसे जैसे router add होते है hop count बढ़ता जाता है। Source से destination के बीच के hop counts path को भी show करते है। RIP में maximum 15 hop allowed है। यदि destination 15 hop से भी दूर है तो destination unreachable error आती है।
RIP internet protocol suit की network layer के ऊपर काम करता है। ये data carry करने के लिए UDP port 520 यूज़ करता है। Metric calculate करने के लिए RIP bellman ford algorithm यूज़ करता है।
RIP Modes
RIP routers को 2 modes में categories करता है।
- Active - इस mode में routers अपनी routing information दूसरे routers के साथ share करते है।
- Passive - इस mode में routers दूसरे routers से routing information लेते है लेकिन अपनी routing information किसी भी router के साथ share नहीं करते है।
RIP by default active mode में run होता है। केवल routers पर ही RIP active mode में run होता है और hosts पर passive mode में run होता है। जिस router पर RIP active mode में run होता है वह हर 30 second में एक message भेजता है। इस message के द्वारा router अपनी routing table directly connected routers के साथ share करता है। हर message में IP addresses होता है जो दूसरे network को represent करता है और एक integer value होती है जो की hop counts की form में उस network से दुरी बताती है।
जब भी कोई router किसी दूसरे router से कोई route प्राप्त करता है तो वह तब तक उसे अपनी table में रखता है जब तक की उसे दूसरा better route नहीं मिल जाये।
Routing Table Structure
RIP routing table की हर entry से कई तरह की information प्राप्त होती है। जैसे की
- Destination - इस field में destination network का IP address defined होता है।
- Next hop (Metric) - इस field में destination तक पहुँचने के लिए next router को define किया जाता है।
- Hop count - ये field destination router से source की दुरी hop counts की form में represent करता है। इसे metric field भी कहते है।
- Timers - ये field timers के लिए होता है। ये blank भी रह सकता है।
RIP हमेशा destination के लिए best route को ही store करता है इसलिए जब भी कोई नयी information और भी अच्छा route present करती है तो table से old route को replace कर दिया जाता है।
RIP Timers
दूसरे protocols की तरह RIP भी खुद की performance को adjust करने के लिए कुछ timers यूज़ करता है। RIP 3 तरह के timers यूज़ करता है।
- Routing update timer
- Route timeout timer
- Route flush timer
Routing update timer periodically भेजे जाने वाली routing updates का timer होता है। जैसा की आपको पता है RIP हर 30 second में अपनी routing table दूसरे routers के साथ share करता है। आप चाहे तो इस time को कम या अधिक कर सकते हैं। लेकिन generally ये 30 seconds ही होता है।
Route timeout timer को route invalid timer भी कहा जाता है। ये determine करता है की यदि किसी route के बारे में नयी information नहीं प्राप्त हो रही है तो कब तक उसे valid माना जाना चाहिए। हर routing table entry के साथ route timeout timer attached रहता हैं। जब route timeout timer expire होता है तो route को invalid मान लिया जाता है और सभी routers को इसके बारे में update भजे दी जाती है। Route timeout timer की default value 90 seconds होती है।
Route flush timer determine करता है की एक invalid route को कितनी देर में routing table से हटा देना चाहिए। इसकी default value 270 seconds होती है। जब ये timer expire होता है तो route को table से remove कर दिया जाता है।
RIP Message Format
RIP messages को 2 categories में divide किया गया है।
- Routing information message
- Information request message
इन दोनों ही messages का format same होता है। इसमें 32 bits की RIP header होती है। Header के बाद message में IP address और metric का pair होता है। RIP header में बहुत से fields होते है। आइये इनके बारे में जानने का प्रयास करते है।
- Command - ये field बताता है की message एक request message है या response message है। यदि इसकी value 1 है तो message request message है और यदि 2 है तो message response है।
- Version - ये field बताता है की RIP का कौनसा version यूज़ किया गया है।
- Zero - इस field की default value zero होती है। इस field को सिर्फ RIP के different versions के साथ compatibility provide करने के लिए add किया गया है। शुरुआत में originally ऐसा कोई field नहीं था।
- Address family identifier - ये field identify करता है की किस family का address use किया जाता है। जब इस field की value 2 होती है तो ये IP protocol को represent करता है।
- IP address - इस field में destination IP address define किया जाता है।
- Metric - ये field destination network तक hop counts को represent करता है।
Limitations of RIP
- RIP में hop counts सिर्फ 15 routers तक ही limited होती है। यदि 15 routers को cross करने के बाद भी packet destination पर नहीं पहुँच पाता है तो उसे discard कर दिया जाता है।
- RIP variable length subnet mask को support नहीं करता है। इसका मतलब जो network class-full boundaries में होता है उसे ही routing table में जगह मिलती है।
- Routing update messages की वजह से large networks पर convergence बहुत slow होता है। एक router से update दूसरे router तक जाती है और अंत में सभी routers के pass same routing table होती हैं इसे convergence कहते है। लेकिन large networks में यह process बहुत अधिक समय ले लेती है।
- RIP के द्वारा किसी भी router की bandwidth के बारे में कोई भी information नहीं प्राप्त की जा सकती है।
- RIP एक destination के लिए multiple routes storage को support नहीं करता है।
- Routing updates के लिए specific bandwidth की जरुरत हो सकती है।
- कई बार routing loops create होने की वजह से network काम करना बंद कर सकता है।