By
Sayali Koranne
7/10/2014 1
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
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
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
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
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
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
How it works:
 At Initiator:
7/10/2014 8
Cont…
 At Target:
7/10/2014 9
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
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
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
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
Cont…
Unique String
iqn.1987-05.com.cisco.1234abcdef987601267da232.betty
iqn.2001-04.com.acme.storage.tape.sys1.xyz
Type Date
Organization
Naming Authority
Subgroup Naming Authority or
String Defined by Organization Naming Authorityiqn
eui
Date = yyyy-mm When
Domain Acquired
Reversed Domain Name
Type EUI-64 Identifier (ASCII Encoded Hexadecimal)
eui.02004567a425678d
Type
7/10/2014 14
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
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
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
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
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
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
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
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
References:
 http://www.webopedia.com/TERM/I/iSCSI.html
 http://iscsi.starwindsoftware.com/why-iscsi
 http://searchstorage.techtarget.com/definition/iSCSI
 http://en.wikipedia.org/wiki/ISCSI
 http://www.open-iscsi.org/docs/README
 White Paper :
 iSCSI Protocol Concepts and Implementation
 iSCSI technical white paper by Nishan systems.
7/10/2014 23
Thank You!!!
7/10/2014 24
Any Queries???
7/10/2014 25

iSCSI (Internet Small Computer System Interface)

  • 1.
  • 2.
    Agenda  SCSI  Introductionto 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 :  Familyof 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 Commandexecution results in : • Data Phase • Status Phase  SCSI driver – build SCSI CDB from request issued by application  CDB format: 7/10/2014 7
  • 8.
    How it works: At Initiator: 7/10/2014 8
  • 9.
  • 10.
    Architecture: SCSI Block Commands SCSIStream 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:  Basedon 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 andtarget 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
  • 14.
    Cont… Unique String iqn.1987-05.com.cisco.1234abcdef987601267da232.betty iqn.2001-04.com.acme.storage.tape.sys1.xyz Type Date Organization NamingAuthority Subgroup Naming Authority or String Defined by Organization Naming Authorityiqn eui Date = yyyy-mm When Domain Acquired Reversed Domain Name Type EUI-64 Identifier (ASCII Encoded Hexadecimal) eui.02004567a425678d Type 7/10/2014 14
  • 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 managementutility (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:  Functionsas 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:  iSCSIDiscovery 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 hasto 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 toTarget:  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 isa 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
  • 23.
    References:  http://www.webopedia.com/TERM/I/iSCSI.html  http://iscsi.starwindsoftware.com/why-iscsi http://searchstorage.techtarget.com/definition/iSCSI  http://en.wikipedia.org/wiki/ISCSI  http://www.open-iscsi.org/docs/README  White Paper :  iSCSI Protocol Concepts and Implementation  iSCSI technical white paper by Nishan systems. 7/10/2014 23
  • 24.
  • 25.