Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

A BLOCKCHAIN FOR NETWORK FUNCTION WORKFLOW VALIDATION USING FORWARD PREDICTION

IP.com Disclosure Number: IPCOM000250638D
Publication Date: 2017-Aug-11
Document File: 16 page(s) / 1M

Publishing Venue

The IP.com Prior Art Database

Related People

Andrew Li: AUTHOR [+4]

Abstract

A BlockChain design for the validation of Network Function (NF) workflows is presented. A BlockChain Transaction Processor (BTP) is capable of leveraging existing Application Programming Interfaces provided by each NF to produce transactions containing the INPUT and OUTPUT information of each NF. A Transaction Graph Factory is used between BTPs to form Transaction Graphs before publishing them to the BlockChain. An algorithm called Forward Prediction correctly chains the transactions from the same Transaction Graph together regardless of their arrival orders. In addition, each Transaction Graph is validated with good robustness.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 15% of the total text.

Copyright 2017 Cisco Systems, Inc. 1

A BLOCKCHAIN FOR NETWORK FUNCTION WORKFLOW VALIDATION USING FORWARD PREDICTION

AUTHORS: Andrew Li Chris Metz

Rohan Dhesikan Patricia Sampedro Garcia

CISCO SYSTEMS, INC.

ABSTRACT

A BlockChain design for the validation of Network Function (NF) workflows is

presented. A BlockChain Transaction Processor (BTP) is capable of leveraging existing

Application Programming Interfaces provided by each NF to produce transactions

containing the INPUT and OUTPUT information of each NF. A Transaction Graph Factory

is used between BTPs to form Transaction Graphs before publishing them to the

BlockChain. An algorithm called Forward Prediction correctly chains the transactions from

the same Transaction Graph together regardless of their arrival orders. In addition, each

Transaction Graph is validated with good robustness.

DETAILED DESCRIPTION

Currently, Orchestrated Network Function (NF) workflows (WF) are widely

deployed in private and public clouds. A WF realizing a desired application/user intent can

involve a series of NF operations, each using appropriate data abstractions as input from

the previous function and output to the next. For example, it is common for an orchestrator

to transmit user intent to resource managers (controllers) which in turn output more precise

setup data to subsequent NFs until the WF is established.

This current approach presents challenges for auditing and troubleshooting if any

NF fails to perform its job. Efforts to address these challenges include validation software

and centralized log collectors. The former inspects each NF’s final state (thus forming its

own view) and compares this with the original intent. However, identifying individual

points of failure is not possible due to the invisibility of the WF execution process. The

latter retrieves per-NF log data but requires detailed analysis and extra work to locate

Copyright 2017 Cisco Systems, Inc. 2

dependencies and potential malicious or benign modifications performed by untrusted

parties, thereby invalidating contents.

As described herein, the aforementioned challenges are addressed using three novel

innovations. First, BlockChain is used for recording and validating per-WF individual NF

processing. Second, a Blockchain Transaction Processor (BTP) component supports

simultaneous transparent WF processing and WF/NF blockchain interactions. Third, a

Forward Prediction method predicts intent-based WF NF inputs and outputs with the actual

NF input and outputs. This yields a complete and immutable record of the individual NF

actions, resulting in an orchestrated WF.

First, NFs are abstracted into the following three parts:

• An INPUT from upstream functions or the outside world

• The Function itself which computes OUTPUT based on its INPUT

• The OUTPUT and its TARGET (there may be multiple OUTPUT values; each

OUTPUT is sent towards a TARGET, which may be the function itself that

generated this OUTPUT, another downstream function, or the o...