Networking (II)

计算机网络重点概述

本篇文章主要是整理面试常问的问题

七层协议

7 application layer

6 presentation layer

5 session layer

4 transport layer

3 network layer

2 link layer

1 physical layer

TCP

三次握手

1: client - 发送带有SYN标志的数据包

2: server - 发送带有SYN/ACK标志的数据包

3: client - 发送带有ACK标志的数据包

四次挥手

1: client - 发送FIN关闭数据传输

2: server - 发回一个ACK,确认序号为收到的序号加1(一个FIN占用一个序号)

3: server - 关闭与client的连接,发送一个 FIN给client

4: client - 发回 ACK 报文确认,并将确认序号设置为收到序号加 1

如何保证传输的可靠性

  1. checksum:TCP 将保持它首部和数据的检验和。这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到段的检验和有差错,TCP 将丢弃这个报文段和不确认收到此报文段
  2. TCP 的接收端会丢弃重复的数据
  3. 流量控制
  4. 拥塞控制
  5. ARQ 协议
  6. 超时重传

TCP和UDP的区别

  1. TCP面向连接,UDP无连接
  2. TCP可靠,UDP不可靠
  3. TCP以字节流的方式传输,UDP则是数据报文段
  4. TCP传输慢,所需资源多,UDP传输快,所需资源少
  5. 应用场景:TCP:文件传输,邮件传输等,UDP:域名转换,语音,视频
  6. 首部字节:TCP:20-60,UDP:8

状态码

1XX Informational 接收的请求正在处理

2XX Success 请求处理成功

3XX Redirection 需进行附加操作以完成请求

4XX Client Error 客户端错误,服务器拒绝请求或是找不到资源

5XX Server Error 服务器发生错误

你可能感兴趣的:(计算机网络)