中兴软件测试过往面试题汇总

1、TCP/IP三次握手四次挥手?

三次握手

TCP建立连接要经过三次握手是为了保证客户端与服务器之间的数据收发过程没有问题。

1、第一次握手:客户端发送连接请求报文段,将 SYN 位置为 1,Seq 为 x;然后,客户端等待服务器的确认;

2、第二次握手:服务器收到客户端的 SYN 报文段,需要对这个 SYN 报文段进行确认,设置 Ack为x+1(Seq +1);同时,自己还要发送 SYN 请求信息,将 SYN 位置为 1,Seq为y;服务器端将上述所有信息放到一个报文段(即 SYN+ACK 报文段)中,一并发送给客户端,此时服务器进入 SYN_RECV 状态;

3、第三次握手:客户端收到服务器的 SYN+ACK 报文段,会确认服务端响应的数据。然后将 Ack设置为 y+1,向服务器发送 ACK 报文段,这个报文段发送完毕以后,客户端和服务器端都进入 ESTABLISHED 状态,完成 TCP 三次握手。

四次挥手

客户端在断开连接的时候会主动发送一个finish包,代表客户端不会再给服务器写数据了,服务器接收到客户端的finish包会马上响应客户端已经知道了客户端想要断开连接了,但是服务器可能还会有一些数据需要发送,在发送完数据后,服务器会再给客户端发送一个finish包表示之后终止发数据,最后客户端会确认服务器的响应结果。

三次握手过程中是否可以携带数据:

第三次握手时是可以携带数据的,但第一二次握手时不可以携带数据。

(1)假如第一次握手可以携带数据的话,那么会放大 SYN 洪泛。如果有人要恶意攻击服务器,每次都在第一次握手中的 SYN 报文中放入大量的数据,然后疯狂重复发送 SYN 报文的话,就会让服务器开辟大量的缓存来接收这些报文,内存会很容易耗尽,从而拒绝服务。

(2) 第三次握手时客户端已经处于 ESTABLISHED 状态,对于客户端来说,他已经建立起连接了,并且已经知道服务器的接收和发送能力是正常的,所以也就可以携带数据了。

如果已经建立了连接,但是客户端突然出现故障了怎么办?

TCP还设有一个保活计时器,显然,客户端如果出现故障,服务器不能一直等下去。服务器每收到一次客户端的请求后都会重新复位这个计时器,时间通常是设置为2小时,若两小时还没有收到客户端的任何数据,服务器就会发送一个探测报文段,以后每隔75秒钟发送一次。若一连发送10个探测报文仍然没反应,服务器就认为客户端出了故障,接着就关闭连接。

为什么需要TIME_WAIT状态?

(1)重发丢失的ACK报文,保证连接可靠的关闭:

由于网络等原因,无法保证最后一次挥手的 ACK 报文一定能传送给对方,如果 ACK 丢失,对方会超时重传 FIN,主动关闭端会再次响应ACK过去;如果没有 TIME_WAIT 状态,直接关闭,对方重传的FIN报文则被响应一个RST报文,此RST会被动关闭端被解析成错误。同时,服务器就因为接收不到客户端的信息而无法正常关闭。

(2)保证本次连接的重复数据段从网络中消失:

如果存在两个连接,第一个连接正常关闭,第二个相同的连接紧接着建立;如果第一个连接的某些数据仍然滞留在网络中,这些延迟数据在建立新连接之后才到达,则会干扰第二连接,等待 2MSL 可以让上次连接的报文数据消逝在网络中。

2、Linux常用命令

3、抓包

抓包就是将网络传输发送与接收的数据包进行截获、重发、编辑等操作。

<1. 分析数据传输协议。

<2. 定位网络协议的问题。

<3. 从数据包中获取想要的信息。

<4. 将截取到的数据包进行修改,伪造,重发。

4、路由器会不会刷固件?

理论上当然是可以刷固件的。

路由器产品本质是一台网卡特别多的 Linux 主机,理论上当然是可以刷固件的。 而且路由器刷固件的必要性很大,因为厂商们,尤其是国内厂商们会受到各种规章限制,比如科学上网和净(miǎn)化(guǎng)网(gào)络相关的功能肯定没有,而且还会因为固件做得差,稳定性和功能性都不佳,甚至还有无良厂商会推广告留后门。

5、测试的流程

