26.4. RoCE 구성
RoCE(Remote Direct Memory Access) over Converged Ethernet(RoCE)은 이더넷 네트워크를 통해 RDMA를 사용하는 네트워크 프로토콜입니다. 구성을 위해 RoCE에는 특정 하드웨어가 필요하며 일부 하드웨어 공급업체는 Mellanox, Broadcom 및 QLogic입니다.
26.4.1. RoCE 프로토콜 버전 개요 링크 복사링크가 클립보드에 복사되었습니다!
다음은 다른 RoCE 버전입니다.
- RoCE v1
-
RoCE 버전 1 프로토콜은 Ethertype
0x8915
가 있는 이더넷 링크 계층 프로토콜로, 동일한 이더넷 브로드캐스트 도메인에 있는 두 호스트 간의 통신을 가능하게 합니다. - RoCE v2
-
RoCE 버전 2 프로토콜은 IPv4를 통한 UDP 또는 IPv6 프로토콜을 통한 UDP 상단에 있습니다. RoCE v2의 경우 UDP 대상 포트 번호는
4791
입니다.
RDMA_CM은 데이터 전송을 위한 클라이언트와 서버 간의 안정적인 연결을 설정합니다. RDMA_CM은 연결을 설정하기 위한 RDMA 전송 중립 인터페이스를 제공합니다. 통신은 특정 RDMA 장치 및 메시지 기반 데이터 전송을 사용합니다.
클라이언트에서 RoCE v2 및 RoCE v1과 같은 다른 버전을 사용하는 것은 지원되지 않습니다. 이러한 경우 RoCE v1을 통해 통신하도록 서버와 클라이언트를 모두 구성합니다.
RoCE v1은 데이터 링크 계층(Layer 2)에서 작동하며 동일한 네트워크에서 두 머신의 통신만 지원합니다. 기본적으로 RoCE v2를 사용할 수 있습니다. 네트워크 계층(Layer 3)에서 작동합니다. RoCE v2는 여러 이더넷 연결을 제공하는 패킷 라우팅을 지원합니다.
26.4.2. 기본 RoCE 버전 임시 변경 링크 복사링크가 클립보드에 복사되었습니다!
서버에서 RoCE v2 프로토콜을 클라이언트 및 RoCE v1에서 사용하는 것은 지원되지 않습니다. 서버의 하드웨어가 RoCE v1만 지원하는 경우 RoCE v1이 서버와 통신하도록 클라이언트를 구성합니다. 예를 들어 RoCE v1만 지원하는 Mellanox ConnectX-5 InfiniBand 장치에 mlx5_0
드라이버를 사용하는 클라이언트를 구성할 수 있습니다.
여기에서 설명된 변경 사항은 호스트를 재부팅할 때까지 적용됩니다.
사전 요구 사항
- 클라이언트는 RoCE v2 프로토콜과 함께 InfiniBand 장치를 사용합니다.
- 서버는 RoCE v1만 지원하는 InfiniBand 장치를 사용합니다.
프로세스
/sys/kernel/config/rdma_cm/mlx5_0/
디렉터리를 만듭니다.mkdir /sys/kernel/config/rdma_cm/mlx5_0/
# mkdir /sys/kernel/config/rdma_cm/mlx5_0/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 기본 RoCE 모드를 표시합니다.
cat /sys/kernel/config/rdma_cm/mlx5_0/ports/1/default_roce_mode RoCE v2
# cat /sys/kernel/config/rdma_cm/mlx5_0/ports/1/default_roce_mode RoCE v2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 기본 RoCE 모드를 버전 1로 변경합니다.
echo "IB/RoCE v1" > /sys/kernel/config/rdma_cm/mlx5_0/ports/1/default_roce_mode
# echo "IB/RoCE v1" > /sys/kernel/config/rdma_cm/mlx5_0/ports/1/default_roce_mode
Copy to Clipboard Copied! Toggle word wrap Toggle overflow