面试必备(背)--计算机网络八股文系列

面试必备(背)--计算机网络八股文系列

时间: 作者:新用户0935snDB

面试必备(背)--计算机网络八股文系列篇)

面试必备(背)--计算机网络八股文系列

1. OSI 七层、TCP/IP 四层的关系和区别?

七层模型,亦称OSI(Open System Interconnection),它是一个七层的、抽象的模型体,不仅包括一系列抽象的术语或概念,也包括具体的协议。

OSI 七层从上往下依次是:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。

图片来源于网络

TCP/IP 四层从上往下依次是:应用层、传输层、网络层(互联网层)、链路层(数据链路层/网络接口层)。与 OSI 七层的映射关系如下:

OSI七层和TCP/IP的区别:

TCP/IP 是一个协议簇;而 OSI 则是一个模型。TCP/IP 是由一些交互性的模块做成的分层次的协议,其中每个模块提供特定的功能;OSI 则指定了哪个功能是属于哪一层的。TCP/IP 四层是 OSI 七层的简化版,已经成为实事国际标准。

附一张经典图:

图片来源于网络

2. TCP 与 UDP 的区别?

小结 TCP 与 UDP 的区别:

TCP 基于连接 UDP 无连接;对系统资源的要求(TCP较多,UDP少);TCP 流模式,UDP 数据报模式;TCP 保证数据正确性且保证数据顺序;UDP 可能丢包且不保证数据顺序;3. TCP 是如何实现数据的可靠性?

一句话:通过校验和、序列号、确认应答、超时重传、连接管理、流量控制、拥塞控制等机制来保证可靠性。

(1)校验和

在数据传输过程中,将发送的数据段都当做一个16位的整数,将这些整数加起来,并且前面的进位不能丢弃,补在最后,然后取反,得到校验和。

发送方:在发送数据之前计算校验和,并进行校验和的填充。接收方:收到数据后,对数据以同样的方式进行计算,求出校验和,与发送方进行比较。

(2)序列号

TCP 传输时将每个字节的数据都进行了编号,这就是序列号。序列号的作用不仅仅是应答作用,有了序列号能够将接收到的数据根据序列号进行排序,并且去掉重复的数据。

(3)ACK 确认应答

当消息接收方接收到消息,返回一个对应的 ACK,发送方就知道这个消息已经处理完成,这个 ACK 报文中带有对应的确认序列号,告诉发送方,接收了哪些数据,下一次数据从哪里传。

<