Chƣơng 4
Nghi thức liên kết dữ liệu
Kiểm soát lỗi
IRQ/ ARQ
Go back n
Selective repeat
HDLC
Data Communication Technology
CuuDuongThanCong.com
348
/>
Kiểm soát lỗi – IDLE RQ
Hoạt động ở chế độ bán song công
Khi P gởi cho S một Frame thì P phải chờ S báo
khung trước đó đã nhận đúng hay sai. Và P sẽ
truyền khung mới hay khung cũ tùy thuộc vào việc
nhận đúng hay sai của S.
Có hai loại IDLE –RQ:
Truyền hiểu ngầm
Truyền tường minh
Data Communication Technology
CuuDuongThanCong.com
349
/>
IDLE-RQ –
stop and wait ARQ hiểu ngầm
Việc truyền lại hiểu ngầm
S: chỉ xác nhận khung truyền nào đúng
P: tự hiểu ngầm có khung truyền của nó bị sai
hoặc mất
S: khi phát hiện khung đúng nó sẽ truyền lại
khung xác nhận ACK (acknowledgement).
S: phát hiện khung sai hoặc bị mất thì nó không
làm gì cả và khi đó P tự hiểu ngầm và truyền lại.
Data Communication Technology
CuuDuongThanCong.com
350
/>
IDLE-RQ –
stop and wait ARQ hiểu ngầm
Nguyên lý chính của Stop and wait ARQ
hiểu ngầm
P: gởi một I-frame đến S
P đợi phản hồi từ đích
ACK-frame: P sẽ gởi một I-frame mới cho P
//NAK-frame: P sẽ gởi lại I-frame cũ
Không nhận được trả lời: P gởi lại I-frame cũ
sau thời gian time out.
Data Communication Technology
CuuDuongThanCong.com
351
/>
Cấu trúc khung Idle -RQ
Số chứa trong mỗi I-frame gọi là N(S)- send
sequence number
Số chứa trong mỗi ACK/ NAK frame gọi là
N(R) – receive sequence number
Các ký tự điều khiển vẫn được sử dụng
SOH, STX, ETX
Data Communication Technology
CuuDuongThanCong.com
358
/>
Cấu trúc khung Idle -RQ
Mỗi I-frame phải chứa một N(S) sau SOH
(start of header), kế tiếp là cấu trúc thông
thường trong truyền bất đồng bộ. Trong đó
ký tự cuối cùng là BCC (kiểm tra tổng khối)
để phía thu biết nhận đúng hay sai.
Ba khung cơ bản I-frame, ACK-frame, NAKframe là các đơn vị dữ liệu PDU (protocol
data units) của nghi thức idle –RQ.
Data Communication Technology
CuuDuongThanCong.com
359
/>
Cấu trúc khung Idle -RQ
SOH
ACK
NAK
N(S)
N(R)
N(R)
ST
X
BCC
BCC
Dạng thức
Khung ACK
Dạng thức
Khung NAK
CÁC
KÝ
TỰ
ETX
BCC
Dạng thức khung I (information)
Data Communication Technology
CuuDuongThanCong.com
360
/>
Hệ số sử dụng đƣờng truyền của nghi
thức idle RQ
trường hợp truyền không có lỗi
Time stopped
p
time
ACK(N)
I(N)
S
Tp
Tix
Data Communication Technology
CuuDuongThanCong.com
Tip
361
Tp
Tax
/>
Hiệu suất truyền Idle RQ- không lỗi
Xét khung truyền thứ N từ P sang S không bị
sai. Phía S sau khi xử lý sẽ truyền ACK
frame từ S sang P.
Tp thời gian truyền sóng từ P S
Tix thời gian phát một khung
Tip thời gian xử lý của S cho I-frame
Tax thời gian xử lý của P cho ACK frame
Tt thời gian kể từ khi P phát một khung đến khi xử
lý xong ACK frame
Data Communication Technology
CuuDuongThanCong.com
362
/>
Hiệu suất truyền Idle RQ- không lỗi
•Thời gian truyền sóng từ khoảng cách s
vận tốc v:
Tix
Tt
Tt Tix 2Tp Tip Tax
Tp
so : Tix 2Tp Tip Tax
Tix
hence :
Tix 2Tp
set up =
Tp
Tix
1
1 2
N
Tix
R
• Thời gian phát một khung:
;
• N: tổng số bit trong khung
• R: tốc độ bit của kênh truyền
•Nếu cự ly đường truyền là lớn, hệ số
a lớn hiệu suất đường trường thấp
•Khoảng cách đường truyền ngắn: hiệu
suất đạt gần 100%
Data Communication Technology
CuuDuongThanCong.com
s
v
363
/>
Hiệu suất truyền Idle RQ- không lỗi
Ví dụ 4.1: các khung truyền liên tiếp, có chiều dài
1000bits được truyền dùng nghi thức idle RQ. Xác
định hệ số sử dụng đường truyền cho các loại
đường truyền khác nhau sau đây (giả sử xét các tốc
bit 1kbps, và 1Mbps, vận tốc truyền sóng là
2.10^8m/s, đường truyền không bị lỗi)
A. cáp xoắn có chiều dài 1km
B. đường dây thuê bao riêng 2000km
C. đường truyền vệ tinh 50000km
Data Communication Technology
CuuDuongThanCong.com
364
/>
Ví dụ 4.1
1000
1( s)
1000
1000
3
10
( s)
R= 1Mbps Tix
6
10
R= 1kbps Tix
Thời gian truyền một khung:
a. Tp
s 1000
6
5.10
( s)
8
v 2.10
R= 1kbps
5.106
1
5.106
100%
Tix
1
1 2
R= 1Mbps
5.106
1
3
5.10
100%
3
Tix
10
1 2
Tp
Tp
b,c hướng dẫn sinh viên giải, sau đó đưa ra kết luận về hiệu suất của
bài toán sự tương đồng với lý thuyết đã trình bày.
Data Communication Technology
CuuDuongThanCong.com
365
/>
Hiệu suất truyền Idle RQ- có lỗi
Trong cơ chế Idle RQ, nếu truyền sai thì truyền lại.
Giả sử truyền được một khung thì có trung bình Nr khung
được thực hiện truyền
Vậy:
1
1
N r 1 2
Giả sử P là xác suất sai lỗi 1 bit xác xuất đúng 1 bit là 1P.
xác xuất đúng 1 khung là:
Ni: số bit trong một khung
Data Communication Technology
CuuDuongThanCong.com
(1 P) Ni
366
/>
Hiệu suất truyền Idle RQ- có lỗi
Xác suất sai một khung:
Pf 1 (1 P) PNi , because: P<<1
Ni
Xác xuất đúng một khung
1 Pf 1 Ni P
1
1 Pf
Nr
1 2 1 2
Ví dụ 4.2. Làm lại ví dụ 4.1 trong trường hợp
xác xuất lỗi 1 bit là P=10^-4
Data Communication Technology
CuuDuongThanCong.com
367
/>
Ví dụ 4.2
Hướng dẫn câu a – b&c sv tự làm
Hiệu suất đường truyền:
R= 1kbps
1 N i P 1 1000.104
90%
6
1 2
1 2.5.10
R= 1Mbps
1 N i P 1 1000.104
89%
3
1 2
1 2.5.10
Data Communication Technology
CuuDuongThanCong.com
368
/>
RQ liên tục
P gửi liên tục các I-frame liên tục không cần chờ
ACK-frame
P sẽ duy trì một bản sao của mỗi I-frame trong bộ
nhớ FIFO (first in first out) –vì có nhiều hơn một Iframe đang chờ xác nhận ACK.
S trả về P một ACK khi nhận được một khung
không sai.
Mỗi I-frame chứa một định danh duy nhất sẽ được
trả về trong các ACK tương ứng.
Data Communication Technology
CuuDuongThanCong.com
369
/>
RQ liên tục
S duy trì một danh mục có theo thứ tự, tức
danh sách thu gồm n khung thu tốt sau cùng.
P tự động loại bỏ các I-frame tương ứng với
các ACK tương ứng mà nó nhận được.
Có hai loại RQ liên tục là:
Selective repeat
Go back N
Data Communication Technology
CuuDuongThanCong.com
370
/>
RQ –liên tục – Selective repeat
S phát hiện và chỉ yêu cầu truyền lại đối với
những khung nào bị sai.
Có hai cách:
Selective repeat hiểu ngầm
Selective repeat tường minh
Data Communication Technology
CuuDuongThanCong.com
371
/>
Selective repeat hiểu ngầm
Data Communication Technology
CuuDuongThanCong.com
372
/>
Selective repeat hiểu ngầm
Trong mô hình truyền gói I(N+1) bị lỗi
S trả về ACK cho mỗi I-frame nhận tốt ở trước đó
(ACK N, N+2, N+3)
Khi P nhận ACK(N+2) thì nó tự hiểu ngầm rằng S
đã không xác nhận I-frame I(N+1).
P tự động loại bỏ những I-frame được lưu trữ
trong FIFO mà nó có xác nhận ACK tương ứng
P tự động truyền lại I-frame I(N+1) trước khi nó
phát I-frame I(N+5).
Data Communication Technology
CuuDuongThanCong.com
373
/>
Selective repeat hiểu ngầm
Data Communication Technology
CuuDuongThanCong.com
374
/>
Selective repeat hiểu ngầm
Mô hình selective repeat trong trường hợp
gói ACK(N) bị lỗi
Khi nhận được ACK(N+1) thì P phát hiện chưa có
sự xác nhận của I(N) tức là ACK(N) nên nó sẽ
truyền lại I(N).
S nhận lại I(N) thấy hai bản I-frame giống nhau về
chỉ số tự động loại bỏ 1.
S loại bỏ khung I(N) nhưng cũng phải trả về ACK
để cho P biết và P tự động loại bỏ I(N) trong danh
sách truyền lại.
Data Communication Technology
CuuDuongThanCong.com
375
/>
Selective repeat tƣờng minh
S dùng NAK-frame để yêu cầu P truyền lại
khung cụ thể, NAK xem như việc loại bỏ có
lựa chọn
Một khung ACK xác nhận tốt tất cả các
khung trong danh sách truyền lại từ thấp đến
số thứ tự của khung ACK hiện hành – tức là
P sẽ loại bỏ tất cả các khung trong danh sách
truyền lại tương ứng.
Data Communication Technology
CuuDuongThanCong.com
376
/>
Selective repeat tƣờng minh
Data Communication Technology
CuuDuongThanCong.com
377
/>
Selective repeat tƣờng minh
Trường hợp gói I(N+1) bị lỗi
S trả về khung ACK cho I(N)
Khi S nhận được khung I(N+2), nó phát hiện I(N+1) nên nó
trả về P khung NAK(N+1)
Khi P nhận NAK(N+1) thì hiểu rằng S đang chờ khung
I(N+1) nên P sẽ truyền lại khung này
Khi S trả về P khung NAK, nó rời vào trạng thái truyền lại
có nghĩa là nó phải đợi cho được khung dữ liệu ứng với
NAK mà nó đã gởi đi. Sau khi nhận được khung này rồi nó
sẽ gởi ACK tương ứng khung mà nó nhận lại được (theo
mong muốn do mất).
Data Communication Technology
CuuDuongThanCong.com
378
/>