What's the difference between streams and datagrams in network programming?

前端 未结 3 1927
迷失自我
迷失自我 2021-01-29 17:30

What\'s the difference between sockets (stream) vs sockets (datagrams)? Why use one over the other?

3条回答
  •  梦如初夏
    2021-01-29 17:53

    Stream Socket:

    • Dedicated & end-to-end channel between server and client.
    • Use TCP protocol for data transmission.
    • Reliable and Lossless.
    • Data sent/received in the similar order.
    • Long time for recovering lost/mistaken data

    Datagram Socket:

    • Not dedicated & end-to-end channel between server and client.
    • Use UDP for data transmission.
    • Not 100% reliable and may lose data.
    • Data sent/received order might not be the same.
    • Don't care or rapid recovering lost/mistaken data.

提交回复
热议问题