Các giao thức liên kết dữ liệu được sử dụng tương tự hoặc hoặc dựa trên mức độ điều khiển liên kết dữ liệu cao (HDLC), được chuẩn hóa trong năm 1976 như là ISO 3309. Một số giao thức có nguồn gốc tương tự là :
1. Thủ tục điều khiển dữ liệu thông tin liên lạc tiên tiến (ADCCP) - một tiêu chuẩn của ANSI X3.66, sử dụng rộng rãi tại Hoa Kỳ.
2. Giao thức liên kết truy cập, cân bằng (LAP-B) - các đặc điểm kỹ thuật lớp liên kết dữ liệu của ITU-T X.25 với giao diện mạng gói (xem phần 20.7.1). 3. Giao thức liên kết truy cập, kênh D (LAP-D) - giao thức liên kết dữ liệu cho
các kênh tín hiệu trong ISDN.
4. Điều khiển liên kết dữ liệu đồng bộ (SDLC) - một tiêu chuẩn công ty IBM. HDLC là một giao thức hướng tới bit, tức là tải trọng dữ liệu là không có chiều dài cố định, cũng không phải được thể hiện trong bội số bát phân (8 bit, byte). Bất kỳ mẫu bit não cũng có thể được vận chuyển bằng HDLC mà không quan tâm đến ý nghĩa hoặc cấu trúc của nó, và do đó, giao thức này được cho là trong suốt đối với cấu trúc dữ liệu. Nó cũng đồng bộ bit từ kết nối không đồng bộ ở mức vật lý được giả định.
NHÓM 5 – KTVTA-K51 38
1. Trạm sơ cấp- chịu trách nhiệm về việc kiểm soát hoạt động của các đường dẫn. Khi một trạm sơ cấp điều khiển khiển các hoạt động của khung dữ liệu tìchúng được gọi là các lệnh.
2. Trạm thứ cấp - hoạt động dưới sự kiểm soát của một trạm sơ cấp, và nó không thể tự truyền dữ liệu riêng của mình. Khung điều khiển do các trạm thứ cấp phát ra được gọi là đáp tuyến.
3. Trạm kết hợp- hoạt động như một trạm sơ cấp hay thứ cấp, dựa theo các luồng thông tin.
Về cấu hình các loại trạm thì có hai loại cấu hình chính cung cấp bởi HDLC như minh họa trong hình 18.19:
1. Cấu hình không cân bằng - cho phép hoạt động trong mạng đa điểm 2. Cấu hình cân bằng - chỉ hoạt động giữa hai trạm được phối hợp trong một liên kết điểm nối điểm.
Các thủ tục của giao thức được mô tả trong quá trình hoạt động riêng biệt của ba chế độ khác nhau sau đây, mặc dù chế độ đầu tiên thường được sử dụng nhất:
1. Chế độ cân bằng không đồng bộ (ABM) – trong đó thông tin liên lạc tồn tại song công toàn phần trên một liên kết điểm nối điểm (Hình 18.19 (b)), cả hai trạm là phần tử bình đẳng (cân bằng) và có thể bắt đầu trao đổi dữ liệu khi cần thiết (không đồng bộ).
2. Chế độ đáp ứng không đồng bộ (ARM) – trong đó các trạm sơ cấp và thứ được liên kết bởi một liên kết điểm nối điểm bán song công.
3. Chế độ đáp ứng bình thƣờng (NRM) – là một kết nối không cân bằng (Hình 18.19 (a)), trong đó các thủ tục được bắt đầu giữa một thiết bị kiểm soát (sơ cấp) và một hoặc nhiều trạm thứ cấp.
Có ba loại khung cần thiết để kiểm soát các đường dẫn và việc trao đổi dữ liệu. Đó là:
1. Khung thông tin (I) – có chứa các tải trọng dữ liệu và các thông số điều khiển luồng liên quan đến nó.
2. Khung giám sát (S) – có chứa các thông tin điều khiển cần thiết để thiết lập các liên kết và thực hiện kiểm soát lỗi ARQ cũng như điều khiển luồng nếu không có các khung dữ liệu truyền về trên kênh ngược lại
NHÓM 5 – KTVTA-K51 39
Cấu trúc khung, tương tự cho tất cả ba loại khung, được minh họa trong Hình 18.20.
Vì trường thông tin trong khung có chiều dài thay đổi nên cả hai phía đầu và cuối mỗi khung phải được đánh dấu theo cách riêng. Đặc biệt HDLC sử dụng cùng bit mẫu để kí hiệu điểm bắt đầu và kết thúc của khung.
Hình 18.19 Cấu hình thông tin liên lạc HDLC: (a) không cân bằng, (b) cân bằng
Bit mẫu này được gọi là cờ hiệu và là chuỗi 01111110. Từ khi bộ điều khiển liên kết dữ liệu bắt đầu dò xét luồng dữ liệu đối với ký hiệu cờ hiệu này đến khi dữ liệu được nhận, dữ liệu phải được xử lý để cờ hiệu không bao giờ xuất hiện trong luồng truyền đi. Thao tác hay xử lý này được gọi là nhồi bit, cụ thể là chèn thêm bit 0 vào mỗi khi một chuỗi 5 bit 1 mã nhị phân xuất hiện. Do đó, cờ hiệu chỉ xuất hiện tại các điểm chính xác trong luồng số được gửi đến chứ không phụ thuộc vào nội dung của dữ liệu được truyền đi ( tất nhiên tất cả các thiết bị đầu cuối sẽ xóa bit 0 sau khi nhận bất khì 5 bit nhị phân). Đương nhiên, các lỗi có thể xảy ra trong truyền tải và làm nhiễu loạn sự sắp xếp này, nhưng mặc dù các sự kiện như vậy là phiền hà, thủ tục vẫn tồn tại cho việc phục hồi. Hình 18.21 minh họa ý tưởng của việc nhồi bit.
Khi các khung được truyền hoặc nối với nhau, thì một cờ hiệu duy nhất là đủ để đánh dấu sự kết thúc của một khung và bắt đầu khung tiếp theo (Hình 18.22).
NHÓM 5 – KTVTA-K51 40
Các chức năng khác của các trường trong khung HDLC là:
1. Trƣờng địa chỉ - xác định các trạm thứ cấp đến, và chỉ cần thiết cho các trường hợp không cân bằng (Hình 18.19), nhưng luôn luôn thống nhất
2. Trƣờng thông tin - chỉ xuất hiện trong khung I và một số khung U, chiều dài tối đa của nó được xác định riêng cho mỗi ứng dụng.
3. Trƣờng thông tin kiểm tra (FCS) - độ dài thong thường là 16 bit, nhưng cũng có thể mở rộng thành 32 bít nếu có yêu cầu.
4. Trƣờng điều khiển - có cấu trúc phụ thuộc vào từng loại khung, được chỉ ra trong hình 18.20. Bít đầu tiên chỉ ra có phải là không I hay không, và nếu không phải, bít thứ 2 sẽ phân biệt giữa khung S và khung U.
NHÓM 5 – KTVTA-K51 41
Hình 18.21 Cờ hiệu và bit nhồi trong HDLC
Hình 18.22. Nối khung HDLC
Đối với khung I, trường điều khiển mang 2 chỉ số điều khiển lưu lượng N(S) và N(R), trong đó chỉ ra, tương ứng, số khung đi và số của khung tiếp theo dự kiến tại trạm này. Ba bit được phân bổ cho từng bộ đếm, cho phép cửa sổ trượt có kích thước tối đa là 7, nhưng có thể cung cấp trường điều khiển mở rộng 16 bít nếu cần thiết, cho phép cới 7 bít đếm và kích thước cửa sổ trượt tối đa là 127. Bít P/F được dung chủ yếu trong các NRM để cảnh báo trạm và làm tín hiệu báo kết thúc 1 chuỗi khung.
Trường điều khiển khung S cũng chứa N(R) và như vậy có thể mang lại các thông tin xác nhận để thực hiện phương pháp ARQ. Trường điều khiển khung S như trên hình 18.20 cho phép xác định được 8 khung S khác nhau, 4 khung quan trọng nhất trong số đó là:
NHÓM 5 – KTVTA-K51 42
1.Khung S(RR): xác nhận đã nhận đúng khung S, khi mà khung I không có sẵn 2.Khung S(RNR): chỉ ra tình trạng bận
3.Khung S(REJ): báo lỗi nhận khung S, và yêu cầu truyền lại khung từ N(R) trở đi (go-back-N)
4.Khung S(SREJ): chỉ truyền lại khung được đánh số N(R) (truyền lại có chọn lọc).
Khung U không mang số thứ tự, và được sử dụng cho một loạt các kiểm soát các hoạt động như thiết lập các chế độ hoạt động, phục hồi các điều kiện lỗi,.. v..v..