We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

vhost-user-blk: a fast userspace block I/O interface

00:00

Formal Metadata

Title
vhost-user-blk: a fast userspace block I/O interface
Title of Series
Number of Parts
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
vhost-user-blk is a userspace block I/O interface that has traditionally been used to connect software-defined storage to hypervisors. This talk covers how any application that needs fast userspace block I/O can use vhost-user-blk and its advantages over network protocols. A client library called libblkio is available for C and Rust applications will be introduced. The protocol is also summarized for those wishing to understand how it works or implement it from scratch. This talk is intended for developers interested in connecting applications to SPDK or qemu-storage-daemon and those who want to know more about software-defined storage interfaces. - Local block storage interfaces - Kernel vs userspace - Notifications vs polling - Message-passing vs zero-copy - What is vhost-user-blk? - Implemented by qemu-storage-daemon and SPDK - virtio-blk and VIRTIO - How to connect using libblkio (C/Rust) - How to implement a server using libvhost-user (C) or vhost-user-backend (Rust) - How to integrate with the Linux kernel block layer using VDUSE
SpacetimeBlock (periodic table)Interface (computing)Directory serviceHierarchyComputer fileWritingReading (process)Data storage deviceObject (grammar)Endliche ModelltheorieSimilarity (geometry)SCSIAbstractionFunction (mathematics)Core dumpData managementChannel capacityNegative BinomialverteilungConvolutionDisintegrationComplex (psychology)SurfaceFlow separationDatenpfadSystem callTask (computing)Complete metric spaceBlock (periodic table)Data storage deviceInterface (computing)SpacetimeCartesian coordinate systemIdentity managementPhysical systemOrder (biology)SoftwareComputer fileEndliche ModelltheorieBefehlsprozessorFunctional (mathematics)Set (mathematics)iSCSIObject (grammar)WritingCommunications protocolCore dumpSimilarity (geometry)Channel capacityAbstractionDependent and independent variablesLogicComputer programmingComplete metric spaceTask (computing)Process (computing)NumberMotherboardLevel (video gaming)CASE <Informatik>Computer hardwareDifferent (Kate Ryan album)MereologyConvolutionInformation securityStack (abstract data type)BitReading (process)MappingResource allocationData managementFile systemInterface (computing)System callAsynchronous Transfer ModeOperating systemPeer-to-peerPower (physics)Interrupt <Informatik>Extension (kinesiology)CodeTime zoneSurfacePoint (geometry)Normal (geometry)Multiplication signScheduling (computing)AdditionServer (computing)CausalityPlastikkarteInformation retrievalRight angleFraction (mathematics)SCSIScripting languagePhysical lawSlide ruleComplex (psychology)CuboidPresentation of a groupView (database)Ideal (ethics)PlotterComputer animation
Task (computing)Complete metric spaceRead-only memoryMessage passingShared memorySpacetimeLocal ringBlock (periodic table)Interface (computing)EmulationData storage deviceCommunications protocolTime domainNetwork socketStrutData bufferData bufferCommunications protocolVirtual machineGame controllerProcess (computing)Heat transferQueue (abstract data type)Buffer solutionEntire functionLatent heatResultantBefehlsprozessorOverhead (computing)Interrupt <Informatik>Exterior algebraSpacetimeTask (computing)Interface (computing)Cartesian coordinate systemObject (grammar)Message passingSemiconductor memoryMultiplication signNetwork socketDomain nameSimilarity (geometry)Local ringImplementationOrder (biology)WeightMiniDiscConfiguration spaceEndliche ModelltheorieNumberBlock (periodic table)Power (physics)Data storage deviceCycle (graph theory)Interface (computing)Focus (optics)Functional (mathematics)MultilaterationSoftwareInterprozesskommunikationNetzwerkdatenbanksystemConvolutionVirtualizationGoodness of fitStandard deviationVideoconferencingGeneric programmingScheduling (computing)Type theoryView (database)Shared memoryMusical ensembleState of matterData structureInformation securityComplete metric spaceProduct (business)System callPhysical systemLink (knot theory)Slide ruleQuicksortVertex (graph theory)Particle systemTelecommunicationProxy serverRevision controlPole (complex analysis)Programmer (hardware)Computer programmingPointer (computer programming)Computer animation
Price indexLibrary (computing)Block (periodic table)Interface (computing)CodeComputer configurationData storage deviceFocus (optics)Computer programmingDevice driverEvent horizonArchitectureBuildingInternet forumComa BerenicesClient (computing)Complete metric spaceStrutSoftware testingScripting languageServer (computing)Network topologyQueue (abstract data type)Process (computing)SpacetimeReading (process)Communications protocolConvolutionNetwork socketTime domainOpen setImplementationSystem programmingConvolutionCartesian coordinate systemData storage deviceComputer architectureBlock (periodic table)Network socketCodeConfiguration spaceReading (process)Software development kitDomain nameRaw image formatLink (knot theory)Interface (computing)SpacetimeYouTubeComputer fileEvent-driven programmingINTEGRALInstance (computer science)Functional (mathematics)Order (biology)Device driverQueue (abstract data type)System callInterface (computing)Library (computing)Server (computing)Process (computing)MiniDiscPhysical systemComputer programmingSlide ruleComplex (psychology)Game controllerDifferent (Kate Ryan album)BitPresentation of a groupThread (computing)Multiplication signOpen setSoftware testingMereologyDemonSoftwareConnected spaceLimit (category theory)Field (computer science)Information securityMedical imagingView (database)Event horizonIntelProxy serverComplete metric spaceRight angleCommunications protocolImplementationVariety (linguistics)SynchronizationSuite (music)CASE <Informatik>Execution unitTraffic reportingMatching (graph theory)Graph coloringComputer animation
Open setCodeSpacetimeInterface (computing)Block (periodic table)ImplementationClient (computing)System programmingServer (computing)Data storage deviceIntelComputer animationProgram flowchart
Transcript: Englisch(auto-generated)