Download presentation
Presentation is loading. Please wait.
Published byἩρώδης Καψής Modified over 6 years ago
1
مهندسی فناوری اطلاعات ارائه دهنده دکتر سيد امين حسيني
E.mail: Home page:
2
لايه انتقال در شبکه اينترنت
روش برقراري ارتباط در پروتکل TCP روش کنترل جريان دادهها در پروتکل TCP زمان سنجها و عملکرد آنها در پروتکل TCP پروتکل UDP
3
روش برقراري ارتباط در پروتکل TCP
روش دست تکاني سه مرحلهاي مرحله اول: ارسالِ يک بسته TCP خالي از داده از طرف شروعکننده ارتباط با بيتهاي SYN=1 و ACK=0 و قراردادن عدد x درون فيلد شماره ترتيب اعلام شروع ترتيب دادههاي ارسالي از x+1 به ماشين طرف مقابل پيشگيري از مساوي بودن شماره ترتيب دادههاي ارسالي با انتخاب مقدار x به صورت تصادفي
4
روش دست تکاني سه مرحلهاي
مرحله دوم : رد تقاضاي برقراري ارتباط: ارسال بستهاي خالي با بيت RST=1 قبول تقاضاي برقراري ارتباط: ارسال بسته خالي با مشخصات زير از طرف گيرنده بسته تقاضا: بيت SYN = 1 بيت ACK = 1 Acknowledgement = x+1 Sequence Number = y
5
روش دست تکاني سه مرحلهاي
مرحله سوم: تصديق شروع ارتباط از طرف شروعکننده ارتباط با قراردادن مقادير زير در بيتهاي: SYN = 1 ACK = 1 Acknowledgement Number = y + 1 Seq. No = x + 1
6
روند خاتمه ارتباط TCP ارسال بسته TCP با بيت FIN = 1 از طرف درخواستکننده اتمام ارسال موافقت طرف مقابل با اتمام ارتباط يکطرفه و ادامه ارسال داده توسط آن قطع ارتباط دو طرفه با يک نمودن مقدار بيت FIN در آخرين بسته ارسالي و تصديق پايان ارتباط از طرف مقابل
7
کنترل جريان در پروتکل TCP
بافرشدن دادهها قبل از ارسال به برنامه کاربردي لايه بالاتر امکان عدم دريافت و ذخيره دادهها توسط برنامه کاربردي درمهلت مقرر و پرشدن بافر اعلام حجم فضاي آزاد بافر در فيلد Window درهنگام ارسال بسته TCP به طرف مقابل ايجاد يک ساختمان داده خاص به ازاي هر ارتباط برقرارشده TCP و نگهداري اطلاعاتي ازآخرين وضعيت ارسال و دريافت جريان دادهها = ساختمان داده بلوک نظارت بر انتقال = TCB = Transmission Control Block
8
متغيرهاي ساختمان داده TCP
توضيح نام متغير متغيرهاي نظارت بر ارسال دادهها شمارة ترتيب آخرين بسته اي كه ارسال شده ولي هنوز پيغام Ack آن برنگشته است. SND.UNA شمارة ترتيب آخرين بايت كه داده ها از آن شماره به بعد در بستة بعدي كه بايد ارسال شود. SND.NXT ميزان فضاي آزاد در بافر ارسال SND.WND شمارة ترتيب آخرين داده هاي اضطراري كه تحويل برنامة كاربردي شده است. SND.UP مقدار فیلد Sequence number SND .WL1 مقدار فیلد Acknowledgement number SND.WL2 شمارة ترتيب آخرين داده هايي كه بايد آني به برنامة كاربردي گسيل (Push) شود. SND.PUSH مقدار اولية شمارندة ترتيب داده هاي دريافتي كه در حين ارتباط بر روي آن توافق ميشود. SND.ISS متغيرهاي نظارت بر دريافت دادهها شمارة ترتيب آخرين بايت در بستة بعدي كه از آن شماره به بعد انتظار دريافت آنرا دارد. RCV.NXT ميزان فضاي آزاد در بافر دريافت RCV.WND شمارة ترتيب آخرين داده هاي اضطراري كه براي برنامة طرف مقابل ارسال شده است. RCV.UP مقدار اولية شمارندة ترتيب داده هاي ارسالي كه در حين ارتباط بر روي آن توافق ميشود. RCV.IRS
9
گيرنده 2KB از بافر ميخواند فرستنده مجدداً احيا ميشود
فضاي بافرگيرنده 4 Kbyte گيرنده 2KB از بافر ميخواند Window Size=0 فرستنده متوقف ميشود ارسال 2 Kbyte داده ارسال 1 Kbyte داده فرستنده مجدداً احيا ميشود Window Size=2048 مثال روند کنترل جريان در پروتکل TCP
10
کنترل ازدحام در پروتکل TCP
برای هر فرستنده دو پنجره در نظر گرفته می شود. پنجره اول بر اساس اعلام گیرنده مقدار می گیرد . پنجره دوم پنجره ازدحام است . هر یک از این پنجره ها حد اکثر تعداد بایتهایی را که فرستنده می توانند ارسال کند را مشخص می کند. تعداد بایتها مینیمم این دو خواهد بود. پنجره ازدحام در ابتذا پس از ارتباط مقدار می گیرد و مقدار آن طول جداکثر یک قطعه که موقع اتصال توافق شده اگر Ack در موقع مقرر آمد اندازه پنجره به اندازه طول حداکثر قطعه اضافه می شود(2 برابر). از آن پس هر قطعه که Ack آمد طول آن 2 برابر خواهد شد به صورت صعودی رشد می کند. اگر بسته ای تصدیق نشود برای جلوگیری ار ازدحام طول پنجره نصف می شود که به آن الگوریتم ژاکوبسن گویند
11
کنترل ازدحام در پروتکل TCP
پارامتر آستانه threshold TCP این پارامتر را علاوه بر 2 پنجره قبلی در نظر می گیرد. یک پارامتر داخلی هست که مقدار اولیه آن 64 کیلو بایت هست. وقتی پس از ارسال بسته ها که مهلت ارسال Ack گذشته باشد در این صورت مقدار آستانه نصف پنجره ازدحام می شود و مقدار پنجره ازدحام به مقدار اولیه خودش یعنی حداکثر 1 بسته. در این الگوریتم رشد نمائی ازدحام تا حد اکثر پارامتر آستانه رشد می کندو سپس به صورت خطی ادامه دارد تا اینکه Ack یک بسته نرسد.
12
الگوریتم کنترل ازدحام
13
زمان سنجها در پروتکلTCP
Retransmission Timer Keep- Alive Timer Persistence Timer Quite Timer Idle Timer
14
زمان سنج Retransmission Timer
پس از برقراري ارتباط و ارسال بسته براي پروسه مقصد, زمانسنجي (RT) با مقدار پيش فرض تنظيم و فعال ميگردد و شروع به شمارش معکوس مينمايد که اگر در مهلت مقرر پيغام دريافت بسته (Ack) نرسيد رخداد انقضاي زمان تکرار روي داده و ارسال مجدد بسته صورت گيرد. Retransmission Timeout Event
15
زمان سنج Retransmission Timer
1- عمل ارسال مجدد يک بسته چند بار بايد تکرارشود؟ 2- مقدار پيش فرض زمان سنج چه مقدار باشد؟ عملکرد اين زمان سنج Retransmission Timer بسيار ساده است اما مشکل در اينجاست که: بهترين راه تنظيم زمان سنج : روشهاي وفقي و پويا
16
الگوريتم Jacobson الف) ايجاد يک متغير حافظه يه نام RTT و مقداردهي آن هنگام برقراري يک ارتباط TCP (مقدار بزرگ-از حد اکثر زمان پاسخ بزرگتر باشد) ب) تنظيم يک زمانسنج به ازاي ارسال هر بسته و اندازه زمان رفت و برگشت پيغام دريافت بسته = M ج) بهنگام شدن مقدار پيش فرض زمان سنج از رابطه: RTT = RTT + (1- )M RT = β RTT β =4, =7/8 D= D + (1- ) |RTT-M| RT = RTT+ 4D β =4, =7/8 , First D =0
17
عدم بازگشت پيغام دريافت
Keep- Alive Timer توقف ارسال اطلاعات و عدم تبادل داده علي رغم فعال و باز بودن ارتباط TCP قطع ارتباط يکي از طرفين به دليل خرابي سخت افزاري و يا نرم افزاري بازگشت پيغام دريافت از طرف مقصد ارتباط TCP باز و فعال است جهت تمايز اين دو حالت عدم بازگشت پيغام دريافت قطع ارتباط به صورت يکطرفه و آزاد نمودن تمام بافرها ارسال بسته TCP خالي از داده از طرف فرستنده اطلاعات براي مقصد با استفاده از زمان سنج Keep- Alive Timer (زمان پيش فرض بين 30 تا 45 ثانيه)
18
Persistence Timer مقدار فضاي بافر آزاد يکي از طرفين ارتباط صفر (Window Size= 0) متوقف شدن پروسه طرف مقابل خالي شدن مقداري از فضاي بافر پر شده بعد از مدتي اعلام آزادشدن فضاي بافر جهت احياي پروسه بلوکه و متوقف شده توسط سيستم عامل و شروع و ادامه ارسال پروسه متوقف شده ارسال بسته TCP در فواصل زماني منظم با استفاده از زمان سنج Persistence Timer پس از آزاد شدن فضاي بافر براي پروسه بلوکهشده جهت احيا و ادامه ارسال داده توسط آن
19
Quite Timer هنگام بسته شدن يک ارتباط TCP با شماره پورت خاص تا مدت زمان معيني که زمان سنج Quite Timer تعيين مي نمايد (مقدار پيش فرض = 30 تا 120 ثانيه) هيچ پروسه اي اجازه استفاده از شماره پورت بسته شده را ندارد. جهت رسيدن بسته هاي سرگردان ناشي از ارتباط پايان يافته موجود در شبکه به مقصد Idle Timer اگر تلاش براي تکرار ارسال يک بسته بيش از حد متعارف انجام شود ارتباط TCP را بصورت يکطرفه رها کرده و قطع مينمايد. مقدارمعمول آن 360 ثانيه است.
20
پروتکل UDP پروتکل بدون اتصال (Connectionless) پروتکل ساده و سريع
کاربرد در سيستم هاي DNS و FTP ارسال بسته به مقصد بدون اطمينان ازبرقراري ارتباط و آماده بودن ماشين مقصد بسته UDP
21
فيلدهاي بسته UDP فيلد Source Port فيلد 16 بيتي
مشخص کننده آدرس پورت پروسه مبدأ فيلد Detination Port فيلد 16 بيتي مشخصکننده آدرس پورت پروسه مقصد فيلد UDP Length فيلد 16 بيتي طول بسته UDP بر حسب بايت (شامل سرآيند و دادهها)
22
فيلدهاي بسته UDP فيلد UDP Checksum فيلد 16 بيتي
درج کد کشف خطا در اين فيلد فيلد اختياري (جهت ارسال ديجيتال صدا و تصوير مقدار تمام بيتها صفر ) مناسبترين کاربرد پروتکل UDP = پروسه هايي که عمليات آنها مبتني بريک تقاضا و يک پاسخ ميباشد. مانند : سيستم DNS
23
ماشينهاي Big Edition و Little Edition
ماشينهاي Big Endian : ماشينهايي که ابتدا بايت پرارزش و سپس بايت کم ارزش را ذخيره ميکنند مثل کامپيوترهاي سري SUN ماشينهاي little Endian : ماشينهايي که ابتدا بايت کم ارزش و سپس بايت پرارزش را ذخيره ميکنند مثل کامپيوترهاي شخصي با پردازنده سري 80X86 و پنتيوم
24
تشکيل بستههاي IP ابتدا در حافظه و ارسال از طريق سخت افزار شبکه دريافت بسته IP ارسالي از يک ماشين Big Endian به يک ماشين Little Endian و يا برعکس تعويض بايتها و فاقد ارزش بودن محتوي بسته دريافتي پروتکل TCP/IP ، استاندارد ماشينهاي Big Endian را مبنا قرار داده است
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.