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

دليل عمليات OmniPGW

OmniPGW - وحدة التحكم في بوابة الحزمة (PGW-C)

بواسطة خدمات شبكة أومنيتاتش


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

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

نظرة عامة

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

  • إدارة الجلسات - إنشاء وتعديل وإنهاء جلسات بيانات 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، TEID، SEID، إلخ)
  • مدير عقدة 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
  • فهم لهندسة EPC LTE

بدء 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. يتم هيكلة التكوين في عدة أقسام:

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

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

القسمالغرضالوثائق
القياساتمصدّر قياسات 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/العمليات
  • ربط فقط بعنوان IP الإداري لأغراض الأمان

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

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

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 لـ UE943
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 KB
  • مخططات 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

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