WebRTC

basmala qur an allah madhhab mosaic بسم الله الرحمن الرحيم a462a02761ac8f0dbeb078e54568370a

ما هي WebRTC

هي اختصار لكلمة Web Real-Time Communication فهي متاحة لل web وبالتالي هي موجودة ك API في javascript بدون الحاجة إلى install ، وظيفتها امكانية الوصول للصوت والصورة (كاميرا) ومشاركتهم مباشرة بين المستخدمين. مثل Zoom , google meet.

تقنية ال WebRTC لا تحتاج إلى سيرفر ولكن نحتاج إلى سيرفر .

تقنية ال WebRTC تنقسم إلى قسمين أساسيين:

أولاً: جزء ال GUM وهو getUserMedia ويُستخدم للوصول إلى الكاميرا والمايك والشاشة الخاصة بالمستخدم الحالي. (إذاً يمكننا أن نصل إلى الكاميرا واستخدامها locally بدون إرسالها)

ثانياً: جزء ال P.C وهو Peer-Connection والمعروفة ب P2P (peer to peer) ويُستخدم لتوصيل مستخدمين (المستخدم هنا المقصود منه المتصفح (browser) ).

بدون ال WebRTC يمكننا توصيل مستخدمين عن طريق استخدام سيرفر وسيط يقوم السيرفر باستقبال الداتا من ال peer1 ويرسلها إلى peer2 والعكس.

image

ولكن ال WebRTC يقوم بتوصيل المستخدمين مباشرة بدون وسيط.

تقنية ال WebRTC مبنية على UDP

ما هو ال UDP

هو اختصار ل User Datagram Protocol وهو بروتوكول من ضمن ال Transport Layer ويُستخدم في الاتصالات التي تحتاج إلى سرعة وذلك لأنه لا يهتم بضمان الوصول قدر ما يهتم بسرعة الوصول ولا يتحقق من حدوث الأخطاء وبالتالي هو عبارة عن مقايضة بين تأكيد وصول البيانات ووصولها بطريقة سليمة بسرعة وصولها للطرف الآخر، مما يجعله مناسب جداً في استخدامات ال Real time .

حسناً انا client1 ما المطلوب لأتصل بال client2

أولاً: أين أنت

ثانياً: ال data المُرسلة

سؤال مهم جداً هنا : هل تستطيع أنت ك client (وهو ال browser في هذه الحالة) أنت تعطي المستخدم في الطرف الآخر العنوان الخاص بك IP Address ، الإجابة هي لا .

لماذا : لوجود ما يُعرف ب NAT (Network Address Translation) و ال Firewalls وال VPN.

ال VPN (Virtual Private Network) يقوم بإخفاء ال IP Address الخاص بك وموقعك على الشبكة عن طريق استخدام IP Masking أى يقوم باستخدام IP Address مختلف.

ال Firewalls تُستخدم طبعاً لأغراض الحماية.

ال NAT (Network Address Translation) id هي طريقة فيها ال Router يقوم بترجمة عدة private IP Addresses إلى عنوان واحد public مما يسمح لأكثر من طرف أن يكون لهم نفس ال IP Address

إذا لن نستطيع التواصل مع بعضنا باستخدام ال public IP Address لأنه ليس هو العنوان الخاص بالطرف الذي تريد التواصل معه ولا ال IP Address الخاص بك هو عنوانك الأساسي بسبب كل هذه العوامل المذكورة وهنا تأتي وظيفة ما يُعرف ب STUN Server

image

حسناً للوصول لذلك سنقوم بعمل التالي:

أولاً : ال getUserMedia

ثانياً : ال Peer-Connection

ثالثاً: ال STUN Server (Session Traversal Utilities for NAT)

نقوم بإرسال Request إلى ال STUN Server (هذه السيرفرات متاحة مجاناً مثل Google STUN Server) نسأله باختصار أن يساعدنا في أن يسا

اترك ردّاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *