共计 550 个字符,预计需要花费 2 分钟才能阅读完成。
本文首发于 cartoon 的博客
转载请注明出处:https://cartoonyu.github.io/c…
简述 TCP 和 UDP 的区别?
- 参考博客:https://blog.51cto.com/feinib…
- TCP 面向连接,UDP 面向非连接
- TCP 传输可靠,经过三次握手进行确定,主要传输状态信息;UDP 传输不可靠,主要传输大数据
- TCP 传输数据中含有段标号等信息,UDP 没有
- TCP 传输较 UDP 慢
TCP 为什么要三次握手,两次不行吗?为什么?
- TCP 三次握手目的是为了连接服务器指定端口,建立 TCP 连接,同步双方序列号和确定号,交换 TCP 窗口大小信息
- 两次握手只能让发送方确定已与接收方建立连接,而接收方不能确定是否与发送方连接正常
说一下 TCP 粘包是怎么产生的?
- TCP 通过流传输数据包,数据包间隔时间可能很短,造成前包尾部与后包头部粘合
- 发送方等待缓冲区满才发送数据,接收方没有及时接收数据包
解决措施
- 通过编程解决。当一次数据包完成后,立即通过 TCP 的 push 指令发出
- 通过优化程序设计,使接收方及时接收数据
- 将数据包按数据字段,人为控制多此接收然后合并
OSI 的七层模型都有哪些?
- 参考博客:https://blog.csdn.net/yaopeng…
- 物理层
- 数据链路层
- 网络层
- 传输层
- 会话层
- 表示层
- 应用层
正文完