Presentation is loading. Please wait.

Presentation is loading. Please wait.

مبحث ششم: پروتکل TCP/IP بخش دوم: فرمت بسته های IP

Similar presentations


Presentation on theme: "مبحث ششم: پروتکل TCP/IP بخش دوم: فرمت بسته های IP"— Presentation transcript:

1 مبحث ششم: پروتکل TCP/IP بخش دوم: فرمت بسته های IP
شبکه هاي کامپيوتري مبحث ششم: پروتکل TCP/IP بخش دوم: فرمت بسته های IP وحید حقیقت دوست دانشکده فنی و مهندسی دانشگاه شاهد

2 فرمت بسته IP

3 32 bit destination IP address
IP protocol version Number[4bits] 32 bits total datagram length (1Byte) head. len header length (4Bytes)[4bits] “type” of service ver length fragment offset fragmentation/ Reassembly/ DF, MF Flags 16-bit identifier flags “type” of data: Priority [3bits] Delay[1bit] Throughput[1bit] Reliability[1bit] time to live upper layer Checksum: 1’s add of 16bits words in header upper layer protocol to deliver payload to (rfc 1700) 32 bit source IP address max number remaining hops (decremented at each router) 32 bit destination IP address Options (if any) data (variable length, typically a TCP or UDP segment) 1 :ICMP 6 :TCP 17 :UDP how much overhead with TCP? 20 bytes of TCP 20 bytes of IP = 40 bytes + app layer overhead e.g. timestamp, record route taken, specify list of routers to visit. A packet is unique in Internet by: Id + S. IP Add + D. IP Add + Upper L.

4 تحلیل فیلدهای سرایند بسته IP
فيلد Version چهار بيت مشخص کننده نسخه پروتکل IP نسخه شماره 4 پروتکل Version= IP نسخه شماره 6 پروتکل IP فيلد IHL (IP Header Length) چهار بيتي مشخص کننده طول کل سرآيند بسته بر مبناي کلمات 32 بيتي حداقل مقدار فيلد IHP عدد 5 است یعنی 5×4=20 بایت فيلد Type of sevice فيلد 8 بيتي مشخص کننده درخواست سرويس ويژه‌اي توسط ماشين ميزبان از مجموعه زيرشبکه براي ارسال ديتاگرام P2 P1 P0 D T R - تقدم بسته تأخير توان خروحي قابليت اطمينان بلااستفاده قراردادن عدد 1 توسط ماشين ميزبان در اين بيتها جهت انتخاب مسير مناسب توسط مسيريابها

5 فيلد Total Length فيلد Identification فيلد 16 بيتي
مشخص کننده طول کل بسته IP (مجموع اندازه سرآيند و ناحيه داده) حداکثر طول کل بسته IP، 64 kB=65535 بايت میباشد فيلد Identification مشخص کننده شماره يک ديتاگرام واحد

6 fragmentation با توجه به محدودیت طول بسته ها، ممکن است بسته هنگام ورود به یک شبکه به بسته های کوچکتر شکسته شود. بیتهای DF، MF و فیلد Fragment offset اطلاعات مربوط به خرد شدن بسته ها را در خود نگه میدارند. الف) بيت DF (Don’t Fragment) با يک شدن اين بيت در يک بستهIP هيچ مسيريابي اجازه قطعه قطعه نمودن بسته را ندارد ب) بيت MF (More Fragment) MF=0 : مشخص کننده آخرين قطعه IP از يک ديتاگرام MF=1 : قطعات بعدي از يک ديتاگرام همچنان باقی مانده ج) فیلد Fragment offset 13 بيتي نشان دهنده شماره ترتيب هر قطعه ازيک ديتاگرام شکسته شده حداکثرتعداد قطعات يک ديتاگرام 8192

7 کشف خطاهاي احتمالي در سرآيند هر بسته IP
فيلد Time To Live فيلد 8 بيتي مشخص کننده طول عمر بسته IP حداکثر طول عمر بسته IP = 255 فيلد پروتکل نشان دهنده شماره پروتکل لايه بالاتر متقاضي ارسال ديتاگرام فيلد Header Ckecksum فيلد 16 بيتي کشف خطاهاي احتمالي در سرآيند هر بسته IP جمع كل سرآيند به صورت دو بايت دو بايت حاصل جمع به روش مكمل يك منفي مي گردد قرارگرفتن عدد منفي حاصله در فيلد Header Ckecksum

