zoukankan      html  css  js  c++  java
  • 测试面试题集-网络基础(7)

    1. 请介绍一下OSI,TCP/IP,五层协议?

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

    TCP/IP网络四层协议:应用层、传输层、网络层、网络接口层。

    五层协议:应用层、传输层、网络层、数据链路层、物理层。

    图片

    2.OSI七层模型的作用分别是?

    1.应用层:OSI参考模型中最靠近用户的一层,是为计算机用户提供应用接口,也为用户直接提供各种网络服务。我们常见应用层的网络服务协议有HTTP,HTTPS,FTP,POP3、SMTP等;

    2.表示层:提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。如果必要,该层可提供一种标准表示形式,用于将计算机内部的多种数据格式转换成通信中采用的标准表示形式;

    3.会话层:负责建立、管理和终止表示层实体之间的通信会话。该层的通信由不同设备中的应用程序之间的服务请求和响应组成;

    4.传输层:建立了主机端到端的链接,传输层的作用是为上层协议提供端到端的可靠和透明的数据传输服务,包括处理差错控制和流量控制等问题。该层向高层屏蔽了下层数据通信的细节,使高层用户看到的只是在两个传输实体间的一条主机到主机的、可由用户控制和设定的、可靠的数据通路。我们通常说的,TCP/ UDP就是在这一层。端口号既是这里的“端”;

    5.网络层:通过IP寻址来建立两个节点之间的连接,为源端的运输层送来的分组,选择合适的路由和交换节点,正确无误地按照地址传送给目的端的运输层;

    6.数据链路层:将比特组合成字节,再将字节组合成帧,使用链路层地址 (以太网使用MAC地址)来访问介质,并进行差错检测。数据链路层又分为2个子层:逻辑链路控制子层(LLC)和媒体访问控制子层(MAC)。MAC子层处理CSMA/CD算法、数据出错校验、成帧等;LLC子层定义了一些字段使上次协议能共享数据链路层。在实际使用中,LLC子层并非必需;

    7.物理层:实际最终信号的传输是通过物理层实现的,通过物理介质传输比特流。规定了电平、速度和电缆针脚。常用设备有(各种物理设备)集线器、中继器、调制解调器、网线、双绞线、同轴电缆,这些都是物理层的传输介质。

    图片

    3. 请介绍一下你了解的网络协议?

    TCP协议传输控制协议(Transmission Control Protocol),是一种面向连接(连接导向)的、可靠的基于字节流的传输层通信协议。TCP将用户数据打包成报文段,它发送后启动一个定时器,另一端收到的数据进行确认、对失序的数据重新排序、丢弃重复数据。

    HTTP协议超文本传输协议,是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。

    OSICMP协议因特网控制报文协议,它是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。

    TFTP协议:是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。

     

    DHCP协议:一个局域网的网络协议,使用UDP协议工作,用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段。

    图片

    4.请简述ping一下的原理?

    ping是利用网络上机器IP地址的唯一性,给目标IP地址发送一个 ICMP 回显请求,并要求对方返回一个 ICMP 回显应答来确定两台网络机器是否连接相通,时延是多少。一般用于检测网络通与不通 ,时延值越大,速度越慢。

    图片

     

    5.什么是DNS解析?

    域名解析系统(Domain Name System)是一个全球性的分布式的数据库,由许多域名服务器组成,这些域名服务器相互连接,组成了一个分布式系统,主要完成将域名解析成IP地址的工作。如将http://www.cnblogs.com/主机名转换为IP地址:211.137.51.78。首先,网关路由器接收到包含 DNS 查询报文的以太网帧后,抽取出 IP 数据报,并根据转发表决定该 IP 数据报应该转发的路由器。因为路由器具有内部网关协议(RIP、OSPF)和外部网关协议(BGP)这两种路由选择协议,因此路由表中已经配置了网关路由器到达 DNS 服务器的路由表项。到达 DNS 服务器之后,DNS 服务器抽取出 DNS 查询报文,并在 DNS 数据库中查找待解析的域名。找到 DNS 记录之后,发送 DNS 回答报文,将该回答报文放入 UDP 报文段中,然后放入 IP 数据报中,通过路由器反向转发回网关路由器,并经过以太网交换机到达主机。

    图片

     

    6.请简述TCP三次握手和四次挥手?

    三次握手是指的是创建连接的过程:首先客户端向服务器端发送一个请求,询问是否可以发送数据;服务器收到请求之后,如果同意会响应一个确认报文;客户端收到确认报文之后,就开始发送数据。

    图片

    第一次握手:建立连接时,客户端向服务器发送请求报文(SYN),"我想建立连接”;

    第二次握手:服务器收到请求报文后,如同意连接,则向客户端发送确认报文(SYN/ACK),“同意建立”;

    第三次握手:客户端收到服务器的确认后,再次向服务器发送确认报文,完成连接(ACK);

    图片

    四次挥手指的是断开连接的过程:客户端向服务器发送一个请求,询问是否可以断开连接;服务器端会响应自己当前的状态;如果服务器端准备好了,会向客户端发送一个断开连接的请求;如果没有准备好,还有数据没响应完,会等响应完再给客户端发送请求;最后服务器端和客户端断开连接。

    图片

    第一次挥手:客户端想分手,发送消息(FIN)给服务器;

    第二次挥手:服务器通知客户端已经接受的挥手请求,返回确认消息(ACK),但还没做好分手准备;

    第三次挥手:服务端已经做好分手准备,通知客户端(FIN);

    第四次挥手:客户端发送消息给服务器(ACK),确认分手,服务器关闭连接。

    图片

    7.简述TCP与UDP的区别?

    1.连接方面:TCP面向连接、可靠的数据流传输(如打电话要先拨号建立连接);UDP是在发送数据之前不需要建立连接,是非面向连接的、不可靠的数据流传输;

    2.安全方面:TCP连接传送的数据,无差错,不丢失,不重复,按序到达;UDP尽最大努力交付,数据传输快,不需要连接等待,少了许多操作,安全性一般,不能保证可靠的交付;

    3.传输效率:UDP比TCP传输效率高;

    4.连接对象数量:TCP连接只能是点到点、一对一的,面向字节流。UDP支持一对一,一对多,多对一和多对多的交互通信,面向报文;

    图片

     

    8.从浏览器输入URL到将页面渲染出来,发生了什么?

    1.首先,在浏览器地址栏中输入URL,先解析URL,检测URL地址是否合法;

    2.浏览器先查看浏览器缓存-系统缓存-路由器缓存,如果缓存中有,会直接在屏幕中显示页面内容。若没有,则跳到第3步操作。

    浏览器缓存:浏览器会记录DNS一段时间,因此,只是第一个地方解析DNS请求;操作系统缓存:如果在浏览器缓存中不包含这个记录,则会使系统调用操作系统,获取操作系统的记录(保存最近的DNS查询缓存);

    路由器缓存:如果上述两个步骤均不能成功获取DNS记录,继续搜索路由器缓存;

    ISP缓存:若上述均失败,继续向ISP搜索。

    3.在发送http请求前,需要域名解析(DNS解析),解析获取相应的IP地址。

    4.浏览器向服务器发起TCP连接,与浏览器建立TCP三次握手

    5.握手成功后,浏览器向服务器发送HTTP请求,请求数据包。

    6.服务器处理收到的请求,将数据返回至浏览器

    7.浏览器收到HTTP响应。

    8.浏览器解码响应,如果响应可以缓存,则存入缓存

    9.浏览器发送请求获取嵌入在HTML中的资源(HTML,CSS,JavaScript,图片,音乐······),对于未知类型,会弹出对话框。

    10.浏览器发送异步请求

    11.页面全部渲染结束

    图片

    9.网页突然加载不出来,可能导致的原因有哪些?

    1.网络断开了;

    2.后端页面无法加载;

    3.网页被劫持了;

    4.DNS无法解析网址;

    5.服务器负载过大;

    6.代理设置问题;

    7.电脑配置太低;

    9.CPU,内存被占满;

    10.SQL查询数据太多,加载不出来;

    图片

     

    10.请简单说一下你了解的端口及对应的服务?

    • 21 :FTP(文件传输协议)

    • 22:SSH

    • 23 :Talnet(远程)服务

    • 25 :SMTP(简单邮件传输协议)

    • 53 :DNS域名服务器

    • 80 :HTTP超文本传输协议

    • 110 :POP3邮件协议3

    • 443:HTTPS

    • 1080:Sockets

    • 1521:Oracle数据库默认端口

    • 3306 :Mysql服务

    图片

     

  • 相关阅读:
    POJ 1144 Network(割点)
    POJ 3177 Redundant Paths & POJ 3352 Road Construction(双连通分量)
    ASCII码
    数组
    Java语法基础
    eclipse汉化过程
    指针
    面向对象
    第一课JAVA开发环境配置
    初学编写JAVA程序
  • 原文地址:https://www.cnblogs.com/chenyablog/p/15172887.html
Copyright © 2011-2022 走看看