ACM SIGCOMM 2020, New York City, USA

ACM SIGCOMM 2020 Tutorial on Patterns and Interactions in Network Security

Tutorial Program (subject to changes)

  • Friday, August 14, 2020

  • 9:00 am - 10:30 am Session I

  • Definitions of network security, network model, cryptographic protocols

    Pamela Zave, Princeton University

  • 10:30 am - 11:00 am Coffee/Tea Break

  • 11:00 am - 12:30 am Session II

  • Packet filtering, dynamic resource allocation, compound sessions and overlays

    Jennifer Rexford, Princeton University

Call For Participation

Participants are invited to a half-day overview of the field of network security. This tutorial is distinguished by its emphasis on imposing structure on the subject through attention to network architecture, recurring patterns in security mechanisms, and the interactions of security mechanisms with each other and with other aspects of network architecture.

We expect that this tutorial will be helpful to any networking expert who is not well-versed in security. In particular, we see two kinds of people deriving special benefit from it: researchers who are interested in moving into security and want an overview suggestive of new opportunities, and faculty members who teach networking and would like to improve their presentation of network security. This material (both presented and online, see [tutorial]) could easily be converted into 2-4 classroom lectures.

  • August 14, 2020



Everyone understands the importance of security in today's computing landscape, and the central role played by networks in both enabling and defending against security attacks. Although cyber-security is an extremely active area of research, there is relatively little ``framing'' of the subject, in the sense of classifying attacks and defenses, or drawing boundaries between subareas. To some extent this is inevitable--security flaws are often gaps in the models through which we understand complex systems--but it still impedes progress in both research and practical adoption of research results.

The purpose of this tutorial is to organize and lay out the landscape of network security. Although it is a survey, it contains new content, of three kinds:

Classification and architecture: Our novel classification of security attacks, based on who are the attackers, defenders, and potential victims, is pragmatic because it correlates well with possible defense mechanisms. Our architectural model of networking [architecture] is realistic--therefore leaving fewer vulnerable gaps--and facilitates the recognition of patterns.

Patterns: We explain that, although mechanisms for network security are extremely diverse, they are all instances of just a few patterns. These patterns recur at many levels of the network hierarchy, for example local-area networks, wide-area networks, and distributed application systems. By emphasizing the patterns rather than the individual details, we are able to cover more ground, and present a much larger design space of possible solutions to security problems.

Interactions: Security mechanisms interact in important ways, with each other and with other aspects of networking. To provide communication services that are secure and also fully supportive of distributed applications, network designers must understand the consequences of their decisions on all aspects of network architecture and services.


1. What is network security?

1.1. A practical classification of network security attacks

Coarse-grained but meaningful, based on who are the attackers, defenders, and victims. With contemporary concerns about privacy, sometimes the attacker is the network. These categories correlate well with defense mechanisms.

1.2. Relation to other definitions of security

Includes the gaps where no good defenses exist.

2. A model of networking

This explains how we can decompose network architecture into networks-as-modules, in a way that makes the pattern-based approach feasible.

3. Cryptographic protocols

The first pattern and the primary user defense. Can conceal packet contents but not packet headers.

3.1. Trust and identity

3.2. Public-key cryptography and its uses

3.3. Three IP cryptographic protocols

A comparison of TLS, Quic, and IPsec ESP.

3.4. Interactions between cryptographic protocols and other aspects of networking

Particularly layering, performance, and mobility.

4. Packet filtering

The second pattern and the primary network defense.

4.1. Content-based packet filtering

4.2. Path-based packet filtering

4.3. Interactions between packet filtering and other aspects of networking

Particularly routing, layering, cryptographic protocols.

5. Dynamic resource allocation

The third pattern, employed by both network infrastructure and users. We include in this pattern dynamic reduction of the resources used per request.

6. Compound sessions and overlays for security

Employed by users to conceal packet headers. This fourth pattern is seldom recognized, although it is the basic for many security mechanisms such as VPNs (compound sessions made by proxies) and Tor (overlays). The entire purpose of the pattern is to interact with (thwart) packet filtering.

7. A brief look at today's security research


  • Pamela Zave

    Princeton University

    • Bio:

      Pamela Zave received an A.B. degree in English from Cornell University, and a Ph.D. degree in computer sciences from the University of Wisconsin--Madison. She began her career as an assistant professor of computer science at the University of Maryland--College Park. From 1981 to 1996 she worked for Bell Laboratories Research (then a part of AT&T), and from 1996 to 2017 she worked for AT&T Laboratories Research. She is now a research associate in the Department of Computer Science at Princeton University. Pamela Zave is an ACM fellow and an AT&T fellow. She has received numerous distinguished paper awards and ten-year influential paper awards at conferences.

  • Jennifer Rexford

    Princeton University

    • Bio:

      Jennifer Rexford joined the Computer Science Department at Princeton University in February 2005 after eight and a half years at AT&T Research. Her research focuses on Internet routing, network measurement, and network management, with the larger goal of making data networks easier to design, understand, and manage. Jennifer is co-author of the book Web Protocols and Practice: HTTP/1.1, Networking Protocols, Caching, and Traffic Measurement (Addison-Wesley, May 2001) and co-editor of She's an Engineer? Princeton Alumnae Reflect (Princeton University, 1993, see recent talk about the book). Jennifer served as the chair of ACM SIGCOMM from 2003 to 2007, and has served on the ACM Council, the board of the Computing Research Association, the advisory council of the Computer and Information Science and Engineering directorate at NSF, and the Computing Community Consortium. She received her BSE degree in electrical engineering from Princeton University in 1991, and her MSE and PhD degrees in computer science and electrical engineering from the University of Michigan in 1993 and 1996, respectively. She was the winner of ACM's Grace Murray Hopper Award for outstanding young computer professional of the year for 2004.


[tutorial] P. Zave and J. Rexford. Patterns and interactions in network security. arXiv 1912.13371 [cs:NI], 2019.

[architecture] P. Zave and J. Rexford. The compositional architecture of the Internet. Communications of the ACM, 62(3):78-87, March 2019.