2. Agenda
SCSI
Introduction to iSCSI
Basics of iSCSI
How it Works
Architecture
iSCSI Protocol
Open-iSCSI : iscsid and iscsiadm utility
iSCSI Initiator
Steps for Discovery and Connect to iSCSI Target
Conclusion
7/10/2014 2
3. SCSI :
Family of Interfaces for requesting services from I/O
devices
Logical unit- Individual I/O devices
Uses Logical Addressing of data blocks
Two Types :
Parallel SCSI
Serial SCSI
7/10/2014 3
4. Introduction to iSCSI :
IP based standard for linking data storage devices over a
network
Supports Gigabit Ethernet Interface
Enables location independent data storage and retrieval
Uses existing building blocks (SCSI, TCP)
Point to point direct connections
Transfer SCSI packets
7/10/2014 4
5. Basics of iSCSI:
Two types of Devices:
• iSCSI Initiator
• iSCSI Target
iSCSI Initiator:
• Request Commands to execute
• Also called as Client
• Starts the Communication
7/10/2014 5
6. Cont…
iSCSI Target:
Responds to the request
Also Called as Server
It is device that carry out commands
Endpoint within target executes command called
as Logical Unit.
CDB (Command Descriptor Block)
Task – command or linked set of command
7/10/2014 6
7. Cont…
SCSI Command execution results in :
• Data Phase
• Status Phase
SCSI driver – build SCSI CDB from request issued by
application
CDB format:
7/10/2014 7
10. Architecture:
SCSI Block Commands
SCSI Stream
Commands
Parallel
SCSI Transport
SCSI Applications (File Systems, Databases)
Parallel SCSI
Interfaces
Fibre Channel Ethernet, PPP, HDLC…
Other SCSI Commands
IP
TCP
SCSI Commands, Data, and Status
FCP
SCSI over FC
iSCSI
SCSI over TCP/IP
Physical layer
SCSI
Transport
layer
SCSI Generic
layer
SCSI Device
layer
7/10/2014 10
11. iSCSI Protocol:
Based on SCSI
Enables block storage application over TCP/IP networks
It is bi-directional
Monitors and validates I/O operation
IP Packet
IP TCP iSCSI SCSI Data
7/10/2014 11
12. iSCSI address & naming
conventions
iSCSI implements a client-server model
Network Entity
(ISCSI client)
ISCSI node
(Initiator)
Network portal
IP address
TCP Port #
Network Entity
(ISCSI server)
ISCSI node
(Target)
Network Portal
IP Address
TCP Port #
ISCSI node
(Target)
Network Portal
IP Address
TCP Port #
IP network
7/10/2014 12
13. Cont…
Initiator and target require iSCSI names
Name is location independent
iSCSI node name = SCSI device name
Up to 255-byte displayable/human readable string
(UTF-8 encoding)
Two iSCSI name types:
iqn—iSCSI qualified name
eui—Extended Unique Identifier (IEEE EUI-64—
also used for FC WWNs)
7/10/2014 13
15. Open-iSCSI: iscsid & iscsiadm utility
Open-iSCSI is:
High-performance
Transport independent
Multi-platform implementation
It is partitioned into:
Kernel space
User Space
Kernel part implements iSCSI data path ie. iSCSI read & iSCSI
write.
User space contains entire control plane.
7/10/2014 15
16. Cont…
Open-iSCSI daemon (iscsid):
It exist in user space.
Implements control path of iSCSI protocol.
Daemon could be configured to automatically restart
discovery at startup.
To auto restart recovery make changes into iscsid.conf file.
In iscsid –
Uncomment node.startup=automatic
Comment out node.startup=manual
7/10/2014 16
17. Cont…
Open-iSCSI management utility (iscsiadm):
Is a command line tool
Usage of iscsiadm:
iscsiadm [OPTION]
-m, --mode <op>
Example:
-m discoverydb --type=[type] --interface=[iface...] --
portal=[ip:port]
7/10/2014 17
18. iSCSI Initiator:
Functions as iSCSI Client
Two types of Initiator:
Software Initiator
Uses code to implement iSCSI.
Hardware Initiator
Uses dedicated hardware in combination with software to
implement iSCSI.
7/10/2014 18
19. iSCSI Discovery:
iSCSI Discovery is performed in different ways:
Internet Storage Name Service (iSNS) - Potential targets are
discovered by interacting with one or more iSNS servers.
SendTargets – Potential targets are discovered by using a
discovery-address.
SLP - Discover targets via Service Location protocol (RFC
4018)
Static – Static target address is specified.
7/10/2014 19
20. Cont…
iscsid has to be running.
Command:
# Iscsiadm -m discovery -t sendtargets -p <portalip>
Example:
iscsiadm -m discoverydb -t st -p somehost --discover
iscsiadm -m discovery -t st -p 192.168.1.1:3260
--discover
7/10/2014 20
21. Cont…
Connecting to Target:
Login to Available target:
# iscsiadm -m node -L all
Login to Specific target:
# iscsiadm -m node --targetname=<targetname> --login
7/10/2014 21
22. Conclusion:
• iSCSI is a low cost, low maintenance alternative to Fibre
Channel.
• iSCSI networks can use existing copper infrastructures.
• Unlike Fibre Channel, iSCSI networks can span the
Internet.
• iSCSSI works over a long distance.
• It reduces total cost storage.
7/10/2014 22