Bối cảnh và vấn đề nghiên cứu

Mạng khả lập trình (Software-Defined Network - SDN) là kiến trúc mạng tách biệt tầng điều khiển (control plane - nơi quyết định phương thức xử lý lưu lượng) khỏi tầng dữ liệu (data plane - nơi trực tiếp chuyển tiếp gói tin dựa trên cấu hình từ tầng điều khiển). Việc tập trung tầng điều khiển logic cho phép phần mềm quản trị tác động lên nhiều thiết bị chuyển tiếp thông qua các giao diện lập trình ứng dụng (API). Tuy nhiên, việc triển khai tầng điều khiển tập trung vật lý bộc lộ những nhược điểm cố hữu: bộ điều khiển duy nhất trở thành điểm chịu lỗi đơn (single point of failure) của toàn mạng và dễ rơi vào tình trạng quá tải, trở thành nút cổ chai (bottleneck) khi quy mô hạ tầng mở rộng.

Nhằm khắc phục tình trạng trên, các mô hình đa điều khiển (multi-controller) đã ra đời. Dù vậy, đa phần nền tảng điều khiển SDN hiện nay vẫn được đóng gói dưới dạng nguyên khối (monolithic). Mỗi khi triển khai thêm bản sao của bộ điều khiển, toàn bộ tài nguyên phần cứng và phần mềm đều phải nhân bản đồng nhất để duy trì tính nhất quán, dẫn đến lãng phí năng lực tính toán và hạn chế hiệu năng. Hướng đi mới nhằm giải quyết triệt để vấn đề này là chia nhỏ bộ điều khiển thành các vi dịch vụ (microservices - µSvc) theo từng chức năng chuyên biệt và vận hành chúng trong các container.

Khóa luận của tác giả Trần Hoàng Long tập trung giải quyết bài toán giao tiếp và kết nối giữa nhiều vùng địa lý cho bộ điều khiển Micro-ONOS (µONOS) – một nền tảng điều khiển SDN thế hệ mới hỗ trợ kiến trúc vi dịch vụ và các giao diện cấu hình hiện đại như P4, P4Runtime, gNMI/OpenConfig và gNOI.

Mục tiêu nghiên cứu của đề tài được xác định gồm ba nội dung:

  1. Hiểu và áp dụng thuật toán về đồng thuận dữ liệu, các thành phần mạng máy tính và SDN.
  2. Triển khai SDN với bộ điều khiển thế hệ mới µONOS.
  3. Xây dựng mô hình trao đổi dữ liệu giữa các miền địa lý, thiết kế hệ thống mạng dịch vụ sử dụng công nghệ Kubernetes.

Đối tượng và phạm vi nghiên cứu:

  • Đối tượng nghiên cứu: Mạng khả lập trình (SDN), cơ sở dữ liệu phân tán, thuật toán đồng thuận và kiến trúc mạng dịch vụ trên Kubernetes.
  • Phạm vi nghiên cứu: Quy trình và mô hình trao đổi, đồng bộ dữ liệu giữa hai hệ thống thuộc tầng điều khiển SDN đặt tại hai vị trí địa lý khác nhau (được giả lập trên hạ tầng cụm).

Cơ sở lý thuyết và phương pháp nghiên cứu

