বিটোরেন্ট কীভাবে কাজ করে?


34

ফাইল ভাগ করার বিটোরেন্ট পদ্ধতি সম্পর্কে আমি আরও জানতে চাই। আমি একটি প্রযুক্তিগতভাবে উন্নত ব্যবহারকারী (প্রোগ্রামার), সুতরাং প্রযুক্তিগতভাবে উন্নত উপাদান কোনও সমস্যা নয়, তবে এটি সংক্ষিপ্ত এবং বিন্দুতে হওয়া উচিত। আমার একটি ভাল সংস্থান বই / ওয়েব দরকার যা সামগ্রিকভাবে বিটোরেন্ট আর্কিটেকচারের ব্যাখ্যা দেয়।

আমি বিশদ সম্পর্কে মোটেই আগ্রহী নই, কেবল সামগ্রিক আর্কিটেকচার এবং বীজ, সহকর্মী ইত্যাদির পরিভাষা

কোন পরামর্শ?

উত্তর:


29

কীভাবে বিটোরেন্ট কাজ করে তার ওভারভিউ:

  • আপনার পিয়ার এবং ট্র্যাকার রয়েছে । যে কোনও মুহুর্তে সমস্ত সমবয়সীরা একসাথে জড়ান । স্বাভাবিক পরিস্থিতি এক বা কয়েকজন সমবয়সীর কাছে সম্পূর্ণ ফাইলসেট থাকে এবং এটি অন্য সমবয়সীদের কাছে উপলভ্য করতে ইচ্ছুক।

  • একজন সমবয়সী একটি টরেন্ট ফাইলটি অর্জন করেন যা অন্যান্য জিনিসের মধ্যে থাকবে ক) ফাইলসেটের এসএইচএ -১ হ্যাশ, খ) ট্র্যাকারের ইউআরএল এবং সি) ফাইলটি যে টুকরো টুকরো টুকরো হয়ে গেছে তার সংখ্যা পাশাপাশি প্রতিটি টুকরা এর একটি SHA-1 হ্যাশ। টুকরাগুলির আকারটি টরেন্ট নিজেই নির্ধারিত হয়।

  • পিয়ারটি তারপরে টরেন্টে নির্দিষ্ট ইউআরএল ব্যবহার করে ট্র্যাকারের সাথে সংযোগ স্থাপন করে। ট্র্যাকার সমকক্ষদের একটি তালিকা দিয়ে সাড়া দেয়। ট্র্যাকারগুলি 80 বা 443 পোর্টের মধ্যে HTTP- র কথা বলে।

  • পিয়ার তারপরে ট্র্যাকারের তথ্য ব্যবহার করে অন্য পিয়ার নির্বাচন করে এবং কোনও অংশ পাওয়ার চেষ্টা করে এক্সচেঞ্জ সেশন সেট করতে সরাসরি যোগাযোগ করে। নোট করুন যে এক্সচেঞ্জ সেশনগুলি সরাসরি পিয়ারদের দ্বারা সম্পন্ন হয় এবং ট্র্যাকার স্থানান্তরের সাথে জড়িত নয়। ট্র্যাকার কেবল তথ্য সরবরাহ করে।

  • একবার পীরের কোনও টুকরো হয়ে গেলে, এটি এটি SHA-1 হ্যাশের বিপরীতে যাচাই করে এবং ফাইলটিতে লিখে দেয়। এটি অন্য পিয়ার নির্বাচন করার পরে এটি টুকরা অফার করতে পারে। পরবর্তী এক্সচেঞ্জ সেশনে "ট্রেডিং" টুকরা জড়িত। আমি বিশ্বাস করি যে পিয়ারগুলি সাধারণত আপনাকে প্রথম টুকরো দেবে যদি আপনার অন্য কোনও টুকরা না থাকে।

  • সহকর্মীদের আপডেট হওয়া তালিকা পেতে পীর প্রতি বার বার ট্র্যাকারটিকে পুনর্বিবেচনা করে। পিয়ারের একাধিক টুকরা থাকলে অন্যটি শুরু করার আগে এক এক্সচেঞ্জের সমাপ্তির জন্য অপেক্ষা করতে হবে না, তাই একবার পীরের একগুচ্ছ টুকরো হয়ে গেলে স্থানান্তরটি সত্যিই গতি বাড়িয়ে দিতে পারে। এই কারণেই টরেন্টগুলি ধীরে ধীরে শুরু হয় তবে পিয়ারটি টুকরোগুলি অর্জন করার সাথে সাথে দ্রুত গতি অর্জন করে।

  • যখন কোনও পিয়ারের সমস্ত টুকরা থাকে, তখন পুরো ফাইলটি ফাইল সেট SHA-1 হ্যাশের বিপরীতে যাচাই করা হয়। পরে, এটি একটি হয়ে বীজবিক্রেতা , এবং এখন অসম্মতির কিন্তু সাহায্য fileset আরো অত্যন্ত পাওয়া যাবে হয়। যে সকল পিয়ারের সমস্ত টুকরোগুলি নেই সেগুলি লেচার

  • যদি কোনও টরেন্টের কোনও বীজ না থাকে তবে এটি মারা যায়, যদিও ফাইলটির সম্পূর্ণ অনুলিপি সকল সহকর্মীদের হাতে থাকা সমস্ত টুকরাগুলির মধ্যে উপস্থিত থাকলে তারা শেষ পর্যন্ত তাদের মধ্যে একটি সম্পূর্ণ অনুলিপি পেতে বাণিজ্য করবে।

  • SHA-1 হ্যাশ কীভাবে ট্র্যাকার এবং পিয়ারগুলি "ফাইল" কোন ফাইলটি সওয়ার করা হবে বলে মনে হয়। টরেন্টে থাকা ফাইলের নামগুলি ডেটা সনাক্ত করতে ব্যবহৃত হয় না। টরেন্টস যা টরেন্টস ফাইলগুলির মধ্যে টুপিগুলির বিরুদ্ধে যাচাই করে না ক্রমবর্ধমান খারাপ টুকরো প্রেরণকারী পিয়ারগুলি অন্য পিয়াররা ছুঁড়ে ফেলে এবং শেষ পর্যন্ত জলাবদ্ধতার কারও সাথে সংযোগ করতে সক্ষম হবে না।

  • একটি ছোট অংশের আকারের অর্থ টরেন্টটি আরও দৃ rob় হয় যেহেতু পীররা টুকরোগুলি আরও দ্রুত ব্যবসা করতে পারে তবে এর অর্থ হ'ল .torrent ফাইলটিতে আরও বেশি টুকরো টুকরো তালিকাভুক্ত করতে হবে এবং অতএব .torrent ফাইলটি বড় হতে পারে।

  • আপনি যদি বিটোরেন্টের মাধ্যমে কিছু প্রকাশ করছেন তবে যতক্ষণ না ফাইলটি উপলভ্য করতে চান ততক্ষণ বীজ হওয়া ভাল। অন্যান্য সমবয়সীরা আপনাকে সহায়তা করবে, যেহেতু বেশিরভাগ বিটটোরেন্ট সফ্টওয়্যার অ্যালগরিদম প্রয়োগ করে যা সংযোগের সংযোগ সর্বাধিকতর করার জন্য যতটা সম্ভব পীরের মধ্যে জিনিস ছড়িয়ে দেওয়ার চেষ্টা করে। এইভাবে বিটটরেন্ট আপনাকে জিনিস প্রকাশ করতে এবং ব্যান্ডউইথের খরচ বাঁচাতে সহায়তা করতে পারে।


1
একটি সুন্দর উত্তর! একটি কুইপ: আমি বিশ্বাস করি যে বীজ প্রথমে প্রথম টুকরা নয়, বীজ বিরল পছন্দ করে । এটি কোনও অ্যালগরিদম জিনিস কিনা তা নিশ্চিত নন, তবে সেটিংসের সাথে জগাখিচলে আমি একবার টরেন্ট প্রোগ্রাম থেকে পেয়েছি।
গ্যালিফ্রায়ান

18

এখানে বিষয় উপর দুর্দান্ত কাগজ

      http://davidhales.name/posters/patarin-hales-delis-poster6.pdf (নোটটি আসলে একটি .pdfফাইল এবং অ্যাক্রোব্যাট রিডারের সাথে দেখা যেতে পারে))

এখানে এমন একটি চিত্র ফাইল রয়েছে যা এর সামগ্রীগুলি দিয়ে তৈরি করেছে:

patarin-হেলস-ডিলিস poster6


8

ইউটিউবে একটি দুর্দান্ত ভিডিও রয়েছে যা কার্ডবোর্ড কাট-আউটগুলির সাথে চাক্ষুষ উপায়ে এটি ব্যাখ্যা করছে। এটি একটি অত্যন্ত প্রযুক্তিগত ব্যাখ্যা নয়, তবে বিটটোরেন্টের পিছনের ধারণাটি সাধারণ, বোধগম্য উপায়ে ব্যাখ্যা করার জন্য দুর্দান্ত।

কীভাবে বিটোরেন্ট ইউটিউবে কাজ করে


3
+1 দরকারী ভিডিও। এটা আমার বাবার কাছে দেখিয়েছি। তার পরে আর কোনও প্রশ্ন ছিল না। অবাক করা ব্যাপার। :)
শূন্য 2cx

2

পিয়ার বার্তাগুলি প্রোটোকলে একটি ওভারভিউ ।

ক্লায়েন্ট পিয়ার, টিসিপি বা ইউটিপি (ইউডিপির বেশি) সাথে তথ্য ভাগ করতে দুটি প্রোটোকল ব্যবহার করতে পারে। এই ডেটা বিটোরেন্ট প্রোটোকল স্পেসিফিকেশন , বিভাগ পিয়ার বার্তা অনুসরণ করে

