WEBVTT

1
00:00.000 --> 00:00.500 align:middle line:84%


2
00:00.500 --> 00:02.640 align:middle line:90%
So now we understand
what an API does

3
00:02.640 --> 00:04.740 align:middle line:90%
and where it fits
into the big picture

4
00:04.740 --> 00:07.170 align:middle line:90%
of the software-defined
networking thing that's

5
00:07.170 --> 00:08.340 align:middle line:84%
going on all around us.

6
00:08.340 --> 00:11.040 align:middle line:90%
We know that now an
application can send data

7
00:11.040 --> 00:12.548 align:middle line:84%
to another application.

8
00:12.548 --> 00:14.590 align:middle line:90%
And they just communicate
to each other that way.

9
00:14.590 --> 00:16.980 align:middle line:90%
It's not unlike how
we've been interacting

10
00:16.980 --> 00:18.570 align:middle line:84%
with applications in the past.

11
00:18.570 --> 00:22.060 align:middle line:90%
But now with all this data
flowing all over the place,

12
00:22.060 --> 00:24.840 align:middle line:90%
it's time to start drilling
down into the different types

13
00:24.840 --> 00:25.530 align:middle line:84%
of APIs.

14
00:25.530 --> 00:27.570 align:middle line:90%
You see, with all this
data that's flowing,

15
00:27.570 --> 00:31.672 align:middle line:90%
we now need to categorize what
the purpose of the API does.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

15
00:27.570 --> 00:31.672 align:middle line:90%
we now need to categorize what
the purpose of the API does.

16
00:31.672 --> 00:33.630 align:middle line:90%
So in this Nugget, we're
going to be setting up

17
00:33.630 --> 00:37.410 align:middle line:90%
the northbound API, which
is where we interact

18
00:37.410 --> 00:40.830 align:middle line:90%
with management planes or the
device controllers themselves.

19
00:40.830 --> 00:41.950 align:middle line:84%
Let's get going.

20
00:41.950 --> 00:44.490 align:middle line:90%
So one of the better things
about application developers

21
00:44.490 --> 00:46.050 align:middle line:90%
and APIs in general
is that they've

22
00:46.050 --> 00:50.550 align:middle line:90%
gotten good at
describing what APIs do.

23
00:50.550 --> 00:52.200 align:middle line:90%
And the first API
that we're going

24
00:52.200 --> 00:54.270 align:middle line:90%
to be talking about
and describing

25
00:54.270 --> 00:56.700 align:middle line:84%
is the northbound API.

26
00:56.700 --> 00:59.820 align:middle line:90%
Now, the temptation is for me
to just run with this diagram.

27
00:59.820 --> 01:03.360 align:middle line:90%
But this diagram actually
doesn't lay out the directions
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

27
00:59.820 --> 01:03.360 align:middle line:90%
But this diagram actually
doesn't lay out the directions

28
01:03.360 --> 01:05.110 align:middle line:84%
of the APIs well.

29
01:05.110 --> 01:08.370 align:middle line:90%
I just wanted to set up what
the moving pieces are that we're

30
01:08.370 --> 01:09.870 align:middle line:84%
going to be working with first.

31
01:09.870 --> 01:13.290 align:middle line:90%
We have our application
that we want to interact

32
01:13.290 --> 01:15.210 align:middle line:84%
with the network device itself.

33
01:15.210 --> 01:17.290 align:middle line:90%
Then we have the
centralized controller,

34
01:17.290 --> 01:19.440 align:middle line:90%
which is the brains
of their operation

35
01:19.440 --> 01:22.650 align:middle line:90%
that's orchestrating
any changes that need

36
01:22.650 --> 01:24.310 align:middle line:84%
to happen within the network.

37
01:24.310 --> 01:27.010 align:middle line:90%
Then we have the network
devices or the nodes.

38
01:27.010 --> 01:28.840 align:middle line:90%
So with these three
pieces in mind,

39
01:28.840 --> 01:30.090 align:middle line:84%
I'm going to clear the screen.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

39
01:28.840 --> 01:30.090 align:middle line:84%
I'm going to clear the screen.

40
01:30.090 --> 01:32.910 align:middle line:90%
And we're just going to focus
on just Firepower Management

41
01:32.910 --> 01:35.370 align:middle line:90%
Center for just a second
before we introduce

42
01:35.370 --> 01:37.300 align:middle line:84%
some of the other pieces.

43
01:37.300 --> 01:40.170 align:middle line:90%
So here, we have just
Firepower Management Center.

44
01:40.170 --> 01:42.210 align:middle line:90%
And I want to stress
this part too.

45
01:42.210 --> 01:44.250 align:middle line:90%
What we're about to
describe when we describe

46
01:44.250 --> 01:47.730 align:middle line:90%
the northbound API, this isn't
specific to just Firepower

47
01:47.730 --> 01:48.570 align:middle line:84%
Management Center.

48
01:48.570 --> 01:50.370 align:middle line:90%
We're actually going
to see this in action

49
01:50.370 --> 01:53.610 align:middle line:90%
when we start talking about DNA
Center in the very next skill.

50
01:53.610 --> 01:57.750 align:middle line:90%
This is really applicable to
all software-defined networking

51
01:57.750 --> 01:58.680 align:middle line:84%
solutions.

