Lưu trữ trực tuyến miễn phí cho máy trạm

<Trước | Nội dung | Tiếp theo>

5.1. Điều kiện tiên quyết


Gói này hiện được biên dịch cho các yêu cầu CPU thấp nhất có thể. Mà vẫn yêu cầu ít nhất SSE3 được hỗ trợ bởi CPU.

Danh sách các card mạng được hỗ trợ DPDK ngược dòng có thể được tìm thấy tại các NIC được hỗ trợ22. Nhưng rất nhiều trong số đó bị vô hiệu hóa theo mặc định trong Dự án ngược dòng vì chúng chưa ở trạng thái ổn định. Tập hợp con các thẻ mạng mà DPDK đã kích hoạt trong gói sẵn có trong Ubuntu 16.04 là:

Intel

• e100023 (82540, 82545, 82546)

• e1000e24 (82571..82574, 82583, ICH8..ICH10, PCH..PCH2)

• igb25 (82575..82576, 82580, I210, I211, I350, I354, DH89xx)

• ixgbe26 (82598..82599, X540, X550)

• i40e27 (X710, XL710, X722)

• fm10k28 (FM10420)


Chelsio

• cxgbe29 (Kẻ hủy diệt 5)


Cisco

• mê hoặc30 (Thẻ giao diện ảo UCS)


22 http://dpdk.org/doc/nics

23 http://dpdk.org/doc/guides/nics/e1000em.html

24 http://dpdk.org/browse/dpdk/tree/drivers/net/e1000/

25 http://dpdk.org/browse/dpdk/tree/drivers/net/e1000/

26 http://dpdk.org/doc/guides/nics/ixgbe.html

27 http://dpdk.org/browse/dpdk/tree/drivers/net/i40e/

28 http://dpdk.org/doc/guides/nics/fm10k.html

29 http://dpdk.org/doc/guides/nics/cxgbe.html

30 http://dpdk.org/browse/dpdk/tree/drivers/net/enic


• mạng ảo31 (QEMU)

• vmxnet332


Khác

• af_packet33 (Ổ cắm Linux AF_PACKET)

• nhẫn34 (ký ức)


Trên hết, nó cho phép thử nghiệm hai trình điều khiển PMD sau vì chúng đại diện cho các thiết bị (ảo) mà người dùng cuối rất dễ truy cập.

paravirtualization

• xenvirt35 (Xên)


Khác

• pcap36 (trình điều khiển tệp hoặc hạt nhân)


Các thẻ phải được bỏ gán khỏi trình điều khiển hạt nhân của chúng và thay vào đó được gán cho uio_pci_generic của vfio-pci. uio_pci_generic cũ hơn và thường làm việc dễ dàng hơn.

Vfio-pci mới hơn yêu cầu bạn kích hoạt các tham số hạt nhân sau để kích hoạt iommu.


iommu = pt intel_iommu = on


Đối với vfio-pci, bạn phải định cấu hình và gán các nhóm iommu cho phù hợp.


Lưu ý: Trong môi trường dựa trên virtio, chỉ cần "bỏ gán" các thiết bị khỏi trình điều khiển hạt nhân. Nếu không có điều đó DPDK sẽ từ chối sử dụng thiết bị để tránh các vấn đề với hạt nhân và DPDK hoạt động trên thiết bị cùng một lúc. Vì DPDK có thể hoạt động trực tiếp trên các thiết bị virtio nên không bắt buộc phải gán ví dụ: uio_pci_generic cho các thiết bị đó.

Cấu hình thủ công và kiểm tra trạng thái có thể được thực hiện thông qua sysfs hoặc bằng công cụ dpdk_nic_bind


dpdk_nic_bind --trợ giúp


Cách sử dụng:

------


dpdk_nic_bind [options] DEVICE1 THIẾT BỊ2 ....


trong đó DEVICE1, DEVICE2, v.v., được chỉ định qua cú pháp PCI "domain: bus: slot.func" hoặc cú pháp "bus: slot.func". Đối với các thiết bị liên kết với trình điều khiển nhân Linux, chúng có thể


31 http://dpdk.org/doc/guides/nics/virtio.html

32 http://dpdk.org/doc/guides/nics/vmxnet3.html

33 http://dpdk.org/browse/dpdk/tree/drivers/net/af_packet

34 http://dpdk.org/doc/guides/nics/pcap_ring.html#rings-based-pmd

35 http://dpdk.org/doc/guides/xen/pkt_switch.html#xen-pmd-frontend-prerequisites

36 http://dpdk.org/doc/guides/nics/pcap_ring.html#libpcap-based-pmd


cũng được gọi bằng tên giao diện Linux, ví dụ như eth0, eth1, em0, em1, v.v.


Tùy chọn:

--trợ giúp, --sử dụng:

Hiển thị thông tin sử dụng và thoát


-s, - trạng thái:

In trạng thái hiện tại của tất cả các giao diện mạng đã biết.

Đối với mỗi thiết bị, nó hiển thị miền PCI, bus, khe cắm và chức năng, cùng với mô tả văn bản của thiết bị. Tùy thuộc vào việc thiết bị đang được sử dụng bởi trình điều khiển nhân, trình điều khiển igb_uio hay không có trình điều khiển, thông tin liên quan khác sẽ được hiển thị:

* tên giao diện Linux, ví dụ if = eth0

* trình điều khiển đang được sử dụng, ví dụ: drv = igb_uio

* bất kỳ trình điều khiển phù hợp nào hiện không sử dụng thiết bị đó

ví dụ: used = igb_uio

LƯU Ý: nếu cờ này được chuyển cùng với tùy chọn ràng buộc / hủy liên kết, hiển thị trạng thái sẽ luôn xảy ra sau khi các hoạt động khác đã diễn ra.


-b trình điều khiển, --bind = trình điều khiển:

Chọn trình điều khiển để sử dụng hoặc "không có" để hủy liên kết thiết bị


-u, --bỏ ràng buộc:

Hủy liên kết thiết bị (Tương đương với "-b none")


--lực lượng:

Theo mặc định, các thiết bị được sử dụng bởi Linux - như được chỉ ra bằng cách có các tuyến trong bảng định tuyến - không thể sửa đổi. Việc sử dụng cờ --force sẽ ghi đè hành vi này, cho phép các liên kết đang hoạt động không bị ràng buộc.

CẢNH BÁO: Điều này có thể dẫn đến mất kết nối mạng và cần được sử dụng một cách thận trọng.


Ví dụ:

---------


Để hiển thị trạng thái thiết bị hiện tại: dpdk_nic_bind --status


Để liên kết eth1 từ trình điều khiển hiện tại và chuyển sang sử dụng igb_uio dpdk_nic_bind --bind = igb_uio eth1


Để hủy liên kết 0000: 01: 00.0 khỏi việc sử dụng bất kỳ trình điều khiển nào dpdk_nic_bind -u 0000: 01: 00.0


Để liên kết 0000: 02: 00.0 và 0000: 02: 00.1 với trình điều khiển hạt nhân ixgbe dpdk_nic_bind -b ixgbe 02: 00.0 02:00.


Điện toán đám mây hệ điều hành hàng đầu tại OnWorks: