You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/operator-nexus/concepts-access-control-lists.md
+29-39Lines changed: 29 additions & 39 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,58 +9,48 @@ ms.date: 02/09/2024
9
9
ms.custom: template-concept
10
10
---
11
11
12
-
# Access Control Lists Overview
12
+
# Access Control List Azure’s Operator Nexus Network Fabric
13
13
14
-
An Access Control List (ACL) is a list of rules that control the inbound and outbound flow of packets through an interface. The interface can be an Ethernet interface, a sub interface, a port channel interface, or the switch control plane itself.
14
+
## Overview
15
15
16
-
An ACL that is applied to incoming packets is called an **Ingress ACL**. An ACL that is applied to outgoing packets is called an **Egress ACL**.
16
+
Access Control Lists (ACLs) are a set of rules that regulate inbound and outbound packet flow within a network. Azure's Nexus Network Fabric service offers an API-based mechanism to configure ACLs for network-to-network interconnects and layer 3 isolation domain external networks. These APIs enable the specification of traffic classes and performance actions based on defined rules and actions within the ACLs. ACL rules define the data against which packet contents are compared for filtering purposes.
17
17
18
-
An ACL has a Traffic-Policy definition including a set of match criteria and respective actions. The Traffic-Policy can match various conditions and perform actions such as count, drop, log, or police.
18
+
## Objective
19
19
20
-
The available match criteria depend on the ACL type:
20
+
The primary objective of ACLs is to secure and regulate incoming and outgoing tenant traffic flowing through the Nexus Network Fabric via network-to-network interconnects (NNIs) or layer 3 isolation domain external networks. ACL APIs empower administrators to control data rates for specific traffic classes and take action when traffic exceeds configured thresholds. This safeguards tenants from network threats by applying ingress ACLs and protects the network from tenant activities through egress ACLs. ACL implementation simplifies network management by securing networks and facilitating the configuration of bulk rules and actions via APIs.
21
21
22
-
- IPv4 ACLs can match IPv4 source or destination addresses, with L4 modifiers including protocol, port number, and DSCP value.
22
+
## Functionality
23
23
24
-
- IPv6 ACLs can match IPv6 source or destination addresses, with L4 modifiers including protocol, port number.
24
+
ACLs utilize match criteria and actions tailored for different types of network resources, such as NNIs and external networks. ACLs can be applied in two primary forms:
25
25
26
-
- Standard IPv4 ACLs can match only on source IPv4 address.
26
+
-**Ingress ACL**: Controls inbound packet flow.
27
+
-**Egress ACL**: Regulates outbound packet flow.
27
28
28
-
- Standard IPv6 ACLs can match only on source IPv6 address.
29
+
Both types of ACLs can be applied to NNIs or external network resources to filter and manipulate traffic based on various match criteria and actions.
29
30
30
-
ACLs can be either static or dynamic. Static ACLs are processed in order, beginning with the first rule and proceeding until a match is encountered. Dynamic ACLs use the payload keyword to turn an ACL into a group like PortGroups, VlanGroups, IPGroups for use in other ACLs. A dynamic ACL provides the user with the ability to enable or disable ACLs based on access session requirements.
31
+
### Supported network resources:
31
32
32
-
ACLs can be applied to Network to Network interconnect (NNI) or External Network resources. An NNI is a child resource of a Network Fabric. ACLs can be created and linked to an NNI before the Network Fabric is provisioned. ACLs can be updated or deleted after the Network Fabric is deprovisioned.
| Isolation Domain External Network | Yes on External Network with option A | All |
33
37
34
-
This table summarizes the resources that can be associated with an ACL:
38
+
## Match configuration
35
39
40
+
Match criteria are conditions used to match packets based on attributes such as IP address, protocol, port, VLAN, DSCP, ethertype, fragment, TTL, etc. Each match criterion has a name, a sequence number, an IP address type, and a list of match conditions. Match conditions are evaluated using the logical AND operator.
36
41
37
-
| Resource Name | Supported | Default |
38
-
|--|--|--|
39
-
| NNF | Yes | All Production SKUs |
40
-
| Isolation Domain | Yes on External Network with optionA | NA |
41
-
| Network to network interconnect(NNI) | Yes | NA |
42
+
-**dot1q**: Matches packets based on VLAN ID in the 802.1Q tag.
43
+
-**Fragment**: Matches packets based on whether they are IP fragments or not.
44
+
-**IP**: Matches packets based on IP header fields such as source/destination IP address, protocol, and DSCP.
45
+
-**Protocol**: Matches packets based on the protocol type.
46
+
-**Source/Destination**: Matches packets based on port number or range.
47
+
-**TTL**: Matches packets based on the Time-To-Live (TTL) value in the IP header.
48
+
-**DSCP**: Matches packets based on the Differentiated Services Code Point (DSCP) value in the IP header.
42
49
43
-
## Traffic policy
50
+
## Action property of Access Control List
44
51
45
-
A traffic policy is a set of rules that control the flow of packets in and out of a network interface. This section explains the match criteria and actions available for distinct types of network resources.
52
+
The action property of an ACL statement can have one of the following types:
46
53
47
-
-**Match Configuration**: The conditions that are used to match packets. You can match on various attributes, including:
48
-
- IP address
49
-
- Transport protocol
50
-
- Port
51
-
- VLAN ID
52
-
- DSCP
53
-
- Ethertype
54
-
- IP fragmentation
55
-
- TTL
56
-
57
-
Each match criterion has a name, a sequence number, an IP address type, and a list of match conditions. A packet matches the configuration if it meets all the criteria. For example, a match configuration of `protocol tcp, source port 100, destination port 200` matches packets that use the TCP protocol, with source port 100 and destination port 200.
58
-
59
-
-**Actions**: The operations that are performed on the matched packets, including:
60
-
- Count
61
-
- Permit
62
-
- Drop
63
-
64
-
Each match criterion can have one or more actions associated with it.
65
-
66
-
-**Dynamic match configuration**: An optional feature that allows the user to define custom match conditions using field sets and user-defined fields. Field sets are named groups of values that can be used in match conditions, such as port numbers, IP addresses, VLAN IDs, etc. Dynamic match configuration can be provided inline or in a file stored in a blob container. For example, `field-set tcpport1 80, 443, 8080` defines a field set named tcpport1 with three port values, and `user-defined-field gtpv1-tid payload 0 32` defines a user-defined field named gtpv1-tid that matches the first 32 bits of the payload.
54
+
-**Permit**: Allows packets that match specified conditions.
55
+
-**Drop**: Discards packets that match specified conditions.
56
+
-**Count**: Counts the number of packets that match specified conditions.
0 commit comments