با سيلاب بيت ها همراه شويد(نگاهی به پروتكل بيت تورنت)

BitTorrent پروتکلی ست که به منظور ارسال فایل طراحی شده‌است. در واقع نوعی ارتباط peer-to-peer می‌باشد که کاربران مستقیما به یکدیگر متصل می‌شوند و به ارسال و دریافت قسمتی از فایل می‌پردازند. گر چه فعالیت‌های تمامی کاربران توسط یک سرور مرکزی به نام Tracker هماهنگ می‌شود، اما این سرور از محتویات فایل‌هایی که منتقل می‌شود بی اطلاع است.فلسفه کلیدی BitTorrent اینست که کاربران باید هم‌زمان با دان لود کردن اطلاعات (دریافت inbound)، آپلود (ارسال outbound) نمایند.

برای توصیف بهتر این روند می‌توان آن را به گروهی از افراد تشبیه کرد که دور یک میز نشسته‌اند. هر کدام از این افراد سعی دارند که کپی کاملی از یک کتاب را دریافت کنند. نفر اول اعلام می‌کند که صفحات ۱-۱۰، ۲۳، ۴۲-۵۰ و ۷۵ را دارد و نفرات سوم، چهارم و پنجم هر کدام قسمت‌هایی از این صفحات را ندارند. بنابراین هر یک برای گرفتن صفحات، خود را با نفر اول هماهنگ می‌کنند. نفر دوم اعلام می‌کند که صفحات ۱۱-۲۲، ۳۱-۳۷ و ۶۳-۷۰ را دارد. نفر اول، چهارم و پنجم به نفر دوم می‌گویند که بعضی از صفحات او را می‌خواهند و او هم کپی آن صفحات را به آنها می‌دهد. این روند ادامه می‌یابد تا وقتی که همه افراد کپی تمام کتاب را به دست بیاورند. همچنین دور این میز شخص دیگری وجود دارد که کپی کل کتاب را دارد. بنابراین احتیاج ندارد که برایش کپی صفحه‌ای فرستاده شود. او صفحاتی را که هیچ کس ندارد بین افراد پخش می‌کند. در ابتدا هنگامی که افراد دور میز می‌نشینند، باید از او بخواهند که اولین سری کپی صفحات خود را به آنها بدهد. گرچه افراد سعی می‌کنند که صفحات مشابه را از او نگیرند، بعد از مدتی همگی اکثر کپی کتاب را دارند. بدین ترتیب این فرد می‌تواند کتابی را که دارد در اختیار افراد زیادی قرار دهد بدون اینکه مجبور باشد کل کپی را به تمام افراد بدهد. او می‌تواند در عوض، قسمت‌های مختلف کتاب را به افراد متفاوت بدهد. و آنها قادر خواهند بود که این قسمت‌ها را در بین خود پخش کنند.

اصطلاحات BitTorrent
  • torrent یا سیل (جریان شدید): این اصطلاح معمولاً به فایل متادیتای کوچکی گفته می‌شود که از وب سرور(web server) با پسوند.torrent در یافت می‌کنیم. متادیتا در اینجا به معنی فایلی ست که اطلاعاتی در مورد داده‌ای که می‌خواهیم دان لود کنیم دارد و نه خود داده. این فایل هنگامی که بر روی لینک دان لود آن در یک وب‌گاه کلیک می‌کنید، به کامپیوتر ما فرستاده می‌شود. همچنین می‌توان فایل torrent را بر روی سیستم محلی خود ذخیره کنیم و بعدها با کلیک بر روی آن، اقدام به دریافت آن کنیم.
  • Peer یا همتا: Peer کامپیوتر دیگری ست که به آن متصل شده و داده را منتقل می‌کنیم. معمولاً یک Peer تمام فایل را ندارد. در غیر این صورت به آن Seed می‌گوییم. همچنین به Peer‌ها Leech یا زالو هم گفته می‌شود که از کامپیوترهایی که دان لود خود را کامل کرده‌اند و کلاینت BitTorrent خود را فعال نگهداشته و به صورت Seed عمل می‌کنند، متمایز شوند.
  • Leech یا زالو: به Peerای گفته می‌شود که به خاطر نسبت اشتراک پایین خود بر روی swarm تأثیر منفی می‌گذارد. به بیان دیگر بیشتر از اینکه آپ لود کند، دان لود می‌کند. اکثر Leechها، کاربرانی هستند که اتصالات نامتقارن دارند و کلاینت BitTorrent خود را بعد از اتمام دان لود برای عمل seeding باز نمی‌گذارند. حتی بعضی از Leechها به عمد با کلاینت‌های تنظیم شده و یا محدود کردن سرعت ارسال، از آپ لود کردن جلوگیری می‌کنند. با این وجود اصطلاح Leech می‌تواند به جای Peer نیز بکار گرفته شود.
  • Seed یا دانه : کامپیوتری ست که کپی کامل یک torrent مشخص را دارد. هنگامی که کامپیوتر ما به طور کامل فایل را دان لود کرد، تا زمانی که روی دکمهٔ پایان کلیک نکنیم و یا به هر طریق آن را نبندیم، باز باقی می‌ماند. به این عمل Seed بودن و یا Seeding می‌گویند. همچنین می‌توانیم یک کلاینت BitTorrent را با فایل کاملی شروع کنیم. به محض اینکه BitTorrent فایل را امتحان کرد، متصل شده و فایل مربوطه را برای افراد دیگر Seed می‌کند. در کل، بهتر است بعد از اینکه فایلی را به طور کامل دریافت کردیم، برای کمک به دیگران آن را Seed کنیم. همچنین هنگامی که فایل torrent جدیدی به Tracker فرستاده می‌شود، باید حداقل یک Seed موجود باشد که آن را برای دیگران قابل دستیابی کند. به یاد داشته باشید که Tracker هیچ چیز در مورد محتوای واقعی فایل‌ها نمی‌داند. بنابراین مهم است که بعد از upload کردن یک فایل torrent در Tracker، آن را Seed کنیم.
  • Reseed یا کاشت دوباره : هنگامی که هیچ Seed ای برای فایل تورنت مورد نظر موجود نباشد و Peer‌ها با هم، کل فایل را نداشته باشند، تمامی Peer‌ها فایل ناقصی دارند و هیچ یک، قسمت‌های تکمیل کننده را ندارد. در این صورت کامپیوتری با فایل کامل (Seed)، باید به Swarm (گروه و دسته) متصل شود و قسمت‌های ناقص فایل را ارسال کند. این عمل کاشت دوباره نام دارد. معمولاً یک درخواست برای عمل Reseed با تعهدی همراه است مبنی بر اینکه بعد از دان لود کامل فایل، فرد درخواست کننده باید برای مدت زمان مشخصی به منظور افزودن طول عمر به فایل تورنت به عنوان یک Seed عمل کند.
  • Swarm یا گروه و دسته : به گروهی از ماشین‌ها گفته می‌شود که به طور مشترک و جمعی برای یک فایل خاص به یکدیگر متصل هستند. برای مثال اگر یک کلاینت BitTorrent را راه اندازی کنیم و به ما بگوید که به ۱۰ Peer و ۳ Seed متصل هستیم، Swarm شامل کامپیوتر ما و ۱۳ نفر دیگر است.
  • Tracker یا ردیاب : سروری ست در اینترنت که فعالیت‌های کلاینت‌های BitTorrent را هماهنگ می‌کند. هنگامی که تورنتی را باز می‌کنیم، ماشین ما با Tracker ارتباط برقرار می‌کند و لیستی از Peer‌ها را برای تبادل اطلاعات دریافت می‌کند. این کار به طور دوره‌ای و متناوب صورت می‌گیرد و Tracker میزان دان لود و آپ لود، میزان باقی مانده از فایل و وضعیتی که در حال حاضر داریم (شروع، پایان دان لود و توقف) را به ما نشان می‌دهد. اگر Tracker از کار بیفتد و بخواهیم یک تورنت را باز کنیم، قادر نخواهیم بود. اگر بعد از اتصال در حین ارتباط با Peer‌ها و دان لود کردن فایل تورنت، Tracker از کار بیفتد، قادر به ادامه انتقال با آن Peer‌ها خواهیم بود ولی هیچ Peer جدیدی قادر به برقرار کردن ارتباط با ما نخواهد بود. معمولاً خطاهای Tracker‌ها موقتی هستند. بنابراین بهترین کار اینست که صبر کنیم و کلاینت را باز نگهداریم تا به فعاليت خود ادامه دهد.
  • Share rating یا سرعت اشتراک : اگر از یک کلاینت آزمایشی با stats-patch استفاده می‌کنیم، می‌توانیم سرعت اشتراک را در یک پنل GUI مشاهده کنیم. که نشان دهندهٔ نسبت مقدار آپ لود شده به مقدار دان لود شده‌است. مقدارهای بکار برده شده، تنها برای قسمت‌های در حال انتقال هستند نه برای کل فایل. اگر نسبت اشتراک نشان داده شده برابر با ۱ باشد، بدین معنی ست که به همان میزانی که آپ لود نموده‌ایم، دان لود کرده‌ایم. هر چه این عدد بزرگ تر باشد نشان دهنده اینست که یه میزان بیشتری ارسال کرده‌اید. اگر این نسبت ۰ بود، به این معنی ست که شما کل فایل را دریافت نموده‌اید و به عنوان Seed فعالیت می‌کنید. بنابراین هر چه بیشتر به ارسال ادامه دهید میزان این نسبت به سمت بی نهایت می‌رود. این نسبت تنها به منظور آگاهی کاربران محاسبه می‌شود. در کل برای کمک به دیگران بهتر است همیشه این نسبت را به حداکثر مقدار برسانیم.
  • distributed copies:در بعضی‌از نسخه های نرم افزاری بيت تورنت اصطلاح ” اتصال به n،بذر(Seed) همچنين n.nnn بذر كپی توزيع شده . مثلا اگر كتابی 10 صفحه دارد Aصفحات 1 تا 5 را دارد و B صفحات 6تا10 را ، پس A و B مجموعا 10 صفحه كتاب را دارند حتی اگر هيچيك يك Seed نباشند.
  • Choked یا مسدود شده : این اصطلاحی ست که در پروتوکل BitTorrent بکار رفته‌است و به حالتی از یک ارسال کننده فایل (uploader)اشاره دارد. وقتی که یک اتصال مسدود شده‌است به معنی ست که ارسال کننده در حال حاضر نمی‌خواهد داده‌ای به آن لینک ارسال کند. کلاینت BitTorrent، بنا به دلائلی سیگنالی به کلاینت‌های دیگر می‌فرستد که مسدود شدن این لینک را اعلام کند. اما معمولاً بطور پیش فرض یک کلاینت (کلاینتی که بیشترین آپ لود را داشته‌است) آپ لودهای فعال خود را باز می‌گذارد و بقیه کلاینت‌ها مسدود اعلام می‌شوند. مقدار پیش فرض ۴ می‌باشد که مشابه تنظیمات کلاینت BUI آزمایشی ست که می‌توان تغییر داد. یک اتصال می‌تواند به دلائل دیگری نیز مسدود شود. به طور مثال هنگامی که یک Peer مشغول دریافت فایلی از یک Seed است که نمی‌خواهد داده‌ای را ارسال کند، اتصالش مسدود شده اعلام می‌شود. توجه داشته باشید که اگر هر اتصال دوطرفه و قرینه باشد، دو علامت نمایش انسداد برای هر اتصال (انتهای هر ارسال کننده) خواهیم داشت.
  • Interested یا مشتاق : اصطلاح دیگری ست که در پروتوکل BitTorrent بکار برده می‌شود که در نتیجهٔ علامت انسداد ایجاد شده‌است و به نشان دهندهٔ حالتی ست که فرد دان لود کننده در انتظار اتصال و دریافت قسمتی از فایل است. فرد دان لود کننده هنگامی مشتاق نامیده می‌شود که در کلاینت مقابل، قسمتی از فایل موجود باشد که این فرد احتیاج دارد.
  • Snubbed یا منع شده : اگر کلاینت هیج داده‌ای را بعد از مدت زمان مشخصی (بطور پیش فرض ۶۰ ثانیه) دریافت نکند، منع شده نامیده می‌شود. این حالت هنگامی رخ می‌دهد که از ارسال Peer مقابل، برای مدتی جلوگیری شده باشد. بعضی از اوقات کلاینت در حالتی قرار می‌گیرد که با اینکه به تعداد زیادی از Peer‌ها متصل است، ولی توسط تمام آنها مسدود شده‌است. این کلاینت از علامت منع شده استفاده می‌کند تا از این موقعیت خارج شود. این علامت نشان می‌دهد که یک Peer که می‌خواهد تکه‌هایی از فایل را انتقال دهد، برای مدتی چیزی ارسال نکرده‌است
  • Optimistic unchoking یا اتصال مجدد خوشبینانه : کلاینت‌ها به طور متناوب، لیستی از ارسال کننده‌ها را بازنگری می‌کنند و تلاش می‌کنند تا اتصالات جدیدی را که قبلا مسدود شده بودند، برقرار کنند و اتصالاتی را که برقرار کرده بودند را مسدود کنند. این اعمال را می‌توان هر ۱۰ یا ۲۰ ثانیه با مشاهدهٔ “Advanced” از یکی از کلاینت‌ها بررسی کرد.
