2008
dce
©2008, Dr. Dinh Duc Anh Vu
22
Data Communication and Computer Networks
Go–back–N
•
Cơ chế
hoạt động
–
Điều khiển
•
RR = receive ready = ACK = acknowledgement
•
REJ = reject = NAK = negative acknowledgement
–
Dựa trên cơ chế
sliding window
•
A gởi liên tục các I-Frame đến B (trong khi cơ chế điều
khiển dòng còn cho phép)
•
B chỉ
nhận I-Frame theo đúng chỉ
số
tuần tự
•
Truyền lại tất cả
các Frame kể
từ Frame sai đầu tiên trở
đi
2008
dce
©2008, Dr. Dinh Duc Anh Vu
23
Data Communication and Computer Networks
Go–back–N –
Các trường hợp lỗi
•
Các kiểu lỗi tương tự như trong Idle RQ (có
thể
xảy
ra đồng thời trên nhiều frame)
–
(E1) I-Frame không đến được bên nhận
–
(E2) I-Frame đến được bên nhận, nội dung I-Frame sai
–
(E3) ACK-Frame không đến được bên gửi
2008
dce
©2008, Dr. Dinh Duc Anh Vu
24
Data Communication and Computer Networks
Go–back–N -
Giải quyết lỗi
•
Sửa lỗi mất frame
–
Giả
sử
frame i mất
–
Nếu “Nguồn”
gửi tiếp frame i+1
–
“Đích”
nhận frame i+1, không đúng chỉ
số
tuần tự
–
“Đích”
bỏ
frame này và
gửi lại REJ i
–
“Nguồn”
nhận được REJ i sẽ
gửi lại tất cả
frame từ
frame I
–
Đòi hỏi “Nguồn”
sử
dụng danh sách truyền lại
(Retransmission list) lưu
các I-Frame đã gởi nhưng
chưa có
ACK
2008
dce
©2008, Dr. Dinh Duc Anh Vu
25
Data Communication and Computer Networks
Go–back–N -
Giải quyết lỗi
•
Sửa lỗi mất frame (tt)
–
Giả
sử
frame i mất
–
“Nguồn”
không gửi tiếp frame nào
–
“Đích”
không nhận được gì
nên sẽ
không có
phản
hồi
–
“Nguồn”
bị time-out, khi đósẽ
gửi ACK-frame
thăm dò với bit P được set lên 1
–
“Đích”
nhận được sẽ
gửi ACK-frame báo đang
chờ
frame i
–
“Nguồn”
gửi lại frame i
2008
dce
©2008, Dr. Dinh Duc Anh Vu
26
Data Communication and Computer Networks
Go–back–N -
Giải quyết lỗi
•
Sửa lỗi frame hư
–
“Đích”
phát hiện lỗi
ở
frame i
–
“Đích”
báo cho “Nguồn”
bằng REJ (i+1)
–
“Đích”
loại bỏ
các frame sau i
–
“Nguồn”
nhận được REJ (i+1) sẽ
gởi lại các frame
từ
frame i
–
Thời gian đáp ứng nhanh hơn so với dùng timeout
(“Đích”
có
thể
loại bỏ
các frame bị hư và xem như
chưa nhận được).
2008
dce
©2008, Dr. Dinh Duc Anh Vu
27
Data Communication and Computer Networks
Go–back–N -
Giải quyết lỗi
•
Sửa lỗi ACK bị
mất
–
“Đích”
nhận frame i, gửi ACK(i+1)
và
bị
mất
•
“Nguồn”
gửi tiếp các frame i+1, i+2, “Đích”
sẽ
gửi lại
ACK(i+2), ACK(i+3) hoặc NAK tương ứng
–
Nếu “Nguồn”
nhận ACK(i+2), ACK(i+3) trước khi time-out thì
truyền bình thường
–
Nếu time-out “Nguồn”
sẽ
gửi ACK thăm dò với bit P được set
lên 1 (như giải quyết lỗi mất frame)
•
“Nguồn”
không gửi tiếp frame nào time-out
–
“Đích”
nhận ACK thăm dò với bit P được set,
nhưng không đáp ứng lại
•
Hết thời gian time-out “Nguồn”
gửi lại ACK thăm dò
•
Sau một số
lần gửi lại không thành công “Nguồn”
sẽ
reset lại đường truyền
2008
dce
©2008, Dr. Dinh Duc Anh Vu
28
Data Communication and Computer Networks
Go-back-N -
Ví
dụ
2008
dce
©2008, Dr. Dinh Duc Anh Vu
29
Data Communication and Computer Networks
Selective Reject
•
Còn được gọi là Selective retransmission
•
Cơ chế
hoạt động
–
Tương tự như Go-Back-N
–
Chỉ
gởi lại các frame bị
NAK hoặc time-out
–
“Đích”
có
thể
nhận I-frame không theo đúng chỉ
số
tuần tự
–
“Đích”
phải có buffer để lưu lại các frame đến
không theo đúng chỉ
số
tuần tự
và
có cơ chế
sắp
xếp lại thứ
tự
các frame
2008
dce
©2008, Dr. Dinh Duc Anh Vu
30
Data Communication and Computer Networks
Vấn đề
kích thước cửa sổ
•
Tình huống: window kích thước 7, số
thứ
tự được
đánh bằng 3 bit
–
“Nguồn”
gởi các frame từ 0 đến 6 qua “Đích”
–
“Đích”
gửi ACK7 nhưng bị
mất
–
“Nguồn”
bị
time-out nên gởi lại frame 0
–
“Đích”
lúc này đã dịch cửa sổ
nhận, có
thể
nhận các frame
7,0,1, 5. Nó tưởng frame 7 bị
mất và
0 là
frame mới, nên
chấp nhận (trùng frame)
•
Đây là
vấn đề
trùng lắp giữa cửa sổ
gởi và
cửa sổ
nhận
•
Do đókích thước cửa sổ
tối đa đối với phương pháp
này chỉ
là
2
k-1
2008
dce
©2008, Dr. Dinh Duc Anh Vu
34
Data Communication and Computer Networks
Selective Repeat ví
dụ