52
01:58.680 --> 02:02.250 align:middle line:90%
And what we're talking about
first is the northbound API.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

52
01:58.680 --> 02:02.250 align:middle line:90%
And what we're talking about
first is the northbound API.

53
02:02.250 --> 02:03.810 align:middle line:90%
But I'm going to
write this arrow

54
02:03.810 --> 02:06.420 align:middle line:90%
in two different directions
because this is really

55
02:06.420 --> 02:08.139 align:middle line:84%
the flow of data.

56
02:08.139 --> 02:10.710 align:middle line:90%
Data can flow in
this direction, or it

57
02:10.710 --> 02:12.465 align:middle line:84%
can flow in this direction.

58
02:12.465 --> 02:14.340 align:middle line:90%
But down here, we'll
have the southbound API.

59
02:14.340 --> 02:16.350 align:middle line:84%
Over here, we'll have east.

60
02:16.350 --> 02:19.150 align:middle line:90%
And over here, we'll have
west by the end of this skill.

61
02:19.150 --> 02:21.960 align:middle line:90%
So what we're focusing
on first is north.

62
02:21.960 --> 02:24.570 align:middle line:90%
When we talk about
the northbound API,

63
02:24.570 --> 02:29.310 align:middle line:90%
we're typically talking about
our application interacting

64
02:29.310 --> 02:32.910 align:middle line:90%
with the software-defined
networking controller.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

64
02:29.310 --> 02:32.910 align:middle line:90%
with the software-defined
networking controller.

65
02:32.910 --> 02:38.130 align:middle line:90%
The northbound API is where
we set our business intent.

66
02:38.130 --> 02:41.340 align:middle line:90%
It's where we make our
centralized configuration

67
02:41.340 --> 02:42.340 align:middle line:84%
changes.

68
02:42.340 --> 02:44.550 align:middle line:90%
So when our
application is trying

69
02:44.550 --> 02:49.200 align:middle line:90%
to deploy, say, a new
policy or implement changes

70
02:49.200 --> 02:53.220 align:middle line:90%
across the entire topology,
this would be an interaction

71
02:53.220 --> 02:55.350 align:middle line:84%
with the northbound API.

72
02:55.350 --> 02:58.590 align:middle line:90%
And this is what takes place
between our application

73
02:58.590 --> 03:00.460 align:middle line:84%
and the controller itself.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

73
02:58.590 --> 03:00.460 align:middle line:84%
and the controller itself.

74
03:00.460 --> 03:03.450 align:middle line:90%
We could also retrieve
summarized data out

75
03:03.450 --> 03:07.020 align:middle line:90%
of the Firepower Management
Center going in this direction

76
03:07.020 --> 03:10.170 align:middle line:90%
because we want to see maybe,
what are all of our devices

77
03:10.170 --> 03:13.390 align:middle line:90%
that are in a downstate or
have any sort of issues?

78
03:13.390 --> 03:16.200 align:middle line:90%
What is the status
of a specific subnet?

79
03:16.200 --> 03:18.360 align:middle line:84%
Are we having any QoS problems?

80
03:18.360 --> 03:21.990 align:middle line:90%
This is where we retrieve data
out of the controller solution

81
03:21.990 --> 03:24.840 align:middle line:90%
and have our application
ingest that data

82
03:24.840 --> 03:27.160 align:middle line:90%
and make decisions about
what to do with it.

83
03:27.160 --> 03:28.920 align:middle line:90%
So the big thing to
keep in mind when

84
03:28.920 --> 03:31.290 align:middle line:90%
we talk about the
northbound API, this
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

84
03:28.920 --> 03:31.290 align:middle line:90%
we talk about the
northbound API, this

85
03:31.290 --> 03:33.810 align:middle line:90%
is really interacting
with the management

86
03:33.810 --> 03:36.540 align:middle line:84%
plane of our entire network.

87
03:36.540 --> 03:39.180 align:middle line:90%
And this is going to
be the primary target

88
03:39.180 --> 03:40.990 align:middle line:84%
for our application.

89
03:40.990 --> 03:43.265 align:middle line:90%
Now, this is only one
of the four directions.

90
03:43.265 --> 03:44.640 align:middle line:90%
So in the next
few Nuggets, we're

91
03:44.640 --> 03:45.670 align:middle line:84%
going to talk a little bit more.

92
03:45.670 --> 03:47.170 align:middle line:90%
We're going to add
a little bit more

93
03:47.170 --> 03:48.900 align:middle line:84%
to the pieces of this puzzle.

94
03:48.900 --> 03:51.640 align:middle line:90%
But this is introducing
the northbound API.

95
03:51.640 --> 03:54.210 align:middle line:90%
This is where our business
intent and policies

96
03:54.210 --> 03:56.730 align:middle line:90%
are interacting with the
centralized networking

97
03:56.730 --> 03:57.392 align:middle line:84%
controller.

98
03:57.392 --> 03:59.100 align:middle line:90%
I hope this has been
informative for you.

99
03:59.100 --> 04:01.700 align:middle line:90%
And I'd like to thank
you for viewing.
WEBVTT
X-TIMESTAMP-MAP=LOCAL:00:00:00.000,MPEGTS:900000

99
03:59.100 --> 04:01.700 align:middle line:90%
And I'd like to thank
you for viewing.
