cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
68779
Views
128
Helpful
4
Comments

Difference

 

DTLS is used for delay sensitive applications (voice and video) as its UDP based while TLS is TCP based

DTLS is supported for AnyConnect VPN not in IKEv2

 

How it works?

 

  • SSLTunnel is the TCP tunnel that is first created to the ASA
  • When it is fully established, the client will then try to negotiate a UDP DTLSTunnel
  • During DTLS negotiation, traffic will be passing over TLS tunnel
  • When the DTLSTunnel is fully established, all data now moves to the DTLStunnel and the SSLtunnel is only used for occasional control channel traffic
  • In case of failures in establishing DTLS Tunnel, traffic will continue passing over TLS tunnel
  • After establishing DTLS, in the event of failure in DTLS Tunnel, traffic will pass over TLS tunnel until DTLS tunnel is reestablished

 

How Data is Forwarded?

 

  • For each packet there is a part in AnyConnect client code which decides whether to send the packet over TLS or DTLS
  • If the DTLS tunnel is established, the code will decide to forward the packet over DTLS and start encryption
  • If the DTLS is dead, the code will decide to forward the packet over TLS and start encryption

 

  • The key point is the performance of DTLS tunnel
  • Since DTLS is based on UDP, it is unreliable and there is no flow control to decide its performance
  • Performance can be determined using DPD packets
    • When DPD is triggered and no response received, AnyConnect client will start forwarding packets over TLS (assuming TLS is up and DTLS is unhealthy)
    • Therefore, there is a packet drop period between DTLS failing and DPD triggering/detection. During this time, AnyConnect client will be forwarding packets over DTLS but they will be lost because DTLS is unhealthy
    • In case DTLS is established again, AnyConncect client will forward packets over DTLS
  • For receiving ASA with healthy DTLS and TLS, it will reply based on the receiving tunnel, i.e. if packets received over TLS, the response will be over TLS even if DTLS is healthy

 

What about Idle timeout?

 

  • When a DTLSTunnel is active, that is the only tunnel where idle timeout matters. Because very little control channel traffic passes over the SSLTunnel, it is almost always idle so it is exempt while there is an active DTLSTunnel. If something happened to UDP and the DTLSTunnel was torn down, then idle timeout would apply to the SSLTunnel

 

Configuration

 

DTLS is enabled by default but you can enable it or distable using CLI.

 

It can be enabled/disable per interface terminating AnyConnect VPN

 

webvpn

enable if-name tls-only

 

Also, you can enable/disable DTLS at Group Policy level

 

webvpn

dtls port 443

!

group-policy custom_group_policy attributes

wins-server none

dns-server value 10.170.7.99 10.170.7.100

vpn-tunnel-protocol ssl-client ssl-clientless

split-tunnel-policy tunnelspecified

split-tunnel-network-list value sslvpn_split_tunnel

default-domain value shelfdrilling.com

split-dns none

split-tunnel-all-dns enable

webvpn

anyconnect ssl dtls enable

anyconnect mtu 1420

anyconnect profiles value sslvpnfromrdpprofile type user

customization value ShelfDrilling-Customization

always-on-vpn profile-setting

Comments
Praveen Kumar
Level 1
Level 1

Very good explanation. Thanks.

kara
Cisco Employee
Cisco Employee

hello,

 

Want to ask what if the host's NIC physical mtu changed to 576, would anyconnect client adopt 576 as mtu for both TLS and DTLS mtu (Assuming VPN GW configured mtu is bigger e.g. anyconnect mtu 1300)? 

hash2k2
Level 1
Level 1

    • Therefore, there is a packet drop period between DTLS failing and DPD triggering/detection. During this time, AnyConnect client will be forwarding packets over DTLS but they will be lost because DTLS is unhealthy

 

 


What is the time period for the DPD? Is it configurable or is it fixed?

Aparimit
Cisco Employee
Cisco Employee

Why all users of any connect is connecting with TLS protocol but 2-4 members are using DTLS protocol when getting connected.

What are the things that affect this behaviour?

 

 

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: