Bài giảng Các giao thức điều khiển liên kết dữ liệu tìm hiểu giao thức kiểm soát liên kết dữ liệu; kiểm soát luồng dừng và chờ; sử dụng liên kết dừng và chờ; mô tả cửa sổ trượt; yêu cầu lặp lại tự động (ARQ); kiểm soát liên kết dữ liệu cấp cao (HDLC)... Mời các bạn cùng tham khảo bài giảng để nắm chi tiết hơn nội dung kiến thức.
Trang 1Data Link Control Protocols
CÁC GIAO THỨC ĐIỀU KHIỂN LIÊN KẾT DỮ LIỆU
GVHD: TS Nguyễn Thành Đạt HVTH : Trần Thị Diệu Mỹ
Trang 2Data Link Control Protocols
Giao thức kiểm soát liên kết dữ liệu
M t cu c trò chuy n t o thành m t liên k t giao ti p hai chi u; ó là m t th ộ ộ ệ ạ ộ ế ế ề Đ ộ ướ đ đố c o i
x ng gi a hai bên và các thông i p ứ ữ đ ệ đượ c truy n qua l i Có m t ph n ng kích thích ề ạ ộ ả ứ
liên t c, hành ụ độ ng theo chu k ; nh n xét g i lên nh n xét khác, và hành vi c a hai cá ỳ ậ ọ ậ ủ
nhân tr nên hòa h p, h p tác và h ở ợ ợ ướ ng đế n m c tiêu nào ó ây là giao ti p th c s ụ đ Đ ế ự ự
—On Human Communication,
Colin Cherry
Trang 3Giao thức kiểm soát liên kết dữ liệu
Yêu cầu và mục tiêu để truyền dữ liệu hiệu quả giữa hai trạm thu - phát được kết nối trực tiếp:
3
Trang 4Kiểm soát lưu lượng
Kỹ thuật để đảm bảo rằng một thực thể truyền không sử dụng quá nhiều dữ liệu khi một thực thể nhận
một lần chuyển
định trước khi chuyển dữ liệu đến phần mềm cấp cao hơn
có thể đầy và tràn khi đang xử lý dữ liệu cũ
Trang 5Mô hình truyền khung
5
Trang 6Source transmits frame
Destination receives frame and replies with
acknowledgement (ACK)
Source waits for ACK before sending next frame
Destination can stop flow by not sending ACK
Kiểm soát luồng dừng và chờ
Hình thức kiểm soát dòng chảy đơn
giản nhất
Thông thường một nguồn sẽ chia một khối dữ liệu lớn thành các khối nhỏ hơn và truyền dữ liệu trong nhiều khung
Kích thước bộ đệm của máy thu có thể bị giới hạn
Đường truyền càng dài, càng có nhiều khả năng xảy ra lỗi, bắt buộc phải truyền lại toàn bộ khung hình
Trên một phương tiện chia sẻ, thông thường không cho phép một trạm đến phương tiện trong một thời gian dài, do đó gây ra sự chậm trễ lâu dài ở trạm gửi khác
Trang 7Sử dụng liên kết dừng và chờ
7(Thời gian truyền sóng = 1; Thời gian lan truyền = a)
Trang 8Điều khiển luồng Windows trượt
Cho phép nhiều khung được đánh số chuyển tiếp
Máy thu có bộ đệm W dài
Máy phát gửi tối đa W khung hình mà không cần ACK
ACK bao gồm số lượng khung hình tiếp theo dự kiến
Số thứ tự được giới hạn bởi kích thước của trường(k)
Khung được đánh số modulo 2k
Cung cấp kích thước cửa sổ tối đa lên đến 2k – 1
Máy thu có thể ACK khung mà không cho phép truyền thêm (Nhận chưa sẵn sàng)
Phải gửi xác nhận bình thường để tiếp tục
Nếu có liên kết song công, có thể cõng các ACK
Trang 9Mô tả cửa sổ trượt
9
Trang 10Ví dụ về Giao thức cửa sổ trượt
Trang 11Error detection Positive
acknowledgment
Positive acknowledgment
Negative acknowledgment and retransmission
Kỹ thuật kiểm soát lỗi
Trang 12wait
Stop-and-Go-back-N
reject
Selective-Versions of ARQ
Yêu cầu lặp lại tự động (ARQ)
Tên tập thể cho các cơ chế kiểm
soát lỗi
Tác dụng của ARQ là biến một liên
kết dữ liệu không đáng tin cậy
thành một liên kết đáng tin cậy
Trang 13Source transmits
single frame
Source transmits
single frame
Waits for ACK
• No other data can be sent until destination’s reply arrives
If frame received is damaged, discard it
If frame received is damaged, discard it
• Transmitter has timeout
• If no ACK within timeout, retransmit
If ACK is damaged, transmitter will not recognize
If ACK is damaged, transmitter will not recognize
• Transmitter will retransmit
• Receiver gets two copies of frame
• Use alternate numbering and ACK0 / ACK1
Dừng và chờ ARQ
13
Trang 14ARQ dừng và chờ
Trang 15Quay lại-N ARQ
Kiểm soát lỗi thường được sử dụng nhất
Dựa trên cửa sổ trượt
Sử dụng kích thước cửa sổ để kiểm soát số lượng khung hình nổi bật
Mặc dù không có lỗi nào xảy ra, điểm đến sẽ ghi nhận các khung đến như bình thường
Trang 16Chọn lọc-Từ chối (ARQ)
Còn được gọi là truyền lại có chọn lọc
Chỉ các khung bị từ chối mới được truyền lại
Các khung tiếp theo được chấp nhận bởi người nhận và được lưu vào
bộ đệm
Giảm thiểu việc truyền lại
Máy thu phải duy trì bộ đệm đủ lớn
Logic phức tạp hơn trong máy phát
Ít được sử dụng rộng rãi
Hữu ích cho các liên kết vệ tinh có độ trễ lan truyền dài
Trang 17Giao thức cửa
sổ trượt ARQ
17
Trang 18Most important data link control protocol
Specified as ISO 3009, ISO 4335
Basis for other data link control protocols
Station types
Primary - controls operation of link
Secondary - under control of primary station
Combined - issues commands and responses
Link configurations
Unbalanced - 1 primary, multiple secondary
Kiểm soát liên kết dữ liệu cấp cao (HDLC)
Trang 19Normal Response Mode (NRM)
• Used with an unbalanced configuration
• Primary initiates transfer
Asynchronous Balanced Mode (ABM)
• Used with a balanced configuration
• Either station initiates transmission
• Has no polling overhead
• Most widely used
Asynchronous Response Mode (ARM)
• Used with unbalanced configuration
• Secondary may transmit without permission from primary
• Rarely used
Chế độ truyền dữ liệu HDLC
19
Trang 20Cấu trúc khung HDLC
Trang 21Trường cờ
Các trường cờ phân định khung ở cả hai đầu bằng mẫu duy nhất 01111110
Nhồi bit
Để cho phép sự hiện diện của các mẫu bit tùy ý (độ trong suốt của dữ liệu), một thủ tục được gọi
là nhồi bit được sử dụng
chèn thêm một bit 0 sau mỗi lần xuất hiện năm giây 1 trong khung
Đảm bảo rằng mẫu 01111110 sẽ không xuất hiện ở đâu đó bên trong khung, do đó phá hủy sự đồng
bộ hóa
21
Trang 22Trường địa chỉ
Xác định trạm phụ đã truyền hoặc sẽ nhận khung
Thường dài 8 bit
Có thể được mở rộng thành bội số của 7 bit
Bit ngoài cùng bên trái cho biết có phải là octet cuối cùng (1) hay không (0)
Địa chỉ 11111111 cho phép một cơ quan chính phát một khung để tất cả
người thứ hai tiếp nhận
Trang 23Các loại khung
HDLC xác định ba loại khung, mỗi loại có một định dạng trường điều khiển khác nhau
Khung thông tin (I-frames)
Mang dữ liệu được truyền cho người dùng
Dữ liệu kiểm soát luồng và lỗi, sử dụng cơ chế ARQ, được gắn trên khung thông tin
Khung giám sát (S-frames)
Cung cấp cơ chế ARQ khi không sử dụng tính năng cõng
Khung không được đánh số (U-frames)
Cung cấp các chức năng điều khiển liên kết bổ sung
23
Trang 24Trường kiểm soát
Việc sử dụng bit thăm dò / cuối cùng (P / F) phụ thuộc vào ngữ cảnh
Trong khung lệnh, bit P được đặt thành 1 để trưng cầu (thăm dò) phản hồi từ thực thể HDLC ngang hàng
Trong các khung phản hồi, bit F được đặt thành 1 để chỉ ra khung phản hồi được truyền do kết quả của một lệnh trưng cầu
Trường điều khiển cơ bản cho S- và I-frame sử dụng số thứ tự 3 bit
Trường điều khiển mở rộng có thể được sử dụng sử dụng số thứ tự 7 bit
Khung chữ U luôn chứa trường điều khiển 8 bit
Trang 25The normal code is the 16 bit CRC-CCITT
Optional 32-bit FCS, using CRC-32, may be employed if the frame length or the line reliability dictates this choice
Optional 32-bit FCS, using CRC-32, may be employed if the frame length or the line reliability dictates this choice
Trường trình tự kiểm tra thông tin và khung (FCS)
25
Trang 26Supervisory (S)
Receive ready (RR) C/R Positive acknowledgment; ready to receive
I-frame Receive not ready (RNR) C/R Positive acknowledgment; not ready to receive
Reject (REJ) C/R Negative acknowledgment; go back N
Selective reject (SREJ) C/R Negative acknowledgment; selective reject
Unnumbered (U)
Set normal response/extended mode
(SNRM/SNRME)
C Set mode; extended = 7-bit sequence numbers
Set asynchronous response/extended
mode (SARM/SARME) C Set mode; extended = 7-bit sequence numbers
Set asynchronous balanced/extended
mode (SABM, SABME) C Set mode; extended = 7-bit sequence numbers
Set initialization mode (SIM) C Initialize link control functions in addressed
station Disconnect (DISC) C Terminate logical link connection
Unnumbered Acknowledgment (UA) R Acknowledge acceptance of one of the set-mode
commands Disconnected mode (DM) R Responder is in disconnected mode
Request disconnect (RD) R Request for DISC command
Request initialization mode (RIM) R Initialization needed; request for SIM command
Unnumbered information (UI) C/R Used to exchange control information
Unnumbered poll (UP) C Used to solicit control information
Reset (RSET) C Used for recovery; resets N(R), N(S)
Exchange identification (XID) C/R Used to request/report status
Test (TEST) C/R Exchange identical information fields for testing
Trang 27Specifies which of the three
modes (NRM, ABM, ARM) is
requested
Specifies whether 3- or 7-bit
sequence numbers are to be used
I-An HDLC module will number them sequentially
Receive Ready (RR) is used when there is no reverse user data
Either module can initiate
• Either on its own initiative if there is some sort of fault, or at the request of its higher-layer user
Sends disconnect (DISC) frame Remote entity replies with a UA Any outstanding unacknowledged I-frames may be lost
• Recovery is the responsibility of higher layers
Hoạt động HDLC
Bao gồm trao đổi khung I, khung S và khung U
Bao gồm ba giai đoạn :
27
Trang 28Ví dụ về hoạt động HDLC
Trang 29Tóm lược
Kiểm soát lưu lượng
Kiểm soát luồng dừng và chờl
Kiểm soát luồng cửa sổ trượt
Kiểm soát lỗi