Wednesday 25 July 2012

100 SAN interview questions


[ Hard Disk ]

1. Explain the inner structure or layout of a Hard disk ?
2. Explain what is meant by CHS ?
3. What is Cylinder,Head,Sector,Track,clusters ?
4. What is LBA ?
5. Name some of the hard disk vendors ? What are the specifications of a hard disk you consider when you are working as storage admin or storage tester ?
6. Explain CPACS( Capacity,Performance,Availability,Cost,Scalability) importance in Storage ?
7. Name some of the Storage components ?
8. Explain each of below Storage components
            Hosts [ Servers ]
            Internetworking Components
            Network Devices [ Switches , Hubs ]
            Cable Connectivity
            Storage Subsystems
            Hard drives
            Tape drives
            JBOD [ Just a Bunch Of Disks ]
            Enclosures
            Arrays
            NAS [ Network attached Storage ]
            SAN [ Storage Area Network ]
9. Explain the difference between DAS-NAS-SAN ?
10.Explain below standards or Protocol interfaces ?
            IDE   : Integrated Device Electronics
            ATA   : Advanced Technology Attachment
            SATA : Serial ATA
            SCSI  : Small Computer System Interface
            SAS   : Serial attached SCSI
            FC     : Fibre Channel
            ISCSI : SCSI over IP
11. Sort above mentioned protocols interms of Performance  and Cost ?

[ MAGNETIC TAPE ]

12. What is a magnetic tape ?
13. Mention different types of magnetic tapes ?

[ STORAGE OPERATING SYSTEMS ]

14. Mention some of the major operating systems which you have worked on with respect to Storage experience ?
15. Mention different processor types & latest processors what you have used in your work ?
16. Why we need to be aware of processor & OS combinations ?
17. What difference a 64 bit Windows 2003 Server from normal 32 bit ? Which processors are 32 bit & 64 bit from Intel ?

[  SCSI  ]

18. What was the name for SCSI before it was standardised by ANSI ?
19. Why SCSI had very good market share compared to ATA/IDE/PATA ?
20. Whats Ultra1,Ultra2,Ultra3 in SCSI ?
21. Mention the difference between Narrow & Wide SCSI ?
22. What is the maximum no. of devices supported in narrow,wide SCSI?
23.I have a SCSI peripheral but I do not know if it has the single-ended, HVD or LVD interface. Is there an easy way to tell?
24. Explain SE ?
25. What is LVD & HVD ?
26. Differentiate between SE, LVD, HVD ?
27. Mention the advantages of SCSI ?
28. WHat is meant by Hot plug or Hot swap ?
29. Among IDE/ATA, SCSI, SAS, SATA , FC which ones support Hot plug/Hot swap ?
30. What is NCQ ?
31. What is TCQ ?
32. What is SCSI ID & why is it important ?
33. HOw SCSI id is configured for a SCSI hard disk drive (HDD) ?
34. Mention device types supported in SCSI 3 ?
35. Mention device types supported in SCSI 2 ?
36. Mention device types supported in SCSI 1 ?
37. Give examples for each of the below :
            Block devices (SBC)
            Stream devices (SSC)
            Graphic devices (SGC)
            Medium changer devices (SMC)
            RAID Controllers (SCC)
            CD-ROMS (MMC)
38. Explain connector types & their no. of pins in SCSI ?
39. What is the maximum length of cable permitted in SCSI ?
40. What is daisy chaining ?
41. What are the different types of SCSI cards ?
42. Mention different SCSI phases ?
43. Explain what happens in each of the below phases :
            arbitration
            selection
            message out
            message in
            command data out
            data in           
            status
            bus free
44. What is a terminator & why is it needed in SCSI ?
45. Mention some SCSI commands ?
46. Explain each of below
            -Test unit ready:
            -Inquiry:
            -Request sense:
            -Start/Stop unit:
            -Read capacity:
            -Format unit
            -Read (four variants)
            -Write (four variants)
            -Log sense:
            -Mode sense:
            -Mode select:
47. What is SCSI arbitration and selection ? How is this resolved ?
48. Name some of the vendors of SCSI HBA,SCSI hard drives ?
49. Does SCSI work in both directions (is it a bidirectional bus ) ?
50. What is "multimode LVD" or LVD/MSE SCSI?
51. What are the benefits of LVD SCSI?
52. Is LVD SCSI backward compatible?
53. What is Ultra160 or U160 SCSI?
54. I have heard of U160/m SCSI. What is it?
55. Is Ultra160 SCSI backward compatible?
56. Is Ultra 160 SCSI better than fibre channel?
57. Is Ultra 160 SCSI better than EIDE?
58. What is Fast-20 [or Fast-40 or Fast-80] SCSI?
59. Can I connect an Ultra 2 Wide (LVD) disk to an Ultra Wide adapter?
60. What is Double Transition clocking?
61. What is "Domain Validation"?
62. What is CRC?
63. I recently purchased a new SCSI drive with an SCA (or SCA-2) connector. How do I connect this to my cabled SCSI system?
64. What is QAS?
65. What is SCSI "packetization" (also called information units)?
66. What are the five optional features of Ultra 160 (Ultra 3) SCSI?
67. All the new hard disk drives have the LVD/MSE interface. Can I use them on a Narrow single-ended SCSI bus?
68. I know I can place a LVD/MSE peripheral on a single-ended bus, but the LVD interface is Wide (34 pair cables) and the single-ended bus is Narrow (25 pair cables). Any problems here?
69. Can I attach Narrow devices to a Wide SCSI bus?
70. I have heard the term "idc" applied to internal SCSI ribbon cables. What does it mean?
71. Can I attach Wide peripherals to a Narrow SCSI bus?
72. I note that in several of your FAQs you recommend the use of 68-pin to 50-pin adapters. Aren't they "impedance lumps" in the SCSI transmission line that can cause reflections and associated problems?
73. I had a problem with my SCSI bus. It was much slower than I thought it should be. When I used a new SCSI cable that was six feet longer than the one it replaced, the system performance returned to what I think it should be. Why?
74. How can I connect a HVD device to my single-ended bus? [or vice versa]
75. How can I connect a HVD device to my LVD bus?
76. I have a LVD/MSE bus with several multimode peripherals, and I want to add a single-ended peripheral to it. I know that LVD/MSE is backward compatible through the single-ended interface, but when I add the single-ended peripheral, the LVD peripherals really slow down. Can something be done to resolve this.
77. How can I connect a LVD peripheral to my single-ended SCSI bus?
78. Why does my LVD/MSE bus slow down when I connect even one single-ended peripheral?
79. I connected what I believed to be a single-ended peripheral to my multimode (LVD/MSE) bus, thinking the bus would switch to the single-ended mode and operate, although at a slower speed. The bus simply shut down. What happened?
80. How can I connect a LVD peripheral to an HVD SCSI bus?
81. What are LUNs? why are they important ?
82. Can I have more than one computer on my SCSI bus?
83. What is the difference between SCSI and IDE (or EIDE or ATAPI)?
84. Among SCSI or IDE which is better for enterprise storage  and for desktop ?
85. Will my single-ended to differential converter also do differential to single-ended conversion?
86. terminators. Where should they be placed?
87. What is the difference between passive and active terminators?
88. Should I use passive or active terminators?
89. I need a terminator for my SCSI bus consisting of a number of HVD disk drives. I do not need a pass-through HVD terminator, but that is all I can find. Can I use it for the terminator at the end of this HVD bus?
90. How can I tell if an unmarked terminator is SE or differential?

[ SAN Related Interview Questions ]

91. What is LUN masking?
92. What is SAN zoning?
93. What are different types of zoning & how do they differ ?
94. What are hard and soft zoning? What is port zoning ? What is WWN zoning ?
95. What is a World Wide Name (WWN) & why is it important ?
96. In a FC HBA how can i find WWN ?
97. How are iSCSI, iFCP and FCIP secured over IP networks?
98. What are the differences between FC & iSCSI ?
99. Mention some of the issues you faced while working on SAN & how did you resolve them ?
100.What was the most challenging troubleshooting you did while working on SAN. Please give the steps & commands used ?


FC SAN Interview Questions


1. What is FC ?
2. What are the advantages of FC ?
3. Mention the differences between FC & SCSI ?
4. Explain the layers in FC Protocol ?
5. What are the functions of layer2 and layer3 in FC ?
6. What are different FC topologies ?
7. What is the difference between point to point  & Switched in FC ?
8. Explain FC-AL ?
9. Explain the process of initialization in FC ?
10.Explain these terms : LIFA,LIPA,LIHA,LISA
11.What is a Fabric and what are its components ?
12.What are the different FC ports ?
13.Explain different types of flow controls ?
14.What is the difference between buffer to buffer   and End to End flow control ?
15.What are the different classes of Services and explain them ?
16.Explain addressing in FC ?
17.Explain FC login process ?
18.What is transmission character and transmission word ?
19.What is a frame, sequence and exchange ?
20.Explain FC frame composition ?
21.Why do we need login in FC ?
22.How many connections  are possible in FC ?
23.What are the maximum devices supported in each topologies of FC ?
24.What is the difference between FC & iSCSI ?

RAID interview Q&A


1. What is RAID?
Redundant Array of Independent Drives (or Disks), also known as Redundant Array of Inexpensive Drives (or Disks) (RAID) is an important term for data storage schemes that divide and/or replicate data among multiple hard drives. They offer, depending on the scheme, increased data reliability and/or throughput.

RAID is a way of storing the same data in different drives(thus, redundantly) on multiple hard disks.

2. What are the advantages of RAID?
Increased redundancy
Increased data availability
Higher READ/Write performance in some RAID levels
Higher Data throughput
better reliability

    *  Higher Data Security: Through the use of redundancy, most RAID levels provide protection for the data stored on the array. This means that the data on the array can withstand even the complete failure of one hard disk (or sometimes more) without any data loss, and without requiring any data to be restored from backup. This security    feature is a key benefit of RAID and probably the aspect that drives the creation of more RAID arrays than any other. All RAID levels provide some degree of data protection, depending on the exact implementation, except RAID level 0.
    * Fault Tolerance: RAID implementations that include redundancy provide a much more reliable overall storage subsystem than can be achieved by a single disk. This means there is a lower chance of the storage subsystem as a whole failing due to hardware failures. (At the same time though, the added hardware used in RAID means the chances of having a hardware problem of some sort with an individual component, even if it doesn't take down the storage subsystem, is increased; see this full discussion of RAID reliability for more.)
    * Improved Availability: Availability refers to access to data. Good RAID systems improve availability both by providing fault tolerance and by providing special features that allow for recovery from hardware faults without disruption. See the discussion of RAID reliability and also this discussion of advanced RAID features.
    * Increased, Integrated Capacity: By turning a number of smaller drives into a larger array, you add their capacity together (though a percentage of total capacity is lost to overhead or redundancy in most implementations). This facilitates applications that require large amounts of contiguous disk space, and also makes disk space management simpler. Let's suppose you need 300 GB of space for a large database. Unfortunately, no hard disk manufacturer makes a drive nearly that large. You could put five 72 GB drives into the system, but then you'd have to find some way to split the database into five pieces, and you'd be stuck with trying to remember what was were. Instead, you could set up a RAID 0 array containing those five 72 GB hard disks; this will appear to the operating system as a single, 360 GB hard disk! All RAID implementations provide this "combining" benefit, though the ones that include redundancy of course "waste" some of the space on that redundant information.
    * Improved Performance: Last, but certainly not least, RAID systems improve performance by allowing the controller to exploit the capabilities of multiple hard disks to get around performance-limiting mechanical issues that plague individual hard disks. Different RAID implementations improve performance in different ways and to different degrees, but all improve it in some way. See this full discussion of RAID performance issues for more.



3. What are different levels of RAID?
There are many levels like
RAID 0,RAID 1,RAID 2,RAID 3,RAID 4,RAID 5,RAID 10,RAID 01,RAID 50,RAID 6
But popular are RAID 0,RAID 1,RAID 5,RAID 10,RAID 01,RAID 50,RAID 6
generally used are R0,R1,R5

4. Explain RAID0, RAID1, RAID5 ?
RAID 0:
The lowest designated level of RAID, level 0, is actually not a valid type of RAID. It was given the designation of level 0 because it fails to provide any level of redundancy for the data stored in the array. Thus, if one of the drives fails, all the data is damaged.

RAID 0 uses a method called striping. Striping takes a single chunk of data like a graphic image, and spreads that data across multiple drives. The advantage that striping has is in improved performance. Twice the amount of data can be written in a given time frame to the two drives compared to that same data being written to a single drive.

RAID 1

RAID version 1 was the first real implementation of RAID. It provides a simple form of redundancy for data through a process called mirroring. This form typically requires two individual drives of similar capacity. One drive is the active drive and the secondary drive is the mirror. When data is written to the active drive, the same data is written to the mirror drive.

RAID 5

This is the most powerful form of RAID that can be found in a desktop computer system. Typically it requires the form of a hardware controller card to manage the array, but some desktop operating systems can create these via software. This method uses a form of striping with parity to maintain data redundancy. A minimum of three drives is required to build a RAID 5 array and they should be identical drives for the best performance.


5. Whats the difference between RAID0 & RAID1 ?

RAID 0+1

This is a hybrid form of RAID that some manufacturers have implemented to try and give the advantages of each of the two versions combined. Typically this can only be done on a system with a minimum of 4 hard drives. It then combines the methods of mirroring and striping to provide the performance and redundancy. The first set of drives will be active and have the data striped across them while the second set of drives will be a mirror of the data on the first two.

RAID 10 or 1+0

RAID 10 is effectively a similar version to RAID 0+1. Rather than striping data between the disk sets and then mirroring them, the first two drives in the set are a mirrored together. The second two drives form another set of disks that is are mirror of one another but store striped data with the first pair. This is a form of nested RAID setup. Drives 1 and 2 are a RAID 1 mirror and drives 3 and 4 are also a mirror. These two sets are then setup as stripped array.


6. Whats the difference between RAID1 & RAID5 ?
RAID1 : Minimum 2 drives are required . Gives only 50% disk space.

RAID5 : Minimum 3 drives are required . Gives only (n-1)X Capacity where n is the no. of disks, disk space.


7. Whats the difference between RAID3 & RAID5 ?
RAID 3 and RAID 4: Striped Set (3 disk minimum) with Dedicated Parity, the parity bits represent a memory location each, they have a value of 0 or 1, whether the given memory location is empty or full, thus enhancing the speed of read and write. : Provides improved performance and fault tolerance similar to RAID 5, but with a dedicated parity disk rather than rotated parity stripes. The single disk is a bottle-neck for writing since every write requires updating the parity data. One minor benefit is the dedicated parity disk allows the parity drive to fail and operation will continue without parity or performance penalty.

RAID 5 does not have a dedicated parity drive but the parity is rotated across all the drives hence the parity is distributed.
RAID 5: Striped Set (3 disk minimum) with Distributed Parity: Distributed parity requires all but one drive to be present to operate; drive failure requires replacement, but the array is not destroyed by a single drive failure. Upon drive failure, any subsequent reads can be calculated from the distributed parity such that the drive failure is masked from the end user. The array will have data loss in the event of a second drive failure and is vulnerable until the data that was on the failed drive is rebuilt onto a replacement drive.

8. Whats the difference between RAID01 & RAID10 ?
RAID 0+1: Striped Set + Mirrored Set (4 disk minimum; Even number of disks) provides fault tolerance and improved performance but increases complexity. Array continues to operate with one failed drive. The key difference from RAID 1+0 is that RAID 0+1 creates a second striped set to mirror a primary striped set, and as a result can only sustain a maximum of a single disk loss, whereas 1+0 can sustain multiple drive losses as long as no two drive loss comprise a single pair.

RAID 1+0: Mirrored Set + Striped Set (4 disk minimum; Even number of disks) provides fault tolerance and improved performance but increases complexity. Array continues to operate with one or more failed drives. The key difference from RAID 0+1 is that RAID 1+0 creates a striped set from a series of mirrored drives.


9. How many minimum disk drives are needed for R0,R1,R5,R10,R01 ?
R0: Minimum 1
R1: Minimum 2
R5: Minimum 3
R10: Minimum 4
R01: Minimum 4

10.How RAID 5 works and how parity is calculated ?
The parity calculation is typically performed using a logical operation called "exclusive OR" or "XOR". As you may know, the "OR" logical operator is "true" (1) if either of its operands is true, and false (0) if neither is true. The exclusive OR operator is "true" if and only if one of its operands is true; it differs from "OR" in that if both operands are true, "XOR" is false.


11.Other than RAID feature what are the other features in Software Management Functionalities?
Hotspare
Raid level migration (RLM)
SNMP interaction/management

12.What is initialization ?
Intialization is the process of preparing a drive for storage use. It erases all data on the drive & makes way for new file system creation.

13.What is Check consistency ?
Consistency check or CC verifies correctness of data in logical drives. This is a feature of some of the RAID hardware controller cards.

14.What is background initialization?
This is a Consistency check process forced when a new logical drive is created. This is an automatic operation that starts 5 minutes after the new logical drive is created.

15.What is a RAID array ?
RAID array is a group of disks which are configured with RAID. That means they are in a redundant setup to tolerate any disk failures.

16.Whats the difference between a JBOD & a RAID array ?
Just A Bunch Of Disks (JBOD) - hard disks that aren't configured in a RAID configuration. They are just disks piled or connected in one single enclosure.

RAID is having the advantage of bearing a disk failure & still give data availability.

17.When JBOD is preferred over RAID array ?
When there is no need for redundancy & when it is ok if there is some hard disk failure or data unavilability in such scenarios JBOD is prefered over RAID because JBOD is inexpensive storage solution. It is also easy to setup & start using compared to RAID.

18.What is a hot spare ?
Hot spare is an extra,unused disk drive that is part of the disk subsystem. It is usually in standby mode ready for service if a drive fails. Whenever there is a drive failure this hotspare kicksin & takes over that failed drive's role.

19.What is a Logical drive or Virtual drive ?
The partitioning or division of a large hard drive into smaller units. A single, large Physical Drive can be partitioned into two or more smaller Logical Drives.

20.What is rebuilding of array ?
Whenever there is a disk failure in the RAID array the array goes to DOWNGRADED STATE. SO when we plug out the failed drive & insert a new functioning drive the RAID configured array starts regenerating the data to the newer drive. This process is called rebuilding.

21.What you do when a drive in an array fails, how you bring it back to optimal online mode ?
We swap out failed drive & plugin new functioning drive & wait for the rebuilding process to complete. We make sure rebuild process happens without any error. Once that completes array is back to optimal online state.

22.What are the different states an array can be in and explain each state?
Online
Downgraded
Offline
Rebuilding

23.Explain Online,Offline,Degraded states of an array ?
Online - when all drives are working fine
Downgraded - Whenever there is a drive failure but still the array is functioning fine
Offline - Array or whole data storage is down
Rebuilding - Storage access is there but since a new drive has been inserted in place of a failed drive data is being written to new drive which might slow down the performance of the whole RAID array.

24.What is the difference between a global hotspare & a dedicated hotspare ?
Global hotpsare is available for the any  array in the whole enclosure or Storage subsystem.

If there is an enclosure having 10 drives & we have 3 drives in RAID5(1st array) , 3 more drives in second RAID5(2nd array) & 2 more drives in RAID 1 config.We can specify in RAID config utility whether a Dedicated hotspare is assigned for 1st RAID5 array. If there is a drive failure in 2nd or 3rd array this dedicated hotspare will not be involved there. But if the array for which this is dedicated has any drive failure this dedicated hotspare takes over .

25.How RAID is configured through BIOS ?
If we have a Hardware RAID controller card it gives an option while machine booting to enter into RAID BIOS utility. Here we have options which give us options to create RAID using a semi-GUI(DOS based GUI) interface.

26.HoW RAID is configured in OS level?
Once we install device drivers & also RAID config or management utility using that we can configure RAID in OS level.

27.What is the difference between a software RAID & hardware RAID ?
In order for RAID to function, there needs to be software either through the operating system or via dedicated hardware to properly handle the flow of data from the computer system to the drive array. This is particularly important when it comes to RAID 5 due to the large amount of computing required to generate the parity calculations.

In the case of software implementations, CPU cycles are taken away from the general computing environment to perform the necessary tasks for the RAID interface. Software implementations are very low cost monetarily because all that is necessary to implement one is the hard drives. The problem with software RAID implementations is the performance drop of the system. In general, this performance hit can be anywhere from 5% or even greater depending upon the processor, memory, drives used and the level of RAID implemented. Most people do not use software RAID anymore due to the decreasing costs of hardware RAID controllers over the years.

Hardware RAID has the advantage of dedicated circuitry to handle all the RAID drive array calculations outside of the processor. This provides excellent performance for the storage array. The drawbacks to hardware RAID have been the costs. In the case of RAID 0/1 controllers, those costs have become so low that many chipset and motherboard manufacturers are including these capabilities on the motherboards. The real costs rest with RAID 5 hardware that require more circuitry for added computing ability.

28.Which is best RAID level for performance and which is best for redundancy?
RAID 0 for performance
RAID 5 or RAID 6 better for redundancy(availibility)

Tuesday 8 May 2012

DIFFRENCE: NPV & NPIV


NPV and NPIV

Thanks to datacenteroverlords.
The CCIE Data Center blueprint makes mention of NPV and NPIV, and Cisco UCS also makes heavy use of both topics, topics that many may be unfamiliar with most. This post (part of my CCIE Data Center prep series) will explain what they do, and how they’re different.
(Another great post on NPV/NPIV is from Scott Lowe, and can be found here. This is a slightly different approach to the same information.)
NPIV and NPV are among the two most ill-named of acronyms I’ve come across in IT, especially since they sound very similar, yet do two fairly different things. NPIV is short for N_Port ID Virtualization, and NPV is short for N_Port Virtualization. Huh? Yeah, not only do they sound similar, but the names give very little indication as to what they do.

NPIV

First, let’s talk about NPIV. To understand NPIV, we need to look at what happens in a traditional Fibre Channel environment.
When a host plugs into a Fibre Channel switch, the host end is called an N_Port (Node Port), and the FC switch’s interface is called an F_Port (Fabric Port). The host has what’s known as a WWPN (World Wide Port Name, or pWWN), which is a 64-bit globally unique label very similar to a MAC address.
However, when a Fibre Channel host sends a Fibre Channel frame, that WWPN is no where in the header. Instead, the host does a Fabric Login, and obtains an FCID (somewhat analagous to an IP addres). The FCID is a 24-bit number, and when FC frames are sent in Fibre Channel, the FCID is what goes into the source and destination fields of the header.
Note that the first byte (08) of the FCID is the same domain ID as the FC switch that serviced the host’s FLOGI.
In regular Fibre Channel operations, only one FCID is given per physical port. That’s it. It’s a 1 to 1 relationship.
But what if you have an ESXi host, for example, with virtual fibre channel interfaces. For those virtual fibre channel interfaces to complete a fabric login (FLOGI), they’ll need their own FCIDs. Or, what if you don’t want to have a Fibre Channel switch (such as an edge or blade FC switch) go full Fibre Channel switch?
NPIV lets a FC switch give out multiple FCIDs on a single port. Simple as that.

The magic of NPIV: One F_Port gives out multiple FCIDs on (0×070100 to the ESXi host and 0×070200 and 0×070300 to the virtual machines)

NPV: Engage Cloak!

NPV is typically used on edge devices, such as a ToR Fibre Channel switch or a FC switch installed in a blade chassis/infrastruture. What does it do? I’m gonna lay some Star Trek on you.
NPV is a clocking device for a Fibre Chanel switch.
Wait, did you just compare Fibre Channel to a Sci-Fi technology? 
How is NPV like a cloaking device? Essentially, an NPV enabled FC switch is hidden from the Fibre Channel fabric.
When a Fibre Channel switch joins a fabric, it’s assigned a Domain_ID, and participates in a number of fabric services. With this comes a bit of baggage, however. See, Fibre Channel isn’t just like Ethernet. A more accurate analogue to Fibre Channel would be Ethernet plus TCP/IP, plus DHCP, distributed 802.1X, etc. Lots of stuff is going on.
And partly because of that, switches from various vendors tend not to get a long, at least without enabling some sort of Interopability Mode. Without interopability mode, you can’t plug a Cisco MDS FC switch into say, a Brocade FC switch. And if you do use interopability mode and two different vendors in the same fabric, there are usually limitations imposed on both switches. Because of that, not many people build multi-vendor fabrics.
Easy enough. But what if you have a Cisco UCS deployment, or some other blade system, and your Fibre Channel switches from Brocade? As much as your Cisco rep would love to sell you a brand new MDS-based fabric, there’s a much easier way.
Engage the cloaking device.
A switch in NPV mode is invisible to the Fibre Channel fabric. It doesn’t participate in fabric services, doesn’t get a domain ID, doesn’t do fabric logins or assign FCIDs. For all intents and purposes, it’s invisible to the fabric, i.e. cloaked. This simplifies deployments, saves on domain IDs, and lets you plug switches from one vendor into a switch of another vendor.  Plug a Cisco UCS Fabric Interconnect into a Brocade FC switch? No problem. NPV. Got a Qlogic blade FC switch plugging into a Cisco MDS? No problem, run NPV on the Qlogic blade FC switch (and NPIV on the MDS).
The hosts perform fabric logins just like they normally would, but the NPV/cloaked switch passes FLOGIs up to the NPIV enabled port on the upstream switch. The FCID of the devices bears the  the Domain ID of the upstream switch (and appears directly attached to the upstream switch).
The NPV enabled switch just proxies the FLOGIs up to the upstream switch. No fuss, no muss. Different vendors can interoperate, we save domain IDs, and it’s typically easier to administer.
TL;DR: NPIV allows multiple FLOGIs (and multiple FCIDs issued) from a single port. NPV hides the FC switch from the fabric.

Thursday 3 May 2012

What is ETHERNET FABRIC?







Join the Packet Pushers and Tech Field Day crew as they discuss the reality of an Ethernet fabric with Chip Copper of Brocade. This video includes Greg Ferro, Brandon Carroll, Ivan Pepelnjak, Ethan Banks, and Stephen Foskett.

Friday 27 April 2012



                                                                          SCSI
What is SCSI?
Small Computer System Interface.
Introduced by ANSI in 1986.
An I/O bus interconnecting  computers and peripheral devices.
Why  SCSI?
Industry standard interface.
Generic interface for different  devices from different vendors.
Easy addition of new SCSI  devices.
Allows for faster data input and  output.
Ability to process multiple overlapped commands.
Various  SCSI standards .
Initial version as SCSI-1 .
Introduced in 1986.
Defined the basics of SCSI Bus.
Talked about cable length, signaling  characteristics.
Defined various Commands and  Transfer modes.

Revised and upgraded to SCSI-2 .
Approved in 1990.
Defined the new features as  enhancements to SCSI-1.
Incorporated the backward  compatibility with SCSI-1.
Recent version is SCSI-3
Much more features added to SCSI- 2.
SCSI-1
Defined the basic 8 bit data bus.
Maximum transfer speed was  limited to 5 MB/s.
Had difficulties in acceptance, as  many vendors implemented only  subsets of this protocol.
SCSI-2
Introduced Fast  SCSI
Doubling of the speed of data  transfer to 10MB/s with regular  SCSI.
Introduced Wide SCSI
Increasing the width of the SCSI bus  from 8 bits to 16/32 bits.
This increases the data throughput of  the devices.

More number of devices per bus
On buses with Wide SCSI, 16  devices are supported, as opposed to  8 for regular SCSI.
Improved cables and connections
Incorporated new higher density  connections.
Active termination which provided  the reliable termination of the bus.

Command queuing
Introduced the concept of having  multiple outstanding requests on the  bus at any point of time.
Additional command sets
Included new command sets to  support the use of more devices like  CD-ROMs, scanners and removable  media. SCSI-1 focussed more on  supporting hard disks.
Command set enhancements
SCSI-3
Ultra SCSI
Further doubling of system bus speed  resulting in data transfer rates up to  20MB/s for regular and 40MB/s for  Wide SCSI.
Serial SCSI
Uses Serial SCSI as one of its new  protocol standards (also called  FireWire).
Improved Cabling
Improvements over SCSI-2 for tuhe  use of Wide SCSI.
SCSI - Electrical Signal  types
Single Ended
Conventional signaling as used on  other buses.
A positive voltage indicates a logical  TRUE and no voltage FALSE.
Each signal is carried on one wire.
Flexible and cost effective, as is very  common.
Cable length, however, is highly  limited due to the effect of noise.
Differential
Uses differential signaling.
Each signal is carried by two wires,  each the mirror image of the other.
A positive voltage on one wire and  an equal negative voltage on the  other indicates a TRUE.
Zero voltage(electrical ground) on  both the wires indicates a FALSE.
Use of two conductors makes this  scheme more resilient and immune to  electrical noise.
Longer cable lengths possible.
Cost is much more higher than single  ended.
Back to the technical  jargon!!
Two different classifications
SPEED
BUS WIDTH
Speed of SCSI Bus
Regular
5MB/s data transfer rate.
Fast
10MB/s data transfer rate.
Ultra
20MB/s data transfer rate.
Bus width of SCSI Bus
Narrow
8 bit wide data bus.
Wide
16 bit wide data bus.
All in a nutshell
SCSI ID
Unique identification number  assigned to each device on the bus.
Used to identify devices on the  bus.
For Narrow SCSI, ID ranges from  0 to 7.
For Wide SCSI, ID ranges from 0  to 15.
ID determines the priority of the  device during arbitration.
Larger the ID, higher the priority.
Generally the host adapter is at ID  7 (highest priority).

Termination
Mandatory for SCSI devices.
Used to prevent signal reflections  from entering the SCSI bus.
Provided by using a terminator.

SCSI Bus
Communication on the SCSI bus is  allowed between only two SCSI  devices at any given time.
Of the two devices on the SCSI  bus, one acts as the initiator and  the other as target.
Initiator originates an operation.
Target performs the operation.
A device usually has a fixed role  as an initiator or target Some  devices can assume either role.
Certain SCSI bus functions are  assigned to the initiator and certain  to the target.
Data transfer takes place through  the mechanism of handshaking  signals.
SCSI Bus Signals
Total of 47 signals.
11 signals for control, 36 for data.
Important signals:
BSY - Bus being used.
SEL - Used by initiator/target to  select/reselect a target/initiator.
C/D - Control or Data information on  the bus.
I/O - Indicates the direction of data  transfer w.r.t the initiator.
MSG - Used during message phase.
REQ/ACK – Handshaking signals.
REQ –  request for an ACK  handshake
ACK- acknowledgement of a REQ.
DB - Data bus.
ATN- signal driven by an initiator  to indicate to a target that the  initiator has a message ready.
RST – Reset condition
SCSI Bus Phases
SCSI Architecture has 8 distinct  phases.
BUS FREE Phase.
ARBITRATION Phase.
SELECTION Phase.
RESELECTION Phase.
COMMAND Phase.
DATA Phase.
STATUS Phase.
MESSAGE Phase.
BUS FREE Phase
Indicates that there is no current  I/O process on the bus.
SCSI bus is available for  connection.
Devices detect this phase after the  BSY and SEL signals are both  false.
Generally this phase is entered,  when a target releases its BSY  signal.
ARBITRATION Phase
Allows one SCSI device to gain  control of the SCSI bus to initiate  or resume an I/O process.
Following steps occur while a  SCSI device gains control of the  SCSI bus:
Device waits for the BUS FREE  phase to occur.
After the Bus Free phase occurs, the  device waits for a specified amount  of time before driving any signal.
Device then arbitrates for the SCSI  bus by asserting the BSY signal and  its  own SCSI ID bit on the data bus.
Device waits for an arbitration delay,  before examining the data bus.
If a higher priority SCSI ID bit is  found on the data bus, the device has  lost its arbitration and releases the  BSY signal and returns to step 1.
Else, the device has won the  arbitration. It then asserts the SEL  signal.
SELECTION Phase.
Allows an initiator to select a  target to carryout target functions  (READ, WRITE).
I/O signal is negated during this  phase to differentiate it from  RESELECTION phase.
Selection is done by the following  mechanism:
Initiator sets the data bus to a value  that is the OR of its SCSI ID and the  target SCSI ID bit.
It then asserts the ATN signal  indicating a MESSAGE OUT Phase  is to follow.
Then the initiator releases the BSY  signal.
The target shall determine that it is  selected when the SEL and its SCSI  ID are high and BSY and I/O lines  are low.
It then scans the data bus to find the  initiator and asserts the BSY signal.
If more than two SCSI ID bits are on  the data bus, the target shall not  respond to selection.
RESELECTION Phase
Optional Phase
Allows a target to reconnect to an  initiator to continue some I/O  operation that was previously  started by the initiator and  suspended by the target.
Reselection follows the  mechanism stated below:
After Arbitration phase, the winning  device asserts the BSY and SEL  lines.
The winning SCSI device becomes a  target by asserting the I/O signal.
It then puts its SCSI ID on the data  bus OR ed with the ID of the  initiator.
The device then releases the BSY  signal.
The initiator, on seeing its ID on the  data bus along with SEL and I/O  being true and BSY being false,  determines that it is reselected.
It then finds the target by  scanning  the data bus.
The reselected initiator shall then  assert the BSY signal.
After the target finds that BSY signal  is asserted, it releases the SEL signal.
Upon this, the initiator releases the  BSY signal and the target asserts the  same.
The I/O then continues normally  until the target drops the SEL signal.
INFORMATION  TRANSFER Phases
Consists of the Command, Data,  Status and Message Phases.
C/D, I/O, MSG signals are used to  distinguish between the different  phases.
The information transfer phases  use one or more REQ/ACK  handshake signals to control the  information transfer.
During the information transfer  phases, the BSY signal shall be  True and the SEL signal, False.
Two modes of information  transfer.
Asynchronous Information Transfer.
Synchronous Information Transfer.
Asynchronous Information  Transfer
Target controls the direction of  data transfer through the I/O  signal.
I/O signal true indicates data  transfer from target to the initiator.
If I/O is true, target puts data on  the data bus, asserts REQ signal.
Target puts data on the data bus and  drives the REQ signal to true.
Initiator reads the data when it finds  the REQ signal true, then asserts the  ACK signal.
When ACK is true, target may  change the data on the data bus and  then release REQ.
When REQ becomes false, initiator  releases the ACK signal.
After this, the target then can either  continue the data transfer or stop it.
I/O signal false indicates data  transfer from initiator to the target
Initiator requests for data transfer by  asserting the REQ signal.
Initiator puts the data when it finds  the REQ signal true, then asserts the  ACK signal.
Target reads the data when it finds  the ACK signal true, then negates the  REQ signal.
When REQ is false, initiator may  change the data on the data bus and  then negate ACK.
After this, the target then can either  continue the request for data transfer  or stop it.
Synchronous Information  Transfer.
Used generally for Data Transfer  Phase.
Used only if a prior agreement is  reached using messaging phases.
The offset for REQ/ACK signals is  also reached upon then.
Offset specifies the number of  REQ signals the target sends in  advance of the number of ACK  signals received from the initiator.
For each REQ signal, one byte of  data is transferred and an ACK  pulse is sent.
Different phases during  Information Transfer
Command Phase
Allows the target to request  command information from the  initiator.
Data Phase
DATA IN - Allows the target to  request that data be sent to the  initiator from the target.
DATA OUT - Allows the target to  request that data be sent to the target  from the initiator.
Status Phase
Allows the target to request that  status information be sent to the  initiator from the target.
Message Phase
MESSAGE IN - Allows the target to  request that messages be sent to the  initiator from the target.
MESSAGE OUT - Allows the target  to request that messages be sent to  the target from the initiator.
Target invokes Message Out phase in  response to the Attention condition  from the initiator by ATN signal.
SCSI Bus Conditions.
Two conditions, which can cause  the SCSI device to perform certain  actions and alter the phase  sequence.
Attention Condition - Allows the  initiator to inform the target that it  has a message ready. Target reads it  by performing a Message Out Phase.
Reset Condition - Immediately clears  all SCSI devices from the bus. This  condition takes precedence over all  the other phases on the bus.
SCSI bus phase sequences.
Brief description about  messages
Allows communication between  target and initiator for interface  management.
Messages may be of one, two or  multiple bytes in length.
One or more messages may be sent  during a single MESSAGE Phase.
Some of the generally used  messages:
Abort - Sent from initiator to target  for clearing any I/O process.
Command Complete - Sent from  target to initiator to indicate the  completion of an I/O process and that  valid status has been sent to the  initiator.
Disconnect - Sent from T to I  indicating that the present connection  is being broken and will be later  resumed by invoking the  RESELECTION phase.
SCSI Commands
SCSI Commands follow the  pattern of the Command  Descriptor Block (CDB) to the  target.
First byte in any SCSI Command  should contain the valid opcode.
Opcodes are classified into  Optional, Mandatory and Vendor  specific.
Some fields in the CDB are  reserved and are set to zero.
If a target receives a CDB with the  reserved fields not being set to  zero, shall terminate the command  with a CHECK CONDITION  status.
Three groups – 0- 6 byte
                            1,2 -10 byte
                            5- 12 byte
3 and 4 reserved . 6 and 7 are  vendor specific.

Format of a 6-byte CDB

The transfer length field specifies  the amount of data to be  transferred, usually the number of  blocks.
Commands that use one byte for  the transfer length allow up to 256  blocks of data to be transferred by  one command.
SCSI Status
Shall be sent from the target to the  initiator during the STATUS Phase  at the completion of each  command.
General status conditions:
Good - Target successfully  completed the command.
Check condition - Indicates that  contingent allegiance occurred.
Busy - Indicates that target is busy.

Command Terminated - Returned  whenever the target terminates the  I/O process.
SCSI Commands
  Test unit ready : Queries device  to see if it is ready for data  transfers (disk spun up, media  loaded, etc.). Opcode = 0x00
   Inquiry : To obtain basic  information from a target device.  Opcode =12h
  Request sense : Returns any error  codes from the previous command  that returned an error status. 3h.

Send diagnostic  :requests the  target to perform a self test. Test is  standardized and response is  GOOD if all is well or CHECK  CONDITION status if test fails.  1Dh
Start/Stop unit : Spins disks up  and down, load/unload media. 1Bh
Read capacity : Returns storage  capacity. 25h

Format unit : Sets all sectors to all  zeroes, also allocates logical  blocks avoiding defective sectors.
ftp  Read  (four variants): Reads data  from a device.
 Write  (four variants): Writes data  to a device.

 Log sense : Returns current  information from log pages.
 Mode sense : Returns current  device parameters from mode  pages.
 Mode select : Sets device  parameters in a mode page.