avatar
文章
296
标签
31
分类
11

首页
文章
标签
娱乐
  • 图库
  • Music
  • Movie
  • 简历
联系我
About
前端日记
搜索
首页
文章
标签
娱乐
  • 图库
  • Music
  • Movie
  • 简历
联系我
About

前端日记

面试官:DNS协议 是什么?说说DNS 完整的查询过程?
发表于2023-01-01|面试
面试官:DNS协议 是什么?说说DNS 完整的查询过程? 一、是什么DNS(Domain Names System),域名系统,是互联网一项服务,是进行域名和与之相对应的 IP 地址进行转换的服务器 简单来讲,DNS相当于一个翻译官,负责将域名翻译成ip地址 IP 地址:一长串能够唯一地标记网络上的计算机的数字 域名:是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识 二、域名域名是一个具有层次的结构,从上到下一次为根域名、顶级域名、二级域名、三级域名… 例如www.xxx.com,www为三级域名、xxx为二级域名、com为顶级域名,系统为用户做了兼容,域名末尾的根域名.一般不需要输入 在域名的每一层都会有一个域名服务器,如下图: 除此之外,还有电脑默认的本地域名服务器 三、查询方式DNS 查询的方式有两种: 递归查询:如果 A 请求 B,那么 B 作为请求的接收者一定要给 A 想要的答案 迭代查询:如果接收者 B 没有请求者 A 所需要的准确内容,接收者 B 将告诉请求者 A,如何去获得这个 ...
面试官:说一下 GET 和 POST 的区别?
发表于2023-01-01|面试
面试官:说一下 GET 和 POST 的区别? 一、是什么GET和POST,两者是HTTP协议中发送请求的方法 GETGET方法请求一个指定资源的表示形式,使用GET的请求应该只被用于获取数据 POSTPOST方法用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用 本质上都是TCP链接,并无差别 但是由于HTTP的规定和浏览器/服务器的限制,导致他们在应用过程中会体现出一些区别 二、区别从w3schools得到的标准答案的区别如下: GET在浏览器回退时是无害的,而POST会再次提交请求。 GET产生的URL地址可以被Bookmark,而POST不可以。 GET请求会被浏览器主动cache,而POST不会,除非手动设置。 GET请求只能进行url编码,而POST支持多种编码方式。 GET请求参数会被完整保留在浏览器历史记录里,而POST中的参数不会被保留。 GET请求在URL中传送的参数是有长度限制的,而POST没有。 对参数的数据类型,GET只接受ASCII字符,而POST没有限制。 GET比POST更不安全,因为参数直接暴露在URL上,所以不能用来传递敏 ...
面试官:为什么说HTTPS比HTTP安全? HTTPS是如何保证安全的?
发表于2023-01-01|面试
面试官:为什么说HTTPS比HTTP安全? HTTPS是如何保证安全的? 一、安全特性在上篇文章中,我们了解到HTTP在通信过程中,存在以下问题: 通信使用明文(不加密),内容可能被窃听 不验证通信方的身份,因此有可能遭遇伪装 而HTTPS的出现正是解决这些问题,HTTPS是建立在SSL之上,其安全性由SSL来保证 在采用SSL后,HTTP就拥有了HTTPS的加密、证书和完整性保护这些功能 SSL(Secure Sockets Layer 安全套接字协议),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议 二、如何做SSL 的实现这些功能主要依赖于三种手段: 对称加密:采用协商的密钥对数据加密 非对称加密:实现身份认证和密钥协商 摘要算法:验证信息的完整性 数字签名:身份验证 对称加密对称加密指的是加密和解密使用的秘钥都是同一个,是对称的。只要保证了密钥的安全,那整个通信过程就可以说具有了机密性 非对称加密非对称加密,存在两个秘钥,一个叫公钥,一个叫私钥。两个秘钥是不同的,公钥可以公开给 ...
面试官:什么是HTTP? HTTP 和 HTTPS 的区别?
发表于2023-01-01|面试
面试官:什么是HTTP? HTTP 和 HTTPS 的区别? 一、HTTPHTTP (HyperText Transfer Protocol),即超文本运输协议,是实现网络通信的一种规范 在计算机和网络世界有,存在不同的协议,如广播协议、寻址协议、路由协议等等…… 而HTTP是一个传输协议,即将数据由A传到B或将B传输到A,并且 A 与 B 之间能够存放很多第三方,如: A<=>X<=>Y<=>Z<=>B 传输的数据并不是计算机底层中的二进制包,而是完整的、有意义的数据,如HTML 文件, 图片文件, 查询结果等超文本,能够被上层应用识别 在实际应用中,HTTP常被用于在Web浏览器和网站服务器之间传递信息,以明文方式发送内容,不提供任何方式的数据加密 特点如下: 支持客户/服务器模式 简单快速:客户向服务器请求服务时,只需传送请求方法和路径。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快 灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Con ...
面试官:如何理解OSI七层模型?
发表于2023-01-01|面试
面试官:如何理解OSI七层模型? 一、是什么OSI (Open System Interconnect)模型全称为开放式通信系统互连参考模型,是国际标准化组织 ( ISO ) 提出的一个试图使各种计算机在世界范围内互连为网络的标准框架 OSI 将计算机网络体系结构划分为七层,每一层实现各自的功能和协议,并完成与相邻层的接口通信。即每一层扮演固定的角色,互不打扰 二、划分OSI主要划分了七层,如下图所示: 应用层应用层位于 OSI 参考模型的第七层,其作用是通过应用程序间的交互来完成特定的网络应用 该层协议定义了应用进程之间的交互规则,通过不同的应用层协议为不同的网络应用提供服务。例如域名系统 DNS,支持万维网应用的 HTTP 协议,电子邮件系统采用的 SMTP 协议等 在应用层交互的数据单元我们称之为报文 表示层表示层的作用是使通信的应用程序能够解释交换数据的含义,其位于 OSI 参考模型的第六层,向上为应用层提供服务,向下接收来自会话层的服务 该层提供的服务主要包括数据压缩,数据加密以及数据描述,使应用程序不必担心在各台计算机中表示和存储的内部格式差异 会话层会话层就是负责建 ...
面试官:如何理解TCP/IP协议?
发表于2023-01-01|面试
面试官:如何理解TCP/IP协议? 一、是什么TCP/IP,传输控制协议/网际协议,是指能够在多个不同网络间实现信息传输的协议簇 TCP(传输控制协议) 一种面向连接的、可靠的、基于字节流的传输层通信协议 IP(网际协议) 用于封包交换数据网络的协议 TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇, 只是因为在TCP/IP协议中TCP协议和IP协议最具代表性,所以通称为TCP/IP协议族(英语:TCP/IP Protocol Suite,或TCP/IP Protocols) 二、划分TCP/IP协议族按层次分别了五层体系或者四层体系 五层体系的协议结构是综合了 OSI 和 TCP/IP 优点的一种协议,包括应用层、传输层、网络层、数据链路层和物理层 五层协议的体系结构只是为介绍网络原理而设计的,实际应用还是 TCP/IP 四层体系结构,包括应用层、传输层、网络层(网际互联层)、网络接口层 如下图所示: ...
面试官:如何理解UDP 和 TCP? 区别? 应用场景?
发表于2023-01-01|面试
面试官:如何理解UDP 和 TCP? 区别? 应用场景? 一、UDPUDP(User Datagram Protocol),用户数据包协议,是一个简单的面向数据报的通信协议,即对应用层交下来的报文,不合并,不拆分,只是在其上面加上首部后就交给了下面的网络层 也就是说无论应用层交给UDP多长的报文,它统统发送,一次发送一个报文 而对接收方,接到后直接去除首部,交给上面的应用层就完成任务 UDP报头包括4个字段,每个字段占用2个字节(即16个二进制位),标题短,开销小 特点如下: UDP 不提供复杂的控制机制,利用 IP 提供面向无连接的通信服务 传输途中出现丢包,UDP 也不负责重发 当包的到达顺序出现乱序时,UDP没有纠正的功能。 并且它是将应用程序发来的数据在收到的那一刻,立即按照原样发送到网络上的一种机制。即使是出现网络拥堵的情况,UDP 也无法进行流量控制等避免网络拥塞行为 二、TCPTCP(Transmission Control Protocol),传输控制协议,是一种可靠、面向字节流的通信协议,把上面应用层交下来的数据看成无结构的字节流来发送 可以想象成流水形式的 ...
面试官:说说对WebSocket的理解?应用场景?
发表于2023-01-01|面试
面试官:说说对WebSocket的理解?应用场景? 一、是什么WebSocket,是一种网络传输协议,位于OSI模型的应用层。可在单个TCP连接上进行全双工通信,能更好的节省服务器资源和带宽并达到实时通迅 客户端和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输 从上图可见,websocket服务器与客户端通过握手连接,连接成功后,两者都能主动的向对方发送或接受数据 而在websocket出现之前,开发实时web应用的方式为轮询 不停地向服务器发送 HTTP 请求,问有没有数据,有数据的话服务器就用响应报文回应。如果轮询的频率比较高,那么就可以近似地实现“实时通信”的效果 轮询的缺点也很明显,反复发送无效查询请求耗费了大量的带宽和 CPU 资源 二、特点全双工通信允许数据在两个方向上同时传输,它在能力上相当于两个单工通信方式的结合 例如指 A→B 的同时 B→A ,是瞬时同步的 二进制帧采用了二进制帧结构,语法、语义与 HTTP 完全不兼容,相比http/2,WebSocket 更侧重于“实时通信”,而HTTP/2 更侧重于提高传输效率,所以两者的帧结 ...
面试官:说说地址栏输入 URL 敲下回车后发生了什么?
发表于2023-01-01|面试
面试官:说说地址栏输入 URL 敲下回车后发生了什么? 一、简单分析简单的分析,从输入 URL到回车后发生的行为如下: URL解析 DNS 查询 TCP 连接 HTTP 请求 响应请求 页面渲染 二、详细分析URL解析首先判断你输入的是一个合法的 URL 还是一个待搜索的关键词,并且根据你输入的内容进行对应操作 URL的解析第过程中的第一步,一个url的结构解析如下: DNS查询在之前文章中讲过DNS的查询,这里就不再讲述了 整个查询过程如下图所示: 最终,获取到了域名对应的目标服务器IP地址 TCP连接在之前文章中,了解到tcp是一种面向有连接的传输层协议 在确定目标服务器服务器的IP地址后,则经历三次握手建立TCP连接,流程如下: 发送 http 请求当建立tcp连接之后,就可以在这基础上进行通信,浏览器发送 http 请求到目标服务器 请求的内容包括: 请求行 请求头 请求主体 响应请求当服务器接收到浏览器的请求之后,就会进行逻辑操作,处理完成之后返回一个HTTP响应消息,包括: 状态行 响应头 响应正文 在服务器响应之后,由于现在http默认开 ...
面试官:说说TCP为什么需要三次握手和四次挥手?
发表于2023-01-01|面试
面试官:说说TCP为什么需要三次握手和四次挥手? 一、三次握手三次握手(Three-way Handshake)其实就是指建立一个TCP连接时,需要客户端和服务器总共发送3个包 主要作用就是为了确认双方的接收能力和发送能力是否正常、指定自己的初始化序列号为后面的可靠性传送做准备 过程如下: 第一次握手:客户端给服务端发一个 SYN 报文,并指明客户端的初始化序列号 ISN(c),此时客户端处于 SYN_SENT 状态 第二次握手:服务器收到客户端的 SYN 报文之后,会以自己的 SYN 报文作为应答,为了确认客户端的 SYN,将客户端的 ISN+1作为ACK的值,此时服务器处于 SYN_RCVD 的状态 第三次握手:客户端收到 SYN 报文之后,会发送一个 ACK 报文,值为服务器的ISN+1。此时客户端处于 ESTABLISHED 状态。服务器收到 ACK 报文之后,也处于 ESTABLISHED 状态,此时,双方已建立起了连接 上述每一次握手的作用如下: 第一次握手:客户端发送网络包,服务端收到了这样服务端就能得出结论:客户端的发送能力、服务端的接收能力是正常的。 ...
1…212223…30
avatar
YangTao
share & study
文章
296
标签
31
分类
11
Follow Me
公告
=>我的个人网站,分享前端技术及踩坑记录。如果喜欢,欢迎Star!
最新文章
Vue的不同风格写法,你知道么?2024-10-24
GitHub2024-10-24
一文解读react-hook(useState、useReducer、useEffect、useCallback、useMemo、useRef、useContext...)2024-09-06
GPT4升级指南(2024年5月最新)2024-05-15
CSS @符号规则的使用(@font-face、@keyframes、@media、@scope等)2024-02-20
标签
面试JavaScript小程序CSSES6utils正则NodeJSExpressKoatestwindowyamlgithubvuewebpackmetacliajaxReact算法GPT设计模式GitHttpLinuxTypeScriptvue2Vuevue3proxy
网站资讯
文章数目 :
296
已运行时间 :
本站总字数 :
525.1k
最后更新时间 :
©2023 - 2024 By YangTao
鄂ICP备2021000562号
搜索
数据库加载中