انتقل إلى المحتوى الرئيسي

دليل عمليات OmniPGW

OmniPGW - بوابة بيانات الحزمة من طبقة التحكم (PGW-C)

بواسطة خدمات شبكة Omnitouch


جدول المحتويات

  1. نظرة عامة
  2. العمارة
  3. واجهات الشبكة
  4. المفاهيم الأساسية
  5. البدء
  6. التكوين
  7. واجهة الويب - لوحة عمليات الوقت الحقيقي
  8. المراقبة والقياسات
  9. التوثيق التفصيلي
  10. موارد إضافية

نظرة عامة

OmniPGW هي تنفيذ عالي الأداء لبوابة بيانات الحزمة من طبقة التحكم (PGW-C) لشبكات 3GPP LTE Evolved Packet Core (EPC)، تم تطويرها بواسطة خدمات شبكة Omnitouch. تدير وظائف طبقة التحكم لجلسات البيانات، بما في ذلك:

  • إدارة الجلسات - إنشاء وتعديل وإنهاء جلسات بيانات UE (جهاز المستخدم)
  • تخصيص عنوان IP - تخصيص عناوين IP للأجهزة المحمولة من مجموعات مكونة
  • التحكم في السياسات والفوترة - التفاعل مع PCRF لتطبيق السياسات والفوترة
  • تنسيق خطة المستخدم - التحكم في PGW-U (خطة المستخدم) لتوجيه الحزم

ما الذي تفعله PGW-C

  • تقبل طلبات الجلسة من SGW-C عبر واجهة S5/S8 (GTP-C)
  • تخصص عناوين IP لـ UE من مجموعات الشبكة المكونة
  • تطلب قرارات السياسة من PCRF عبر واجهة Gx (Diameter)
  • برمجة قواعد التوجيه في PGW-U عبر واجهة Sxb (PFCP)
  • تدير تطبيق QoS من خلال سياقات الحاملات وقواعد QoS
  • تتبع معلومات الفوترة لأنظمة الفوترة

العمارة

نظرة عامة على المكونات

بنية العملية

PGW-C مبنية على Elixir/OTP وتستخدم بنية عملية تحت إشراف:

  • مشرف التطبيق - مشرف من المستوى الأعلى يدير جميع المكونات
  • وسطاء البروتوكول - يتعاملون مع الرسائل البروتوكول الواردة/الصادرة
  • عمليات الجلسة - واحد GenServer لكل اتصال PDN نشط
  • السجلات - تتبع الموارد المخصصة (عناوين IP، TEIDs، SEIDs، إلخ)
  • مدير عقدة PFCP - يحافظ على ارتباطات PFCP مع أقران PGW-U

كل مكون تحت إشراف وسيتم إعادة تشغيله تلقائيًا عند الفشل، مما يضمن موثوقية النظام.


واجهات الشبكة

PGW-C تنفذ ثلاث واجهات رئيسية من 3GPP:

واجهة S5/S8 (GTP-C v2)

الغرض: إشارات طبقة التحكم بين SGW-C و PGW-C

البروتوكول: GTP-C الإصدار 2 عبر UDP

الرسائل الرئيسية:

  • طلب/استجابة إنشاء الجلسة
  • طلب/استجابة حذف الجلسة
  • طلب/استجابة إنشاء الحامل
  • طلب/استجابة حذف الحامل

التكوين: انظر تكوين S5/S8

واجهة Sxb (PFCP)

الغرض: ��شارات طبقة التحكم بين PGW-C و PGW-U

البروتوكول: PFCP (بروتوكول التحكم في توجيه الحزم) عبر UDP

الرسائل الرئيسية:

  • طلب/استجابة إعداد الارتباط
  • طلب/استجابة إنشاء الجلسة
  • طلب/استجابة تعديل الجلسة
  • طلب/استجابة حذف الجلسة
  • طلب/استجابة نبض القلب

التكوين: انظر توثيق واجهة PFCP/Sxb

واجهة Gx (Diameter)

الغرض: واجهة وظيفة قواعد السياسة والفوترة (PCRF)

البروتوكول: Diameter (IETF RFC 6733)

الرسائل الرئيسية:

  • طلب/استجابة التحكم في الائتمان الأولية (CCR-I/CCA-I)
  • طلب/استجابة إنهاء التحكم في الائتمان (CCR-T/CCA-T)

التكوين: انظر توثيق واجهة Diameter Gx


المفاهيم الأساسية

جلسة PDN

تمثل جلسة PDN (شبكة بيانات الحزمة) اتصال بيانات UE بشبكة خارجية (مثل الإنترنت). تحتوي كل جلسة على:

  • عنوان IP لـ UE - مخصص من مجموعة الشبكة المكونة
  • APN (اسم نقطة الوصول) - يحدد الشبكة الخارجية
  • سياق الحامل - يحتوي على معلمات QoS ومعلومات النفق
  • ID الفوترة - معرف فريد للفوترة
  • TEID (معرف نقطة نهاية النفق) - معرف نفق واجه�� S5/S8
  • SEID (معرف نقطة نهاية الجلسة) - معرف جلسة واجهة Sxb

سياق الحامل

يمثل الحامل تدفق بيانات بخصائص QoS محددة:

  • الحامل الافتراضي - يتم إنشاؤه مع كل جلسة PDN
  • الحاملات المخصصة - حاملات إضافية لاحتياجات QoS محددة
  • EBI (معرف حامل EPS) - معرف فريد لكل حامل
  • معلمات QoS - QCI، ARP، معدلات البيانات (MBR، GBR)

قواعد PFCP

تقوم PGW-C ببرمجة PGW-U بقواعد معالجة الحزم:

  • PDR (قاعدة اكتشاف الحزمة) - تطابق الحزم (الرفع/الخفض)
  • FAR (قاعدة إجراء التوجيه) - تحدد سلوك التوجيه
  • QER (قاعدة تطبيق QoS) - تفرض حدود معدل البيانات
  • BAR (قاعدة إجراء التخزين المؤقت) - تتحكم في تخزين الحزم

انظر توثيق واجهة PFCP للحصول على التفاصيل.

تخصيص عنوان IP

تخصص عناوين IP لـ UE من مجموعات الشبكة المكونة:

  • اختيار قائم على APN - يمكن أن تستخدم APNs المختلفة شبكات فرعية مختلفة
  • ��خصيص ديناميكي - اختيار IP عشوائي من النطاق المتاح
  • تخصيص ثابت - دعم لعناوين IP المطلوبة من قبل UE
  • الكشف عن التصادم - يضمن تخصيص IP فريد

انظر تخصيص مجموعة IP لـ UE للتكوين.


البدء

المتطلبات المسبقة

  • Elixir ~1.16
  • Erlang/OTP 26+
  • الاتصال بالشبكة إلى SGW-C و PGW-U و PCRF
  • فهم بنية LTE EPC

بدء OmniPGW

  1. قم بتكوين إعدادات وقت التشغيل في config/runtime.exs
  2. قم بتجميع التطبيق:
    mix deps.get
    mix compile
  3. ابدأ التطبيق:
    mix run --no-halt

التحقق من التشغيل

تحقق من السجلات لبدء التشغيل الناجح:

[info] Starting OmniPGW...
[info] Starting Metrics Exporter on 127.0.0.42:42069
[info] Starting S5/S8 Broker on 127.0.0.10
[info] Starting Sxb Broker on 127.0.0.20
[info] Starting Gx Broker
[info] Starting PFCP Node Manager
[info] OmniPGW successfully started

الوصول إلى القياسات على http://127.0.0.42:42069/metrics (العنوان المكون).


التكوين

يتم تعريف ج��يع تكوينات وقت التشغيل في config/runtime.exs. يتم هيكلة التكوين في عدة أقسام:

نظرة عامة على التكوين

مرجع تكوين سريع

القسمالغرضالوثائق
metricsمصدّر قياسات Prometheusدليل المراقبة
diameterواجهة Gx إلى PCRFتكوين Diameter Gx
s5s8واجهة GTP-C إلى SGW-Cتكوين S5/S8
sxbواجهة PFCP إلى PGW-Uتكوين PFCP
ueمجموعات عناوين IP لـ UEتكوين مجموعة IP
pcoخيارات تكوين البروتوكولتكوين PCO
CDRالفوترة والتقارير عن الاستخدام غير المتصلتنسيق CDR

انظر دليل التكوين الكامل للحصول على معلومات مفصلة.


واجهة الويب - لوحة عمليات الوقت الحقيقي

يتضمن OmniPGW واجهة ويب مدمجة للمراقبة والعمليات في الوقت الحقيقي، مما يوفر رؤية فورية لحالة النظام دون الحاجة إلى أدوات سطر الأوامر أو استعلامات القياسات.

الوصول إلى واجهة الويب

http://<omnipgw-ip>:<web-port>/

