د پیل کونکو لپاره لوبو کې د شبکې ماډل په اړه

د پیل کونکو لپاره لوبو کې د شبکې ماډل په اړه
د تیرو دوو اونیو لپاره زه د خپلې لوبې لپاره آنلاین انجن کې کار کوم. له دې دمخه ، زه په لوبو کې د شبکې کولو په اړه هیڅ نه پوهیدم ، نو ما ډیری مقالې ولوستلې او ډیرې تجربې مې وکړې ترڅو په ټولو مفاهیمو پوه شوم او د دې وړتیا لرم چې خپل د شبکې انجن ولیکم.

پدې لارښود کې ، زه غواړم تاسو سره مختلف مفکورې شریک کړم چې تاسو اړتیا لرئ د خپل لوبې انجن لیکلو دمخه زده کړئ ، او همدارنګه د دوی زده کولو لپاره غوره سرچینې او مقالې.

په عموم کې، د شبکې جوړښتونو دوه اصلي ډولونه شتون لري: د پیر څخه ملګري او د مراجعینو سرور. په پییر-ټو-پییر (p2p) جوړښت کې، ډاټا د هر ډول تړل شوي لوبغاړو ترمنځ لیږدول کیږي، پداسې حال کې چې د پیرودونکي-سرور جوړښت کې، ډاټا یوازې د لوبغاړو او سرور ترمنځ لیږدول کیږي.

که څه هم د peer-to-peer جوړښت لاهم په ځینو لوبو کې کارول کیږي، د مراجعینو-سرور معیار دی: دا پلي کول اسانه دي، د کوچني چینل عرض ته اړتیا لري، او د درغلۍ په وړاندې ساتنه اسانه کوي. له همدې امله ، پدې لوست کې به موږ د پیرودونکي - سرور جوړښت باندې تمرکز وکړو.

په ځانګړې توګه، موږ د استبدادي سرورونو سره ډیره علاقه لرو: په داسې سیسټمونو کې، سرور تل سم وي. د مثال په توګه، که چیرې یو لوبغاړی فکر کوي چې هغه په ​​​​همغږي (10، 5) کې دی، او سرور ورته ووایي چې هغه په ​​(5، 3) کې دی، نو مراجع باید خپل موقعیت د سرور لخوا راپور شوي سره بدل کړي، نه دا برعکس د مستند سرورونو کارول د غلا کونکو پیژندل اسانه کوي.

د شبکې لوبې سیسټمونه درې اصلي برخې لري:

  • د ټرانسپورټ پروتوکول: څنګه ډاټا د پیرودونکو او سرور ترمنځ لیږدول کیږي.
  • د غوښتنلیک پروتوکول: هغه څه چې له پیرودونکو څخه سرور ته او له سرور څخه پیرودونکو ته لیږدول کیږي او په کوم شکل کې.
  • د غوښتنلیک منطق: څنګه لیږدول شوي ډاټا د پیرودونکو او سرور حالت تازه کولو لپاره کارول کیږي.

دا ډیره مهمه ده چې د هرې برخې رول او د دوی سره تړلې ننګونې پوه شي.

د ترانسپورت پروتوکول

لومړی ګام دا دی چې د سرور او پیرودونکو ترمنځ د معلوماتو لیږد لپاره پروتوکول غوره کړئ. د دې لپاره دوه انټرنیټ پروتوکولونه شتون لري: TCP и UDP. مګر تاسو کولی شئ خپل د ټرانسپورټ پروتوکول د دوی پر بنسټ جوړ کړئ یا یو کتابتون وکاروئ چې دوی یې کاروي.

د TCP او UDP پرتله کول

TCP او UDP دواړه پر بنسټ والړ دي IP. IP اجازه ورکوي چې پاکټ له سرچینې څخه ترلاسه کونکي ته لیږدول شي، مګر دا تضمین نه کوي چې لیږل شوي پاکټ به ژر یا وروسته ترلاسه کونکي ته ورسیږي، دا به لږترلږه یو ځل ورته ورسیږي، او دا چې د کڅوړو ترتیب به په سمه توګه راشي. امر سربیره پردې، یو پیکټ یوازې د محدود مقدار ډاټا لري، د ارزښت لخوا ورکړل شوي MTU.

UDP د IP په سر کې یوازې یو پتلی پرت دی. له همدې امله، دا ورته محدودیتونه لري. برعکس، TCP ډیری ځانګړتیاوې لري. دا د تېروتنې چک کولو سره د دوو نوډونو ترمنځ د باور وړ، منظم اړیکه چمتو کوي. له همدې امله، TCP خورا اسانه دی او په ډیری نورو پروتوکولونو کې کارول کیږي، د بیلګې په توګه. HTTP, FTP и SMTP. مګر دا ټول ځانګړتیاوې په قیمت کې راځي: ځنډ.

د دې لپاره چې پوه شي چې ولې دا فعالیتونه د ځنډ لامل کیدی شي، موږ باید پوه شو چې TCP څنګه کار کوي. کله چې د لیږلو نوډ یو پاکټ ترلاسه کونکي نوډ ته لیږدوي، دا تمه لري چې یو اعتراف (ACK) ترلاسه کړي. که د یو ټاکلي وخت وروسته دا ترلاسه نکړي (ځکه چې کڅوړه یا اعتراف ورک شوی و ، یا د کوم بل لامل له امله) ، نو دا پاکټ بیا لیږل کیږي. سربیره پردې، TCP تضمین کوي ​​​​چې پاکټونه په سم ترتیب کې ترلاسه شوي، نو تر هغه چې ورک شوي پاکټ ترلاسه نشي، نور ټول پاکټونه پروسس نشي کیدی، حتی که دوی دمخه د ترلاسه کونکي کوربه لخوا ترلاسه شوي وي.

مګر لکه څنګه چې تاسو شاید تصور کولی شئ ، په ملټي پلیر لوبو کې ځنډ خورا مهم دی ، په ځانګړي توګه د FPS په څیر د عمل څخه ډک ژانرونو کې. له همدې امله ډیری لوبې د خپل پروتوکول سره UDP کاروي.

د اصلي UDP پر بنسټ پروتوکول د مختلفو دلیلونو لپاره د TCP څخه ډیر اغیزمن کیدی شي. د مثال په توګه، دا کولی شي ځینې پاکټونه د باور په توګه او نور یې د باور وړ په توګه په نښه کړي. له همدې امله، دا پروا نه کوي چې آیا بې باوره کڅوړه ترلاسه کونکي ته رسیږي. یا دا کولی شي ډیری ډیټا جریانونه پروسس کړي ترڅو په یوه جریان کې ورک شوی پاکټ پاتې جریان ورو نه کړي. د مثال په توګه، ممکن د پلیر ان پټ لپاره یو تار وي او د چیٹ پیغامونو لپاره بل تار. که چیرې د چیټ پیغام چې عاجل نه وي ورک شوی وي ، نو دا به عاجل معلومات ورو نه کړي. یا د ملکیت پروتوکول ممکن د TCP په پرتله اعتبار په مختلف ډول پلي کړي ترڅو د ویډیو لوبې چاپیریال کې ډیر اغیزمن وي.

نو، که TCP دومره ډیر وخوري، نو بیا به موږ د UDP پر بنسټ خپل ټرانسپورټ پروتوکول جوړ کړو؟

دا یو څه ډیر پیچلی دی. حتی که څه هم TCP د لوبو شبکې سیسټمونو لپاره نږدې فرعي غوره دی، دا کولی شي ستاسو د ځانګړي لوبې لپاره خورا ښه کار وکړي او ستاسو ارزښتناکه وخت خوندي کړي. د مثال په توګه ، ځنډ ممکن د باری پراساس لوبې یا یوې لوبې لپاره مسله نه وي چې یوازې په LAN شبکو کې لوبیدلی شي ، چیرې چې ځنډ او د پاکټ ضایع د انټرنیټ په پرتله خورا ټیټ دی.

ډیری بریالۍ لوبې ، پشمول د Warcraft ، Minecraft او Terraria نړۍ ، TCP کاروي. په هرصورت، ډیری FPSs خپل د UDP پر بنسټ پروتوکول کاروي، نو موږ به لاندې د دوی په اړه نور خبرې وکړو.

که تاسو د TCP کارولو پریکړه وکړئ، ډاډ ترلاسه کړئ چې دا غیر فعال دی د ناګل الګوریتم، ځکه چې دا د لیږلو دمخه پاکټونه بفر کوي ، پدې معنی چې دا ځنډ زیاتوي.

د ملټي پلیر لوبو په شرایطو کې د UDP او TCP ترمینځ د توپیرونو په اړه د نورو معلوماتو لپاره ، تاسو کولی شئ د ګلین فیډلر مقاله ولولئ UDP په مقابل کې TCP.

خپل پروتوکول

نو تاسو غواړئ خپل د ټرانسپورټ پروتوکول جوړ کړئ، مګر نه پوهیږئ چې چیرته یې پیل کړئ؟ تاسو په بخت کې یاست ځکه چې ګلین فیډلر پدې اړه دوه په زړه پوري مقالې لیکلي دي. تاسو به په دوی کې ډیری هوښیار فکرونه ومومئ.

لومړۍ مقاله د لوبې پروګرام کونکو لپاره شبکه کول 2008، د دویمې په پرتله اسانه، د لوبې شبکې پروتوکول جوړول 2016. زه وړاندیز کوم چې تاسو د زاړه سره پیل کړئ.

په یاد ولرئ چې ګلین فیډلر د UDP پراساس د دودیز پروتوکول کارولو لوی ملاتړی دی. او د هغه مقالو لوستلو وروسته ، تاسو به شاید د هغه نظر غوره کړئ چې TCP په ویډیو لوبو کې جدي نیمګړتیاوې لري ، او تاسو به غواړئ خپل پروتوکول پلي کړئ.

مګر که تاسو د شبکې لپاره نوي یاست، خپل ځان ته یو احسان وکړئ او د TCP یا کتابتون څخه کار واخلئ. د خپل ټرانسپورټ پروتوکول په بریالیتوب سره پلي کولو لپاره ، تاسو اړتیا لرئ دمخه ډیر څه زده کړئ.

د شبکې کتابتونونه

که تاسو د TCP څخه ډیر اغیزمن څه ته اړتیا لرئ، مګر نه غواړئ د خپل پروتوکول پلي کولو او ډیرو توضیحاتو ته لاړ شئ، تاسو کولی شئ د شبکې کتابتون وکاروئ. ډیری یې شتون لري:

  • یوجیمبو ګلین فیډلر
  • RakNet, کوم چې نور نه ملاتړ کیږي، مګر د هغې یو فورک SLikeNet داسې ښکاري چې دا لاهم فعاله ده.
  • ENet یو کتابتون دی چې د ملټي پلیر FPS لپاره رامینځته شوی کیوب
  • GameNetworkingSockets والو

ما دا ټول نه دي هڅه کړې، مګر زه ENet ته ترجیح ورکوم ځکه چې دا کارول اسانه او د باور وړ دي. سربیره پردې ، دا د پیل کونکو لپاره روښانه اسناد او ښوونه لري.

د ترانسپورت پروتوکول: پایله

د لنډیز لپاره: دوه اصلي ټرانسپورټ پروتوکولونه شتون لري: TCP او UDP. TCP ډیری ګټورې ځانګړتیاوې لري: اعتبار، د پاکټ ترتیب ساتنه، د تېروتنې کشف. UDP دا ټول نلري، مګر TCP د خپل طبیعت له مخې ځنډ ډیر کړی، کوم چې د ځینو لوبو لپاره د منلو وړ نه دی. دا دی ، د ټیټ ځنډ ډاډ ترلاسه کولو لپاره ، تاسو کولی شئ د UDP پراساس خپل پروتوکول رامینځته کړئ یا یو کتابتون وکاروئ چې په UDP کې د ټرانسپورټ پروتوکول پلي کوي او د ملټي پلیر ویډیو لوبو لپاره تطبیق کیږي.

د TCP، UDP او کتابتون تر منځ انتخاب په څو فکتورونو پورې اړه لري. لومړی ، د لوبې اړتیاو څخه: ایا دا ټیټ ځنډ ته اړتیا لري؟ دوهم، د غوښتنلیک پروتوکول اړتیاو څخه: ایا دا د اعتبار وړ پروتوکول ته اړتیا لري؟ لکه څنګه چې موږ به په راتلونکې برخه کې وګورو، دا ممکنه ده چې د غوښتنلیک پروتوکول رامینځته کړئ د کوم لپاره چې غیر باوري پروتوکول خورا مناسب وي. په نهایت کې ، تاسو اړتیا لرئ د شبکې انجن پراختیا کونکي تجربه هم په پام کې ونیسئ.

زه دوه مشورې لرم:

  • د امکان تر حده د پاتې غوښتنلیک څخه د ټرانسپورټ پروتوکول خلاص کړئ ترڅو دا د ټول کوډ له لیکلو پرته په اسانۍ سره ځای په ځای شي.
  • ډیر اصلاح مه کوئ. که تاسو د شبکې ماهر نه یاست او ډاډه نه یاست چې ایا تاسو د دودیز UDP پراساس ټرانسپورټ پروتوکول ته اړتیا لرئ، تاسو کولی شئ د TCP یا کتابتون سره پیل کړئ چې اعتبار چمتو کوي، او بیا د فعالیت ازموینه او اندازه کول. که ستونزې رامینځته شي او تاسو ډاډه یاست چې لامل یې د ټرانسپورټ پروتوکول دی ، نو دا ممکن وخت وي چې خپل د ټرانسپورټ پروتوکول رامینځته کړئ.

د دې برخې په پای کې، زه وړاندیز کوم چې تاسو یې ولولئ د ملټي پلیر لوبې برنامې پیژندنه د براین هوک لخوا، کوم چې دلته بحث شوي ډیری موضوعات پوښي.

د غوښتنلیک پروتوکول

اوس چې موږ کولی شو د پیرودونکو او سرور ترمینځ ډیټا تبادله کړو ، موږ اړتیا لرو پریکړه وکړو چې کوم ډیټا لیږدولو او په کوم شکل کې.

کلاسیک سکیم دا دی چې پیرودونکي سرور ته ان پټ یا کړنې لیږي، او سرور د اوسني لوبې حالت پیرودونکو ته لیږي.

سرور بشپړ حالت نه لیږي ، مګر یو فلټر شوی حالت د هغو ادارو سره چې پلیر ته نږدې موقعیت لري. هغه دا د دریو دلیلونو لپاره کوي. لومړی، بشپړ حالت ممکن خورا لوی وي چې په لوړه فریکونسۍ کې لیږدول کیدی شي. دوهم، پیرودونکي په عمده توګه د بصری او آډیو ډیټا سره علاقه لري، ځکه چې د لوبې ډیری منطق د لوبې سرور کې سمبال شوی. دریم، په ځینو لوبو کې لوبغاړی اړتیا نلري چې ځینې معلومات وپیژني، د بیلګې په توګه، د نقشې په بل اړخ کې د دښمن موقعیت، که نه نو هغه کولی شي پاکټونه وخوري او دقیقا پوه شي چې د هغه د وژلو لپاره چیرته حرکت وکړي.

سریال کول

لومړی ګام دا دی چې هغه ډیټا بدل کړئ چې موږ یې لیږو (ان پټ یا د لوبې حالت) د لیږد لپاره مناسب شکل کې. دې پروسې ته ویل کیږي لړۍ کول.

هغه فکر چې سمدلاسه ذهن ته راځي د انسان د لوستلو وړ بڼه کارول دي، لکه JSON یا XML. مګر دا به په بشپړ ډول غیر موثر وي او ډیری چینل به ضایع کړي.

د دې پرځای د بائنری فارمیټ کارولو سپارښتنه کیږي، کوم چې خورا ډیر کمپیکٹ دی. دا دی، پاکټونه به یوازې یو څو بایټونه ولري. دلته د پام وړ ستونزه شتون لري د بایټ امر، کوم چې ممکن په مختلف کمپیوټرونو کې توپیر ولري.

د معلوماتو سیریل کولو لپاره، تاسو کولی شئ یو کتابتون وکاروئ، د بیلګې په توګه:

یوازې ډاډ ترلاسه کړئ چې کتابتون د پورټ ایبل آرشیف رامینځته کوي او د پایښت په اړه پاملرنه کوي.

