- So let's go over what is pxGrid.
And basically pxGrid stands for the platform exchange grid.
And it's a technology
that Cisco created to integrate Cisco products
like the Cisco identity service engine
with third party solutions.
And it basically,
it allows you to maintain threat visibility
and accelerates the capabilities of instant response
in order for you to of course, detect, investigate, contain
and recover security incidents.
Right? So now the Cisco pxGrid provides a unified method
of publishing and subscribing to relevant context, you know
with the platforms that actually support it
for those third party integrations.
So for example, you can actually integrate, you know
non Cisco products with the Cisco eyes
and other Cisco products as well.
Now I have provided here a few links that provide detail
information about pxGrid and the supported integration.
However, I also want to at least, you know
go over a few of the highlights
of the protocol and also invite you to visit Devnet
as I've been reminding you throughout the course
because you actually have different exercises
that you can actually complete and tons and tons
of details on how to actually use pxGrid with ice.
And also with, you know, other implementations
using web sockets, using rest APIs, using things
like the stump protocol or the simple text oriented message
protocol. And they also have, you know, XMPP examples and
and some other ones.
Now, as far as the architecture, let's go
over the architecture.
Now, in this example, I have a high level architecture where
two pxGrid servers, basically controllers, communicate
with different participant notes, right?
Now in pxGrid.
A participant note does not communicate directly
with pxGrid server.
Basically they make programmatic calls to the grid
client library or GCL, right?
And then the GCL will actually communicate and connect
to the pxGrid server.
Now some deployments may actually have only a few notes, but
in large organizations, we may actually encounter thousands
upon thousands of notes, right?
So it, it can actually scale, you know, fairly
fairly significantly.
Now there are two different types of pxGrid clients.
A pxGrid, service consumer, and a pxGrid service provider.
Now here I'm actually illustrating or, you know
demonstrating the typical pxGrid, client flow.
Now all pxGrid clients need to authenticate using
certificate based authentication or using a user
name and password, right?
Now you can generate passwords with a pxGrid account
create API.
However, SSL based authentication we use
in certificate is far more secure or stronger, right?
And it is recommended by Cisco
as the way to authenticate pxGrid clients, right?
So at all possible, you know
if you can actually perform certificate bases
as authentication, definitely do that, right?
Now in Cisco ice, you can generate
and reuse certificates for pxGrid clients as well.
Now, all pxgrid clients must request to
activate their accounts on the pxGrid server via REST API.
And these clients poll
on this REST API call using an enabled message
that is actually received from the server.
Now, service providers use the register
and on register service APIs to provide
and update the necessary URLs
from which their services are basically accessible
for other pxGrid clients.
All the clients use the server lookup API.
And basically this is actually done to dynamically
discover all available provider services
and their locations.
Now pxGrid clients can then perform rest based API queries
via the service query and subscribed API
or they can actually build socket connections
to receive, you know, information from these participants.
Now Cisco provides sample Java go
and Python code that can be obtained
from this (inaudible) repository that I'm highlighting
in the screen.
You don't actually have to go
into the details and, you know, because some
of the concentrations exams like the S auto, and
of course the CCIE go into very, very detailed, you know
examples and expect you to actually program in there.
But at least at the, for the core exam
you need to become familiar
with the high level architecture of pxGrid.
What are the pxGrid servers and clients and controllers
and also, you know, at least recognize some example code
on what is actually doing.
And in this case, of course, you know
to integrate with different APIs, like the Cisco is API.