秋招面试常见问题--计算机网络

1.TCP/UDP区别?

1.1 TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接

1.2 TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付

     Tcp通过校验和,重传控制,序号标识,滑动窗口、确认应答实现可靠传输。如丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。

1.3 UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。

1.4 每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信

1.5 TCP对系统资源要求较多,UDP对系统资源要求较少。

2. 拥塞控制?

在某段时间内,对网络中的资源(链路容量,交换节点中的缓存和处理机等)需求大于可用的,就会造成拥塞。 

拥塞控制就是防止过多的数据注入到网络中造成拥塞,是路由器或链路不会过载。

拥塞控制有四种算法:1.慢开始;2拥塞避免;3.快重传和快恢复算法;4快恢复算法和快重传算法配合使用。

拥塞控制和流量控制的区别: 
拥塞控制是一个全局性的过程,涉及所有主机和路由器,以及其他因素。 
流量控制是端到端的,发送端和接收端,需要做的是抑制发送端的发送速率,以便来的及接收。

3. 流量控制?

TCP流量控制是利用滑动窗口机制实现的,接收方在返回的ACK中会包含自己的接收窗口的大小以控制发送方的数据发送

4.多层协议?

4.1 OSI有七层模型

应用层(Application):最靠近用户的OSI层。这一层为用户的应用程序(例如电子邮件、文件传输和终端仿真)提供网络服务。

表示层(Presentation):可确保一个系统的应用层所发送的信息可以被另一个系统的应用层读取。例如,PC程序与另一台计算机进行通信,其中一台计算机使用扩展二一十进制交换码(EBCDIC),而另一台则使用美国信息交换标准码(ASCII)来表示相同的字符。如有必要,表示层会通过使用一种通格式来实现多种数据格式之间的转换。 

会话层(Session):通过运输层(端口号:传输端口与接收端口)建立数据传输的通路。主要在你的系统之间发起会话或者接受会话请求(设备之间需要互相认识可以是IP也可以是MAC或者是主机名.

传输层(Transport):定义了一些传输数据的协议和端口号(WWW端口80等),TCP(transmission control protocol –传输控制协议,传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据) ;UDP(user datagram protocol–用户数据报协议,与TCP特性恰恰相反,用于传输可靠性要求不高,数据量小的数据,如QQ聊天数据就是通过这种方式传输的)。 主要是将从下层接收的数据进行分段和传输,到达目的地址后再进行重组。常常把这一层数据叫做段。 

网络层(Network):在位于不同地理位置的网络中的两个主机系统之间提供连接和路径选择。Internet的发展使得从世界各站点访问信息的用户数大大增加,而网络层正是管理这种连接的层

数据链路层(Data Link):定义了如何让格式化数据以进行传输,以及如何让控制对物理介质的访问。这一层通常还提供错误检测和纠正,以确保数据的可靠传输。

物理层(Physical):主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后在转化为1、0,也就是我们常说的数模转换与模数转换)。这一层的数据叫做比特

4.2 TCP/IP四层模型

应用层

运输层

网际层

网络接口层:没有什么具体内容

5. 三次握手/四次挥手?

https://blog.csdn.net/ZWE7616175/article/details/80432486

这篇博文比较详细的介绍了其过程,包括为什么要三次握手,四次可不可以等问题



猜你喜欢

转载自blog.csdn.net/changengchu3961/article/details/80954624