计算机基础面试总结——计算机网络

目录

 一、概述

1.1 计算机网络最重要的功能

1.2 带宽和宽带的区别

1.3 计算机网络体系结构

1.4 协议的三个要素

二、物理层

2.1 物理层作用

2.2 奈奎斯特定理和香农定理

三、数据链路层

3.1 局域网

3.2 广域网

四、网络层

4.1 网络层协议

4.2 路由协议

4.3 IP协议

五、运输层

5.1 TCP 和 UDP (**)

5.2 TCP 的三次握手(***)

5.3 TCP的四次挥手(***)

5.4 TCP 拥塞处理机制(**)

六、应用层

6.1 DNS(域名系统)

6.2 POST 和 GET 的区别(**)

6.3 Cookie 和 Session 的区别

6.4 http 和 https 的区别和联系(*)

6.5 Http 从发出请求到获得页面的过程(**)

6.6 常见状态码及原因短语(*)

6.7 HTTP 首部有哪些?分别介绍几个具体的首部字段(**)

七、网络安全(待续……)


 一、概述

1.1 计算机网络最重要的功能

        |- 连通

        |- 共享

1.2 带宽和宽带的区别

        |- 带宽:传输速度;

        |- 宽带:在数字通信中通常指64kbit/s以上信号的带宽。

1.3 计算机网络体系结构

七层架构模型五层模型TCP/IP模型
表示层应用层应用层
会话层
应用层
传输层传输层传输层
网络层网络层网络层
数据链路层数据链路层网络接口层
物理层物理层

1.4 协议的三个要素

        |- 语法、语义、同步;

        |- 垂直服务,水平通信。

二、物理层

2.1 物理层作用

        屏蔽各种物理设备的差异,为数据链路层提供服务。

2.2 奈奎斯特定理和香农定理

        |- 理想低通信道下的极限数据传输率 = 2*W*log(V)

        |- 信道的极限数据传输率 = W*log(1+S/N)

三、数据链路层

3.1 局域网

        |- MAC 地址(18 + (64 - 1500)字节(Byte))

3.2 广域网

        |- PPP 协议

        |- HDLC 协议

四、网络层

4.1 网络层协议

        |-  地址解析协议(ARP)

        |-  动态主机配置协议(DHCP):基于 UDP

        |-  网际控制报文协议(ICMP)

        |-  网络地址转换协议(NAT)

4.2 路由协议

        |-  RIP(应用层协议,基于UDP)

        |-  OSPF

        |-  BGP(应用层协议,基于TCP)

4.3 IP协议

IP数据报

        |-  首部固定长度:20 字节;

        |-  IP 数据报协议字段:6(TCP),17(UDP),89(OSPF),1(ICMP),2( IGMP);

        |-  MTU(最大传输单元):1500 字节。

五、运输层

5.1 TCP 和 UDP (**)

        1、TCP报文格式

TCP

        2、UDP报文格式

UDP

        3、TCP 和 UDP 的区别和应用场景

TCPUDP
首部大小20字节8字节
特点面向字节流、面向连接的可靠交付面向报文、无连接的、尽最大努力交付
通信一对一一对一,一对多,多对一和多对多
优势无差错,不丢失,不重复,且按序到达简单、传输快、具有较好的实时性
缺点传输速度较慢存在报文丢失
应用场景电话、浏览器网页等等DNS 域名解析,实时游戏,视频

5.2 TCP 的三次握手(***)

        1、三次握手详解

