development of an api standard in interoperable storage networking benjamin f. kuo troika networks,...

24

Upload: charla-gardner

Post on 15-Jan-2016

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc
Page 2: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Development of an API Development of an API Standard in Interoperable Standard in Interoperable Storage NetworkingStorage Networking

Benjamin F. KuoBenjamin F. KuoTroika Networks, Inc.Troika Networks, Inc.

Page 3: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

OutlineOutline

HBA API OverviewHBA API Overview The HBA Management ProblemThe HBA Management Problem Attempts at a SolutionAttempts at a Solution The SNIA HBA APIThe SNIA HBA API Development TimelineDevelopment Timeline

ArchitectureArchitecture API AttributesAPI Attributes API FunctionsAPI Functions More informationMore information

ConclusionConclusion

Page 4: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Fibre Channel NetworkFibre Channel Network

LAN

SAN

ServersServersWith HBAsWith HBAs

StorageStorage

SAN InfrastructureSAN Infrastructure

ManagementManagementStationStation

Page 5: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

The Host Bus Adapter: Critical The Host Bus Adapter: Critical Enabler to Storage NetworkingEnabler to Storage Networking Component to connect systems and Component to connect systems and

storage over Fibre Channelstorage over Fibre Channel Consists of hardware, firmware, drivers Consists of hardware, firmware, drivers Located on host system, RAID Located on host system, RAID

controllers, storage devicescontrollers, storage devices Supports multiple protocols: Supports multiple protocols:

FCP-SCSIFCP-SCSI IPFCIPFC FC-VIFC-VI

Page 6: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Need for Managing the HBANeed for Managing the HBA

Information about HBA configuration Information about HBA configuration and operational parametersand operational parameters

Information about local port propertiesInformation about local port properties Visibility into the list of discovered Visibility into the list of discovered

network devices, WWN and propertiesnetwork devices, WWN and properties Ability to correlate SCSI mappings to Ability to correlate SCSI mappings to

Fibre Channel network addressesFibre Channel network addresses Access to Fibre Channel network Access to Fibre Channel network

servicesservices

Page 7: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

The HBA Management The HBA Management ProblemProblem

““The HBA is Unmanageable”The HBA is Unmanageable” Multiple vendorsMultiple vendors Multiple platformsMultiple platforms Lack of standardsLack of standards Lack of industry agreementLack of industry agreement No consistency between vendorsNo consistency between vendors

ResultResult Multiple conflicting attempts at a solutionMultiple conflicting attempts at a solution

Page 8: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Benefits of a SolutionBenefits of a Solution

UsersUsers Increased interoperabilityIncreased interoperability Increased availabilityIncreased availability Simpler administration Simpler administration

Software VendorsSoftware Vendors Reduced development cycleReduced development cycle Broader applicability to hardwareBroader applicability to hardware Wider marketWider market

FC/SAN IndustryFC/SAN Industry Accelerate adoption of FC equipmentAccelerate adoption of FC equipment Enables new applications to grow the marketEnables new applications to grow the market

Page 9: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Early Attempts at a SolutionEarly Attempts at a Solution

HBA Vendor ProprietaryHBA Vendor Proprietary Proprietary solutions from every HBA Proprietary solutions from every HBA

vendor, if available at allvendor, if available at all Management Vendor ProprietaryManagement Vendor Proprietary

Interfaces from every management Interfaces from every management software vendorsoftware vendor

HBA CIM ModelingHBA CIM Modeling Not appropriate at an operational levelNot appropriate at an operational level

MIB DefinitionsMIB Definitions Not appropriate for HBANot appropriate for HBA

Page 10: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Solution: The SNIA HBA APISolution: The SNIA HBA API

Broad, industry driven initiativeBroad, industry driven initiative Common HBA information definitionCommon HBA information definition C-Level library interfaceC-Level library interface Platform independentPlatform independent Vendor independentVendor independent Interoperable Interoperable

Across vendorsAcross vendors ““In the box”In the box”

Page 11: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

API Development TimelineAPI Development Timeline

Version 1.0Version 1.0

Version 2.0Version 2.0 Now – collecting requirementsNow – collecting requirements

March – StrawmanMarch – Strawman

April – RequirementsApril – Requirements

May – HBA API SubgroupMay – HBA API SubgroupFormedFormed

July – 1.0 Draft FrozenJuly – 1.0 Draft FrozenAdded to T11 FC-MI AnnexAdded to T11 FC-MI Annex

Sept – 1.0 FinalSept – 1.0 Final T11 FC-MIT11 FC-MI

20002000 20012001

Page 12: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

HBA API ArchitectureHBA API Architecture

ISVISVApplicationsApplications

Lib

rary 1

Lib

rary 1

Lib

rary 2

Lib

rary 2

Lib

rary 3

Lib

rary 3

Lib

rary N

Lib

rary N

OS-specific OS-specific mechanisms are mechanisms are used to dynamically used to dynamically load librariesload libraries

HBA APIHBA API

HBA VendorHBA VendorImplementationImplementation

All supported host All supported host bus adapters are bus adapters are accessed using a accessed using a single interface to single interface to common functionscommon functions

HBA vendors provide HBA vendors provide a common interface a common interface to vendor-specific to vendor-specific implementations.implementations.

Common Common HBA API HBA API

LibraryLibrary

……

Page 13: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

HBA API AttributesHBA API Attributes

Adapter AttributesAdapter Attributes Mfg, Model, Version, Serial Number, WWNN…Mfg, Model, Version, Serial Number, WWNN…

Adapter Port AttributesAdapter Port Attributes WWPN, WWNN, Speed, FC4 Protocols…WWPN, WWNN, Speed, FC4 Protocols…

Adapter Port StatisticsAdapter Port Statistics Frames and words sent and received, errors…Frames and words sent and received, errors…

FC-3 Management AttributesFC-3 Management Attributes RNIDRNID

Port FCP AttributesPort FCP Attributes Mapping of WWN to OS SCSI Bus, Target, LUNMapping of WWN to OS SCSI Bus, Target, LUN

Page 14: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

HBA API Function CallsHBA API Function Calls

General FunctionsGeneral Functions Information FunctionsInformation Functions FC-3 Management FeaturesFC-3 Management Features FCP Information FunctionsFCP Information Functions Control FunctionsControl Functions

Page 15: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

General FunctionsGeneral Functions

A single application interface that can A single application interface that can manage multiple HBA vendors adapters, manage multiple HBA vendors adapters, even in the same machine.even in the same machine.

Manages the loading of appropriate HBA Manages the loading of appropriate HBA vendor specific librariesvendor specific libraries

Identifies installed adapters and their namesIdentifies installed adapters and their names

Page 16: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Information FunctionsInformation Functions

Reports details on installed adaptersReports details on installed adapters Manufacturer, driver and firmware Manufacturer, driver and firmware

versions, model numbers…versions, model numbers… Fibre Channel Port and Node World Wide Fibre Channel Port and Node World Wide

NamesNames Traffic statistics for Adapter PortsTraffic statistics for Adapter Ports

Frames sent/received, errors, etc…Frames sent/received, errors, etc…

Page 17: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

FC-3 Management FunctionsFC-3 Management Functions

Allows applications to directly query fibre Allows applications to directly query fibre channel switch serviceschannel switch services Name and management serversName and management servers

Allows setting and querying of end-node Allows setting and querying of end-node informationinformation RNIDRNID

Page 18: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

FCP Information FunctionsFCP Information Functions

Reports information about what an Reports information about what an Operating System knows about SCSI bus Operating System knows about SCSI bus and target information for a given LUN and target information for a given LUN (logical device), as well SCSI LUN to FCP (logical device), as well SCSI LUN to FCP LUN bindings.LUN bindings.

SCSI Inquiry, Report LUNs, Read CapacitySCSI Inquiry, Report LUNs, Read Capacity

Page 19: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Control Functions Control Functions 

Provides facilities for reading updated Provides facilities for reading updated (network) information known by an adapter (network) information known by an adapter as well as functions like resetting HBA as well as functions like resetting HBA statistics counters.statistics counters.

Page 20: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Example of HBA API UsageExample of HBA API Usage

Get the list of adapters…Get the list of adapters…number_of_adapters = HBA_GetNumberOfAdapters();number_of_adapters = HBA_GetNumberOfAdapters();for (i = 0; i < number_of_adapters; i++) {for (i = 0; i < number_of_adapters; i++) {

status = HBA_GetAdapterName(i, &adaptername);status = HBA_GetAdapterName(i, &adaptername); }}

Open an adapter…Open an adapter…   adapterhandle = HBA_OpenAdapter(adaptername);adapterhandle = HBA_OpenAdapter(adaptername);

Call HBA function to retrieve information…Call HBA function to retrieve information…status = HBA_GetAdapterAttributes(adapterhandle, status = HBA_GetAdapterAttributes(adapterhandle,

&adapterattributes);&adapterattributes);printf("Manufacturer is %s\r\n", printf("Manufacturer is %s\r\n",

adapterattributes.Manufacturer);adapterattributes.Manufacturer);

Page 21: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

HBA API Documents AvailableHBA API Documents Available

HBA API SpecificationHBA API Specification Sample code for libraries and Sample code for libraries and

applicationsapplications Common HBA API Library for multi-Common HBA API Library for multi-

vendor loading supportvendor loading support Vendor-supplied librariesVendor-supplied libraries

Page 22: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

ConclusionConclusion

Broad-based, industry supported Broad-based, industry supported standard for managing host bus standard for managing host bus adaptersadapters

In early availability across multiple In early availability across multiple vendorsvendors

Critical enabler to managing storage Critical enabler to managing storage networksnetworks

Increases storage network Increases storage network interoperability, reliability, usefulnessinteroperability, reliability, usefulness

Page 23: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

More informationMore information

SNW Interoperability DemoSNW Interoperability Demo SNIA Fibre Channel Working GroupSNIA Fibre Channel Working Group

http://www.snia.orghttp://www.snia.org FCWG Email ReflectorFCWG Email Reflector

T11 FC-MIT11 FC-MI http://www.t11.orghttp://www.t11.org

Page 24: Development of an API Standard in Interoperable Storage Networking Benjamin F. Kuo Troika Networks, Inc

Questions?Questions?