Go to main content
Oracle® VM Server for SPARC 3.4 관리 설명서

인쇄 보기 종료

업데이트 날짜: 2016년 8월
 
 

고급 SR-IOV 항목: InfiniBand SR-IOV

이 절에서는 InfiniBand 물리적 및 가상 기능을 식별하고 InfiniBand 물리적 기능과 가상 기능의 Logical Domains Manager 및 Oracle Solaris 뷰를 상관시키는 방법에 대해 설명합니다.

InfiniBand SR-IOV 가상 기능 나열

다음 예에서는 /SYS/MB/RISER1/PCIE4/IOVIB.PF0 물리적 기능에 대한 정보를 표시할 수 있는 여러 가지 방법을 보여줍니다. IOVIB 문자열을 포함하는 물리적 기능 이름은 InfiniBand SR-IOV 장치임을 나타냅니다.

primary# ldm list-io
NAME                                      TYPE   BUS      DOMAIN   STATUS
----                                      ----   ---      ------   ------
pci_0                                     BUS    pci_0    primary  IOV
niu_0                                     NIU    niu_0    primary
/SYS/MB/RISER0/PCIE0                      PCIE   pci_0    primary  EMP
/SYS/MB/RISER1/PCIE1                      PCIE   pci_0    primary  EMP
/SYS/MB/RISER2/PCIE2                      PCIE   pci_0    primary  EMP
/SYS/MB/RISER0/PCIE3                      PCIE   pci_0    primary  OCC
/SYS/MB/RISER1/PCIE4                      PCIE   pci_0    primary  OCC
/SYS/MB/RISER2/PCIE5                      PCIE   pci_0    primary  EMP
/SYS/MB/SASHBA0                           PCIE   pci_0    primary  OCC
/SYS/MB/SASHBA1                           PCIE   pci_0    primary  OCC
/SYS/MB/NET0                              PCIE   pci_0    primary  OCC
/SYS/MB/NET2                              PCIE   pci_0    primary  OCC
/SYS/MB/RISER0/PCIE3/IOVIB.PF0            PF     pci_0    primary
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
/SYS/MB/NET0/IOVNET.PF0                   PF     pci_0    primary
/SYS/MB/NET0/IOVNET.PF1                   PF     pci_0    primary
/SYS/MB/NET2/IOVNET.PF0                   PF     pci_0    primary
/SYS/MB/NET2/IOVNET.PF1                   PF     pci_0    primary
/SYS/MB/RISER0/PCIE3/IOVIB.PF0.VF0        VF     pci_0    primary
/SYS/MB/RISER0/PCIE3/IOVIB.PF0.VF1        VF     pci_0    primary
/SYS/MB/RISER0/PCIE3/IOVIB.PF0.VF2        VF     pci_0    iodom1
/SYS/MB/RISER0/PCIE3/IOVIB.PF0.VF3        VF     pci_0    iodom1
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0    primary
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0    primary
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0    iodom1
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3        VF     pci_0    iodom1

ldm list-io -l 명령은 지정된 물리적 기능 장치 /SYS/MB/RISER1/PCIE4/IOVIB.PF0에 대한 보다 자세한 정보를 제공합니다. maxvfs 값은 물리적 장치가 지원하는 최대 가상 기능 수가 64개임을 보여줍니다. 물리적 기능과 연관된 각 가상 기능에 대해 출력은 다음을 보여줍니다.

  • 기능 이름

  • 기능 유형

  • 버스 이름

  • 도메인 이름

  • 선택적 기능 상태

  • 장치 경로

ldm list-io -l 출력은 VF0VF1primary 도메인에 지정되었으며 VF2VF3iodom1 I/O 도메인에 지정되었음을 보여줍니다.

primary# ldm list-io -l /SYS/MB/RISER1/PCIE4/IOVIB.PF0
NAME                                      TYPE   BUS      DOMAIN   STATUS
----                                      ----   ---      ------   ------
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0]
    maxvfs = 64
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,1]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,2]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0    iodom1
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,3]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3        VF     pci_0    iodom1
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,4]

InfiniBand SR-IOV 기능 식별

이 절에서는 InfiniBand SR-IOV 장치를 식별하는 방법을 설명합니다.

ldm list-io -l 명령을 사용하여 각 물리적 기능 및 가상 기능과 연관된 Oracle Solaris 장치 경로 이름을 표시할 수 있습니다.

primary# ldm list-io -l /SYS/MB/RISER1/PCIE4/IOVIB.PF0
NAME                                      TYPE   BUS      DOMAIN   STATUS
----                                      ----   ---      ------   ------
/SYS/MB/RISER1/PCIE4/IOVIB.PF0            PF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0]
    maxvfs = 64
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF0        VF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,1]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF1        VF     pci_0    primary
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,2]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF2        VF     pci_0    iodom1
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,3]
/SYS/MB/RISER1/PCIE4/IOVIB.PF0.VF3        VF     pci_0    iodom1
[pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0,4]

dladm show-phys -L 명령을 사용하여 각 IPoIB(IP over InfiniBand) 인스턴스를 물리적 카드에 일치시킬 수 있습니다. 예를 들어, 다음 명령은 슬롯 PCIE4에 이전 ldm list-io -l 예에서와 동일한 카드를 사용하는 IPoIB 인스턴스를 보여줍니다.