三次握手

                1)客户端向服务器端发送“请求连接报文”,进入SYN-SENT阶段,其中:

                        |-  标记位为SYN,表示“请求建立新连接”;

                        |-  序号为Seq=X。

                2)服务器端接收到来自客户端的“请求连接报文”之后,并返回“确认报文”,进入SYN-RCVD阶段,其中:

                        |-  标志位为SYN和ACK,表示“确认客户端的报文Seq序号有效,并同意创建新连接”;

                        |-  序号为Seq=y;

                        |-  确认号为Ack=x+1,表示收到客户端的序号Seq。

                3)客户端接收到来自服务器端的“确认报文”之后,并发送“确认报文”,进入ESTABLISHED阶段,其中:

                        |-  标志位为ACK,表示“确认收到服务器端同意连接的信号”;

                        |-  确认号为Ack=y+1,表示收到服务器端序号Seq;

                        |-  序号为Seq=x+1,该报文不携带数据则不消耗序号。

                4)服务器收到来自客户端的“确认报文”之后,进入ESTABLISHED阶段。

        2、为什么需要三次握手,只握手两次行不行?

        答:第三次握手是为了防止已经失效的连接请求报文段突然又传到服务端,因而产生错误。

        如果没有第三次握手,服务端无法确定客户端是否已经建立连接,将等待客户端的ACK包。如果有第三次握手,服务端在超时后将重发第二次握手的ACK包,需要客户端再次回应一下,就可以避免这种情况。

        当第二次握手结束,如果服务端没有收到客户端的“确认报文”,会超时重传,超过 5 次则认定连接失败,停止重传。

5.3 TCP的四次挥手(***)

        1、四次挥手详解

四次挥手

                1)客户端向服务器端发送“请求释放连接报文”,进入FIN-WAIT-1阶段,其中:

                        |-  标记位为FIN,表示“请求释放连接“;

                        |-  序号为Seq=x。

                2)服务器端接收到客户端发出的“请求释放连接报文”,并返回“确认报文”,进入CLOSE-WAIT阶段,其中:

                        |-  标记位为ACK,表示“接收到客户端发送的释放连接的请求”;;

                        |-  序号为Seq=y;;

                        |-  确认号为Ack=x+1;

                        |-  客户端收到从服务器端发出的ACK“确认报文”,进入 FIN-WAIT-2 阶段。

                3)服务器端再次向客户端发出“确认报文”,进入LAST-ACK阶段,其中:

                        |-  标记位为FIN,ACK,表示“释放连接”;

                        |-  序号为Seq=z;

                        |-  确认号为Ack=x+1。

                4)客户端收到从服务器端发出的“确认报文”,并向服务器端发送“确认报文”,进入 TIME-WAIT 阶段,其中:

                        |-  标记位为ACK,表示“接收到服务器释放连接的信号”;

                        |-  序号为Seq=x+1;

                        |-  确认号为Ack=z+1;

                        |- 客户端等待 2MSL 后,进入CLOSED阶段。

                5)服务器端收到从客户端发出的“确认报文”,进入CLOSED阶段,正式关闭服务器端的连接。

        2、为什么要等待两个MSL

        答:WAIT_TIME:2MSL(Maximum Segment Lifetime,译为“报文最大生存时间”),为什么要等待两个MSL,因为服务端在1MSL时间内未收到客户端的确认报文,对方在超时后将重发第三次挥手的FIN包,又是1MSL时间。

        如果只有三次挥手的过程,而没有第四次挥手,服务端将无法确定客户端是否收到来自服务端的断开连接请求。

5.4 TCP 拥塞处理机制(**)

        1、慢开始算法:指数增长;

        2、拥塞避免算法:加性增;

        3、超时重传:继续慢开始算法;

        4、快重传:发送方收到连续三个ACK,重新传输;

        2、快恢复:阈值更新为发生拥塞时拥塞窗口的一半,继续执行拥塞避免算法。

六、应用层

6.1 DNS(域名系统)

        |-  应用层协议:基于 UDP 协议,端口:53

        |-  域名服务器

                1)本地域名服务器

                2)根域名服务器

                3)顶级域名服务器

                4)权限域名服务器

6.2 POST 和 GET 的区别(**)

GETPOST
GET 用来从服务器中获得数据POST 用来上传文件到服务器
GET 将请求放置在HTTP报文的请求中,以 “?” 分割 URL和传输数据POST 将请求的数据放在 HTTP 的报文请求体中
GET 的请求数据放在请求头,容易被获取,存在安全隐患POST 放在请求体中,较好的安全性
GET 的大小有限,一般不超过8000字符POST 大小没有限制

6.3 Cookie 和 Session 的区别

CookieSession
大小4KB没有大小限制(受内存限制)
状态保持客户端保持状态服务端保持状态
安全性存在安全隐患相对安全

6.4 http 和 https 的区别和联系(*)

HTTPHTTPS
端口80443
工作层面应用层传输层
加密
安全性不安全安全
速度

6.5 Http 从发出请求到获得页面的过程(**)

        1、查询DNS,获得域名的IP地址;

        2、通过三次连接,建立起和服务端的连接;

        3、浏览器向服务器发送请求报文;

        4、服务器响应请求,并返回资源;

        5、四次挥手释放连接;

        6、浏览器解析HTML。

6.6 常见状态码及原因短语(*)

        |-  2**:200 请求成功,并返回资源;203:请求成功,无资源返回;

        |-  3**:301(永久重定向)、302(临时重定向)、303(改成GET方式),307(POST方式);304(Not Modified,不满足条件,不返回任何资源)。

        |-  4**(客户端错误):400(请求错误)、401(认证)、403(禁止访问)、404(Not Found)。

        |-  5**(服务端错误):500(服务端错误)、503(服务器超负载或者停机维护)。

6.7 HTTP 首部有哪些?分别介绍几个具体的首部字段(**)

        1、报文首部:

                1)请求行:方法、URI、HTTP版本;响应行:状态码、HTTP版本。

                2)首部行:

                        |- 通用首部行(Connection:keep-alive、Transfer-Encoding:chunked);

                        |- 请求首部行(Accept:html/text、Range:5001-10000、If-Modified-Since:指定日期之后,资源发生改变则返回);

                        |- 响应首部行(Accept-Ranges:bytes、Location:用于资源重定向、Server:服务器类型);

                        |- 实体首部行(Allow:GET、POST、PUT、HEAD、DELETE;Content-Location:报文主体对应的URI)。

              3)Cookie 等。

        2、报文实体

七、网络安全(待续……)

   

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
计算机网络计算机科学中的一个重要领域,面试中常常会涉及到计算机网络基础知识。以下是一些常见的计算机网络面试基础: 1. 什么是计算机网络计算机网络是指将多台计算机通过通信设备连接起来,实现信息交换和资源共享的系统。 2. OSI七层模型是什么? OSI七层模型是一种将计算机网络通信过程划分为七个不同层次的模型,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 3. TCP/IP协议族包括哪些协议? TCP/IP协议族包括IP协议、TCP协议、UDP协议、HTTP协议、FTP协议等。 4. 什么是IP地址和MAC地址? IP地址是用于在网络中唯一标识一个设备的地址,分为IPv4和IPv6两种格式。MAC地址是网卡的物理地址,用于在局域网中唯一标识一个设备。 5. TCP和UDP的区别是什么? TCP是面向连接的可靠传输协议,提供数据传输的可靠性和顺序性;UDP是无连接的不可靠传输协议,提供数据传输的快速性和实时性。 6. 什么是HTTP协议? HTTP协议是一种用于传输超文本的应用层协议,常用于Web浏览器和Web服务器之间的通信。 7. 什么是DNS? DNS(Domain Name System)是用于将域名转换为IP地址的分布式数据库系统,实现域名解析功能。 8. 什么是网络拓扑结构? 网络拓扑结构指的是计算机网络中各个节点之间连接的方式,常见的拓扑结构有总线型、星型、环型、树型等。 9. 什么是路由器和交换机? 路由器是一种网络设备,用于在不同网络之间转发数据包;交换机是一种网络设备,用于在局域网内转发数据包。 10. 什么是网络安全? 网络安全是指保护计算机网络及其资源不受未经授权的访问、使用、披露、破坏、修改或干扰的能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值