计算机网络常见概念

1.OSI七层模型和TCP/IP四层模型的理解

        OSI七层模型分为:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层。

计算机网络是一个复杂的系统,为了能简化操作,增强通用性,所以将其分为七层。

        TCP/IP协议是四层协议(应用层,传输层,网络层,数据链路层),是对OSI七层协议的简化。OSI七层模型始终是一个理想的分层模型,是一个标准,但是在实际的应用中,用到最多的还是TCP/IP四层模型。

应用层常用的协议有:HTTP超文本传输协议,HTTPS安全的超文本传输协议,SMTP邮件发送协议,FTP文件传输协议。

传输层常用的协议有TCP、UDP协议。

        

2.TCP协议的3次握手过程?

        TCP三次握手主要是为了建立可靠的连接,三次握手主要是:

                1.发送方向接收方发送一个建立连接的数据包,SYN=1,ACK=0;

                2.接收方向发送方发送确认建立连接的数据包,SYN=1,ACK=1;

                3.发送方再次向接收方发送确认的数据包,ACK=0,SYN=0;

3.TCP协议为什么要3次握手?2次,4次不行吗?

        三次握手是为了建立一个可靠的连接,两次握手说明了网络连通没有问题,假如有如下情况:

        客户端第一次向服务器发送建立连接的数据包,由于网络的原因,客户端迟迟没有收到接受方的确认建立连接的数据包,由于超出了设定的时间,客户端又发送了一个建立连接的数据包,服务器收到后,发送了确认建立连接的数据包...。这时已经建立连接,服务器与客户端开始传输数据,而客户端第一次发送的数据包到达了服务器,服务器以为是再次建立连接,于是又发送了一个确认数据包,由于客户端已经建立连接,会忽略这次服务器发来的数据包,但是服务器发送出去数据包一直等待回复,导致了服务器的无效等待,造成资源浪费,如果过于频繁会导致服务器停止响应。所有要三次握手。2次不行。当然,四次握手也可以,但是三次握手最节省性能。

        

4.谈谈TCP协议的四次挥手过程?

        1.发送方向接收方发送断开连接的数据包,FIN=1,ACK=0;

        2.接收方向发送方 发送确认的数据包,FIN=0,ACK=1;

        3.接收方向发送方传输完数据后,确认断开连接,FIN=1,ACK=1;

        4.发送方确认,ACK=1;

5.什么是流量控制?

        流量控制就是指,控制发送方的发送数据的速率。

        接受方通过TCP头部的窗口(占2个字节),来告知发送方降低发送的速率。来达到流量控制的效果。

        发送方通过滑动窗口的来实现对数据包发送速率的实现。


6.什么是滑动窗口?

        滑动窗口是实现TCP协议流量控制的机制。

        发送方与接收方都维护了自己的缓冲区,缓冲区就是窗口,发送方的滑动窗口由接受方发送的TCP头部中的窗口定义。

        发送方的窗口有:已发送并确认,发送未确认,未发送未确认,未发送未确认超出滑动窗口。

        


7.什么是拥塞控制?

        发送方通过拥塞窗口来控制每次发送数据包的个数。数据包的个数影响着拥塞,可以通过设置拥塞控制的大小来对拥塞进行控制。

        拥塞控制包含以下四个算法:

                1.慢启动:拥塞窗口的大小随着发送次数呈指数级上涨。

                2.拥塞避免:当拥塞窗口的大小达到了慢启动门限,拥塞窗口呈线性增长。

                3.拥塞发生:当拥塞发生时,会有两种数据重传机制

                        超时重传:将慢启动门限设置为拥塞窗口的一半。

                                          将拥塞控制的大小设置为1。

                                        重新开始慢启动。

                        快速重传:将慢启动门限设置为拥塞窗口的一半。

                                          将拥塞窗口大小设置为慢启动门限。

                4.快速恢复:快速恢复一半与快速重传一起使用。

                                       将拥塞窗口的大小+3;

8.TCP和UDP有什么区别?

        TCP:传输控制协议,属于传输层的一个面向连接、基于字节流的可靠性协议

                TCP具有可靠性传输,流量控制,拥塞控制等特点。

        UDP:一个无连接,不保证可靠性的传输层协议。

        TCP协议具有可靠性,而UDP协议不具备可靠性。

        TCP面向连接,一对一,而UDP无连接,可以一对多。

        TCP传输效率慢,需要额外的资源开销,而UDP传输效率高。

        TCP协议的首部需要20-60个字节,UDP协议需要8个字节。

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