GhostWire: Xây dựng mạng lưới Mesh phi tập trung bằng Rust và AI

05 tháng 4, 2026·6 phút đọc

2,6 tỷ người trên thế giới không có internet ổn định. GhostWire là nền tảng giao tiếp mesh phi tập trung, chống kiểm duyệt được viết bằng Rust, tích hợp AI để định tuyến thông minh và mã hóa đa lớp nhằm duy trì kết nối khi hạ tầng truyền thống bị sụp đổ.

GhostWire: Xây dựng mạng lưới Mesh phi tập trung bằng Rust và AI

Vấn đề về kết nối toàn cầu

Hiện tại, có khoảng 2,6 tỷ người không tiếp cận được internet đáng tin cậy. Khi thiên tai xảy ra, hạ tầng bị hỏng hoặc cộng đồng sinh sống ở vùng sâu vùng xa, các phương thức liên lạc truyền thống thường bị tê liệt đúng vào lúc sự phối hợp hành động trở nên cấp thiết nhất.

Là một sinh viên an ninh mạng tại Nairobi, Kenya, tôi đã chứng kiến hậu quả khi cộng đồng mất kết nối: các gia đình không thể kiểm tra nhau sau lũ lụt, đội cứu hộ không thể phối hợp, và các nhà hoạt động không thể tổ chức an toàn.

Chính vì vậy, tôi đã xây dựng GhostWire — một nền tảng giao tiếp mạng lưới (mesh) phi tập trung, có khả năng chống kiểm duyệt và hoạt động hoàn toàn không cần máy chủ trung tâm.

GhostWire là gì?

GhostWire là nền tảng giao tiếp mã hóa điểm-đến-điểm (peer-to-peer) được viết bằng ngôn ngữ Rust. Thay vì kết nối đến một máy chủ, các thiết bị kết nối trực tiếp với nhau. Tin nhắn sẽ chuyển tiếp từ node này sang node khác thông qua bất kỳ đường dẫn nào khả dụng.

Nếu một node bị offline, mạng lưới sẽ tự động định tuyến để đi qua con khác. Nếu internet bị cắt, GhostWire sẽ tự động chuyển sang WiFi Direct, Bluetooth, hoặc thậm chí là sóng vô tuyến LoRa.

Trang web: GhostWire GitHub: Kho mã nguồn

Kiến trúc hệ thống

Mạng: libp2p

Chúng tôi sử dụng libp2p — cùng stack mạng P2P được sử dụng bởi IPFS và Ethereum. Nó xử lý việc khám phá đồng đẳng (peer discovery), thiết lập kết nối và đa nhân (multiplexing). Trên nền tảng đó, chúng tôi chạy DHT (Bảng băm phân tán) được tăng cường S/Kademlia để định tuyến và Gossipsub để truyền tin nhắn.

// Khám phá đồng đẳng đơn giản hóa
let swarm = SwarmBuilder::with_new_identity()
    .with_tokio()
    .with_tcp(
        tcp::Config::default(),
        noise::Config::new,
        yamux::Config::default,
    )?
    .with_behaviour(|_| Behaviour::new())?
    .build();

Mã hóa: Phòng thủ theo nhiều lớp

Mọi tin nhắn đều được mã hóa đầu cuối (end-to-end) trước khi rời khỏi thiết bị của bạn:

LớpThuật toánMục đích
Đối xứngAES-256-GCMMã hóa tin nhắn + toàn vẹn
Trao đổi khóaX25519Bảo mật chuyển tiếp hoàn hảo (Perfect forward secrecy)
Chữ kýEd25519Xác minh danh tính
Hậu lượng tửML-KEM-768Đảm bảo tương lai (được lên kế hoạch)

Không máy chủ, không trung chuyển, không có node trung gian nào có thể thấy bản rõ của dữ liệu.

Định tuyến hỗ trợ AI

Đây là điểm thú vị nhất của GhostWire. Thay vì sử dụng các quy tắc định tuyến cố định, chúng tôi đã huấn luyện các mô hình AI trên dữ liệu mạng mesh thực tế từ GuifiSants tại Barcelona — một trong những mạng lưới mesh cộng đồng lớn nhất thế giới.

  • L1 — Bộ phát hiện bất thường LightGBM: AUC 1.0, suy luận (inference) mất 76,7μs, xuất khẩu dưới dạng ONNX và tích hợp vào Rust thông qua ONNX Runtime.
  • L3 — Mạng nơ-ron đồ thị (Graph Neural Network): Được huấn luyện trên 7.931 mẫu tại 63 node trong 31 ngày. Học hỏi đường đi nào hoạt động tốt nhất trong điều kiện thực tế.