Về cơ sở lý thuyết, khóa luận xây dựng trên các trụ cột công nghệ chính:

  • Khái niệm và kiến trúc SDN: Dựa trên định nghĩa của Tổ chức Mạng Mở (ONF) và tài liệu Software-Defined Networks: A Systems Approach, kế thừa từ tư tưởng mạng chủ động (Active Networking). Kiến trúc logic gồm 5 thành phần: tầng ứng dụng, giao diện northbound, tầng điều khiển, giao diện southbound (OpenFlow, gNMI, gNOI, P4Runtime) và tầng dữ liệu.
  • Phân tán tầng điều khiển: So sánh mô hình phẳng (flat - các bộ điều khiển ngang hàng, chia sẻ dữ liệu qua đồng thuận) và mô hình phân cấp (hierarchical - bộ điều khiển trung tâm phân phối dữ liệu cho các bộ điều khiển cấp dưới).
  • Mô hình nhân bản và đồng bộ dữ liệu: Khảo sát 4 cơ chế gồm gửi trực tiếp nhiều bản sao từ nguồn, sao chép lưu lượng qua thành phần mạng trung gian, đồng bộ ngang hàng (peer-to-peer) và đồng bộ theo cấp. Đề tài lựa chọn kết hợp mô hình đồng bộ ngang hàng và kỹ thuật nhân bản lưu lượng.
  • Thuật toán đồng thuận: Phân tích 4 tính chất bắt buộc của thuật toán đồng thuận (Tính chấm dứt - Termination, Tính toàn vẹn - Integrity, Thỏa thuận - Agreement, Tính hiệu lực - Validity) và định lý FLP-Impossibility trong mạng bất đồng bộ. Đề tài so sánh chi tiết thuật toán Paxos và Raft:
Tiêu chí Raft Paxos
Đảm bảo leader duy nhất Mọi follower có thể trở thành candidate, nhưng mỗi follower/candidate chỉ được bầu 1 nút làm leader Mỗi một chu kỳ chỉ cho phép 1 candidate
Đảm bảo leader mới giữ mọi log Follower chỉ vote khi candidate có độ mới của dữ liệu ngang bằng nó Candidate nhận mục log từ follower có số chu kỳ lớn nhất trở lên
Đảm bảo an toàn khi leader xác nhận log từ chu kỳ trước Leader sao chép các mục cập nhật log mà không thay đổi số chu kỳ, chỉ xác nhận khi đã nhận phản hồi với số chu kỳ bằng nó Log từ các chu kỳ trước được tổng hợp chung với log của leader trong chu kỳ hiện tại
Độ phức tạp triển khai Đơn giản, dễ hiểu, dễ triển khai Phức tạp, khó hiểu, khó triển khai
Tính cập nhật và tính an toàn Ưu tiên cập nhật dữ liệu kể cả khi xảy ra lỗi Ưu tiên tính an toàn và nhất quán, thời gian phục hồi sau lỗi chậm hơn

Ngoài ra, tác giả phân tích biến thể Multi-Raft (chia cụm thành nhiều nhóm hoạt động theo các pipeline độc lập) và lựa chọn Raft làm thuật toán cốt lõi.

  • Kiến trúc vi dịch vụ và Kubernetes: Phân biệt container với máy ảo; phân tích các thành phần của Kubernetes Control Plane (API Server, Scheduler, Controller Manager, Etcd) và Worker Node (Container Runtime, Kubelet, Kube-proxy).
  • Cân bằng tải và nhân bản lưu lượng: Phân loại cân bằng tải tầng 4 và tầng 7; các thuật toán điều phối (Round Robin, Weighted Round Robin, Least Connections, Least Response Time, IP Hashing).

Phương pháp nghiên cứu được chia thành 5 nội dung cụ thể:

  • Nội dung 1: Tìm hiểu kiến trúc SDN, µONOS, Docker và Kubernetes thông qua phân tích mã nguồn và tài liệu kỹ thuật chuẩn.
  • Nội dung 2: Khảo sát, đánh giá và lựa chọn giải pháp giao tiếp liên cụm Kubernetes sẵn có.
  • Nội dung 3: Thiết kế mô hình trao đổi dữ liệu liên cụm cho µONOS (cấu trúc gói tin, đường truyền, điểm lưu trữ và cơ chế đồng bộ trạng thái).
  • Nội dung 4: Hiện thực hóa mô hình thành các vi dịch vụ bằng ngôn ngữ Go, đóng gói Docker container và tạo kịch bản triển khai pod trên Kubernetes.
  • Nội dung 5: Triển khai thực nghiệm hệ thống, thu thập dữ liệu bằng công cụ đo kiểm chuyên dụng và đánh giá hiệu năng.

Nguồn dữ liệu đánh giá thu được từ việc giả lập môi trường mạng và hệ thống phân tán, ghi nhận qua phần mềm bắt gói tin Kubeshark, Wireshark và hệ thống giám sát tài nguyên Prometheus.

Thiết kế và triển khai hệ thống

Hệ thống được thiết kế tập trung vào hai chức năng cốt lõi của tầng điều khiển SDN: điều khiển và lưu trữ dữ liệu trạng thái mạng.

Mô hình kiến trúc tổng quát gồm các khối thành phần:

  • Bộ điều khiển mạng Micro-ONOS (µONOS): Được viết bằng ngôn ngữ Go, giao tiếp nội bộ và với thiết bị mạng qua giao thức gRPC. Các vi dịch vụ cấu thành gồm:
    • Discovery: Thường xuyên quan sát, dò quét và phát hiện các thay đổi tại tầng dữ liệu.
    • Topo: Tiếp nhận thông tin từ Discovery, lưu trữ và duy trì cấu trúc tô-pô mạng.
    • Config và Device Provisioner: Đối chiếu dữ liệu từ Topo để sinh cấu hình và gửi xuống thiết bị chuyển tiếp.
    • Data Store: Tương tác định kỳ với Topo, Config, Device Provisioner để duy trì tính nhất quán thông tin.
  • Hệ thống lưu trữ phân tán Atomix: Nền tảng runtime cho ứng dụng có trạng thái trên Kubernetes. Atomix cung cấp các tài nguyên tùy biến (CRD) gồm DataStore, StorageProfile, RaftCluster (khởi tạo cụm Multi-Raft) và RaftStore (kết nối trực tiếp vào RaftCluster). Khóa luận sử dụng trực tiếp cơ sở dữ liệu phi quan hệ tích hợp sẵn cơ chế Raft của Atomix.
  • Giao diện mạng Container (CNI) và kết nối liên cụm: Sử dụng Cilium – CNI hoạt động dựa trên eBPF (extended Berkeley Packet Filter) trong nhân Linux thay cho iptables. Cilium Agent trên mỗi nút tương tác với Container Runtime Interface (CRI) và chia sẻ dữ liệu qua kho lưu trữ etcd toàn cục. Tính năng Cilium Cluster Mesh được kích hoạt để kết nối ngang hàng hai cụm Kubernetes, cho phép dịch vụ ở cụm này truy cập trực tiếp dịch vụ ở cụm kia trên một không gian mạng phẳng.

Quy trình triển khai và cấu hình:

  • Tách biệt không gian tên: Các dịch vụ Micro-ONOS đặt trong namespace micro-onos, kho lưu trữ Atomix đặt trong namespace micro-onos-data.
  • Dịch vụ điều phối: ClusterMesh, ONOS-Operator và Atomix-controller được cài đặt trên các nút điều khiển Kubernetes. Bản sao của dịch vụ Topo và cơ sở dữ liệu được đặt cùng nút tính toán; các dịch vụ tương tác trực tiếp với thiết bị mạng được phân bổ ở các worker node khác.
  • Cân bằng tải và nhân bản lưu lượng: Để dữ liệu cập nhật từ Micro-ONOS được gửi đồng thời tới cả hai cụm Atomix, tác giả thiết lập một Service cân bằng tải trung gian (RaftLB) kết hợp với tài nguyên gRPCRoute. Phần cấu hình backendRefs phân phối lưu lượng theo tỉ lệ cân bằng (mặc định tỉ lệ bằng nhau khi không gán trọng số).
  • Phân giải tên miền: Tác giả cấu hình CoreDNS để điều hướng các truy vấn tên miền nội bộ của Atomix trỏ về dịch vụ cân bằng tải. Các truy vấn có đuôi .local gửi từ Cụm 2 được chuyển tiếp sang máy chủ DNS của Cụm 1 và ngược lại.