الصفحات المتاحة:

الصفحةURLالغرضمعدل التحديث
بحث UE/ue_searchالغوص العميق في جلسات المشتركين المحددينعند الطلب
جلسات PGW/pgw_sessionsعرض جميع جلسات PDN النشطة2 ثانية
تاريخ الجلسة/session_historyسجل تدقيق لأحداث الجلسة5 ثواني
الطوبولوجيا الشبكية/topologyعرض الطوبولوجيا الشبكية المرئية5 ثواني
مجموعات IP/ip_poolsاستخدام مجموعة عناوين IP لـ UE2 ثانية
جلسات PFCP/pfcp_sessionsعرض جلسات PFCP مع PGW-U2 ثانية
حالة UPF/upf_statusمراقبة ارتباطات نظير PFCP2 ثانية
اختيار UPF/upf_selectionعرض قواعد اختيار UPF وحالة P-CSCFثابت
أقران Diameter/diameterمراقبة الاتصال بـ PCRF1 ثانية
مراقب P-CSCF/pcscf_monitorحالة اكتشاف DNS لـ P-CSCF5 ثواني
محاكي Gy/gy_simulatorاختبا�� الفوترة عبر الإنترنت Gy/Roعند الطلب
أبراج الخلايا/cell_towersتصفح قاعدة بيانات OpenCellIDثابت
السجلات/logsبث السجلات في الوقت الحقيقيمباشر

الميزات الرئيسية

التحديثات في الوقت الحقيقي:

  • جميع الصفحات تتجدد تلقائيًا (لا حاجة لإعادة التحميل يدويًا)
  • تدفق البيانات المباشرة من عمليات OmniPGW
  • مؤشرات الحالة الملونة (أخضر/أحمر)

البحث والتصفية:

  • البحث عن الجلسات بواسطة IMSI أو IP أو MSISDN أو APN
  • تصفية فورية دون إعادة تحميل الصفحة

تفاصيل قابلة للتوسيع:

  • انقر على أي صف لرؤية التفاصيل الكاملة
  • فحص حالة الجلسة بالكامل
  • عرض تكوين الأقران والقدرات

لا حاجة للمصادقة (استخدام داخلي):

  • وصول مباشر من شبكة الإدارة
  • مصممة للاستخدام من قبل فريق NOC/العمليات
  • ربط فقط بعنوان الإدارة للأمان

سير العمل التشغيلي

استكشاف أخطاء الجلسة (الغوص العميق):

1. المستخدم يبلغ عن مشكلة في الاتصال
2. افتح صفحة بحث UE (/ue_search)
3. ابحث بواسطة IMSI أو MSISDN أو عنوان IP
4. راجع تفاصيل الجلسة الشاملة:
a) الجلسات النشطة - تحقق من وجود الجلسة مع المعلمات الصحيحة
b) الموقع الحالي - تحقق من TAC و Cell ID والموقع الجغرافي
c) معلومات الحامل - تحقق من الحاملات الافتراضية والمخصصة
- QCI، MBR/GBR، أسماء قواعد الفوترة
- حدود APN-AMBR
d) معلومات الفوترة - معرف جلسة Gy، حالة الحصة
e) معلومات السياسة - جلسة Gx، قواعد PCC المثبتة
f) الأحداث الأخيرة - تاريخ الجلسة وتغييرات الحالة
5. إذا لم يتم العثور على الجلسة → تحقق من صفحة Diameter للاتصال بـ PCRF
6. إذا كانت هناك مشاكل في الموقع → تحقق من بيانات برج الخلية في قسم الموقع الحالي

بحث سريع عن الجلسة:

1. المستخدم يبلغ عن مشكلة
2. افتح صفحة جلسات PGW (/pgw_sessions)
3. ابحث بواسطة IMSI ��و رقم الهاتف
4. تحقق من وجود الجلسة مع التفاصيل الأساسية:
- عنوان IP المخصص لـ UE
- معلمات QoS
- نقاط نهاية النفق المنشأة
5. للتحليل التفصيلي → انقر على الجلسة للتوسيع أو استخدم بحث UE

التحقق من صحة النظام:

1. افتح صفحة حالة UPF → تحقق من أن جميع أقران PGW-U "مرتبطون"
2. افتح صفحة Diameter → تحقق من أن جميع أقران PCRF "متصلون"
3. افتح جلسات PGW → تحقق من عدد الجلسات النشطة مقابل السعة

مراقبة السعة:

  • نظرة على عدد جلسات PGW
  • قارن بالسعة المرخصة/المتوقعة
  • تحديد أوقات الاستخدام القصوى
  • مراقبة التوزيع عبر APNs

واجهة الويب مقابل القياسات

استخدم واجهة الويب لـ:

  • استكشاف مشكلات المشتركين بشكل عميق (بحث UE)
  • تفاصيل الجلسة الفردية وفحص الحالة
  • حالة الأقران في الوقت الحقيقي (PFCP، Diameter)
  • فحوصات صحة سريعة عبر جميع الواجهات
  • استكشاف مشكلات محددة للمستخدمين بواسطة IMSI/MSISDN/IP
  • التحقق من الموقع الجغرافي (تكامل برج الخلية)
  • تحليل QoS للحاملات (MBR، GBR، QCI)
  • فحص قواعد السياسة والفوترة
  • تاريخ الجلسة وآثار التدقيق
  • مراقبة سعة مجموعة IP
  • التحقق من التكوين والقواعد

استخدم قياسات Prometheus لـ:

  • الاتجاهات التاريخية
  • التنبيهات والإشعارات
  • رسومات تخطيط السعة
  • تحليل الأداء
  • المراقبة على المدى الطويل

أفضل ممارسة: استخدم كلاهما معًا - واجهة الويب للعمليات الفورية، وPrometheus للاتجاهات والتنبيهات.


المراقبة والقياسات

بالإضافة إلى واجهة الويب، يكشف OmniPGW عن قياسات متوافقة مع Prometheus للمراقبة:

القياسات المتاحة

  • قياسات الجلسة

    • teid_registry_count - جلسات S5/S8 النشطة
    • seid_registry_count - جلسات PFCP النشطة
    • session_id_registry_count - جلسات Gx النشطة
    • address_registry_count - عناوين IP المخصصة لـ UE
    • charging_id_registry_count - معرفات الفو��رة النشطة
  • قياسات الرسائل

    • s5s8_inbound_messages_total - رسائل GTP-C المستلمة
    • sxb_inbound_messages_total - رسائل PFCP المستلمة
    • gx_inbound_messages_total - رسائل Diameter المستلمة
    • توزيعات مدة معالجة الرسائل
  • قياسات الأخطاء

    • s5s8_inbound_errors_total - أخطاء بروتوكول S5/S8
    • sxb_inbound_errors_total - أخطاء بروتوكول PFCP
    • gx_inbound_errors_total - أخطاء Diameter

الوصول إلى القياسات

تُعرض القياسات عبر HTTP عند نقطة النهاية المكونة:

curl http://127.0.0.42:42069/metrics

انظر دليل المراقبة والقياسات لإعداد لوحة المعلومات والتنبيهات.


التوثيق التفصيلي

تقدم هذه القسم نظرة شاملة على جميع وثائق OmniPGW. يتم تنظيم الوثائق حسب الموضوع وحالة الاستخدام.

هيكل الوثائق

توثيق OmniPGW
├── OPERATIONS.md (هذا الدليل)

└── docs/
├── التكوين والإعداد
│ ├── configuration.md مرجع كامل لـ runtime.exs
│ ├── ue-ip-allocation.md تكوين مجموعة IP
│ └── pco-configuration.md إعدادات DNS و P-CSCF و MTU

├── واجهات الشبكة
│ ├── pfcp-interface.md Sxb/PFCP (التواصل مع PGW-U)
│ ├── diameter-gx.md Gx (التواصل مع PCRF)
│ ├── diameter-gy.md Gy/Ro (التواصل مع OCS)
│ └── s5s8-interface.md S5/S8 (التواصل مع SGW-C)

└── العمليات
├── session-management.md دورة حياة جلسة PDN
└── monitoring.md قياسات Prometheus والتنبيهات

الوثائق حسب الموضوع

🚀 البدء

الوثيقةالوصفالغرض
OPERATIONS.mdدليل العمليات الرئيسي (هذا الدليل)نظرة عامة وبدء سريع

⚙️ التكوين

الوثيقةالوصفالأسطر
configuration.mdمرجع كامل لـ runtime.exs1,600+
ue-ip-allocation.mdإدارة مجموعة IP لـ UE وتخصيصها943
pco-configuration.mdخيارات تكوين البروتوكول (DNS و P-CSCF و MTU)344

🔌 واجهات الشبكة

