【测试开发面试复习(一)】计算机网络:应用层详解(P2)补充ing

复习自用,若有错漏,欢迎一起交流一下~~

一、高频面试题记录

uri 和 url 的区别 ?
dns 是啥工作原理,主要解析过程是啥?
用户输入网址到显示对应页面的全过程是啥?
http 头部包含哪些信息?
http 方法了解哪些?
http 状态码了解哪些?
get 和 post 的区别?
https 和 https 的区别?
https 的加密方式?
http 是不保存状态的协议,如何保存用户状态?
http 不同版本的区别?
用户输入网址到最后看到返回,经历了什么

二、web(万维网)和域名

万维网:www = world wide web,我们一般称之为web。
是一种信息系统,使文档和其他web资源能够通过Internet访问。
网络上的资源必须有唯一标识,才可以在网络上被访问。

2.1 URI、URL、URM

uri(uniform resource identifier) 统一资源标识符。
url(uniform resource location) 统一资源定位符,统指绝对路径。【用的最多】
urn(uniform resource name) 统一资源名。【未大范围使用】

URL由三部分组成:
*注意:URL是否以/结尾,意义不同,服务器自动处理了差异所以用户一般无感知
【访问资源使用的协议类型(如http://)】【服务器的web地址,可以是域名(如nihao) 或 IP地址+端口号(localhost:8080),不添加默认为 80 ,这是访问域名不用加端口号的原因 】【web服务器上的某个资源(如abc/read)】
http://nihao.com/abc/read

2.2 常见应用程序体系架构

  • C/S((client/server):客户端向服务端发送和请求数据,服务器要一直开机,主要应用在大型互联网
    如:魔兽世界端游(C/S)、Google(B/S)、也有既可以又可以的应用哦~比如outlook;
  • P2P(peer to
    peer):对等通信,不需要数据中心,应用程序在间断连接的主机对之间直接通信。主要应用在流量密集型应用。比如:迅雷,bitTorrent,或者在局域网的文件内部共享应用中。

2.3 web

web不仅仅有client和server的简单请求响应,还包含特殊的server

  • 代理:位于客户端和服务端之间,可转发web流量,可以对请求和响应进行过滤。(比如用于校园网,过滤不良内容);
  • 网关:链接其他应用程序的特殊web服务器,常用于将http流量转化为其他协议,客户端对此无感知。
  • 隧道:
  • DNS(域名):支持中文字符,结构是xxx.xxx.xxx,分层树状结构:二级域名(csdn)+顶级域名(cn-中国、edu-教育组织、com-商业or公司实体、net-网络)

三、DNS

3.1 DNS原理

*客户端 A 向本地域名服务器查询为递归查询,本地域名服务器向根域名服务器查询为迭代查询。
在这里插入图片描述
客户端A-查询本地hosts文件(没有映射关系下一步)-查找本次DNS解析缓存(没有下一步)-根据tcp/ip参数查找设置好的首选DNS服务器IP地址(本次dns服务器,没有下一步)-本地dns访问根服务器,根据后缀名查找定级域名服务器的ip,以此向下查找域名服务器IP,查找网址映射关系,直到找到为止。

3.2 DNS数据传输

  • dns既采用UDP协议,也采用tcp协议;
  • dns通过53端口进行通信,默认采用udp协议进行数据传输(或者说大多数情况);
  • 当返回的响应超过512字节,会使用tcp传输(udp最大只支持512字节的数据);
  • 当主域名服务器向辅助域名服务器传送变化的那部分数据(区域传送),会使用tcp传输;
  • 注意: tcp 协议和 udp 协议是可以同时绑定同一个端口的。
  • 区域传输: dns 服务器中数据不总是一成不变的,域名数量是不断增加,而且一些域名对应着的服务器的也是在变化的,所以其实 dns服务器中的数据是不断增加的,并且随时流动的,所以可以将区域传输简单理解为 dns 服务器之间进行的数据传输。

3.3 DNS域名服务器

  • 根域名服务器:最高层次的域名服务器,所有的根域名服务器都知道所有的顶级域名服务器的ip地址,全球有 13 个根域名服务器。
  • 顶级域名服务器:负责处理所有顶级域名,提供到权威域服务器的映射。
  • 授权(权威)域名服务器:提供主机名到 IP 地址间的映射服务
  • 主域名服务器:一个或多个区域域名解析工作的主要域名服务器,通常也是一个或多个区域的授权域名服务器。
  • 辅助域名服务器:协助主域名服务器提供域名查询服务,在主机很多的情况下,可以有效分担主域名服务器的压力。当主域名服务器故障时,辅助域名服务器能够在数据有效期内继续为主机提供域名解析服务。

3.4 网页解析全过程(重要)

用户输入网址(浏览器获得一个域名)-DNS解析(通过dns服务器将域名解析为IP地址)-TCP连接(向web服务器发起tcp连接请求)-发送http请求(在建立起的tcp连接中,按照http协议标准发送一个索要网页的请求)-处理请求并返回(服务器获取到请求后,根据请求内容来决定如何获取对应文件,并将文件发送给浏览器)-浏览器渲染(先解析HTML文件,构建DOM树,然后解析CSS文件,构建渲染树,构建完成后,浏览器开始布局渲染树并将其绘制到屏幕)-TCP断开(客户端和服务器断开连接)

四、http

4.1 xxx?

五、socket

5.1 XXX?

六、其他

6.1 XXX?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/713160.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IEEE Trans. On Robotics ​“受护理人员启发的双臂机器人穿衣”研究工作

开发能够协助穿衣的辅助机器人,可以极大地改善老年人和残疾人的生活。然而,大多数机器人穿衣策略只考虑使用单个机器人,这大大限制了穿衣辅助的性能。事实上,专业护理人员是通过双臂来完成这项任务的。受其启发,我们提…

【YOLO v5 v7 v8 小目标改进】Non-local 注意力实现非局部神经网络,解决长空间和时间数据依赖问题

Non-local 注意力实现非局部神经网络,解决长空间和时间数据依赖问题 提出背景长距离技术对比Non-local Block是怎么设计Non-local 神经网络效果 小目标涨点YOLO v5 魔改YOLO v7 魔改YOLO v8 魔改 提出背景 论文:https://arxiv.org/pdf/1711.07971.pdf …

抽象类与抽象方法

文章目录 抽象类抽象类的特点 抽象方法抽象方法的特点 模板设计模式模板设计模式能解决的问题示例 #抽象类与抽象方法 抽象类 用abstract关键字来修饰一个类时,这个类就叫抽象类。 public abstract 类名{... }抽象类的特点 1)抽象类不能被实例化。 2&…

AOP(黑马学习笔记)

AOP基础 学习完spring的事务管理之后,接下来我们进入到AOP的学习。 AOP也是spring框架的第二大核心,我们先来学习AOP的基础。 在AOP基础这个阶段,我们首先介绍一下什么是AOP,再通过一个快速入门程序,让大家快速体验A…

JAVASE初认识

1.初认识其结构 1.源文件(扩展名为*.java):源文件带有类的定义。类用来表示程序的一个组件,小程序或许只会有一个类。类的内容必须包含在花括号里面。 2.类:类中带有一个或多个方法。方法必须在类的内部声明。 3.方法&#xff1…

vue3创建h5 项目使用rem做响应式的配置

第一步 安装依赖: npm install amfe-flexible -S npm install postcss-px2rem -S第二步 main.ts文件中导入 import "amfe-flexible/index.js";第三步 进行配置: vue3 项目中创建 postcss.cinfig.js文件,这里是基于设计稿是750px…

gRPC知识归档

文章目录 gRPC知识归档gRPC原理什么是gRPCgRPC的特性gRPC支持语言gRPC使用场景gRPC设计的动机和原则 数据封装和数据传输问题网络传输中的内容封装和数据体积问题JSONProtobuf(微服务之间的服务器调用,一般采用二进制序列化,比如protobuf&…

【airtest】自动化入门教程(二)airtest操作

目录 一、touch 二、wait 三、swipe 四、exists 五、text 六、keyevent 七、snapshot 八、sleep 九、断言 9.1 assert_exists 9.2 assert_not_exists 9.3 assert_equal 9.4 assert_not_equal 前言:本文主要针对aritest部分的基础操作,aritest是一个跨平…

网络编程第二天

1.基于TCP的通信(面向连接的通信) 服务器代码实现&#xff1a; #include <myhead.h> #define IP "192.168.126.91" #define PORT 9999 int main(int argc, const char *argv[]) {//1、创建套接字int sfd-1;if((sfdsocket(AF_INET,SOCK_STREAM,0))-1){perror(…

ES系列之Logstash实战入门

概述 作为ELK技术栈一员&#xff0c;Logstash用于将数据采集到ES&#xff0c;通过简单配置就能把各种外部数据采集到索引中进行保存&#xff0c;可提高数据采集的效率。 原理 数据源提供的数据进入Logstash的管道后需要经过3个阶段&#xff1a; input&#xff1a;负责抽取数…

【ArcPy】批量读取文件夹excel中XY并转为点shp

示例展示 代码 只读取excel中含有XY字段的文件&#xff0c;并将矢量命名为excel文件名称。 import os import pandas as pd import arcpy folder_path r"C:\Users\admin\Desktop\excelfile" extension"xlsx" files [file for file in os.listdir(folder…

SpringCloud gateway限流无效,redis版本低的问题

在使用springCloud gateway的限流功能的时候&#xff0c;配置RedisRateLimiter限流无效&#xff0c;后来发现是Redis版本过低导致的问题&#xff0c;实测 Redis版本为3.0.504时限流无效&#xff0c;改用7.0.x版本的Redis后限流生效。查了资料发现很多人都遇见过这个问题&#x…

RedisTemplate 序列化成功,反序列化失败List, Set, Map失败

RedisTemplate 序列化成功&#xff0c;反序列化失败List, Set, Map失败 异常信息RedisTemplate配置异常原因错误代码示例解决方法 序列化成功&#xff0c;反序列化失败 异常信息 Caused by: com.fasterxml.jackson.databind.exc.InvalidTypeIdException: Could not resolve ty…

小程序事件处理

事件处理 一个应用仅仅只有界面展示是不够的&#xff0c;还需要和用户做交互&#xff0c;例如&#xff1a;响应用户的点击、获取用户输入的值等等&#xff0c;在小程序里边&#xff0c;我们就通过编写 JS 脚本文件来处理用户的操作 1. 事件绑定和事件对象 小程序中绑定事件与…

React之组件定义和事件处理

一、组件的分类 在react中&#xff0c;组件分为函数组件和class组件&#xff0c;也就是无状态组件和有状态组件。 * 更过时候我们应该区别使用无状态组件&#xff0c;因为如果有状态组件会触发生命周期所对应的一些函数 * 一旦触发他生命周期的函数&#xff0c;它就会影响当前项…

如何设置从小程序跳转到其它小程序

​有的商家有多个小程序&#xff0c;希望能够通过一个小程序链接到所有其它小程序&#xff0c;用户可以通过点击跳转链接实现从一个小程序跳转到另一个小程序。要怎么才能实现这样的跳转呢。下面具体介绍。 1. 设置跳转。在小程序管理员后台->分类管理&#xff0c;添加一个…

ssm个人学习01

Spring配置文件: spring环境的搭建: 1:导入对应的spring坐标 也就是依赖 2:编写controller, service, dao相关的代码 3:创建配置文件(在resource下面配置文件) 例如:applicationContext.xml <bean id "" class ""> <property name "&…

工作电压范围宽的国产音频限幅器D2761用于蓝牙音箱,输出噪声最大仅-90dBV

近年来随着相关技术的不断提升&#xff0c;音箱也逐渐从传统的音箱向智能音箱、无线音箱升级。同时在消费升级的背景下&#xff0c;智能音箱成为人们提升生活品质的方式之一。智能音箱是智能化和语音交互技术的产物&#xff0c;具有点歌、购物、控制智能家居设备等功能&#xf…

python水表识别图像识别深度学习 CNN

python水表识别&#xff0c;图像识别深度学习 CNN&#xff0c;Opencv,Keras 重点&#xff1a;项目和文档是本人近期原创所作&#xff01;程序可以将水表图片里面的数据进行深度学习&#xff0c;提取相关信息训练&#xff0c;lw1.3万字重复15%&#xff0c;可以直接上交那种&…

Vue中<style scoped lang=“scss“>的含义

这段代码中的<style scoped lang"scss">是HTML和Vue框架结合使用时常见的一个模式&#xff0c;具体含义如下&#xff1a; scoped&#xff1a;这是一个Vue.js特有的属性&#xff0c;用来指定样式只应用于当前组件的元素。没有这个属性时&#xff0c;样式会全局应…