یو بدیل حل دا دی چې دا پخپله پلي کړئ؛ دا په ځانګړي توګه ستونزمن نه دی، په ځانګړې توګه که تاسو خپل کوډ ته د ډیټا متمرکز چلند کاروئ. سربیره پردې ، دا به تاسو ته اجازه درکړي هغه اصلاحونه ترسره کړئ چې تل د کتابتون کارولو پرمهال امکان نلري.

ګلین فیډلر د سریال کولو په اړه دوه مقالې لیکلي: د لوستلو او لیکلو پاکټونه и د سریال کولو تګلارې.

فشار

د پیرودونکو او سرور تر مینځ د لیږدول شوي ډیټا مقدار د چینل بینډ ویت لخوا محدود دی. د ډیټا کمپریشن به تاسو ته اجازه درکړي چې په هر سنیپ شاټ کې ډیر ډیټا انتقال کړئ ، د تازه کولو فریکوینسي زیاته کړئ ، یا په ساده ډول د چینل اړتیاوې کم کړئ.

د بټ بسته بندي

لومړی تخنیک د بټ پیکنگ دی. دا د بټونو دقیق شمیر کارولو څخه مشتمل دی چې د مطلوب ارزښت تشریح کولو لپاره اړین دي. د مثال په توګه، که تاسو یو اینوم لرئ چې 16 مختلف ارزښتونه لري، نو د بشپړ بایټ (8 بټ) پرځای تاسو کولی شئ یوازې 4 بټونه وکاروئ.

ګلین فیډلر د مقالې په دویمه برخه کې د دې پلي کولو څرنګوالی تشریح کوي د لوستلو او لیکلو پاکټونه.

د بټ پیکنگ په ځانګړي ډول د نمونې کولو سره ښه کار کوي، کوم چې به د راتلونکې برخې موضوع وي.

نمونه کول

نمونه کول یو زیانمن کمپریشن تخنیک دی چې د ارزښت کوډ کولو لپاره یوازې د ممکنه ارزښتونو فرعي سیټ کاروي. د امتیاز پلي کولو لپاره ترټولو اسانه لار د فلوټینګ پوائنټ شمیرو ګرد کول دي.

ګلین فیډلر (بیا بیا!) په خپله مقاله کې د نمونې اخیستلو څرنګوالي په ګوته کوي د سنیپ شاټ کمپریشن.

د کمپریشن الګوریتم

راتلونکی تخنیک به بې زیان کمپریشن الګوریتمونه وي.

دلته، زما په نظر، درې خورا په زړه پورې الګوریتمونه دي چې تاسو ورته اړتیا لرئ پوه شئ:

  • هفمن کوډ کول د مخکې حساب شوي کوډ سره، کوم چې خورا ګړندی دی او کولی شي ښه پایلې تولید کړي. دا د Quake3 شبکې انجن کې د کڅوړو د کمپرس کولو لپاره کارول کیده.
  • زلب د عمومي هدف کمپریشن الګوریتم دی چې هیڅکله د معلوماتو مقدار نه زیاتوي. تاسو څنګه لیدلی شئ دلته، دا په مختلفو غوښتنلیکونو کې کارول شوی. دا ممکن د ایالتونو تازه کولو لپاره بې ځایه وي. مګر دا ګټور کیدی شي که تاسو اړتیا لرئ د سرور څخه مراجعینو ته شتمنۍ، اوږد متنونه یا ساحه واستوئ.
  • د چلولو اوږدوالی کاپي کول - دا شاید تر ټولو ساده کمپریشن الګوریتم وي، مګر دا د ډیټا ځینې ډولونو لپاره خورا اغیزمن دی، او د zlib څخه مخکې د پروسس کولو دمخه ګام په توګه کارول کیدی شي. دا په ځانګړي ډول د ټایلونو یا ووکسلونو څخه جوړه شوې خاوره د فشار کولو لپاره مناسبه ده چیرې چې ډیری نږدې عناصر تکرار شوي.

د ډیلټا کمپریشن

وروستی کمپریشن تخنیک د ډیلټا کمپریشن دی. دا پدې حقیقت کې دی چې یوازې د اوسني لوبې حالت او د پیرودونکي لخوا ترلاسه شوي وروستي حالت ترمینځ توپیرونه لیږدول کیږي.

دا لومړی ځل د Quake3 شبکې انجن کې کارول شوی و. دلته دوه مقالې دي چې د دې کارولو څرنګوالي تشریح کوي:

ګلین فیډلر هم دا د خپلې مقالې په دویمه برخه کې کارولی د سنیپ شاټ کمپریشن.

کوډ ورکول

سربیره پردې ، تاسو ممکن د پیرودونکو او سرور ترمینځ د معلوماتو لیږد کوډ کولو ته اړتیا ولرئ. د دې څو لاملونه شتون لري:

  • محرمیت/محرمیت: پیغامونه یوازې د ترلاسه کونکي لخوا لوستل کیدی شي، او بل څوک چې شبکه یې شننه کوي د لوستلو توان نلري.
  • تصدیق: یو څوک چې غواړي د لوبغاړي رول ولوبوي باید د هغه کلید وپیژني.
  • د خیانت مخنیوی: دا به د ناوړه لوبغاړو لپاره خورا ستونزمن وي چې خپل د غلا کڅوړې رامینځته کړي ، دوی باید د کوډ کولو سکیم بیا تولید کړي او کیلي ومومي (کوم چې د هرې اړیکې سره بدلیږي).

زه په کلکه د دې لپاره د کتابتون کارولو وړاندیز کوم. زه د کارولو وړاندیز کوم لیبسوډیمځکه چې دا په ځانګړې توګه ساده دی او غوره ښوونې لري. په ځانګړې توګه په زړه پورې درس دی کلیدي تبادله، کوم چې تاسو ته اجازه درکوي د هر نوي پیوستون سره نوي کیلي رامینځته کړئ.

د غوښتنلیک پروتوکول: پایله

دا زموږ د غوښتنلیک پروتوکول پای ته رسوي. زه باور لرم چې کمپریشن په بشپړ ډول اختیاري دی او د دې کارولو پریکړه یوازې په لوبې او اړین بینډ ویت پورې اړه لري. کوډ کول، زما په نظر، لازمي دي، مګر په لومړي پروټوټایپ کې تاسو کولی شئ پرته له دې.

د غوښتنلیک منطق

موږ اوس د دې وړتیا لرو چې په پیرودونکي کې حالت تازه کړو ، مګر ممکن د ځنډ مسلو سره مخ شو. لوبغاړی، د ان پټ بشپړولو وروسته، د لوبې حالت ته انتظار ته اړتیا لري ترڅو د سرور څخه تازه شي ترڅو وګوري چې دا په نړۍ کې څه اغیزه لري.

سربیره پردې ، د دوه دولتي تازه معلوماتو ترمینځ ، نړۍ په بشپړ ډول جامد ده. که د دولت تازه کولو کچه ټیټه وي ، نو حرکتونه به خورا سخت وي.

د دې ستونزې اغیزې کمولو لپاره ډیری تخنیکونه شتون لري، او زه به یې په راتلونکې برخه کې پوښم.

د ځنډ د نرمولو تخنیکونه

په دې برخه کې تشریح شوي ټول تخنیکونه په لړۍ کې په تفصیل سره بحث شوي ګړندی ملټي پلیر ګابریل ګمبیتا زه په کلکه د دې عالي مقالو لوستلو وړاندیز کوم. پدې کې یو متقابل ډیمو هم شامل دی چې تاسو ته اجازه درکوي وګورئ چې دا تخنیکونه په عمل کې څنګه کار کوي.

لومړی تخنیک دا دی چې د سرور څخه ځواب ته انتظار کولو پرته د ان پټ پایلې مستقیم پلي کړئ. دې ته وایې د پیرودونکي اړخ وړاندوینه. په هرصورت، کله چې پیرودونکي د سرور څخه تازه معلومات ترلاسه کوي، دا باید تصدیق کړي چې د هغې وړاندوینه سمه وه. که دا مسله نه وي، نو هغه باید د هغه څه سره سم خپل حالت بدل کړي چې له سرور څخه یې ترلاسه کړی، ځکه چې سرور حاکم دی. دا تخنیک په لومړي ځل په زلزله کې کارول شوی و. تاسو کولی شئ په مقاله کې د دې په اړه نور ولولئ د زلزلې انجن کوډ بیاکتنه فابین سنګرز [ژباړه په Habré].

د تخنیکونو دوهم سیټ د دوه دولتي تازه معلوماتو ترمینځ د نورو ادارو حرکت اسانه کولو لپاره کارول کیږي. د دې ستونزې د حل لپاره دوه لارې شتون لري: انټرپولیشن او استخراج. د انټرپولیشن په حالت کې، وروستي دوه حالتونه اخیستل کیږي او له یو څخه بل ته لیږد ښودل کیږي. د دې زیان دا دی چې دا د لږ ځنډ لامل کیږي ځکه چې پیرودونکي تل ګوري چې په تیرو وختونو کې څه پیښ شوي. Extrapolation د وړاندوینې په اړه ده چیرې چې ادارې باید اوس د پیرودونکي لخوا ترلاسه شوي وروستي حالت پراساس وي. د دې نیمګړتیا دا ده چې که چیرې وجود په بشپړ ډول د حرکت لوري ته بدلون ورکړي، نو د وړاندوینې او حقیقي موقعیت ترمنځ به لویه تېروتنه وي.

وروستی، خورا پرمختللی تخنیک یوازې په FPS کې ګټور دی د ځنډ جبران. کله چې د ځنډ جبران کاروي، سرور د پیرودونکي ځنډ په پام کې نیسي کله چې دا په هدف ډزې کوي. د مثال په توګه، که یو لوبغاړی په خپل سکرین کې د سر شاټ ترسره کړي، مګر په حقیقت کې د دوی هدف د ځنډ له امله په بل ځای کې و، نو دا به غیر عادلانه وي چې د ځنډ له امله د لوبغاړي د وژلو حق رد کړي. له همدې امله، سرور هغه شیبې ته بیرته راګرځي چې لوبغاړي ډزې کړې ترڅو هغه څه چې لوبغاړي یې په سکرین کې لیدلي سم کړي او د دوی د شاټ او هدف ترمنځ ټکر وګوري.

ګلین فیډلر (د تل په څیر!) په 2004 کې یوه مقاله لیکلې وه د شبکې فزیک (2004)، په کوم کې چې هغه د سرور او پیرودونکي ترمینځ د فزیک سمولونو همغږي کولو بنسټ کېښود. په 2014 کې هغه د مقالو یوه نوې لړۍ ولیکل د شبکې فزیک، کوم چې د فزیک سمولونو همغږي کولو لپاره نور تخنیکونه بیان کړل.

په ویلو ویکي کې دوه مقالې هم شتون لري، سرچینه ملټي پلیر شبکه и په پیرودونکي/سرور کې د لوبې پروتوکول ډیزاین او اصلاح کولو کې د ځنډ جبران کولو میتودونه کوم چې د ځنډ لپاره جبران په پام کې نیسي.

د خیانت مخنیوی

د درغلۍ مخنیوي لپاره دوه اصلي تخنیکونه شتون لري.

لومړی: د خیانت کونکو لپاره د ناوړه کڅوړو لیږل ډیر ستونزمن کول. لکه څنګه چې پورته یادونه وشوه، د دې پلي کولو یوه ښه لاره کوډ کول دي.

دوهم: یو استبدادي سرور باید یوازې حکمونه/انپوټ/عملونه ترلاسه کړي. پیرودونکي باید د دې توان ونلري چې په سرور کې حالت بدل کړي پرته له دې چې د ننوتلو لیږلو سره. بیا، هرکله چې سرور ان پټ ترلاسه کوي، دا باید وګوري چې ایا دا د کارولو دمخه اعتبار لري.

د غوښتنلیک منطق: پایله

زه وړاندیز کوم چې تاسو د لوړې ځنډونو او ټیټ ریفریش نرخونو سمولو لپاره یوه لاره پلي کړئ ترڅو تاسو په ضعیف شرایطو کې د خپلې لوبې چلند ازموینه وکړئ ، حتی کله چې پیرودونکي او سرور په ورته کمپیوټر کې روان وي. دا به د ځنډ د نرمولو تخنیکونو پلي کول خورا ساده کړي.

نورې ګټورې سرچینې

که تاسو غواړئ د شبکې ماډلونو کې نورې سرچینې وپلټئ، تاسو کولی شئ دوی دلته ومومئ:

سرچینه: www.habr.com

Add a comment