[PHP][net_SMTP] Wysłanie maila

Cześć, tworzę sobie klasę do wysyłania maili, wiem że można bez problemu znaleźć sprawdzone i rozbudowane klasy, ale najpierw chciałbym zrobić coś takiego sam. Napisałem teraz coś takiego:

public function sendSMTP(){

		if (! ($smtp = new Net_SMTP("smtp.gmail.com","587"))) {

    	die("Nie można utworzyc obiektu SMTP\n");

		}

		if (PEAR::isError($e = $smtp->connect())) {

    	die($e->getMessage() . "\n");

		}

		if (PEAR::isError($smtp->mailFrom($this->nadawca))) {

    	die("Nie można określić nadawcy <$this->nadawca>\n");

		}

		foreach ($rcpt as $to) {

    	if (PEAR::isError($res = $smtp->rcptTo($this->odbiorca))) {

        die("Nie mozna okreslic odbiorcy <$this->odbiorca>: " . $res->getMessage() . "\n");

    	}

		}

		if (PEAR::isError($smtp->data($this->temat . "\r\n" . $this->naglowek))) {

    	die("Nie mozna wysłać danych\n");

		}

		$smtp->disconnect();

	}

Ale przy wysyłaniu ciągle pisze mi: Failed to connect socket: Connection timed out

To z mojej strony coś jest źle, ze strony serwera na którym mam stronę, czy ze strony gmaila?

A dlaczego nie skorzystasz z wbudowanej funkcji mail() do wysyłania e-maili?