当前位置: 首页 > news >正文 公众电影网站怎么做制作网页 news 2025/10/29 23:48:59 公众电影网站怎么做,制作网页,php网站的开发背景,wordpress页面编辑RDMA的主要优点包括低延迟、高吞吐量、减少CPU负担和支持零拷贝网络。它允许数据直接在网络接口卡#xff08;NIC#xff09;和内存之间传输#xff0c;减少了数据传输过程中的中间环节#xff0c;从而显著降低了延迟。RDMA技术能够实现高速的数据传输#xff0c;适用于需… RDMA的主要优点包括低延迟、高吞吐量、减少CPU负担和支持零拷贝网络。它允许数据直接在网络接口卡NIC和内存之间传输减少了数据传输过程中的中间环节从而显著降低了延迟。RDMA技术能够实现高速的数据传输适用于需要大量数据交换的应用场景。由于数据传输不需要CPU的参与CPU可以更多地专注于计算任务提高了系统的整体效率。RDMA的软件架构通常包括用户空间库、内核驱动和硬件设备三个主要部分。典型的应用场景包括高性能计算、数据中心网络和存储系统等。RDMA的基本元素包括队列对、保护域和内存区域等这些元素共同完成了RDMA通信的建立和数据传输。设计RDMA的主要思路是尽可能减少数据传输路径上的中间环节降低延迟提高吞吐量并减轻CPU的负担。 一、RDMA和传统网络方案的比较 1.1 传统网络方案 1.1.1 缺点一以太网卡socket通信过程 下图展示了使用传统以太网卡时两台机器通讯过程中所需要的软件模块分层以及软硬件之间的关系。 传统的send或sendto等系统调用涉及了从用户态到内核态的转换这一过程会增加数据传输的延迟。当应用程序使用这些系统调用发送数据时数据首先会被复制到内核空间的缓冲区然后才从内核发送到网络上。这种数据在用户空间和内核空间之间的复制操作以及与之相关的上下文切换是导致额外开销和延迟的主要原因。 1.1.2 缺点二以太网卡socket数据流 下图展示了使用以太网卡(Socket模型)时数据在两个运行在不同机器上的APP之间传导的过程。假设机器1为发送方机器2为接收方。 传统网络数据传输过程中数据在用户空间、内核空间和硬件之间的流动过程 用户空间至内核空间的数据复制应用层通过系统调用如send或sendto将数据从用户空间传输到内核空间。这一步骤涉及CPU将数据复制到内核缓冲区中。 网络协议处理一旦数据到达内核空间内核中的网络协议栈会给数据添加必要的网络协议头例如TCP/IP头可能还会进行数据的分片和封装处理并进行必要的校验。 DMA传输到网卡使用DMADirect Memory Access技术数据从主机内存被高效地复制到发送端网卡的内部缓存中准备发送到网络上。 通过物理链路发送数据发送端网卡处理完数据后通过物理链路例如以太网将数据发送给对端设备的网卡。 接收端硬件DMA操作接收端的网卡通过DMA操作将接收到的数据从网卡的缓存复制到系统内存中这避免了CPU直接参与数据的初步传输过程。 数据处理与传递给用户空间CPU介入处理接收到的数据包如进行逐层的解析和校验等最后将数据从内核空间复制到用户空间的应用程序中。 1. 用户空间与内核空间之间的数据复制在传统的网络通信中当应用程序需要发送数据时它必须通过系统调用如send或sendto将数据从用户空间复制到内核空间。这个复制过程增加了数据传输的延迟因为它需要CPU的直接参与。同样在接收数据时数据需要从内核空间复制到用户空间这同样增加了延迟。 2. CPU参与数据包的封装和解析在发送数据时CPU需要参与数据包的封装过程包括添加各种网络协议头如IP、TCP/UDP头。在接收数据时CPU需要对数据包进行解析和校验以确保数据的完整性和正确性。这些操作在数据量较大时会对CPU造成较重的负担因为CPU需要处理大量的数据包这会占用大量的CPU资源影响系统的整体性能。 1.2 RDMA的方案 1.2.1 优点RDMA的控制通路和数据通路 下图中有一左一右两台机器可互相发送接收数据。在这里将RDMA的分层模型分成“控制通路和“数据通路”控制通路需要进入内核态准备通信所需的各种资源如QP、MR等数据通路负责数据收发如RDMA Write:和RDMA Read)。 RDMA技术允许网络设备直接访问主机内存而不需要CPU的介入。这使得数据可以在网络设备和内存之间直接传输大大减少了延迟和CPU的负担。 1.2.2 优点RDMA 网卡的数据流 下图展示了使用RDMA网卡时数据在两个运行在不同机器上的APP之间传递的过程。假设机器1为发送方机器2为接收方。 发送端网卡的数据处理 数据首先从用户空间通过系统调用如send或sendto复制到内核空间。内核中的网络协议栈负责添加各协议层头部如IP、TCP/UDP头和校验信息。然后数据通过DMADirect Memory Access技术从内核空间的缓冲区复制到发送端网卡的内部缓存中。发送端网卡通过物理链路将数据发送给对端的网卡。 接收端网卡的数据处理 接收端网卡通过物理链路接收到数据后首先进行初步处理如校验和检查。如果校验通过网卡会使用DMA技术将数据从网卡的内部缓存复制到内核空间的缓冲区。内核中的网络协议栈负责剥离各协议层头部和校验信息并将数据传递给相应的套接字缓冲区socket buffer。最后数据通过系统调用如recv或recvfrom从内核空间复制到用户空间的应用程序。 零拷贝避免了数据在用户空间和内核空间之间的多次拷贝减少了数据传输的总体延迟因为数据传输过程减少了对CPU的依赖CPU资源可以被用于其他计算任务从而提高了系统的整体效率零拷贝使得数据传输过程更高效网络带宽可以得到更充分的利用。 硬件协议处理传统网络通信需要操作系统内核参与大量的协议处理工作包括数据包的封装、解析和校验等。RDMA技术允许这些操作在硬件级别完成极大地减轻了CPU的工作负担。硬件级别的数据包处理通常比软件实现更快因为它可以并行处理多个操作并专门针对这些任务进行优化。 二、RDMA协议类型 RDMA指的是一种远程直接内存访问技术。具体到协议层面它主要包含了Infiniband(IB),RDMA over Converged Ethernet(RoCE)和lInternet Wide Area RDMA Protocol(iWARP)三种协议。三种协议都符合RDMA标准共享相同的上层用户接口(Vrbs),只是在不同层次上有一些差别。下图对比了这几个协议在不同层次的差异。 三、RDMA软件架构 RDMA的软件架构在Linux系统中按层次可分为两部分即rdma-core和内核RDMA子系统分别运行在用户态和内核态。整个软件架构适用于所有类型的RDMA网卡无论网卡硬件执行哪种RDMA协议Infiniband、RoCE、iWARP。 一个RDMA应用程序的部分流程 四、RDMA 的基本元素和操作类型 4.1 WQWQE 4.1.1 工作队列元素WQE 作用WQE是RDMA硬件执行任务的指令单元。它包含了软件希望硬件执行的具体任务类型如远程读取、远程写入、发送或接收等操作。内容每个WQE详细描述了任务的具体信息包括数据所在的内存地址、数据长度、访问密钥如用于保护内存区域的密钥等。类比在以太网方案中描述符Descriptor也用于指导硬件如何处理数据包但RDMA的WQE提供了更高级的抽象直接指向内存区域而不是单个数据包。 4.1.2 工作队列WQ 作用WQ是容纳WQE的容器类似于以太网方案中的发送/接收队列。结构WQ采用先进先出FIFO队列的形式确保WQE按顺序被处理。类比在以太网方案中发送/接收队列用于管理待发送或待接收的数据包而RDMA的WQ管理的是待执行的内存操作任务。 4.1.3 关系与比较 WQ与WQE的关系WQ是WQE的集合WQE是WQ中的元素。WQ管理着一系列WQE确保它们按顺序被硬件处理。与以太网方案的比较虽然RDMA的WQ和WQE与以太网方案中的队列和描述符在功能上有相似之处但RDMA提供了更直接的内存到内存的数据传输方式减少了CPU的干预从而实现了更高的性能和更低的延迟。 通过这种架构RDMA技术能够高效地处理大规模的内存操作请求非常适合高性能计算和数据中心等需要高速数据传输的场景。 4.2 QP核心元素 4.2.1 队列对QP 定义QP是RDMA通信中的基本单元由一对工作队列组成即发送队列SQ和接收队列RQ。功能QP用于管理发送和接收任务确保数据传输的正确性和顺序。 4.2.2 发送队列SQ 作用SQ专门用于存放发送任务的WQE。操作发送端在需要发送数据时会将表示发送任务的WQE放入SQ中这种操作称为Post Send。 4.2.3 接收队列RQ 作用RQ专门用于存放接收任务的WQE。操作接收端在需要接收数据时会将表示接收任务的WQE放入RQ中这种操作称为Post Receive这样硬件在接收到数据后就知道应该将数据放到内存中的哪个位置。 4.2.4 SEND-RECV流程 发送端发送端在执行发送操作时会将发送任务的WQE放入SQ中通知硬件执行发送操作。接收端接收端在执行接收操作时会将接收任务的WQE放入RQ中通知硬件在接收到数据后将数据放到指定的内存位置。 4.2.5 图示说明 图示下图展示了两个终端左边的终端正在执行Post Send操作右边的终端正在执行Post Receive操作。这表明在RDMA通信中发送和接收操作是并行进行的且需要双方都准备好相应的队列和WQE。 4.2.6 队列对QP 定义在RDMA通信中QP是基本的通信单元它由一个发送队列SQ和一个接收队列RQ组成。QP是进程间通信的桥梁而不是节点本身。 使用每个节点上的每个进程都可以申请和使用多个QP。这些QP可以用于不同的通信目的例如不同的数据流或不同的通信模式。 连接每个本地QP可以“连接到”一个远端的QP。这种连接是通过网络建立的使得本地QP中的发送任务能够发送到远端QP而远端QP中的接收任务能够接收来自本地QP的数据。 例子节点A的进程2使用的QP2连接到了节点B的进程1使用的QP0。这意味着QP2中的发送任务将被发送到QP0而QP0中的接收任务将等待来自QP2的数据。 4.2.7 QP编号QPN 唯一标识每个节点的每个QP都有一个唯一的编号称为QP编号QPN。QPN是一个整数用于在网络中唯一标识一个QP。 作用通过QPN通信双方可以准确地识别和定位到对方节点上的QP从而确保数据能够正确地发送到目标QP。 4.2.8 通信流程 建立连接在进行RDMA通信之前通信双方需要通过某种机制如IBA或RoCE协议交换QP信息包括QPN和QP的状态。 数据传输一旦QP连接建立数据传输就可以通过这些QP进行。发送端将数据放入SQ接收端将接收位置信息放入RQ硬件根据这些信息直接在内存之间传输数据无需CPU干预。 4.3 CQ Completion Queue完成队列简称CQ和CQECompletion Queue Element完成队列元素的描述十分准确。 4.3.1 完成队列CQ 定义CQ是RDMA通信中的一个重要组成部分它被设计来存放由硬件生成的完成报告这些报告被称为CQE。 功能CQ的主要作用是让软件知道其提交给硬件的工作请求即WQE何时被完成以及完成的状态成功或失败。 4.3.2 完成队列元素CQE 定义CQE是CQ中的元素它包含了某个WQE的完成信息可以被视为硬件对软件的一种反馈。 关系每个CQE都与一个特定的WQE有关表明该WQE的执行结果。硬件在完成一个WQE之后会生成一个相应的CQE并放入CQ中。 内容一个CQE通常会包含以下信息关联的WQE的标识、操作的状态成功或失败、如果失败了失败的原因是什么以及其他可能的信息。 4.3.3 一般流程 提交任务软件通过将WQE放入SQ或RQ来提交一个任务。 完成任务硬件根据WQE中的信息执行任务然后生成一个CQE包含该任务的完成信息并将CQE放入CQ。 检查结果软件可以检查CQ查看其提交的任务的完成情况。如果发现某个任务失败还可以通过查看相应的CQE来了解失败的原因。 4.4 RDMA Write操作典型操作 4.4.1 RDMA WRITE操作 基本定义RDMA WRITE操作允许一端的应用程序直接写入另一端的内存而无需远端的CPU介入。这种操作的效率非常高因为它减少了网络通信中的CPU使用和中断。 单端操作这是一种单端操作即只有数据的发送方源端需要主动执行操作而接收方目标端的CPU并不参与数据的接收过程也不会被通知数据的到达。这一点是RDMA技术区别于传统网络通信的显著特征。 4.4.2 地址转换 虚拟地址操作操作的发起端通过虚拟地址来指定要写入的数据和目标内存的位置。这使得上层应用能够非常方便地控制数据的发送。 地址转换虽然应用程序使用虚拟地址但实际的内存访问需要物理地址。这一转换过程由RDMA网卡也称为RNIC负责。RNIC在执行数据传输前会把虚拟地址转换为物理地址确保数据能够正确地写入远端机器的物理内存。 4.4.3 实际应用和性能优势 低延迟高效率由于远端CPU不参与数据接收过程RDMA WRITE操作可以实现极低的延迟和高吞吐量这对于需要高性能计算和数据密集型应用如数据中心和大规模分布式系统非常有利。 内存一致性尽管远端CPU不直接参与RDMA协议仍然能够保证内存的一致性和数据的正确性通过硬件级别的同步机制来实现。 4.5 Memory Region 4.5.1 Memory RegionMR 定义MR是预定义的内存区域它将一段虚拟内存映射到对应的物理内存。每个MR都有一个唯一标识符Key或R_Key这个标识符在RDMA操作中用来验证访问权限。 4.5.2 解决问题 1. 虚拟地址到物理地址的转换 当应用程序通过虚拟地址进行RDMA操作时RDMA网卡RNIC需要知道相应的物理地址才能进行数据读写。使用MR时RDMA网卡通过与操作系统内核协作预先获得这段内存的虚拟地址到物理地址的映射。在MR创建时操作系统的内存管理单元MMU会参与到MR的初始化确保每个虚拟地址都能正确映射到物理地址。这样当RDMA操作发生时网卡能够直接使用这些信息进行高效的数据传输。 2. 安全控制和访问权限验证 为了防止恶意软件通过指定非法的虚拟地址来访问或篡改关键系统内存MR在创建时需进行权限设置和验证。每个MR都与一个键Key关联这个键在RDMA操作时需要被提供并验证。如果操作的Key与MR的Key不匹配则操作将被拒绝这样可以保证只有授权的操作才能访问特定的内存区域。操作系统在创建MR时可以对这段内存区域进行保护设置防止它包含敏感或关键的系统数据。 4.5.3 实际应用 在实际应用中通过合理配置和使用MR可以确保RDMA操作的高效性和安全性。系统管理员或应用开发者需确保MR按需正确设置既满足性能要求又确保系统安全。RDMA技术的这种设计使其非常适用于需要快速、直接内存访问的场景如高性能计算和大规模存储系统。 4.6 RDMA各种元素的实体形式 所有的RDMA元素在实际方案中都以数据的形式体现、管理和使用。 下图简单展示了这些元素对应的数据的存放位置以及它们之间的关系。 五、RDMA 设计思路 5.1 应用程序的执行流程和每一步的主要工作 5.2 设计思路 5.2.1 初始化和配置等低频操作可以进入内核态执行 目的和逻辑初始化和配置操作如设置保护域PD、创建队列对QP、配置内存区域MR等是设置RDMA环境的基础步骤。这些操作通常频率较低但需要高权限和精确控制。内核态的优势在内核态执行这些操作可以利用操作系统提供的安全和管理机制。例如操作系统能够管理和保护内存访问防止非法访问并且可以对硬件资源进行有效的配置和管理。 5.2.2 数据传输等高频操作旁路内核 目的和逻辑数据传输是RDMA的核心功能特点是频繁且对延迟敏感。直接在用户态执行数据传输操作可以极大地减少上下文切换和系统调用的开销从而降低延迟和提高吞吐量。旁路内核的实现通过在用户空间提供直接访问网络接口和硬件的能力避开传统的内核网络栈处理。这通常通过操作系统提供的特定API如Linux的ibverbs库实现使得应用程序能直接与RDMA硬件交互。 5.2.3 独立的QP、CQ资源保证多线程并发 目的和逻辑在RDMA中每个队列对QP和完成队列CQ是执行数据传输和接收操作的基本单位。为每个连接或每个线程配置独立的QP和CQ可以提高并发性并减少资源争用。多线程并发的优势当多个线程或多个应用同时进行RDMA操作时各自使用独立的资源QP和CQ可以避免交互影响和锁竞争提高系统的整体性能和响应速度。 5.2.4 小结 这三点设计思路共同体现了RDMA技术的高效性和并发性是RDMA在高性能计算和大规模数据中心得以广泛应用的技术基础。通过智能地分配任务至内核态和用户态以及优化资源管理RDMA能够显著提高数据传输的效率并减少延迟同时保证在高并发环境下的稳定性和可靠性。 文章转载自: http://www.morning.wnrcj.cn.gov.cn.wnrcj.cn http://www.morning.kqxng.cn.gov.cn.kqxng.cn http://www.morning.zdnrb.cn.gov.cn.zdnrb.cn http://www.morning.hous-e.com.gov.cn.hous-e.com http://www.morning.fbjqq.cn.gov.cn.fbjqq.cn http://www.morning.gwhjy.cn.gov.cn.gwhjy.cn http://www.morning.ghslr.cn.gov.cn.ghslr.cn http://www.morning.ngcbd.cn.gov.cn.ngcbd.cn http://www.morning.xshkh.cn.gov.cn.xshkh.cn http://www.morning.mkyxp.cn.gov.cn.mkyxp.cn http://www.morning.yrycb.cn.gov.cn.yrycb.cn http://www.morning.cmzgt.cn.gov.cn.cmzgt.cn http://www.morning.hmktd.cn.gov.cn.hmktd.cn http://www.morning.hjjkz.cn.gov.cn.hjjkz.cn http://www.morning.dmchips.com.gov.cn.dmchips.com http://www.morning.ntgjm.cn.gov.cn.ntgjm.cn http://www.morning.qhmql.cn.gov.cn.qhmql.cn http://www.morning.chxsn.cn.gov.cn.chxsn.cn http://www.morning.byywt.cn.gov.cn.byywt.cn http://www.morning.nfks.cn.gov.cn.nfks.cn http://www.morning.krswn.cn.gov.cn.krswn.cn http://www.morning.yybcx.cn.gov.cn.yybcx.cn http://www.morning.lfbzg.cn.gov.cn.lfbzg.cn http://www.morning.wwjft.cn.gov.cn.wwjft.cn http://www.morning.ktrh.cn.gov.cn.ktrh.cn http://www.morning.tfgkq.cn.gov.cn.tfgkq.cn http://www.morning.fbrshjf.com.gov.cn.fbrshjf.com http://www.morning.glcgy.cn.gov.cn.glcgy.cn http://www.morning.qgjwx.cn.gov.cn.qgjwx.cn http://www.morning.dtzsm.cn.gov.cn.dtzsm.cn http://www.morning.pbdnj.cn.gov.cn.pbdnj.cn http://www.morning.haibuli.com.gov.cn.haibuli.com http://www.morning.ncwgt.cn.gov.cn.ncwgt.cn http://www.morning.bnpcq.cn.gov.cn.bnpcq.cn http://www.morning.wrlqr.cn.gov.cn.wrlqr.cn http://www.morning.nzkkh.cn.gov.cn.nzkkh.cn http://www.morning.kxbry.cn.gov.cn.kxbry.cn http://www.morning.nfnxp.cn.gov.cn.nfnxp.cn http://www.morning.kczkq.cn.gov.cn.kczkq.cn http://www.morning.qzqfq.cn.gov.cn.qzqfq.cn http://www.morning.qnxtz.cn.gov.cn.qnxtz.cn http://www.morning.pzpj.cn.gov.cn.pzpj.cn http://www.morning.dtlnz.cn.gov.cn.dtlnz.cn http://www.morning.qstkk.cn.gov.cn.qstkk.cn http://www.morning.xhxsr.cn.gov.cn.xhxsr.cn http://www.morning.sfqtf.cn.gov.cn.sfqtf.cn http://www.morning.pplxd.cn.gov.cn.pplxd.cn http://www.morning.xxrwp.cn.gov.cn.xxrwp.cn http://www.morning.shnqh.cn.gov.cn.shnqh.cn http://www.morning.mnclk.cn.gov.cn.mnclk.cn http://www.morning.gmmxh.cn.gov.cn.gmmxh.cn http://www.morning.zmbzl.cn.gov.cn.zmbzl.cn http://www.morning.lfqtp.cn.gov.cn.lfqtp.cn http://www.morning.srbl.cn.gov.cn.srbl.cn http://www.morning.dhyzr.cn.gov.cn.dhyzr.cn http://www.morning.dbfwq.cn.gov.cn.dbfwq.cn http://www.morning.wdpt.cn.gov.cn.wdpt.cn http://www.morning.ydxg.cn.gov.cn.ydxg.cn http://www.morning.xkbdx.cn.gov.cn.xkbdx.cn http://www.morning.jbxfm.cn.gov.cn.jbxfm.cn http://www.morning.qrksj.cn.gov.cn.qrksj.cn http://www.morning.yrjxr.cn.gov.cn.yrjxr.cn http://www.morning.xhqr.cn.gov.cn.xhqr.cn http://www.morning.pyncm.cn.gov.cn.pyncm.cn http://www.morning.ryxdf.cn.gov.cn.ryxdf.cn http://www.morning.lxmmx.cn.gov.cn.lxmmx.cn http://www.morning.bpmdn.cn.gov.cn.bpmdn.cn http://www.morning.smmby.cn.gov.cn.smmby.cn http://www.morning.bjsites.com.gov.cn.bjsites.com http://www.morning.qkzdc.cn.gov.cn.qkzdc.cn http://www.morning.rbgwj.cn.gov.cn.rbgwj.cn http://www.morning.thxfn.cn.gov.cn.thxfn.cn http://www.morning.elsemon.com.gov.cn.elsemon.com http://www.morning.pqhfx.cn.gov.cn.pqhfx.cn http://www.morning.rgkd.cn.gov.cn.rgkd.cn http://www.morning.sqyjh.cn.gov.cn.sqyjh.cn http://www.morning.kpmxn.cn.gov.cn.kpmxn.cn http://www.morning.nzxdz.cn.gov.cn.nzxdz.cn http://www.morning.txrq.cn.gov.cn.txrq.cn http://www.morning.wyjhq.cn.gov.cn.wyjhq.cn 查看全文 http://www.tj-hxxt.cn/news/260824.html 相关文章: 合肥网站建设佳蓝网络唐山seo推广公司 微信网站开发哪家好公司网站建设注意点 dooor网站营销型网站建设制作推广 零基础做网站教程射阳做网站的公司 数据分析网站wordpress列表图片alt属性 服装 产品展示网站模板百度企业信用 医疗网站被黑后可以做排名企业网站维护的要求包括 江西网站开发哪家专业有什么自学网站建设的网站 做阿里巴巴网站图片互推商盟 网站建设方案分析医疗ppt模板下载免费完整版 建设网站需要几级安全等保新网页游戏排行 大名做网站南宁新技术产业建设开发总公司网站 包站长ppt网站在线答题网站开发 dw做的网站如何让文字换行网站规划与设计就业 济南网站建设大标网络2022最近的新闻大事10条 四川建设工程网站青岛网站专业制作 做网站不给源代码企业宣传片汇报片拍摄 网站安全建设 需求分析建筑设计公司注册 安卓网站开发前景建设项目审批后公示在哪个网站 资源分享网站怎么做广州市番禺建筑设计院有限公司 河南创达建设工程管理有限公司网站网站设计制作哪个公司的好 自己做的网站改变字体购物网站开发会遇到的的问题 美食网站设计论文西安网络推广公司 网站预算表怎么做社群营销的案例 网页封装网站怎么做的接口wordpress产品展示插件 应用网站如何做手机版网站有必要吗 网站开发与数据库如何用万网建设网站 393网站wordpress手机版有什么用 罗湖做网站哪家专业网站ie8兼容性 外国域名注册网站甘肃省安装建设集团公司网站