Transmission 4.0.0 بر اساس C++، BitTorrent v2 و موارد دیگر ارائه می شود

انتقال

Transmission یک کلاینت رایگان، منبع باز و سبک وزن P2P برای شبکه BitTorrent است.

تقریباً بعد از سه سال پیشرفت از انتشار نسخه جدید Transmission 4.0.0 خبر دادنسخه ای که در آن بازسازی قابل توجهی از پایه کد انجام شد که باعث کاهش 18 درصدی اندازه کد شد و پوشش تست را بهبود بخشید و تعمیر و نگهداری را ساده کرد.

برای کسانی که تازه با Transmission آشنا شده اند، باید بدانید که این یک کلاینت بیت تورنت نسبتاً سبک و بی نیاز است که به زبان C نوشته شده و با انواع رابط های کاربری سازگار است: GTK، Qt، Mac بومی، رابط وب، دیمون، CLI.

ویژگی های اصلی جدید Transmission 4.0.0

El تغییر کلید در شاخه جدید، ترجمه پایگاه کد از C (C90) به C++ بود. قبلا فقط رابط مبتنی بر Qt به زبان C++ نوشته می شد. دلیل اصلی برای پورت کل پروژه به C++ است تمایل به استفاده از توابع اضافی ارائه شده در کتابخانه استاندارد C++ و در دسترس بودن بررسی نوع پیشرفته تر در C++. رابط GTK برای استفاده از gtkmm، یک پوشش GTK برای زبان C++ منتقل شد.

با توجه به پیشرفت ها، تاکید می شود که، پشتیبانی از استفاده از تورنت در قالب بیت تورنت v2 اضافه شده است و تورنت های ترکیبی (در حال حاضر فقط تورنت خارج از جعبه، امکان ایجاد تورنت بر اساس BitTorrent 2 در یکی از نسخه های بعدی ظاهر خواهد شد). در BitTorrent نسخه 2، استفاده از الگوریتم SHA-1 به نفع SHA2-256 جایگزین شده است، که هم برای کنترل یکپارچگی بلوک های داده و هم برای ورودی ها در فهرست ها (اطلاعات لغت نامه) استفاده می شود، که سازگاری با DHT و ردیاب ها

رابط وب با استفاده از روش‌های مدرن‌تر توسعه جاوا اسکریپت بازنویسی شده است و برای استفاده در دستگاه های تلفن همراه سازگار شده است. کد از استفاده از کتابخانه jQuery ذخیره می شود، به علاوه رابط وب فشرده اکنون تنها 68 کیلوبایت است.

El عملکرد به طور قابل توجهی بهبود یافته است- آزمایش راه اندازی دیمون انتقال با 25 هزار تورنت، کاهش 50 درصدی بار پردازنده و 70 درصد کاهش مصرف حافظه را در مقایسه با Transmission 3.00 نشان داد.

تعامل فرآیند پس‌زمینه با رابط‌های رابط کاربری گرافیکی (transmission-qt و Transmission-web) به RPC در حال اجرا در حالت جدول تغییر کرد، و اندازه داده‌های ارسال شده را کاهش داد و پهنای باند مورد نیاز را کاهش داد. برای فشرده سازی داده های ارسال شده از طریق RPC، به جای zlib از کتابخانه libdeflate بهینه تر استفاده می شود.

از دیگر تغییرات برجسته:

  • کاربر این فرصت را دارد که ردیاب های پیش فرضی را تنظیم کند که می تواند برای تبلیغ تمام تورنت های عمومی استفاده شود.
  • بذرهای تازه اضافه شده بلافاصله آزاد می شوند و عملیات اعتبارسنجی در صورت نیاز (بدون انجام بررسی کامل قبل از پرتاب) انجام می شود.
  • گزینه ای برای حذف اطلاعات تورنت جدید که می تواند برای شناسایی غیرمستقیم یک کاربر مورد استفاده قرار گیرد (به عنوان مثال، تاریخ ایجاد و User-Agent) اضافه شده است.
  • اضافه شدن پشتیبانی لیست سیاه برای IPv6.
  • سیستم تست واحد برای استفاده از Google Test منتقل شده است.
  • از انتشار مجموعه های مبتنی بر Clang در سیستم یکپارچه سازی مداوم اطمینان حاصل کرد.
  • کتابخانه پایه آزمایش فاز بود.
  • فرآیند بررسی کد جدید در Sonarcloud، Coverity، LGTM و آنالایزرهای استاتیک clang-tidy پیاده سازی شده است.

سرانجام اگر شما علاقه مند به دانستن بیشتر در مورد آن هستید، می توانید جزئیات را بررسی کنید در لینک زیر.

چگونه می توان انتقال را بر روی لینوکس نصب کرد؟

به کسانی که از کاربران دبیان ، اوبونتو ، لینوکس مینت یا هر توزیع مشتق شده از این برنامه ها هستند ، برنامه را با استفاده از این موارد نصب کنید:

sudo add-apt-repository ppa:transmissionbt/ppa -y sudo apt install transmission

اگر آنها هستند کاربران Fedora یا توزیع های مبتنی بر آن, آنها می توانند برنامه را با موارد زیر نصب کنند دستور:

انتقال نصب sudo yum

در حالی که برای کسانی که کاربران لینوکس Mandriva باید با این دستور نصب کنند:

انتقال sudo urpmi

برای مورد کسانی که هستند کاربران openSUSE ، باید موارد زیر را در ترمینال تایپ کنند:

انتقال نصب sudo zypper

سرانجام ، در مورد کسانی که کاربران آن هستند Linux و توزیع های حاصل از آن را می توانید با استفاده از این دستور نصب کنید:

انتقال sudo pacman -S

به همان شیوه شما می توانید انتقال را بر روی سیستم از کد منبع آن کامپایل کنید ، فقط باید مراحل زیر را دنبال کنید.

کد منبع آنها در GitHub میزبانی می شود بنابراین باید از پشتیبانی git برخوردار باشند تا بتوانند مخزن را شبیه سازی کنند.

ما قصد داریم یک ترمینال را باز کنیم و موارد زیر را در آن تایپ کنیم.

ابتدا می خواهیم کد منبع را با استفاده از:

git clone https://github.com/transmission/transmission Transmission

ما وارد دایرکتوری می شویم:

انتقال سی دی

و شروع به جمع آوری با دستورات زیر می کنیم که باید یکی یکی تایپ کنیم:

به روز رسانی زیر ماژول git --init mkdir ساخت سی دی ساخت cmake .. make sudo make install

محتوای مقاله به اصول ما پیوست اخلاق تحریریه. برای گزارش یک خطا کلیک کنید اینجا.

اولین کسی باشید که نظر

نظر خود را بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخشهای موردنیاز علامتگذاری شدهاند با *

*

*

  1. مسئول داده ها: میگل آنخل گاتون
  2. هدف از داده ها: کنترل هرزنامه ، مدیریت نظرات.
  3. مشروعیت: رضایت شما
  4. ارتباط داده ها: داده ها به اشخاص ثالث منتقل نمی شوند مگر با تعهد قانونی.
  5. ذخیره سازی داده ها: پایگاه داده به میزبانی شبکه های Occentus (EU)
  6. حقوق: در هر زمان می توانید اطلاعات خود را محدود ، بازیابی و حذف کنید.