عندما تستقبل UPF حزمة في مستوى المستخدم، فإنها لا تقرر فورًا إلى أين يجب توجيهها. يجب أولًا تحديد جلسة PFCP التي تنتمي إليها الحزمة وقاعدة المعالجة التي ينبغي تطبيقها. ضمن إطار قواعد PFCP على واجهة N4، تتولى PDR (Packet Detection Rule، قاعدة اكتشاف الحزم) هذه المرحلة الأولى من معالجة الحزمة. تحدد PDR للـUPF الحزم التي تنتمي إلى فئة مرور معينة. وبعد تطابق الحزمة، يمكن للـUPF تطبيق قواعد FAR وQER وURR والقواعد الأخرى المرتبطة بها لتنفيذ التوجيه وفرض QoS وإعداد تقارير الاستخدام.
أسهل طريقة لفهم PDR هي فصل ثلاث مسؤوليات مختلفة: PDR تحدد نوع المرور، وPDI تحدد شروط المطابقة، بينما تحدد FAR/QER/URR ما الذي يحدث بعد تحقق المطابقة. فصل هذه الأدوار يجعل تتبع معالجة الحزم في PFCP أسهل بكثير من محاولة حفظ كل IE على حدة.
ما المشكلة التي تحلها PDR على واجهة N4؟
N4 هي واجهة التحكم بين SMF وUPF في نواة 5G. تستخدم SMF جلسات PFCP لتثبيت قواعد معالجة مستوى المستخدم داخل UPF، وتكون PDR هي نوع القاعدة المسؤول عن اكتشاف الحزم وتصنيفها. عادةً ما تُنشأ PDR أثناء PFCP Session Establishment، ويمكن لاحقًا إضافتها أو حذفها أو تحديثها عبر PFCP Session Modification. وبعبارة أخرى، تتحكم قواعد تُزوّد بها SMF في تصنيف الحزم وفقًا لـPDU Session الحالية وتدفق المرور ومتطلبات التوجيه.
يمكن أن تحتوي جلسة PFCP واحدة على عدة PDRs. فعلى سبيل المثال، تحتاج PDU Session نفسها عادةً إلى قواعد منفصلة لحركة uplink وdownlink. وقد يلزم إنشاء PDRs إضافية عندما تحتوي الجلسة على عدة Service Data Flows أو QoS Flows مختلفة أو تصنيفات مرور أكثر دقة. لذلك يمكن النظر إلى PDR باعتبارها قاعدة اختيار المرور في UPF: فهي تحدد نوع الحزمة التي وصلت قبل أن تقرر القواعد الأخرى كيفية معالجتها.

كيف تعثر UPF على PDR المطابقة؟
تتبع معالجة الحزم داخل UPF تسلسلًا محددًا. بعد دخول الحزمة إلى UPF، تحدد الوظيفة أولًا جلسة PFCP المقابلة ثم تقيّم PDRs المرتبطة بتلك الجلسة. وإذا كان من الممكن أن تتطابق أكثر من PDR، تستخدم UPF قيمة Precedence لتحديد الأولوية النسبية بينها. تشير قيمة Precedence الأقل إلى أولوية أعلى، لذلك يتم تقييم القواعد الأعلى أولوية قبل القواعد الأقل أولوية عند البحث عن تطابق.
عند تطابق PDR، لا تنفذ PDR نفسها كل عمليات معالجة الحزمة اللاحقة. وبدلًا من ذلك يمكنها الإشارة إلى قواعد PFCP أخرى:
FAR (Forwarding Action Rule، قاعدة إجراء التوجيه): تحدد كيفية التعامل مع الحزمة وتوجيهها، بما في ذلك ما إذا كان ينبغي تمريرها أو إسقاطها أو تخزينها مؤقتًا أو إرسالها نحو واجهة وجهة محددة.
QER (QoS Enforcement Rule، قاعدة فرض جودة الخدمة): تطبق ضوابط مرتبطة بـQoS مثل gating وتحديد المعدل وأنواع أخرى من معالجة المرور.
URR (Usage Reporting Rule، قاعدة تقارير الاستخدام): تقيس استخدام المرور وتوفر معلومات تقارير يمكن استخدامها للفوترة أو المراقبة أو الأغراض المرتبطة بالسياسات.
يمكن إذن تبسيط مسار المعالجة العام في UPF على النحو التالي:
تحديد جلسة PFCP → تقييم PDRs وفق Precedence → تصنيف الحزمة → تطبيق FAR/QER/URR. الترتيب مهم. تجيب FAR عن سؤال كيفية التعامل مع الحزمة، لكن UPF تحتاج أولًا إلى PDR لتحديد الحزمة أو تدفق المرور الذي ينطبق عليه الإجراء.
ما أهم المعلمات في PDR؟
تحتوي Create PDR على عدد من Information Elements، لكن يكفي فهم مجموعة أصغر منها أولًا عند دراسة سلوك اكتشاف الحزم. تحدد هذه المعلمات كيفية تعريف القاعدة، وكيفية مطابقة الحزم، وقواعد المعالجة اللاحقة المرتبطة بنتيجة المطابقة.
| المعلمة | الوظيفة الرئيسية |
|---|---|
| PDR ID | يعرّف PDR بشكل فريد داخل جلسة PFCP ويميزها عن قواعد اكتشاف الحزم الأخرى |
| Precedence | يحدد الأولوية النسبية لـPDR عند تقييم عدة قواعد؛ القيم الأقل تعني أولوية أعلى |
| PDI | تحتوي على معايير اكتشاف الحزم التي تستخدمها UPF لتحديد ما إذا كان المرور الوارد يطابق PDR |
| Outer Header Removal | يحدد ما إذا كان على UPF إزالة ترويسة بروتوكول خارجية، مثل ترويسة GTP-U/UDP/IP في حركة uplink |
| FAR ID | يشير إلى FAR التي تحدد إجراء التوجيه للحزم المطابقة |
| URR ID | يشير إلى URR المستخدمة لقياس المرور وإعداد تقارير الاستخدام |
| QER ID | يشير إلى QER التي تطبق معالجة مرتبطة بـQoS على المرور المطابق |
| Activate Predefined Rules | يفعّل قاعدة أو أكثر من القواعد المعرّفة مسبقًا والمتاحة بالفعل في UPF |
| Activate Time / Deactivate Time | يحدد وقت بدء سريان PDR ووقت توقفها عن السريان |
من بين هذه المعلمات، العنصر الذي يحدد فعليًا الحزم التي يمكنها مطابقة PDR هو PDI (Packet Detection Information). تشير FAR ID وQER ID إلى إجراءات تحدث بعد تصنيف المرور، بينما تحتوي PDI على المعلومات المستخدمة لإجراء التصنيف نفسه.
كيف تحدد PDI شروط مطابقة الحزم؟
يمكن فهم PDI على أنها مجموعة شروط اكتشاف الحزم داخل PDR. وهي ليست حقلًا واحدًا، بل تحتوي على عدة معلمات يمكن دمجها لتحديد المرور استنادًا إلى موضع دخول الحزمة إلى UPF ومعلومات النفق وعنوان UE وخصائص تدفق الخدمة ومعلومات QoS. وتشمل معلمات PDI الشائعة ما يلي:
Source Interface: تحدد الجانب المنطقي الذي تصل منه الحزمة، مثل Access لحركة المرور القادمة من جانب الوصول أو Core لحركة المرور القادمة من جانب النواة أو شبكة البيانات.
Local F-TEID: يمكن استخدامه لمطابقة TEID ومعلومات العنونة المرتبطة بنفق GTP-U، ولذلك فهو مهم خصوصًا عند اكتشاف حركة نفق uplink.
Network Instance: يحدد شبكة منطقية مهيأة في UPF، مثل مثيل شبكة مرتبط بالإنترنت أو IMS.
UE IP Address: يطابق المرور وفق عنوان IP المصدر أو الوجهة الخاص بـUE، بحسب اتجاه الحزمة.
Traffic Endpoint ID: يحدد نقطة نهاية مرور يمكن استخدامها في سيناريوهات تحسين PDI المدعومة.
SDF Filter: يوفر تصفية أكثر دقة استنادًا إلى معلمات مثل عناوين المصدر والوجهة والبروتوكول والمنافذ واتجاه المرور.
Application ID: يمكن استخدامه لتحديد المرور على مستوى التطبيق عندما تتوفر في UPF قدرة اكتشاف التطبيقات المطلوبة.
QFI (QoS Flow Identifier): يحدد QoS Flow المرتبط بالحزمة.
Source Interface Type: يوفر معلومات إضافية حول واجهة 3GPP المرتبطة بالمصدر، مثل N3 أو N6 أو N9.
عند وجود عدة معلمات مطابقة داخل PDI، فإنها تحدد مجتمعةً شرط اكتشاف الحزمة. يجب أن تستوفي الحزمة الواردة المعايير المناسبة قبل اعتبار PDR متطابقة. يتيح ذلك لـSMF إنشاء قواعد تتراوح من تصنيف واسع على مستوى الجلسة إلى اكتشاف أكثر دقة بكثير لتدفقات الخدمة.

