تدفق Zstandard (.zst)

IETF قياسي

Zstandard ‏(Zstd) خوارزمية حديثة للضغط دون فقدان البيانات، طورتها Meta للعمل في الوقت الفعلي. وتحقق نسب ضغط تقارب Deflate.

تحويل ZSTD إلى GZIP

محول مجاني داخل المتصفح للتحويل من ZSTD إلى GZIP. قم بتحويل الملفات فوراً على جهازك.

فحص البيانات الوصفية

تتعرف أنظمة التشغيل ومحللات الملفات على ملفات Zstandard من خلال فحص تسلسل البايت الثنائي البادئ:

اختر الملفات أو أسقطها هنا

خاص - لا تغادر الملفات جهازك أبدًا

أو الصق Ctrl+V
ضمان الخصوصية وعدم الإرسال عبر الشبكة: صفر بايت يتم رفعه إلى خوادم خارجية. تمت كل عمليات المعالجة محلياً في صندوق الحماية (Sandbox) الخاص بمتصفحك.

توقيع رأس الملف على مستوى البايت (Magic Bytes)

تتعرف أنظمة التشغيل ومحللات الملفات على ملفات Zstandard من خلال فحص تسلسل البايت الثنائي البادئ:

التوقيع الست عشري (الإزاحة 0):

28 B5 2F FD

