Hi Michael,

Thank you for your posting. Please see inlines with [yz] for some thoughts..

[snipped]

I was surprised by figure 1, that the PEP would be in the core.
It seems to me that doing PEP at the WiFi AP1 would scale much better.
Or, if wired, then at the access switches.
Maybe the issue is that accX and APX are effectively Layer-2 only devices?
If so, then it's probably worth stating that.

[yz] Yes, more text could be added to make it clearer. There are some variants. 
One possibility is as what you mentioned it is a L2 network. Also, in some 
small network, traffic is forced to pass through the core node (tree-root) so 
PEP is placed there for simplicity. Then every AAP would only inform a single 
PEP. Figure 1 tried to elaborate this simplest case. 

I also thought that in the age of SDN-everything (I remain somewhat cynical 
about SDN), that the engineering laptop would get placed into the engineering 
VIP-VLAN, and thus the L2 would be the same, and so the problem of addressing 
goes away.

{ In your example, btw, to make the situation more understandable, the engineer 
should be having a meeting with the sales department, in their board room, and 
the engineer needs access to the engineering file server :-) }

[yz] That sounds like a vivid example. Will try to use it when updating.

Figure 2 is very nice.  I would drop the "SSL" from the VPN, because really, it 
could be any kind of VPN. IPsec, Wireguard, OpenVPN, etc. right?

[yz] Right, SSL is one of the examples. Will drop it in next version.

} When a PEP receives a data packet, it queries the
}   controller for the group IDs of the source and/or destination IP
}  addresses and then enforce the group based policy.  This approach }  
requires an explicit controller able to talk to each and every AAP }  and PEP.

looking up policy at each data packet is pretty unusual in my experience.

Many designers attempt this on their first design, and then learn that it's 
hard to scale and very vulnerable to denial of service attack.

For higher QoS ("VIP") sometimes it is done asynchronously: when a new 
"NetFlow" is detected by the control plane a lookup is done, and then the flow 
is assigned the new QoS after it has already started.  For forbidden 
destinations, it's hard to get right.

So I'm asking: do you really have an architecture like this, where you look 
things up on-demand?
[yz] The policy is provisioned in advance. The lookup is to fetch the group id 
based on ip but not to download the policy rule. So it is only done once for 
the first unknown packet. It is normally used as a complementary mechanism to 
pre-fetching ip to group mapping info to PEP when the cache is missing/expired. 
So grasp based mechanism should be also helpful in this pre-fetching phase 
other than the last-resort lookup stage. I guess this point should be covered 
as well in text.

}   Autonomic Networking (AN) puts the intelligence at the node level, to
}   minimize dependency on human administrators and central management
}   such as a controller.

I'm not sure that this is an accurate characterization of AN.

AN certainly can facilitating distributing intelligence, but I wouldn't say 
that AN mandates it.

[yz] I would like to re-phrase it as " Autonomic Networking (AN) can facilitate 
putting the intelligence at the node level...."

In section 4.1, you dance around the question about whether source IP addresses 
are unique enough to be mapped to users/groups.  IPv4 sources likely are not, 
and will always require some kind of provider domain mapping to go along with 
them.  IPv6 could go either way in the end: architects of campus IPv6 networks 
would be advised to always fold the provider domain info into the IPv6 prefix. 
(It's an argument for running an IPv6-only campus network actually)

you may find that the terminology from:
    https://datatracker.ietf.org/wg/mif/documents/
    RFC7556

_Provisioning Domain_ useful here.  MIF otherwise is about the problem from the 
end-node point of view, not the network point of view!

Section 4.1 suggests, but does not yet say, that PEPs might answer queries from 
other PEPs for which they happen to have cached a result.  Section 4.2 
paragraph two, begins to say that.  Perhaps this concept, that the PEPs help 
each other belongs in the annotation to figure 1?

[yz] I did not expect PEPs help each other in request/reply mode. When 
flooding, it is true that multiple PEPs get the same set of information. If 
PEPs can help each other, that is something requiring a little more 
considerations like inconsistent entry from different PEP, trustship etc. 
Currently AAP is the owner of a particular mapping information.  

okay, so in 5.1, you get to the IP prefix encoding.
I think that yes, you ought to use the
draft-richardson-cbor-network-addresses format here.

You are sending a single address, and there is no point in sending the bits of 
the prefix which are irrelevant, and you need a way to distinguish between
IPv4 and IPv6 in the same spot.

[yz] I have used the ietf- cbor-network-addresses format.

Your security considerations will need to address how the PEPs can trust each 
other, what the impact of a compromise of a PEP's cache, and how, if there are 
no caches of policy information, what the impact of the longer latency to the 
authoritative source of information is.

There is also the question of what happens when policy cache is full, and some 
entries are expunged.

[yz] Will try to address in next version. I guess the first question would be 
whether PEPs helping each other should be allowed or only AAP-PEP communication 
should be allowed. Current document allows the latter only.   

BUT, overall, I think that this is actually a really good document, and a 
really interesting ASA, thank you for posting it to the DT.

Thank you,
Yizhou



--
Michael Richardson <[email protected]>   . o O ( IPv6 IøT consulting )
           Sandelman Software Works Inc, Ottawa and Worldwide




_______________________________________________
Anima mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/anima

Reply via email to