إلى أي درجة يمكن أن تصبح عملية اكتشاف المرور دقيقة باستخدام SDF Filter؟
قد تكون Source Interface وF-TEID وUE IP Address كافية لتحديد جلسة أو فئة مرور عامة، لكنها لا تميز دائمًا Service Data Flows الفردية. يوفر SDF Filter تصنيفًا أكثر دقة. ويمكن أن تتضمن Flow Description عنوان IP المصدر وعنوان IP الوجهة ورقم البروتوكول ومنفذ المصدر ومنفذ الوجهة واتجاه المرور. تسمح هذه الحقول لـUPF بتمييز تدفقات IP محددة بدلًا من معالجة جميع الحزم المرتبطة بـUE بالطريقة نفسها.
يمكن أن يحمل SDF Filter أيضًا معلومات مطابقة إضافية:
TOS / Traffic Class: يطابق حقل Type of Service في IPv4 أو Traffic Class في IPv6.
Security Parameter Index (SPI): يمكن استخدامه عند مطابقة المرور المرتبط بـIPsec Security Association.
Flow Label: يطابق Flow Label الموجود في ترويسة IPv6.
SDF Filter ID: يحدد SDF Filter المرتبط لأغراض الإدارة والمرجعية.
ينشئ ذلك نموذج تصنيف متعدد الطبقات. يمكن لمعلمات PDI مثل الواجهة والنفق وعنوان UE أن تضيق نطاق المرور أولًا إلى سياق محدد، بينما يستطيع SDF Filter تحديد تدفقات IP الفردية داخل ذلك السياق. وعندما يكون اكتشاف التطبيقات مدعومًا أيضًا، يمكن لـUPF تطبيق آلية تصنيف إضافية على مستوى التطبيق بدلًا من الاعتماد فقط على العناوين والمنافذ.
ما الفرق بين PDRs الخاصة بالـuplink والـdownlink؟
تعد مقارنة حركة uplink وdownlink من أوضح الطرق لفهم كيفية عمل PDRs. يستخدم الاتجاهان البنية العامة نفسها للقاعدة، لكن الحزم تدخل UPF من واجهات مختلفة، ولذلك تحتاج إلى معايير اكتشاف مختلفة.
في حركة uplink المعتادة، تصل الحزم إلى UPF من جانب الوصول الراديوي. لذلك يمكن لـPDI استخدام Source Interface = Access. ويمكن للقاعدة أيضًا استخدام Local F-TEID لتحديد نفق GTP-U و UE IP Address لتحديد حركة UE. لذلك قد تتطلب PDR نموذجية للـuplink ما يلي:
أن تكون Source Interface هي Access؛
أن تطابق حزمة GTP-U الواردة قيمة F-TEID المحددة، بما في ذلك TEID ومعلومات العنوان ذات الصلة؛
أن يطابق عنوان IP الخاص بـUE العنوان المرتبط بالجلسة.
عند استيفاء الشروط تتحقق مطابقة PDR. ولأن المرور المستلم عبر N3 يكون عادةً مغلفًا داخل GTP-U، يمكن لـ Outer Header Removal أن توجه UPF لإزالة الترويسات الخارجية GTP-U/UDP/IP قبل معالجة الحزمة وفق FAR المرتبطة.
يبدأ اكتشاف downlink من الاتجاه المعاكس. تصل الحزم عادةً من شبكة بيانات باتجاه UPF، ولذلك يمكن لـPDI استخدام Source Interface = Core. وفي هذه الحالة يمكن استخدام معلمات مثل Network Instance و UE IP Address لتحديد PDU Session التي تنتمي إليها الحزمة. وقد تتطلب PDR نموذجية للـdownlink ما يلي:
أن تكون Source Interface هي Core؛
أن تطابق Network Instance الشبكة المنطقية المطلوبة، مثل “internet” أو “ims”؛
أن تطابق وجهة الحزمة عنوان IP الخاص بـUE والمرتبط بالجلسة.
بعد مطابقة PDR الخاصة بالـdownlink، تحدد FAR المرتبطة كيفية توجيه الحزمة نحو جانب الوصول، بما في ذلك سلوك التوجيه عبر النفق المطلوب. لذلك يعكس الفرق بين PDRs الخاصة بالـuplink والـdownlink اتجاه دخول الحزم إلى UPF والمعلومات المتاحة لتحديدها.

كيف تعمل PDR وFAR وQER وURR معًا؟
تحل PDR مشكلة تحديد هوية الحزمة، لكنها لا تمثل سياسة معالجة مستوى المستخدم بالكامل. يفصل PFCP بين اكتشاف الحزم والتوجيه وفرض QoS وقياس الاستخدام في أنواع مختلفة من القواعد. يسمح هذا الفصل لكل قاعدة بأداء وظيفة محددة مع استمرار عملها داخل جلسة PFCP نفسها.
PDR: ما نوع هذا المرور؟ (الاكتشاف والتصنيف)
FAR: ماذا يجب أن يحدث له وإلى أين يجب أن يذهب؟ (إجراء التوجيه)
QER: ما معالجة QoS التي ينبغي تطبيقها؟ (فرض QoS)
URR: كيف يجب قياس استخدامه والإبلاغ عنه؟ (تقارير الاستخدام)
لنفترض وجود حزمة uplink تطابق PDR. بعد أن تحدد UPF الـUE وتدفق الخدمة الذي تنتمي إليه الحزمة، يمكنها إزالة ترويسة GTP-U الخارجية المطلوبة، وتطبيق سلوك التوجيه المشار إليه بواسطة FAR، وفرض QER المناسبة، واحتساب المرور وفق URR المرتبطة. وهكذا توفر نتيجة اكتشاف الحزمة السياق اللازم لكل العمليات اللاحقة.
من منظور هندسي، لا ينبغي النظر إلى PDR باعتبارها سياسة توجيه مستقلة. فهي نقطة الدخول إلى مجموعة قواعد مستوى المستخدم في PFCP. عندما تتضح العلاقة بين PDR للتصنيف، وPDI لمعايير المطابقة، وFAR/QER/URR للمعالجة اللاحقة ، يصبح فهم معلمات مثل Source Interface وF-TEID وUE IP Address وSDF Filter أسهل بكثير في تحليل إشارات N4 والحزم الفعلية.
الأسئلة الشائعة
تُستخدم Precedence عندما تقيّم UPF قواعد PDR داخل جلسة PFCP. ولكن إذا كانت شروط PDI لقاعدتين متنافية تمامًا، فلا يمكن للـPDRين مطابقة الحزمة نفسها، وبالتالي لا يغيّر ترتيب الأولوية النسبي النتيجة النهائية. وتصبح Precedence مهمة بشكل خاص عندما تتداخل شروط القواعد ويكون من الممكن أن تطابق أكثر من PDR المرور نفسه.
إذا تغير عنوان UE المستخدم كشرط مطابقة في PDI، فيجب أن تعكس القاعدة المرتبطة بهذا العنوان معلومات الجلسة المحدثة أيضًا. ويمكن لـSMF تحديث معلومات PDR ذات الصلة من خلال PFCP Session Modification حتى تستمر UPF في تصنيف حركة UE بشكل صحيح.
نعم. لا تتطلب تصفية SDF استخدام كل الحقول الممكنة لتقييد المرور بمنفذ واحد محدد. وبحسب تعريف القاعدة، يمكن استخدام نطاقات المنافذ أو شروط مطابقة أقل تقييدًا لتغطية مجموعة أوسع من المرور. كما يمكن استخدام أقنعة العناوين عندما يتطلب تعريف المرشح مطابقة نطاق من العناوين.
إذا تعذر ربط الحزمة الواردة بـPDR مناسبة، فلن توجد لدى UPF قاعدة معالجة حزم مطابقة لهذا المرور ضمن السياق المعني. تعتمد المعالجة الناتجة على قواعد PFCP المعمول بها وتنفيذ UPF وتهيئة الجلسة. لذلك، عند استكشاف الأعطال، تعد حالة عدم تطابق PDR غير المتوقعة نقطة مهمة للتحقق عندما يصل المرور إلى UPF لكنه لا يُوجّه كما هو متوقع.
يدعم PFCP قواعد معرّفة مسبقًا تكون قد زُوّدت بالفعل داخل وظيفة UP ويمكن تفعيلها عند الحاجة. وبدلًا من تزويد كل معلمة في القاعدة بشكل متكرر للسيناريوهات المناسبة، يمكن لمستوى التحكم تفعيل القاعدة المعرّفة مسبقًا المقابلة. يمكن أن يقلل ذلك من حجم الإشارات المطلوبة عند إعادة استخدام مجموعات القواعد نفسها عبر جلسات مناسبة.