软件测试常问面试题-计算机网络相关

  • 1. TCP和UDP的区别
  • 2. TCP和UDP分别对应的常见应用层协议?
    • 2.1 TCP对应的应用层协议
    • 2.2 UDP对应的应用层协议
  • 3. TCP协议如何来保证传输的可靠性
  • 4. 解释一下IP的定义,在哪个层上?主要作用是?TCP与UDP呢?
  • 5. IP地址的分类
  • 6. 分别写出OSI、TCP/IP及五层协议的体系结构
    • 6.1 OSI每一层对应的协议
    • 6.2 OSI每一层的作用
  • 7. 对称加密与非对称加密
  • 8. Get与POST的区别
  • 9. ipconfig和netstat的作用?
  • 10. 两台笔记本连起来后ping不同,可能是哪些原因?
  • 11. 运行net share返回结果是什么?
  • 12. net use和net user 分别指什么?
  • 13. 交换和路由的区别是什么,VLAN有什么特点?
  • 14. 简单描述DNS域名系统的工作原理
  • 15. 提供可靠数据流传输控制的是OSI的第几层?
  • 16. 在浏览器中输入www.baidu.com后执行的全部过程
  • 17. ARP是地址解析协议,简单解释一下工作原理?

♡\color{red}{\heartsuit}♡

1. TCP和UDP的区别

  • TCP提供面向连接的、可靠的数据流传输,而UDP提供的是非面向连接的、不可靠的数据流传输;
  • TCP传输单位称为TCP报文段,UDP传输单位称为用户数据报;
  • TCP注重数据安全性,UDP数据传输快,因为不需要连接等待,少了许多操作,但是其安全性却一般。

2. TCP和UDP分别对应的常见应用层协议?

2.1 TCP对应的应用层协议

 FTP:定义了文件传输协议,使用21端口。常说某某计算机开了FTP服务便是启动了文件传输服务。下载文件,上传主页,都要用到FTP服务。

 Telnet:它是一种用于远程登陆的端口,用户可以以自己的身份远程连接到计算机上,通过这种端口可以提供一种基于DOS模式下的通信服务。如以前的BBS是-纯字符界面的,支持BBS的服务器将23端口打开,对外提供服务。

 SMTP:定义了简单邮件传送协议,现在很多邮件服务器都用的是这个协议,用于发送邮件。如常见的免费邮件服务中用的就是这个邮件服务端口,所以在电子邮件设置-中常看到有这么SMTP端口设置这个栏,服务器开放的是25号端口。

 POP3:它是和SMTP对应,POP3用于接收邮件。通常情况下,POP3协议所用的是110端口。也是说,只要你有相应的使用POP3协议的程序(例如Fo-xmail或Outlook),就可以不以Web方式登陆进邮箱界面,直接用邮件程序就可以收到邮件(如是163邮箱就没有必要先进入网易网站,再进入自己的邮-箱来收信)。

 HTTP:从Web服务器传输超文本到本地浏览器的传送协议。

2.2 UDP对应的应用层协议

 DNS:用于域名解析服务,将域名地址转换为IP地址。DNS用的是53号端口。

 SNMP:简单网络管理协议,使用161号端口,是用来管理网络设备的。由于网络设备很多,无连接的服务就体现出其优势。

 TFTP(Trival File Transfer Protocal):简单文件传输协议,该协议在熟知端口69上使用UDP服务。


各协议对应的端口号

摘自计算机网络(面试必备知识点)

