Xin chào ! Nếu đây là lần đầu tiên bạn đến với diễn đàn, xin vui lòng danh ra một phút bấm vào đây để đăng kí và tham gia thảo luận cùng VnPro.
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • RoCE và RoCE2

    RoCE và RoCEv2: Điều gì thực sự nằm bên trong gói tin RDMA?


    Khi tìm hiểu về mạng cho AI, HPC hay Storage hiệu năng cao, chúng ta thường nghe đến RoCERoCEv2. Nhiều người nghĩ rằng đây là hai giao thức hoàn toàn khác nhau, nhưng thực tế chúng chỉ khác nhau chủ yếu ở cách đóng gói (encapsulation) các gói RDMA trên hạ tầng Ethernet. Hình trên cho thấy cấu trúc frame của cả hai công nghệ.

    RoCE: RDMA chạy trên Ethernet Layer 2


    RoCE thế hệ đầu tiên hoạt động hoàn toàn trong miền Ethernet Layer 2. Frame bao gồm các trường như Ethernet Header, InfiniBand Global Routing Header (GRH), InfiniBand Transport Header (BTH), Payload RDMA, ICRC và Ethernet CRC. Điểm đáng chú ý là RoCE sử dụng EtherType 0x8915 để nhận diện lưu lượng RDMA. Do không có IP Header nên RoCE không thể đi qua router. Điều này khiến RoCE chỉ phù hợp với các môi trường Layer 2 tương đối nhỏ. Đó là lý do RoCE đời đầu gần như biến mất trong các triển khai AI hiện đại.

    RoCEv2: RDMA chạy trên UDP/IP


    RoCEv2 giải quyết hạn chế lớn nhất của RoCE bằng cách thêm IP và UDP vào quá trình đóng gói. Cấu trúc frame lúc này trở thành:
    Ethernet Header → IP Header → UDP Header → InfiniBand BTH → RDMA Payload. Điều này mang lại nhiều lợi ích quan trọng:
    • Có thể định tuyến qua Layer 3
    • Hỗ trợ kiến trúc Spine-Leaf quy mô lớn
    • Hỗ trợ ECMP load balancing
    • Hoạt động trên mạng IP tiêu chuẩn
    Trong RoCEv2:
    • IPv4 sử dụng EtherType 0x0800
    • IPv6 sử dụng EtherType 0x86DD
    • UDP Destination Port mặc định là 4791
    Nếu nhìn bằng Wireshark, port UDP 4791 thường là dấu hiệu cho thấy lưu lượng RoCEv2 đang được truyền tải.


    QoS đóng vai trò cực kỳ quan trọng


    Hình trên cũng cho thấy các trường QoS quan trọng được sử dụng bởi RoCEv2. PCP / CoS (3 bit), trường này nằm trong VLAN Header, dùng để ưu tiên lưu lượng ở Layer 2. Thông thường traffic RDMA sẽ được đánh dấu vào hàng đợi ưu tiên cao nhất để tránh mất gói.

    DSCP (6 bit)


    Nằm trong IP Header. Dùng để phân loại lưu lượng tại Layer 3.
    Trong các AI Fabric hiện đại, lưu lượng RoCEv2 thường được đánh dấu bằng DSCP riêng để switch và router nhận biết.

    ECN (2 bit)


    Đây là thành phần quan trọng trong mạng AI. Thay vì chờ đầy bộ đệm rồi làm rơi gói tin, switch sẽ đánh dấu ECN vào gói tin để báo hiệu tình trạng nghẽn. RNIC của máy chủ sẽ nhận biết tín hiệu này và giảm tốc độ truyền. Cơ chế này giúp:
    • Giảm packet loss
    • Giảm latency
    • Tăng hiệu quả huấn luyện AI
    • Tránh hiện tượng GPU phải chờ dữ liệu
    Vì sao RoCEv2 thống trị AI Data Center?


    Các cụm GPU hiện đại có thể bao gồm hàng trăm hoặc hàng nghìn GPU và có nhiều Pod AI kết nối với nhau. Môi trường này yêu cầu:
    • Độ trễ cực thấp
    • Thông lượng cao
    • Hỗ trợ định tuyến Layer 3
    • Cân bằng tải ECMP
    • Khả năng mở rộng quy mô lớn
    RoCEv2 đáp ứng được tất cả các yêu cầu trên trong khi vẫn tận dụng được hệ sinh thái Ethernet vốn đã rất phổ biến. Đó là lý do ngày nay khi nói đến RoCE, trong thực tế hầu hết mọi người đều đang nói về RoCEv2. Công thức sau cùng mà chúng ta cần nhớ:
    RoCE = RDMA trên Ethernet Layer 2
    RoCEv2 = RDMA trên UDP/IP/Ethernet
    Và chính việc bổ sung IP + UDP đã biến RoCEv2 trở thành nền tảng mạng chủ đạo cho các AI Factory, GPU Cluster và AI Data Center hiện đại.​
    Attached Files
    Đặng Quang Minh, CCIE#11897 (Enterprise Infrastructure, Wireless, Automation, AI), CCSI#31417

    Email : dangquangminh@vnpro.org
    https://www.facebook.com/groups/vietprofessional/
Working...
X