21
MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8, 2017

Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

MT08.3.17

Edgecore ASFvOLT16 VOLTHA Adapterand Driver

Kim Kempf, Sr. Systems ArchitectCORD Build 2017, San Jose

November 8, 2017

Page 2: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

2

Edgecore ASFvOLT16 Whitebox OLT

VOLTHA

ASFvOLT16_oltadapter

• DisaggregatedOLTmeansminimizingtheamountofsoftwareinthedevice

• VOLTHAprovidesthevOLTcontrolabstraction• VOLTHAdeviceadapterinteractswithOLThardware• SWrequiredintheOLTtointerfacetotheadapter

• ButASFvOLT16hasnoexistingOLTcontrolsoftware• NoexistingopensourceOLTcontrolsoftware

In-OLTcontrolis:NETCONF?REST?

ThinAPI?Custom?

Page 3: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

3

Edgecore ASFvOLT16 Whitebox OLT

• In-OLTsoftwareisneededfor:• EmbeddedCPUoperatingsystem• BroadcomMaplePONMACSoCs• BroadcomDNXQumranEthernetswitch• Otherhardwareandfunctions

• XFP,QSFP,Fans,Timing• Softwareupdate• Healthandstatus

Page 4: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

4

Edgecore ASFvOLT16 Whitebox OLT

OpenNetworkLinux(OCP)

BroadcomMapleSDK

• Softwaresolutions:• ONLcanprovidefoundationforNOS• ONLPprovidesmostHWperipheralsupport• BroadcomMapleSDKforPONMAC• BroadcomSwitchSDKforQumranswitch• BroadcomBAL– BroadbandAbstractionLayer

• ProvidesabstractiontomanageMapleandQumranasanOLTsystem

• IntendedasfoundationforOLTcontrolFWBroadcomSwitchSDK

OtherHW andfunctions

BroadcomBAL

Page 5: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

5

Edgecore ASFvOLT16 Whitebox OLT

• BALprovidesobjectorientedOLTaccessAPI

• HidesdetailsofPONMACandswitchAPIcalls

Page 6: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

6

Edgecore ASFvOLT16 Whitebox OLT

• Theproblem?• BAL/MapleandQumranSDKsourcecodeisproprietaryandrequires

sourcecodelicenseagreement(SLA)betweenequipmentproviderandBroadcom

• NoequivalenttotheOF-DPACommunityDevelopmentPackage(CDP)forBALexistsfromBroadcom

• TheVOLTHAcommunitywantsASFvOLT16tobeasopensourceaspossible

• Thesolution?• WorkwithBroadcomtoopentheBALAPI(callsandobjectmodel)• ProposeASFvOLT16architecturetopartitionclosedandopensource

Page 7: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

7

Edgecore ASFvOLT16 Whitebox OLT

• BALAPIisopen,adaptercanaccessallfunctionality• GRPCprovidesnaturalboundarybetweenopen

adapterandin-OLTdriverlinkingtoclosedBALAPIsourcecodefromBroadcom

Qumran

Maple

asfvolt16_oltadapter

Libbal_api_dist.sovoltha_bal_driver

UsingBALAPI

Bal_core_dist

Runtime dynamic linking

BAL API calls using GRPC

ASFvOLT16

BAL IPC messaging

Page 8: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

8

ASFvOLT16 System Architecture Overview

• BroadcomBALisanimportantbuildingblockbutnotacompleteOLTsolution

• MoresoftwareisneededtomanageHWnotcoveredbyBAL• Fan,PSU,Opticalmodules,etc.• VitalProductData(S/N,Model,rev)• Softwareupdate/activate

• AnythingnotundercontrolofBALishandledbyDMTFRedfish®

vOLTHA

asfvolt16_oltadapter(Python)

ASFvOLT16OLTCPU

BALobjs

BALCore/Utils

QumranAPI

MapleSDK QumranSDK

BCM88470Qumran(QAX)

EthernetPSU/FAN(FPGA)

XFP/QSFP

SyncE/IEEE1588Timing

VPD(EEPROM)

Board(Reset/WD)

Uplink

Ethernet

Maple NNIPON Maple NNIPON Maple NNIPON Maple NNIPON

RedfishServer

HTTPS/REST

BoardConfigOpticssupervisionEquip/EnvAlarmsVPDextractOLTreset/rebootOLTSWupdate/activategRPC

ONLPAPI

MapleAPI

voltha_bal_driver

BALindobjects

C-GRPC

gRPC

vOLTHAIAdapterInterface

OpenNetworkLinux

ONIE

bal_core_dist

BALind

BALobjects

FlowsInterfaceStatisticsIndicationsOMCIPktProxyCPUPktProxy

vOLTHACore

OLTHWCtrlStatus(OHCS)

BAL_OLTAPImapping

StartupConfig

In-OLTDebug/Develcomponents

bcm_user_appl

bal_cli

bcm.user

onlpd

faultd

onlpdump

RedfishClient

C-GRPC

Thermalmonitor

Page 9: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

9

ASFvOLT16 Whitebox OLT

• SourcecodeforASFvOLT16adapter• git clone https://gerrit.opencord.org/voltha• voltha/adapters/asfvolt16_olt

• InterfaceadapterforASFvOLT16• GRPCclient/serverconnectionclasses

• voltha/adapters/asfvolt16_olt/protos• Protobufs forBALobjectmodelandAPI

Page 10: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

10

ASFvOLT16 Whitebox OLT

• SourcecodeforASFvOLT16driver(voltha_bal_driver)• git clone https://gerrit.opencord.org/asfvolt16-driver• Seesrc/README.mdforbuildinstructions• ThefollowingcomponentsarerequiredfromBroadcom:

• BAL/MapleSDK– version2.4.3.6• QumranSDK– version6.5.7• ASFvOLT16BALpatch– versionACCTON_BAL_2.4.3.6-V201710131639• ContactDaveBaron@BroadcomreferencecaseCS3233745

• ONLBuildenvironmentforASFvOLT16• https://wiki.opencord.org/download/attachments/2556712/ONL_Buil

d_Environment_Installation_Guide.pdf?api=v2

Page 11: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

11

Edgecore ASFvOLT16

• Possible deployment scenarios• Similar to Edgecore OF-DPA• Pre-built binary package from Edgecore,

ONF or SI (system integrator)

Page 12: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

12

Edgecore ASFvOLT16

• Future work• C++ based voltha_bal_driver• Use C++ based GRPC• In-band management support• OLT auto discovery• Expose more Maple features though BAL• Expanded use of syslog by voltha_bal_driver

Page 13: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

13

• Accton/Edgecore• ALTEN Calsoft Labs • AT&T• Broadcom• Ciena• ONF• Radisys

Community Collaborators for ASFvOLT16

Page 14: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

Thank You

14Radisys Corporation - CONFIDENTIAL

Page 15: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

15

BACKUP

Page 16: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

16

ASFvOLT16 Whitebox OLT

• ASFvOLT16DeviceManagementproposal(VOL-248epic)• CreateaRedfishRESTfulqueryandcontrolserviceinOLT• Redfishserverwillprovideaccesstofunctionssuchas:

• Firmwareupdateandactivate• OLTgracefulreboot• Monitoringoffansandpowersupplyunits(PSU)• MonitoringofXFP/QSFPopticalmodules• Sessionmanagement• Extractionofvitalproductdata

Page 17: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

17

ASFvOLT16 Whitebox OLT

• ASFvOLT16DeviceManagementproposal(VOL-248epic)• CreateaRedfishclientserviceinasfvolt16_oltadapter• UsesRESTtoaccessRedfishserverinOLT• Redfishclientwillimplement:

• Sessionlogin• Getstatusoffans,PSUs,XFPs,QSFPs• Initiateandmonitorfirmwareupdateandactivation• OLTreboot• SubmitalarmstoVOLTHA• Configureboardoptions(watchdog,SyncE,portmodes)

Page 18: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

18

ASFvOLT16 Whitebox OLT

Example:

Redfish Server Data Model for Health Status

Page 19: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

19

• Accton/Edgecore• Reliable ASFvOLT16 hardware• Porting Broadcom BAL/Maple/Qumran SDK to ONL kernel for

x86_64 arch• BAL patch and patch versioning/build documentation• Redfish server support from OCP design

• Broadcom• Provided the open-source API for the BAL framework• Distributing the ASFvOLT16 BAL patch via CSP• Supporting PoC demos and driver development

Community Collaborators for ASFvOLT16

Page 20: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

20

• ONF• Edgecore adapter project kickoff• Proposal for GRPC device simulator w/Juniper C-GRPC• BAL API .proto files• Asfvolt16_olt.py adapter initial framework and adapter class

• AT&T• Use case and feature set required from BAL API

• ALTEN Calsoft Labs/Ciena• Proposal for OLT device management using Redfish client/server• Redfish client in asfvolt16_olt adapter using REST APIs• Data models for management and configuration

Community Collaborators for ASFvOLT16

Page 21: Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim ......MT08.3.17 Edgecore ASFvOLT16 VOLTHA Adapter and Driver Kim Kempf, Sr. Systems Architect CORD Build 2017, San Jose November 8,

21

• Radisys• Leading community asfvolt16_olt adapter and in-OLT driver initiative• Developing in-OLT BAL API control driver (voltha_bal_driver)• Worked directly with Broadcom to:

• Develop understanding of VOLTHA community need for open BAL API• Negotiate required BAL API feature set• Define BAL package and patch distribution model suitable for SLA

• Worked directly with Edgecore/Accton to:• Transfer PoC result on Broadcom reference OLT to ASFvOLT16• Develop BAL acceptance test to ensure voltha_bal_driver foundation• Define BAL patch components and versioning method

Community Collaborators for ASFvOLT16