From owner-freebsd-chat Wed Feb 12 16: 7:43 2003 Delivered-To: freebsd-chat@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3262837B401 for ; Wed, 12 Feb 2003 16:07:38 -0800 (PST) Received: from vador.skynet.be (vador.skynet.be [195.238.3.236]) by mx1.FreeBSD.org (Postfix) with ESMTP id D587443FB1 for ; Wed, 12 Feb 2003 16:07:36 -0800 (PST) (envelope-from brad.knowles@skynet.be) Received: from [10.0.1.2] (ip-26.shub-internet.org [194.78.144.26] (may be forged)) by vador.skynet.be (8.12.7/8.12.7/Skynet-OUT-2.21) with ESMTP id h1D06gPY011968; Thu, 13 Feb 2003 01:07:28 +0100 (MET) (envelope-from ) Mime-Version: 1.0 X-Sender: bs663385@pop.skynet.be Message-Id: In-Reply-To: <3E4A81A3.A8626F3D@mindspring.com> References: <20030211032932.GA1253@papagena.rockefeller.edu> <3E498175.295FC389@mindspring.com> <3E49C2BC.F164F19A@mindspring.com> <3E4A81A3.A8626F3D@mindspring.com> Date: Thu, 13 Feb 2003 00:07:36 +0100 To: Terry Lambert From: Brad Knowles Subject: Re: Email push and pull (was Re: matthew dillon) Cc: Brad Knowles , Rahul Siddharthan , freebsd-chat@freebsd.org Content-Type: text/plain; charset="us-ascii" ; format="flowed" Sender: owner-freebsd-chat@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org At 9:17 AM -0800 2003/02/12, Terry Lambert wrote: > In terms of I/O throughput, you are right. > > But we are not interested in I/O throughput, in this case, we > are interested in minimizing dynamic pool size, for a given > pool retention time function, over a given input and output > volume. Under what circumstances are you not interested in I/O throughput?!? I have seen some mail systems that were short of disk space, but when we looked carefully at the number of messages in the mailboxes and the number of recipients per message, there just wasn't a whole lot of disk space that we could potentially have recovered. This was across 100,000+ POP3/dialup users at an earlier time in the life of Belgacom Skynet, the largest ISP in Belgium. Virtually all other mail systems I've ever seen have not had disk space problems (unless they didn't enforce quotas), but were instead critically short of I/O capacity in the form of synchronous meta-data updates. This was true for both the MTA and the mailbox storage mechanism. > The Usenet parallel is probably not that apt. Usenet provides > an "Expires:" header, which bounds the pool retention time to a > fixed interval, reagardless of volume. Almost no one ever uses the Expires: header anymore. If they do, it's in an attempt to ensure that the message stays around much, much longer than normal as opposed to the reverse. No, what I was talking about was the fundamental fact that you cannot possibly handle a full USENET feed of 650GB/day or more, if you don't have enough spindles going for you. It doesn't matter how much disk space you have, if you don't have the I/O capacity to handle the input. > Again, I disagree. Poor design is why they don't scale. Right, and another outcome of poor design is their stupid choice of single-instance store -- a false economy. >> These slides have absolutely nothing whatsoever to do with the >> MTA. They have to do with the mailbox, mailbox delivery, mailbox >> access, etc.... You need message locking in some fashion, you may >> need mailbox locking, and most schemes for handling mailboxes involve >> either re-writing the mailbox file, or changing file names of >> individual messages (or changing their location), etc.... These are >> all synchronous meta-data operations. > > You do not need all the locking you state you need, at least not > at that low a granularity. Really? I'd like to hear your explanation for that claim. > If you want to talk AOL, AOL used to > use VMS systems, which used record locking. At what time? I worked there from 1995 through 1997, and I worked very closely with the people who had designed the original mail system for Quantum Computer Systems. The founding four came from a company where they had tried to use Tandem computers, and at that time Tandem couldn't deliver on their fault-tolerant claims. Contrariwise, Stratus could, so they build the system on Stratus. It was in 1996 that they started moving everything off Stratus and onto Unix systems. I know quite a bit about the details of that mail system, because I was materially involved in the implementation from the Operations side. I would be very interested to know at what time they have ever used any Vax/VMS systems anywhere in the entire history of the company. I have plenty of contacts that I can use to verify any claims. >> However, keep in mind that I've already had a deep discussion of >> these points with Nick Christenson (author of the book _Sendmail >> Performance Tuning_, > > Sendmail performance tuning is not the issue, although if you > are a transit server for virtual domains, you should rewrite the > queueing algorithm. My point is not that Sendmail is the issue. My point is that Nick has designed and built some of the largest open-source based mail systems in the world, and he and I worked extensively to create the architecture laid out in my LISA 2002 talk. If you look at and , you will find virtually the same architecture being used by the major commercial vendors for their high-volume/high-SLA clients. > See: > > ftp://ftp.whistle.com/pub/misc/sendmail/ This was written for sendmail 8.9.3, way before the advent of multiple queues and all other sorts of new features. It is no longer relevant to modern sendmail. > The Open Source book is wrong. You can not build such a system > without significant modification. My source tree, for example, > contains more than 6 million lines of code at this point, and > about 250,000 of those are mine, modifying Cyrus, modifying > OpenLDAP, modifying Sendmail, modifying BIND, etc.. IIRC, Nick talks about the changes that were required -- some, but not excessive. Read the paper. > Because Open Source projects are inherently incapable of doing > productization work. True enough. However, this would imply that the sort of thing that Nick has done is not possible. He has demonstrated that this is not true. Yes, using open source to do this sort of thing can be difficult (as I am finding out), but it doesn't have to be impossible. > $0 is not really true. They are paying for you, in the hopes > that it will end up costing less than a prebuilt system. It's a different color of money. They had already signed the contract stating that I would be working for them through April (at the earliest), before this project was dumped in my lap. So, that's not anything extra. Buying new machines, or buying software, now that's spending extra. > Contact Stanford, MIT, or other large institutions which have > already deployed such a system. I've already read much of Mark Crispin's writings. I know how they did it at UW, and they didn't use NFS. I've read the Cyrus documentation, and they didn't use NFS either. That only leaves Courier-IMAP, and while I've read the documentation they have available, I am finding it difficult to find anyone who has actually built a larger-scale system using Courier-IMAP on NFS. Plenty of people say they've heard of it being done, or it should be easily do-able, but I'm not finding the people themselves who've actually done it. >> Correct, in theory. Where's the practice? > > Not in Open Source; Open Source does not perform productization or > systems integration. Therein lies the problem. You may be able to write or re-write all of the open source systems in existence, but that sort of thing is not within my capabilities, and would not be accepted for this project. They're looking askance at my modifications to procmail to get it to use Maildir format and hashed mailboxes -- there's no way they'd accept actual source code changes. > I was unaware of this from the pitch on the billboards and WSJ > advertisements. I rather expect anyone buying it will make the > same assumptions I did, that when they were talking about making > "MS Exchange Rock Solid", they were talking about leaving it there. Which is exactly what they want you to think. Up to the point where they've gotten you to sign the contract. > 8-). As you well know. ;-) -- Brad Knowles, "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -Benjamin Franklin, Historical Review of Pennsylvania. GCS/IT d+(-) s:+(++)>: a C++(+++)$ UMBSHI++++$ P+>++ L+ !E-(---) W+++(--) N+ !w--- O- M++ V PS++(+++) PE- Y+(++) PGP>+++ t+(+++) 5++(+++) X++(+++) R+(+++) tv+(+++) b+(++++) DI+(++++) D+(++) G+(++++) e++>++++ h--- r---(+++)* z(+++) To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-chat" in the body of the message