全国咨询/投诉热线:400-618-9090

首页技术文章正文

软件测试:计算机网络常见笔试面试题

更新时间:2018-10-31 来源:黑马程序员 浏览量:

  · OSI,TCP/IP,五层协议的体系结构,以及各层协议

  ①OSI分层 (7层):物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。

  ②TCP/IP分层(4层):网络接口层、 网际层、运输层、 应用层。

  ③五层协议 (5层):物理层、数据链路层、网络层、运输层、 应用层。

  ④每一层的协议如下:

  物理层:RJ45、CLOCK、IEEE802.3 (中继器,集线器)

  数据链路:PPP、HDLC、VLAN、MAC (网桥,交换机)

  网络层:IP、ICMP、ARP、RARP、OSPF、IPX、RIP (路由器)

  传输层:TCP、UDP

  应用层:FTP、DNS、Telnet、SMTP、HTTP

  ⑤每一层的作用如下:

  物理层:通过媒介传输比特,确定机械及电气规范(比特Bit)

  数据链路层:将比特组装成帧和点到点的传递(帧Frame)

  网络层:负责数据包从源到宿的传递和网际互连(包PackeT)

  传输层:提供端到端的可靠报文传递和错误恢复(段Segment)

  会话层:建立、管理和终止会话(会话协议数据单元SPDU)

  表示层:对数据进行翻译、加密和压缩(表示协议数据单元PPDU)

  应用层:允许访问OSI环境的手段(应用协议数据单元APDU)

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

  ①浏览器获取输入的域名www.baidu.com

  ② 浏览器向DNS请求解析www.baidu.com的IP地址

  ③ 域名系统DNS解析出百度服务器的IP地址

  ④浏览器与该服务器建立TCP连接(默认端口号80)

  ⑤浏览器发出HTTP请求,请求百度首页

  ⑥服务器通过HTTP响应把首页文件发送给浏览器

  ⑦TCP连接释放

  ⑧浏览器将首页文件进行解析,并将Web页显示给用户。

  · DNS域名系统,简单描述其工作原理。

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

  ①客户机向其本地域名服务器发出DNS请求报文

  ②本地域名服务器收到请求后,查询本地缓存,假设没有该记录,则以DNS客户的身份向根域名服务器发出解析请求

  ③根域名服务器收到请求后,判断该域名所属域,将对应的顶级域名服务器的IP地址返回给本地域名服务器

  ④本地域名服务器向顶级域名服务器发出解析请求报文

  ⑤顶级域名服务器收到请求后,将所对应的授权域名服务器的IP地址返回给本地域名服务器

  ⑥本地域名服务器向授权域名服务器发起解析请求报文

  ⑦授权域名服务器收到请求后,将查询结果返回给本地域名服务器

  ⑧本地域名服务器将查询结果保存到本地缓存,同时返回给客户机

  · HTTP的状态码:

  ①大致可分为五大类

  100-199 信息,服务器收到请求,需要请求者继续执行操作。指定客户端应相应的某些动作。

  200-299 用于表示请求成功。

  300-399 重定向,需要进一步的操作以完成请求

  400-499 用于指出客户端的错误。请求包含语法错误或无法完成请求

  500-599 用于支持服务器错误。服务器在处理请求的过程中发生了错误

  ②常见的状态码

  206 部分内容。服务器成功处理了部分GET请求

  301 永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替。

  302 临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有URI

  400 (错误请求) 服务器不理解请求的语法。

  404 (未找到) 服务器找不到请求的网页。

  500 (服务器内部错误) 服务器遇到错误,无法完成请求。

  505 (HTTP 版本不受支持) 服务器不支持请求中所用的 HTTP 协议版本。

  · HTTP和HTTPS的区别:

  https:全称Hyper Text Transfer Protocol Secure,相比http,多了一个secure,这一个secure是怎么来的呢?这是由TLS(SSL)提供的,可以简单理解为 HTTPS=HTTP+SSL。

  ①HTTP 的 URL 以 http:// 开头,而 HTTPS 的 URL 以 https:// 开头

  ②HTTP 是相对不安全的,而 HTTPS 是相对安全的

  ③HTTP 标准端口是 80 ,而 HTTPS 的标准端口是 443

  ④在 OSI 网络模型中,HTTP 工作于应用层,而 HTTPS 工作在传输层

  ⑤HTTP 无需加密,而 HTTPS 对传输的数据进行加密

  ⑥HTTP 无需证书,而 HTTPS 需要认证证书

  · TCP和UDP的区别?

  ①TCP提供面向连接的、可靠的数据流传输,而UDP提供的是非面向连接的、不可靠的数据流传输。

  ②TCP传输单位称为TCP报文段,UDP传输单位称为用户数据报。

  ③TCP注重数据安全性,UDP数据传输快,因为不需要连接等待,少了许多操作,但是其安全性却一般。

  ④TCP对应的协议和UDP对应的协议

  1). TCP对应的协议:

  FTP:定义了文件传输协议,使用21端口。

  Telnet:一种用于远程登陆的端口,使用23端口,用户可以以自己的身份远程连接到计算机上,可提供基于DOS模式下的通信服务。

  SMTP:邮件传送协议,用于发送邮件。服务器开放的是25号端口。

  POP3:它是和SMTP对应,POP3用于接收邮件。POP3协议所用的是110端口。

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

  2). UDP对应的协议:

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

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

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

  · TCP是怎么保证传输可靠的?

  ①确认和重传:接收方收到报文就会确认,发送方发送一段时间后没有收到确认就重传。

  ②数据校验

  ③数据合理分片和排序:TCP会按MTU合理分片,接收方会缓存未按序到达的数据,重新排序后再交给应用层。

  TCP为什么引入接受缓存这个数据结构?

  如果没有接受缓存的话,或者说只有一个缓存的话,为了保证接受的数据是按顺序传输的,所以如果位于x序号之后的序号分组先到达目的主机的运输层的话必然丢弃,这样的话将在重传上花费很大的开销,所以一般如果有过大的序号达到接收端,那么会按照序号缓存起来等待之前的序号分许到达,然后一并交付到应用进程。

  ④流量控制

  当接收方来不及处理发送方的数据,能提示发送方降低发送的速率,防止包丢失。

  ⑤拥塞控制

  当网络拥塞时,减少数据的发送。

  · 了解交换机、路由器、网关的概念,并知道各自的用途

  ①交换机

  在计算机网络系统中,交换机是针对共享工作模式的弱点而推出的。交换机拥有一条高带宽的背部总线和内部交换矩阵。交换机的所有的端口都挂接在这条背部总线上,当控制电路收到数据包以后,处理端口会查找内存中的地址对照表以确定目的MAC(网卡的硬件地址)的NIC(网卡)挂接在哪个端口上,通过内部交换矩阵迅速将数据包传送到目的端口。目的MAC若不存在,交换机才广播到所有的端口,接收端口回应后交换机会“学习”新的地址,并把它添加入内部地址表中。

  交换机工作于OSI参考模型的第二层,即数据链路层。交换机内部的CPU会在每个端口成功连接时,通过ARP协议学习它的MAC地址,保存成一张 ARP表。在今后的通讯中,发往该MAC地址的数据包将仅送往其对应的端口,而不是所有的端口。因此,交换机可用于划分数据链路层广播,即冲突域;但它不能划分网络层广播,即广播域。

  ②路由器

  路由器(Router)是一种计算机网络设备,提供了路由与转送两种重要机制,可以决定数据包从来源端到目的端所经过的路由路径(host到host之间的传输路径),这个过程称为路由;将路由器输入端的数据包移送至适当的路由器输出端(在路由器内部进行),这称为转送。路由工作在OSI模型的第三层——即网络层,例如网际协议。

  路由器的一个作用是连通不同的网络,另一个作用是选择信息传送的线路。 路由器与交换器的差别,路由器是属于OSI第三层的产品,交换器是OSI第二层的产品(这里特指二层交换机)。

  ③网关

  网关(Gateway),网关是连接两个网络的设备,

  在传统TCP/IP术语中,网络设备只分成两种,一种为网关(gateway),另一种为主机(host)。网关能在网络间转递数据包,但主机不能转送数据包。在主机中,数据包需经过TCP/IP四层协议处理,但是在网关只需要到达网际层,决定路径之后就可以转送。

  在现代网络术语中,网关(gateway)与路由器(router)的定义不同。网关(gateway)能在不同协议间移动数据,而路由器(router)是在不同网络间移动数据。

  对于以太网中的网关只能转发三层以上数据包,这一点和路由是一样的。而不同的是网关中并没有路由表,他只能按照预先设定的不同网段来进行转发。网关最重要的一点就是端口映射,子网内用户在外网看来只是外网的IP地址对应着不同的端口,这样看来就会保护子网内的用户。

  · IP地址的分类

  A类地址:以0开头, 第一个字节范围:0~127(1.0.0.0 - 126.255.255.255)

  B类地址:以10开头,第一个字节范围:128~191(128.0.0.0 - 191.255.255.255)

  C类地址:以110开头, 第一个字节范围:192~223(192.0.0.0 -223.255.255.255);

  除去以上三类公有IP的,剩下的为私有IP:10.0.0.0—10.255.255.255, 172.16.0.0—172.31.255.255, 192.168.0.0—192.168.255.255。

  · ARP是地址解析协议,简单语言解释一下工作原理。

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

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

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

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

  广播发送ARP请求,单播发送ARP响应。

  · RARP(反向地址转换协议):

  反向地址转换协议就是将局域网中某个主机的物理地址转换为IP地址,比如局域网中有一台主机只知道物理地址而不知道IP地址,那么可以通过RARP协议发出征求自身IP地址的广播请求,然后由RARP服务器负责回答。RARP协议广泛用于获取无盘工作站的IP地址。

  ①给主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址;

  ②本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址;

  ③如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用;

  ④如果不存在,RARP服务器对此不做任何的响应;

  ⑤源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。

  · 为什么有了可靠地TCP还需要不可靠的UDP?

  ①TCP的优缺点。优点呢,TCP是可靠的连接,由于有基本的重传确认机制,可以保证把一个数据块完完整整的从A传到B;缺点也是因优点而生,因为有三次握手,所以会传输更多的包,浪费一些带宽;因为需要可靠地连接进行通信,则需要双方都必须持续在线,所以在通信过程中server需要维持非常大的并发连接,浪费了系统资源,甚至会出现宕机;再者就是因为有重传确认,则会浪费一部分的带宽,且在不好的网络中,会因为不断地连接断开连接,严重降低了传输效率。

  ②相对于TCP来说,UDP是非面向连接的不可靠的协议,其优点也因为缺点而生。首先,因为没有三次握手,所以会起步比较快,延时小;另外,由于不需要双方持续在线,所以server不用维护巨量的并发连接,节省了系统资源;三,因为没有重传确认,虽然到达的数据可能会有所缺失,但在不影响使用的情况下,能更高效的利用网络带宽。

  ③TCP适合实时性要求不高、但要求内容要完整传输的应用。相比而言,UDP由于无连接、无重传确认,所以传输效率高、延时小,适合实时性要求高的应用,如游戏服务器,音频,视频等;另外,由于不用维持大的并发量,所以适合巨量服务的server,加上合适的时间控制,可以用来设计更大的并发服务器;再者就是,UDP可以更高效的利用网络带宽。

  · 数据链路两端的设备是:DTE或DCE

  DTE(DataTerminalEquipment)数字终端设备:指一般的终端或是计算机。可能是大、中、小型计算机,也可能是一台只接收数据的打印机。

  DCE(DataCircuit-terminatingEquipment)数字通信设备:通常指调制解调器,多路复用器或数字设备。

  DTE,DCE的区别

  DCE一方提供时钟,DTE不提供时钟,但它依靠DCE提供的时钟工作。比如PC机和MODEM之间的连接。PC机就是一个DTE,MODEM是一个DCE。DTE可以从硬件上区别它的接口为针式,DCE的接口为孔式。

  · Socket编程注意点

  客户端(client):socket→connect→具体操作

  服务端(serve):socket→bind→listen→accept→具体操作

  (bind:端口绑定; listen:端口监听; accept:阻塞,等待客户端connect)

  (socket:把TCP/IP协议隐藏在软件接口后面)

  · P2P本质上还是C/S模式,只不过交互的双方既是服务器又是客户端。

  · 路由汇聚:

  路由汇聚的“含义”是把一组路由汇聚为一个单个的路由。路由汇聚的最终结果和最明显的好处是缩小网络上的路由表的尺寸。这样将减少与每一个路由跳有关的延迟,因为由于减少了路由登录项数量,查询路由表的平均时间将加快。路由汇聚的“用意”是当我们采用了一种体系化编址规划后的一种用一个IP地址代表一组IP地址的集合的方法。



作者:黑马程序员软件测试培训学院
首发:http://www.itheima.com/special/testzly/index.html

javaee

python

web

ui

cloud

test

c

netmarket

pm

Linux

movies

robot

http://www.itcast.cn/subject/uizly/index.shtml?seozxuids

14天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

15天免费试学

基础班入门课程限时免费

申请试学名额

20天免费试学

基础班入门课程限时免费

申请试学名额

8天免费试学

基础班入门课程限时免费

申请试学名额

20天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

0天免费试学

基础班入门课程限时免费

申请试学名额

12天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

5天免费试学

基础班入门课程限时免费

申请试学名额

10天免费试学

基础班入门课程限时免费

申请试学名额
在线咨询 我要报名