I'm not sure if I undestand your question completely.
I think you probably need to upload a file from a stream - you can do it using following code:
// create client, connect and log in
Sftp client = new Sftp();
client.Connect(hostname);
client.Login(username, password);
// upload a text using a MemoryStream
string message = "Hello from Rebex SFTP for .NET!";
byte[] data = System.Text.Encoding.Default.GetBytes(message);
System.IO.MemoryStream ms = new System.IO.MemoryStream(data);
client.PutFile(ms, "message.txt");
(the code has been taken from the SFTP Tutorial)
Anyway, don't use "ftp://ftp2.domain.com" for a hostname parameter in Connect method. -The hostname is only the "ftp2.domain.com" (without the "ftp://").
If you need more advice, please write again.