Bài giảng Truyền số liệu - Chương 11: Giao thức kết nối dữ liệu (Data link protocols) - Nguyễn Việt Hùng
Giao thức (protocol) được hiểu là tập các luật hay qui ước nhằm thực hiện một
nhiệm vụ đặc thù, trong nghĩa hẹp hơn giao thức là tập các luật hay đặc tính được dùng để
thiết lập một hay nhiều lớp trong mô hình OSI.
Giao thức trong truyền số liệu là tập các luật hay đặc tính được dùng để thiết lập
một hay nhiều lớp trong mô hình OSI.
Giao thức kết nối dữ liệu là tập các đặc tính được dùng để thiết lập lớp kết nối dữ liệu
Giao thức kết nối dữ liệu chia ra hai nhóm con:
• Giao thức không đồng bộ xử lý các ký tự trong dòng bit một cách độc lập.
• Giao thức đồng bộ dùng nguyên dòng bit để chuyển sang thành ký tự có cùng
chiều dài.
Hình 11.1
11.1 GIAO THỨC KHÔNG ĐỒNG BỘ
Asynchronous
protocols
XMODEM YMODEM ZMODEM BLAST KERMIT OTHERS
Hình 11.2
Các giao thức này chủ yếu được dùng trong các modem.
Phương thức này có yếu điểm là truyền chậm (do tồn tại start bit, stop bit và khoảng
trống giữa các frame) nên hiện nay, đã có các giao thức truyền tốc độ cao dùng cơ chế đồng
bộ.
11.1.1 XMODEM
Truyền file dùng đường truyền điện thoại giữa các PC. Giao thức này, được gọi là
XMODEM:
• Là giao thức stop and wait ARQ
• Truyền bán song công (half-duplex)
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Trang 7
Trang 8
Trang 9
Trang 10
Tải về để xem bản đầy đủ
Tóm tắt nội dung tài liệu: Bài giảng Truyền số liệu - Chương 11: Giao thức kết nối dữ liệu (Data link protocols) - Nguyễn Việt Hùng
trường điều khiển của chính frame dữ liệu của mình thay vì gởi các frame xác nhận riêng. Kết hợp dữ liệu gởi vào thông tin điều khiển theo cách này được gọi là piggybacking (cỏng, cởi trên lưng người khác) Piggybacking (cỏng) là phương thức kết hợp dữ liệu truyền và xác nhận vào trong một frame đơn. FCS Field Hình 11.19 Frame Check Sequence (FCS) nằm trong trường kiểm tra lỗi của HDLC, trong đó chứa từ 2 đến 4 byte CRC. NÓI THÊM VỀ FRAME Trong ba frame của HDLC thì I-frame là đơn giản nhất, do được thiết kế để vận chuyển các thông tin của người dùng (user) và piggybacking xác nhận. Do đó, tầm biến động của I- frame – các khác biệt liên quan đến dữ liệu (nội dung và CRC), nhằm để nhận dạng số frame hay để xác nhận các frame nhận được. Trái lại, S-frame và U-frame thì chứa các trường con trong frame điều khiển. N hư đã thảo luận ở phần trường điều khiển, thì các trường con này chứa mã nhằm thay đổi ý nghĩa của frame. Thí dụ, mã của S-frame dùng cho selective-reject (SREJ) không thể được dùng thay cho mã của S-frame dùng cho receive ready (RR). S-FRAME Hình 11.20 Biên dịch: N guyễn Việt Hùng Trang183 Bài giảng: Truyền số liệu Chương 11: Giao thức kết nối dữ liệu Frame giám sát được dùng để xác nhận, điều khiển lưu lượng, và kiểm tra lỗi khi việc piggybacking vào I-frame là không thể được hoặc không thích hợp (khi trạm không có dữ liệu để gởi hay khi cần gởi các tín hiệu điều khiển, hay đáp ứng thay cho các tín hiệu xác nhận). S-frame không có trường thông tin, mà nằm trong các bản tin được gởi đến trạm thu. Các bản tin này tùy theo dạng của S-frame và context của tin truyền, dạng của mỗi S-frame được xác định từ một mã gồm hai bit thiết lập trong trường điều khiển, ngay trước bit P/F. Có 4 dạng S-frame: Thu, sẵn sàng thu (RR). Chưa sẳn sàng thu (RN R). Loại (REJ) Chọn-lọc (SREJ) Receive Ready S-frame chứa các mã cho RR (00) có thể được dùng trong 4 trường hợp khác nhau: ACK: Tín hiệu RR được trạm thu dùng gởi trả về một xác nhận khi nhận được I- frame khi máy thu không có dữ liệu riêng để gởi (không có I-frame để piggybacking tín hiệu xác nhận). Trong trường hợp này, trường N (R) của frame điều khiển chứa các số của chuỗi của frame kế cần nhận. Trong trường điều khiển một byte, trường N (R) có 3 bit, cho phép xác nhận đến 8 frame. Trong chế độ mở rộng, trường N (R) có 7 bit cho phép xác nhận đến 128 frame Poll: Khi trạm sơ cấp truyền (hay trường hợp trạm hỗn hợp đóng vai trò sơ cấp), với bit P/F được thiết lập ở chức năng poll hay bit P, RR sẽ hỏi trạm thứ cấp có gì gởi không? Negative response to poll: Khi gởi bằng trạm thứ cấp dùng bit P/F được thiết lập ở final hay bit F, RR sẽ báo cho trạm phát biết là trạm thu không có gì để gởi. N ếu trạm thứ cấp có dữ liệu cần truyền, thì sẽ đáp ứng với poll thông qua I- frame, chứ không dùng S-frame. Positive response to poll: Khi trạm thứ cấp có khả năng thông tin truyền từ sơ cấp, thì nó gởi về một frame RR trong đó bit P/F được thiết lập ở 1 (bit F) Receive not ready: Frame RN R có thể được dùng theo 3 cách: ACK: Tín hiệu RN R từ máy thu gởi về máy phát nhằm xác nhận về tất cả các frame đã nhận, nhưng không bao gồm frame được chỉ trong trường N (R) nhưng yêu cầu là không gởi thêm frame nào nữa cho đến khi có frame RR được gởi đi. Select: Khi trạm sơ cấp muốn truyền dữ liệu to một trạm thứ cấp đặc thù, nó cảnh báo cho thứ cấp bằng cách gởi frame RN R với bit P/F được thiết lập ở bit P. Mã RN R báo cho máy thứ cấp đừng gởi dữ liệu riêng của mình nữa, do frame đã được thiết lập ở chế độ select chứ không phải là poll. Negative response to select. Khi trạm thứ cấp được chọn không có khả năng nhận dữ liệu, thì nó gởi trả về frame RN R với bit P/F được thiết lập ở bit F. Reject. Dạng thứ 3 của S-frame là reject (REJ). REJ là tín hiệu không xác nhận được máy thu gởi trả về trong hệ thống sửa lỗi go-back-n ARQ, với trường hợp máy thu không có Biên dịch: N guyễn Việt Hùng Trang184 Bài giảng: Truyền số liệu Chương 11: Giao thức kết nối dữ liệu dữ liệu để piggybacking đáp ứng. Trong frame REJ, trường N (R) chứa số của frame bị hỏng để cho biết là frame này và tất cả các frame tiếp sau đều phải đươc truyền lại. Selective-Reject: Frame selective-reject (SREJ) là tín hiệu không xác nhận trong hệ thống selective-reject ARQ. N ó được máy thu gởi về máy phát cho biết một frame nhận được đã bị hỏng (số nằm trong trường N (R)) và yêu cầu gởi lại frame này. Hình 11.21 U-FRAME Các frame không đánh số được dùng để trao đổi các thông tin về quản lý và điều khiển giữa các thiết bị đang kết nối. Khác với S-frame, U-frame có chứa trường thông tin, nhưng là các thông tin quản lý hệ thống chứ không phải là dữ liệu của user. Tương tự như S-frame, nhiều thông tin do U-frame mang được chứa trong mã đặt ở trường điều khiển. Mã của U- frame được chia thành hai phần: một prefix gồm hai bit đặt trước bit P/F và một suffix 3 bit sau bit P/F. Hai phân đoạn này (5 bit) cùng được dùng để tạo ra 32 dạng U-frame. Một số tổ hợp được minh họa trong hình dưới đây Hình 11.22 Biên dịch: N guyễn Việt Hùng Trang185 Bài giảng: Truyền số liệu Chương 11: Giao thức kết nối dữ liệu Code Command Response 00 001 SNRM 11 011 SNRME 11 000 SARM DM 11 010 SARME 11 100 SABM 11 110 SABME 00 000 UI UI 00 110 UA 00 010 DISC RD 10 000 SIM RIM 00 100 UP 11 001 RSET 10 101 XID XID 10 001 FRMR Các lệnh trong U-frame được ghi trong bảng có thể chia thành 5 phạm trù chức năng cơ bản: thiết lập chế độ, trao đổi không đánh số, ngừng kết nối, khởi tạo, và các chức năng khác(hỗn hợp): - Mode setting Các lệnh thiết lập chế độ được trạm sơ cấp , hay do trạm hỗi hợp đóng vai trò sơ cấp gởi đi nhằm điều khiển quá trình trao đổi, nhằm thiết lập kiểm soát kết nối. Frame thiết lập chế độ của U-frame thông báo cho trạm thu biết về format của quá trình sắp truyền. Thí dụ, một trạm hỗn hợp muốn thiết lập một quan hệ sơ cấp -thứ cấp tạm thời với một trạm khác, thì nó gởi đi một U-frame chứa mã 00 001 (nhằm thiết lập đáp ứng thông thường). Trạm có địa chỉ nhận hiểu được là mình được chọn để nhận tin (từ sơ cấp) nên tự chỉnh định cho thích hợp. - Unnumbered-Exchange Các mã về trao đổi không đánh số được dùng để truyền hay cũng cố phần đặc thù về thông tin kết nối dữ liệu giữa hai thiết bị. Mã poll không đánh số (UP: unnumbered poll) 00 100 được trạm sơ cấp (hay trạm hỗn hợp đóng vai trò sơ cấp) truyền đi trên mạng nhằm thiết lập trạng thái của trạm có địa chỉ trong quá trình trao đổi không đánh số này. Mã thông tin không đánh số (UI: unnumbered information) 00 000 được dùng để truyền đi phần đặc thù của thông tin như time/date dùng cho đồng bộ. Frame UI có thể được truyền đi như các lệnh (list các tham số cho quá trình truyền) hay đáp ứng (mô tả về khả năng của trạm có địa chỉ để nhận tin). Mã của xác nhận không đánh số (UA: unnumbered acknowledgment) 00 110 được máy thu gởi trả về nhằm trả lời cho một unnumbered poll, xác nhận cho một unnumbered request frame (thí dụ RD: request disconnect) hay là để chấp nhận lệnh thiết lập chế độ (xem lại bảng). Disconnection Có ba mã ngừng kết nối, một là lệnh từ trạm đóng vai trò sơ cấp hay trạm hỗn hợp, còn lại là hai đáp ứng từ trạm thu. Lệnh đầu tiên, disconnect (DISC, 00 010) được trạm thứ nhất gởi đến trạm thứ hai để thông báo ngừng kết nối. Lệnh thứ hai: do máy thứ hai gởi yêu cầu ngừng kết nối request disconnect (RD, 00 010) về máy thứ nhất sau khi nhận được DISC. Lệnh thứ ba chế độ ngừng kết nối (DM: disconnect mode 11 000) được máy có địa chỉ nhận gởi đến máy phát như một negative response cho lệnh thiết lập chế độ (xem bảng). Biên dịch: N guyễn Việt Hùng Trang186 Bài giảng: Truyền số liệu Chương 11: Giao thức kết nối dữ liệu Initialization Mode Mã 10 000, được dùng làm lệnh (do trạm thứ nhất gởi đến trạm thứ hai) nhằm thiết lập chế độ khởi tạo (SIM: set initialization mode) nhằm chuNn bị cho trạm thu chuNn bị khởi tạo các chức năng điều khiển kết nối dữ liệu. Lệnh SIM và tiếp theo là trường UI chứa các chương trình hay các tham số được thiết lập. Cùng mã này 10 000, được dùng làm đáp ứng (do máy thứ hai gởi về máy thứ nhất) , cho biết chế độ yêu cầu khởi tạo (RIM: request initialization mode) và cũng cố lệnh SIM do trạm thứ nhất gởi đến. Lệnh này được dùng để đáp ứng lệnh thiết lập chế độ khi trạm thứ hai không thể hoạt động được theo lệnh without first receiving a SIM (xem bảng). Miscellaneous Trong ba lệnh trên thì hai lệnh đầu: reset (RSET, 11 001) và trao đổi ID (XID, 11 101) là lệnh được gởi từ máy phát đến máy thu theo địa chỉ. Lệnh thứ ba, frame reject (FRMR, 10 001) là đáp ứng từ trạm nhận gởi về trạm phát: RSET: cho trạm thứ hai biết là trạm thứ nhất đã reset send sequence numbering và thông báo cho trạm thứ hai để làm các bước tương tự. Lệnh này thường được gởi đi khi nhận được FRMR. XID: yêu cầu trao đổi dữ liệu nhận dạng từ máy thứ hai (Địa chỉ của bạn là gì?) FRMR: báo cho hệ thống thứ nhất là U-frame do trạm thứ hai nhận được có syntax bị sai (điều này không giống như frame HDLC). Thí dụ, tín hiệu này được gởi về khi một frame được nhận dạng là S-frame nhưng lại có chứa trường thông tin. CÁC THÍ DỤ: Sau đây là một số thí dụ về phương pháp thông tin dùng HDLC. Thí dụ 1: Poll/Response Trong hình bên dưới thì tiết bị sơ cấp (mainframe) trong hệ nhiều điểm gởi poll đến thiết bị thứ cấp (A) bằng S-frame chứa mã của poll. Đầu tiên là trường flag, tiếp đến là địa chỉ của thứ cấp cần được poll, trường hợp này là A. Trường thứ ba, điều khiển chứa mã nhận dạng frame là S-frame, theo sau là các mã RR (receive ready), trạng thái máy phát, bit P/F được thiết lập ở poll, và trường N (R) = 0 . Sau khi trường điều khiển là FCS error detection code và trường ending flag. Trạm A có dữ liệu cần gởi, nên trả lời bằng một I-frame đánh số 0 và 1. Frame thứ hai có bit P/F thiết lập về final cho biết chấm dứt dữ liệu. Trạm sơ cấp xác nhận về cả hai frame cùng một lúc dùng S-frame chứa số 2 trong trường N (R) cho trạm A biết là frame 0 và 1 đã được nhận và nếu A còn gởi thêm frame nào, thì trạm sơ cấp mong nhận được fram số 2 kế tiếp Biên dịch: N guyễn Việt Hùng Trang187 Bài giảng: Truyền số liệu Chương 11: Giao thức kết nối dữ liệu Hình 11.23 Thí dụ 2: Select/Response Hình 11.24 Thí dụ này cũng dùng cấu hình nhiều điểm cho thấy cách sơ cấp chọn lựa trạm thứ cấp, trạm B để nhận tín hiệu truyền. Đầu tiên, sơ cấp gởi S-frame đến trạm địa chỉ B có chứa mã select. Frame select này tương tự như frame poll, nhưng trạng thái RR trong trường điều khiển đã được thay bằng RN R, cho thứ cấp biết để sẳn sàng nhưng chưa gởi. Trạm B trả lời dùng một S-frame khác, định địa chỉ từ B, chứa mã RR cùng với bit final, cho biết là máy đã sẳn sàng nhận và đây là frame cuối. Sơ cấp gởi I-frame có chứa dữ liệu. Frame này được gởi cho địa chỉ B, trường N (S) nhận dạng là frame số 0, bit P chưa được htiết lập cho thấy frame không phải là poll, và trường N (R) cho thấy là nếu I-frame bị trả về, thì cũng mong được đánh số là 0. Trạm B trả lời dùng frame RR với hai mục tiêu: bit final được thiết lập cho sơ cấp biết là B không có gì để gởi và N (R)=1 cho thấy là B mong nhận được frame 1. Biên dịch: N guyễn Việt Hùng Trang188 Bài giảng: Truyền số liệu Chương 11: Giao thức kết nối dữ liệu Thí dụ 3: Peer Devices Hình 11.25 Thí dụ nhằm minh họa quá trình truyền dẫn trao đổi trong chế độ cân bằng không đồng bộ (ABM) dùng phương pháp xác nhận piggybacking. Hai trạm là đồng quyền và kết nối điểm-điểm. Trạm A gởi U-frame chứa mã của SABM để thiết lập kết nối ở chế độ cân bằng không đồng bộ. Bit P được thiết lập cho biết trạm A muốn điều khiển kết nối và được phát đầu tiên. Trạm B đồng ý yêu cầu bằng cách gởi về U-frame chứa mã UA, thiết lập bit F. Chấp nhận truyền ở chế độ cân bằng không đối xứng, cả hai trạm đều đang ở chế độ trạm hỗn hợp, thay vì sơ cấp-thứ cấp, nên bit P/F không còn giá trị và được bỏ qua trong frame kế tiếp. Trạm A bắt đầu trao đổi thông tin với I-frame đánh số 0 tiếp theo là I-frame đánh số 1. Tram B gởi xác nhận piggybacking của cả hai frame này vào trong I-frame của mình. I-frame đầu tiên của B cũng được đánh số 0 (trường N (S)) và chứa 2 trong trường N (R), xác nhận đã nhận frame số 1 và số 0 của A và cho biết mong muốn nhận được frame 2. Trạm B gởi tiếp fram thứ hai và ba (đánh số 1 và 2) trước khi chấp nhận thêm các frame đến từ A. Các thông tin N (R), như thế thì chưa thay đổi. Các fram 1 và 2 của B cho biết là trạm B còn mong nhận được frame 2 từ A. Trạm A đã gởi hết dữ liệu. N hư thế, không có thể piggybacking xác nhậan vào trong I- frame nên phải gởi S-frame thay vào. Mã RR cho thấy là A vẫn còn sẳn sàng nhận. Số 3 trong trường N (R) cho B biết là các frame 0, 1, và 2 đã được chấp nhận và hiện đang chờ số 3. Thí dụ 4: Peer Communication with Error Trong thí dụ vùa qua, hãy giả sử là frame 1 gởi từ B đến A là có lỗi. Trạm A, cần báo cho B để gởi lại frame 1 và 2 (hệ thống dùng giao thức go-back-n). Trạm A gởi một frame reject supervisory nhằm thông báo lỗi ở frame 1. Biên dịch: N guyễn Việt Hùng Trang189 Bài giảng: Truyền số liệu Chương 11: Giao thức kết nối dữ liệu Station A Station B ` ` Data F F I-Frame F l l A Data C a a 0 2 S g g Data F F I-Frame F l l A Data C Error a a 1 2 S g g Data F F I-Frame F l l A Data C a a 2 2 S g g Reject F F F S-Frame l l C B a a S 1 REJ g g Data F F I-Frame F l l A Data C a a 1 2 S g g Data F F I-Frame F l l A Data C a a 2 2 S g g Acknowledgement F F F S-Frame l l C B a a S 3 RR g g Hình 11.26 11.2 THỦ TỤC TRUY CẬP KẾT NỐI MẠNG N hiều giao thức dựa trên phạm trù link access procedure (LAP) đã được phát triển. Các giao thức đặc thù này là các tập con của HDLC trong các ứng dụng cụ thể, trong đó LAPB, LAPD và LAPM là thông dụng nhất. LAPB Link access Procedure, Balanced (LAPB), đơn giản là tập con của HDLC và chỉ được dùng để kết nối một trạm với mạng. ChuNn này chỉ cung cấp những chức năng cơ bản cần thiết để thông tin giữa DTE và DCE (tức là không có các ký tự poll và select) LAPB chỉ được dùng trong các cấu hình đối xứng giữa hai thiết bị. Thông tin thường ở chế độ không đối xứng cân bằng. LAPB hiện được dùng trong ISDN , kênh B LAPD Link access procedure for D channel (LAPD) là một tập con đơn giản của HDLC dùng trong ISDN và dùng với chế độ không đồng bộ cân bằng (ABM) LAPM Link access procedure for modems (LAPM) là tập con đơn giản của HDLC dùng cho modem. Được thiết kế cho chuyển đổi không đồng bộ-đồng bộ, phát hiện lỗi, và chuyển lại. Được phát triển cho các ứng dụng của HDLC trên modem Biên dịch: N guyễn Việt Hùng Trang190
File đính kèm:
- bai_giang_truyen_so_lieu_chuong_11_giao_thuc_ket_noi_du_lieu.pdf