3. TCP协议如何来保证传输的可靠性

  TCP提供一种面向连接的、可靠的字节流服务。其中,面向连接意味着两个使用TCP的应用(通常是一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。在一个TCP连接中,仅有两方进行彼此通信;而字节流服务意味着两个应用程序通过TCP链接交换8bit字节构成的字节流,TCP不在字节流中插入记录标识符。

对于可靠性,TCP通过以下方式进行保证:

数据包校验:目的是检测数据在传输过程中的任何变化,若校验出包有错,则丢弃报文段并且不给出响应,这时TCP发送数据超时后会重发数据;

对失序数据包重排序:既然TCP报文段作为IP数据报来传输,而IP数据报的到达可能会失序,因此TCP报文段的到达也可能会失序。TCP将对失序数据进行重新排序,然后才交给应用层;

丢弃重复数据:对于重复数据,能够丢弃重复数据;

应答机制:当TCP收到发自TCP连接另一端的数据,它将发送一个确认。这个确认不是立即发送,通常将推迟几分之一秒;

超时重发:当TCP发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到一个确认,将重发这个报文段;

流量控制:TCP连接的每一方都有固定大小的缓冲空间。TCP的接收端只允许另一端发送接收端缓冲区所能接纳的数据,这可以防止较快主机致使较慢主机的缓冲区溢出,这就是流量控制。TCP使用的流量控制协议是可变大小的滑动窗口协议。

4. 解释一下IP的定义,在哪个层上?主要作用是?TCP与UDP呢?

  • IP是 Internet protocol 的缩写,是网络层的主要协议,作用是提供不可靠、无连接的数据包传输协传送。
  • TCP是 Transmit Control Protocol(传输控制协议),在传输层,TCP提供一种面向连接的、可靠地字节流服务。
  • UDP是 User Datagram Protocol(用户数据报协议),在传输层,UDP提供不可靠的传输控制数据服务。

5. IP地址的分类

  IP地址是指互联网协议地址,是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。IP地址编址方案将IP地址空间划分为A、B、C、D、E五类,其中A、B、C是基本类,D、E类作为多播和保留使用,为特殊地址。
  
  每个IP地址包括两个标识码(ID),即网络ID和主机ID。同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工作站,服务器和路由器等)有一个主机ID与其对应。A~E类地址的特点如下:

  • A类地址:以0开头,第一个字节范围:0~127;
  • B类地址:以10开头,第一个字节范围:128~191;
  • C类地址:以110开头,第一个字节范围:192~223;
  • D类地址:以1110开头,第一个字节范围为224~239;
  • E类地址:以1111开头,保留地址

6. 分别写出OSI、TCP/IP及五层协议的体系结构

从上至下

OSI:应用层、表示层、会话层、传输层、网络层、数据链路层、物理层;

TCP/IP:应用层、运输层、网际层、网络接口层;

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

6.1 OSI每一层对应的协议

体系 协议
物理层 RJ45、CLOCK、IEEE802.3 (中继器,集线器)
数据链路 PPP、FR、HDLC、VLAN、MAC(网桥,交换机)
网络层 IP、ICMP、ARP、RARP、OSPF、IPX、RIP、IGRP、(路由器)
传输层 TCP、UDP、SPX
会话层 NFS、SQL、NETBIOS、RPC
表示层 JPEG、MPEG、ASII
应用层 FTP、DNS、Telnet、SMTP、HTTP、WWW、NFS

6.2 OSI每一层的作用

体系 作用
物理层 通过媒介传输比特,确定机械及电气规范(比特Bit)
数据链路层 将比特组装成帧和点到点的传递(帧Frame)
网络层 负责数据包从源到宿的传递和网际互连(包PackeT)
传输层 提供端到端的可靠报文传递和错误恢复(段Segment)
会话层 建立、管理和终止会话(会话协议数据单元SPDU)
表示层 对数据进行翻译、加密和压缩(表示协议数据单元PPDU)
应用层 允许访问OSI环境的手段(应用协议数据单元APDU)

拓展

网关的定义:一个链接两种不同协议簇的进程,为某一个特定的应用提供服务。

在TCP/IP协议簇中,IP层使用不可靠的服务,TCP提供可靠的服务,为了提供可靠到的服务,TCP采用了超时重传,发送和接收端到端的确认分组机制。

网桥是在数据链路层对网络进行互联的,路由器是在网络层对网络进行互联的。

7. 对称加密与非对称加密

  对称密钥加密是指加密和解密使用同一个密钥的方式,这种方式存在的最大问题就是密钥发送问题,即如何安全地将密钥发给对方;而非对称加密是指使用一对非对称密钥,即公钥和私钥,公钥可以随意发布,但私钥只有自己知道。发送密文的一方使用对方的公钥进行加密处理,对方接收到加密信息后,使用自己的私钥进行解密。典型的算法:DES

  由于非对称加密的方式不需要发送用来解密的私钥,所以可以保证安全性;但是和对称加密比起来,它非常的慢,所以我们还是要用对称加密来传送消息,但对称加密所使用的密钥我们可以通过非对称加密的方式发送出去。典型的算法:RSA

8. Get与POST的区别

  • GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如EditPosts.aspx?name=test1&id=123456. POST方法是把提交的数据放在HTTP包的Body中。
  • GET提交的数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制。
  • GET方式需要使用Request.QueryString来取得变量的值,而POST方式通过Request.Form来获取变量的值。
  • GET方式提交数据,会带来安全问题,比如一个登录页面,通过GET方式提交数据时,用户名和密码将出现在URL上,如果页面可以被缓存或者其他人可以访问这台机器,就可以从历史记录获得该用户的账号和密码。

9. ipconfig和netstat的作用?

  ipconfig显示当前TCP/IP配置的信息,帮助用户查看网络状况,可以看到很多网络信息,比如延迟,IP,主机信息,物理地址信息等。

netstat主要用于提供系统的接口命令。可以使用相关参数打印出每一个接口的MTU、输入分组数、输入错误、冲突以及当前的输出队列长度。

10. 两台笔记本连起来后ping不同,可能是哪些原因?

  1. 网线问题。确认网线连接是否正确,电脑之间连的线和电脑与USB之间连的线分正线、反线,是不同的。但是对于使用千兆网卡的除外,千兆位网卡有自动识别功课,既可以是正线也可以是反线。
  2. 局域网设置问题。电脑互连是要设置的,看看是否安装了必要的网络协议,最重要的是,IP地址是否设置正确,互联的时候最好一台电脑为正,一台电脑为副,为主的设为网关。
  3. 网卡驱动未正确安装
  4. 防火墙设置有问题
  5. 是否有什么软件阻止ping包

11. 运行net share返回结果是什么?

  显示本地计算机上所有共享资源相关信息。如果加上参数 ShareName ,则仅显示有关该共享的信息。

12. net use和net user 分别指什么?

  • net use是对用户进行管理,如添加、删除网络使用用户等。
  • net user 是对网络设备进行管理

13. 交换和路由的区别是什么,VLAN有什么特点?

  • 交换机是指转发和过滤帧,是交换机的工作,它在OSI参考模型的第二层。
  • 而路由器是指网络线路当中非直连的链路,它是路由器的工作,在OSI参考模型的第三层。
  • 交换和路由的区别很大。首先,交换是不需要IP的,而路由需要,因为IP就是第三层的协议,第二层需要的是MAC地址;再有,第二层可以做NAT、ACL、QOS等。
  • VLAN是虚拟局域网络的英文缩写,它是一个纯二层的技术,它的特点有三个:控制广播,安全,灵活性和可扩展性。

14. 简单描述DNS域名系统的工作原理

  当DNS客户机需要在程序中使用名称时,它会查询DNS服务器来解析该名称。客户机发送的每条查询信息包括3条信息:指定的DNS域名,指定的查询类型,DNS域名的指定类别。基于UDP服务,端口53.该应用一般不直接为用户使用,而是为其他应用服务,如HTTP,SMTP等,在其中需要完成主机名到IP地址的转换。

15. 提供可靠数据流传输控制的是OSI的第几层?

  会话层

还有其他相关的面试题请☞你不可不会的软件测试经典面试题,HTTP协议也是常问的☞HTTP协议详细介绍

16. 在浏览器中输入www.baidu.com后执行的全部过程

1、客户端浏览器通过DNS解析到www.baidu.com的IP地址220.181.27.48,通过该IP地址找到客户端到服务器的路径。客户端浏览器发起一个HTTP会话到220.181.27.48,通过TCP进行封装数据包,输入到网络层。

2、在客户端的传输层,把HTTP会话请求分成报文段,添加源和目的端口,如服务器使用80端口监听客户端的请求,客户端由系统随机选择一个端口如5000,与服务器进行交换,服务器把相应的请求返回给客户端的5000端口,然后使用IP层的IP地址查找目的端。

3、客户端的网络层不用关心应用层或者传输层的东西,主要做的是通过查找路由表确定如何到达服务器,期间可能经过多个路由器,这些都是由路由器来完成的工作,通过查找路由表决定通过过哪个路径到达服务器。

4、客户端的链路层,包通过链路层发送到路由器,通过邻居协议查找给定IP地址的MAC地址,然后发送ARP请求查找目的地址,如果得到回应后就可以使用ARP的请求应答交换的IP数据包现在就可以传输了,然后发送IP数据包到达服务器的地址。

17. ARP是地址解析协议,简单解释一下工作原理?

  1. 首先,每个主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC地址之间的对应关系。
  2. 当源主机要发送数据时,首先检查ARP列表中是否有对应IP地址的目的主机的MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送ARP数据包,该数据包包括的内容有:源主机 IP地址,源主机MAC地址,目的主机的IP 地址。
  3. 当本网络的所有主机收到该ARP数据包时,首先检查数据包中的IP地址是否是自己的IP地址,如果不是,则忽略该数据包,如果是,则首先从数据包中取出源主机的IP和MAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要找的MAC地址。
  4. 源主机收到ARP响应包后。将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。广播发送ARP请求,单播发送ARP响应。

软件测试常问面试题--计算机网络相关相关推荐

  1. 软件测试常问面试题【二】

    软件测试常问面试题[二] 1.APP性能测试遇到什么bug没有? 性能bug:卡顿.ANR.内存泄漏 2.什么是兼容性测试?兼容性测试要测试哪些方面? 主要包括: 不同操作系统版本的兼容(Androi ...

  2. 2022最新Spring相关大厂常问技术面试题大全 —— 金三银四好时机

    Spring相关大厂常问面试题 1. 什么是 Spring 框架? 2. 列举一些重要的Spring模块? 3. @RestController 与 @Controller 的区别 4. 谈谈自己对于 ...

  3. 软件测试常问100道面试题(含答案以及案例解析),全网最全最新

    软件测试常问100道面试题,找工作.招人必备之良品.后期不断完善中-- 面试完整版答案文末直接查看 1.您所熟悉的测试用例设计方法都有哪些?请分别以具体的例子来说明这些方法在测试用例设计工作中的应用. ...

  4. alin的学习之路:面试题 计算机网络相关

    alin的学习之路:面试题 计算机网络相关 介绍下proactor和reactor reactor:同步IO proactor:异步IO Reactor框架中用户定义的操作是在实际操作之前调用的.比如 ...

  5. VUE前端常问面试题

    文章目录 一.VUE前端常问面试题 二.文档下载地址 一.VUE前端常问面试题 1.MVC和MVVM 区别 MVC:MVC全名是 Model View Controller,即模型-视图-控制器的缩写 ...

  6. 2020年Java常问面试题--聂

    2020年Java常问面试题 打算这几天每天更新15~20题.(这样有助于你们阅读和理解!)我们先从简单的开始 加qq群:568680919,免费赠送1000道java面试题和简历模板 JDK 和 J ...

  7. android常问面试题及答案 经典

    android常问面试题及答案 经典 转载 1. 什么是Activity? 四大组件之一,一般的,一个用户交互界面对应一个activity, activity 是Context的子类,同时实现了win ...

  8. Java常问面试题整理,帮你搞定‘金9银10’(附答案纯干货)

    前言: 工作做螺丝钉,面试造火箭,我想这个是每个程序员比较头疼的事情,但是又有必须经历的流程,尤其是摸不清面试官问的问题,准备不充分,导致面试的时候不知道如何回答.本文是小编个人从几十次面试中挑选的面 ...

  9. Spring常问面试题及答案汇总(2022版)

    网上也有很多关于Spring常问问题/面试题整理的文章,我感觉大部分都是互相 copy,而且很多问题也不是很好,有些回答也存在问题.所以,自己花了一周的业余时间整理了一下,希望对大家有帮助. 1. 什 ...

  10. 2022年金九银十软件测试面试题大全,精心挑选常问面试题

    以下是软件测试相关的面试题及答案,欢迎大家参考! 1.你的测试职业发展是什么? 测试经验越多,测试能力越高.所以我的职业发展是需要时间积累的,一步步向着高级测试工程师奔去.而且我也有初步的职业规划,前 ...

最新文章

  1. 深度学习原来还可以这么学!
  2. ubuntu安装时N卡黑屏处理
  3. Spring Boot集成Hazelcast实现集群与分布式内存缓存
  4. 一招一式, 成就“霸业”必做的9件大事
  5. 彩色笔记 android,彩色笔记V4.1.0-彩色笔记下载 - Iefans
  6. Python3学习笔记(一)简介 、 安装 、 解释器
  7. 学习进度表(160519更新)
  8. 127.0.0.1和0.0.0.0和本机IP的区别
  9. ​​​​​​​(复制python包,产生的问题) pip Fatal error in launcher: Unable to create process using
  10. git实用技巧:将多次commit合并为一次
  11. hive 查询表中的数据来源hdfs 位置
  12. 示波器探头各种作用及工作原理
  13. nginx软件安装部署
  14. 编译原理课堂笔记(1)编译概述
  15. 《詹姆斯·高斯林Java白皮书1996自译》00:概览
  16. c语言链表用处,c语言链表的用途是什么
  17. 哈佛参考文献注释及APA文献格式介绍
  18. 汇编语言中sbb是什么意思_汇编语言里 sub是 什么功能?
  19. Three.js光照贴图添加阴影(·lightMap)
  20. 计算机网络码分多址CDMA及计算例题(简单易懂)

热门文章

  1. hihoCoder #1117 战争年代
  2. 为了实现搜索引擎功能,将正则进行到底!
  3. Ubuntu 6.10 发布
  4. 导入csv_使用ADManager Plus从CSV批量导入用户
  5. 数据库__配置ODBC及附加数据库的方法
  6. php并发访问排队_使用xdebug对php做性能分析调优
  7. Python imageio方法示例
  8. faster RCNN 与 fast RCNN 一分钟回忆图
  9. Qt 实现控件抖动 动画窗口抖动 QQ抖动
  10. 银河麒麟V10共享文件夹内无法创建wps文件的解决方法