Op 11-9-2012 9:44, Till Oliver Knoll schreef: > 2012/9/11 d3fault <d3faultdot...@gmail.com>: >> lol thanks for explaining to me what TCP is. Already knew that before >> making this thread... > There still seem to be some mis-conceptions about what TCP *really* is > (and "network layers" in general) on your side though ;) > > Let's go through it step by step (I'm no network expert either, so I > probably make over-simplistic statements, but you'll get the point > anyway, I hope): > > By the way, did you already read my previous post? > >> But how can you say: >> a) TCP ACKs can't be used for application layer reliability > Because a "TCP ACK" simply means: "I have received the first N bytes > in *order*". Point. There is no more information in that, other than > the sender knows: "Yes, the *Transport* layer (repeat after me: > *Transport* layer, *Transport* layer...) has properly received the > first N bytes in order. Just one side note (on an otherwise good explanation): N need *not* be the same as the number of bytes you want to send in a message inside your stream! The message may be choped up in any number of parts, depending on the underlying network. A single 1K message _may_ result in a dozen or more ACK messages on the TCP level (or just one, of course). You as an application programmer do not know, and you really, really do not *want* to know. The TCP ACKs are an implementation detail of the TCP protocol. It has nothing to do with your application, but it is simply a part of the machinery that is responsible for making sure TCP can do what it promises to do: deliver a reliable connection (in the sense already explained earlier). > If you're really curious about all this, then get a good book: > "Computer Networks" by Andrew S. Tanenbaum (a classic and must-read!) > was already mentioned. Been there, done that, got the university degree to prove it ;-) But I agree: it is a good book. Short introductions to the ideas in protocol layers can be found by googling on "OSI model" and "Internet Protocol Suite".
André _______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest