Subject: [sacm] FEEDBACK REQUESTED: ECP Diagrams

From: "Haynes, Dan" <[email-masked]>
Date: Tue, 19 Dec 2017 15:14:10 +0000

Hi Everyone,

Sorry for the delay on this, but, we had an action item to draw up some diagrams for ECP based on the WG discussion at the September Virtual Interim Meeting [1][2]. I have included the diagrams below :).

The first three show the current NETCONF/YANG architecture, NEA architecture, and ECP diagram. After that, there is the revised ECP diagram which was proposed at the meeting and two alternate diagrams that were created based on discussion during that meeting.

Please let us know what you think about the different options good and bad so that we can work together to come up with a diagram that makes the most sense for the group.

Also, let me know if you have any questions.

Thanks,

Danny

[1] https://datatracker.ietf.org/meeting/interim-2017-sacm-03/materials/minutes-interim-2017-sacm-03-201709260900/ (see pages 7-9)

[2] https://datatracker.ietf.org/meeting/interim-2017-sacm-03/materials/slides-interim-2017-sacm-03-sessa-ecp/

=====================================================================================================================================================================

                       +----------------------------+

                       |Server (device)             |

                       |    +--------------------+  |

                      |    |      configuration |  |

            +----+     |    |     ---------------|  |

            |YANG|+    |    | m d  state data    |  |

           |mods||+   |    | e a ---------------|  |

           +----+|| -----> | t t  notifications |  |

            +----+|   |    | a a ---------------|  |

             +----+   |    |      operations    |  |

                      |    +--------------------+  |

                      |           ^                |

                      |           |                |

                      |           v                |

    +------+          |     +-------------+        |

    |      | -------------> |             |        |

    |Client| <rpc>    |     |  NETCONF    |        |

    | (app)|          |     |   engine    |        |

    |      | <------------  |             |        |

    +------+ <rpc-reply>    +-------------+        |

                       |       /        \           |

                       |      /          \          |

                       |     /            \         |

                       | +--------+   +---------+   |

                       | | config |   |system   |+  |

                       | |  data- |   |software ||+ |

                       | |   base |   |component||| |

                       | +--------+   +---------+|| |

                       |               +---------+| |

                       |                +---------+ |

                       +----------------------------+

Figure 1: NETCONF/YANG Architecture (RFC622, Section 3.1)

=====================================================================================================================================================================

    +-------------+                          +--------------+

    |  Posture    |   <--------PA-------->   |   Posture    |

    |  Validators |                          |   Collectors |

    |  (1 .. N)   |                          |   (1 .. N)   |

    +-------------+                          +--------------+

          |                                         |

          |                                         |

          |                                         |

    +-------------+                          +--------------+

    |   Posture   |                          |   Posture    |

    |   Broker    |   <--------PB-------->   |   Broker     |

    |   Server    |                          |   Client     |

    +-------------+                          +--------------+

          |                                         |

          |                                         |

    +-------------+                          +--------------+

    |   Posture   |                          |   Posture    |

    |   Transport |   <--------PT-------->   |   Transport  |

    |   Server    |                          |   Client     |

    |   (1 .. N)  |                          |   (1 .. N)   |

    +-------------+                          +--------------+

       NEA SERVER                               NEA CLIENT

Figure 2: NEA Architecture

=====================================================================================================================================================================
  Server                   Endpoint

                +---------------+        +---------------+

                |               |        |               |

                | +-----------+ |        | +-----------+ |

                | | Posture   | |        | | Posture   | |

                | | Validator | |        | | Collector | |

                | +-----------+ |        | +-----------+ |

                |      |        |        |      |        |

                |      |        |        |      |        |

Repository      |      |        |        |      |        |

+--------+      | +-----------+ |        | +-----------+ |

|        |      | | Posture   | |        | | Posture   | |

|        |<------->| | Server    | |        | | Client    | |

|        |      | +-----------+ |        | +-----------+ |

|        |      |      |        |        |      |        |

|        |      |      |        |        |      |        |

