iSCSI clarifcation
Robbo777
Member Posts: 331 ■■■□□□□□□□
Hi, i'm curious if someone could clear something up that has been confusing me for a couple of days.
Regarding iSCSI, i'm aware that it is a way of encapsulating SCSI packets that can be sent over a network to a SAN. But what I'd like to know is, if SCSI just another protocol like ICMP is used for ping or ARP for broadcast or HTTPS is for the internet, for encapsulating packets and carrying them over a network using this?
Also, are they used for sending data to the disks in the storage pools etc? and retrieving data also?
Thanks in advance
Regarding iSCSI, i'm aware that it is a way of encapsulating SCSI packets that can be sent over a network to a SAN. But what I'd like to know is, if SCSI just another protocol like ICMP is used for ping or ARP for broadcast or HTTPS is for the internet, for encapsulating packets and carrying them over a network using this?
Also, are they used for sending data to the disks in the storage pools etc? and retrieving data also?
Thanks in advance
Comments
-
OctalDump Member Posts: 1,722For iSCSI, the SCSI control language is encapsulated within TCP packets. SCSI was made into a fairly layered protocol back in the early 90s, so that like TCP/IP, the commands for talking to the storage device can be carried over various media. This allows us to do fun things like iSCSI.
It's arguable whether iSCSI is really SAN or not. It's not like Fibre Channel (which also uses these SCSI commands), where there is a discrete layer 2 - or even physical layer - that keeps storage traffic separate from regular network data.
iSCSI works on top of TCP/IP, so all the 'underneath' stuff from layers 1-4 is the same - ICMP, ARP, Ethernet/Wireless/Whatever, IP, TCP. This means it gets mixed in with whatever other traffic is there. It also means that it is routable. So theoretically, I could connect over the internet to an iSCSI target on the other side of the world, and mount it as block storage.
Like other TCP/IP protocols (eg HTTP, TFTP, SSH), once it arrives at the destination, the lower levels (layers 1-4) are stripped off and the SCSI commands are sent to the device (might be software, might be a RAID card, a HBA, an array controller, and rarely an actual disk) to interpret. In the most cases they will actually deal with a 'logical' volume, so that there will be at least one more layer of abstraction where another set of commands are sent to the 'raw' device.2017 Goals - Something Cisco, Something Linux, Agile PM