Options

Host Bus Adapter HBA clarity?

Robbo777Robbo777 Member Posts: 331 ■■■□□□□□□□
I was wondering after some reading on the 2 different pieces of hardware, what is the difference between HBA and just a normal network interface card that carries iSCSI messages across a network?
They seem to connect to the server and the server connects to a switch which connects to a storage array, the connectors look different also. Are they fiber channel connectors that connect to certain ports on a switch that has a FC connector in it?
I'm a bit confused and would love someone to clear this up, thanks.

Comments

  • Options
    EMcCalebEMcCaleb Member Posts: 63 ■■■□□□□□□□
    You are on the right track. The HBA requires FC switch ports. So you wont use a classic ethernet switch but a fiber channel switch. There are some manufacters that make "universial ports" that can be either FC or Ethernet.
  • Options
    IristheangelIristheangel Mod Posts: 4,133 Mod
    HBAs tend to be FC native. FC is a completely different protocol than Ethernet. It's made to be lossless - Because if you drop traffic with your storage traffic, you're pretty much hosed and potentially corrupting your storage. Ethernet is a "lossy" protocol - so you can have drops and other issues.

    iSCSI and FCoE pretty much try to ride on top of ethernet with some enhancements to make ethernet not "lossy" but these are enhancements in reality and you have to make sure your switches support it. FCoE pretty much requires enhancements like priority flow control and DCB. Check this out: https://en.wikipedia.org/wiki/Data_center_bridging

    iSCSI is pretty useful if you have storage that supports it but I wouldn't recommend trying to create iSCSI gateways to speak to your FC fabric. Joelsfood can attest to my PTSD in regards to having to learn and configure that mess... Plus there tends to be a performance hit. FCoE is pretty nifty - If you have a storage array that supports it natively, awesome! If you want to save some money on ToR FC switches in a big DC, you can have the storage traffic ride over ethernet and then it can easily connect to the storage fabric without the huge performance hits.

    Both are great at what they do - it really just depends on your network and what kind of storage you're using. If you have iSCSI storage, you by no means need to change over to FCoE. If you have nothing but FC traffic or a mix and your storage array supports FCoE and iSCSI, it might be worth looking into. It all depends on what works for you.
    BS, MS, and CCIE #50931
    Blog: www.network-node.com
  • Options
    OctalDumpOctalDump Member Posts: 1,722
    The key for me to understanding all this, is to understand that storage is highly layered and abstracted. The OSI model can help.

    Fibre Channel is its own spec, defining layers 1-7. It isn't just ethernet, TCP/IP using fibre cabling. I'm not sure you're making this mistake, but I see it often enough that I think it's worth repeating.

    SCSI is several specifications that define hardware and protocols. The SCSI command set is very popular way for communicating with storage and is in fact used by SAS, FC, iSCSI and others.

    iSCSI is these SCSI commands encapsulated within TCP packets (segments) for transport across TCP/IP networks.

    An HBA - host bus adaptor - is typically a card in your computer that allows you to attach to storage. The storage can be in a Storage Area Network, Directly Attached Storage, or even Network Attached Storage. In recent years the most popular HBAs are Fibre Channel and SAS.

    The hard delimitation between NAS and SAN is usually that SAN presents storage to the host as a block device and NAS presents the storage as a network file system (SMB/CIFS, NFS, AFP etc). There's plusses and minuses to each.

    So NAS is usually just running over an existing TCP/IP network with storage traffic mixed in with other traffic, although perhaps on a different VLAN. This means that iSCSI is logically SAN at the application layers, but can look more like NAS at the transport and lower layers. It might use the regular NIC in your computer.

    Where it can get a bit greyer is that iSCSI can use special "NICs" that offload some of the processing overhead from the CPU onto processing on the NIC, this ranges all the way to what is an iSCSI HBA: the card does all the processing and presents 'storage' to the computer, looking like a storage adaptor card. These adaptors tend to look like "chunky" NICs and generally have ethernet connectors: RJ45s, SPF/SPF+, or fibre. So, this could be what you mean by iSCSI HBA.

    Regular old Fibre Channel, as mentioned, is its own thing and defines cabling (copper and fibre), HBAs, switches and hubs, and protocols to control and transport traffic. This would normally sit alongside an existing ethernet TCP/IP network. Having the storage completely separate means that the system can be completely tuned for storage and managed separately. But it also means it is expensive and has duplication of cabling, switches etc.

    The other area which makes things confusing is 10GBe converged networks and FCoE. FCoE is Fibre Channel over Ethernet. This isn't iSCSI, since FCoE runs directly on top of Ethernet and not in TCP. Essentially FCoE takes over at layer 3. Cards that connect to your computer to offer both regular networking and FCoE are called Converged Network Adaptors (CNA). 10GBe has been designed for this kind of usage.

    Since FCoE runs on Ethernet, it is still a switched topology. This means that you can't route FCoE traffic with your regular routers. This feature is actually deep in the Fibre Channel protocol which sets up dedicated circuits between the host and storage to replicate the physical bus topology of SCSI. iSCSI, on the other hand, can be routed.

    To confuse things again, most iSCSI HBAs these days are 10GBe cards, so physically look like CNAs.

    So, iSCSI and Fibre Channel are similar in some respects and very different in others. There's lots of overlap, but they can do things differently at nearly any layer of the stack. Just think iSCSI runs on regular TCP/IP, Fibre Channel runs on its own special stuff.
    2017 Goals - Something Cisco, Something Linux, Agile PM
  • Options
    IristheangelIristheangel Mod Posts: 4,133 Mod
    *slowclap* You're completely right, Octaldump and much more detailed than I was in my post :)
    BS, MS, and CCIE #50931
    Blog: www.network-node.com
  • Options
    Robbo777Robbo777 Member Posts: 331 ■■■□□□□□□□
    Thanks for the help, great info!
Sign In or Register to comment.