Kevin Fall's Page


2400 Oxford Dr., Suite 440
Bethel Park, PA 15102


Kevin Fall, PhD. is the Deputy Director and Chief Technology Officer of the Software Engineering Institute at Carnegie Mellon University.
He is also author of TCP/IP Illustrated Volume 1 Second Edition.
In 2013 the DTN paper (see below) received the SIGCOMM Test of Time Paper Award.

Prior to SEI, he was a Principal Engineer with Qualcomm, and before that he was a Principal Engineer (research) at Intel Corporation in the city of Berkeley, CA., which closed down in 2011.
Kevin became a Fellow of the IEEE in 2009.

In 1997, he was co-founder of Netboost Corporation, which developed hardware and software for arbitrary processing of network packets (ultimately used for building intrusion detection systems and other devices). Netboost was acquired by Intel in 1999.


Ongoing projects and memberships:

Past projects and memberships:

Conference/Workshop/Journal Committees:


Although not teaching currently, in 2002 he taught EE122 (the Berkeley undergraduate Communications Networks class) with Professor Jean Walrand. He also taught this class in 1999.

Way back in Spring '96 he taught the graduate computer networking class, CS268, with Dr. Mike Luby, who leads the Qualcomm group in Berkeley.

Since 1993 he has also taught classes on introductory computer networking for the UCSD, UCB, and UCSC Extension. (This was discontinued about 2001).

Before all of the above, he was a posdoc at MIT and UCSD (simultaneously) in 1995, and a consultant to SDSC and CCR-West.

Employment and Education

Kevin is the Deputy Director (for research) and CTO of SEI, as of January 2013.

Kevin was a Principal Engineer at Qualcomm Corporation until late 2012.

Kevin was a Principal Engineer at Intel Labs, Berkeley (formerly called Intel Research Berkeley and Future Technologies Research Berkeley).
He started as the first full-time staff member there back in 2001.

Kevin received a BA in Computer Science from UC Berkeley in 1988. While an undergraduate at Berkeley, he worked on several projects including VorTeX (some dynamic extensions to TeX with Prof. Michael Harrison), the DASH operating system (an early objected-oriented operating system for symmetric multiprocessors with David P. Anderson [now running the BOINC and Seti@Home projects]), and later for the Computer Systems Research Group (CSRG) (the developers of Berkeley UNIX, with Kirk McKusick and Mike Karels.

After graduating from Berkeley, he went to Project Athena (MIT) during the summer of 1989 before beginning graduate school at UCSD. He completed an MS degree in computer science at UCSD in 1991, followed by the PhD in 1994. His dissertation was in the general area of operating systems, with a focus on designing I/O subsystems for I/O intensive applications. His advisor was Professor Joseph Pasquale.

After graduate school, Kevin was a postdoctoral scholar for both UCSD (Joe Pasquale, now at UCSD) and MIT (David Tennenhouse, now at Microsoft). After that, he returned to Berkeley to work at the Network Research Group at Lawrence Berkeley National Laboratory. A couple of years later he helped to start NetBoost Corp, and became and adjunct professor in the Computer Science Department at UC Berkeley. Eventually, he became a full-time employee of Intel corporation upon its acquisition of NetBoost in late 1999.


Slides from Talks (not complete)

(Note: also see the page here for some others).

Ships I have been on

Previous Affiliations


Serial Number; Filing Date. Title Issue Number and Date (or Publication Number and Date)
09/097,858; 1998-06-15. Packet Processing System Including a Policy Engine Having a Classification Unit 6,157,955; 2000-12-05.
09/282,790; 1999-03-31. Platform Permitting Execution of Multiple Network Infrastructure Applications 6,401,117; 2002-06-04.
09/283,662; 1999-04-01. Programmable System for Processing a Partitioned Network Infrastructure 6,421,730; 2002-07-16.
PCT/US99/13271; 1999-06-10. Network Application Engine WO 99/66680; 1999-12-23.
09/892,218; 2001-06-25. Integrated Network Interface Card and Global Positioning System Receiver 6,593,878; 2003-07-15.
10/059,770; 2002-01-28. Cumulative Status of Arithmetic Operations 6,701,338; 2004-03-02.
10/084,815; 2002-02-27. Programmable System for Processing a Partitioned Network Infrastructure 6,859,841; 2005-02-22.
10/100,746; 2002-03-18. Multiple Consumer-Multiple Producer Rings 6,625,689; 2003-09-23.
10/748,997; 2003-12-29. Reassembly of a transmission control protocol (TCP) data stream from payloads of TCP segments of a bidirectional TCP connection 7,171,486; 2007-01-30.
10/748,311; 2003-12-29. Compiler for Computer Programming Language Including Instruction Statement for Handling Network Packets 7,191,433; 2007-03-15.

Some other pages of mine (a bit dated):

Other people that share my name:

Some other pages of possible interest :

Older projects:

Re-structured using XML 4 Aug 2004. Migrated to new hosting site 4 Jan 2012.
Updated 11-Jul-2007, 3-Feb-2008, 7-Dec-2008, 3-Jul-2009, 27-Sep-2010, 27-Feb-2011, 5-Jan-2012, 9-Oct-2013.