1

I was wondering if there are any major advantages of using the iSCSI protocol to access a NAS over a connection via FTP or SMB (besides access speeds, which would be higher with the use of the iSCSI protocol).

1
  • 5
    In addition to the below answers, it should be noted that unless you're using a cluster-aware filesystem, each iSCSI endpoint can only be mounted by one system at a time.
    – EEAA
    Dec 22, 2013 at 15:15

4 Answers 4

3

Transparency and overhead are less with iSCSI.

As far as the rest of the OS is concerned, that's just another disk that it can write to and read from like any other, and the iSCSI driver encapsulates all of the network complexity into a presentation that other programs simply see as a disk. With SMB or FTP or what have you, each program has to store its own connection and authentication information somewhere, this gets out of sync, hair gets pulled out, teeth gnash, etc. The OS doesn't see this as a connection to somewhere else; it just sees it as a block device like any other.

Also, assuming you have a hardware initiator, there's less TCP processing overhead in the OS kernel.

Finally, while this is minor, I might as well add, the iSCSI protocol has less enveloping/framing/etc. so will be (slightly) more efficient in terms of bandwidth than FTP/CIFS/NFS/etc.

4

iSCSI is a different kind of protocol. With FTP and SMB (or NFS) you access files, while iSCSI is a block device protocol. The major differences are:

With FTP, SMB, NFS multiple clients can access the same area, while with iSCSI typically only one system has access, unless you are using a clustered filesystem (OCFS, VMFS, GFS, ...).

If you designate a device for iSCSI you are using the whole device, even if the disk is just empty and formatted, in comparison to SMB or FTP where you are using just the disk space the files are using.

iSCSI is typically faster and has less overhead, but it depends on the workload.

1

Since the world is over-concerned about security now (thanks to some ex-CIA guy), iSCSI have a huge security advantage over file transfering protocols. You can use encrypted file system and storage server would not know anything about its content. Simple example: You have your virtual server in one of a public cloud, like Amazon EC2 or Azure with any server OS. You're attaching iSCSI drive, which is storing on that server, to your client PC (let's say Windows 7/8) and encrypting the whole drive with BitLocker. After encryption is complete, remote side will receive and send ONLY encrypted disk data. All encryption is processed on your side.

More than that - unlocking key/password will never be transferred to server. iSCSI protocol just don't need it. There is no direct way to read your unencrypted data in your virtual server and even with help of underlying virtualizing software/hardware which have full control of your VM.

Small disadvantage that I see here is that you have to upload whole encrypted volume on initial encryption. Depends on size of your drive and transfer price with your cloud provider it can cost you some money Windows 8 and higher can encrypt on-the-fly

2
  • 2
    iSCSI over the Internet? The performance of that must be terrible. Feb 15, 2014 at 22:43
  • Uhm... That's one of purposes of existence of iSCSI you know. But overall perfomance depends on connection speed of server and client of course. And more important is amount of data you're working with. But it definitely faster than any other protocol between same client and server Feb 15, 2014 at 22:54
0

With the help of FTP, SMB, NFS multiple clients can access the same area, while with iSCSI typically only one system has access, unless you are using a clustered filesystem.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .