evolu on of the subscrip on & event no fica on drafts

Post on 11-Feb-2017

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Evolu&onoftheSubscrip&on&EventNo&fica&onDra9sIETF#97Seoul17-Nov-2016

+ContributorsYanGangPeipeiGuoSusanHaresTimJenkinsMichaelScharfKentWatsenGuangyingZheng(Walker)

Authorsonatleast1draGsAndyBiermanSharonChisholmAlexanderClemmBalazsLengyelEinarNilsen-NygaardAlbertoGonzalezPrietoHectorTrevinoAmbikaPrasadTripathyEricVoit

DezignTeam

NETCONFCharterItem6:“EnhanceRFC5277withtheabilitytodeletesubscrip;onswithoutclosingtheclientsession,tomodifyexis;ngsubscrip;ons,andtohavemul;plesubscrip;onsonaestablishedclientsession.Thesechangesshouldnotaffectolderclientsthatdonotsupportthesepar;cularsubscrip;onrequirements.TheRPCsandthedatamodelsinRFC5277shouldbeconvertedtoYANG

TM

Event&YANGSubscripXonsContext

Streamingofupdates•  Customizabletorecipient•  On-change,Periodic,Event

Publisher

Streamingmechanism

SubscripXoninterface

Subscribingtoupdates•  YANGDatastores•  NETCONFNoXficaXons/Events•  StaXcallyconfiguredordynamicallysignaled

Any Model

Vendor Model Events Datastore

2

Event&YANGSubscripXons4DraGs

Githubrepositoryh^ps://github.com/netconf-wg•  Minutes,MeeXngRecordings,Terminology,Issues

SubscriptionMechanism:

SubscribingtoYANGdatastorepushupdatesdraG-ieb-netconf-yang-push-04

SubscribingtoEventNo&fica&onsdraG-ieb-netconf-rfc5277bis-01

ChoiceofTransports:

NETCONFSupportforEventNo&fica&onsdraG-ieb-netconf-netconf-event-noXficaXons-01

RESTCONF&HTTPTransportforEventNo&fica&onsdraG-ieb-netconf-restconf-noXf-01

3

4DraGsinLayeredFramework

Applica&on

Publisher

Subscriber

UpdatePackaging

andFlowControl

TransportSession

Encoding

gRPC NetconfRestconf

YANG

SSHHTTP1.1

JSON

TLS

EventNo&fica&onGenera&onFiltering AccessControl

EventGenera&on

YANGXMLGPBThriG

Subscrip&onMgmt

ConfiguredDynamic

Receiver

AdmissionControl

HTTP2

customNETCONFStream

StartupConfig

CandidateConfig

IntendedConfig Applied

NegoXaXonOAMStreamDiscovery

4

SubscripXonMtc

CBOR

On-Change Periodic

ControlPlane

RunningConfig

OperaXonalState

UpdatessinceIETF#96

•  -04revision•  Updates-not-sentflagaddedforincompletepushupdate

•  Not-noXfiableextensionaddedforitemswhereon-changenotviable(viaMetadata)

•  Movedstart/stopintorfc5277bis,addedanchorXmeforperiodic

•  DampeningperiodissubscripXon,notperobject•  Asynchrefreshoffullsetofon-changeobjects•  Editorialupdates,andmaterialmovedto5277bis

5

yangpush

FeedbackRequest#1Simplifyingstreamsandfiltertypes

•  OpXonal:Customplabormstreams.–  IfusedreducessetofobjectsforexisXngfilters.

•  Future:filtersbasedontheintersecXonofOpStatedatastorefetch+Subtree+Metadata– canbeusedtoaccomplishobjecXvesofstreams– Predefinedfiltersthatreferenceatargetdatastoreorfiltercontentsbasedonmetadata

•  Request:Agreewithabove?If/whenOpStateadopted,charternewworksothatcorrespondingfilter-typesexist.Whoisinterestedinthistopic?

yangpush

FeedbackRequest#2TopicFiltering

•  YANG1.1idenXtyrefstaggingexisXngobjects–  CouldprovideIETFstandardinheritance

– Moreefficientthancontentfiltering

–  CouldbeusedinconjuncXonwithexisXngfilters

•  WGinterestinclassifyingModel,Subtree,&LeafviaindependentcategorizaXonssuchasEvent-type&severity?

extension event-topic {

argument id { identity topic-id { … /******************************** example topic subtree + topic-id + service-topic + routing-topic + bgp-topic + isis-topic **********************************/ grouping topic-filter {

leaf-list topic-filter { type identityref { base topic-id;

augment "/notif-bis:establish-subscription/notif-bis:input" {

uses topic-filter; }

yangpush

FeedbackRequest#3OpXonalUpdate-NumbertoDetectLoss/DuplicaXon

Publisher

Receiver

Object change Update bundling

TCP Loss / Duplication prior to update bundling is invisible

On TCP Socket ∆: Ignore, OAM error to receiver, or suspend

On receipt of OAM: Ignore, Replay, or Resynch On receipt of suspend: do nothing

Update Number

Assign update number, put current & previous in a push-change-update

On discovery of update loss: Ignore, Replay, or Resynch On discovery of duplicate update: drop

lifecycle of a pushed change Patch

Detection Method

•  TCPcan’tcoverallcasesforupdateloss&duplicaXonofapushupdate.

•  Request:Shouldweallowpush-change-updatestoincludecurrent&previousupdatenumber–  Performanceconcern?ShouldthisgointransportdraG?

yangpush

Nextsteps

9

yangpush

Simplifyscope:Documentandframeotherfollow-onworkandpotenXalaugmentaXons

–  Request#1:FutureFilterTypes,OpState,Metadata–  Request#2:TopicDefiniXonandFiltering

FeedbackRequest#3 Shouldweincludepush-change-updatenumber?

Open ParXalpushofperiodicupdatesinasubscripXon?

Open YANG-PushstaXsXcs(e.g.countersofobjectchanges,ofupdatemessages)

UpdatessinceIETF#96

•  -00&-01revisions•  YANGModelchanges.

•  NewgroupingsforsubscripXoninfotoallow,restrictwhatismodifiableviaRPC.

•  RemovednoXficaXonsforaddingandremovingreceiversofconfiguredsubscripXons.

•  CollapseddatamodelintosingleYANGmodule(ieb-event-noXficaXons)•  ieb-5277-netmodandieb-5277-netconfwereremovedfromnoXf-netconfdraG

•  Mayneedto“reverse”thesplitandpulloutporXonsrequiredforRFC5277backwardcompaXbility(needseparatenamespace),e.g.create-subscripXonRPC

•  Expanded/renameddefiniXonsfromeventservertopublisher,andclienttosubscriberasapplicable.

•  Cleaned-upwording,terminology,andredundancy

10

5277bis

Nextsteps

open ScrubforcompletenessoferrorcodesanddiagnosXcs

pendingSplitthecurrentsinglemodelintotwotokeeptheexisXngnamespaceforbackwardscompaXbilitywith5277.

pending Move5277backwardscompaXbilityobjectsintonoXf-netconf

pending DefiniXonofNETCONF&vendorcustomstreamtypes

pending ‘Test-only’opXontoseeifasubscripXonmightbeestablished

11

5277bis

UpdatessinceIETF#96

•  -01revision•  SinglesubscripXongoestosingleHTTP2stream.

•  Updatedcallflows.Extensively.•  ShiGtoHTTP2whereavailable•  SSEonlyusedwithRestconfandHTTP1.1DynamicSubscripXons

•  Manyclean-upsofwordingandterminology

12

Restconf/HTTP2

FeedbackRequest#4:HTTP2compaXbilitywithGRPCAgreethatadopXngmessages/exchangesforseamlesstransportoverGRPCimplementaXons?WhocanprovideextraeyestovalidateproposedsoluXon?

TCP TCP Subscriber Publisher

Restconf/HTTP POST (RPC: establish-subscription) HTTP 200 OK (SubID, URI)

Receiver

HTTP POST (URI)

Restconf/HTTP POST (RPC: modify-subscription, SubID) HTTP 200 OK (SubID)

HTTP Data (Notification subscription-modified)

HTTP 200 OK HTTP Data (Notification push-update)

HTTP Data (Notification push-update)

HTTP Headers (end of stream)

7 7

Restconf/HTTP POST (RPC: delete-subscription, SubID) HTTP 200 OK

Restconf/HTTP2

NextSteps

FeedbackRequest#4

HTTP2transportmessagecompaXbilitywithGRPC(needextrasetofeyes)

openDoweinclude3rdpartysignaledsubscripXonswithinmodelsthatneedtobesupportedgenerically,orforaparXculartypeoftransport.

14

Restconf/HTTP2

UpdatessinceIETF#96

•  -00and-01revisions•  AddedCallHomeinsoluXonforconfiguredsubscripXons.

•  ClarifiedsupportformulXplesubscripXononasinglesession.NoneedtosupportmulXplecreate-subscripXon.

•  Addedmappingbetweenterminologyin[yang-push]and[RFC6241].

•  Othereditorialimprovements.

15

NoXf-netconf

FeedbackRequest#5AskReceivertoCallHomeviaaknownPort•  RecommendaXon– ForconfiguredsubscripXon,ifnoNETCONFsessionlivetoReceiverthenPublisheriniXatesaCallHometotheReceiveronaddressandwell-knownportforsubscripXon.Oncesessionisestablished,Publishersends"subscripXon-started"noXficaXon.

•  AssumpXons– ReceiverisawarethatcallsontheconfiguredportareintendedonlyforpushingnoXficaXons.

– ReceiverisreadytoacceptnoXficaXonsonthesessionassoonasitisestablished.

NoXf-netconf

NextSteps

FeedbackRequest#5 ShouldReceiverCallHometoawellknownReceiverPort?

pending MovecreatesubscripXonRFCtothisdocumentasitwillonlybeusedforNETCONFlegacy.

pending ExpressfilterinJSONshouldbedocumented.

17

NoXf-netconf

JointheDezignTeamMee&ngssinceIETF96Berlin(Wed8AMPacific)

2-Nov-2016 ClickforNotes,PPT,&Recording

26-Oct-2016 ClickforNotes&Recording

19-Oct-2016 ClickforNotes&Recording

12-Oct-2016 ClickforNotes&Recording

5-Oct-2016 ClickforNotes&Recording

28-Sep-2016 ClickforNotes&Recording

14-Sep-2016 ClickforNotes&Recording

7-Sep-2016 ClickforNotes&Recording

31-Aug-2016 ClickforNotes&Recording

26-Aug-2016 ClickforNotes&Recording

17-Aug-2016 ClickforNotes&Recording

10-Aug-2016 ClickforNotes,PPT,&Recording

4-Aug-2016 ClickforNotes,DOC,&Recording

27-Jul-2016 ClickforNotes&Recording

AndyBiermanSharonChisholmAlexanderClemmYanGangPeipeiGuoSusanHaresTimJenkinsBalazsLengyelEinarNilsen-NygaardAlbertoGonzalezPrietoMichaelScharfHectorTrevinoAmbikaPrasadTripathyEricVoitKentWatsenGuangyingZheng(Walker)

TM

Thankyou!

FuncXonalParXXoning

EventNoXficaXons YANGDatastorePush5277Mode Enhanced

TypesofSubscripXon Dynamic DynamicandConfigured SubscripXonsperSession one many

NegoXaXon No YesRPCs create establish,modify,delete

ControlPlaneNoXficaXons None started,suspended,resumed,terminated,modified

DataPlaneNoXficaXons noXficaXon +subscripXon-id push-update,push-change-update

NETCONF Yes RESTConf,HTTP,HTTP2 No Yes

Subs

cripti

on

Tran

spor

t

YANGDatastorePushSubscripXonsforEventNoXficaXonsNETCONFTransportforEventNoXficaXonsRESTCONFTransportforEventNoXficaXons

Legend

CompaXbilitywithRFC-527720

Subscrip&onsforEventNo&fica&ons(BaseSubscripXonDraG)•  SupportformanysubscripXons/transport•  Dynamic&Configuredstatemachines•  MulXpleconfiguredreceivers•  Newstreamtypes?•  AuthorizaXonmodelperstream•  RPCs:Establish,modify,delete•  Errorresponses(undererror-info?)•  NoXficaXons:started,suspended,resumed,terminated,modified

YANGDatastorePush(includesfuncXonsaboveBaseSubscripXonDraG):•  Datastoreon-changeandperiodictriggers•  YANGfiltersperRFC6241•  AuthorizaXonmodelperobject•  NegoXaXon

NETCONFTransportforEventNo&fica&ons•  Transportmapping•  5277mode

RESTCONF&HTTPTransportforEventNo&fica&ons•  Transportmappings•  Subscriber/receiverdifferent•  Heartbeatsandclean-up•  SubscripXontoHTTP2stream

4DraGsFuncXonalParXXoning

•  RFC5277&XPATHfilters•  Streamdiscovery•  DataPlaneNoXficaXon•  5277mode&YANGmodel•  Replay•  Monitoring

•  Push-update,Push-change-update•  Newstreamtypes&stuff•  PrioriXzaXon

21

top related