المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : سوال فى 3 way handshake



محمود فتوح
21-09-2010, 15:55
السلام عليكم ورحمة الله
انا شاهدت الشرح الخاص بموضع ال 3way handshake بس فى نقطة مش فاهمها وهى ذكر الاساذ ياسر بارك الله فيه وجزاة عنا كل خير ان جهاز ال source بيرسل packet اسمها SYN وبيكون فيها seq=100 مثلا علشان جهاز ال Destination يعرف ان البيانات سترسل بتسلسل ثم يرد علية جهاز ال Destination بارسال SYN/Ack وبيتفق مع الـ Source على ان الـ ACK=200 يعنى زى كلمة سر تبين ان البيانات او عدد السيكونس وليكن 101،102،103،104 ا واكتملت البيانات وجهاز الـ Destination بعث الـ ACK لانه عرف ان البيانات وصلت كاملة من خلال الـ WINdowing سوالى من فضلكم قال استاذنا ياسر ان جهاز الـ Destination بلغ جهاز الـ Source ان الـ ACK=200 وانه هايستقبل منه اى من جهاز السورس 2000b ازاى جهاز الـ Destination هو اللى بيحدد حجم الداتا المرسلة من جهاز السورس
مش المفروض العكس ان جهاز السورس هو اللى بيحدد حجم البيانات لان البيانات عنده هوه
يعنى لو انا كجهاز سورس ببعت ملف حجمة 3000bجهاز الـ Destination هيعرف منين مساحة الملف وهو اللى بيحدد هيستقبل كام
ارجوا الافادة لانى متلغبط وارجوا ان يكون سؤالى واضح
وجزاكم الله عنا خيرا

Gawad
21-09-2010, 16:13
بسم الله والحمد لله والصلاة والسلام علي رسول الله وآله وصحبه وإخوانه أجمعين

ACK=200 معناها ان الDESTINATION بيقول للسورس كده تمام جميع الداتا قبل المسلسل 200 وصلت ابعت 200
و200 او 100 ده بيعتمد علي الWINDOWING
هنا الDESTINATION هوه اللي بيحدد حجم الداتا WINDWOING وده علي حسب حالة الCONNECTION عنده هل فيه CONGESTION يعني السكة زحمة ولا السكة فاضية وبالتالي بيزود حجم الWINDOW و الله أعلي وأعلم

أرجو لو فيه خطأ التصحيح

ولا تنسني من صالح الدعاء
وصلي الله وسلم وبارك علي المصطفي وآله وصحبه وإخوانه أجمعين.

أيمن النعيمي
21-09-2010, 18:10
مداخله صغيرة : أنت تسأل عن الـ 3Way handshake أم تسأل عن الـ Windowing ؟
لان عنوان الموضوع مختلف تماما عن السؤال وعلى مايبدوا ان هناك التباس صغير لذا يجب أن أونوهك إلى شيء مهم وهو عملية الـ 3Way Handshake ليست إلا عبارة عن عملية يقوم فيها الـ Source & Destination من أجل فتح أتصال بينهم فقط من خلال بروتوكول الـ TCP وبعدها يبدأ تدفق البيانات بينهم والتى يتحكم فيها الـ Windowing والـ Flow Control
وهذه صورة صغيرة تعبر عن عملية 3Way handshake


https://www.inetdaemon.com/img/internet/3-way-handshake.gif

وياريت لو تعيد صياغة السؤال لان مش مفهوم بالنسبة لي

محمود فتوح
22-09-2010, 09:28
اخى جزاكم الله خيرا انا سوالى ازاى الـ Destination هو اللى بيحدد الـ windowing او حجم الداتا مش المفروض ان جهاز الـ Source هو اللى بيحدد حجم الداتا المرسلة لان الداتا اللى هيرسلها عندة فكيف الجهاز المستقبل يقوم بتحديد حجم الداتا وهو ما يعرفش كمية البيانات المبعوثة له قد ايه
يعنى مثلا
انا كجهاز destination حددت الـ Windowing 2000b والجهاز المرسل كان بيرسل ملف حجمه 3000b افهم من كدا ان الملف مش هيوصل
ارحوا الافادة جزاكم الله خيرا

windows se7en
22-09-2010, 17:01
اخ محمود الاخوان وضحو الفكره واانا بوضح من جانبي

مثل ماقال الاخ جواد ال window يحدد كمبيه الداتا الي ترسل في كل مره

يعني الجهاز المستقبل لو كان بطيء مايتحمل 2000b في كل مره يطلب من المرسل انه يخفضها الى 500 مثلا
طبعا كل شي يتم باتفاق بينهم

خذ في بالك ان الداتا ترسل على كميات ثم يتم اعاده تجميعها
يعني لو كان ال buffer للجهاز المستقبل لايتحمل 2000b يطلب من المرسل تخفيضها ليتمكن من معالجة الدااتا الي موجوده فالbuffer

محمود فتوح
23-09-2010, 09:35
اخوانى جزاكم الله خيرا على ردودكم
ولكن الى الان من الواضح انى مش قادر اوصللكم سوالى
انا عاوز اعرف جهاز ال Destination بيحدد حجم الداتا بناء على ايه ؟
هل اول SEQ اللى بيرسلة جهاز ال Source بيكون فيه اجمالى حجم البيانات وبناء علية جهاز ال Destination بيكوم بتحديد الحجم الذى فى استطاعتة استقبالة يعنى يستقبل جزء وبعد كدة يستقبل جزء اخر وهكذا حتى يتم نقل اجمالى البيانات
وجزاكم الله خيرا

Raydex
23-09-2010, 10:33
يتفقون على تحديد حجم الsegments أو الunits في كل مرة من خلال option الMaximum Segment Size MSS في بروتوكول الTCP و يتم تحديده بناءا على الMaximum Transmission Unit MTU، طبعا هذا يخص الnegotiation المبدئ ينهم، بس بعدين لو كان المستقبل يحتاج إنه يقلل حجم الداتا في كل مرة بيستعمل option الquench في بروتوكول الICMP عشان يقول للمرسل إنه يقلل من حجم الداتا المرسلة.

ياريت تصححوني لو كنت قلت شي غلط أو غير دقيق.