MASIGNASUKAv102
6510051498749449419

شرح مبسط لاشهر بروتوكولات الwan بروتوكول ppp

شرح مبسط لاشهر بروتوكولات الwan  بروتوكول ppp
Add Comments
3/07/2019

هذا الموضوع تم نقله من هنا 
http://arabhardware.net/forum/showthread.php?t=85696 


ارجو ان تقبلوا منى هذا الشرح المتواضع لبروتوكول ال ppp او point to point protocol 

بروتوكول ppp هو احد بروتوكولات الاتصال عبر الشبكه الواسعه wan والذى يعمل ضمن الطبقه الثانيه data link layer 
والذى يتميز بالعديد من الخصائص التى تميزه عن بروتوكول hdlc المملوك لسيسكو ...

اهم مميزات بروتوكول ppp :
1-بروتوكول ppp بيتكون من header و trailer تماما كما تتكون بروتوكولات الطبقه التانيه ك اثيثرنت او توكنرينج

**يوجد فى ال Header لخاص ببروتوكول ppp حقل يعرف ب type ,, ما هى اهميته :

يتيح هذا الحقل لبروتوكول ال ppp تمييز بروتوكول الطبه الثالثه الموجود فى ال packet ,,
يعنى انا لو عندى packet 
مبنيه على بروتوكول ipv4 , و packet مبنيه على ipv6 ةاخرى مبنيه على ipx , الراوتر اللى هيستلم ال packets دى هيبص على 
ال type field ويحدد نوعية كل باكت منهم عن طريق القيمه الموجوده فى ال type field ...

ده شكل بيوضح تكوين بروتوكول ppp مع توضيح مكان ال type field 



2-من هنا نستنتج ان ال ppp قادر على العمل مع اكثر من بروتوكول من بروتوكولات الطبقه التالته . زى ما قلنا ip , ipx , ipv6 , 

3-protocol ال ppp بيتحكم فى الاتصال بين نقطتين عن طريق مجموعة بروتوكولات مصاحبه له ,, تعرف باسم ال ppp control messages ولها العديد من المميزات 
وفى الحقيقه هيا اللى بتميز بروتوكول ال ppp فضلا عن انه public standard 

نبدا نسرد كل ميزه على حده ونتكلم عنها شويه .....

1-ppp protocol field ........
كما اشرت هو حقل يوجد فى ال header الخاص ببروتوكول ppp
ده شكله , وفايدته زى ما قلت بيساعد الجهاز اللى استلم الداتا انه يتعرف على نوع ال packet الموجوده وهى مبنيه على 
اى بروتوكول ip , ipx , الخ

ملحوظه : من بروتوكولات الاتصال من نقطه لنقطه ايضا بروتوكول hdlc او hig level data link control 
ويوجد بهذا البروتوكول حقل يعرف ب type ايضا ويقوم بنفس العمل بس لازم نعرف كويس ان ال hdlc ده proprietary
يعنى يقدر يشتغل بين راوترات سيسكو بس ... اما ال ppp فهو ieee standard وبالتالى يشتغل ما بين اى راوترين ...

وده شكل حقل ال type فى ال hdlc وال ppp على فكره مفيش اى فرق بينهم غير ان ال ppp بروتوكول standard اما ال hdlc فهو proprietary او مملوك لسيسكو ولا يعمل الا على اجهزة سيسكو ...




2- ppp control messages او البروتوكولات المصاحبه ببروتوكول ppp
زى ما اشرت ان فايدة هذه البروتوكولات المصاحبه التحكم التام فى الاتصال بين نقطتين يكون ppp شغال بينهم ....
يطلق على هذه البروتوكولات ايضا اسم 
lcp يعنى link control protocolتنقسم هذه البروتوكولات لقسمين :
**بروتوكولات تحكم فى الاتصال ثابته واساسيه بغض النظر عن نوع الباكت ( واللى نقدر نحدده من ال type field ) , يعنى البروتوكولات دى بتشتغل لو كانت الباكت مبنيه على ipv4 او ipv6 
او ipx ..... وهى موجوده للتحكم فى اتصال الطبقه التانيه يعنى زى ما قلت ملهاش دعوه ببروتوكول الطبقه التالته..

**بروتوكولات تحكم فى الاتصال خاصه , يعنى مرتبطه ببروتوكول الدرجه التالته المستخدم يعنى لكل بروتوكول درجه تالته بروتوكول تحكم فى الاتصال خاص بيه ... مثال 

1-لو عندى packet مبنيه على ipv4 هيشتغل معاها ال ppp وهيصاحبها بروتوكولين تحكم هما :
lcp ... زى ما قلنا ده شغال دايما معانا 
ipcp ... وده هوا بروتوكول التحكم المصاحب والمرتبط بال ip

طيب مثال تانى لو عندى packet مبنيه على ipv6 هيشتغل معاها ال ppp وهيصاحبها بروتوكولين تحكم هما 

1-lcp 
2-ipv6cp وده الخاص ب ipv6

طيب ما هى فوائد البوتوكولات المصاحبه دى :

1-looped link detection ودى خاصيه تخلى ال ppp يكتشف اذا حصل loop على ال link ولا اللينك سليم 
يعنى ايه loop الاول : 
معناها ان لو عندى راوتر اسمه 1 وراوتر اسمه 2 ,,راوتر 1 بيبعت داتا لوجهه معينه , الداتا دى مفروض تروح على راوتر 2 وهو يكمل عملية توجيهها 
لكن بسبب خطا ما فى جدول التوجيه او routing table لراوتر 2 , بدل ما يوديها وجهتها يبعتها على راوتر 1 تانى , وتفضل الداتا رايحه جايه ما بين الراوترين 1 و 2

كيف يمكن لبروتوكول ppp اكتشاف ما اذا كان هنالك لووب ؟
1-كل راوتر بيعمل لنفسه رقم عشوائى اسمه magic number يعنى الرقم السحرى , طبعا بيكون مختلف عن اللرقم العشوائى فى الراوتر الوجود بالجهه الاخرى 

2-عندما يستقبل راوتر ما ال packet معينه , يقوم يبص على ال magic nimber الموجود فى ال ppp header 
لو لقى الرقم السحرى مختلف عن الرقم السحرى بتاعه يبقى معنى كده ان الداتا دى جايه من راوتر تانى ومفيش اى مشاكل 
طيب لو لقى ان الرقم السحرى هوا نفسه الرقم السحرى بتاعه ؟؟ معنى كده ان الداتا خرجت منه وراحت لراوتر تانى وحصل لووووووب ورجعت الداتا تانى لنفس الراوتر

اذا اكتشف الراوتر حدوث لووب بواسطه بروتوكول ppp يقوم يعمل علطول disable للانترفيس اللى شغال عليها اللينك ده ....

مثال مبسط : راوتر 1 بيبعت packet وال magic number يساوى 1
اذا استلم راوتر 1 اى packet الmagic number لها يساوى 1 يعرف ان فى لووب وان الباكت دى اساسا كانت خارجه من عنده فبيعمل disable لل interface


2-error detection او خاصية اكتشاف الاخطاء

طبعا كلنا عارفين ان بروتوكولات الطبقه التانيه فيها field اسمه fcs او frame check sum بيقدر من خلاله يعرف اذا كانت الداتا سليمه او فاسده

لكن بروتوكول ال ppp فيه ميزه تانيه وهيا انه بيقيس عدد مرات حدوث اخطاء فى البيانات المستلمه , يعنى راوتر رقم واحد مثلا استلم 1000 packet من راوتر 2
راوتر 1 حسب عدد الpackets السليمه وعدد ال packets التالفه , وبعدين يبعت النسبه دى للراوتر رقم 2
راوتر 2 يحسب نسبة السليم والتالف بالنسبه لمجمل البيانات المرسله , لو تجاوزت نسبة البيانات التالفه حد معين ( الحد المعين ده انتا اللى ممكن تظبطه ) بيقوم راوتر رقم 2
بعمل disable لل interface
الخاصيه دى اسمها link quality monitoring

3-ppp multilink 
اذا كان عندنا راوترين بينهم اكتر من لينك , يقدر ppp يوازن ما بين الداتا بحيث يبعت اجزاء متساويه موزعه على كل لينك 
طبعا احنا عارفين ان الip بيقوم بعملية fragementation يعنى تكسير للداتا بحيث ان حجم كل packet يساوى 1500 byte او اقل 
بس خد بالك لو عندى 2 packet الاولى 800 بايت ,والتانيه 400 بايت ,, بروتوكول ال ip يبعت كل وحده على لينك لان كل وحده فيهم حجمها اقل من 1500 بايت

لكن الامر مختلف بالنسبه لل ppp ,, لو برده بنبعت نفس ال 2 packets وبروتوكول الاى بى وزع كل باكت على لينك , طبعا الاولى 800 والتانيه 400
يقوم ال ppp بتكسبر كل packet بحيث تبقى نصفين متساويين ويوزعهم بالتساوى على اللينكات ...

االخلاصه :
ال ip بيوزع ال packets بناء على عدد ال packet خلى بالك الpackets فى الصوره جومها مش متساويه بس كل وحده بتروح على لينك , ودى طريقة ال ip



ال ppp بيكسر كل packet لاجزاء متساويه يعنى بناء على حجم ال packet خلى بالك هنا الحجوم متساويه بالظبط يعنى لو ال packet 1200 bytes ال ppp يكسرها لعدد اتنين packet كل وحده 600 بايت



4-authentication
يتيح بروتوكول ppp عملية ال authentication عند قيام device بطلب device اخر .. يعنى لو عندنا راوترين على leased line 
واحنا عملنا ال encapsulation ppp 
ممكن لما ييجى راوتر منهم يعمل connection او dial مع الراوتر التانى يقوم الراوتر التانى بالتحقق من هوية الراوتر الاول 
طبعا عن طريق username و password ,,, وعلى فكره بروتوكول ppp بيعمل عملية التحقق دى او ال authentication عن طريق بروتوكولين مصاحبين لل 
ppp وهما :

pap : او password authentication protocol
chap : او challenge authentication protocol 


اولا : pap :
اذا قام راوتر 1 بطلب راوتر 2 ,,, راوتر 2 بيتوقع انه هيستقبل username و password من راوتر 1 علشان يوافق على الاتصال , يعنى راوتر واحد 
بيطلب راوتر 2 ويبعت مع الطلب ده اليوزرنيم والباسوورد ,, طبعا لو صح بيسمحله بالاتصال ولو غلط يبقى deny او بيرفض الاتصال معاه



chap : 
ده موضوع يطول شرحه لكن يهمنا نعرف الفرق بينه وبين ال pap

1-الراوتر المطلوب هوا اللى بيبدا يسال الراوتر الطالب عن ال username وال password
يعنى مش بيستنى لما يقوله انا مين , لا هوا علطول زى الغفير بيقول ( مين هناك )

2-البيانات المرسله يعنى اليوزرنيم والباسوورد بتبقى مشفره ب md5 مش زى ال pap بيبعت كل حاجه clear text ( طبعا لو انتا مذاكر الفرق ده هيفكرك بين ال telnet وال ssh او ال secure shell )


بختصار الفرق بين ppp وBGP

الBGP تستخدمه لما تبغى تطلع بره ال AS فقط
يعني تربط بين شبكة المملكة والامارات مثلاً
هو المستخدم لربط الانترنت بكل العالم


M