طول ما انت شغال فى الCOM Stack فى AutoSAR هتلاقي الكلام عن الPDUs
الPDU راح والPDU جه والPDU وقع..
مهم فعلا نفهمه ونعرف ازاى (PDU) بتتحرك خلال الطبقات المختلفة في الـLayered Architecture ده
بشكل اساسى:
كل ما بنطلع لفوق فى الLayers بنوصل لل Application وكل ما ننزل تحت بنقرب من الHardware.
PDU – Protocol Data Unit
الـPDU = SDU + PCI.
يعني: البيانات اللى محتاجين ننقلها + معلومات مهمة للتحكم فيها وتوجيهها.
للارسال:
الطبقة اللى فوق تبعت SDU للطبقة اللى تحت.
الطبقة اللى تحت تعتبر الـSDU ده كأنه Payload وتضيف عليه PCI جديد خاص بيها.
الاستقبال:
الطبقة اللى تحت تشيل PCI بتاعها.
وتطلعلك الـSDU للطبقة اللي فوق.
SDU – Service Data Unit
الـSDU هو ببساطة البيانات اللي بتيجي من الطبقة اللى فوق ومعاها طلب إنها تتبعت.
نفس الكلام بالعكس: لما الطبقة السفلى تستقبل بيانات، بتطلعها كـSDU للطبقة اللي فوقها.
مثال:
في CAN Transport Protocol: الـApplication Layer عايزة تبعت رسالة "Set Alarm". الرسالة دي تعتبر SDU بالنسبة للـTransport Layer.
PCI – Protocol Control Information
الـPCI هو المعلومات اللي البروتوكول محتاجها علشان يعرف يتعامل مع الـSDU.
يعنى زى ما نقول الرسالة دي جاية منين ورايحة فين.
الطبقة المرسلة بتضيف الـPCI.
الطبقة المستقبلة بتشيل الـPCI وترجعلك الـSDU الأصلي.
مثال في CAN Transport Protocol (CANTP):
الـPCI هنا مهم جدًا في حالة الـSegmentation.
ليه؟ علشان الرسالة الكبيرة بتتقسم Frames صغيرة.
الـPCI (1 Byte) بيقول:
نوع الفريم (First Frame, Consecutive Frame, Flow Control).
طول البيانات.
مثال فى Stacks مختلفة:
CAN Stack:
Application تبعت SDU (زي "Set Alarm").
Transport Layer يضيف PCI (Segmentation Info).
Network Layer يضيف PCI (Addressing).
MAC/Physical يضيف PCI (Identifiers, CRC).
Ethernet Stack:
الـIP Packet (SDU بالنسبة للـEthernet).
Ethernet يضيف PCI (MAC Source, MAC Destination, EtherType).
النتيجة = Ethernet Frame (PDU).
TCP/IP Stack:
Application Data (مثلاً HTTP Request).
TCP يضيف PCI (TCP Header).
IP يضيف PCI (IP Header).
Ethernet يضيف PCI (Ethernet Header).
_________________________________________________________________
مصادر:
AutoSAR - Specification of PDU Router