Bài giảng Thông tin dữ liệu và mạng máy tính - Chương 4: Các giao thức điều khiển liên kết dữ liệu (Data Link Control Protocols)

4.3. Các giao thức định hướng ký tự: - Sử dụng trong các ứng dụng điểm – điểm hoặc đa điểm - Dùng các ký tự điều khiển để thực hiện các chức năng điều khiển việc truyền dữ liệu như điều khiển lỗi, đánh dấu bắt đầu và cuối khung, trong suốt dữ liệu (error control, start of frame, end of frame, transparency). Trong suốt dữ liệu là chức năng đặc biệt nhằm ngăn chặn sự nhầm lẫn giữa dữ liệu và thông tin điều khiển. 4.3.1 Giao thức Kermit: a./ Đặc điểm: - Là giao thức thuộc nhóm Idle RQ - Dữ liệu được truyền theo kiểu đơn công - Ứng dụng trong việc truyền file giữa 2 máy tính - Liên kết có thể là một kênh truyền được thiết lập thông qua mạng PSTN sử dụng modem hoặc cặp dây cáp xoắn đôi với bộ điều khiển thu phát thích hợp. Thường dùng truyền đồng bộ. - Do là giao thức đơn công nên nếu các DTE sử dụng modem để thực hiện việc truyền dữ liệu thì một modem phải được thiết lập ở chế độ khởi gọi (originate mode) và modem còn lại phải được thiết lập ở chế độ trả lời (answer mode). Và cả 2 modem phải cài đặt hoạt động ở cùng tốc độ. Để truyền file theo hướng ngược lại thì 2 modem phải được thiết lập ở chế độ ngược lại. b./ Hoạt động: - Mỗi user chạy chương trình KERMIT và nhập lệnh CONNECT để thiết lập liên kết vật lý - Use phía nhận tin thực hiện lệnh RECEIVE - User phía phát thực hiện lệnh SEND kèm theo filename - User phát sẽ thực hiện phát tuần tự từng đọan file cần phát - Sau khi tất cả các phân đọan của tập tin đã được truyền, cả 2 user sẽ thóat khỏi giao thức Kermit và giải phóng kết nối bằng lệnh EXIT - Để truyền tập tin theo hướng ngược lại, thứ tự của các lệnh được đảo lại giữa 2 máy

