João Távora пишет:

TCP does not provide "delivery assurance". If the application needs to know the data got through, it must use application-level ackwowledgements. SSL does not change this and provides the same set of guarantees and assurances
TCP does.

I'm sorry to disagree but TCP, unlike UDP, does provide "reliable data transfer". It does allow hijacking. I'll take from wikipedia to try to explain better

http://en.wikipedia.org/wiki/Transmission_Control_Protocol

"TCP is a reliable stream delivery service that guarantees delivery of a data stream sent from one host to another without duplication or losing data. Since packet transfer is not reliable, a technique known as positive acknowledgment with retransmission is used to guarantee reliability of packet transfers. This fundamental technique requires the receiver to respond with an acknowledgment message as it receives the data. The sender keeps a record of each packet it sends, and waits for acknowledgment before sending the next packet. The sender also keeps a timer from when the packet was sent, and retransmits a packet if the timer expires. The timer is needed in case a packet gets lost or corrupted.
What this article says is this: if you *received* data from TCP connection it will be "without duplication or losing data". It doesn't say: if you *send* data it will be received correctly by other host. It's impossible to garantee.

--
Andrey Koltsov


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
User Support Mailing List                    openssl-users@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to