1、Developing Software for Data Center Infrastructure ApplicationsDeb ChatterjeeSenior Director of EngineeringIntelVisualizing Infrastructure ProgrammingServer HardwareVirtualizedNetworkCustomers SoftwareCan run on bare metal or with hypervisorInfra SoftwareSoftwareHardwareMgmtStorageNetworkSecurityClo
2、udGeneral Purpose ComputeNICGrowingGrowingEcosystemEcosystemProgrammable Ecosystem Using P4NetworkNetworkAnalyticsAnalyticsNew FunctionalityDifferentiationRapid InnovationWorkload AccelerationNetwork AnalyticsIntro to Infrastructure ProgrammingSDE&SDE&CompilerCompilerP4CPU,IPU,DPU,SwitchIPDK Overvie
3、wSan Jose,CA April 26-28,2022IPDK OverviewIPDK is a community-driven target agnostic framework for infrastructure programming that runs on a CPU,IPU,DPU,or switch.IPDK.io:Infrastructure Programmer Development KitCollaborate with the community on Github&SlackIPDK TargetsUse CasesIaaSPaaSInline Accele
4、rationOpen CommunityCompilerDrivenIPDK Target Abstraction InterfaceNETWORKSTORAGECRYPTOFIREWALL,IDSML/AI5G/EDGEIPDK Infrastructure Application InterfaceCPU TargetIPU TargetSwitch TargetDPU TargetSan Jose,CA April 26-28,2022IPDK Approach1.Delineate Business Logic vs.Infrastructure2.Simplify Infrastru
5、cture Management3.Optimize using a Compiler-Driven Target AbstractionEXISTING ENVIRONMENTDELINEATE BETWEEN BUSINESS LOGIC,INFRASTRUCTURE,AND MANAGEMENTSIMPLIFY MANAGEMENTWITH STANDARD INTERFACES BETWEEN LOGICAL BOUNDRIESOPTIMIZE BY COMPILING TARGET AGNOSTIC PROGRAMS INTO SOFTWARE AND HARDWAREINFRAST
6、RUCTURE MANAGEMENTCPUsIPUsDPUsSwitchesIPDK.io:Infrastructure Programmer Development KitCollaborate with the community on Github&SlackSan Jose,CA April 26-28,2022Open-Source Development RecipesDelineate,simplify,and optimizefor each major use case and functional area Open-Source Development&Governanc
7、eNew patches,agents,and interface supportOpen-Source definitions of interfacesDockerfiles and pre-built containers Development has started,join us!Collaborate on Slack,Github&IPDK.ioIPDK.io:Infrastructure Programmer Development KitCollaborate with the community on Github&SlackSan Jose,CA April 26-28
8、,2022IPDK Standard Interfaces Infrastructure Application InterfaceDevices&Services for Workload AppsPlatform Capabilities RPC-based Target Abstraction Interface(TAI)Target CapabilitiesFunctional APIsIPDK.io:Infrastructure Programmer Development KitCollaborate with the community on Github&SlackIPDK T
9、argetsUse CasesIaaSPaaSInline AccelerationOpen CommunityCompilerDrivenIPDK Target Abstraction InterfaceNETWORKSTORAGECRYPTOFIREWALL,IDSML/AI5G/EDGEIPDK Infrastructure Application InterfaceCPU TargetIPU TargetSwitch TargetDPU TargetSan Jose,CA April 26-28,2022Use-Case Driven1.Infrastructure-as-a-Serv
10、iceVirtual networking,storage and Crypto across VMs,containers and bare metal2.Platform-as-a-ServiceContainer Networking(Kubernetes)Sidecars(Envoy,MongoDB)3.Inline AccelerationFirewall,IDS,Network Telemetry 5G/Wireless Infrastructure,AI/MLIPDK.io:Infrastructure Programmer Development KitCollaborate
11、with the community on Github&SlackIPDK TargetsUse CasesIaaSPaaSInline AccelerationOpen CommunityCompilerDrivenIPDK Target Abstraction InterfaceNETWORKSTORAGECRYPTOFIREWALL,IDSML/AI5G/EDGEIPDK Infrastructure Application InterfaceCPU TargetIPU TargetSwitch TargetDPU TargetSan Jose,CA April 26-28,2022D
12、eviceHostIPDK Appsidev Insert/Delete devices into hosts(bare metal,VMs inside bare metal)Direct and virtual devices(drives,NICs,Accel)Hardware Hypervisor I/OVirtual Switch,Block Storage&CryptoKVM VM HOSTINGExample Use Case:IaaSBARE METAL HOSTINGVMqemuKVMIPDK Appsidev Insert/Delete devices into VMs D
13、irect attached devices(drives,NICs,Accel)Software Hypervisor I/OVirtual Switch,Block Storage&CryptoIPDK.io:Infrastructure Programmer Development KitCollaborate with the community on Github&Slack Common ControlSame IPDK appsin both cases Common InterfacesSame Semantics to connect devices to Hosts&VMs
14、 Target AbstractionSame APIs usedfor KVM Target&Hardware TargetSan Jose,CA April 26-28,2022Intel Contributions to IPDKIntel is Seeding IPDK with:Initial Set of Recipes:IaaS,PaaS,Inline Acceleration KVM Target w/P4 DPDK Programmable Pipeline Virtual Device OpenConfig Simple P4 Programs P4 Open vSwitc
15、h for contribution to openvswitch.orgIntels Future Contribution Plans:Agents for IaaS and PaaS usages Full feature set networking,storage,and crypto Full feature set for each interface SONiC(PINS)integrationSeparately Intel plans to offer thesehardware IPDK Targets:IntelTofinoSeries,Mount Evans IPU,and Oak Springs Canyon IPUIPDK.io:Infrastructure Programmer Development KitCollaborate with the community on Github&SlackThank you!IPDK.io:Infrastructure Programmer Development KitCollaborate with the community on Github&Slack