8 فيلد Destination Address
فيلد Source Address فيلد 32 بيتي مشخص کننده آدرس ماشين مبدأ فيلد Destination Address مشخص کننده آدرس IP ماشين مقصد فيلد اختياري Option حداکثر 40 بايت محتوي اطلاعات جهت يافتن مسير مناسب توسط مسيريابها

9 شکستن و بازسازی یک بسته IP (IP Fragmentation & Reassembly)
یکی از مشخصات شبکه ها پارامتر حداکثر طول بسته ها میباشد که با عنوان MTU (max. transfer unit size) معرفی می شود. شبکه ای با لینکها متفاوت  مقادی متفاوت MTU بسته IP بزرگ به بسته های کوچکتر خرد (fragment) میشود. یک دیتاگرام به چندین دیتاگرام تبدیل میشود بازسازی بسته ها در مقصد انتهایی انجام میشود از بیتهای درنظر گرفته شده در سرایند بسته IP برای رعایت ترتیب بسته های خرد شده استفاده می شود. fragmentation: in: one large datagram out: 3 smaller datagrams reassembly

10 IP Fragmentation and Reassembly
data 20 Byte 0……….3979 length =4000 ID =x fragflag =0 offset =0 Example 4000 byte datagram MTU = 1500 bytes 4000 Bytes 0……….1479 length =1480 ID =x fragflag =1 offset =0 1480…2959 یک دیتاگرام بزرگ به 3 دیتاگرام کوچک تبدیل میشود length =1480 ID =x fragflag =1 offset =1480 طول هر fragment باید ضریب 8 باشد length =1040 ID =x fragflag =0 offset =2960 1480=185*8

11 سرویس IP - 1 سرویس تحویل IP، ساده است سرویس ارائه شده توسط لایه IP
بدون اتصال و غیر قابل اطمینان است تلاش برای بهترین سرویس (best effort) میباشد غیر قابل اطمینان: IP تلاشی برای اصلاح بسته های با خطا روبرو شده انجام نمیدهد بدون اتصال: هر بسته (دیتاگرام) بصورت مستقل پردازش میشود و IP توجهی به اینکه ممکن است بسته های تبادل شده بین دو میزبان از یک ترتیب منطقی تبعیت کنند، ندارد. تلاش برای بهترین سرویس: IP هیچ تضمینی برای سرویس ارائه شده نمیدهد (پهنای باند، تاخیر، ترتیب و... ) نتیجه پروتکلهای لایه های بالاتر باید خطای بسته ها را با ارسال مجدد برطرف نمایند

12 سرویس IP - 2 پروتکل IP سرویس های زیر را ارائه می نماید
تک پخشی:one-to-one (unicast) همه پخشی:one-to-all (broadcast) چندپخشی: one-to-several (multicast)

13 پروتکل ICMP TCP/IP Protocol Suite

14 ICMP: Internet Control Message Protocol
میزبانها و روترها برای تبادل اطلاعات شبکه از آن استفاده میکنند. گزارش خطا: در دسترس نبودن میزبان، شبکه، پورت، پروتکل درخواست های بازگشتی مانند ping پیامهای ICMP درون بسته IP قرار میگیرند پیامهای ICMP دارای موارد Type، Code به همراه آدرس مبدا و مقصد (8بایت) میباشند Type Code description echo reply (ping) dest. network unreachable dest host unreachable dest protocol unreachable dest port unreachable dest network unknown dest host unknown source quench (congestion control - not used) echo request (ping) route advertisement router discovery TTL expired bad IP header

15 فرمت بسته های ICMP TCP/IP Protocol Suite

16 ICMP همواره برای گزارش خطا به منبع استفاده میشود
توجه ICMP همواره برای گزارش خطا به منبع استفاده میشود TCP/IP Protocol Suite

