October 2006
Total Page:16
File Type:pdf, Size:1020Kb
O CTOBER 2006 VOLUME 31 NUMBER 5 THE USENIX MAGAZINE OPINION Musings RIK FARROW PROGRAMMING Algorithms for the 21st Century STEPHEN C. JOHNSON Maybe You Should Use Python MIKE HOWARD SYSADMIN Configuration Management: Models and Myths, Part 2 MARK BURGESS It’s About Time . BRAD KNOWLES T ECHNOLOGY Multi-Core Microprocessors Are Here RICHARD MCDOUGALL AND JAMES LAUDON Measuring Performance of FreeBSD Disk Encryption TIMO SIVONEN N ETWORK Automating Server Selection with OASIS MICHAEL J. FREEDMAN WISPER: Open Source, Long-Distance Wireless RI K FARROW C OLU MNS Practical Perl Tools:Tie Me Up,Tie Me Down (Part 2) DAVID BLANK-EDELMAN ISPadmin: Anti-Spam Roundup ROBERT HASKINS Echo in VoIP Systems H EISON CHAK /dev/random ROBERT G. FERRELL BOOK REVIEWS Book Reviews ELIZABETH ZWICKY ET AL. S T ANDARDS An Update on Standards: Diary of a Standard Geek NICK STOUGHTON Why Get Involved in POSIX? ANDREW JOSEY USENIX NOTES USACO News ROB KOLSTAD SAGE Update STRATA CHALUP C ONFERENCES Annual Tech ’06; SRUTI ’06; EVT ’06 The Advanced Computing Systems Association Upcoming Events INTERNET MEASUREMENT CONFERENCE 2006 1ST SYMPOSIUM ON COMPUTER HUMAN (IMC 2006) INTERACTION FOR MANAGEMENT OF INFORMATION Sponsored by ACM SIGCOMM in cooperation with USENIX TECHNOLOGY (CHIMIT ’07) OCTOBER 25–27, 2006, RIO DE JANEIRO, BRAZIL Sponsored by ACM in cooperation with USENIX http://www.imconf.net/imc-2006/ MARCH 30–31, 2007, CAMBRIDGE, MA, USA http://chimit.cs.tufts.edu 3RD WORKSHOP ON REAL, LARGE DISTRIBUTED SYSTEMS (WORLDS ’06) SECOND WORKSHOP ON TACKLING COMPUTER SYSTEMS PROBLEMS WITH MACHINE LEARNING NOVEMBER 5, 2006, SEATTLE, WA, USA TECHNIQUES (SYSML ’07) http://www.usenix.org/worlds06 Co-located with NSDI ’07 7TH USENIX SYMPOSIUM ON OPERATING APRIL 10, 2007, CAMBRDIGE, MA, USA SYSTEMS DESIGN AND IMPLEMENTATION http://www.usenix.org/usenix07 (OSDI ’06) Paper submissions due: November 20, 2006 Sponsored by USENIX in cooperation with ACM SIGOPS 4TH SYMPOSIUM ON NETWORKED SYSTEMS NOVEMBER 6–8, 2006, SEATTLE, WA, USA DESIGN AND IMPLEMENTATION (NSDI ’07) http://www.usenix.org/osdi06 Sponsored by USENIX in cooperation with ACM SIGCOMM and ACM SIGOPS SECOND WORKSHOP ON HOT TOPICS IN SYSTEM APRIL 11–13, 2007, CAMBRIDGE, MA, USA DEPENDABILITY (HOTDEP ’06) http://www.usenix.org/nsdi07 Paper submissions due: October 9, 2006 NOVEMBER 8, 2006, SEATTLE, WA, USA http://www.usenix.org/hotdep06 11TH WORKSHOP ON HOT TOPICS IN OPERATING SYSTEMS (HOTOS XI) ACM/IFIP/USENIX 7TH INTERNATIONAL Sponsored by USENIX in cooperation with the IEEE Technical MIDDLEWARE CONFERENCE Committee on Operating Systems (TCOS) NOV. 27–DEC. 1, 2006, MELBOURNE, AUSTRALIA MAY 7–9, 2007, SAN DIEGO, CA, USA http://2006.middleware-conference.org http://www.usenix.org/hotos07 Paper submissions due: January 4, 2007 20TH LARGE INSTALLATION SYSTEM THIRD INTERNATIONAL ACM SIGPLAN/SIGOPS ADMINISTRATION CONFERENCE (LISA ’06) CONFERENCE ON VIRTUAL EXECUTION DECEMBER 3–8, 2006, WASHINGTON, D.C., USA ENVIRONMENTS (VEE ’07) http://www.usenix.org/lisa06 Sponsored by ACM SIGPLAN and SIGOPS in cooperation with USENIX 5TH USENIX CONFERENCE ON FILE AND STORAGE JUNE 13–15, 2007, SAN DIEGO, CA, USA TECHNOLOGIES (FAST ’07) http://vee07.cs.ucsb.edu Sponsored by USENIX in cooperation with ACM SIGOPS, IEEE Paper submissions due: February 5, 2007 Mass Storage Systems Technical Committee, and IEEE TCOS FEBRUARY 13–16, 2007, SAN JOSE, CA, USA 2007 USENIX ANNUAL TECHNICAL http://www.usenix.org/fast07 CONFERENCE JUNE 17–22, 2007, SANTA CLARA, CA, USA http://www.usenix.org/usenix07 Paper submissions due: January 9, 2007 For a complete list of all USENIX & USENIX co-sponsored events, see http://www.usenix.org/events OPINION 2 Musings RIK FARROW PROGRAMMING 6 Algorithms for the 21st Century STEPHEN C. JOHNSON 13 Maybe You Should Use Python MIKE HOWARD contents SYSADMIN 18 Configuration Management: Models and Myths. Part 2: Babel, Babble,Toil, and Grammar MARK BURGESS 25 It’s About Time . BRAD KNOWLES TECHNOLOGY 32 Multi-Core Microprocessors Are Here RICHARD MCDOUGALL AND JAMES LAUDON 40 Measuring Performance of FreeBSD Disk Encryption TIMO SIVONEN NETWORK 46 Automating Server Selection with OASIS MICHAEL J. FREEDMAN 53 WISPER: Open Source, Long-Distance Wireless RI K FARROW COLUMNS VOL. 31, #5, OCTOBER 2006 57 Practical Perl Tools:Tie Me Up,Tie Me Down (Part 2) EDITOR ;login: is the official DAVID BLANK-EDELMAN Rik Farrow magazine of the [email protected] USENIX Association. 65 ISPadmin: Anti-Spam Roundup MANAGING EDITOR ;login: (ISSN 1044-6397) is ROBERT HASKINS Jane-Ellen Long published bi-monthly by the 69 Echo in VoIP Systems [email protected] USENIX Association, 2560 H EISON CHAK COPY EDITOR Ninth Street, Suite 215, David Couzens Berkeley, CA 94710. 72 /dev/random [email protected] $85 of each member’s annual ROBERT G. FERRELL PRODUCTION dues is for an annual sub- Lisa Camp de Avalos scription to ;login:. Subscrip- BOOK REVIEWS Casey Henderson tions for nonmembers are $115 per year. 75 Book Reviews TYPESETTER ELIZABETH ZWICKY ET AL. Star Type Periodicals postage paid at [email protected] Berkeley, CA, and additional offices. STANDARDS REPORTS USENIX ASSOCIATION 2560 Ninth Street, POSTMASTER: Send address 78 An Update on Standards: Diary of a Standard Geek Suite 215, Berkeley, changes to ;login:, NICK STOUGHTON California 94710 USENIX Association, Phone: (510) 528-8649 2560 Ninth Street, 80 Why Get Involved in POSIX? FAX: (510) 548-5738 Suite 215, Berkeley, ANDREW JOSEY CA 94710. http://www.usenix.org USENIX NOTES http://www.sage.org ©2006 USENIX Association. USENIX is a registered trade- 82 USACO News mark of the USENIX Associa- ROB KOLSTAD tion. Many of the designa- tions used by manufacturers 83 SAGE Update and sellers to distinguish their STRATA CHALUP products are claimed as trade- 84 Writing for ;login: marks. USENIX acknowl- edges all trademarks herein. Where those designations CONFERENCE REPORTS appear in this publication and USENIX is aware of a trade- 85 Annual Tech ’06 mark claim, the designations 104 SRUTI ’06 have been printed in caps or initial caps. 107 EVT ’06 SOME GUY FROM QUALCOMM TOLD me, during the USENIX Security program RIK FARROW committee party in Vancouver, that he was amazed that I could come up with so many columns. Sometimes I wonder about that too, as I strive not to repeat myself or to travel down already well-worn paths. Just musings like following a rutted road, it is all too easy to follow the groove. [email protected] I’ve just returned from the USENIX Security con- ference in Vancouver, the fifteenth such confer- ence, and, as usual, I find myself depressed. Not just because the conference, which itself was a lot of fun, is over, but because not enough has changed. True, some students showed how they could build a simple device that was able to monitor the key- board serial cable for possible username/password combinations. The students came up with a scheme that encoded passwords by varying the time between keystrokes by 20 milleseconds, adding some framing, and repeating the same sequence of timings. If those keystrokes travel across a network, even as part of an encrypted SSH connection, they will expose the password. Isn’t anything safe? No, not really, but there cer- tainly are ways that we could make things better. Sitting in on the 2006 USENIX/ACCURATE Electronic Voting Technology Workshop (www.usenix.org/events/evt06), I learned that cryptographic techniques which would make vot- ing more accurate have existed for many years. In his presentation, Josh Benaloh of Microsoft Re- search said that the hard problems in voting, such as accurately recording votes, accurately counting those votes, and providing the voter with proof that her vote was recorded as cast without reveal- ing the way she voted, are manna to cryptogra- phers. Give them a difficult problem, and they eat it up. So now we have a choice of solutions, not just one. Are we using them? Not in the U.S. Joseph Lorenzo Hall, a lawyer at UC Berkeley, suggested that we need to add a new category to open source licensing—“open disclosure.” “Open disclosure” means that vendors maintain both control of and the license to their software, but openly disclose the code so that it can be checked for correctness. This sounds like a great idea, especially in countries where everything gets done for a profit, from prisons to hospitals, and even voting machines. But there are flies in this oint- 2 ;LO GIN: V OL. 31, NO. 5 ment, as some voting vendors’ code is so ugly that they would likely drop out of the business sooner than reveal their code. As he said this, I heard mumblings in the room from people who had actually had permission to audit DRE (Direct Recording Election) machine code, quietly agreeing with him about the crappiness of the code used in popular voting machines. Another talk really knocked my socks off (yes, I was wearing shoes). Ka- Ping Yee, also of UC Berkeley, talked about work he had done with David Wagner, Marti Hearst, and Steve Bellovin to create voting software. They had split the voting code into two parts: the set of images that represent the ballots and screens that make up the user interface, and the code that interprets the voter’s input. Each image, representing a particular contest for, say, corporate commissioners, can be rendered in advance, tested, approved, and digitally signed. The logic that ties the images together, creating a flow from one screen to the next, can also be verfied through testing. Sounds pretty simple, and it actually is. Instead of the 31,000+ lines of C++ code sitting on top of the Microsoft Foundation Libraries and Windows CE that’s found in Diebold’s DRE system, Ping and his friends wrote their functional e-voting software in 293 lines of Python and just a couple of libraries.