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
+28-40Lines changed: 28 additions & 40 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,58 +9,46 @@ ms.date: 02/09/2024
9
9
ms.custom: template-concept
10
10
---
11
11
12
-
# Access Control Lists Overview
12
+
# Access Control List in Azure 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
+
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.
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
+
## Objective
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
+
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.
19
19
20
-
The available match criteria depend on the ACL type:
20
+
## Functionality
21
21
22
-
- IPv4 ACLs can match IPv4 source or destination addresses, with L4 modifiers including protocol, port number, and DSCP value.
22
+
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:
23
23
24
-
- IPv6 ACLs can match IPv6 source or destination addresses, with L4 modifiers including protocol, port number.
24
+
-**Ingress ACL**: Controls inbound packet flow.
25
+
-**Egress ACL**: Regulates outbound packet flow.
25
26
26
-
- Standard IPv4 ACLs can match only on source IPv4 address.
27
+
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.
27
28
28
-
- Standard IPv6 ACLs can match only on source IPv6 address.
29
+
### Supported network resources:
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.
| Isolation Domain External Network | Yes on External Network with option A | All |
31
35
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.
36
+
## Match configuration
33
37
34
-
This table summarizes the resources that can be associated with an ACL:
38
+
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.
35
39
40
+
-**dot1q**: Matches packets based on VLAN ID in the 802.1Q tag.
41
+
-**Fragment**: Matches packets based on whether they are IP fragments or not.
42
+
-**IP**: Matches packets based on IP header fields such as source/destination IP address, protocol, and DSCP.
43
+
-**Protocol**: Matches packets based on the protocol type.
44
+
-**Source/Destination**: Matches packets based on port number or range.
45
+
-**TTL**: Matches packets based on the Time-To-Live (TTL) value in the IP header.
46
+
-**DSCP**: Matches packets based on the Differentiated Services Code Point (DSCP) value in the IP header.
36
47
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 |
48
+
## Action property of Access Control List
42
49
43
-
## Traffic policy
50
+
The action property of an ACL statement can have one of the following types:
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.
46
-
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.
52
+
-**Permit**: Allows packets that match specified conditions.
53
+
-**Drop**: Discards packets that match specified conditions.
54
+
-**Count**: Counts the number of packets that match specified conditions.
0 commit comments