Hạ tầng và công cụ thử nghiệm:

  • Phần cứng: Hệ điều hành Ubuntu 22.04 LTS; CPU Intel Xeon 14 nhân, 28 luồng (xung nhịp 2.4 GHz); dung lượng RAM 32 GB.
  • Phần mềm: Kind (Kubernetes-in-Docker để tạo cụm K8s đa nút), Kubectl, Docker, Helm, Cilium CLI.
  • Giả lập mạng: Mn-Stratum (mô phỏng thiết bị chuyển tiếp SDN hỗ trợ P4 và gRPC), GNS3 (kết nối các phân vùng do Mn-Stratum tạo ra thành mạng WAN hoàn chỉnh).
  • Cấu trúc mạng thử nghiệm: Gồm 2 miền mạng, mỗi miền có 7 thiết bị kết nối dạng lưới (mesh), hai miền liên kết với nhau qua 3 đường truyền chính.
  • Công cụ tương tác và quản trị: Giao diện dòng lệnh FabricSimulator để nạp cấu hình mạng từ file YAML (trivial), bộ công cụ gnmi_cli, các tập lệnh onos config, onos provisioner, onos topo, onos discovery.

Nội dung chính theo từng chương

Chương 1: Mở đầu

Tác giả trình bày lý do chọn đề tài xuất phát từ bài toán nút cổ chai và điểm chịu lỗi đơn của bộ điều khiển SDN truyền thống, cùng sự lãng phí tài nguyên của các mô hình đa điều khiển nguyên khối. Chương này xác định tính khoa học, tính mới khi ứng dụng kiến trúc vi dịch vụ và giao tiếp liên cụm cho bộ điều khiển thế hệ mới µONOS. Mục tiêu, đối tượng, phạm vi nghiên cứu, 5 nội dung phương pháp luận cùng cấu trúc 5 chương của khóa luận được công bố rõ ràng.

Chương 2: Cơ sở lý thuyết

Nội dung chương tập trung hệ thống hóa toàn bộ lý thuyết nền tảng:

  • Lịch sử phát triển từ Active Networking đến SDN và cấu trúc 5 tầng của Liang và Li.
  • So sánh 4 mô hình nhân bản và đồng bộ dữ liệu; phân tích định lý FLP-Impossibility cùng 4 tính chất của thuật toán đồng thuận.
  • So sánh chi tiết Raft và Paxos dựa trên số liệu thực nghiệm tham chiếu (độ trễ ghi của Paxos đạt tới 4000 ms/yêu cầu so với 20 ms của Raft; độ trễ đọc Paxos là 4.5 ms so với 2.2 ms của Raft; thông lượng ghi tối đa của Paxos đạt 14 yêu cầu/giây trong khi Raft đạt 11 yêu cầu/giây). Giới thiệu cơ chế Multi-Raft 4 nút 4 nhóm.
  • Tổng quan kiến trúc vi dịch vụ, Kubernetes (Master/Worker node), các kỹ thuật cân bằng tải L4/L7 (Round Robin, WRR, Least Connections, Least Response Time, IP Hashing) và nguyên lý nhân bản lưu lượng.
  • Điểm qua các công trình liên quan: MSN (Arzo et al., 2021), µABNO (Manso et al., 2020), mck8s (Tamiru et al., 2021) và nghiên cứu mạng 5G của Palamà et al. (2024).

Chương 3: Phương pháp thực hiện (Thiết kế hệ thống)

Chương này mô tả chi tiết giải pháp kỹ thuật:

  • Thiết kế mô hình kiến trúc phân tán gồm bộ điều khiển µONOS, hệ thống lưu trữ phân tán Atomix và lưới dịch vụ Cilium Cluster Mesh.
  • Trình bày luồng vận hành nội bộ của µONOS qua các dịch vụ Discovery, Topo, Config, Device Provisioner và Data Store.
  • Đặc tả kỹ thuật CNI Cilium, eBPF và cơ chế kết nối đa cụm Cilium Cluster Mesh.
  • Trình bày thông số môi trường thực nghiệm (Ubuntu 22.04 LTS, CPU Intel Xeon, 32 GB RAM, Kind, Mn-Stratum, GNS3) cùng tô-pô mạng 14 switch P4.
  • Hướng dẫn cấu hình chi tiết phân bổ pod, cài đặt dịch vụ cân bằng tải RaftLB qua gRPCRoute và điều hướng chéo tên miền liên cụm trên CoreDNS.

Chương 4: Thực nghiệm, đánh giá và thảo luận

Chương này ghi nhận quá trình vận hành và kết quả đo đạc:

  • Trực quan hóa hệ thống: Đánh giá giao diện web của Micro-ONOS (mới hiển thị trạng thái thiết bị P4Runtime/gNMI, cổng, kết nối Stratum) và giao diện CLI FabricSimulator khi nạp tô-pô.
  • Thiết lập 6 tiêu chí đánh giá: Độ trễ thiết lập luồng, độ trễ phát hiện thay đổi mạng, mức tiêu thụ CPU trung bình (%), mức tiêu thụ RAM trung bình (MB), tỉ lệ mất gói khi controller gặp sự cố (%), thời gian phục hồi dữ liệu sau sự cố (giây).
  • Ứng dụng Kubeshark/Wireshark để phân tích độ trễ gói tin và Prometheus để đo tài nguyên.
  • Công bố kết quả thực nghiệm về độ trễ thiết lập luồng (Bảng 4.1) và độ trễ phát hiện thay đổi mạng (Bảng 4.2). Phân tích sự biến thiên tài nguyên CPU khi xảy ra quá trình đồng thuận Raft và khi có sự cố nút điều khiển.

Chương 5: Kết luận và hướng phát triển

Chương cuối tóm tắt toàn bộ kết quả đạt được trong việc thiết kế và triển khai giao diện liên cụm cho bộ điều khiển SDN vi dịch vụ. Tác giả thẳng thắn chỉ ra các giới hạn hiện tại của mô hình thử nghiệm và đề xuất các định hướng nghiên cứu tiếp theo.

Kết quả và đóng góp

Khóa luận đã ghi nhận các số liệu thực nghiệm cụ thể thông qua hệ thống đo kiểm:

Tiêu chí đo kiểm Trường hợp cùng mạng Trường hợp khác mạng Ghi chú từ tác giả
Độ trễ thiết lập luồng nhỏ nhất 0.003 giây Cao hơn cùng mạng Tính từ gói PACKET_IN đến khi quy tắc luồng có hiệu lực
Độ trễ thiết lập luồng lớn nhất 0.009 giây Cao hơn cùng mạng Chưa tính trễ lan truyền vật lý do dùng mạng mô phỏng
Độ trễ phát hiện thay đổi mạng nhỏ nhất 0.008 giây Cao hơn cùng mạng Đo khi gỡ và gắn lại switch trên hạ tầng
Độ trễ phát hiện thay đổi mạng lớn nhất 0.047 giây Cao hơn cùng mạng Cần thêm thời gian cân bằng tải, DNS và định tuyến liên cụm

Về tài nguyên hệ thống và độ tin cậy:

  • Mức tiêu thụ CPU tăng nhẹ trong quá trình thiết lập luồng và cập nhật trạng thái mạng, do hệ thống phải thực thi thuật toán đồng thuận Raft giữa các nút lưu trữ Atomix.
  • Khi một bộ điều khiển gặp sự cố, bộ điều khiển còn lại tiếp quản quyền điều khiển toàn bộ thiết bị mạng của cả hai miền, dẫn đến mức tải tài nguyên tính toán trên cụm còn lại tăng lên tương ứng.
  • Tỉ lệ mất gói tin được xác định trong khoảng thời gian chuyển giao 5 giây khi bộ điều khiển gặp sự cố, trước khi đường định tuyến mới qua bộ cân bằng tải có hiệu lực.