الوثيقةالوصفالأسطر
pfcp-interface.mdواجهة PFCP/Sxb إلى PGW-U1,355
diameter-gx.mdواجهة Diameter Gx إلى PCRF (التحكم في السياسة)941
diameter-gy.mdواجهة Diameter Gy/Ro إلى OCS (الفوترة عبر الإنترنت)1,100+
s5s8-interface.mdواجهة GTP-C S5/S8 إلى SGW-C456

📊 العمليات والمراقبة

الوثيقةالوصفالأسطر
session-management.mdدورة حياة الجلسة PDN والعمليات435
monitoring.mdقياسات Prometheus، لوحات معلومات Grafana، التنبيهات807
data-cdr-format.mdتنسيق ملف CDR، تكوين URR، الفوترة غير المتصلة847
qos-bearers.mdإدارة QoS والحاملات، التحكم في السياسة448
troubleshooting.mdإجراءات استكشاف الأخطاء والمشكلات الشائعة687

🔧 الميزات المتقدمة

الوثيقةالوصفالأسطر
pcscf-monitoring.mdاكتشاف P-CSCF ومراقبة الصحة894

ميزات الوثائق

📈 مخططات Mermaid

تتضمن جميع الوثائق مخططات Mermaid لفهم بصري:

  • مخططات العمارة
  • مخططات التسلسل (تدفقات الرسائل)
  • آلات الحالة
  • الطوبولوجيا الشبكية

💡 أمثلة عملية

تتضمن كل وثيقة:

  • أمثلة تكوين من العالم الحقيقي
  • تكوينات جاهزة للنسخ واللصق
  • حالات استخدام شائعة

🔍 استكشاف الأخطاء

تتضمن كل وثيقة واجهة:

  • مشكلات شائعة وحلول
  • أوامر تصحيح
  • قياسات للتشخيص

🔗 الروابط المتقاطعة

تم ربط الوثائق بشكل مكثف لتسهيل التنقل.

مسارات القراءة

لمشغلي الشبكة

  1. OPERATIONS.md - نظرة عامة (هذا الدليل)
  2. configuration.md - الإعداد
  3. monitoring.md - المراقبة
  4. session-management.md - العمليات اليومية

لمهندسي الشبكة

  1. OPERATIONS.md - نظرة عامة على العمارة (هذا الدليل)
  2. pfcp-interface.md - التحكم في خطة المستخدم
  3. diameter-gx.md - التحكم في السياسة
  4. diameter-gy.md - الفوترة عبر الإنترنت
  5. s5s8-interface.md - إدارة الجلسة
  6. ue-ip-allocation.md - إدارة IP

للتكوين والنشر

  1. configuration.md - مرجع كامل
  2. ue-ip-allocation.md - مجموعات IP
  3. pco-configuration.md - معلمات الشبكة
  4. monitoring.md - إعداد المراقبة

إحصائيات الوثائق

  • إجمالي الوثائق: 14
  • إجمالي الأسطر: ~10,900+
  • إجمالي الحجم: ~265 كيلوبايت
  • مخططات Mermaid: 75+
  • أمثلة التعليمات البرمجية: 150+

المفاهيم الأساسية المغطاة

العمارة

  • ✅ فصل طبقة التحكم/المستخدم
  • ✅ بنية OTP/Elixir
  • ✅ إشراف العمليات
  • ✅ جلسات قائمة على GenServer

البروتوكولات

  • ✅ PFCP (بروتوكول التحكم في توجيه الحزم)
  • ✅ GTP-C v2 (بروتوكول نفق GPRS)
  • ✅ Diameter (RFC 6733)

واجهات 3GPP

  • ✅ Sxb (PGW-C ↔ PGW-U)
  • ✅ Gx (PGW-C ↔ PCRF)
  • ✅ Gy/Ro (PGW-C ↔ OCS)
  • ✅ S5/S8 (SGW-C ↔ PGW-C)

العمليات

  • ✅ إدارة الجلسات
  • ✅ استراتيجيات تخصيص IP
  • ✅ تطبيق QoS
  • ✅ تكامل الفوترة
  • ✅ المراقبة والتنبيهات

موارد إضافية

مواصفات 3GPP

المواصفةالعنوان
TS 29.274GTP-C v2 (واجهة S5/S8)
TS 29.244PFCP (واجهة Sxb)
TS 29.212واجهة Diameter Gx (التحكم في السياسة)
TS 32.299تطبيقات الفوترة Diameter (Gy/Ro)
TS 32.251فوترة المجال المعبأ
TS 23.401بنية EPC

الوثائق ذات الصلة