BitTorrent چگونه کار می‌کند؟

پروتوکل BitTorrent فایل‌ها را به تکه‌های کوچک، معمولاً یک چهارم مگابایت (۲۵۶ KB) می‌شکند. هر چه اندازهٔ فایل بزرگ‌تر باشد، تکه‌ها نیز بزرگ‌تر خواهند بود. به طور پیش فرض اندازه تکه‌ها برای یک فایل ۴٫۳۷ گیگا بایتی، ۴ مگابایت می‌باشد. Peerها تکه‌هایی را که ندارند از یکدیگر دانلود می‌کنند و تکه‌هایی را که Peer‌های دیگر ندارند برایشان آپلود می‌کنند. این پروتوکل به اندازهٔ کافی هوشمند است که Peerای را انتخاب کند که بهترین اتصال را داشته باشد. برای بالا بردن کارایی کل swarm، کلاینت‌های BitTorrent قسمت‌هایی را درخواست می‌کنند که کمیاب ترند. به عبارت دیگر قسمت‌هایی که در Peer‌های کمتری وجود دارند، می‌توانند برای Peer‌های بیشتری مفید باشند. تکه‌های فایل‌ها معمولاً به ترتیت دان لود نمی‌شوند و احتیاج به مرتب سازی در ماشین دریافت کننده دارند. توجه داشته باشید که کلاینت‌ها قبل از اینکه کل فایل دان لود شود، تکه‌ها را برای Peerهای دیگر آپ لود می‌کنند. بنابراین اشتراک گذاری برای هر Peer با یک فایل کوچک با پسوند.torrent آغاز می‌شود که یک فایل اشاره گر (pointer) است که شامل اطلاعاتی از قبیل نام فایل و اندازه آن دارد.دانلود کردن با BitTorrent بسیار آسان است. با یک فایل با پسوند.torrent آغاز می‌شود. هر فرد که می‌خواهد فایل را دانلود کند، ابتدا باید این فایل کوچک را دریافت نماید و آن را توسط نرم افزارهای کلاینت BitTorrent باز کند. فایل تورنت، آدرس tracker ای را که لیستی از کاربرانی که مشغول دانلود فایل هستند و محل قرار گرفتن تکه‌های فایل را می‌داند، به کلاینت می‌دهد. برای هر منبع قابل دسترس، کلاینت متوجه می‌شود که کدام بلاک از فایل مورد نظر قابل دستیابی هستند. به محض اینکه کلاینت دریافت یک بلاک را کامل کرد، آن را هش (Hash) می‌کند تا مطمئن شود که این بلاک با فایل تورنت متناسب است. سپس به دنبال کسی می‌گردد که این فایل را برایش آپلود کند.اگرچه BitTorrent پروتوکل خوبی برای کاربران پهن باند (BroadBand) می‌باشد، برای اتصالات dial up که بطور مداوم قطع می‌شوند، کمتر کارایی دارد. به بیان دیگر سرورهای HTTP زیادی اتصالات خود را برای ساعات طولانی قطع می‌کنند. در حالیکه تورنت‌های زیادی وجود دارند که هنوز دان لود خود را تکمیل نکرده‌اند.

چگونه از بيت تورنت استفاده كنيم ؟

شما در ابتدا بايد نرم افزار مربوط به آن را دانلود و نصب كنيد كلاينت بيت تورنت شما را قادر می سازد تا جستجو كنيد برای يافتن فايل های تورنت مورد نظر خود توسط جعبه جستجوی‌داخلی كه در نرم افزار تعبيه می شود( “Search for torrents”) . اين دسته از نرم افزارهای امكانات متنوعی را به كار بر می دهند چون دانلود به طور همزمان ، نمايش آماری از اطلاعات ، تعداد Seek ها ، و …

  1. دانلود نرم افزار µTorrent كه زبان فارسی رو هم پشتيبانی می كند
  2. Get BitTorrent

علاوه بر نرم افزارهای مذكور شما می تونيد از سرويس های جستجوی و دانلود فايل های تورنت هم استفاده كنيد سرويس هایی مانند:

  1. isohun
  2. thepiratebay
  3. mininova

uTorrent

منابع : ويكيپديا فارسی

Advertisements
  1. بیان دیدگاه

پاسخی بگذارید

در پایین مشخصات خود را پر کنید یا برای ورود روی شمایل‌ها کلیک نمایید:

نشان‌وارهٔ وردپرس.کام

شما در حال بیان دیدگاه با حساب کاربری WordPress.com خود هستید. بیرون رفتن / تغییر دادن )

تصویر توییتر

شما در حال بیان دیدگاه با حساب کاربری Twitter خود هستید. بیرون رفتن / تغییر دادن )

عکس فیسبوک

شما در حال بیان دیدگاه با حساب کاربری Facebook خود هستید. بیرون رفتن / تغییر دادن )

عکس گوگل+

شما در حال بیان دیدگاه با حساب کاربری Google+ خود هستید. بیرون رفتن / تغییر دادن )

درحال اتصال به %s

%d وب‌نوشت‌نویس این را دوست دارند: