The handshake is the process that establishes the secure connection, in Qt QSslSocket::connectToHostEncrypted and QSslSocket::startServerEncryption take care of the handshake. The "Hello Word" sent across is just normal TCP communication that could be done even without encryption (i.e. using QTcpSocket)
Here you can find a threaded TCP server example. You can ignore the module specific classes QDaemonApplication (think of it as QCoreApplication) and QDaemonLog you can substitute with QDebug.
You have the Fortune server and Fortune client that can serve as base to get you started. The main "detail" is that you want to exchange the sender and receiver part but the technique described there is still valid.
Out of curiosity, how much is "large amount of data" ?