1、简述osi七层模型和TCP/IP五层模型
OSI:开放系统互连参考模型
应用层 | 为应用程序提供网络服务 |
---|---|
表示层 | 数据格式化,加密、解密 |
会话层 | 建立、维护、管理会话连接 |
传输层 | 建立、维护、管理端到端连接 |
网络层 | IP寻址和路由选择 |
数据链路层 | 控制网络层与物理层之间通信 |
物理层 | 比特流传输 |
TCP/IP模型
应用层 | 通过各种协议向终端用户提供业务应用 |
---|---|
传输层 | 保证源端到目的端之间的可靠传输 |
网络层 | 解决网络之间的逻辑转发问题 |
网络接口层(数据链路层) | 控制网络层与物理层之间通信 |
网络接口层(物理层) | 比特流传输 |
2、总结描述TCP三次握手四次挥手
TCP三次握手
- 客户端A发送一个标识了SYN的数据段(序列号seq=a),表示期望与服务器A建立连接
- 服务器A回复标识了SYN+ACK的数据段(序列号seq=b),并确认客户端A的SYN报文(序列号ack=a+1)
- 客户端A发送一个标识了ACK的数据段(序列号seq=a+1),并确认服务器A的SYN报文(序列号ack=b+1)
TCP四次挥手
- 客户端A想终止连接,于是发送一个标识了FIN、ACK的数据段(序列号seq=a,确认序列号ack=b)
- 服务器A回应一个标识了ACK的数据段(序列号seq=b),并确认客户端的FIN报文(确认序列号ack=a+1)
- 服务器A想终止连接,于是向客户端A发送一个标识了FIN,ACK的数据段(序列号为seq=b,确认序列号ack=a+1)
- 客户端A回应了一个标识了ACK的数据段(序列号seq=a+1),并确认服务器A的FIN报文(确认序列号ack=b+1)
3、描述TCP和UDP区别
TCP | UDP |
---|---|
工作在传输层 | 工作在传输层 |
面向连接协议 | 非面向连接协议 |
全双工协议 | 提供不可靠的网络访问 |
错误检查 | 有限的错误检查 |
数据恢复,重传 | 无数据恢复特性 |
半关闭 | 传输性能高 |
将数据打包成段,排序 | |
确认机制 | |
流量控制,滑动窗口 | |
拥塞控制,慢启动和拥塞避免算法 |