JavaScript is required

Cho mô hình đồ thị biểu diễn sự kết nối và chi phí kết nối giữa các router như hình minh họa bên dưới. Dùng thuật toán Dijkstra để xác định đường đi ngắn nhất từ đỉnh u đến các đỉnh còn lại.

Kết quả bảng forwarding trong u?

A.

B.

C.

D.

Đáp án khác

Trả lời:

Đáp án đúng: B


Câu hỏi yêu cầu áp dụng thuật toán Dijkstra để tìm đường đi ngắn nhất từ đỉnh 'u' đến các đỉnh còn lại trong một đồ thị có trọng số. Sau khi xác định được các đường đi ngắn nhất, chúng ta cần xây dựng bảng forwarding (bảng định tuyến) cho đỉnh 'u'. Bảng forwarding này sẽ cho biết next hop (nút kế tiếp) để đến mỗi đỉnh đích theo đường đi ngắn nhất đã tìm được. **Các bước thực hiện thuật toán Dijkstra từ đỉnh u:** 1. Khởi tạo khoảng cách từ u đến chính nó là 0, và đến tất cả các đỉnh khác là vô cùng. Đặt tập các đỉnh đã xét là rỗng. 2. Chọn đỉnh chưa xét có khoảng cách nhỏ nhất. Ban đầu là đỉnh u. 3. Cập nhật khoảng cách đến các đỉnh kề với đỉnh vừa chọn: - Nếu khoảng cách từ u đến đỉnh kề qua đỉnh hiện tại nhỏ hơn khoảng cách đã biết đến đỉnh kề đó, thì cập nhật lại khoảng cách và ghi nhận đỉnh hiện tại là đỉnh trước đó (predecessor). 4. Đưa đỉnh vừa chọn vào tập các đỉnh đã xét. 5. Lặp lại bước 2-4 cho đến khi tất cả các đỉnh đã được xét. **Áp dụng vào đồ thị:** - Bắt đầu từ u: dist(u) = 0. - Xét u: - Đến v: dist(v) = 2 (predecessor: u). - Đến w: dist(w) = 5 (predecessor: u). - Chọn v (vì dist(v) = 2 < dist(w) = 5). - Xét v: - Cập nhật đến w: dist(w) = min(5, dist(v) + 3) = min(5, 2 + 3) = 5. (predecessor vẫn là u hoặc có thể là v tùy cách cài đặt, nhưng đường đi ngắn nhất vẫn qua u hoặc v). Tuy nhiên, theo hình, cạnh v-w có chi phí 3, nên đường đi u -> v -> w có tổng chi phí 2+3=5. Đường đi trực tiếp u -> w có chi phí 5. Nên có thể chọn next hop là v hoặc w. - Đến x: dist(x) = dist(v) + 4 = 2 + 4 = 6 (predecessor: v). - Chọn w (vì dist(w) = 5). - Xét w: - Cập nhật đến x: dist(x) = min(6, dist(w) + 1) = min(6, 5 + 1) = 6. (predecessor có thể là v hoặc w). - Chọn x (vì dist(x) = 6). **Kết quả bảng Forwarding cho u:** Để xây dựng bảng forwarding, ta xem xét next hop trên đường đi ngắn nhất từ u. - Đến u: Next hop là - (hoặc chính nó). - Đến v: Đường đi ngắn nhất là u -> v (chi phí 2). Next hop là v. - Đến w: Có hai đường đi ngắn nhất đều có chi phí 5: u -> w và u -> v -> w. Theo quy ước thông thường, ta chọn next hop là đỉnh đầu tiên trên đường đi ngắn nhất (hoặc theo quy tắc tie-breaking, ví dụ chọn đỉnh có nhãn nhỏ hơn). Trong trường hợp này, cả hai lựa chọn đều hợp lý, tuy nhiên, nếu xét theo quá trình Dijkstra, khi xét đỉnh u, ta có đường đến w là 5. Khi xét đỉnh v, ta cũng cập nhật đường đến w qua v là 5. Ta cần xem xét kỹ bảng ở đáp án. Nếu ta chọn next hop dựa trên thứ tự ưu tiên đỉnh hoặc nhãn đỉnh, hoặc dựa trên thứ tự khám phá. Tuy nhiên, đáp án 2 cho thấy next hop đến w là w. Điều này có thể xảy ra nếu ta ưu tiên đường đi trực tiếp nếu chi phí bằng nhau hoặc cách cài đặt cụ thể. - Đến x: Đường đi ngắn nhất là u -> w -> x (chi phí 5+1=6) hoặc u -> v -> x (chi phí 2+4=6). Nếu next hop đến w là w và next hop đến x là w, thì đường đi là u -> w -> x. Nếu next hop đến v là v và next hop đến x là v, thì đường đi là u -> v -> x. Đáp án 2 cho thấy next hop đến x là w. Điều này có nghĩa là đường đi ngắn nhất đến x là u -> w -> x. Xem xét lại: - u đến u: 0 - u đến v: 2 (next hop: v) - u đến w: 5 (next hop: w hoặc v - nếu chọn w thì là u->w; nếu chọn v thì là u->v->w) - u đến x: 6 (khi qua w là 5+1=6, khi qua v là 2+4=6) Nếu bảng forwarding là: | Đích | Khoảng cách | Next Hop | |---|---|---| | u | 0 | - | | v | 2 | v | | w | 5 | w | | x | 6 | w | Thì đây là đáp án 2. Lí do cho next hop đến w là w có thể là vì đường đi trực tiếp u->w có chi phí 5, và đường đi u->v->w cũng có chi phí 5. Trong trường hợp chi phí bằng nhau, có thể ưu tiên đường đi trực tiếp hoặc đỉnh có nhãn nhỏ hơn (nếu có quy tắc). Đối với đỉnh x, khoảng cách ngắn nhất là 6. Có hai đường: u->v->x (next hop từ u là v) và u->w->x (next hop từ u là w). Nếu đáp án chọn next hop là w, thì nghĩa là đường đi u->w->x được chọn. Điều này phù hợp với đáp án 2.

Tài liệu đề thi cuối kỳ môn Mạng Máy Tính của Đại học Công nghệ Thông tin, ĐHQG TP.HCM. Bao gồm các câu hỏi trắc nghiệm về kiến thức mạng máy tính, giao thức, định tuyến, địa chỉ IP và cấu hình mạng.


40 câu hỏi 75 phút

Câu hỏi liên quan