अवलोकन
यह प्रस्ताव I2P में द्विदिशा सुरंगों को लागू करने के बारे में है।
प्रेरणा
i2pd अभी के लिए केवल अन्य i2pd राउटरों के माध्यम से द्विदिशा सुरंगें पेश करेगा। नेटवर्क के लिए, यह सामान्य इनबाउंड और आउटबाउंड सुरंगों के रूप में दिखाई देगा।
डिजाइन
लक्ष्य
- टनलबिल्ड संदेशों की संख्या को कम करके नेटवर्क और CPU उपयोग को कम करना
- यह तुरंत जानने की क्षमता कि कोई सहभागी चला गया है
- अधिक सटीक प्रोफाइलींग और आंकड़े
- अन्य डार्कनेट्स का मध्यवर्ती साथियों के रूप में उपयोग
सुरंग संशोधन
टनलबिल्ड
सुरंगें इनबाउंड सुरंगों के समान तरीके से बनाई जाती हैं। कोई उत्तर संदेश आवश्यक नहीं है। एक विशेष प्रकार का सहभागी होता है जिसे "प्रवेश" कहा जाता है, जो IBGW और OBEP के रूप में एकसाथ कार्य करता है। संदेश का प्रारूप VaribaleTunnelBuild के समान है, लेकिन ClearText में विभिन्न क्षेत्र शामिल होते हैं::
in_tunnel_id
out_tunnel_id
in_next_tunnel_id
out_next_tunnel_id
in_next_ident
out_next_ident
layer_key, iv_key
यह यह भी बताएगा कि अगला सहभागी किस डार्कनेट का है और कुछ अतिरिक्त जानकारी प्रदान करेगा यदि यह I2P नहीं है।
टनल समाप्ति
यदि सहभागी जाना चाहता है तो वह टनल समाप्ति संदेश बनाता है, लेयर कुंजी के साथ एन्क्रिप्ट करता है और “इन” दिशा में भेजता है। अगर कोई सहभागी ऐसा संदेश प्राप्त करता है, तो वह इसे अपनी लेयर कुंजी के साथ पुनः एन्क्रिप्ट करता है और अगले सहभागी को भेजता है। एक बार जब संदेश सुरंग के मालिक के पास पहुंचता है, तो वह इसे सहभागी द्वारा सहभागी डिक्रिप्ट करते हुए आगे बढ़ता है जब तक कि उसे बिना एन्क्रिप्ट किया गया संदेश प्राप्त नहीं होता। वह पता लगाता है कि कौन सा सहभागी चला गया है और सुरंग को समाप्त करता है।