Oracle® Solaris 11.2의 네트워크 파일 시스템 관리

인쇄 보기 종료

업데이트 날짜: 2014년 7월
 
 

NFS Over RDMA

Oracle Solaris 11.1 릴리스부터 NFS의 기본 전송은 RDMA(Remote Direct Memory Access) 프로토콜입니다. 이 프로토콜은 고속 네트워크를 통해 메모리 간 데이터 전송을 제공합니다. 구체적으로, RDMA는 CPU를 사용하지 않고 메모리에서/메모리로 직접 원격 데이터를 전송하는 기능을 제공합니다. 또한 RDMA는 직접 데이터 배치 기능도 제공하므로 데이터 복사본이 없어져 CPU 작업이 더욱 줄어듭니다. 따라서 RDMA는 호스트 CPU를 해제할 뿐 아니라 호스트 메모리 및 I/O 버스에 대한 경합도 줄여 줍니다. 이 기능을 제공하기 위해 RDMA는 SPARC 및 x86 플랫폼에서 사용할 수 있는 InfiniBand의 상호 연결 I/O 기술을 Oracle Solaris 운영 체제와 결합합니다. 다음 그림에서는 UDP, TCP 등의 다른 프로토콜에 대한 RDMA의 관계를 보여줍니다.

그림 2-1  RDMA와 다른 프로토콜 간의 관계

image:이 그래픽에서는 RDMA와 다른 프로토콜의 관계를 보여줍니다

RDMA는 NFS의 기본 전송 프로토콜이므로 클라이언트나 서버에서 RDMA를 사용하기 위해 특수한 share 또는 mount 옵션은 필요하지 않습니다. 기존 자동 마운트 맵 vfstab 및 파일 시스템 공유도 RDMA 전송에서 작동합니다. RDMA 전송을 통한 NFS 마운트는 클라이언트와 서버 간의 InfiniBand 연결이 있으면 투명하게 수행됩니다. InfiniBand 연결 기능은 SPARC 및 x86 플랫폼에서 모두 작동합니다. 클라이언트와 서버에서 모두 RDMA 전송을 사용할 수 없는 경우에는 TCP 전송이 초기 폴백으로 사용되고, TCP도 사용할 수 없으면 UDP가 사용됩니다. 그러나 –proto=rdma 마운트 옵션을 사용하면 NFS 마운트가 RDMA만 사용하도록 강제 지정됩니다.

TCP 및 UDP만 사용하도록 지정하려면 –proto=tcp/udp mount 옵션을 사용합니다. 이 옵션을 사용하면 NFS 클라이언트에서 RDMA가 사용 안함으로 설정됩니다. NFS 마운트 옵션에 대한 자세한 내용은 mount_nfs(1M)mount(1M) 매뉴얼 페이지를 참조하십시오.


주 -  InfiniBand용 RDMA는 IP 주소 지정 형식 및 IP 조회 기반구조를 사용하여 피어를 지정합니다. 그러나 RDMA는 별도의 프로토콜 스택이므로 모든 IP 의미를 완전하게 구현하지는 않습니다. 예를 들어 RDMA는 피어와 통신하는 데 IP 주소 지정을 사용하지 않습니다. 따라서 RDMA는 IP 주소를 기반으로 하는 여러 보안 정책의 구성을 우회할 수 있습니다. 그러나 mount 제한 및 보안 RPC와 같은 NFS 및 RPC 관리 정책은 우회되지 않습니다.