Các giải pháp kỹ thuật do tác giả đề xuất:

  • Giải pháp phân phối và nhân bản lưu lượng cập nhật bằng cách đặt dịch vụ cân bằng tải RaftLB và cấu hình tài nguyên gRPCRoute nằm giữa Micro-ONOS và hệ thống lưu trữ Atomix.
  • Giải pháp định tuyến liên cụm ngang hàng thông qua Cilium Cluster Mesh và cơ chế phân giải tên miền chéo cụm dựa trên CoreDNS.

Đóng góp của đề tài:

  • Tổng hợp, phân loại toàn diện các vấn đề và hạn chế của tầng điều khiển SDN truyền thống.
  • Phân tích chuyên sâu thuật toán đồng thuận Raft, Paxos và ứng dụng của Multi-Raft trong cơ sở dữ liệu phân tán phục vụ mạng điều khiển.
  • Đánh giá tính khả thi và hiệu quả của kiến trúc vi dịch vụ trong việc hiện thực hóa các chức năng của tầng điều khiển SDN trên nền tảng điều phối Kubernetes.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế của đề tài (được tác giả nêu rõ trong văn bản):

  • Giao diện web của Micro-ONOS tại thời điểm nghiên cứu chưa hoàn thiện, chỉ mới hiển thị danh sách thiết bị và liên kết cơ bản, chưa hỗ trợ cấu hình mạng trực quan toàn diện.
  • Hệ thống thử nghiệm hoàn toàn vận hành trên các công cụ mô phỏng phần mềm (Kind, Mn-Stratum, GNS3), chưa tích hợp chức năng mô phỏng khoảng cách vật lý của đường truyền. Do đó, các kết quả đo đạc độ trễ liên cụm chưa bao gồm thời gian lan truyền vật lý (propagation delay) thực tế giữa các vùng địa lý.
  • Phương pháp nhân bản lưu lượng đòi hỏi tiêu tốn nhiều tài nguyên mạng hơn so với cân bằng tải thông thường do số lượng gói tin nhân đôi khi truyền qua liên cụm.

Hướng nghiên cứu và phát triển tiếp theo:

  • Triển khai và kiểm thử mô hình trên môi trường phần cứng mạng thực tế hoặc tích hợp công cụ mô phỏng độ trễ truyền thông WAN để phản ánh chính xác các yếu tố vật lý.
  • Nghiên cứu tối ưu hóa chính sách định tuyến và cơ chế nhân bản lưu lượng nhằm giảm thiểu băng thông tiêu hao giữa các cụm.
  • Mở rộng quy mô thử nghiệm kết nối lưới dịch vụ trên nhiều hơn hai cụm điều khiển và hoàn thiện các tính năng quản trị trên giao diện người dùng.

Giá trị tham khảo

Khóa luận là tài liệu tham khảo phù hợp cho:

  • Sinh viên, học viên chuyên ngành Mạng máy tính, Truyền thông dữ liệu, Hệ thống thông tin và Kỹ thuật phần mềm đang thực hiện đồ án, khóa luận về SDN hoặc hệ thống phân tán.
  • Các kỹ sư mạng và DevOps đang tìm kiếm giải pháp phân tán hóa tầng điều khiển SDN, ứng dụng kiến trúc vi dịch vụ để nâng cao tính sẵn sàng của hạ tầng mạng.

Các nội dung có giá trị tham khảo chuyên sâu:

  • Bảng so sánh đặc tính kỹ thuật giữa Raft và Paxos cùng nguyên lý hoạt động của Multi-Raft tại Chương 2.
  • Phương pháp luận kết hợp CNI Cilium (eBPF), tính năng Cluster Mesh và cơ chế phân giải CoreDNS để kết nối dịch vụ đa cụm Kubernetes tại Chương 3.
  • Quy trình giả lập mạng SDN P4 bằng Mn-Stratum kết hợp GNS3 và Kind để phục vụ thử nghiệm không đòi hỏi thiết bị phần cứng đắt tiền.

Câu hỏi thường gặp

