Node ၏ socks ပက်ကေ့ဂျ်သည် UDP အတွက် SocksClient အင်စတန့်ကို command: 'associate' ဖြင့် အသုံးပြုသည်။ ၎င်း၏ အဆင်ပြေသော SocksClient.createConnection() ဖက်ထရီက ယင်းအစား TCP CONNECT ကို ကိုင်တွယ်သည်။

ပရောဂျက်၏ ချိတ်ဆက်မှု နမူနာသည် SOCKS ကလိုင်းယင့်ကို သီးခြား ဒေသတွင်း UDP ဆော့ကက်နှင့် ပေါင်းစပ်သည်။

  1. UDP ASSOCIATE ကို တည်ဆောက်ပြီး ၎င်း၏ TCP ထိန်းချုပ်ချိတ်ဆက်မှုကို ထိန်းသိမ်းပါ။
  2. ဆာဗာ ပြန်ပေးသော relay လက်ခံကွန်ပျူတာနှင့် ပို့ကို ဖတ်ပါ။
  3. အပြင်သွား ပေးချေမှုများကို ၎င်းတို့၏ ဦးတည်လိပ်စာဖြင့် ဘောင်ခတ်ရန် createUDPFrame() ကို အသုံးပြုပါ။
  4. ဒေတာဂရမ်များကို relay သို့ ပို့ပါ၊ ထို့နောက် ပေးချေမှုများကို အက်ပ်သို့ မပေးအပ်မီ ဝင်လာသော relay ဘောင်များတွင် parseUDPFrame() ကို အသုံးပြုပါ။

Node ၏ dgram ဆော့ကက်သည် UDP သယ်ယူပို့ဆောင်မှုကို ပေးသည်။ ၎င်းသည် SOCKS URL ကို အဓိပ္ပာယ်ဖွင့်မည်မဟုတ်ပါ။ ချိတ်ဆက်မှုနှင့် ဘောင်ခတ်ခြင်းသည် ထို ဒေတာဂရမ်များ ပတ်လည်တွင် ပရောက်စီ ပရိုတိုကောကို ပေးသည်။

ဆာဗာသည် UDP ကို ပံ့ပိုးရမည်၊ relay ၏ အဆုံးမှတ်သည် ဆက်သွယ်နိုင်ရမည်။ ကနဦး ပရောက်စီ ပို့သို့ အောင်မြင်သော TCP ချိတ်ဆက်မှုသည် ထိုလမ်းကြောင်းကို မစမ်းသပ်ပါ။ ချိတ်ဆက်မှု မလိုအပ်တော့သောအခါ ထိန်းချုပ်မှုနှင့် UDP အရင်းအမြစ်များကို ပိတ်ပါ။

ဆက်စပ်ဆောင်းပါးများ