دانلود - دانشگاه شاهد
Download
Report
Transcript دانلود - دانشگاه شاهد
شبکه هاي کامپيوتري
فصل چهارم:
اليه پيوند داده ()Datalink Layer
وحيد حقيقت دوست
دانشکده فني و مهندس ي دانشگاه شاهد
1
مطالب اين فصل
2
مقدمه
فريم بندي
روشهاي تشخيص و تصحيح خطا
كنترل جريان
استاندارد IEEEبراي شبكه هاي كامپيوتري
استاندارد شبكه هاي محلي بي سيم
مقدمه
در مباح
وظايف اين اليه:
3
فريم بندي
كنترل خطا
كنترل جريان
كنترل دسترس ي به رسانه
فريم بندي
روشهاي ساختن فريم:
بر اساس شمارش كاراكتر
استفاده از فلگ آغازي و فلگ پاياني
4
قرار دادن يك سري كاراكتر خاص براي مشخص كردن شروع و انتهاي يك فريمDLE- :
STXو DLE-ETX
بايت گرا :درج بايت ( )Byte Stuffingدر صورت وجود کاراکترهاي خاص در الگوي
بيتي
بيت گرا :استفاده از روش درج بيت ( )Bit Stuffingکه پس از 5بيت متوالي يک
بيت صفر درج ميشود و در گيرنده حذف ميشود .وجود 6بيت متوالي 1بيانگر بايت آغاز
و يا انتهاي فريم است
قاب بندي و استفاده از روش بايت گرا
(a) A frame delimited by flag bytes.
(b) Four examples of byte sequences before and after stuffing.
5
قاب بندي و استفاده از روش بيت گرا
Bit stuffing
(a) The original data.
(b) The data as they appear on the line.
(c) The data as they are stored in receiver’s memory after destuffing.
6
روشهاي تشخيص و تصحيح خطا
7
روش توازن (فرد يا زوج)
روش CRC
Check sum
مثالي از محاسبه CRC
8
9
كنترل جريان
ترتيبي اتخاذ شود كه فرستنده بيشتر از ظرفيت گيرنده داده ارسال نكند.
پيش فرضها (حالت ايده آل) :
پروتكل پنجره لغزان
10
حجم بافر نامحدود در گيرنده
كانال ارتباطي بدون خطا
استفاده بهینه از خط
مقابله با خطا و نویز
استفاده از سه مولفه اصلی Acknowledge ،timeout :و
window size
سلسله مراتب مربوط به پروتکلهاي کنترل جريان
Reliable Transmission ARQ (Automatic Repeat Request)
11
پروتکل Simplestبدون کنترل خطا و جريان
12
پروتکل Simplest
الگوريتم ارسال در فرستنده
الگوريتم دريافت در گيرنده
13
مدل جريان در Simplest
14
پروتکل ( Stop & Waitتوقف و انتظار)
گيرنده ،پس از دريافت پيام ،بسته
اعالم وصولي ( )ACKارسال ميکند
15
تبادل بسته ها در روش Stop&Wait
16
اين روش هم در کانالهاي داراي نويز استفاده ميشود و هم در کانالهاي
بدون نويز
17
ظرفيت کانال و بهره وري
ظرفيت برابر است با تعداد بيتي که ميتواند درون کانال قرار گيرد و از رابطه زير محاسبه ميشود:
ظرفيت کانال = تاخير انتشار × نرخ ارسال
بهره وري کانال برابر است با نسبت تعداد بيت موجود در کانال به ظرفيت کانال .ويا نسبت زمان
ارسال يک بسته به کل زمان مورد نياز براي ارسال و دريافت
مثال :يک کانال ماهواره با سرعت 50kbpsکه تاخير انتشار رفت و برگشت در آن 500ميلي
ثانيه است چنانچه فرستنده يک قاب 1000بيتي را در مدت زمان 20ميلي ثانيه ارسال دارد،
بهره وري را حساب کنيد.
تاخير رفت
زمان مورد نياز براي دريافت کامل بسته
250 m sec
500
2
20 250 270 m sec
زمان مورد نياز براي ارسال و دريافت 270 250 520 m sec ACK
بهره وري خط
18
3 .8 %
20
520
U
الگوريتم پنجره لغزان
19
همانطور که در مثال قبل نشان داده شد تنها حدود %4از توانايي خط استفاده شده است
يکي از داليل پايين بودن کارايي الگوريتم ،Stop&Waitمعطل شدن فرستنده براي دريافت
ACKميباشد.
براي رفع مشکل فوق ميتوان اين محدوديت را از فرستنده برداشت و به آن اين اجازه را داد که
بطور مداوم و پشت سر هم اقدام به ارسال قاب نمايد؛گيرنده نيز در اين روش آمادگي دريافت
چندين قاب را دارد و پس از دريافت هر قاب و يا چند قاب پيام اعالم وصولي را ارسال مي نمايد.
به اين روش پنجره لغزان ميگويند.
پنجره فرستنده :قابهايي است که فرستنده بدون دريافت پيام ، ACKقاب قبلي قادر به ارسال
آنهاست
پنجره گيرنده :تعداد قابهايي که ميتوانند بدون رعايت ترتيب در گيرنده دريافت شوند.
شماره گذاري قابها
رابطه زير بايد بين شماره گذاي قابها و طول پنجره هاي ارسال و دريافت
وجود داشته باشد:
Max Seq. Number ≥ Send Window + Receive Window
20
اگر mبیت برای شماره گذاری استفاه شود 2mشماره مجزا ایجاد
میگردد.
عملکرد مکانيسم پنجره لغزان در فرستنده و گيرنده
کانالهاي نويزي
درکانالهاي نويزي اين امکان وجود دارد که بسته ارسال شده و يا پيام اعالم
وصولي در اثر نويز از بين بروند لذا در اليه 2بايد تمهيداتي براي تشخيص و اصالح
خطا وجود داشته باشد و بسته مجدد ارسال گردد.
دو ويژگي اصلي در اين الگوريتمها وجود دارد:
در ادامه دو روش زير مورد بررس ي قرار خواهند گرفت:
22
Timeout
Acknowledge
Go-Back-N Automatic Repeat Request
Selective Repeat Automatic Repeat Request
Go-Back-N
23
بهبود Stop-and-Waitتوسط عدم انتظار براي ارسال
مشغول نگه داشتن کانال با ارسال بستهها به طور پيوسته
اجازۀ ارسال به اندازۀ پنجره اي به اندازۀ Wsفريم
از mبيت براي شمارۀ ترتيب استفاده ميکند.
اگر ACKقديمي ترين فريم پيش از اتمام اندارۀ پنجره برسد ميتوانيم
به ارسال ادامه دهيم.
اگر پنجره کامل شود ،فريمها دوباره ارسال ميشوند.
در این روش از timeoutدر فرستنده استفاده میشود.
پنجره ارسال در Go-Back-N ARQ
24
پنجره دريافت در Go-Back-N ARQ
طول پنجره دريافت در Go-Back-Nبرابر 1است.
در صورت خراب شدن يک بسته از طريق ،Time outتمامي بسته ها مجدد ارسال ميشوند
25
انتخاب تکراري Selective Repeat ARQ
ً
GBN ARQکارا نبود زيرا چندين فريم در صورت بروز خطا مجددا ارسال
ميشدند.
روش انتخاب تکراري تنها يک فريم را دوباره ارسال ميکند.
گيرنده يک پنجرۀ دريافت از شماره ترتيبهايي که ميتواند دريافت کند نگه ميدارد.
26
Timeoutباعث ميشود تنها فريم مربوطه دوباره ارسال شود.
NAKباعث ارسال مجدد قديمي ترين فريمي که ACKنشده است ميشود.
فريمهاي بدون خطا ولي خارج از ترتيب که شماره ترتيب آنها در پنجرۀ دريافت هست بافر
ميشوند.
دريافت فريم با شمارۀ Rباعث ميشود پنجره يکي يا چند خانه به جلو بلغزد.
پنجره دريافت در Selective Repeat ARQ
طول پنجره دريافت بزرگتر از 1است.
دريافت يک بسته خارج از نوبت ولي در بازه پنجره دريافت باعث ارسال پيام ارسال مجدد
ميشود.
ً
معموال از متد ACK( Cumulative ACKتجمعي) استفاده ميشود
27
فرستنده بجاي ارسال ACKبراي هر قاب ،پس از دريافت چندين قاب شماره آخرين قاب را اعالم وصولي
ميکند و گيرنده در صورت دريافت ACKيک قاب تمام قابهاي قبلي را تاييد شده فرض ميکند.
Selective Repeat وGoback-N بررس ي دو روش
Goback-N
Selective Repeat
28
Stop-and-Wait محاسبه کارايي مدل
t0 = total time to transmit 1 frame
A
tproc
B
tprop
frame
tf time
tproc
tack
t 0 2 t prop 2 t proc t f t ack
2 t prop 2 t proc
nf
R
na
tprop
bits/info frame
bits/ACK frame
R
channel transmission rate
29
بر روي کانال بدون خطاS&W کارايي
bits for header & CRC
Effective transmission rate:
R
0
eff
number of informatio n bits delivered to destinatio n
total time required to deliver th e informatio n bits
n f no
0
0
R
nf
n f 2 t prop R
,
t0
≈0
Transmission efficiency:
R eff
n f no
t0
1
nf
R
1
≈0
Effect of
frame overhead
no
na
nf
Effect of
ACK frame
2 ( t prop t proc ) R
nf
Effect of
.
≈0
Delay-Bandwidth Product
30
تأثير حاصلضرب تأخير – پهناي باند: مثال
nf=1250 bytes = 10000 bits, na=no=25 bytes = 200 bits
2xDelayxBW
Efficiency
1 Mbps
1 Gbps
1 ms
200 km
103
88%
106
1%
10 ms
100 ms
1 sec
2000 km 20000 km 200000 km
104
105
106
49%
9%
1%
107
108
109
0.1%
0.01%
0.001%
. براي سرعتهاي خيلي باال و تأخير انتشار بزرگ مناسب نيستStop-and-Wait
0
nf
n f 2 t prop R
1250
1250 1000 / 8
90 . 9 %
31
کارايي S&Wدر کانال با خطا
= 1 – Pfاحتمال اينکه فريم بدون خطا برسد
متوسط تعداد ارسالها براي اولين دريافت بدون خطا ) 1/ (1–Pfاست.
اگر يکي از هر 10ارسال بدون خطا برسد بطور متوسط 10ارسال براي موفقيت الزم است.
متوسط زمان کلي براي هر فريم برابر با ) t0/(1 – Pfخواهد بود.
n f no
no
) (1 P f
Effect of
frame loss
1
nf
2 ( t prop t proc ) R
nf
na
1
R
R eff
R
SW
nf
) (1 P f
32
1 Pf
t0
nf
n f 2 t prop R
sw
تأثير نرخ خطاي بيت: مثال
nf=1250 bytes = 10000 bits, na=no=25 bytes = 200 bits
Find efficiency for random bit errors with p=0, 10-6, 10-5, 10-4
1 P f (1 p )
1 – Pf
nf
e
n f p
for large n f and small p
0
10-6
10-5
10-4
1
88%
0.99
86.6%
0.905
79.2%
0.368
32.2%
Efficiency
1 Mbps
& 1 ms
. نزديک ميشود1 بهnfp خطاهاي بيت کارايي را تحت تأثير قرار ميدهد در حالي که
33
Go-Back-N ARQ
4 frames are outstanding; so go back 4
Time
fr
8
fr
9
fr
5
fr
6
fr
7
fr
4
fr
3
fr
6
Go-Back-4:
fr
4
fr
5
fr
2
fr
3
fr
1
fr
0
A
B
9
34
A
C
K
9
A
C
K
8
A
C
K
7
A
C
K
6
A
C
K
5
8
7
6
5
4
A
C
K
4
out of sequence
frames
3
A
C
K
2
A
C
K
3
3
A
C
K
1
2
1
ارسال فريمها به صورت خط لولۀ موازي انجام ميشود تا کانال مشغول نگه داشته شود.
فريمهاي حاوي خطا و فريمهاي خارج از ترتيب ناديده گرفته ميشوند.
ارسال کننده زماني که پنجرۀ با اندازۀ 4پر ميشود ،مجبور ميشود به عقب برود.
0
Rnext
مقدار بهینه برای طول پنجره چقدر است
طول پنجره باید به اندازه ای باشد تا در تمام زمانها کانال پر باشد.
اگر طول پنجره کوچک باشد تعداد قابهای معلق کم خواهند بود و از
پهنای باند استفاده مناسب انجام نخواهد شد
اگر طول پنجره بزرگ باشد در الگوریتم Go Back-Nبسیار دیر
متوجه خطا میشویم و ارسال مجدد را دیر انجام میدهیم.
طول قابnf :
نرخ ارسال R :
تاخير انتشارtprop :
T full trans 2 t prop t frame
nf
R
t prop
35
زمان ارسال یک فریم
t frame
1 2
2 t prop t frame
t frame
t frame
T full trans
t frame
opt
Win
Go-Back-N with Timeout
مشکل Go-Back-Nمعرفي شده:
براي هر فريم از يک timeoutاستفاده شود:
36
اگر فريم گم شود و منبع فريم براي ارسال نداشته باشد ،پنجره پر نمي
شود و بازيابي آغاز نمي شود.
زماني که timeoutمنقض ي ميشود ،تمام فريمها ارسال مجدد
ميشوند.
کارايي روش Go-Back-N
برای کارایی روش Go Back-Nسه حالت را میتوان در نظر گرفت
حالت اول) اگر طول پنجره ارسال به اندازه کافی بزرگ باشد و خطا نداشته باشیم.
حالت دوم) طول پنجره ارسال کافی است ولی خطا وجود دارد.
حالت سوم) طول پنجره کافی نیست و خطا نيز وجود دارد.
حالت اول) در این حالت کارایی برابر است با
1
n f n0
nf
1
GBN
حالت دوم) اگر احتمال ارسال موفق یک فریم (ارسال صحیح فریم و دریافت )ACKبرابر Psuccess
باشد
Time out
تعداد ارسال مجدد
T full trans t frame N retransmit T o
1
1
Psuccess
N retransmit
t frame
37
1
1 T o
Psuccess
t frame
2
GBN
کارايي روش ( Go-Back-Nادامه)
حالت سوم) اگر کانال دارای خطا باشد و طول پنجره ارسال کمتر از woptباشد.
w send
w opt
تاثير پنجره کوچک
Time out
38
t frame
1
1 T o
Psuccess
t frame
3
GBN
کارایی روش تکرار انتخابی
w send
w opt
تاثير پنجره کوچک
حداکثر مقدار این املان
باید 1باشد
39
Psuccess
تاثير خطای کانال
n f n0
nf
SRPT
تاثير سربار قاب بندی
ً
تقریبا برابر 1است
مثال :تأثير نرخ خرابي بيت بر GBN
nf=1250 bytes = 10000 bits, na=no=25 bytes = 200 bits
مقايسۀ کارايي S&Wو GBNبراي خطاي بيت تصادفي:
p = 0, 10-6, 10-5, 10-4 and R = 1 Mbps & 100 ms
1 Mbps x 100 ms = 100000 bits = 10 frames → Use Ws = 11
40
10-4
10-5
10-6
0
Efficiency
3.3%
8.0%
8.8%
8.9%
S&W
4.9%
45.4%
88.2%
98%
GBN
بهبود قابل مالحظۀ GBNنسبت به S&Wبراي Delay-bandwidth productهاي بزرگ
GBNدر صورت رشد نرخ خطا کارايي خود را از دست ميدهد.
مثال
یک سری فریمهای 1000بیتی را میخواهیم به کمک پنجره لغزان ارسال
کنیم .راندمان خط را برای حاالت زیر با فرض سرعت انتشار 2*108
m/sمحاسبه نمایید:
41
الف) خط انتقال بطول 1 kmو سرعت ارسال 1 Mbpsو اندازه پنجره 2
ب) خط انتقال ماهواره ای بطول 50000 kmو سرعت 2 Mbpsو
اندازه پنجره 127
یک سری فریمهای 1000بیتی را میخواهیم به کمک پنجره لغزان ارسال کنیم .راندمان خط را برای حاالت زیر با
فرض سرعت انتشار 2*108 m/sمحاسبه نمایید:
الف) خط انتقال بطول 1 kmو سرعت ارسال 1 Mbpsو اندازه پنجره 2
3
sec
6
5 10
8
sec
6
1 . 001
5 10
3
3
10
1 2
10
t prop
2 10
3
6
10
10
1 10
t prop
t frame
t frame
w opt 1 2
w send w opt 1
ب) خط انتقال ماهواره ای بطول 50000 kmو سرعت 2 Mbpsو اندازه پنجره 127
6
0 . 25 sec
50 10
8
2 10
3
sec
1001
42
0 . 25
4
0 . 127
5 10
127
1001
4
5 10
1 2
6
10
2 10
t prop
t frame
t prop
t frame
w opt 1 2
w send 127 w opt
كنترل دسترس ي به كانال ()MAC
به طور كلي دو روش تخصيص كانال :
ديناميك
43
روشهايي كه احتمال تصادم در آنها وجود نداردToken Passing،Binary Countdown ،Bitmap( .
روشهاي ترکیبی
استاتيك
ALOHA
SLOTTED ALOHA
CSMA
روشهايي كه احتمال تصادم در آنها وجود دارد)CSMA/CD ،CSMA ،SLOTTED ALOHA ،ALOHA(.
:Persistentبه طور مداوم چك مي شود.
: Non Persistentبعد از زماني تصادفي چك مي شود( .مثال كار اداره و مالقات با رئيس اداره)
: CSMA/CDبه محض تشخيص برخورد از ارسال مابقي داده جلوگيري و سيگنال Jamبه سايرين ارسال مي كند .الگوريتم
Back-Offزمان بعدي كه كامپيوترهاي دچار تصادم بايد دوباره ارسال كنند را مشخص ميكند.
Bitmapيا رزروسازي :آرايه اي به تعداد كامپيوترهاي شبكه كه از رسانه مشترك استفاده ميكنند ،درست ميشود.
: Binary Countdownاز طريق دادن شماره به هر ايستگاه و هنگام رقابت اولويت با شماره بيشتر است.
:Token Passingهر ايستگاهي براي ارسال بايد نشانه را در اختيار داشته باشد.
درخت وفقي :به كمك درخت و دسته بندي در شاخه ها دسترس ي كنترل مي شود.
MAC Sub-layer
OSI
IEEE 802
Network layer
LLC
Network layer
802.2 Logical link control
Data link
layer
MAC
Physical
layer
802.11
802.3
802.5
CSMA-CD Token Ring Wireless
LAN
Various physical layers
Other
LANs
Physical
layer
44
استانداردهايIEEEبراي شبكه هاي محلي
در سال 1980اولين گروه IEEEبراي استانداردسازي در زمينه شبكه هاي اطالعاتي شكل گرفت.
: IEEE 802.1 پروتكلهاي اليه باالتر در LAN
:IEEE 802.2 زيراليه LLCاز پيوند داده
:IEEE 802.3 شبكه محلي اترنت
:IEEE 802.4 شبكه محلي Token Bus
:IEEE 802.5 شبكه محلي Token Ring
:IEEE 802.11 شبكه محلي بيسيم
45
IEEE 802.3
در سال 1973توسط متكالف در آزمايشگاه زيراكس به وجود آمد.
IEEE 802.3
46
10Base5
10Base2
10BaseT
10BaseF
10Base5 implementation
47
حداكثر 500متر
از تكرارگر تا 4مرتبه مي توان استفاده كرد
به صورت يك در ميان مي توان به سگمنتها كامپيوتر وصل كنيد
سرعت 10مگابيت و روش انتقال سيگنال پايه
براي اتصال كامپيوتر به آن از يك كابل AUIو يك Transceiverاستفاده مي شود.
10Base2 implementation
حداكثر 185متر
از تكرارگر تا 4مرتبه مي توان استفاده كرد
به صورت يك در ميان مي توان به سگمنتها كامپيوتر وصل كنيد .هر سگمت حداكثر 30
سرعت 10مگابيت و روش انتقال سيگنال پايه
براي اتصال كامپيوتر به آن از يك اتصال دهنده Tشكل BNCاستفاده مي شود.
13.48
10Base-T implementation
49
حداكثر 100متر
از تكرارگر تا 4مرتبه مي توان استفاده كرد
سرعت 10مگابيت و روش انتقال سيگنال پايه و از كابلهاي UTPاستفاده مي شود.
توپولوژي آن ستاره اي است.
براي اتصال كامپيوتر به آن از يك اتصال دهنده RJ45استفاده مي شود.
10Base-F implementation
50
حداكثر 2كيلومتر براي تك حالته و 3كيلومتر براي چندحالته
سرعت 10مگابيت و روش انتقال سيگنال پايه
از دو زوج رشته فيبر براي ارسال و دريافت استفاده مي شود.
از كانكتورهاي STيا SCاستفاده مي شود.
ساختار فريم اترنت
51