Analyzing Traffic by Domain Name in the Data Plane

Associating network traffic with human-readable domain names, instead of low-level identifiers like IP addresses, is helpful for measuring traffic by domain name, rate-limiting packets by domain, and identifying IoT devices. However, existing monitoring techniques require examining traffic at an external compute node, introducing overhead and privacy risks. In this paper, we introduce Meta4, a framework for monitoring traffic by domain name in the data plane by extracting the client IP, server IP, and domain name from DNS response messages and associating the domain name with data traffic from the subsequent client-server session. A data-plane implementation has the benefits of running efficiently at line-rate, enabling the switch to take direct action on the packets (e.g., to rate-limit, block, or mark traffic based on the associated domain), and protecting the privacy of user information. We implemented Meta4 on an Intel Tofino switch and evaluated our prototype against packet traces from an operational network.

[1]  Nick Feamster,et al.  Intentional Network Monitoring: Finding the Needle without Capturing the Haystack , 2014, HotNets.

[2]  Noa Zilberman,et al.  P4DNS: In-Network DNS , 2019, 2019 ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS).

[3]  Srinivasan Seshan,et al.  TEA: Enabling State-Intensive Network Functions on Programmable Switches , 2020, SIGCOMM.

[4]  Ori Rottenstreich,et al.  Efficient Measurement on Programmable Switches Using Probabilistic Recirculation , 2018, 2018 IEEE 26th International Conference on Network Protocols (ICNP).

[5]  S. Muthukrishnan,et al.  Heavy-Hitter Detection Entirely in the Data Plane , 2016, SOSR.

[6]  Kevin Borders,et al.  Chimera: A Declarative Language for Streaming Network Traffic Analysis , 2012, USENIX Security Symposium.

[7]  TEA , 2020, Proceedings of the Annual conference of the ACM Special Interest Group on Data Communication on the applications, technologies, architectures, and protocols for computer communication.

[8]  Hari Balakrishnan,et al.  The design and implementation of an intentional naming system , 1999, SOSP.

[9]  Anja Feldmann,et al.  A Haystack Full of Needles: Scalable Detection of IoT Devices in the Wild , 2020, Internet Measurement Conference.

[10]  Paul E. Hoffman,et al.  DNS Queries over HTTPS (DoH) , 2018, RFC.

[11]  Paul E. Hoffman,et al.  Specification for DNS over Transport Layer Security (TLS) , 2016, RFC.