L2TP - Layer 2 Tunneling Protocol
What is L2TP (Inside VPN)?
L2TP (Layer 2 Tunneling Protocol) is commonly used in combination with IPsec to create secure VPN tunnels. L2TP handles the tunneling of data, while IPsec provides encryption and authentication, making the combination a secure and widely supported VPN solution. Think of it as a secure pipeline where L2TP builds the tunnel and IPsec locks it with encryption and integrity checks.
Why is L2TP important inside VPN?
Secure Tunneling – When paired with IPsec, it ensures both tunneling and encryption.
Cross-Platform Compatibility – Supported by most operating systems and VPN clients.
Layer 2 Flexibility – Can tunnel non-IP protocols over IP networks.
Widely Used – Common in enterprise VPNs and personal VPN services.
How L2TP works (in simple steps):
A user initiates a VPN connection using L2TP.
IPsec establishes a secure encrypted channel.
L2TP creates a tunnel within the encrypted IPsec connection.
Data is encapsulated and encrypted before transmission.
The VPN server decrypts and decapsulates the data and forwards it to the destination.
Where is L2TP used (inside VPN)?
Corporate VPNs – For secure remote access to internal networks.
Personal VPN Services – Offered by many commercial VPN providers.
Mobile VPN Access – Supported on mobile devices for secure connectivity.
Cross-Platform VPNs – Works across Windows, macOS, Linux, Android, and iOS.
Secure Public Wi-Fi Access – Protects data on untrusted networks.
Which OSI Layer does this protocol belong to?
L2TP operates at the Data Link Layer (Layer 2) of the OSI model.
It encapsulates Layer 2 frames rather than just IP packets.
This allows it to tunnel non-IP traffic and maintain protocol independence.
When combined with IPsec, it delivers Layer 2 tunneling with Layer 3 encryption.
Topics in this section,
In this section, you are going to learn
Terminology
Version Info
L2TP Version |
RFC |
Year |
Core Idea / Contribution |
---|---|---|---|
L2TP over IPsec |
|||
RFC 3193 |
2001 |
Defines how to secure L2TP using IPsec for encryption |
|
and authentication. |
|||
L2TP v2 (Standardized) |
|||
RFC 2661 |
1999 |
Official specification of L2TP; supports tunneling of |
|
PPP over IP networks. |
|||
Updated L2TPv2 Specification |
|||
RFC 9601 |
2024 |
Updates and clarifies RFC 2661 with modern practices and corrections. |
|
L2TP Extensions for PPP LCP Negotiation |
|||
RFC 3308 |
2002 |
Adds support for LCP negotiation over L2TP tunnels. |
|
L2TP MIB (Management Info Base) |
|||
RFC 3371 |
2002 |
Defines SNMP MIB for managing L2TP tunnels and |
|
sessions. |
Setup
Setup
L2TP Control Message
S.No |
Protocol Packets |
Description |
Size(Bytes) |
---|---|---|---|
1 |
L2TP Control Message |
Used for session setup and management within the encrypted IPsec tunnel. |
1240+ bytes |
Header |
Contains flags, version, length, tunnel/session IDs, and control message type. |
612 |
|
Flags and Version |
Indicates message type (control/data), presence of length, sequence numbers, etc. |
2 |
|
Length (optional) |
Total length of the message (if L bit is set). |
2 |
|
Tunnel ID |
Identifies the control connection. |
2 |
|
Session ID |
Identifies the session within the tunnel. |
2 |
|
Ns (optional) |
Sequence number for reliable delivery. |
2 |
|
Nr (optional) |
Acknowledgment number. |
2 |
|
AVPs |
Attribute-Value Pairs carrying control info like hostname, framing type, etc. |
Variable |
L2TP Data Message
S.No |
Protocol Packets |
Description |
Size(Bytes) |
---|---|---|---|
2 |
L2TP Data Message |
Carries encrypted PPP frames securely through the IPsec tunnel. |
640+ bytes |
Header |
Similar to control message but without AVPs. |
612 |
|
Tunnel ID |
Identifies the tunnel. |
2 |
|
Session ID |
Identifies the session. |
2 |
|
PPP Payload |
Encapsulated PPP frame (e.g., IP packet). |
Variable |
|
Payload |
Actual user data (e.g., IP packet). |
Variable |
S.no |
Use Case |
Description |
---|---|---|
1 |
Remote Access VPN |
Enables remote users to securely connect to a private network over the internet. |
2 |
Site-to-Site VPN |
Connects two geographically separated networks securely using L2TP/IPsec tunnels. |
3 |
Secure Communication |
Provides encryption and authentication when paired with IPsec. |
4 |
Mobile Workforce Access |
Allows mobile employees to securely access enterprise resources from any location. |
5 |
Public Wi-Fi Protection |
Secures user data on untrusted networks like public hotspots. |
6 |
Cross-Platform VPN Support |
Works across Windows, macOS, Linux, Android, and iOS with native support. |
7 |
BYOD Security |
Protects enterprise data on employee-owned devices via secure VPN tunnels. |
8 |
Compliance & Policy Enforcement |
Helps enforce security policies and compliance through encrypted access. |
S.no |
Feature |
Description |
---|---|---|
1 |
Tunneling |
Encapsulates Layer 2 frames (e.g., PPP) for transmission over IP networks. |
2 |
Session Multiplexing |
Allows multiple sessions within a single tunnel, optimizing resource usage. |
3 |
Control and Data Separation |
Uses separate channels for control (setup/teardown) and data (payload). |
4 |
Protocol Independence |
Can tunnel various Layer 2 protocols, not just IPuseful for legacy systems. |
5 |
UDP-Based Transport |
Operates over UDP (port 1701), enabling NAT traversal and easier firewall configuration. |
6 |
No Native Encryption |
L2TP does not encrypt data; typically paired with IPsec for security (L2TP/IPsec). |
7 |
AVP-Based Control Messages |
Uses Attribute-Value Pairs (AVPs) for flexible and extensible control signaling. |
8 |
Reliable Control Messaging |
Supports sequencing and acknowledgment for reliable delivery of control messages. |
9 |
Tunnel and Session IDs |
Identifies and manages multiple logical connections within a single tunnel. |
10 |
Extensibility (L2TPv3) |
L2TPv3 supports transporting Ethernet, Frame Relay, and ATM over IP networks. |
Tunneling - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
L2TP Tunnel Establishment |
Initiate L2TP tunnel |
Tunnel established |
2 |
L2TP over IPsec |
Use L2TP with IPsec encryption |
Tunnel established securely |
3 |
L2TP without IPsec |
Use L2TP without IPsec |
Tunnel established (unencrypted) |
4 |
Invalid L2TP Credentials |
Use wrong username/password |
Tunnel fails |
5 |
Correct L2TP Credentials |
Use valid credentials |
Tunnel established |
6 |
L2TP Tunnel Teardown |
Disconnect tunnel |
Tunnel closed gracefully |
7 |
L2TP Keepalive Test |
Monitor keepalive packets |
Tunnel remains active |
8 |
L2TP NAT Traversal |
Connect behind NAT |
Tunnel established |
9 |
L2TP Port Blocking |
Block UDP 1701 |
Tunnel fails |
10 |
L2TP with IPsec Port Blocking |
Block UDP 500/4500 |
Tunnel fails |
11 |
L2TP Tunnel Reconnect |
Reconnect after disconnection |
Tunnel re-established |
12 |
L2TP Tunnel Timeout |
Idle timeout reached |
Tunnel closed |
13 |
L2TP Tunnel with IPv6 |
Use IPv6 for tunnel |
Tunnel established |
14 |
L2TP Tunnel with IPv4 |
Use IPv4 for tunnel |
Tunnel established |
15 |
L2TP Tunnel with Dual Stack |
Use both IPv4 and IPv6 |
Tunnel established |
16 |
L2TP Tunnel with Compression |
Enable compression |
Tunnel established with compression |
17 |
L2TP Tunnel with Fragmentation |
Send large packets |
Packets transmitted successfully |
18 |
L2TP Tunnel with MTU Test |
Vary MTU size |
Tunnel adapts or fragments |
19 |
L2TP Tunnel with QoS |
Apply QoS settings |
Traffic prioritized |
20 |
L2TP Tunnel with Split Tunneling |
Enable split tunneling |
Only specific traffic routed |
21 |
L2TP Tunnel with Full Tunneling |
Route all traffic through VPN |
All traffic tunneled |
22 |
L2TP Tunnel with DNS Leak Test |
Check DNS resolution path |
No DNS leak |
23 |
L2TP Tunnel with Packet Loss |
Simulate packet loss |
Tunnel remains stable |
24 |
L2TP Tunnel with High Latency |
Introduce latency |
Tunnel remains stable |
25 |
L2TP Tunnel with Jitter |
Introduce jitter |
Tunnel remains stable |
26 |
L2TP Tunnel with Firewall |
Place behind firewall |
Tunnel established (if allowed) |
27 |
L2TP Tunnel with Proxy |
Use HTTP/SOCKS proxy |
Tunnel fails or bypasses proxy |
28 |
L2TP Tunnel with VPN Client |
Use standard VPN client |
Tunnel established |
29 |
L2TP Tunnel with VPN Server |
Use standard VPN server |
Tunnel established |
30 |
L2TP Tunnel with Mobile Device |
Connect from mobile |
Tunnel established |
31 |
L2TP Tunnel with Roaming |
Roam between networks |
Tunnel re-established |
32 |
L2TP Tunnel with Failover |
Failover to backup link |
Tunnel re-established |
33 |
L2TP Tunnel with Load Balancer |
Use load balancer |
Tunnel established |
34 |
L2TP Tunnel with Virtual Machine |
Connect from VM |
Tunnel established |
35 |
L2TP Tunnel with Container |
Connect from container |
Tunnel established |
36 |
L2TP Tunnel with Windows Client |
Use Windows built-in client |
Tunnel established |
37 |
L2TP Tunnel with Linux Client |
Use Linux client (e.g., xl2tpd) |
Tunnel established |
38 |
L2TP Tunnel with macOS Client |
Use macOS built-in client |
Tunnel established |
39 |
L2TP Tunnel with Android Client |
Use Android VPN settings |
Tunnel established |
40 |
L2TP Tunnel with iOS Client |
Use iOS VPN settings |
Tunnel established |
41 |
L2TP Tunnel with Logging Enabled |
Enable logs |
Logs show tunnel events |
42 |
L2TP Tunnel with Debug Mode |
Enable debug mode |
Detailed logs available |
43 |
L2TP Tunnel with Authentication |
Use PAP/CHAP/MS-CHAPv2 |
Tunnel established |
44 |
L2TP Tunnel with Certificate Auth |
Use certificate-based auth |
Tunnel established |
45 |
L2TP Tunnel with RADIUS |
Use RADIUS for auth |
Tunnel established |
46 |
L2TP Tunnel with LDAP |
Use LDAP for auth |
Tunnel established |
47 |
L2TP Tunnel with Group Policy |
Apply group-based policies |
Policies enforced |
48 |
L2TP Tunnel with ACLs |
Apply access control lists |
Traffic filtered |
49 |
L2TP Tunnel with Bandwidth Limit |
Apply bandwidth limits |
Traffic rate limited |
50 |
L2TP Tunnel with Session Limit |
Limit number of sessions |
Excess sessions denied |
Session Multiplexing - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
Basic Multiplexing Test |
Establish multiple sessions over one tunnel |
All sessions active |
2 |
Session Isolation |
Ensure sessions dont interfere with each other |
Data integrity maintained |
3 |
Session Prioritization |
Assign priority to sessions |
High-priority traffic preferred |
4 |
Session Timeout |
Let one session idle |
Only idle session times out |
5 |
Session Reconnection |
Reconnect a dropped session |
Session resumes |
6 |
Session Termination |
Terminate one session |
Other sessions unaffected |
7 |
Max Session Limit |
Reach max allowed sessions |
New sessions rejected |
8 |
Session Load Balancing |
Distribute load across sessions |
Balanced traffic |
9 |
Session Bandwidth Control |
Apply bandwidth limits per session |
Limits enforced |
10 |
Session Encryption Test |
Encrypt each session separately |
Data encrypted per session |
11 |
Session Authentication |
Authenticate each session |
Only valid sessions allowed |
12 |
Session Logging |
Enable session-level logging |
Logs show individual sessions |
13 |
Session ID Collision |
Simulate duplicate session IDs |
Collision handled |
14 |
Session Multiplexing over TCP |
Use TCP as transport |
Sessions multiplexed |
15 |
Session Multiplexing over UDP |
Use UDP as transport |
Sessions multiplexed |
16 |
Session Multiplexing with NAT |
Use NAT environment |
Sessions maintained |
17 |
Session Multiplexing with Firewall |
Pass through firewall |
Sessions allowed |
18 |
Session Multiplexing with Proxy |
Use HTTP/SOCKS proxy |
Sessions multiplexed |
19 |
Session Multiplexing with IPv6 |
Use IPv6 transport |
Sessions multiplexed |
20 |
Session Multiplexing with IPv4 |
Use IPv4 transport |
Sessions multiplexed |
21 |
Session Multiplexing with Roaming |
Roam between networks |
Sessions persist |
22 |
Session Multiplexing with Failover |
Failover to backup link |
Sessions re-established |
23 |
Session Multiplexing with VPN |
Use VPN tunnel |
Sessions multiplexed |
24 |
Session Multiplexing with TLS |
Use TLS encryption |
Sessions secured |
25 |
Session Multiplexing with DTLS |
Use DTLS encryption |
Sessions secured |
26 |
Session Multiplexing with Compression |
Enable compression |
Data compressed per session |
27 |
Session Multiplexing with Fragmentation |
Send large packets |
Packets reassembled per session |
28 |
Session Multiplexing with QoS |
Apply QoS policies |
Traffic prioritized |
29 |
Session Multiplexing with Congestion |
Simulate congestion |
Sessions adapt |
30 |
Session Multiplexing with Packet Loss |
Drop packets |
Sessions recover |
31 |
Session Multiplexing with Jitter |
Introduce jitter |
Sessions remain stable |
32 |
Session Multiplexing with Delay |
Introduce delay |
Sessions remain stable |
33 |
Session Multiplexing with Replay |
Replay session packets |
Replay detected |
34 |
Session Multiplexing with IDS |
Monitor with IDS |
Sessions logged |
35 |
Session Multiplexing with DPI |
Deep packet inspection |
Sessions identified |
36 |
Session Multiplexing with Logging |
Enable full logging |
Logs show session activity |
37 |
Session Multiplexing with Monitoring |
Use monitoring tools |
Sessions visible |
38 |
Session Multiplexing with Analytics |
Analyze session data |
Metrics collected |
39 |
Session Multiplexing with VM |
Use virtual machine |
Sessions multiplexed |
40 |
Session Multiplexing with Container |
Use containerized app |
Sessions multiplexed |
41 |
Session Multiplexing with Mobile |
Use mobile client |
Sessions multiplexed |
42 |
Session Multiplexing with Desktop |
Use desktop client |
Sessions multiplexed |
43 |
Session Multiplexing with Server |
Use server endpoint |
Sessions multiplexed |
44 |
Session Multiplexing with Cloud |
Use cloud endpoint |
Sessions multiplexed |
45 |
Session Multiplexing with IoT |
Use IoT devices |
Sessions multiplexed |
46 |
Session Multiplexing with API |
Use API to manage sessions |
Sessions controlled via API |
47 |
Session Multiplexing with CLI |
Use CLI to manage sessions |
Sessions controlled via CLI |
48 |
Session Multiplexing with GUI |
Use GUI to manage sessions |
Sessions visible and manageable |
49 |
Session Multiplexing with ACLs |
Apply access control |
Sessions filtered |
50 |
Session Multiplexing with Policy |
Apply session policies |
Policies enforced |
Control and Data Separation - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
Basic Separation Test |
Establish tunnel and verify control/data paths |
Separate paths confirmed |
2 |
Control Plane Packet Inspection |
Inspect control packets |
Only signaling messages seen |
3 |
Data Plane Packet Inspection |
Inspect data packets |
Only user data seen |
4 |
Control Plane Encryption |
Encrypt control messages |
Encrypted signaling verified |
5 |
Data Plane Encryption |
Encrypt data traffic |
Encrypted data verified |
6 |
Control Plane Authentication |
Authenticate control messages |
Only valid messages accepted |
7 |
Data Plane Authentication |
Authenticate data traffic |
Only valid data accepted |
8 |
Control Plane Failure |
Simulate control channel failure |
Data traffic stops or reroutes |
9 |
Data Plane Failure |
Simulate data channel failure |
Control plane remains active |
10 |
Control Plane Recovery |
Recover control channel |
Tunnel re-established |
11 |
Data Plane Recovery |
Recover data channel |
Data resumes |
12 |
Control Plane Timeout |
Let control session idle |
Session times out |
13 |
Data Plane Timeout |
Let data session idle |
Session times out |
14 |
Control Plane Logging |
Enable logging |
Logs show control events |
15 |
Data Plane Logging |
Enable logging |
Logs show data flow |
16 |
Control Plane Replay Protection |
Replay control messages |
Messages dropped |
17 |
Data Plane Replay Protection |
Replay data packets |
Packets dropped |
18 |
Control Plane with NAT |
Use NAT for control path |
Control messages routed |
19 |
Data Plane with NAT |
Use NAT for data path |
Data routed correctly |
20 |
Control Plane with Firewall |
Block control port |
Tunnel setup fails |
21 |
Data Plane with Firewall |
Block data port |
Data transfer fails |
22 |
Control Plane with TLS |
Use TLS for control channel |
Secure signaling |
23 |
Data Plane with IPsec |
Use IPsec for data channel |
Secure data transfer |
24 |
Control Plane with IPv6 |
Use IPv6 for control path |
Tunnel established |
25 |
Data Plane with IPv6 |
Use IPv6 for data path |
Data transferred |
26 |
Control Plane with IPv4 |
Use IPv4 for control path |
Tunnel established |
27 |
Data Plane with IPv4 |
Use IPv4 for data path |
Data transferred |
28 |
Control Plane with Roaming |
Roam between networks |
Control path re-established |
29 |
Data Plane with Roaming |
Roam between networks |
Data path re-established |
30 |
Control Plane with Failover |
Failover control path |
Tunnel remains active |
31 |
Data Plane with Failover |
Failover data path |
Data resumes |
32 |
Control Plane with Load Balancer |
Use load balancer |
Control messages routed |
33 |
Data Plane with Load Balancer |
Use load balancer |
Data routed correctly |
34 |
Control Plane with Proxy |
Use proxy for control path |
Tunnel setup succeeds |
35 |
Data Plane with Proxy |
Use proxy for data path |
Data routed |
36 |
Control Plane with VPN |
Use VPN for control path |
Tunnel setup succeeds |
37 |
Data Plane with VPN |
Use VPN for data path |
Data routed securely |
38 |
Control Plane with Compression |
Enable compression |
Control messages compressed |
39 |
Data Plane with Compression |
Enable compression |
Data compressed |
40 |
Control Plane with Congestion |
Simulate congestion |
Control messages delayed |
41 |
Data Plane with Congestion |
Simulate congestion |
Data throughput reduced |
42 |
Control Plane with Packet Loss |
Drop control packets |
Tunnel setup retries |
43 |
Data Plane with Packet Loss |
Drop data packets |
Retransmissions occur |
44 |
Control Plane with Monitoring |
Monitor control traffic |
Events visible |
45 |
Data Plane with Monitoring |
Monitor data traffic |
Traffic visible |
46 |
Control Plane with ACLs |
Apply ACLs to control path |
Unauthorized messages blocked |
47 |
Data Plane with ACLs |
Apply ACLs to data path |
Unauthorized traffic blocked |
48 |
Control Plane with Policy |
Apply control policies |
Policies enforced |
49 |
Data Plane with Policy |
Apply data policies |
Policies enforced |
50 |
Control/Data Plane Sync Test |
Sync control and data sessions |
Sessions aligned |
Protocol Independence - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
IPv4 over VPN |
Send IPv4 traffic through tunnel |
Traffic delivered |
2 |
IPv6 over VPN |
Send IPv6 traffic through tunnel |
Traffic delivered |
3 |
ICMP over VPN |
Send ping/echo requests |
Replies received |
4 |
TCP over VPN |
Establish TCP connection |
Connection succeeds |
5 |
UDP over VPN |
Send UDP packets |
Packets delivered |
6 |
Multicast over VPN |
Send multicast traffic |
Traffic delivered (if supported) |
7 |
Broadcast over VPN |
Send broadcast traffic |
Traffic delivered (if supported) |
8 |
GRE over VPN |
Encapsulate GRE packets |
GRE traffic tunneled |
9 |
IPsec over VPN |
Tunnel IPsec traffic |
IPsec packets delivered |
10 |
L2TP over VPN |
Tunnel L2TP traffic |
L2TP packets delivered |
11 |
PPTP over VPN |
Tunnel PPTP traffic |
PPTP packets delivered |
12 |
HTTP over VPN |
Access web server |
Page loads successfully |
13 |
HTTPS over VPN |
Access secure web server |
Page loads securely |
14 |
FTP over VPN |
Transfer files using FTP |
Files transferred |
15 |
SSH over VPN |
Connect via SSH |
Session established |
16 |
DNS over VPN |
Resolve domain names |
DNS responses received |
17 |
SMB over VPN |
Access shared folders |
Shares accessible |
18 |
RDP over VPN |
Remote desktop session |
Session established |
19 |
VoIP over VPN |
Make VoIP call |
Call connects |
20 |
SIP over VPN |
Use SIP signaling |
SIP messages delivered |
21 |
RTP over VPN |
Stream RTP media |
Media plays smoothly |
22 |
SNMP over VPN |
Monitor devices |
SNMP responses received |
23 |
NFS over VPN |
Mount NFS share |
Share accessible |
24 |
Telnet over VPN |
Connect via Telnet |
Session established |
25 |
MQTT over VPN |
Publish/subscribe to MQTT broker |
Messages exchanged |
26 |
CoAP over VPN |
Send CoAP requests |
Responses received |
27 |
SCTP over VPN |
Use SCTP protocol |
Traffic delivered |
28 |
BGP over VPN |
Exchange BGP routes |
Routes exchanged |
29 |
OSPF over VPN |
Exchange OSPF routing info |
Routes exchanged |
30 |
EIGRP over VPN |
Exchange EIGRP routing info |
Routes exchanged |
31 |
DHCP over VPN |
Request IP via DHCP |
IP assigned |
32 |
TFTP over VPN |
Transfer file via TFTP |
File transferred |
33 |
NetBIOS over VPN |
Discover network devices |
Devices discovered |
34 |
mDNS over VPN |
Use multicast DNS |
Services discovered |
35 |
LLDP over VPN |
Send LLDP packets |
Neighbors discovered |
36 |
IPX/SPX over VPN |
Send legacy IPX/SPX traffic |
Traffic delivered |
37 |
AppleTalk over VPN |
Send AppleTalk traffic |
Traffic delivered |
38 |
GTP over VPN |
Tunnel GTP packets |
GTP traffic delivered |
39 |
MPLS over VPN |
Send MPLS-labeled packets |
Labels preserved |
40 |
VXLAN over VPN |
Tunnel VXLAN traffic |
VXLAN traffic delivered |
41 |
WireGuard over VPN |
Tunnel WireGuard traffic |
Traffic delivered |
42 |
QUIC over VPN |
Use QUIC protocol |
Traffic delivered |
43 |
WebRTC over VPN |
Establish WebRTC session |
Media exchanged |
44 |
IP-in-IP over VPN |
Tunnel IP-in-IP packets |
Traffic delivered |
45 |
Protocol Switching Test |
Switch between protocols mid-session |
No disruption |
46 |
Mixed Protocols Test |
Send multiple protocols simultaneously |
All traffic delivered |
47 |
Protocol Filtering Test |
Apply filters to specific protocols |
Only allowed protocols pass |
48 |
Protocol Logging Test |
Log protocol types |
Logs show correct protocol types |
49 |
Protocol Performance Benchmark |
Measure performance per protocol |
Metrics recorded |
50 |
Protocol Compatibility Test |
Test with various client OS/protocols |
All supported protocols work |
UDP-Based Transport - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
Basic UDP Tunnel Establishment |
Establish VPN tunnel over UDP |
Tunnel established |
2 |
UDP Port Availability |
Check if UDP port is open |
Port accessible |
3 |
UDP NAT Traversal |
Connect through NAT using UDP |
Tunnel established |
4 |
UDP Firewall Traversal |
Pass through firewall with UDP |
Tunnel established |
5 |
UDP Packet Loss |
Simulate packet loss |
Tunnel remains stable |
6 |
UDP Packet Reordering |
Reorder packets |
Tunnel handles reordering |
7 |
UDP Packet Duplication |
Duplicate packets |
Tunnel handles duplicates |
8 |
UDP Packet Fragmentation |
Send large packets |
Packets reassembled correctly |
9 |
UDP Packet Size Limit |
Send max-size UDP packet |
Packet delivered |
10 |
UDP Keepalive Mechanism |
Monitor keepalive packets |
Tunnel remains active |
11 |
UDP Session Timeout |
Let session idle |
Tunnel times out |
12 |
UDP Session Reconnect |
Reconnect after timeout |
Tunnel re-established |
13 |
UDP with Encryption |
Encrypt UDP traffic |
Data secured |
14 |
UDP with Authentication |
Authenticate UDP packets |
Only valid packets accepted |
15 |
UDP with Compression |
Enable compression |
Data compressed |
16 |
UDP with IPv4 |
Use IPv4 transport |
Tunnel established |
17 |
UDP with IPv6 |
Use IPv6 transport |
Tunnel established |
18 |
UDP with Dual Stack |
Use both IPv4 and IPv6 |
Tunnel established |
19 |
UDP with TLS |
Use TLS over UDP (e.g., DTLS) |
Secure tunnel established |
20 |
UDP with DTLS |
Use DTLS for encryption |
Secure tunnel established |
21 |
UDP with VPN Client |
Use standard VPN client |
Tunnel established |
22 |
UDP with VPN Server |
Use standard VPN server |
Tunnel established |
23 |
UDP with Mobile Device |
Connect from mobile |
Tunnel established |
24 |
UDP with Desktop Device |
Connect from desktop |
Tunnel established |
25 |
UDP with Virtual Machine |
Connect from VM |
Tunnel established |
26 |
UDP with Container |
Connect from container |
Tunnel established |
27 |
UDP with Roaming |
Roam between networks |
Tunnel persists |
28 |
UDP with Failover |
Failover to backup link |
Tunnel re-established |
29 |
UDP with Load Balancer |
Use load balancer |
Tunnel established |
30 |
UDP with Proxy |
Use proxy (if supported) |
Tunnel established or fails |
31 |
UDP with DNS Resolution |
Resolve server via DNS |
Tunnel connects |
32 |
UDP with Dynamic IP |
Use dynamic IP address |
Tunnel adapts |
33 |
UDP with Static IP |
Use static IP address |
Tunnel established |
34 |
UDP with Port Forwarding |
Use port forwarding |
Tunnel established |
35 |
UDP with Port Blocking |
Block UDP port |
Tunnel fails |
36 |
UDP with Port Randomization |
Use random source port |
Tunnel established |
37 |
UDP with QoS |
Apply QoS settings |
Traffic prioritized |
38 |
UDP with Bandwidth Limit |
Apply bandwidth limits |
Traffic rate limited |
39 |
UDP with Packet Inspection |
Inspect UDP packets |
Data visible (unencrypted) |
40 |
UDP with IDS/IPS |
Monitor with IDS/IPS |
Traffic detected |
41 |
UDP with Logging |
Enable logging |
Logs show UDP activity |
42 |
UDP with Monitoring Tools |
Use network monitoring tools |
Traffic visible |
43 |
UDP with Performance Benchmark |
Measure throughput and latency |
Metrics recorded |
44 |
UDP with Protocol Multiplexing |
Carry multiple protocols over UDP |
All protocols delivered |
45 |
UDP with Session Multiplexing |
Carry multiple sessions over UDP |
Sessions isolated |
46 |
UDP with Replay Protection |
Replay UDP packets |
Packets dropped |
47 |
UDP with Firewall Rules |
Apply firewall rules |
Only allowed traffic passes |
48 |
UDP with ACLs |
Apply access control |
Unauthorized traffic blocked |
49 |
UDP with Policy Enforcement |
Apply traffic policies |
Policies enforced |
50 |
UDP with VPN Analytics |
Analyze UDP-based VPN traffic |
Insights generated |
No Native Encryption - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
Basic Tunnel Establishment |
Establish tunnel without encryption |
Tunnel established |
2 |
Data Transmission Without Encryption |
Send data over tunnel |
Data transmitted in plaintext |
3 |
External Encryption Integration |
Use IPsec for encryption |
Data encrypted externally |
4 |
TLS Wrapping |
Wrap tunnel in TLS |
Data encrypted via TLS |
5 |
DTLS Wrapping |
Wrap tunnel in DTLS |
Data encrypted via DTLS |
6 |
VPN Client Behavior |
Use client with no native encryption |
Tunnel established |
7 |
VPN Server Behavior |
Use server with no native encryption |
Tunnel established |
8 |
Packet Inspection Test |
Inspect packets in transit |
Data visible in plaintext |
9 |
Man-in-the-Middle Vulnerability |
Simulate MITM attack |
Data intercepted |
10 |
External Encryption Failure |
Disable external encryption |
Data exposed |
11 |
Encryption Policy Enforcement |
Enforce encryption via policy |
Tunnel fails if not encrypted |
12 |
Encryption Negotiation |
Negotiate external encryption |
Encryption established |
13 |
Encryption Logging |
Log encryption status |
Logs show external encryption used |
14 |
Encryption Monitoring |
Monitor encryption layer |
External encryption visible |
15 |
Encryption Performance Benchmark |
Measure performance with external encryption |
Metrics recorded |
16 |
Encryption Overhead Test |
Compare with and without encryption |
Overhead measured |
17 |
Encryption Compatibility Test |
Test with various encryption protocols |
Compatible protocols work |
18 |
Encryption Upgrade Test |
Upgrade external encryption |
Tunnel re-established |
19 |
Encryption Downgrade Test |
Downgrade encryption level |
Tunnel re-established |
20 |
Encryption Rejection Test |
Reject unencrypted traffic |
Tunnel fails |
21 |
Encryption Alerting |
Alert on unencrypted traffic |
Alerts triggered |
22 |
Encryption with NAT |
Use NAT with external encryption |
Tunnel established |
23 |
Encryption with Firewall |
Use firewall with external encryption |
Tunnel allowed |
24 |
Encryption with Proxy |
Use proxy with external encryption |
Tunnel established |
25 |
Encryption with IPv4 |
Use IPv4 transport |
Tunnel encrypted externally |
26 |
Encryption with IPv6 |
Use IPv6 transport |
Tunnel encrypted externally |
27 |
Encryption with Mobile Device |
Connect from mobile |
Tunnel encrypted externally |
28 |
Encryption with Desktop Device |
Connect from desktop |
Tunnel encrypted externally |
29 |
Encryption with VM |
Connect from virtual machine |
Tunnel encrypted externally |
30 |
Encryption with Container |
Connect from container |
Tunnel encrypted externally |
31 |
Encryption with Roaming |
Roam between networks |
Tunnel persists with encryption |
32 |
Encryption with Failover |
Failover to backup link |
Tunnel re-established with encryption |
33 |
Encryption with Load Balancer |
Use load balancer |
Tunnel encrypted externally |
34 |
Encryption with DNS |
Resolve server via DNS |
Tunnel encrypted externally |
35 |
Encryption with Dynamic IP |
Use dynamic IP |
Tunnel encrypted externally |
36 |
Encryption with Static IP |
Use static IP |
Tunnel encrypted externally |
37 |
Encryption with Port Forwarding |
Use port forwarding |
Tunnel encrypted externally |
38 |
Encryption with Port Blocking |
Block encryption ports |
Tunnel fails |
39 |
Encryption with QoS |
Apply QoS settings |
Traffic prioritized |
40 |
Encryption with Bandwidth Limit |
Apply bandwidth limits |
Traffic rate limited |
41 |
Encryption with IDS/IPS |
Monitor with IDS/IPS |
Traffic detected |
42 |
Encryption with ACLs |
Apply access control |
Unauthorized traffic blocked |
43 |
Encryption with Policy Enforcement |
Apply encryption policies |
Policies enforced |
44 |
Encryption with Monitoring Tools |
Use monitoring tools |
Encryption status visible |
45 |
Encryption with Logging Tools |
Use logging tools |
Logs show encryption status |
46 |
Encryption with Analytics |
Analyze encrypted traffic |
Insights generated |
47 |
Encryption with Replay Protection |
Replay encrypted packets |
Packets dropped |
48 |
Encryption with Session Multiplexing |
Use multiple sessions |
All encrypted externally |
49 |
Encryption with Protocol Independence |
Use various protocols |
All encrypted externally |
50 |
Encryption with UDP Transport |
Use UDP transport |
Tunnel encrypted externally |
AVP-Based Control Messages - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
Basic AVP Message Format |
Send a valid AVP control message |
Message accepted |
2 |
AVP Parsing |
Parse received AVP message |
All AVPs correctly extracted |
3 |
AVP Encoding |
Encode control message using AVPs |
Message correctly formatted |
4 |
AVP Decoding |
Decode received AVP message |
Values correctly interpreted |
5 |
Mandatory AVP Presence |
Omit a mandatory AVP |
Message rejected |
6 |
Optional AVP Presence |
Include optional AVP |
Message accepted |
7 |
Unknown AVP Handling |
Include unknown AVP |
Message accepted or ignored |
8 |
AVP Order Independence |
Change AVP order |
Message still valid |
9 |
AVP Length Validation |
Send AVP with incorrect length |
Message rejected |
10 |
AVP Type Validation |
Send AVP with invalid type |
Message rejected |
11 |
AVP Value Validation |
Send AVP with invalid value |
Message rejected |
12 |
AVP Padding Test |
Send AVP with padding |
Message accepted |
13 |
AVP Alignment Test |
Check AVP alignment rules |
Message accepted |
14 |
AVP Nesting Test |
Use nested AVPs |
Nested structure parsed |
15 |
AVP Vendor-Specific Test |
Use vendor-specific AVP |
Message accepted |
16 |
AVP Extension Test |
Add new AVP type |
Message accepted |
17 |
AVP Replay Protection |
Replay AVP message |
Message rejected |
18 |
AVP Authentication |
Authenticate AVP message |
Message verified |
19 |
AVP Encryption |
Encrypt AVP message |
Message decrypted correctly |
20 |
AVP Integrity Check |
Tamper with AVP |
Integrity check fails |
21 |
AVP Compression |
Compress AVP message |
Message decompressed correctly |
22 |
AVP Fragmentation |
Fragment large AVP message |
Reassembled correctly |
23 |
AVP Over UDP |
Send AVP message over UDP |
Message delivered |
24 |
AVP Over TCP |
Send AVP message over TCP |
Message delivered |
25 |
AVP Over TLS |
Send AVP message over TLS |
Message secured |
26 |
AVP Over DTLS |
Send AVP message over DTLS |
Message secured |
27 |
AVP with IPv4 |
Use AVP over IPv4 |
Message delivered |
28 |
AVP with IPv6 |
Use AVP over IPv6 |
Message delivered |
29 |
AVP with NAT |
Send AVP through NAT |
Message delivered |
30 |
AVP with Firewall |
Send AVP through firewall |
Message delivered |
31 |
AVP with Proxy |
Send AVP through proxy |
Message delivered |
32 |
AVP with VPN |
Send AVP over VPN tunnel |
Message delivered |
33 |
AVP with Load Balancer |
Send AVP through load balancer |
Message delivered |
34 |
AVP with Roaming |
Roam and send AVP |
Message delivered |
35 |
AVP with Failover |
Failover and resend AVP |
Message delivered |
36 |
AVP with Logging |
Enable AVP logging |
Logs show AVP details |
37 |
AVP with Monitoring |
Monitor AVP traffic |
AVPs visible |
38 |
AVP with Policy Enforcement |
Apply policy to AVP values |
Policy enforced |
39 |
AVP with ACLs |
Apply ACLs to AVP messages |
Unauthorized AVPs blocked |
40 |
AVP with Replay Window |
Use AVP with sequence number |
Replay detected |
41 |
AVP with Session Management |
Use AVPs for session control |
Session managed correctly |
42 |
AVP with Heartbeat |
Use AVP for keepalive |
Heartbeat received |
43 |
AVP with Error Reporting |
Send AVP error message |
Error interpreted correctly |
44 |
AVP with Capability Exchange |
Exchange supported features via AVPs |
Capabilities negotiated |
45 |
AVP with Version Negotiation |
Negotiate protocol version via AVP |
Version agreed |
46 |
AVP with Resource Allocation |
Use AVP to request resources |
Resources allocated |
47 |
AVP with Session Termination |
Use AVP to terminate session |
Session closed |
48 |
AVP with Redirection |
Use AVP to redirect session |
Redirection followed |
49 |
AVP with Load Reporting |
Use AVP to report load |
Load metrics received |
50 |
AVP with Custom Application Data |
Send custom data in AVP |
Data received and parsed |
Reliable Control Messaging - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
Basic Control Message Delivery |
Send a control message |
Message delivered successfully |
2 |
Control Message Acknowledgment |
Expect ACK for control message |
ACK received |
3 |
Control Message Retransmission |
Drop initial message |
Retransmission occurs |
4 |
Control Message Timeout |
No ACK received |
Timeout triggered |
5 |
Control Message Retry Limit |
Exceed retry limit |
Message dropped |
6 |
Control Message Ordering |
Send messages out of order |
Messages reordered |
7 |
Duplicate Control Message |
Send duplicate message |
Duplicate ignored |
8 |
Control Message Loss Simulation |
Drop control packets randomly |
Reliable delivery maintained |
9 |
Control Message Delay Simulation |
Delay control packets |
Delivery still successful |
10 |
Control Message with Sequence ID |
Use sequence numbers |
Messages tracked correctly |
11 |
Control Message with Timestamp |
Include timestamp |
Message freshness verified |
12 |
Control Message with Integrity |
Tamper with message |
Integrity check fails |
13 |
Control Message with Encryption |
Encrypt control message |
Message decrypted correctly |
14 |
Control Message with Authentication |
Authenticate control message |
Message accepted |
15 |
Control Message over UDP |
Use UDP transport |
Reliable delivery ensured |
16 |
Control Message over TCP |
Use TCP transport |
Reliable delivery via TCP |
17 |
Control Message over DTLS |
Use DTLS transport |
Reliable delivery ensured |
18 |
Control Message over TLS |
Use TLS transport |
Reliable delivery ensured |
19 |
Control Message over IPv4 |
Use IPv4 transport |
Message delivered |
20 |
Control Message over IPv6 |
Use IPv6 transport |
Message delivered |
21 |
Control Message with NAT |
Send through NAT |
Message delivered |
22 |
Control Message with Firewall |
Send through firewall |
Message delivered |
23 |
Control Message with Proxy |
Send through proxy |
Message delivered |
24 |
Control Message with VPN |
Send over VPN tunnel |
Message delivered |
25 |
Control Message with Roaming |
Roam between networks |
Message delivery maintained |
26 |
Control Message with Failover |
Failover to backup link |
Message delivery maintained |
27 |
Control Message with Load Balancer |
Use load balancer |
Message routed correctly |
28 |
Control Message with Logging |
Enable logging |
Logs show message flow |
29 |
Control Message with Monitoring |
Monitor control traffic |
Messages visible |
30 |
Control Message with Replay Attack |
Replay old message |
Message rejected |
31 |
Control Message with ACLs |
Apply access control |
Unauthorized messages blocked |
32 |
Control Message with Policy |
Apply control policies |
Policies enforced |
33 |
Control Message with Heartbeat |
Send periodic keepalives |
Tunnel remains active |
34 |
Control Message with Session Setup |
Use control message to initiate session |
Session established |
35 |
Control Message with Session Teardown |
Use control message to close session |
Session terminated |
36 |
Control Message with Capability Exchange |
Exchange supported features |
Capabilities negotiated |
37 |
Control Message with Error Reporting |
Send error via control message |
Error handled |
38 |
Control Message with Version Negotiation |
Negotiate protocol version |
Version agreed |
39 |
Control Message with Resource Request |
Request resources via control message |
Resources allocated |
40 |
Control Message with Redirection |
Redirect session via control message |
Redirection followed |
41 |
Control Message with Load Reporting |
Report load via control message |
Load metrics received |
42 |
Control Message with Custom AVPs |
Include custom AVPs in control message |
AVPs parsed correctly |
43 |
Control Message with Compression |
Compress control message |
Message decompressed |
44 |
Control Message with Fragmentation |
Fragment large control message |
Message reassembled |
45 |
Control Message with Congestion |
Simulate network congestion |
Message still delivered |
46 |
Control Message with Jitter |
Introduce jitter |
Message still delivered |
47 |
Control Message with Packet Duplication |
Duplicate packets |
Duplicates ignored |
48 |
Control Message with Packet Reordering |
Reorder packets |
Messages processed in order |
49 |
Control Message with Session Multiplexing |
Use multiple sessions |
Messages routed correctly |
50 |
Control Message with Protocol Independence |
Use different protocols |
Messages delivered reliably |
Tunnel and Session IDs - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
Tunnel ID Assignment |
Establish tunnel |
Unique Tunnel ID assigned |
2 |
Session ID Assignment |
Start session within tunnel |
Unique Session ID assigned |
3 |
Tunnel ID Uniqueness |
Create multiple tunnels |
All Tunnel IDs are unique |
4 |
Session ID Uniqueness |
Create multiple sessions |
All Session IDs are unique |
5 |
Tunnel ID Reuse Prevention |
Reuse old Tunnel ID |
Reuse rejected |
6 |
Session ID Reuse Prevention |
Reuse old Session ID |
Reuse rejected |
7 |
Tunnel ID Expiry |
Let tunnel expire |
ID released |
8 |
Session ID Expiry |
Let session expire |
ID released |
9 |
Tunnel ID Collision |
Simulate ID collision |
Collision detected |
10 |
Session ID Collision |
Simulate ID collision |
Collision detected |
11 |
Tunnel ID Format Validation |
Check format of Tunnel ID |
Format matches spec |
12 |
Session ID Format Validation |
Check format of Session ID |
Format matches spec |
13 |
Tunnel ID Logging |
Log tunnel creation |
Tunnel ID logged |
14 |
Session ID Logging |
Log session creation |
Session ID logged |
15 |
Tunnel ID in Control Messages |
Include Tunnel ID in control messages |
ID correctly included |
16 |
Session ID in Control Messages |
Include Session ID in control messages |
ID correctly included |
17 |
Tunnel ID in Data Packets |
Include Tunnel ID in data packets |
ID correctly included |
18 |
Session ID in Data Packets |
Include Session ID in data packets |
ID correctly included |
19 |
Tunnel ID with NAT |
Use NAT environment |
Tunnel ID preserved |
20 |
Session ID with NAT |
Use NAT environment |
Session ID preserved |
21 |
Tunnel ID with Roaming |
Roam between networks |
Tunnel ID remains valid |
22 |
Session ID with Roaming |
Roam between networks |
Session ID remains valid |
23 |
Tunnel ID with Failover |
Failover to backup link |
Tunnel ID preserved |
24 |
Session ID with Failover |
Failover to backup link |
Session ID preserved |
25 |
Tunnel ID with Load Balancer |
Use load balancer |
Tunnel ID preserved |
26 |
Session ID with Load Balancer |
Use load balancer |
Session ID preserved |
27 |
Tunnel ID with Logging |
Enable logging |
Tunnel ID tracked |
28 |
Session ID with Logging |
Enable logging |
Session ID tracked |
29 |
Tunnel ID with Monitoring |
Monitor tunnel activity |
Tunnel ID visible |
30 |
Session ID with Monitoring |
Monitor session activity |
Session ID visible |
31 |
Tunnel ID with ACLs |
Apply ACLs based on Tunnel ID |
Access controlled |
32 |
Session ID with ACLs |
Apply ACLs based on Session ID |
Access controlled |
33 |
Tunnel ID with Policy |
Apply policy based on Tunnel ID |
Policy enforced |
34 |
Session ID with Policy |
Apply policy based on Session ID |
Policy enforced |
35 |
Tunnel ID with Encryption |
Encrypt tunnel traffic |
Tunnel ID preserved |
36 |
Session ID with Encryption |
Encrypt session traffic |
Session ID preserved |
37 |
Tunnel ID with Replay Protection |
Replay tunnel packets |
Replayed packets dropped |
38 |
Session ID with Replay Protection |
Replay session packets |
Replayed packets dropped |
39 |
Tunnel ID with Multiplexing |
Use multiple sessions in one tunnel |
Tunnel ID shared |
40 |
Session ID with Multiplexing |
Use multiple sessions |
Session IDs unique |
41 |
Tunnel ID with Fragmentation |
Fragment tunnel packets |
Tunnel ID preserved |
42 |
Session ID with Fragmentation |
Fragment session packets |
Session ID preserved |
43 |
Tunnel ID with Compression |
Compress tunnel packets |
Tunnel ID preserved |
44 |
Session ID with Compression |
Compress session packets |
Session ID preserved |
45 |
Tunnel ID with IPv4 |
Use IPv4 transport |
Tunnel ID preserved |
46 |
Session ID with IPv6 |
Use IPv6 transport |
Session ID preserved |
47 |
Tunnel ID with TLS |
Use TLS encryption |
Tunnel ID preserved |
48 |
Session ID with DTLS |
Use DTLS encryption |
Session ID preserved |
49 |
Tunnel ID with Error Handling |
Send malformed tunnel message |
Error logged with Tunnel ID |
50 |
Session ID with Error Handling |
Send malformed session message |
Error logged with Session ID |
Extensibility (L2TPv3) - Testcases
# |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
Basic L2TPv3 Tunnel Setup |
Establish a basic L2TPv3 tunnel |
Tunnel established |
2 |
AVP Extension Support |
Add a new AVP to control message |
AVP accepted or ignored gracefully |
3 |
Unknown AVP Handling |
Send unknown AVP |
Message processed without failure |
4 |
Vendor-Specific AVP |
Use vendor-specific AVP |
Message accepted |
5 |
Optional AVP Extension |
Add optional AVP |
Message accepted |
6 |
Mandatory AVP Extension |
Add mandatory AVP |
Message rejected if unsupported |
7 |
AVP Format Validation |
Validate format of extended AVP |
Format accepted |
8 |
AVP Length Validation |
Send AVP with incorrect length |
Message rejected |
9 |
AVP Padding Test |
Add padding to AVP |
Message accepted |
10 |
AVP Alignment Test |
Check AVP alignment |
Message accepted |
11 |
New Control Message Type |
Define and send new control message |
Message ignored or logged |
12 |
Control Message Extension Handling |
Extend existing control message |
Message processed correctly |
13 |
New Encapsulation Type |
Use new encapsulation type |
Tunnel established (if supported) |
14 |
Encapsulation Negotiation |
Negotiate encapsulation type |
Best match selected |
15 |
Capability Exchange via AVP |
Exchange supported features |
Capabilities negotiated |
16 |
Version Negotiation |
Negotiate protocol version |
Version agreed |
17 |
Backward Compatibility |
Use L2TPv3 with older peer |
Tunnel established |
18 |
Forward Compatibility |
Use newer peer with extensions |
Tunnel established |
19 |
Extension Logging |
Log extended AVPs and messages |
Extensions visible in logs |
20 |
Extension Monitoring |
Monitor extended control traffic |
Extensions visible |
21 |
Extension with NAT |
Use extensions behind NAT |
Tunnel established |
22 |
Extension with Firewall |
Use extensions through firewall |
Tunnel established |
23 |
Extension with Proxy |
Use extensions through proxy |
Tunnel established |
24 |
Extension with IPv4 |
Use extensions over IPv4 |
Tunnel established |
25 |
Extension with IPv6 |
Use extensions over IPv6 |
Tunnel established |
26 |
Extension with Roaming |
Roam between networks |
Tunnel persists |
27 |
Extension with Failover |
Failover to backup link |
Tunnel re-established |
28 |
Extension with Load Balancer |
Use load balancer |
Tunnel established |
29 |
Extension with Encryption |
Use IPsec or TLS with extensions |
Tunnel secured |
30 |
Extension with Compression |
Compress extended messages |
Messages decompressed |
31 |
Extension with Fragmentation |
Fragment extended messages |
Messages reassembled |
32 |
Extension with Replay Protection |
Replay extended messages |
Messages dropped |
33 |
Extension with ACLs |
Apply ACLs to extended messages |
Unauthorized messages blocked |
34 |
Extension with Policy Enforcement |
Apply policies to extensions |
Policies enforced |
35 |
Extension with Logging Tools |
Use logging tools |
Extensions logged |
36 |
Extension with Monitoring Tools |
Use monitoring tools |
Extensions visible |
37 |
Extension with Custom AVPs |
Define and use custom AVPs |
AVPs parsed correctly |
38 |
Extension with Session Multiplexing |
Use multiple sessions with extensions |
Sessions isolated |
39 |
Extension with Tunnel ID |
Use Tunnel ID in extended messages |
Tunnel identified correctly |
40 |
Extension with Session ID |
Use Session ID in extended messages |
Session identified correctly |
41 |
Extension with Error Reporting |
Send error via extended message |
Error handled |
42 |
Extension with Load Reporting |
Report load via extended AVP |
Load metrics received |
43 |
Extension with Redirection |
Redirect session via extended message |
Redirection followed |
44 |
Extension with Resource Request |
Request resources via extended AVP |
Resources allocated |
45 |
Extension with Keepalive |
Use extended keepalive message |
Tunnel remains active |
46 |
Extension with Custom Protocol |
Tunnel custom protocol using extension |
Protocol delivered |
47 |
Extension with Control/Data Separation |
Use extensions in control plane only |
Data plane unaffected |
48 |
Extension with Protocol Independence |
Use extensions with various protocols |
All protocols supported |
49 |
Extension with UDP Transport |
Use extensions over UDP |
Tunnel established |
50 |
Extension with TCP Transport |
Use extensions over TCP |
Tunnel established |
Reference links