People of ACM - Jennifer Rexford
March 24, 2016
You were closely involved in studying the Border Gateway Protocol, which allows Internet traffic to be reliably and efficiently routed without global synchronization. Some have pointed out that the decentralized nature of routing makes the Internet vulnerable to accidental or malicious disruptions. Because of the wide range of networks controlled by varied organizations, finding a "one-size-fits-all" approach to verifying the identity of BGP routers would seem to be a challenge. Do you see any promising areas of research on the horizon that might secure the internet despite its decentralized structure?
Like so many of the Internet's protocols, BGP trusts that the participants in the protocol are honest. When a network sends bogus BGP announcements, whether accidentally or maliciously, the effects can be anything from a major outage to a traffic-interception attack. The Resource Public Key Infrastructure (RPKI) can help, by providing a way to validate basic assertions about who can introduce a route into the interdomain routing system. RPKI adoption is proceeding, albeit slowly. It will be a long time before the entire Internet adopts any one solution, whether RPKI-based or not. I think the most promising avenues of research focus on understanding how BGP security solutions behave under partial deployment, and how to create incentives for networks to take the plunge. Also, the RPKI itself raises some concerns about misbehaving RPKI authorities, including governments or law enforcement agencies using RPKI to take down a network or web site. New research can help address these concerns by designing ways to detect manipulation of RPKI data and exploring multi-party solutions that limit the power any one country or organization has over the system.
Scalability is a challenge in many areas of computer science. Some estimate that the size of the Internet doubles every year. Do you see any inherent limitations in the architecture or the technology of the internet that will eventually limit its continued growth?
Scalability is indeed a big challenge. The number of devices, IP addresses, and networks continues to grow, and the link speeds grow as well—meaning that network devices have even less time to decide how to handle one packet before the next one arrives. The Internet of Things (IoT) will exacerbate the problem by introducing significantly more devices, including devices that are mobile. Right now, the Internet infrastructure handles mobility in a particularly clumsy way, since IP addresses are used both as "identifiers" (identifying a device in a conversation with another device) and as "locators" (indicating the device's current location in the routing system). Many people have observed that we need to separate these two roles, but identifying the best solution and spurring adoption is a perennial challenge. I believe that moving functionality to the end hosts, by allowing them to change their addresses and directly update the other ends of their connections, would go a long way toward relieving pressure on the Internet infrastructure. This would also enable a number of other useful capabilities, such as using multiple interfaces (such as WiFi and cellular) and paths at the same time, or steering traffic selectively through middleboxes that help improve security or performance. Right now, we try to solve too many scalability problems inside the network, when a better solution would leverage the end-host computers. Stepping back, if we knew 40 years ago that Internet hosts would be mobile, multi-homed, and reliant on middleboxes, the basic Internet transport protocols like TCP and UDP would have been designed with a separation of identifier and location from the beginning.
You have worked as a practitioner at AT&T Labs and in the academic arena at Princeton. How is working in industry different from working in academia? How do venues such as ACM SIGCOMM bring these areas together for fertile collaboration?
I worked for nine years at AT&T Labs--Research, and for the past 11 years at Princeton University. I found both environments incredibly enriching. In industry, I loved working closely with my peers on collaborative projects, and connecting with practitioners to learn about new technical challenges, acquire invaluable measurement data, and tech-transfer my solutions to practice. In academia, I relish the close and long-term relationship with students, and the greater opportunity to explore long-term solutions to challenging problems. Also, while I collaborated across disciplinary boundaries at AT&T, academia affords me an even wider set of potential collaborators. At Princeton, I have been fortunate to collaborate with leading researchers in network optimization, cryptography, and programming languages over the years, allowing me to attack an exciting set of research problems that I could never have tackled alone.
Networking conferences like ACM SIGCOMM bring together researchers from both academia and industry. While I was at AT&T, these conferences allowed me to stay connected with my academic peers. Now, these conferences allow my students and me to keep a close eye on technology trends and emerging research problems, and to find industry collaborators for research projects and summer internships. I've been fortunate to have strong ongoing relationships with Microsoft, Google, Intel, Cisco, and several smaller companies that still inform my research.
You recently tweeted out that, with 47 women and 81 men, computer science is the most popular major for Princeton's junior class. Why do you believe overall enrollment in computer science at Princeton is up in the past few years? Do you believe the trend of women entering computer science at Princeton will be mirrored across the US in coming years? If so, what do you think has changed to make more women interested in becoming CS majors?
The rise in CS enrollments and majors is a nationwide trend, as students see the excitement of the field and the great job opportunities. We've had a particularly large increase in majors at Princeton—around a factor of four in the last six or seven years. Beyond the general trends, I think our department's great introductory curriculum is a big part of the story. Our General Computer Science (COS 126) course—the gateway course for our majors—is now Princeton's most popular course, taken by well over half of all Princeton students. The course is innovative and has interesting, outward-facing assignments that appeal to a broad range of students. Another factor may be that we offer both a BSE and a BA degree in computer science, making it possible for students to enter our major even if they only discover computer science after they arrive at Princeton—say, after experimenting with our introductory course. We also have a vibrant Princeton Women in Computer Science group that runs all sorts of events, and provides great mentoring to the younger women students; I have no doubt that PWiCS has a big hand in our increase in women CS majors.
The news that Princeton plans to add 10 tenure-track positions to the computer science department is exciting. As the department chair, how will you and your colleagues decide which computing disciplines to add to the department? Would you say Princeton's computer science department is recognized for certain disciplines? How would you like the department to be known within the computing community in 10 years?
We're excited for the unprecedented opportunity to shape the future of our department in the years ahead. We plan to bolster our strength in core computer science, both by building in existing areas of strength like machine learning, computer systems, and theory, and by expanding into areas where CS touches the real world (e.g., human-computer interaction, cyber-physical systems, and robotics). Plus, we will enhance our connections with the rest of campus, including public policy, mathematics, and the sciences. Princeton is distinctive in having a small, intimate campus with uniformly strong departments across many fields, so it is natural for us to excel in interdisciplinary scholarship. As computer science is increasingly central to nearly every human endeavor and academic discipline, we plan to become an ever more central part of the Princeton campus—a part of every student's experience, a lever for everyone's research, and an effective way to tackle major societal challenges.
Jennifer Rexford is the Gordon Y.S. Wu Professor of Engineering and Chair of the Computer Science Department at Princeton University. She is a recognized expert in the development of models, algorithms and deployed systems that assure stable and efficient Internet routing without global coordination. Rexford is perhaps best known for her major contributions to the Border Gateway Protocol (BGP), a system that exchanges routing and reachability information among autonomous systems on the Internet.
Prior to joining the Princeton faculty, Rexford was employed at AT&T Labs from 1996 to 2005. For ACM, she served as Chair of the Special Interest Group on Data Communication (SIGCOMM) from 2003 to 2007. Rexford was also a co-founder of two ACM conferences: the Internet Measurement Conference started in 2001 and the Symposium on SDN Research started in 2012 as HotSDN. Her numerous accolades include receiving ACM's Grace Murray Hopper Award in 2004, given annually to an outstanding young computing professional; being named the 2016-2017 Athena Lecturer by ACM-W; and being selected as an ACM Fellow in 2008.