Program för programvarudefinierat nätverk (SDN) måste samtidigt beskriva statiskt vidarebefordrande beteende och dynamiska uppdateringar som svar på händelser. Händelsedrivna uppdateringar är avgörande för att få rätt, men svåra att genomföra korrekt på grund av den höga graden av samstämmighet i nätverk. Befintliga SDN-plattformar erbjuder svaga garantier som kan bryta applikationsinvarianter, vilket leder till problem som tappade paket, försämrade prestanda, säkerhetsöverträdelser, etc. Detta dokument introducerar händelsedrivna konsekventa uppdateringar som är garanterade att bevara väldefinierade beteenden vid övergång mellan konfigurationer som svar på händelser. Vi föreslår nätverksstruktur (NES) för att modellera begränsningar av uppdateringar, t.ex. vilka händelser som kan aktiveras samtidigt och orsakssamband mellan händelser. Vi definierar en förlängning av NetKAT-språket med mutabelt tillstånd, ger semantik till statiska program med NES, och diskuterar bevisligen korrekta strategier för att genomföra NES i SDNs. Slutligen utvärderar vi vårt tillvägagångssätt empiriskt och visar att det ger väldefinierade konsekvensgarantier samtidigt som vi undviker dyra synkroniseringar och paketbuffertar.
Stateful NetKAT REF, som utvecklas samtidigt med SNAP, är ett stateful språk för "eventsdriven" nätverksprogrammering, vilket garanterar konsekvent uppdatering vid övergång mellan konfigurationer som svar på händelser.
Event-driven network programming
{'venue': 'PLDI 2016', 'journal': None, 'mag_field_of_study': ['Computer Science']}