الخلاصة

  • يسمح RFC 9842 باعتبار استجابة HTTP قاموساً خارجياً لطلبات مستقبلية إذا تحققت شروط الأصل والنمط والوجهة والحداثة.
  • هاش القاموس وإعلان Available-Dictionary واختيار الترميز ومتغير التخزين المؤقت ونتيجة فك الضغط ومعنى الاستجابة ليست حدثاً واحداً.

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

يبدأ الخادم بحقل Use-As-Dictionary. فهو يعلن أن استجابة ما قد تستخدم قاموساً لطلبات تلتزم بقواعد محددة. قيمة match إلزامية ومقيدة بالأصل نفسه؛ ويمكن لقيمة match-dest تقييد وجهات Fetch، بينما يقدم id وtype معلومات إضافية محدودة. يجب على العميل معاملة id كسلسلة معتمة، ولا يحق للخادم الاعتماد عليها لضمان محتوى القاموس. الاسم ليس دليلاً على المحتوى ولا تفويضاً.

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

يرسل العميل، عندما يختار إتاحة هذه القدرة، هاش SHA-256 واحداً في Available-Dictionary، ويمكنه عرض dcb أو dcz ضمن Accept-Encoding. هذه إشارة قدرة وليست أمراً للخادم. ما زال للخادم أن يختار تمثيلاً عادياً أو ترميزاً آخر، أو dcb/dcz إذا دعم العرض واختار القاموس المعلن. الهاش في التنسيق يربط تدفق الضغط بالقاموس الصحيح لفك الضغط؛ ولا يثبت أن المعنى حديث أو أن الحق قائم أو أن أحداً فهم المحتوى.

لا يلغي التخزين المؤقت هذه الفوارق. فالاستجابة القابلة للتخزين والمؤلفة بقاموس يجب أن تتغير وفق Accept-Encoding وAvailable-Dictionary، كي لا يحصل عميل آخر على تمثيل بقاموس خاطئ. ذلك ضبط للتوافق، لا تدقيق لحالة عمل أو إذن أو سعر أو أثر. قد تكون نسخة التخزين صحيحة بروتوكولياً لكنها غير كافية لقرار يعتمد على حق تغير أو معلومة خارج HTTP.

تؤكد الضوابط الأمنية الحد نفسه. لا يستخدم النقل إلا في سياق آمن، ويظل التطابق داخل الأصل ذاته، وعلى العميل إسقاط الاستجابة إذا فشلت التخفيفات المطلوبة. ويحذر RFC من ضغط بيانات عامة وخاصة معاً لما قد يكشفه الحجم أو الزمن، ويعامل هاش القاموس كحالة قابلة للتتبع ينبغي تقسيمها ومسحها على نحو يشبه cookies. هذه الحماية لا تحول الهاش أو HTTPS إلى تفويض.

أما رابط compression-dictionary فلا يعدو دعوة محتملة لجلب مورد قد يفيد لاحقاً. العميل يختار إن كان سيجلبه؛ ثم يحتاج المورد إلى Use-As-Dictionary وبيانات تخزين مؤقت قبل أن يصبح صالحاً. لا يثبت الرابط الجلب أو المطابقة أو الاستخدام أو النتيجة.

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

المصادر