530 likes | 757 Views
مفاهيم اوليه شبكه. گردآوري و تاليف : فريدون رضائي. مدل هفت لايه اي OSI از سازمان استاندارد جهاني ISO. ☻ لايه فيزيكي Physical layer ☻ لايه پيوند داده ها Data link layer ☻ لايه شبكه Network layer ☻ لايه انتقال Transport layer ☻ لايه جلسه Session layer
E N D
مفاهيم اوليه شبكه گردآوري و تاليف : فريدون رضائي
مدل هفت لايهاي OSI از سازمان استاندارد جهاني ISO ☻ لايه فيزيكي Physical layer ☻لايه پيوند دادهها Data link layer ☻ لايه شبكه Network layer ☻ لايه انتقال Transport layer ☻لايه جلسه Session layer ☻ لايه ارائه ( نمايش ) Presentation layer ☻لايه كاربرد Application layer
لايه فيزيکي Physical Layer انتقال بيتها به صورت سيگنال الکتريکي و ارسال آن بر روي کانال ☻ واحد اطلاعات : بيت☻ پارامترهاي قابل توجه : ظرفيت كانال فيزيكي و نرخ ارسال ☻ مسائل مكانيكي و الكتريكي مانند نوع كابل، باند فركانسي، نوع ☻ رابط (كانكتور) كابل
لايهپيوند داده Data Link Layer - • وظايف : • به مقصد رساندن دادهها روي يك كانال انتقال بدون خطا و مطمئنبااستفاده از مكانيزمهاي كشف و كنترل خطا. • شكستن اطلاعات ارسالي از لايه بالاتر به واحدهاي استاندارد و كوچكتر و مشخص نمودن ابتدا و انتهاي آن از طريق نشانههاي خاصي بنام Delimiter. • كشف خطا از طريق اضافه كردن بيتهاي كنترل خطا • كنترل جريان يا تنظيم جريان ارسال فريمها (مكانيزمهاي هماهنگي بين مبدأ و مقصد) • اعلام وصول يا عدم رسيدن دادهها به فرستنده • وضع قراردادهائي براي جلوگيري از تصادم سيگنالهاي ارسالي (اين قراردادها در زيرلايهاي بنام MAS تعريف شده است) • كنترل سختافزار لايه فيزيكي
لايه شبكه • سازماندهي اطلاعات بصورت بسته و ارسال جهت انتقال مطمئن به لايه پيوند دادهها • تعيين مسيـر هـر بستـه ارسـالي بـراي رسيدن به مقصد • جلوگيري از ازدحام و ترافيك در بين مسيريابها و سوئيچها • اختصـاص آدرسـهـاي مشخص و استاندارد بـراي هر بستة آماده ارسال • اين لايه بدون اتصال است.
ارسال يك بسته ويژه قبل از ارسال بستهها براي اطمينان از آمادگي گيرنده براي دريافت اطلاعات • شمارهگذاري بستههاي ارسالي براي جلوگيري از گمشدن يا ارسال دوباره بستهها • حفظ ترتيب جريان بستههاي ارسالي • آدرسدهي پروسههاي مختلفي كه روي يك ماشين واحد اجرا ميشوند. • تقسيم پيامهاي بزرگ به بستههاي اطلاعاتي كوچكتر • بازسازي بستههاي اطلاعاتي و تشكيل يك پيام كامل • شمارهگذاري بستههاي كوچكتر جهت بازسازي • تعيين و تبيين مكانيزم نامگذاري ايستگاههاي موجود در شبكه لايه انتقال
لايه جلسهSession Layer • برقراري و مديريت يك جلسه • شناسائي طرفين • مشخص نمودن اعتبار پيامها • اتمام جلسهها • حسابداري مشتريها لايه ارائه (نمايش) • فشردهسازي فايل • رمزنگاري براي ارسال دادههاي محرمانه • رمزگشائي • تبديل كدها به يكديگر هنگام استفاده دو ماشين از استانداردهاي مختلفي براي متن
لايه كاربردApplication Layer • تعريف استانداردهائي نظير : • انتقال نامههاي الكترونيكي • انتقال مطمئن فايل • دسترسي به بانكهاي اطلاعاتي راه دور • مديريت شبكه • انتقال صفحه وب مدلOSI
تعريف لايههاي استاندارد سختافزار، نرمافزارهاي راهانـداز و پـروتـكلـهاي شبـكه در اين لايه. پروتكلهائي كه در لايه اول از مدل TCP/IP تعريف ميشوند، ميتوانند مبتني بر ارسال رشته بيت يا مبتني بر ارسال رشته بايت باشند. لايه اول از مدل TCP/IP : لايه واسط شبكه • بستههاي IP بستـههـاي اطلـاعـاتي در ايـنلايه • هدايت بستههاي IP روي شبكه از مبدأ تا مقصد كه اين عمل از نوع بدون اتصال ميباشد • ويژگي ارسال چندپخشي يعني ارسال يك يا چند بسته اطلاعاتي به چنـدين مقصـد گوناگون در قالب يك گروه سازماندهيشده • پروتكلهائي كه در اين لايه استفاده ميشوند عبارتند از: • IP , IGMP , BOOTP , ARP , RARP , RIP , ICMP و . . لايه دوم از مدل TCP/IP : لايه شبكه
لايه سوم از مدل TCP/IP : لايه انتقال برقراري ارتباط از طـريق يـكسرويس اتصالگرا و مطمئـن با ماشينهاي انتهايي يا ميزبان. ارسال و يا دريافت دادههاي تحويلي به اين لايه توسط برنامههاي كاربردي و از طريق توابع سيستمي لايه چهارم از مدلTCP/IP : لايه كاربرد خدماتي كه در اين لايه صورت ميگيرد در قالب پروتكلهاي استاندارد زير به كاربر ارائه ميشود : شبيهسازي ترمينال انتقال فايل يا FTP مديريت پست الكترونيكي خدمات انتقال صفحات ابرمتني
کانالهاي انتقال وظيفه سخت افزار انتقال در لايه واسط شبکه:انتقال بيتهاي داده بر روي کانال فيزيکي بدون توجه به نوع و محتواي دادها • خطوط تلفن • فيبرهاي نوري • سيمهاي به همبافتهشدة زوجي • كابلهاي هممحور (كواكسيال) • كانالهاي ماهوارهاي • كانالهاي راديويي • امواج طيف نوري
سيمهاي به هم بافته شده زوجي: • UTP : يك زوج سيم معمولي به هم بافته شده • STP : يك زوج سيم معمولي به هم بافته شده به همراه يك پوشش آلومينيمي بر روي آنها جهت كاهش اثر نويزهاي محيطي بر روي سيم (a) Category 3 UTP. (b) Category 5 UTP. كابلهاي هممحور (كواكسيال): در انواع مختلف مانند: كابل كواكس 50 اهم ضخيمTick Coaxial Cable كابل كواكس 50 اهم نازكThin Coaxial Cable كابل كوآكس 75 اهم معمولي)
كانالهاي ماهوارهاي : در باندهاي فركانسي مختلف مانند: • باند C • باند Ku • باند Ka كانالهاي راديويي : شامل باندهاي فركانسي مختلف مثل UHF ، VHF امواج طيف نوري: شامل نور مادون قرمز فيبرهاي نوري:در انواع مختلف مثل فيبر تكموده و چندموده
توضيح قيمت پياده سازي خطا پهناي باند نوع كانال كم (حدود 4KHz ) خطوط تلفن معمولي از قبل وجود دارد ارزان ساده زياد متوسط ( حدود جند ده تاصد مگاهرتز ) ارزان ساده متوسط زوج سيم براي فواصل كوتاه مناسب است متوسط متوسط كم حدود جند صد مگاهرتز كابلهاي كواكس فيبرهاي نوري حدود جند گيگا هرتز بهترين كارايي متوسط پيچيده بسيار كم كانالهاي ماهواره در همه جا تحت پوشش گران بسيارپيچيده متوسط حدود جند صد مگا هرتز كانالهاي راديويي در جايي كه كابل كشي عقلايي نيست مناسب مي باشد . نسبتا گران نسبتاپيچيده زياد حدود جند مگا هرتز مقايسه مشخصاتبرخي از كانالهاي انتقال
پهناي باند: توانايي و ظرفيت كانال در ارسال اطلاعات با نرخ B بيت در هر ثانيه رابطه شانون: C=B.log2(1+S/N) C : ظرفيت كانال بر حسب بيت بر ثانيه S : متوسط توان سيگنال N : متوسط توان نويز B : پهناي باند كانال بر حسب هرتز
کلاسA کلاسC کلاسهايآدرس IP کلاسB کلاسE کلاسD تقسيم 32 بيتآدرس IP به قسمتهاي : آدرس ماشين/ آدرس زيرشبکه/ آدرس شبکه
مقدرا پرارزشترين بيت = 0 • 7 بيت از يک بايت اول = مشخصه آدرس IP • 3 بايت باقيمانده مشخصکننده آدرس ماشين ميزبان • بايت پرارزش در محدوده صفر تا127 آدرسهاي کلاس A 1.0.0.0 to 127.255.255.255 Host ID Network 0 32 bits Network ID = 7Bit 15 0 0
مقدار دو بيت پرارزش = 10 • 14 بيت از دو بايت سمت چپ = آدرس شبکه • دو بايت اول از سمت راست = آدرس ماشين ميزبان کلاس B Host ID Network ID 10 32 bits Network ID = 14 Bit 192.0.0.0 to 239.255.255.255 Host ID Network
مناسبترين و پرکاربردترين کلاس از آدرسهاي IP • مقدار سه بيت پرارزش = 110 • 21 بيت از سه بايت سمت چپ = مشخصکننده آدرس شبکه • 8 بيت سمت چپ = آدرس ماشين ميزبان کلاس C 240.0.0.0 to 247.255.255.255 Host ID Network ID 110 32 bits
مقدار چهار بيت پرارزش = 1110 • 28 بيت = تعيين آدرسهاي چند مقصده ( آدرسهاي گروهي ) • کاربرد = عمليات رسانهاي و چند پخشي کلاسD Multicast Address 1110 32 bits
مقدار پنج بيت پرارزش = 11110 کلاس E Unused Address Space 11110 32 bits
آدرسهاي خاص آدرس 255 NetID. آدرس 255.255.255.255 آدرس خاص آدرس 0.0.0.0 آدرس 0. HostID آدرس .XX.YY.ZZ127 در بين تمام کلاسهاي آدرس IP با پنج گروه از آدرسها نمي توان يک شبکه خاص را تعريف و آدرسدهي نمود.
آدرس 0.0.0.0: هر ماشين ميزبان كه از آدرس IP خودش مطلع نيست اين آدرس را بعنوان آدرس خودش فرض ميكند. آدرس 0. HostID : اين آدرس زماني به كار ميرود كه ماشين ميزبان ، آدرس مشخصة شبكهاي كه بدان متعلق است را نداند. در اين حالت در قسمت NetID مقدار صفر و در قسمت HostID شمارة مشخصة ماشين خود را قرار ميدهد. 0
آدرس 255.255.255.255: جهت ارسال پيامهاي فراگير براي تمامي ماشينهاي ميزبان بر روي شبكة محلي كه ماشين ارسالكننده به آن متعلق است . آدرس 255 NetID. : جهت ارسال پيامهاي فراگير براي تمامي ماشينهاي يك شبكة راه دور كه ماشين ميزبان فعلي متعلق به آن نيست. آدرس 127.xx.yy.zz : اين آدرس بعنوان “آدرس بازگشت” شناخته ميشود و آدرس بسيار مفيدي براي اشكالزدايي از نرم افزار ميباشد.
1) مفاهيم اوليه مسيريابي 3 B C مسيرياب 5 2 5 1 A F 3 2 1 2 D E زيرساخت ارتباطي يك شبكة فرضي 1 مسيرياب: ابزاري است براي برقراري ارتباط دو يا چند شبکه زيرساخت ارتباطي: مجموعه مسيريابها و کانالهاي فيزيکي ما بين آنها الگوريتمهاي مسيريابي : روشهايي براي پيدا کردن مسيري بهينه ميان دومسيرياب به گونهاي که هزينه کل مسير به حداقل برسد.
برخي اصطلاحات کليدي در مسيريابي • آدرسهاي MAC: • آدرسهاي لايه فيزيکي جهت انتقال فريمها بر روي کانال • اندازه آدرس وابسته به پروتکل و توپولوژي شبکه • تغيير آدرسهاي MAC بستههاي اطلاعاتي هنگام عبور از مسيريابهاي موجود در مسير • آدرسهاي IP : • آدرسهاي جهاني و منحصر به فرد • مشخصکننده يک ماشين فارغ از نوع سخت افزار و نرم افزار آن • ثابت بودن آدرسهاي IP بسته هاي اطلاعاتي هنگام عبور از مسيريابهاي موجود در مسير • بسته IP: • واحد اطلاعاتي با اندازه محدود
توپولوژي شبكه: • مجموعه مسيريابها و كانالهاي فيزيكي ما بين آنها در زيرساخت ارتباطي يك شبكه • متغير با زمان • ترافيك شبكه: • تعداد متوسط بستههاي اطلاعاتي ارسالي و يا دريافتي روي يك كانال در واحد زمان • متغير با زمان • گام يا Hop: • عبور بسته از يك مسيرياب = گام • تعداد مسيريابهاي موجود در مسير يك بسته = تعداد گام = Hop Count • ازدحام يا Congestion: • بيشتر بودن تعداد متوسط بستههاي ورودي به يك مسيرياب از تعداد متوسط بسته هاي خروجي • بن بست Deadlock: • پايان طول عمر بستهها
لايه IP • هدايت و مسيريابي بستههاي اطلاعاتي از يک ماشين ميزبان به ماشين ديگر • عدم حل مشکلات احتمالي به وجود آمده براي بستههاي IP در مسير لايه انتقال • فراهم آوردن خدمات سازماندهيشده, مبتني بر اصول سيستم عامل, براي برنامههاي کاربردي در لايه بالاتر • جبران کاستيهاي لايه IP
کاستيهاي لايه IP راهکارهاي پروتکل TCP • برقراري يک ارتباط و اقدام به هماهنگي بين مبدأ و مقصد قبل از ارسال هر گونه داده • عدم تضمين درآمادهبودن ماشين مقصد جهت دريافت بسته • عدم تضمين در به ترتيب رسيدن بستههاي متوالي و دادهها و صحت آنها • قراردادن شماره ترتيب براي دادهها • تنظيم کد 16 بيتي کشف خطا در مبدأ و بررسي مجدد آن در مقصد جهت اطمينان از صحت دادهها
کاستيهاي لايه IP راهکارهاي پروتکل TCP • قرار دادن شماره ترتيب در بسته ارسالي • عدم تمايز در دريافت بستههاي تکراري در مقصد ( Duplication Problem) • استفاده از الگوريتم پويا جهت تنظيم مجموعه زمانسنجها • عدم توزيع بستهها بين پروسههاي مختلف اجرا شده بر روي يک ماشين واحد • قراردادن آدرس پورت پروسه فرستنده و گيرنده در سرآيند بسته ارسالي • عدم تنظيم سرعت ارسال و تحويل بستهها
آدرس پورت شماره پورتهاي استاندارد شماره شناسايي مشخصکننده هر پروسه براي برقراري يک ارتباط با پروسهي ديگر بر روي شبکه Port Protocol Use 21 FTP File transfer 23 Remote login Telnet E-mail 25 SMTP 69 TrivialFileTransferProtocol TFTP Finger Lookup info about a user 79 80 World Wide Web HTTP POP-3 110 Remote e-mail access USENET news 119 NNTP
آدرس سوکت زوج آدرس IP و آدرس پورت مشخصکننده يک پروسه يکتا و واحد بر روي هر ماشين در دنيا 193.142.22.121 : مثال 80 (IP Address: Port Number)= Socket Address
ساختار بسته هاي پروتکلTCP • TPDU = Transport Protocol Data Unit= بسته توليد شده در لايه انتقال = قطعهTCP
فيلد Source Port • فيلد 16بيتي • آدرس پورت پروسه مبدأ • فيلد 16 بيتي • آدرس پورت پروسه مقصد فيلد Destination Port فيلد Sequence Number • فيلد 32 بيتي • مشخص کننده شماره ترتيب آخرين بايت قرارگرفته شده در فيلد داده از بسته جاري
فيلد Acknowledgement Number • فيلد 32 بيتي • مشخصکننده شماره ترتيب بايتي که فرستنده بسته منتظر دريافت آن است فيلد TCP Header Lenght • فيلد 4 بيتي • مشخص کننده طول سرآيند بسته TCPبرمبناي کلمات 32 بيتي • حداقل مقدار = 5 • تعيين کننده محل شروع دادهها در بسته TCP
6 بيت بلااستفاده 6 بيت بلااستفاده جهت استفاده درآينده 6 بيتي مقدار فيلد = 1 نشان دهنده معتبر بودن مقدار موجود در فيلد Urgent Pointer مقدار فيلد = 0 نشان دهنده نا معتبربودن مقدار موجود در فيلد Urgent Pointer PSH RST SYN FIN URG ACK بيتهايFlag بيت URG
بيت ACK بيت PSH( (PUSH مقدار فيلد = 1 نشاندهنده تقاضاي فرستنده اطلاعات از گيرنده اطلاعات جهت بافرنکردن دادههاي موجود در بسته و تحويل سريع بسته به برنامههاي کاربردي به منظور انجام پردازشهاي بعدي مقدار فيلد = 1 نشاندهنده قطع ارتباط به صورت يکطرفه و ناهماهنگ بيت RST PSH RST SYN FIN URG ACK مقدار فيلد = 1 نشاندهنده معتبر بودن مقدار موجود در فيلد Acknowledgement Number
بيتSYN تغيير مقدار اين فيلد جهت برقراري ارتباط توسط ماشين روند برقراي ارتباط TCP الف) تنظيم بيتهاي 0ACK= و SYN=1 توسط شروع کننده ارتباط در يک بسته TCP بدون داده (تقاضاي برقراري ارتباط = Connection Request ) ب) تنظيم بيتهايSYN=1 و ACK=1در صورت قبول طرف دريافتکننده بسته تقاضاي برقراري ارتباط به برقراري ارتباط
مشخصکننده قطع و پايان ارسال اطلاعات هنگام اتمام دادههاي ارسالي توسط طرفين با 1 نمودن مقدار اين بيت هنگام ارسال آخرين بسته قطع کامل ارتباط: 1 نمودن مقدار اين فيلد توسط هر دو ماشين فرستنده و گيرنده قطع ارتباط يکطرفه: 1 نمودن مقدار اين فيلد توسط يکي از طرفين ارتباط بيتFIN فيلد Windows Size مشخص کننده مقدار ظرفيت خالي فضاي بافر گيرنده
فيلد 16 بيتي • حاوي کد کشف خطا فيلد Checksum طريقه محاسبه کد کشف خطا • تقسيم کل بسته TCP به قالبهاي 16 بيتي ( منهاي قسمت Checksum ) • ايجاد يک سرآيند فرضي و تقسيم آن به صورت کلمات 16 بيتي • جمع تمامي کلمات در مبناي مکمل 1 و منفي نمودن عدد حاصل در مبناي مکمل 1 و قرارگرفتن عدد حاصل در فيلد Checksum جمع کل کلمات 16 بيتي موجود در بسته TCP + سرآيند فرضي = 0 عدم بروز خطا در حين ارسال دادهها
ساختار سرآيند فرضي • 32 بيت آدرس IP ماشين مبدأ • 32 بيت آدرس IP ماشين مقصد • يک فيلد 8 بيتي کاملاً صفر • فيلد 8 بيتي پروتکل که براي پروتکل TCP = 6 • فيلد TCP Segment Length = طول کل بسته TCP
فيلد Urgent Pointer اشاره گر به موقعيت دادههاي اضطراري موجود در بسته TCP فيلدOption • فيلد اختياري • شامل مقدار حداکثر طول بسته • قراردادن کدهاي بي ارزش در اين فيلد به جهت آنکه طول بسته ضريبي از 4 باقي بماند
روش برقراري ارتباط در پروتکل TCP روش دست تکاني سه مرحلهاي • مرحله اول: • ارسالِ يک بسته TCP خالي از داده از طرف شروعکننده ارتباط با بيتهاي SYN=1 و ACK=0 و قراردادن عدد x درون فيلد شماره ترتيب • اعلام شروع ترتيب دادههاي ارسالي از x+1 به ماشين طرف مقابل • پيشگيري از مساوي بودن شماره ترتيب دادههاي ارسالي با انتخاب مقدار x به صورت تصادفي
روش دست تکاني سه مرحلهاي • مرحله دوم : • رد تقاضاي برقراري ارتباط: ارسال بستهاي خالي با بيت RST=1 • قبول تقاضاي برقراري ارتباط: ارسال بسته خالي با مشخصات زيراز طرف گيرنده بسته تقاضا: • بيت SYN = 1 • بيت ACK = 1 • Acknowledgement = x+1 • Sequence Number = y
روش دست تکاني سه مرحلهاي • مرحله سوم: • تصديق شروع ارتباط از طرف شروعکننده ارتباط با قراردادن مقادير زير در بيتهاي: • SYN = 1 • ACK = 1 • Acknowledgement Number = y + 1 • Seq. No = x + 1
SYN=1 Sequence Number=x 1 SYN=1, ACK=1 Sequence Number=y Sequence Number=x+1 2 SYN=1, ACK=1 Sequence Number=x+1 Ack.Number=y+1 3 مراحل دست تكاني سه مرحله اي براي برقراري ارتباط در پروتكلTCP