تمثيل ASCII: (µ/ý

التوحيد القياسي: IETF RFC 8878

المواصفات الفنية

هيكلية الحاويةترويسة إطار تتضمن البايتات المميزة 0xFD2FB528، ووصف الإطار، وكتل البيانات، ومجموع تحقق اختياريًا بطول 32 أو 64 بت
الضغطترميز إنتروبيا الحالات المحدودة (FSE) وترميز هوفمان وLZ77 بنوافذ بحث كبيرة (حتى 2 جيجابايت)
ترتيب البايتات (Endianness)ترتيب البايتات والبتات من الأقل أهمية إلى الأعلى أهمية
مساحات الألوانلا ينطبق (تدفق ضغط بيانات)
القنوات والبنيةضغط تدفق بايتات للأغراض العامة
الحد الأقصى للأبعادسعة تدفق غير محدودة
الشفافيةاستعادة البيانات دون فقدان، مطابقة للبتات الأصلية بنسبة 100%
البث والتحميل التدرجيتدفق عالي الإنتاجية، مصمم للاستفادة القصوى من أقراص NVMe متعددة الجيجابت واتصالات الشبكة

مصفوفة المقارنة التقنية: Zstandard مقابل المنافسين

السمة التقنيةZstandard (الحالي)GZBROTLILZ4
سرعة فك الضغطفائقة السرعة (1.5 - 3.0 جيجابايت/ثانية)متوسطة (نحو 300 ميجابايت/ثانية)سريعة (نحو 400 ميجابايت/ثانية)فائقة السرعة (نحو 4.0 جيجابايت/ثانية)
كفاءة الضغطأعلى من Gzip، ومماثلة لـ Bzip2المعيار الأساسيالأعلى عند ضغط نصوص الويبمنخفضة (تركّز على السرعة)
تدريب القواميسقواميس مدرَّبة خصيصًابلاقاموس ويب ثابت بحجم 120 كيلوبايتبلا
مدى انتشارها في أنظمة التشغيل الحديثةنواة لينكس، Arch، Fedora، Btrfsمتاح في بعض توزيعات Unix القديمةمتصفحات الويب وخوادم الحافة لشبكات توصيل المحتوى (CDN)نواة لينكس ومحركات الألعاب

أنماط التلف الشائعة ودليل الاسترداد بالنظام الست عشري

خطأ في إلغاء الضغط: 'ZSTD_error_checksum_wrong: Checksum verification failed'.

السبب الجذري: قد يؤدي تلف بايت في كتلة البيانات إلى فشل التحقق باستخدام xxHash ‏(32 أو 64 بت).

الاسترداد: استخدم --force لتجاوز التحقق من المجموع الاختباري، أو أصلح الملف باستخدام محوّل Zstd من File2File.app.

تحليل الأمان ومتجهات الهجوم على المحلّل

يجب أن تتحقق آلة حالات فك ترميز FSE بدقة من أوصاف الجداول، تفاديًا للانتقال إلى حالات غير صالحة.

ناقلات الهجوم المعروفة

  • قد تؤدي جداول عدّادات FSE المعيارية التالفة إلى البحث خارج حدود جدول الحالات.
  • تجاوز سعة الأعداد الصحيحة أثناء تخصيص ذاكرة نافذة كبيرة.
  • حجب الخدمة عبر استنفاد الذاكرة بسبب قاموس مخصص.

أفضل الممارسات الدفاعية: تحقّق من حدود حجم النافذة في رأس الإطار، وقيّد الحد الأقصى المسموح به لتخصيص الذاكرة للقواميس.

الأصول التاريخية والمحطات الرئيسية

2021أصدرت IETF المواصفة RFC 8878 لتنسيق Zstandard، واعتمدته توزيعات Linux رئيسية، منها Arch وFedora وUbuntu، لإدارة الحزم.
2018تضمّن نواة لينكس 4.14 ضغط Zstandard لأنظمة الملفات Btrfs وSquashFS.
2015يطلق يان كوليه Zstandard في فيسبوك، مقدمًا تقنية إنتروبيا الحالة المحدودة (FSE).

المزايا الرئيسية والإيجابيات

  • سرعة فائقة في فك الضغط: من 1.5 إلى 3.0 جيجابايت/ثانية لكل نواة، بما يواكب سرعة أقراص NVMe SSD عالية الأداء.
  • يوفر 22 مستوى ضغط، من الضغط السريع جدًا في الوقت الفعلي إلى الضغط المكثف للأرشفة.
  • يتيح تدريب قواميس مخصصة تحسين ضغط السجلات الصغيرة، مثل JSON وصفوف قواعد البيانات، بمقدار ثلاثة إلى خمسة أضعاف.

القيود الفنية والسلبيات

  • يستهلك ذاكرة أكثر قليلًا من Deflate القديم عند استخدام مستويات ضغط عالية ونوافذ كبيرة.
  • يتطلب أدوات حديثة؛ وقد تفتقر خوادم يونكس القديمة إلى أدوات zstd المثبتة مسبقًا.
  • تحتاج تدفقات .zst الخام إلى حاوية مثل TAR للحفاظ على بنية المجلدات.

معلومات تقنية طريفة

  • يستخدم Zstandard ترميز إنتروبيا الحالات المحدودة (tANS)، المبني على أنظمة الأعداد غير المتماثلة التي طورها جاريك دودا، لتحقيق حد إنتروبيا شانون بسرعة العتاد.
  • حوّلت Arch Linux وFedora مديري الحزم لديهما (pacman وdnf) إلى استخدام .tar.zst، مما سرّع تثبيت البرامج بنسبة تزيد عن 400%.
  • اختيرت البايتات المميزة 0x28 0xB5 0x2F 0xFD لسهولة التعرف إليها وتجنب تعارضها مع التنسيقات القديمة.

الأسئلة التقنية المتكررة

لماذا يحل Zstandard محل Gzip في أنظمة لينكس الحديثة؟

يضغط Zstandard الملفات إلى أحجام أصغر من Gzip، ويفك ضغطها بسرعة تفوقه من خمسة إلى عشرة أضعاف، ما يقلل كثيرًا زمن تثبيت البرامج واستهلاك المعالج على الخوادم.

ما المقصود بضغط القاموس في Zstd؟

يمكن تدريب Zstd على مجموعة ملفات صغيرة، مثل استجابات واجهة JSON، لإنشاء قاموس مخصص. وبالاستفادة من الأنماط المشتركة، قد تصبح الملفات اللاحقة أصغر حتى خمسة أضعاف بعد الضغط.

كيف أفك ضغط ملف .zst أو .zstd؟

يمكنك فك ضغط ملفات .zst و.tar.zst مباشرة في متصفحك باستخدام File2File.app، من دون تثبيت أدوات سطر الأوامر.