17 تعقیب مسیر (Traceroute) با استفاده از ICMP
هنگامی که پیام ICMP وارد میشود. منبع RTT را محاسبه میکند. Traceroute این اقدام را 30 بار انجام میدهد. شرط توقف سگمنت UDP به میزبان مقصد وارد شود در اینصورت مقصد پیام ICMP با نام “host reachable” را ارسال میکند (type 3, code 3) هنگامی که مبدا این پیام را دریافت میکند توقف خواهد کرد. منبع یک سری سگمنت های UDP به سمت مقصد ارسال میکند. این سگمنت ها در ابتدا دارای TTL=1 هستند سپس TTL=2 و به همین ترتیب ادامه می یابد زمانی که n امین دیتاگرام به n امین روتر وارد شود: روتر از دیتاگرام صرفنظر میکند و به سمت مبدا یک پیام ICMP (type 11, code 0) ارسال میکند پیام در برگیرنده نام روتر و آدرس IP آن است.

18 مثال: استفاده از tracert
C:\Users\vahid>tracert shahed.ac.ir Tracing route to shahed.ac.ir [ ] over a maximum of 30 hops: ms ms ms 2 * * * Request timed out. ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms 8 * * * Request timed out. ms ms ms * * * Request timed out. ms ms ms * * * Request timed out. ms ms ms ms ms * ms ms ms ms ms ms ms ms ms ms ms ms ms ms ms shahed.ac.ir [ ] Trace complete.

19 DHCP: Dynamic Host Configuration Protocol
هدف: به میزبانها اجازه میدهد تا بصورت داینامیک هنگامی که به شبکه متصل میشوند، IP بگیرند میزبان میتواند آدرس خود را تازه نماید و یک IP جدید از شبکه بگیرد به شبکه اجازه داده میشود تا از آدرسها مجدد استفاده شود برای اتصال کاربران سیار بسیار مفید است تا بتوانند به شبکه های جدید به راحتی متصل شوند مروری بر DHCP : میزبان پیام “DHCP discover” را برای یافتن DHCP Server بصورت همه پخشی ارسال میکند DHCP Server با پیام “DHCP offer” پاسخ میزبان را در یک پیام همه پخشی میدهد میزبان پیام درخواست IP را بصورت “DHCP request” برای DHCP Server بصورت یک پیام همه پخشی ارسال میکند DHCP Server در پاسخ آدرس IP را بصورت پیام “DHCP ack” برای میزبان بصورت پیام همه پخشی می فرستد

20 DHCP client-server scenario
DHCP server arriving DHCP client needs address in this network A B E

21 DHCP client-server scenario
arriving client DHCP server: DHCP discover src : , 68 dest.: ,67 yiaddr: transaction ID: 654 DHCP offer src: , 67 dest: , 68 yiaddrr: transaction ID: 654 Lifetime: 3600 secs DHCP request src: , 68 dest:: , 67 yiaddrr: transaction ID: 655 Lifetime: 3600 secs DHCP ACK src: , 67 dest: , 68 yiaddrr: transaction ID: 655 Lifetime: 3600 secs time Yiaddr: (client) IP address. Server's response to client. Ciaddr: Client IP address. Filled in by client if it knows it's IP address (from previouse requests or from manual configurations)

22 مروری بر معماری روتر دو فرایند کلیدی در روترها
اجرای الگوریتم ها و پروتکلهای مسیریابی (RIP, OSPF, BGP) سوئیچ کردن دیتاگرامهای ورودی به لینکهای خروجی

23 عملکرد پورت ورودی لایه پیوند داده: لایه فیزیکی: e.g., Ethernet
see chapter 5 لایه فیزیکی: bit-level reception فرایند: یافتن پورت خروجی با استفاده از جدول مسیریابی بافر کردن: اگر دیتاگرامی سریعتر از فرایند پردازش و هدایت بسته قبلی وارد شود، باید آنرا بافر نماید

24 پورتهای خروجی بافر کردن (Buffering) : زمانی که دیتاگرامهایی وارد شوند و برای خروج به یک پورت ارسال شوند و سرعت هدایت دیتاگرامها سریعتر از سرعت ارسال در پورت خروجی باشد باید بسته ها بافر شوند فرایند زمانبندی (Scheduling discipline) :انتخاب دیتاگرام برای ارسال از بین دیتاگرامهای قرار گرفته در بافر خروجی تاخیر صف بندی و از بین رفتن (queuing delay and loss) : باتوجه به پورت خروجی، بافر خروجی سرریز رخ خواهد داد


Download ppt "مبحث ششم: پروتکل TCP/IP بخش دوم: فرمت بسته های IP"

Similar presentations


Ads by Google