ओटी सीएलआई की मदद से टीसीपी के फ़ंक्शन की जांच करें

GitHub पर सोर्स देखें

OpenThread ने पीयर-टू-पीयर को टेस्ट करने के लिए, Thread नेटवर्क के साथ टीसीपी कमांड का इस्तेमाल किया है टीसीपी एंडपॉइंट के बीच कम्यूनिकेशन की सुविधा. cli tcp एक सैंपल टीसीपी उपलब्ध कराता है एंडपॉइंट और एक सैंपल टीसीपी लिसनर, जिससे सभी tcpकमांड इंटरैक्ट करते हैं.

कमांड की खास जानकारी और नीचे दिए गए उदाहरण में, शुरू करने के बारे में जानकारी दी गई है टीसीपी एंडपॉइंट और टीसीपी लिसनर का उदाहरण, पीयर टीसीपी एंडपॉइंट से कैसे कनेक्ट करें, और साथी को संदेश कैसे भेजें.

टीसीपी कमांड

tcp निर्देशों की सूची के लिए, help लिखें:

tcp help
abort
benchmark
bind
connect
deinit
init
listen
send
sendend
stoplistening
Done
सभी कमांड की जानकारी और सिंटैक्स देखने के लिए, सीएलआई कमांड रेफ़रंस देखें. टीसीपी कमांड, वर्णमाला के इस क्रम से शुरू होते हैं: tcp रद्द करें.

init निर्देश

टीसीपी कम्यूनिकेशन शुरू करने के लिए, टीसीपी मॉड्यूल शुरू करने के लिए tcp init निर्देश का इस्तेमाल करें. इसके बाद, टीसीपी मॉड्यूल कई काम कर सकता है, जैसे कि इनकमिंग को सुनना कनेक्शन, जो tcp सीएलआई के दिए हुए टीसीपी लिसनर का उदाहरण देते हैं. उदाहरण टीसीपी लिसनर और उदाहरण टीसीपी एंडपॉइंट को बंद करने के लिए, tcp deinit निर्देश जारी करें.

bind निर्देश

टीसीपी मॉड्यूल शुरू करने के बाद, उदाहरण के तौर पर दिए गए टीसीपी एंडपॉइंट को बाइंड करने के लिए, आईपीवी6 पता और टीसीपी एंडपॉइंट को पोर्ट असाइन करने के लिए tcp bind कमांड चलाएं. यह कम्यूनिकेशन के लिए, एंडपॉइंट को बाइंड करता है. आईपीवी6 पता और पोर्ट असाइन करना इसे "एंडपॉइंट का नाम देना" भी कहा जाता है.

listen निर्देश

टीसीपी मॉड्यूल शुरू करने के बाद, उदाहरण के तौर पर दिए गए टीसीपी लिसनर का इस्तेमाल करने के लिए, tcp listen निर्देश चलाएं और आईपीवी6 पता और लिसनिंग पोर्ट की जानकारी दें.

उदाहरण के तौर पर दिए गए टीसीपी लिसनर को आने वाले टीसीपी कनेक्शन को सुनने से रोकने के लिए, tcp stoplistening निर्देश जारी करें.

connect निर्देश

tcp connect निर्देश, उदाहरण के तौर पर दिए गए टीसीपी एंडपॉइंट को पीयर टीसीपी एंडपॉइंट पते से कनेक्ट करता है.

send निर्देश

दो नोड के बीच कनेक्शन बन जाने के बाद, tcp send निर्देश जारी करें मैसेज भेजने के लिए.

benchmark निर्देश

दो नोड के बीच टीसीपी कनेक्शन स्थापित होने के बाद, वैकल्पिक रूप से benchmark कमांड, ताकि नोड को नोड के बीच टेस्ट करने के लिए ज़्यादा डेटा भेजा जा सके नेटवर्क बैंडविथ और परफ़ॉर्मेंस. मिलीसेकंड में ट्रांसमिट किए गए बाइट की संख्या साथ ही, benchmark के नतीजों में टीसीपी गुडपुट की जानकारी दी जाएगी.

abort निर्देश

बिना किसी वजह से टीसीपी कनेक्शन को तुरंत बंद करने के लिए, tcp abort चलाएं कमांड की मदद से किसी भी नोड पर, टीसीपी एंडपॉइंट को बंद स्थिति में ट्रांसफ़र कर सकते हैं.

sendend निर्देश

जब एक नोड से दूसरे नोड को डेटा भेजा जाता है, तो पहला नोड ये काम कर सकता है एक tcp sendend निर्देश जारी करें, ताकि दूसरे नोड को यह सूचना दी जा सके कि वह अब उम्मीद नहीं करेगा डेटा शामिल है. दूसरा नोड पहले नोड को tcp sendend भी भेज सकता है. हर नोड को TCP: Disconnected मैसेज मिलने के बाद, टीसीपी कनेक्शन दो नोड के बीच का हिस्सा टूट गया हो. इसका सुझाव दिया जाता है. हालांकि, ऐसा करना ज़रूरी नहीं है डेटा स्थानांतरण पूरा हो जाने पर यह आदेश जारी करें.

दो नोड के बीच मैसेज भेजें

  1. नोड 1 पर, टीसीपी सीएलआई मॉड्यूल शुरू करें. इसके बाद, आने वाले कनेक्शन सुनें उदाहरण के तौर पर, टीसीपी लिसनर का इस्तेमाल करके.

    tcp init
    tcp listen :: 30000
    

    :: का इस्तेमाल करने का मतलब है कि listen को किसी ऐसे आईपीवी6 पते का इस्तेमाल करना चाहिए जिसके बारे में नहीं बताया गया हो, इससे टीसीपी/आईपीवी6 स्टैक, आईपीवी6 पता असाइन कर देगा. पोर्ट 30000 का है.

  2. नोड 2 पर, टीसीपी सीएलआई मॉड्यूल शुरू करें, नोड 1 से कनेक्ट करें, और फिर आसान मैसेज भेज सकते हैं.

    tcp init
    tcp connect fe80:0:0:0:a8df:580a:860:ffa4 30000
    tcp send hello
    

पुष्टि करने का तरीका

ऊपर दिए गए उदाहरण के मुताबिक, इस तरह के आउटपुट की उम्मीद होगी:

  • जब नोड 2, tcp connect कमांड चलाएगा, तो नोड 2 को मिलने वाला निर्देश मिलेगा मैसेज TCP: Connection established.
  • इसके बाद, नोड 1 पर मैसेज मिलेंगे (जैसे, IPv6 पता और पोर्ट):
    • Accepted connection from [fe80:0:0:0:8f3:f602:bf9b:52f2]:49152
    • TCP: Connection established
  • जब नोड 2, tcp send कमांड चलाएगा, तो नोड 1 को मिलने वाला निर्देश मिलेगा मैसेज TCP: Received 5 bytes: hello