存储知识学习之--IP网络存储iSCSI的概念与工作原理

本章主要介绍基于IP SAN的网络存储iSCSI。iSCSI技术以其低廉的构建成本和优秀的存储性能,博得了很多CIO和存储管理员的喜爱,目前陆续进入企业应用领域,推动了企业的存储环境向集中式转变。虽然,目前对于iSCSI应该在什么样的环境中使用还存在着诸多争议,但是iSCSI的前途是光明的,在未来的存储世界中,iSCSI一定会占据重要的席位。本章重点介绍iSCSI在Windows和Linux环境下的配置和使用。

存储的概念与术语

在存储的世界里,有各种各样的名词和术语,常见的有SCSI、FC、DAS、NAS、SAN等。本节重点介绍与存储相关的术语和知识。

1、SCSI介绍

SCSI是小型计算机系统接口(Small Computer System Interface)的简称,SCSI作为输入/输出接口,主要用于硬盘、光盘、磁带机、扫描仪、打印机等设备。

2、FC介绍

FC是光纤通道(Fibre Channel)的简称,是一种适合于千兆数据传输的、成熟而安全的解决方案。与传统的SCSI技术相比,FC提供更高的数据传输速率,更远的传输距离,更多的设备连接支持,更稳定的性能,更简易的安装。

3、DAS介绍

DAS是直连式存储(Direct-Attached Storage)的简称,是指将存储设备通过SCSI接口或光纤通道直接连接到一台计算机上。当服务器在地理上比较分散,很难通过远程进行互连时,DAS是比较好的解决方案。但是这种式存储只能通过与之连接的主机进行访问,不能实现数据与其他主机的共享,同时,DAS会占用服务器操作系统资源,例如CPU资源、IO资源等,并且数据量越大,占用操作系统资源就越严重。

4、NAS介绍

网络接入存储(Network-Attached Storage)简称NAS,它通过网络交换机连接存储系统和服务器,建立专门用于数据存储的私有网络,用户通过TCP/IP协议访问数据,采用业界标准的文件共享协议如NFS、HTTP、CIFS来实现基于文件级的数据共享。NAS存储使文件共享访问变得更方便和快捷,并且能很容易地增加存储容量。通过专业化的文件服务器与存储技术相结合,NAS为那些需要共享大量文件数据的企业提供了一个高效的、高可靠的、高性价比的解决方案。但是NAS也有一定的局限性,它会受到网络带宽和网络拥堵的影响,在一定程度上限制了NAS的网络传输能力。

5、SAN介绍

存储区域网络(Storage Area Network)简称SAN,它是一种通过光纤交换机、光纤路由器、光纤集线器等设备将磁盘阵列、磁带等存储设备与相关服务器连接起来的高速专用子网。

SAN由3个部分组成,分别是连接设备(如路由器、光纤交换机和Hub)、接口(如SCSI、FC)、通信协议(如IP和SCSI)。这3个部分再加上存储设备和服务器就构成了一个SAN系统。SAN捉供了一个灵活的、高性能的和高扩展性的存储网络环境,它可以更加有效地传输海量的数据块。由于采用了光纤接口,因此SAN还具有更高的带宽,同时,SAN也使统一管理和集中控制实现简化。现在SAN已经广泛应用于ISP和银行等,随着用户业务量的增大,SAN的应用前景将越来越光明。

iSCSI的概念

iSCSI,即Internet SCSI,是IETF制订的一项标准,用于将SCSI数据块映射为以太网数据包。从根本上说,它是一种基于IP Storage理论的新型存储技术,该技术将存储行业广泛应用的SCSI接口技术与IP网络技术相结合,可以在IP网络上构建SAN。简单地说,iSCSI就是在IP网络上运行SCSI协议的一种网络存储技术。iSCSI技术最初由Cisco和IBM两家开发,并且得到了广大IP存储技术爱好者的大力支持,这几年得到迅速的发展壮大。

对于中小企业的存储网络来说,iSCSI是个非常好的选择。首先,从技术实现上来讲,iSCSI是基于IP协议的技术标准,它允许网络在TCP/IP协议上传输SCSI命令,实现SCSI和TCP/IP协议的连接,这样用户就可以通过TCP/IP网络来构建SAN,只需要不多的投资,就可以方便、快捷地对信息和数据进行交互式传输和管理。但是,在iSCSI出现之前,构建SAN的唯一技术是利用光纤通道,这要花费很大的建设成本,一般中小企业无法承担。其次,iSCSI技术解决了传输效率、存储容量、兼容性、开放性、安全性等方面的诸多问题,在使用性能上绝对不输给商业的存储系统或光纤存储网络。

iSCSI的优势主要表现为:首先,iSCSI沿用TCP/IP协议,而TCP/IP是在网络方面最通用、最成熟的协议,且IP网络的基础建设非常完善,同时,SCSI技术是被磁盘和磁带等设备广泛采用的存储标准,这两点使iSCSI的建设费用和维护成本非常低廉;其次,iSCSI支持一般的以太网交换机而不是特殊的光纤通道交换机,从而减少了异构网络带来的麻烦;还有,iSCSI是通过IP封包传输存储命令,因此可以在整个Internet上传输数据,没有距离的限制。

 FC SAN与IP SAN

在iSCSI技术出现后,通过IP技术搭建的存储网络也应运而生,SAN技术也就出现了两种不同的实现方式,即FC SAN与IP SAN。简单来说,以光纤搭建的存储网络就是FC SAN.以iSCSI技术搭建的存储网络叫做IP SAN。

作为SAN的两种实现方式,FC SAN与IP SAN各有优劣,下面从几个方面分别阐述。
    在数据传输方式上,FC SAN与IP SAN都采用块协议方式来完成。这是它们的相同点。
    在传输速度上,就目前的传输速率而言,FC SAN(2Gbit/s)最快,iSCSI(lGbit/s)次之

在传输距离上,FC SAN理论上可以达到100公里,而事实上,传输超过50公里后,就会出现瓶颈。而通过IP网络的iSCSI技术在理论上没有距离的限制,即iSCSI可以进行没有距离限制的数据传输。
    管理及维护成本上,架设FC SAN网络需要投入很多硬件成本,并且需要特定的工具软件进行操作管理,而IP SAN构建成本低廉,由于iSCSI是通过IP网络来传输数据和分配存储资源的,因此只要在现有的网络上进行管理和使用即可,这样就可以省下大笔的管理费用及培训成本。

其实IP SAN也面临着一些不可回避的困扰:首先,基于IP SAN的网络存储还没有得到用户的充分肯定:其次,IP SAN存储需要专门的驱动和设备,幸运的是,一些传统的光纤适配器厂商都发布了iSCSI HBA设备,同时Inter也推出了专用的IP存储适配器,而Microsoft、HP、Novell、SUN、AIX、Linux也具有iSCSI Initiator软件,并且免费供用户使
用:还有,在安全方面,IP SAN虽然有一套规范的安全机制,但是尚未得到用户的认可。

这些问题和困扰虽然会妨碍iSCSI的发展,但是相信在未来的网络存储世界里,IP SAN绝对金拥有一席之地。

iSCSI的组成

一个简单的iSCSI系统大致由以下部分组成:

iSCSI Initiator或者iSCSI HBA
iSCSI Target
以太网交换机
一台或者多台服务器

一个完整的iSCSI系统的拓扑结构如图7-1所示。

图7-1  完整的iSCSI系统拓扑结构

在图7-1中,iSCSI服务器用来安装iSCSI驱动程序,即安装iSCSI Initiator;Storage Router可以是以太网交换机或者路由器;iSCSI存储设备可以是iSCSI磁盘阵列,也可以是具有存储功能的PC服务器。下面详细介绍一下iSCSI Initiator与iSCSI Target的含义。

1、iSCSI Initiator

iSCSI Initiator是一个安装在计算机上的软件或硬件设备,它负责与iSCSI存储设备进行通信。

iSCSI服务器与iSCSI存储设备之间的连接方式有两种:

第一种是基于软件的方式,即iSCSI Initiator软件。在iSCSI服务器上安装Initiator后,Initiator软件可以将以太网卡虚拟为iSCSI卡,进而接受和发送iSCSI数据报文,从而实现主机和iSCSI存储设备之间的iSCSI协议和TCP/IP协议传输功能。这种方式只需以太网卡和以太网交换机,无需其他设备,因此成本是最低的。但是iSCSI报文和TCP/IP报文转换需要消耗iSCSI服务器的一部分CPU资源,只有在低I/O和低带宽性能要求的应用环境中才能使用这种方式。

第二种是硬件iSCSI HBA (Host Bus Adapter)卡方式,即iSCSI Initiator硬件。这种方式需要先购买iSCSI HBA卡,然后将其安装在iSCSI服务器上,从而实现iSCSI服务器与交换机之间、iSCSI服务器与存储设备之间的高效数据传输。与第一种方式相比,硬件iSCSIHBA卡方式不需要消耗iSCSI服务器的CPU资源,同时硬件设备是专用的,所以基于硬件的iSCSI Initiator可以提供更好的数据传输和存储性能。但是,iSCSI HBA卡的价格比较昂贵,因此用户要在性能和成本之间进行权衡。

iSCSI Initiator软件一般都是免费的,Centos和RHEL对iSCSI Initiator的支持都非常不错,现在的Linux发行版本都默认自带了iSCSI Initiator。

2、iSCSI Target

一个可以用于存储数据的iSCSI磁盘阵列或者具有iSCSI功能的设备都可以被称为“iSCSI Target”,因为大多数操作系统都可以利用一些软件将系统转变为一个“iSCSI Target”。本章重点讲述如何构建一个PC构架的iSCSI存储系统。所谓PC构架就是选择一个普通的、性能优良的、可支持多块磁盘的PC(一般为PC服务器),再选择一款相对成熟稳定的iSCSI Target软件,将iSCSI Target软件安装在PC服务器上,使普通的PC服务器转变成一台iSCSI存储设备,并通过PC服务器的以太网卡对外提供iSCSI数据传输服务。

目前大多数iSCSI Target软件都是收费的,例如DataCorc  Software的SANmelody,FalconStor Software的iSCSI Server for Windows等,这些都是Windows平台支持的。不过,也有一些Linux平台的开源iSCSI Target软件,例如iSCSI Enterprise Target,后面的内容会重点介绍这个软件。

利用iSCSI Target软件,可以将服务器的存储空间分配给客户机使用,客户机可以像使用本地硬盘一样使用iSCSI磁盘,包括对其进行分区、格式化及读写等。而且每个客户端都可以向iSCSI磁盘写数据,互不干扰,并且不会破坏存储到服务器中的数据。同时,iSCSITarget软件对用户权限控制非常灵活,支持配置文件。

我们知道,iSCSI是使用TCP/IP协议进行通信的,因此,将iSCSI两端连接起来,仅仅需要一个以太网络就可以了。由此可知,iSCSI的存储性能和这个以太网络有直接关系,所以最好在iSCSI网络中使用千兆以太网交换机,劣质的网络设备会严重影响存储系统的性能,也就是说,要为每个服务器配备高质量的千兆以太网交换机,并提供两个连接。对于iSCSI Target,应该为每个独立阵列中的两个独立端口配备交换机,最后将交换机连接起来,采用这种配置方式,即使两个交换机中的一个出现了故障,整个iSCSI存储系统仍然能够正常工作,这保证了存储系统的不间断运行。

iSCSI的工作原理

要理解iSCSI的工作原理,就必须知道iSCSI的层次结构。根据OSI模型,iSCSI的协议自顶向下一共可以分为三层,如图7-2所示。

图7-2  iSCSI的协议结构

下面对每个分层进行简单介绍。

    SCSI层:根据客户端发出的请求建立SCSI CDB(命令描述块),并传给iSCSI层。同时接收来自iSCSI层的CDB,并向应用返回数据。
    iSCSI层:对SCSI CDB进行封装,以便能够在基于TCP/IP协议的网络上进行传输,完成SCSI到TCP/IP的协议映射。这一层是iSCSI协议的核心层。本章也主要针对这一层的配置和管理进行介绍。
    TCP/IP层:对IP报文进行路由和转发,并且提供端到端的透明可靠的传输。

iSCSI协议定义了在TCP/IP网络发送、接收数据块存储数据的规则和方式。先发送端将SCSI命令和数据封装到TCP/IP包中,然后通过IP网络转发,接收端收到TCP/IP包之后,将其还原为SCSI命令和数据并执行,执行完成后,将返回的SCSI命令和数据再封装到TCP/IP包中,之后再传回发送端。这样就完成了数据传输的整个过程。

iSCSI的整个数据传输过程在用户看来是完全透明的,用户使用远端的存储设备就像使用本地的硬盘设备一样。不过,这只是理论状态,实际上iSCSI的数据传输速率并不能完全达到本地硬盘的数据传输速率,但差别并不明显。而且这种网络存储模式还有一个优点是安全性高,这对于数据集中存储的iSCSI来说显然非常重要。

转载于:https://blog.51cto.com/xiaocao13140/1931853

存储知识学习之--IP网络存储iSCSI的概念与工作原理相关推荐

  1. 【存储知识学习】第十章- 存储架构演进过程《大话存储》阅读笔记

    10.5.1 第一阶段:全整合阶段 所有的部件和模块都在同一个机箱当中,是DAS结构. 10.5.2  第二阶段:磁盘外置阶段 是将磁盘置于服务器机箱外部的情况.这种架构依然属于DAS架构,因为存储系 ...

  2. IP网络存储iSCSI之一iSCS的概念、组成及工作原理

    一.iscsi的概念 iscsi,即internet SCSI,是IETF制订的一项标准,用于将SCSI数据块映射为以太网数据包.iscsi技术最初由cisco和ibm两家公司开发,并且得到了广大IP ...

  3. 【存储知识学习】第八章-Fibre Channel协议-8.1 FC网络和8.2FC协议中七种端口类型-《大话存储》阅读笔记

    8.1FC网络 Fibre Channel也就是网状通道,简称FC.也可以称为FC协议,FC网络.FC互联 注意: Fibre Channel不是Fiber Channel,后者是光纤通道与网状通道没 ...

  4. 【存储知识学习】第三章磁盘原理与技术3.1磁盘结构--《大话存储》阅读笔记

    3.1硬盘结构 结构图 3.1.1 盘面上的数据组织 硬盘首先在逻辑上被划分为此道.柱面.扇区. 每个盘面都有一个读写磁头,磁头起初停在盘面最内圈,即线速度最小的地方.这是一个特殊区域,它不存放任何数 ...

  5. 存储知识:数据一致性、分级存储、分层存储与信息生命周期管理

    一.概述 数据一致性是指关联数据之间的逻辑关系是否正确和完整.问题可以理解为应用程序自己认为的数据状态与最终写入到磁盘中的数据状态是否一致.比如一个事务操作,实际发出了五个写操作,当系统把前面三个写操 ...

  6. 电脑硬件知识学习_关于网络学习心得体会集锦七篇

    关于网络学习心得体会集锦七篇 当在某些事情上我们有很深的体会时,好好地写一份心得体会,通过写心得体会,可使我们今后少走弯路.那么心得体会怎么写才能感染读者呢?以下是小编为大家收集的网络学习心得体会7篇 ...

  7. 【存储知识学习】第十章- NAS和SAN《大话存储》阅读笔记

    10.1 NAS 10.1.1 两种访问方式的后端存储网络 10.1.2 网络文件系统 LINU和UNIX系统使用NFS协议,上层协议利用TCP/IP协议进行传输的.这种文件系统不是运行在本地,而是网 ...

  8. 【存储知识学习】第八章-Fibre Channel协议《大话存储》阅读笔记

    8.5 引入FC的优势 8.5.1 提高扩展性 一台盘阵如果只能提供一个FC前端接口,同样可以连接多台主机,办法是把它们都连接狂一台FC交换机上.引入包交网络之后,首先时速度提升一大截,其次时由于包交 ...

  9. 【存储知识学习】第六章-磁盘阵列-《大话存储》阅读笔记

    目录 6.1 外置机柜 6.2 结合RAID卡实现外置磁盘阵列 6.3独立的外部磁盘阵列 6.4 双控制器的搞安全性磁盘阵列 1.Active-Standby 2.Dual-Activate 3.脑分 ...

  10. 【存储知识学习】第五章-5.4虚拟磁盘和5.5卷管理层-《大话存储》阅读笔记

    目录 5.4 虚拟磁盘 5.4.1 RAID组再划分 5.4.2同一通道存在多种类型的RAID组 5.4.3操作系统如何看待逻辑盘 5.4.4控制器如何管理逻辑磁盘 5.5卷管理层 5.5.1-5.5 ...

最新文章

  1. 《精通Python设计模式》学习结构型之MVC模式
  2. 精通python能干什么-Python学到什么程度才算精通?天津Python培训
  3. Android平台 Psensor传感器调试方法
  4. Cocos2d开发1:Xcode与TexturePacker的集成
  5. 红橙Darren视频笔记 任意控件实现拖动消失爆炸效果
  6. matlab中 mcc/mbuild/mex 区别
  7. linux jdk1.8 32位下载永久地址,ubuntu,centos,java
  8. 内是不是半包围结构_什么是结构化面试、无领导小组讨论、结构化小组面试?教你快速搞懂国考面试三大形式。...
  9. 计算机有损压缩编码,有损压缩格式有哪些
  10. POI在Excel中导出图片(含多图)
  11. HTML 表单元素的基本样式
  12. 加密数字货币的开发技术介绍
  13. CV面试知识点总结--机器学习
  14. Matlab中regress函数各参数解释
  15. 【沙龙预告】移动媒体产品新趋势
  16. 全国计算机四级嵌入式系统开发工程师
  17. org.eclipse.wst.common.component
  18. Flutter 集成腾迅 IM Demo 时不同的编译配置的连环坑 2021-12-17
  19. 无人机水利应用,有力支撑黄河防凌监测工作
  20. Java项目:ssm医院管理系统

热门文章

  1. Android Multimedia框架总结(二十)MediaCodec状态周期及Codec与输入/输出Buffer过程(附实例)
  2. Java基础---Java---基础加强---类加载器、委托机制、AOP、 动态代理技术、让动态生成的类成为目标类的代理、实现Spring可配置的AOP框架
  3. mac apache 启动php,Mac OS上搭建Apache+PHP+MySQL开发环境的详细教程
  4. memcached mysql 类_mysql有没有类似和memcached里那样的CAS版本控制?
  5. html js 跳出框架,现在的web框架为什么把html和js又结合在一起了?
  6. 通过两个简单的案例,让你明白ansible playbook的编写核心
  7. vue2.0桌面端框架_这款优秀的Vue+ElementUI桌面端一站式框架,爱了!
  8. deeplearning.ai——字符级语言模型-恐龙岛
  9. Error 2503 and 2502 when installing/uninstalling on Windows 10
  10. (转)程序员如何快速准备面试中的算法