Greylisting is a way to prevent spam from entering your messaging environment by rejecting a message the first time it is presented to your mail server by notifying the sending server it is currently busy. When the message is resubmitted by the sending server, your mail server will recognize the combination of IP, sender e-mail address and receiver e-mail address and accept the mail.
The Exchange transport server roles (both Hub and Edge) offer built-in anti-spam agents, like connection filtering, sender id filtering and more, but Greylisting is not available by default. However, the Exchange Server 2007 SDK includes the code for a Greylisting agent. You can compile this code into a DLL (for example by using Visual Studio 2005), and deploy it on your Exchange transport servers. More information available here: