关于InfiniBand几个基本知识点解释
文章出处:
https://blog.csdn.net/BtB5e6Nsu1g511Eg5XEg/article/details/83629279
公众号 https://blog.csdn.net/BtB5e6Nsu1g511Eg5XEg/article/details/83629279
IP网络协议如TCP/IP,具有转发丢失数据包的特性,网络不良时要不断地确认与重发,基于这些协议的通信也会因此变慢,极大地影响了性能。与之相比,IB使用基于信任的、流控制的机制来确保连接的完整性,数据包极少丢失。
使用IB协议,除非确认接收缓存具备足够的空间,否则不会传送数据。接受方在数据传输完毕之后,返回信号来标示缓存空间的可用性。通过这种办法,IB协议消除了由于原数据包丢失而带来的重发延迟,从而提升了效率和整体性能。
什么是InfiniBand网络
InfiniBand是一种网络通信协议,它提供了一种基于交换的架构,由处理器节点之间、处理器节点和输入/输出节点(如磁盘或存储)之间的点对点双向串行链路构成。每个链路都有一个连接到链路两端的设备,这样在每个链路两端控制传输(发送和接收)的特性就被很好地定义和控制了。
InfiniBand通过交换机在节点之间直接创建一个私有的、受保护的通道,进行数据和消息的传输,无需CPU参与远程直接内存访问(RDMA)和发送/接收由InfiniBand适配器管理和执行的负载。
适配器通过PCI Express接口一端连接到CPU,另一端通过InfiniBand网络端口连接到InfiniBand子网。与其他网络通信协议相比,这提供了明显的优势,包括更高的带宽、更低的延迟和增强的可伸缩性。
什么是InfiniBand架构
InfiniBand Architecture(IBA)是为硬件实现而设计的,而TCP则是为软件实现而设计的。因此,InfiniBand是比TCP更轻的传输服务,因为它不需要重新排序数据包,因为较低的链路层提供有序的数据包交付。传输层只需要检查包序列并按顺序发送包。
进一步,因为InfiniBand提供以信用为基础的流控制(发送方节点不给接收方发送超出广播 “信用“大小的数据包),传输层不需要像TCP窗口算法那样的包机制确定最优飞行包的数量。这使得高效的产品能够以非常低的延迟和可忽略的CPU利用率向应用程序交付56、100Gb/s的数据速率。
IB是以通道(Channel)为基础的双向、串行式传输,在连接拓朴中是采用交换、切换式结构(Switched Fabric),所以会有所谓的IBA交换器(Switch),此外在线路不够长时可用IBA中继器(Repeater)进行延伸。而每一个IBA网络称为子网(Subnet),每个子网内最高可有65,536个节点(Node),IBASwitch、IBA Repeater仅适用于Subnet范畴,若要通跨多个IBA Subnet就需要用到IBA路由器(Router)或IBA网关器(Gateway)。至于节点部分,Node想与IBA Subnet接轨必须透过配接器(Adapter),若是CPU、内存部分要透过HCA (Host Channel Adapter),若为硬盘、I/O部分则要透过TCA (Target Channel Adapter),之后各部分的衔接称为联机(Link)。上述种种构成了一个完整的IBA
关于InfiniBand几个基本知识点解释的更多相关文章
- Maven 相关知识点解释
在PC端上面关于Maven的安装等情况我这里就不再复述了,不懂的请自行百度谷歌. 今天聊一下Maven 里面的结构,及相关依赖解释. groupId,artfactId,version,type,cl ...
- 【Vue】Vue框架常用知识点 Vue的模板语法、计算属性与侦听器、条件渲染、列表渲染、Class与Style绑定介绍与基本的用法
Vue框架常用知识点 文章目录 Vue框架常用知识点 知识点解释 第一个vue应用 模板语法 计算属性与侦听器 条件渲染.列表渲染.Class与Style绑定 知识点解释 vue框架知识体系 [1]基 ...
- javascript的理解及经典案例
js的简介: JavaScript是一种能让你的网页更加生动活泼的程式语言,也是目前网页中设计中最容易学又最方便的语言. 你可以利用JavaScript轻易的做出亲切的欢迎讯息.漂亮的数字钟.有广告效 ...
- selenium webdriver (python) 第二版
前言 对于大多软件测试人员来讲缺乏编程经验(指项目开发经验,大学的C 语言算很基础的编程知识)一直是难以逾越的鸿沟,并不是说测试比开发人员智商低,是国内的大多测试岗位是功能测试为主,在工作时间中,我们 ...
- selenium webdriver (python) 第三版
感谢 感谢购买第二版的同学,谢谢你们对本人劳动成果的支持!也正是你们时常问我还出不出第三版了,也是你们的鼓励,让我继续学习整理本文档. 感谢乙醇前辈,第二版的文档是放在他的淘宝网站上卖的,感谢他的帮忙 ...
- selenium webdriver (python)2
selenium webdriver (python) 第二版 前言 对于大多软件测试人员来讲缺乏编程经验(指项目开发经验,大学的C 语言算很基础的编程知识)一直是难以逾越的鸿沟,并不是说测试比开发 ...
- 047 SparkSQL自定义UDF函数
一:程序部分 1.需求 Double数据类型格式化,可以给定小数点位数 2.程序 package com.scala.it import org.apache.spark.{SparkConf, Sp ...
- 系统学习NIO
概述 适用于有一定编程基础的朋友,想系统学习NIO这块知识的朋友.知识点大体分3块:1:>概念了解(各类IO) 2>NIO的核心(缓存区,通道等) 3>网络IO 详细 代码下载:ht ...
- 编写自己的ls命令
····要编写ls命令,首先要了解它能做什么,完成了什么工作,是如何完成这些工作的···· 一.ls命令能做什么? 我们在命令行输入ls,ls默认找出当前目录中所有文件的文件名,并且按照字典序排序后 ...
随机推荐
- python的学习之路day4
大纲 1.一些常用的内置函数 callable() chr() & ord() 随机生成验证码 map() 全局变量,局部变量 hash() & round() max() min() ...
- vsftp配置
网上很多,但我还是想再整理一份属于自己的 1.vsftp简介 vsftp提供三种登陆方式:.匿名登录 .本地用户登录 .虚拟用户登录 vsftpd的特点:.较高的安全性需求 .带宽的限制 .创建支持虚 ...
- AngularJS 中<a> 超链接标签不起作用?
开始时遇到个问题,单页应用<a>元素链接点击就是不跳转页面,使用超链接标签<a href='group'>click</a> 不起作用. 解决方法: 如果你不巧配置 ...
- 题解 P1120 【小木棍 [数据加强版]】
题面 乔治有一些同样长的小木棍,他把这些木棍随意砍成几段,直到每段的长都不超过50. 现在,他想把小木棍拼接成原来的样子,但是却忘记了自己开始时有多少根木棍和它们的长度. 给出每段小木棍的长度,编程帮 ...
- runloop是iOS系统上的actor模式
runloop是iOS系统上的actor模式(单线程派发的)
- curl_init 接口
<?php// +----------------------------------------------------------------------// | ThinkPHP [ WE ...
- opencv中的bitwise_not,bitwise_xor,bitwise_or,bitwise_and的使用方法与效果。
1.将二指图片的效果反转既黑色变白色,白色变黑色. 使用 bitwise_not(InputArray src, OutputArray dst, InputArray mask = noArray( ...
- Javascript异步编程之setTimeout与setInterval详解分析(一)
Javascript异步编程之setTimeout与setInterval 在谈到异步编程时,本人最主要会从以下三个方面来总结异步编程(注意:特别解释:是总结,本人也是菜鸟,所以总结不好的,请各位大牛 ...
- 第三次作业:结对编程--实现表格在APP的导入和显示
031302517 031302319 ps:共同完成一篇随笔,文章中的第一人称我(517),队友(319) 一.功能分析+实现思路+结队讨论 这里我将功能分析和实现思路还有结对过程中的一些讨论结合在 ...
- pv,uv的意义
PV(page view),即页面浏览量,或点击量;通常是衡量一个网络新闻频道或网站甚至一条网络新闻的主要指标. 高手对pv的解释是,一个访问者在24小时(0点到24点)内到底看了你网站几个页面.这里 ...