সুতরাং প্রোগ্রামগতভাবে, দুটি ক্লায়েন্টের মধ্যে একটি সংযোগ শুরু করতে হবে। সংযোগটি সেট করার পরে (টিসিপি বা ইউটিপি-র মাধ্যমে) ক্লায়েন্ট দ্বারা একটি বিটোরেন্ট হ্যান্ডশেক শুরু করা হয়েছিল যা ট্র্যাকার থেকে বা ডিএইচটি এর মাধ্যমে রিমোট পিয়ারের তথ্য (আইপি ও পোর্ট) ধরেছিল । এই হ্যান্ডশেকটিতে তথ্য_হ্যাশ রয়েছে যা এই সংযোগটি সম্পর্কে টরেন্টটি সনাক্ত করবে।

প্রোটোকলের মাধ্যমে টরেন্ট ডেটা কীভাবে কাটা হয় তা প্রথমে দেখুন। একটি টুকরা ডেটা নেটওয়ার্কের মাধ্যমে ভাগ করছে এর একটি অংশ। কোনও ব্লকের সাথে বিভ্রান্ত না হওয়ার জন্য , যা কোনও প্যাকেটে আবৃত অংশের একটি অংশ। ব্লক একটি ভাগ করার জন্য গ্র্যানুলারিটি হয় টুকরা প্যাকেট মাধ্যমে, এবং একটি টুকরা সহকর্মীরা মাধ্যমে একটি টরেন্ট শেয়ার করতে গ্র্যানুলারিটি হয়।

সংযোগ শুরু হওয়ার পরে, উভয় ক্লায়েন্ট (স্থানীয় ক্লায়েন্ট, যা আমি এলসি এবং দূরবর্তী ক্লায়েন্ট, আরসি ) বলব তা বন্ধ এবং আগ্রহী নয়দম বন্ধ হওয়ার অর্থ "আমি আপনার কোনও বার্তার জবাব দেব না, খুব ব্যস্ত, তবে আমি সেগুলি আমলে নিতে পারি"। আনচোকড এর অর্থ "আমি আপনার বার্তাগুলির জবাব দেব"। আগ্রহী অর্থ অবশ্যই আপনার কাছে কিছু টুকরো চাই । সুতরাং, দুটি সমবয়সীর মধ্যে একটি সংযোগের অবস্থাটি সেই চারটি রাজ্যের সাথে সংজ্ঞায়িত করা যেতে পারে: এলসি_চকড ?, এলসি_ইন্ট্রেটেড ?, আরসি_চকড ?, আরসি_আন্ট্রেস্টেড? যাতে তিনি সতর্ক করেন রেসিন যে আমি (UN) ঠাসা বা (UN) আগ্রহী, আমাকে তাকে (আন) আগ্রহী এবং (আন) চোকযুক্ত বার্তাগুলি এবং পারস্পরিকভাবে প্রেরণ করতে হবে।

তাদের কাছে কোন টুকরো রয়েছে তা একে অপরকে জানানোর জন্য , তারা হ্যান্ডশেক করার ঠিক পরে বিটফিল্ড বার্তা পাঠাতে পারে । যেমন নামটি বোঝায়, এটি একটি স্ট্রিং যেখানে প্রতিটি বিট সেট করা আছে 1যদি ক্লায়েন্টের কাছে এই অদ্ভুত অংশ থাকে , 0অন্যথায়।

তাই আপনি যদি এলসি করা হয় ঠাসা এবং আগ্রহী এবং রেসিন হয়েছে unchocked তাকে, তারপর তিনি একটি পাঠাতে পারেন অনুরোধ একটি জন্য জিজ্ঞাসা করতে বার্তা ব্লক এক একাত্মতার টুকরা সে জানে এলসি ধন্যবাদ রয়েছে bitfield বার্তা।

যখন কোনও পিয়ার পুরো টুকরোটি গ্রহণ করে , সে তার প্রত্যন্ত সমবয়সীদের জানাতে একটি টুকরো বার্তা পাঠাতে পারে যাতে তারা যে বিটফিল্ডটি ধারণ করে তা আপডেট করে ।

এটি একটি খুব বেসিক ওভারভিউ, এবং অবশ্যই সমস্ত বিবরণ এখানে দমনযোগ্য অ্যালগরিদম ইত্যাদির মতো সরবরাহ করা হয় না ... আপনি যদি আরও বিশদ চান তবে মন্তব্য বিভাগে উপরে পোস্ট করা দুটি লিঙ্ক পরীক্ষা করুন (নতুন ব্যবহারকারী হিসাবে আমি করতে পারি) একটি পোস্টের মধ্যে দুটির বেশি লিঙ্ক নেই)।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.