1. Tại sao khóa luận lại lựa chọn bộ điều khiển Micro-ONOS thay vì ONOS nguyên khối truyền thống?
Micro-ONOS được phát triển hoàn toàn bằng ngôn ngữ Go theo kiến trúc vi dịch vụ, giúp hệ thống gọn nhẹ, tiêu thụ ít tài nguyên và dễ dàng mở rộng từng thành phần độc lập trên Kubernetes. Nền tảng này còn hỗ trợ trực tiếp các giao diện cấu hình và điều khiển mạng thế hệ mới như P4/P4Runtime, gNMI và gNOI.

2. Vai trò của CNI Cilium và tính năng Cluster Mesh trong hệ thống là gì?
Cilium hoạt động dựa trên eBPF trong nhân Linux, mang lại hiệu năng chuyển tiếp gói tin cao hơn iptables. Tính năng Cluster Mesh của Cilium cho phép kết nối ngang hàng hai cụm Kubernetes độc lập thành một lưới mạng phẳng duy nhất, giúp các pod Micro-ONOS và dịch vụ Atomix ở hai vùng địa lý có thể giao tiếp trực tiếp với nhau.

3. Cơ chế nào giúp đồng bộ dữ liệu trạng thái mạng giữa hai cụm điều khiển?
Hệ thống sử dụng cơ sở dữ liệu phân tán Atomix tích hợp thuật toán đồng thuận Raft/Multi-Raft. Lưu lượng cập nhật từ Micro-ONOS được nhân bản và phân phối đều đến các kho lưu trữ Atomix ở cả hai cụm thông qua một dịch vụ cân bằng tải trung gian (RaftLB) kết hợp tài nguyên gRPCRoute và phân giải tên miền qua CoreDNS.

4. Khóa luận sử dụng các công cụ nào để giám sát lưu lượng và đo lường tài nguyên hệ thống?
Tác giả sử dụng chương trình Kubeshark để bắt các gói tin sự kiện trong cụm Kubernetes, lưu thành tệp .pcap và phân tích chi tiết độ trễ trên phần mềm Wireshark. Để theo dõi mức tiêu thụ CPU và bộ nhớ RAM của từng vi dịch vụ, hệ thống sử dụng công cụ giám sát Prometheus.

5. Vì sao độ trễ đo được ở môi trường liên cụm trong khóa luận chưa phản ánh hoàn toàn thực tế?
Do toàn bộ hệ thống được triển khai trên môi trường mô phỏng (Kind, Mn-Stratum, GNS3) vốn không tích hợp mô hình khoảng cách vật lý của đường truyền, nên số liệu đo được chỉ bao gồm thời gian xử lý, cân bằng tải, phân giải DNS và cập nhật dữ liệu của bộ điều khiển, chưa tính thời gian lan truyền vật lý của tín hiệu trên mạng diện rộng (WAN).

Kết luận

Khóa luận tốt nghiệp của tác giả Trần Hoàng Long đã giải quyết bài toán nút cổ chai và điểm chịu lỗi đơn của tầng điều khiển SDN bằng việc thiết kế, triển khai thành công giao diện liên cụm cho bộ điều khiển vi dịch vụ Micro-ONOS. Thông qua sự kết hợp giữa hệ thống lưu trữ phân tán Atomix Multi-Raft, plugin mạng Cilium Cluster Mesh trên Kubernetes và cơ chế cân bằng tải gRPCRoute, hệ thống bảo đảm khả năng đồng bộ trạng thái mạng ổn định giữa hai miền địa lý độc lập. Các kết quả thực nghiệm trên môi trường giả lập Mn-Stratum và GNS3 đã minh chứng tính khả thi của mô hình trong việc duy trì thiết lập luồng và phát hiện thay đổi cấu trúc mạng. Đây là công trình kỹ thuật có giá trị tham khảo thiết thực cho các nghiên cứu và ứng dụng triển khai mạng khả lập trình phân tán trên nền tảng đám mây.