需求分析—测试计划—测试用例—测试执行—回归测试—测试报告

6、四种排序方法及时间复杂度

插入排序

将一个记录插入到已排好序的序列中,从而得到一个新的有序序列。

将序列的第一个数据看成是一个有序的子序列,然后从第二个记录逐个向该有序的子序列进行有序的插入,直至整个序列有序。

当初始序列为正序时,时间复杂度为O(N);初始序列为反序时,时间复杂度为O(n^2)

冒泡排序

重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故称为"冒泡排序"。

时间复杂度O(n^2)

选择排序

时间复杂度O(n^2)

快速排序

在一个数组中,找一个数为基准数,将这个数中所有比基准数大的数放在该数的右边,比基准数小的数放在该数的左边。

平均时间复杂度是:O(nlogn)

7、路由器和交换机

1)工作所处的OSI层次不一样,交换机工作在OSI第二层数据链路层,路由器工作在OSI第三层网络层;

2)寻址方式不同:交换机根据MAC地址寻址,路由器根据IP地址寻址;

3)转发速不同:交换机的转发速度快,路由器转发速度相对较慢。

8、ARP协议

ARP 是根据 IP 地址获取 MAC 地址的一种协议,核心原理就是广播发送ARP请求,单播发送ARP响应。

1)每个主机都在自己的ARP缓冲区中建立一个ARP列表,以表示 IP 地址和 MAC 地址之间的对应关系。

2)当源主机要发送数据时,先检查ARP列表中是否有该 IP 地址对应的 MAC 地址,如果有,则直接发送数据;如果没有,就向本网段的所有主机发送ARP数据包,用于查询目的主机的MAC地址,该数据包包括的内容有:源主机IP地址,源主机MAC地址,目的主机的IP

3)当本网络的所有主机收到该ARP数据包时,首先检查数据包中的IP地址是否是自己的IP地址,如果不是,则忽略该数据包,如果是,则首先从数据包中取出源主机的IPMAC地址写入到ARP列表中,如果已经存在,则覆盖,然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要找的MAC地址。

4)源主机收到 ARP 响应包后,将目的主机的 IP MAC 地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。

9、4G和5G的了解

高速度

目前我们 4G 使用的都是低频段,它的优点在于性能好,覆盖面广,能够有效减少运营商在基站的投入,节省资金。但缺点就是,用的人多,数据传输的就会出现拥窄现象。而 5G 使用的就是高频段,使用高频不但能缓解低频资源的紧张,由于没有拥窄现象,使得道路更加宽广,提高带宽的速率。(下载高清视频、4K视频直播)

大容量

5G 技术引入了体积小,耗能低的微基站,这种基站可以安装部署在城市的任何位置,可以安装到路灯、信号灯、商场、住房等等。每个基站可以从其它基站接收信号并向任何位置的用户发送数据。信号接收均匀,承载量大,形成泛在网,解决高频段长距离传输差的缺点。(智能家居、智能穿戴)

低延时

4G 网络应用服务器集中于中心机房,距离终端远,中间需要经过多个传输节点。5G 通过边缘计算技术将接入网与互联网业务进行深度融合,在接入网边缘部署计算、处理和存储功能的云计算设备,构建移动便捷云,提供信息技术服务环境和云计算能力。可以减少数据传输过程中的转发和处理时间,降低端到端的延时。(无人驾驶、车联网)

10、项目中,遇到的最难的问题,是如何解决的?

11、为什么选择测试而不是开发?

不管是开发还是测试,它们都有各自专属的技术领域,谁也替代不了谁。测试在我国发展时间比较短,随着产品功能越来越复杂,测试这个岗位也越来越重要,而且职业方向和路线也很多,技术型、管理型、业务型都可以。测试的目标是确定功能是否能够正常运作,它重在“发现”和“分析”,这刚好也符合我自己的性格特点:细致、耐心,善于沟通。其次,我平时也比较喜欢看一些解谜类的书籍和电影,虽然我说不好这个跟测试具体有什么关联,不过有一些感觉是一样的,观察、推演、尝试、归纳、发现。在我的认知中,我觉得测试也是这样一个综合的过程,我喜欢这种探索发现的新鲜感也喜欢分析归纳之后的成就感。后面自己的技术有进一步提升之后,也打算转测开。

12、测试商城的按摩椅

13、HTTP、HTTPs

 

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值