+--------+      |      |        |        |      |        |

                |      |        |        |      |        |

                | +-----------+ |        | +-----------+ |

                | | Comms     | |        | | Comms     | |

                | | Server    | |<------>| | Client    | |

                | +-----------+ |        | +-----------+ |

                |               |        |               |

                +---------------+        +---------------+

Figure 3: Current ECP Diagram

=====================================================================================================================================================================

  Posture Manager              Endpoint

Orchestrator    Repository      +---------------+        +---------------+

+--------+      +--------+      |               |        |               |

|        |      |        |      | +-----------+ |        | +-----------+ |

|        |<---->|        |      | | Posture   | |        | | Posture   | |

|        | pub/ |        |      | | Validator | |        | | Collector | |

|        | sub  |        |      | +-----------+ |        | +-----------+ |

+--------+      |        |      |      |        |        |      |        |

                |        |      |      |        |        |      |        |

Evaluator       |        |      |      |        |        |      |        |
+------+        |        |      | +-----------+ |<-------| +-----------+ |

|      |        |        |      | | Posture   | | report | | Posture   | |

|      |        |        |      | | Collection| |        | | Collection| |

|      |<-----> |        |<-----| | Manager   | | query  | | Engine    | |

|      |request/|        | store| +-----------+ |------->| +-----------+ |

|      |respond |        |      |               |        |               |

|      |        |        |      |               |        |               |

|      |        |        |      +---------------+        +---------------+

+------+        +--------+

Figure 4: Proposed ECP Diagram (Option 1)

=====================================================================================================================================================================
                                                                   Posture Manager              Endpoint

              Orchestrator     +---------------+        +---------------+

                +--------+      |               |        |               |

                |        |      | +-----------+ |        | +-----------+ |

                |        |<---->| | Posture   | |        | | Posture   | |

                |        | pub/ | | Validator | |        | | Collector | |

                |        | sub  | +-----------+ |        | +-----------+ |

                +--------+      |      |        |        |      |        |

                                |      |        |        |      |        |

Evaluator       Repository      |      |        |        |      |        |

+------+        +--------+      | +-----------+ |<-------| +-----------+ |

|      |        |        |      | | Posture   | | report | | Posture   | |

|      |        |        |      | | Collection| |        | | Collection| |

|      |<-----> |        |<-----| | Manager   | | query  | | Engine    | |

|      |request/|        | store| +-----------+ |------->| +-----------+ |

|      |respond |        |      |               |        |               |

|      |        |        |      |               |        |               |

+------+        +--------+      +---------------+        +---------------+

Figure 5: Alternate Diagram Based on WG Discussion (Option 2)

=====================================================================================================================================================================

                Orchestrator

+-----------------------------------------------+

|                                               |

|                                               |

+-----------------------------------------------+

   ^                ^                   ^

   |pub/sub         |pub/sub            |pub/sub

   |                |                   |

   V                v                   v

Evaluator       Repository        Posture Manager              Endpoint

+------+        +--------+      +---------------+        +---------------+

|      |        |        |      |               |        |               |

|      |        |        |      | +-----------+ |        | +-----------+ |

|      |        |        |      | | Posture   | |        | | Posture   | |

|      |        |        |      | | Validator | |        | | Collector | |

|      |        |        |      | +-----------+ |        | +-----------+ |

|      |        |        |      |      |        |        |      |        |

|      |<------>|        |<-----|      |        |        |      |        |

|      |request/|        |store |      |        |        |      |        |

|      |respond |        |      | +-----------+ |<-------| +-----------+ |

|      |        |        |      | | Posture   | | report | | Posture   | |

|      |        |        |      | | Collection| |        | | Collection| |

|      |        |        |      | | Manager   | | query  | | Engine    | |

|      |        |        |      | +-----------+ |------->| +-----------+ |

|      |        |        |      |               |        |               |

|      |        |        |      |               |        |               |

|      |        |        |      +---------------+        +---------------+

+------+        +--------+

Figure 6: Alternate Diagram Based on WG Discussion (Option 3)

=====================================================================================================================================================================