笃行淡言

用技术实现价值

TCP-UDP-数据报-数据流

简述:

在学习tcp与udp的时候会看到一种说法“tcp提供有确认,有连接的数据流服务,udp提供无确认,无连接的数据报服务”。这里的数据报和数据流困扰了我一段时间,下边我谈谈我对这个的理解。

详述:

为什么说tcp提供数据流服务而udp提供数据报服务呢?这其实与这两个协议本身的传输机制有关,tcp提供可靠的传输机制,也就是说只要是被发送的数据都会被接收方接收到,并且双方也知道被正确接收了,这就有一种现象:一段比较大的数据被分段传送出去,对于接收方而言,就像一股水流一样不断地并且一滴不漏的被接收(这个过程中有确认机制,更加形象地类似水流),非常类似于水流。而udp不负责可靠传输,他只知道尽最大的努力把数据发送出去,并不关心数据是否被接收方实际接收,对于接收方而言,他接收数据的情形是:来一个我接受一个,并不关心中间是否有丢失的数据报,就像飞机空头物资一样,并不是投一包东西,然后地面确认一下,再投第二包东西(这种方式在无形中使得物资之间有了一种默契),而是多架飞机一起往下投物资,没有顺序可言,哪个先下来我先接那个,并且投下的物资是否在半空被老鹰叼走了地面并不关心(这种方式下,不同物资之间似乎相互独立,从传输层理解的话就是每个udp报文独立存在,他们的联系是发生在他的高层应用层)。再结合到数据的发送和接收上,对于接收端而言并无顺序可言,数据报之间没有约定的连接格式,每个udp数据报之间就像独立的个体一样。

总结:

流体现出来的特性是数据报之间前后联系,有一定的确认机制,而报体现出来的是表面的独立性。然后再结合两个协议的理论知识,将通俗的理解结合到理论,这样就很容易理解了。

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dreamwbt/article/details/54097987
个人分类: 计算机网络
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