pdf18 trang | Chia sẻ: thanhle95 | Lượt xem: 502 | Lượt tải: 3download
Bạn đang xem nội dung tài liệu Bài giảng Thông tin dữ liệu và mạng máy tính - Chương 4: Các giao thức điều khiển liên kết dữ liệu (Data Link Control Protocols), để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu Chương 4: CÁC GIAO THỨC ĐIỀU KHIỂN LIÊN KẾT DỮ LIỆU (DATA LINK CONTROL PROTOCOLS) 4.1. Tổng quan: - Lớp điều khiển liên kết số liệu liên quan đến việc truyền dữ liệu qua một liên kết dữ liệu nối tiếp. Liên kết số liệu có thể là một kênh vật lý điểm nối điểm hoặc một kênh vô tuyến hoặc một liên kết vật lý hay luận lý qua các mạng chuyển mạch. Chế độ truyền có thể là đồng bộ hay bất đồng bộ và dựa trên giao thức điều khiển truyền định hướng ký tự hay định huớng bit. - Giao thức tuyến liên kết dữ liệu có thể cung cấp user các lọai dịch vụ: + Dịch vụ kết nối không định hướng: trong kiểu dịch vụ này nếu phát hiện bất kỳ frame nào bị lỗi thì các frame đó sẽ được lọai bỏ, họat động truyền lại thuộc về chức năng của lớp cao hơn. Kiểu dịch vụ này không sử dụng thủ tục Connect và Disconnect. + Dịch vụ kết nối có hướng : cung cấp một dịch vụ truyền dữ liệu tin cậy. Kiểu dịch vụ này sử dụng thủ tục L – Connect và L – Disconnect để thiết lập và giải phóng kết nối. 4.2. Các môi trường ứng dụng: Hình 4.1a: mô hình điểm – điểm Hình 4.1b: mô hình đa điểm ĐH Kỹ thuật Công nghệ Trang 77 Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu Hình 4.1c: mô hình mạng WAN Hình 4.1d: mô hình mạng LAN ¾ Với kết nối điểm – điểm: + Sử dụng kết nối vật lý trực tiếp (dùng cáp xoắn, cáp đđồng trục, cáp quang) – dùng trong trường hợp khỏang cách kết nối gần + Sử dụng mạng điện thọai công cộng dùng modem – ứng dụng trong trường hợp khỏang cách kết nối xa. + Sử dụng một kênh thông qua mạng ghép kênh tư nhân hoặc liên kết vô tuyến như liên kết vi ba hay liên kết vệ tinh. - Lọai giao thức liên kết số liệu được dùng tùy vào khỏang cách vật lý và tốc độ bit của liên kết. + Đối với liên kết tốc độ bit thấp (liên kết dùng modem), giao thức thường được sử dụng là Idle RQ, ví dụ như giao thức Kermit, X – modem. + Đối với liên kết tốc độ bit cao và đặc biệt là các liên kết có cự ly xa, giao thức thường được sử dụng là Continuos RQ, ví dụ như HDLC. ¾ Với liên kết đa điểm: - Sử dụng một đường bus để liên kết tất cả các DTE lại với nhau. Do đó, chúng ta phải đảm bảo tất cả các hoạt động truyền dữ liệu giữa các DTE đều được thực hiện theo một phương pháp có kiểm sóat và không bao giờ có 2 hoạt động truyền xảy ra đồng thời. ĐH Kỹ thuật Công nghệ Trang 78 Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu ĐH Kỹ thuật Công nghệ Trang 79 - Trong cấu hình đa điểm, thường có một máy tính chủ (Master) và nhiều máy tính tớ (Slave). Việc truyền dữ liệu trong mạng xảy ra giữa Master và Slave và do Master điều khiển. Cấu hình này thường hoạt động theo chế độ poll – select. o Poll message: Master gửi thông điệp Poll đến Slave nếu nó muốn nhận dữ liệu từ Slave. o Select message: Master gửi thông điệp Select đến Slave nếu nó muốn truyền dữ liệu cho Slave. 4.3. Các giao thức định hướng ký tự: - Sử dụng trong các ứng dụng điểm – điểm hoặc đa điểm - Dùng các ký tự điều khiển để thực hiện các chức năng điều khiển việc truyền dữ liệu như điều khiển lỗi, đánh dấu bắt đầu và cuối khung, trong suốt dữ liệu (error control, start of frame, end of frame, transparency). Trong suốt dữ liệu là chức năng đặc biệt nhằm ngăn chặn sự nhầm lẫn giữa dữ liệu và thông tin điều khiển. 4.3.1 Giao thức Kermit: a./ Đặc điểm: - Là giao thức thuộc nhóm Idle RQ - Dữ liệu được truyền theo kiểu đơn công - Ứng dụng trong việc truyền file giữa 2 máy tính - Liên kết có thể là một kênh truyền được thiết lập thông qua mạng PSTN sử dụng modem hoặc cặp dây cáp xoắn đôi với bộ điều khiển thu phát thích hợp. Thường dùng truyền đồng bộ. - Do là giao thức đơn công nên nếu các DTE sử dụng modem để thực hiện việc truyền dữ liệu thì một modem phải được thiết lập ở chế độ khởi gọi (originate mode) và modem còn lại phải được thiết lập ở chế độ trả lời (answer mode). Và cả 2 modem phải cài đặt hoạt động ở cùng tốc độ. Để truyền file theo hướng ngược lại thì 2 modem phải được thiết lập ở chế độ ngược lại. b./ Hoạt động: - Mỗi user chạy chương trình KERMIT và nhập lệnh CONNECT để thiết lập liên kết vật lý - Use phía nhận tin thực hiện lệnh RECEIVE - User phía phát thực hiện lệnh SEND kèm theo filename - User phát sẽ thực hiện phát tuần tự từng đọan file cần phát - Sau khi tất cả các phân đọan của tập tin đã được truyền, cả 2 user sẽ thóat khỏi giao thức Kermit và giải phóng kết nối bằng lệnh EXIT - Để truyền tập tin theo hướng ngược lại, thứ tự của các lệnh được đảo lại giữa 2 máy Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu ĐH Kỹ thuật Công nghệ Trang 80 Hình 4.2: Quá trình thực thi của giao thức Kermit c./ Cấu trúc khung của giao thức Kermit: Hình 4.3: Dạng khung của giao thức Kermit - SOH: ký tự dùng để chỉ bắt đầu một khung. - LEN: chứa số ký tự trong một khung (tính từ sau LEN tới hết BCC) - SEQ: số tuần tự của khung - TYPE: ký tự cho biết lọai khung, mỗi lọai sẽ có nội dung và nhiệm vụ khác nhau ƒ S (send initation): khung S dùng để thiết lập các thông số được xem như là khung để khởi động quá trình truyền (khung gởi lời mời) ƒ F (filename): chứa tên file cần truyền. ƒ D (file data): dữ liệu ƒ Z: còn gọi là khung EOF (end of file), được máy phát truyền đi sau khi nó đã truyền xong một tập tin ƒ B: còn gọi là EOT (End of transacsion), khung thông báo kết thúc quá trình truyền, được máy phát truyền đi khi tất cả các tập tin đã được truyền. ƒ Y: khung phản hồi tín hiệu ACK ƒ N: khung phản hồi tín hiệu NAK - frame ƒ E (fatal error): khung báo lỗi - DATA: chứa nội dung tập tin cần truyền - BCC: ký tự kiểm tra khối - CR (carriage return): ký tự dùng để kết thúc khối Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu d./ Tuần tự gửi các frame của giao thức Kermit: Hình 4.4: Tuần tự gửi frame của giao thức Kermit - Frame được gửi trước tiên để khởi động truyền tập tin là frame gởi lời mời (S) (nó bao gồm một danh sách các tham số liên quan đến giao thức như chiều dài frame tối đa, khỏang thời gian timeout được dùng để truyền lại) - Máy thu trả lời đáp bằng một khung chấp nhận (Y) - Máy phát xử lý truyền nội dung tập tin. Trước hết, một khung đầu tập tin có chứa tên tập tin được truyền. Tiếp theo là tuần tự các khung dữ liệu (D) chứa nội dung của tập tin. Sau khi khung dữ liệu cuối cùng của tập tin đã được truyền, máy thu được thông báo bằng một khung kết thúc tập tin (Z) - Sau đó, các tập tin khác có thể được truyền theo cách tương tự. Cuối cùng, khi tất cả các tập tin đã được truyền, máy phát gửi một khung kết thúc thao tác (B) cho máy thu. - Vì Kermit là giao thức thuộc nhóm Idle RQ nên sau khi truyền mỗi I – frame, máy phát đợi cho đến khi nhận được khung báo nhận đúng (Y) hoặc báo nhận sai (N) (sử dụng phương pháp kiểm tra tổng khối dùng ký tự kiểm tra là BCC). Để dự ĐH Kỹ thuật Công nghệ Trang 81 Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu phòng trường hợp các khung này bị hỏng, một bộ định thời được khởi động mỗi khi truyền một khung mới. 4.3.2 Giao thức BSC (Bynary Synchronous Control) - Là giao thức bán song công - Sử dụng kiểu truyền dữ liệu đồng bộ. - Hoạt động theo giao thức Idle RQ - Là giao thức kết nối có hướng, sử dụng chủ yếu trong cấu hình đa điểm. Trong đó một Master station sẽ điều khiển việc truyền dữ liệu tới các Slave station. a./ Cấu trúc khung và các ký tự điều khiển của giao thức BSC: Hình 4.5a: Cấu trúc các khung dữ liệu trong giao thức BSC ĐH Kỹ thuật Công nghệ Trang 82 Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu Hình 4.5b: Cấu trúc các khung điều khiển trong giao thức BSC ƒ SOH: start of header ƒ Identifier: chỉ số tuần tự của khối ƒ Station address (địa chỉ trạm): địa chỉ vật lý của thiết bị đầu cuối ƒ BCC: ký tự kiểm tra khối, bao gồm cả STX và ETX ƒ ETB (end of transmission block):được dùng để chỉ điểm cuối của một khối dữ liệu khi một bản tin được chia thành một số khối ƒ EOT (end of transmission): ký tự kết thúc việc truyền dẫn, có 2 chức năng: + Kết thúc việc truyền data và xóa kết nối logic giữa 2 trạm thông tin + Reset đường truyền trở về trạng thái Idle, chức năng này được dùng trong ENQ. ƒ ENQ (enquiry): được dùng như là yêu cầu trả lời từ một trạm ở xa, trả lời có thể bao gồm thuộc tính và/hoặc trạng thái của trạm ƒ Ký tự ACK hay NAK - frame cũng có 2 chức năng: + Là những ký tự điều khiển trả lời đáp ứng của khung data, trường hợp này khung có chứa chỉ số tuần tự 0/1 + Dùng để trả lời yêu cầu select (trường hợp này không có số thứ tự của khung data): o Nếu là ACK thì chấp nhận o Nếu là NAK - frame thì từ chối ĐH Kỹ thuật Công nghệ Trang 83 Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu b./ Hoạt động của giao thức: - Giao thức BSC hoạt động theo mô hình điểm – đa điểm. Có một thiết bị đầu cuối giữ vai trò điều phối hệ thống gọi là Master, các thiết bị đầu cuối còn lại được gọi là Slave. - Master sẽ quản lý tất cả việc truyền dữ liệu trong mạng. Bản tin điều khiển quét (Poll) được dùng để yêu cầu một Slave nào đó gửi bất kỳ số liệu đang đợi nào mà nó có, bản tin điều khiển chọn (Select) được dùng để hỏi máy Slave có sẵn sàng nhận số liệu hay không. a./ Lược đồ poll – select b./ Chọn (select) ĐH Kỹ thuật Công nghệ Trang 84 Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu ĐH Kỹ thuật Công nghệ Trang 85 c./ Quét (poll) Hình 4.6: Các tuần tự khung của BSC ¾ Select: - Để chọn một Slave nào đó, Master sẽ gửi một thông điệp điều khiển chọn ENQ, trong đó có địa chỉ của Slave (đứng trước ký tự ENQ) - Giả sử, Slave được chọn sẵn sàng nhận thông điệp, nó trả lời bằng một ACK. - Sau đó, Master gởi thông tin dưới dạng một khối số liệu đơn hoặc một tuần tự nhiều khối số liệu. - Nếu không có lỗi xảy ra, Slave sẽ đáp ứng bằng một ACK cho mỗi khối. - Cuối cùng, sau khi truyền hòan tất nội dung bản tin, Master gửi thông điệp EOT để kết thúc họat động chuyển số liệu và xóa kết nối logic giữa 2 trạm - Cuối cùng, khi đã hòan tất truyền nội dung bản tin và báo nhận, Master sẽ gửi thông điệp điều khiển EOT để kết thúc. ƒ Trong vài trường hợp, khi chọn một trạm không nhất thiết phải đợi một báo nhận cho thông điệp ENQ trước khi gửi một bản tin. Ví dụ, nếu một trạm đã được chọn trước đó và cầu nối luận lý chưa bị xóa. Trong trường hợp như vậy Master gửi bản tin ngay sau thông điệp điều khiển chọn, không cần phải đợi một ACK (hay NAK). Điều này được gọi là tuần tự chọn nhanh (fast select sequence). ¾ Poll: - Trước tiên, Master gởi một bản tin điều khiển Poll trong đó có địa chỉ của Slave được quét đặt trước ENQ. Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu - Giả sử, Slave được quét có một bản tin đang đợi truyền, nó đáp ứng bằng cách gửi bản tin này. - Nếu không có lỗi xảy ra, Slave sẽ đáp ứng bằng một thông báo chấp nhận ACK. - Cuối cùng, khi đã hòan tất truyền nội dung bản tin và báo nhận, Master sẽ gửi thông điệp điều khiển EOT để kết thúc. 4.4. Các giao thức định hướng bit: - Sử dụng chuỗi bit đặc biệt để bắt đầu và kết thúc khung. - Phía thu sẽ thu các chuỗi bit theo cơ sở từng bit để xác định vị trí bắt đầu và kết thúc khung. - Các phương pháp để xác định vị trí bắt đầu và kết thúc khung : + Sử dụng các cờ (flag - 01111110) để chỉ ra vị trí bắt đầu và kết thúc khung + Sử dụng chuỗi bit đặc biệt (10101011) để chỉ ra vị trí bắt đầu và một byte chỉ chiều dài trong phần header của khung. + Sử dụng các mẫu mã hoá bit không chuẩn hay vi phạm bit (ví dụ mẫu bit bắt đầu là JK0JK000 và mẫu kết thúc là JK1JK111) để xác định giới hạn đầu và cuối khung dữ liệu. 4.4.1 Giao thức HDLC (high level data link control): - Là một giao thức chuẩn hóa quốc tế và được định nghĩa bởi tổ chức tiêu chuẩn quốc tế ISO. - Sử dụng cho cả liên kết điểm – điểm và đa điểm - Họat động ở chế độ trong suốt, song công hòan tòan - Một số tên gọi khác: SDLC (Synchronous data link control) của IBM, ADCCP (Advanced dala communications control procedure) là tên dùng bởi tổ chức ANSI ¾ Các cấu hình họat động: - Không cân bằng: mỗi trạm thông tin hoặc là Primary hoặc là Secondary - Cân bằng: một trạm thông tin vừa là Primary vừa là Secondary Hình 4.7: cấu hình mạng dùng HDLC ĐH Kỹ thuật Công nghệ Trang 86 Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu Lưu ý: + Các frame được gửi từ Primary đến Secondary được gọi là lệnh (command) + Các frame được gửi từ Secondary đến Primary được gọi là đáp ứng (response) ¾ Các chế độ (mode) hoạt động của HDLC: có 3 chế độ 1./ Chế độ đáp ứng thông thường NRM (Normal response mode): Sử dụng trong mô hình không cân bằng. Trong chế độ này, các trạm Secondary chỉ có thể truyền dữ liệu khi nhận được lệnh từ Primary. Cấu hình hoạt động có thể là điểm nối điểm hoặc đa điểm. Trường hợp đa điểm chỉ cho phép một Primary. 2./ Chế độ đáp ứng bất đồng bộ ARM (Asynchronous response mode): Sử dụng trong mô hình không cân bằng. Trong chế độ này, Secondary có thể truyền dữ liệu mà không cần chờ lệnh từ Primary. Chế độ này thường hoạt động trong cấu hình điểm nối điểm và trong các tuyến liên kết công cộng, cho phép Secondary truyền các frame bất đồng bộ so với Primary. 3./ Chế độ cân bằng bất đồng bộ ABM (Asynchronous Balanced mode): Sử dụng chủ yếu trong cấu hình điểm – điểm. Liên kết song công. Trong chế độ này, mỗi trạm vừa đóng vai trò Secondary, vừa đóng vai trò Primary. ¾ Cấu trúc khung: Hình 4.8 : Cấu trúc khung của giao thức HDLC Mỗi khung HDLC có thể chứa 6 trường: - Trường flag: dùng để chỉ bắt đầu và kết thúc một khung data, có giá rị 01111110 - Trường địa chỉ (address): chứa địa chỉ của trạm secondary, dùng 8 hoặc 16 bit tùy thuộc vào chế độ hoạt động. A(8), C(8), FSC(16): dạng chuẩn A(16), C(16), FSC(32): dạng mở rộng Nếu Primary thông tin với một trạm Secondary thì vùng địa chỉ chứa địa chỉ của trạm Secondary (địa chỉ đến). Nếu trạm Secondary trả lời một đáp ứng cho Primary thì vùng địa chỉ cũng sẽ chứa địa chỉ của trạm Secondary (địa chỉ đi). Trường hợp các mạng lớn (có nhiều trạm Secondary) thì vùng địa chỉ có thể mở rộng hơn 8 bit. Nếu vùng địa chỉ có 1 byte thì bit cuối cùng luôn là bit 1. Nếu vùng địa chỉ có nhiều hơn một byte thì tất cả các byte trừ byte cuối cùng sẽ kết thúc với bit 0, chỉ có byte cuối cùng kết thúc với bit 1. - Trường Control: trường này có thể dùng một hoặc 2 byte được dùng cho quản lý luồng. Trường hợp 2 byte là trường hợp mở rộng. Có 3 loại khung trong HDLC: ĐH Kỹ thuật Công nghệ Trang 87 Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu ĐH Kỹ thuật Công nghệ Trang 88 a./ Dạng khung chuẩn Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu b./ Dạng khung mở rộng Hình 4.9: Ý nghĩa của các bit trong vùng điều khiển của giao thức HDLC + P/F: vùng này chỉ có một bit nhưng có 2 mục đích. Một khung của bất kỳ loại nào được gởi đi từ Primary được gọi là command và được gọi là response nếu được gởi đi từ trạm Secondary. + Bit P/F được gọi là quét (Poll) khi được dùng trong command frame và được gọi là bit kết (Final) khi được dùng trong response frame. ™ Khung thông tin (Information frame):I – frame là khung dữ liệu, mang thông tin trao đổi giữa 2 trạm. Trong các trường hợp trao đổi dữ liệu song công hay bán song công, trạm 2 có thể xác nhận đã thu dữ liệu từ trạm 1 trong trường điều khiển thuộc khung I – frame hơn là gửi một xác nhận riêng. Sự kết hợp dữ liệu được gửi chung với điều khiển được gọi là piggybacking. ™ Khung giám sát (Supervisory – frame): S – frame được dùng để xác nhận, kiểm sóat lỗi, điều khiển luồng. Khung này có 2 bit đầu là 10, và không có vùng thông tin. Lọai của khung giám sát được xác định bằng 2 bit mã, tức có 4 lọai: o RR: Receive ready o RNR: Receive not ready ĐH Kỹ thuật Công nghệ Trang 89 o REJ: Reject o SREJ: Selective Reject Code Command 00 01 10 11 RR REJ RNR SREJ ƒ RR: có thể được dùng 4 cách 1./ACK: RR được dùng bởi bộ thu để trả về một xác nhận dương của một khung thông tin đã xác nhận khi bộ thu không có dữ liệu để truyền. Trường hợp này N(R) chứa khung đang mong đợi sẽ đến 2./ Poll: khi được truyền bởi Primary với bit P/F được đặt (bit P/F có vai trò là Poll hay P), RR yêu cầu Secondary xem có gì để gửi hay không. 3./ Đáp ứng âm đối với Poll: khi được gửi bởi trạm Secondary với bit P/F được đặt (bit P/F có vai trò như Final hay F ), RR nói với Primary là Secondary không có gì để gởi. Nếu Secondary có dữ liệu để gởi, nó sẽ đáp ứng cho Poll với một I – frame chứ không phải S – frame. Bài giảng TTDL &MMT Chương 4: các giao thức điều khiển liên kết dữ liệu 4./ Đáp ứng dương cho select: khi Secondary có khả năng nhận một truyền từ Primary, nó sẽ trả về một khung RR với P/F bit được đặt (bit P/F có vai trò như F ). ƒ RNR: có thể được dùng 3 cách 1./ACK: RNR được trả về bởi bộ thu cho trạm gởi những xác nhận cho tất cả các khung đến chỉ số ra trong N(R) nhưng yêu cầu không được gởi thêm nữa cho đến khi một khung RR được phát ra. 2./ Select: khi một Primary muốn truyền dữ liệu đến một Secondary cụ thể, nó thông báo với Secondary bằng cách gởi một khung RNR với P/F bit (vai trò là P) được đặt. Mã RNR nói với Secondary không gởi dữ liệu của nó. 3./ Đáp ứng âm đối với select: khi một Secon
Tài liệu liên quan