# Quy trình huấn luyện (đơn giản hóa)
model = lgb.LGBMRegressor(
    n_estimators=500,
    learning_rate=0.05,
    max_depth=7,
    num_leaves=31
)
model.fit(X_train, y_train)
onnx_model = convert_lightgbm(model, initial_types=initial_type)
onnx.save(onnx_model, "ghostwire_routing.onnx")

Mô hình chạy trong 76,7 microgiây — đủ nhanh để ra quyết định định tuyến thời gian thực trên một Raspberry Pi.

7 Lớp truyền tải

TransportPhạm viTrường hợp sử dụng
WiFi Direct~100mMạng đô thị, thiết bị-đến-thiết bị
Bluetooth LE~50mTrong nhà, tiêu thụ điện năng thấp
LoRa~15kmNông thôn, tầm xa
WebRTCInternetCầu nối giữa các mạng
TCP/IPInternetKết nối tiêu chuẩn
ReticulumMulti-hopMạng vô tuyến nghiệp dư
BriarBluetooth/WiFiGiao tiếp của nhà hoạt động

GhostWire tự động chọn đường dẫn tốt nhất. Không có internet? Nó sẽ quay lại RF mesh. Không có WiFi? Sẽ dùng Bluetooth. Mạng lưới thích ứng theo hoàn cảnh.

Tại sao chọn Rust?

Có ba lý do chính:

  1. An toàn bộ nhớ mà không cần GC (Garbage Collection): GhostWire chạy trên các thiết bị tài nguyên hạn chế (như Raspberry Pi hay laptop cũ). Chúng ta không thể chấp nhận việc dừng lại để dọn rác trong quá trình giao tiếp khẩn cấp.
  2. Xử lý đồng thời (Concurrency) tự tin: Stack mạng xử lý hàng trăm kết nối đồng thời cùng lúc. Mô hình quyền sở hữu (ownership model) của Rust giúp chúng ta không phải lo lắng về cuộc đua dữ liệu (data races).
  3. Hiệu suất: Việc suy luận LightGBM chỉ mất 76,7μs. Các tác vụ mã hóa được tăng tốc phần cứng. Rust cho phép khai thác tối đa từng microgiây từ phần cứng.

Khía cạnh nhân văn

GhostWire không chỉ là một dự án kỹ thuật. Nó được xây dựng dựa trên một triết lý:

Trong vũ trụ quan của đạo Hindu và Phật giáo, "Mạng lưới của Indra" là một tấm lưới vô tận. Tại mỗi giao điểm treo lưỡng một viên ngọc. Mỗi viên ngọc phản chiếu tất cả các viên còn lại. Không có viên ngọc nào quan trọng hơn cả. Mạng lưới không có trung tâm. Mạng lưới không có biên giới.

Các kiến trúc sư ban đầu của Internet đã độc lập khám phá lại điều mà triết học Châu Phi đã mã hóa hàng ngàn năm: các hệ thống được xây dựng dựa trên mối quan hệ tương hỗ thay vì quyền lực trung tâm sẽ kiên cường hơn, công bằng hơn và phù hợp hơn với sự tồn tại tự thân.

Chúng tôi đang xây dựng dự án này như một phần của cuộc thi GCD4F 2026 (Global Climate Data for Future) trong hạng mục "AI for Society", đại diện cho Đại học Mở Kenya (Open University of Kenya).

Chúng tôi cần đóng góp

GhostWire được cấp phép AGPL-3.0 và đang tích cực tìm kiếm người đóng góp:

  • Lập trình viên Rust: Mạng libp2p, các lớp truyền tải, mật mã học.
  • Kỹ sư AI/ML: Huấn luyện mô hình GNN, tối ưu hóa định tuyến.
  • Nhà nghiên cứu bảo mật: Kiểm toán độc lập, mô hình hóa mối đe dọa.
  • Lập trình viên Frontend: Bảng điều khiển React/TypeScript.
  • Người viết tài liệu: Hướng dẫn, hướng dẫn, bản dịch.

Các vấn đề "Good first issues" đã được gắn nhãn trên GitHub. Tệp CONTRIBUTING.md có hướng dẫn thiết lập chi tiết.

Các liên kết

Được xây dựng tại Nairobi, vì cả thế giới. 🇰🇪

Bài viết được tổng hợp và biên soạn bằng AI từ các nguồn tin tức công nghệ. Nội dung mang tính tham khảo. Xem bài gốc ↗