primary# dladm show-phys -L | grep PCIE4
net5              ibp0         PCIE4/PORT1
net6              ibp1         PCIE4/PORT2
net19             ibp8         PCIE4/PORT1
net9              ibp9         PCIE4/PORT2
net18             ibp4         PCIE4/PORT1
net11             ibp5         PCIE4/PORT2

각 InfiniBand HCA(호스트 채널 어댑터) 장치에는 GUID(전역적으로 고유한 ID)가 있습니다. 각 포트에 대해서도 GUID가 있습니다. 일반적으로 HCA에 대해 2개의 포트가 있습니다. InfiniBand HCA GUID는 어댑터를 고유하게 식별합니다. 포트 GUID는 각 HCA 포트를 고유하게 식별하고 네트워크 장치의 MAC 주소와 유사한 역할을 수행합니다. 이러한 16진수 GUID는 InfiniBand 관리 도구 및 진단 도구에서 사용됩니다.

dladm show-ib 명령을 사용하여 InfiniBand SR-IOV 장치에 대한 GUID 정보를 얻을 수 있습니다. 동일한 장치에 대한 물리적 기능 및 가상 기능에는 관련된 HCA GUID 값이 있습니다. HCA GUID의 11번째 16진수는 물리적 기능과 가상 기능 간의 관계를 보여줍니다. HCAGUID 및 PORTGUID 열에서는 선행 0이 숨겨집니다.

예를 들어, 물리적 기능 PF0에는 primary 도메인에 지정된 2개의 가상 기능인 VF0VF1이 있습니다. 각 가상 기능의 11번째 16진수는 관련된 물리적 기능에서 1씩 증분됩니다. 따라서 PF0에 대한 GUID가 8이면 VF0VF1에 대한 GUID는 각각 9A가 됩니다.

다음 dladm show-ib 명령 출력은 net5net6 링크가 물리적 기능 PF0에 속해 있음을 보여줍니다. net19net9 링크는 동일한 장치의 VF0에 속하며, net18net11 링크는 VF1에 속합니다.

primary# dladm show-ib
LINK         HCAGUID         PORTGUID        PORT STATE  PKEYS
net6         21280001A17F56  21280001A17F58  2    up     FFFF
net5         21280001A17F56  21280001A17F57  1    up     FFFF
net19        21290001A17F56  14050000000001  1    up     FFFF
net9         21290001A17F56  14050000000008  2    up     FFFF
net18        212A0001A17F56  14050000000002  1    up     FFFF
net11        212A0001A17F56  14050000000009  2    up     FFFF

다음 dladm show-phys 출력의 장치는 링크 간의 관계 및 원래 InfiniBand 포트 장치(ibpX)를 보여줍니다.

primary# dladm show-phys
LINK              MEDIA                STATE      SPEED  DUPLEX    DEVICE
...
net6              Infiniband           up         32000  unknown   ibp1
net5              Infiniband           up         32000  unknown   ibp0
net19             Infiniband           up         32000  unknown   ibp8
net9              Infiniband           up         32000  unknown   ibp9
net18             Infiniband           up         32000  unknown   ibp4
net11             Infiniband           up         32000  unknown   ibp5

ls -l 명령을 사용하여 실제 IB 포트(InfiniBand 포트) 장치 경로를 표시할 수 있습니다. IB 포트 장치는 ldm list-io -l 출력에 표시된 장치 경로의 하위입니다. 물리적 기능의 단위 주소는 한 부분(예: pciex15b3,673c@0)이며 가상 기능의 단위 주소는 두 부분(예: pciex15b3,1002@0,2)입니다. 단위 주소의 두번째 부분은 가상 기능 번호보다 1이 큽니다. 이 예에서는 두번째 구성요소가 2이므로 이 장치는 가상 기능 1입니다. 다음 출력은 /dev/ibp0이 물리적 기능이며 /dev/ibp5가 가상 기능임을 보여줍니다.

primary# ls -l /dev/ibp0
lrwxrwxrwx   1 root     root          83 Apr 18 12:02 /dev/ibp0 ->
../devices/pci@400/pci@1/pci@0/pci@0/pciex15b3,673c@0/hermon@0/ibport@1,0,ipib:ibp0
primary# ls -l /dev/ibp5
lrwxrwxrwx   1 root     root          85 Apr 22 23:29 /dev/ibp5 ->
../devices/pci@400/pci@1/pci@0/pci@0/pciex15b3,1002@0,2/hermon@3/ibport@2,0,ipib:ibp5

OpenFabrics ibv_devices 명령을 사용하여 OpenFabrics 장치 이름 및 노드 (HCA) GUID를 확인할 수 있습니다. 가상 기능이 있을 경우 Type 열은 기능이 물리적인지 아니면 가상인지 나타냅니다.

primary# ibv_devices
device                 node GUID            type
------              ----------------        ----
mlx4_4              0002c90300a38910         PF
mlx4_5              0021280001a17f56         PF
mlx4_0              0002cb0300a38910         VF
mlx4_1              0002ca0300a38910         VF
mlx4_2              00212a0001a17f56         VF                        
mlx4_3              0021290001a17f56         VF