深圳私人做网站,wordpress优点,网站网站怎么定位,wordpress 远程设置方法文章目录 1. 计算机网络基础1.1 网络分层模型1. OSI 七层模型是什么#xff1f;每一层的作用是什么#xff1f;2.TCP/IP 四层模型是什么#xff1f;每一层的作用是什么#xff1f;3. 为什么网络要分层#xff1f; 1.2 常见网络协议1. 应用层有哪些常见的协议#xff1f;2… 文章目录 1. 计算机网络基础1.1 网络分层模型1. OSI 七层模型是什么每一层的作用是什么2.TCP/IP 四层模型是什么每一层的作用是什么3. 为什么网络要分层 1.2 常见网络协议1. 应用层有哪些常见的协议2. 传输层有哪些常见的协议3. 网络层有哪些常见的协议 2. HTTP1. 从输入 URL 到页面展示到底发生了什么打开一个网页整个过程会使用哪些协议2. HTTP 和 HTTPS 有什么区别重要3. URI 和 URL 的区别是什么? 3. WebSocket1. 什么是 WebSocket?2. WebSocket 和 HTTP 有什么区别3. WebSocket 的工作过程是什么样的4. SSE 与 WebSocket 有什么区别 4. PING1. PING 命令的作用是什么2. PING 命令的工作原理是什么 5. DNS5.1 DNS 的作用是什么5.2 DNS 服务器有哪些5.3 DNS 工作流程 1. 计算机网络基础
1.1 网络分层模型
1. OSI 七层模型是什么每一层的作用是什么 2.TCP/IP 四层模型是什么每一层的作用是什么
我们可以将 TCP / IP 模型看作是 OSI 七层模型的精简版本由以下 4 层组成
应用层 应用层位于传输层之上主要提供两个终端设备上的应用程序之间信息交换的服务它定义了信息交换的格式消息会交给下一层传输层来传输。 我们把应用层交互的数据单元称为报文。传输层 传输层的主要任务就是负责向两台终端设备进程之间的通信提供通用的数据传输服务。网络层 网络层负责为分组交换网上的不同主机提供通信服务。网络接口层 网络接口层看作是数据链路层和物理层的合体。
数据链路层的作用是将网络层交下来的 IP 数据报组装成帧在两个相邻节点间的链路上传送帧。每一帧包括数据和必要的控制信息如同步信息地址信息差错控制等。物理层的作用是实现相邻计算机节点之间比特流的透明传送尽可能屏蔽掉具体传输介质和物理设备的差异
3. 为什么网络要分层
各层之间相互独立各层之间相互独立各层之间不需要关心其他层是如何实现的只需要知道自己如何调用下层提供好的功能就可以了可以简单理解为接口调用。提高了灵活性和可替换性每一层都可以使用最适合的技术来实现你只需要保证你提供的功能以及暴露的接口的规则没有改变就行了。并且每一层都可以根据需要进行修改或替换而不会影响到整个网络的结构。大问题化小分层可以将复杂的网络问题分解为许多比较小的、界线比较清晰简单的小问题来处理和解决。这样使得复杂的计算机网络系统变得易于设计实现和标准化。
1.2 常见网络协议
1. 应用层有哪些常见的协议
HTTPHypertext Transfer Protocol超文本传输协议基于 TCP 协议是一种用于传输超文本和多媒体内容的协议主要是为 Web 浏览器与 Web 服务器之间的通信而设计的。当我们使用浏览器浏览网页的时候我们网页就是通过 HTTP 请求进行加载的。SMTPSimple Mail Transfer Protocol简单邮件发送协议基于 TCP 协议是一种用于发送电子邮件的协议。注意 ⚠️SMTP 协议只负责邮件的发送而不是接收。要从邮件服务器接收邮件需要使用 POP3 或 IMAP 协议。POP3/IMAP邮件接收协议基于 TCP 协议两者都是负责邮件接收的协议。IMAP 协议是比 POP3 更新的协议它在功能和性能上都更加强大。IMAP 支持邮件搜索、标记、分类、归档等高级功能而且可以在多个设备之间同步邮件状态。几乎所有现代电子邮件客户端和服务器都支持 IMAP。FTPFile Transfer Protocol文件传输协议 : 基于 TCP 协议是一种用于在计算机之间传输文件的协议可以屏蔽操作系统和文件存储方式。注意 ⚠️FTP 是一种不安全的协议因为它在传输过程中不会对数据进行加密。建议在传输敏感数据时使用更安全的协议如 SFTP。Telnet远程登陆协议基于 TCP 协议用于通过一个终端登陆到其他服务器。Telnet 协议的最大缺点之一是所有数据包括用户名和密码均以明文形式发送这有潜在的安全风险。这就是为什么如今很少使用 Telnet而是使用一种称为 SSH 的非常安全的网络传输协议的主要原因。SSHSecure Shell Protocol安全的网络传输协议基于 TCP 协议通过加密和认证机制实现安全的访问和文件传输等业务RTPReal-time Transport Protocol实时传输协议通常基于 UDP 协议但也支持 TCP 协议。它提供了端到端的实时传输数据的功能但不包含资源预留存、不保证实时传输质量这些功能由 WebRTC 实现。DNSDomain Name System域名管理系统: 基于 UDP 协议用于解决域名和 IP 地址的映射问题。
2. 传输层有哪些常见的协议
TCPTransmission Control Protocol传输控制协议 提供 面向连接 的可靠 的数据传输服务。UDPUser Datagram Protocol用户数据协议提供 无连接 的尽最大努力 的数据传输服务不保证数据传输的可靠性简单高效。网络层有哪些常见的协议
3. 网络层有哪些常见的协议
IPInternet Protocol网际协议TCP/IP 协议中最重要的协议之一属于网络层的协议主要作用是定义数据包的格式、对数据包进行路由和寻址以便它们可以跨网络传播并到达正确的目的地。目前 IP 协议主要分为两种一种是过去的 IPv4另一种是较新的 IPv6目前这两种协议都在使用但后者已经被提议来取代前者。ARPAddress Resolution Protocol地址解析协议ARP 协议解决的是网络层地址和链路层地址之间的转换问题。因为一个 IP 数据报在物理上传输的过程中总是需要知道下一跳物理上的下一个目的地该去往何处但 IP 地址属于逻辑地址而 MAC 地址才是物理地址ARP 协议解决了 IP 地址转 MAC 地址的一些问题。ICMPInternet Control Message Protocol互联网控制报文协议一种用于传输网络状态和错误消息的协议常用于网络诊断和故障排除。例如Ping 工具就使用了 ICMP 协议来测试网络连通性。NATNetwork Address Translation网络地址转换协议NAT 协议的应用场景如同它的名称——网络地址转换应用于内部网到外部网的地址转换过程中。具体地说在一个小的子网局域网LAN内各主机使用的是同一个 LAN 下的 IP 地址但在该 LAN 以外在广域网WAN中需要一个统一的 IP 地址来标识该 LAN 在整个 Internet 上的位置。OSPFOpen Shortest Path First开放式最短路径优先一种内部网关协议Interior Gateway ProtocolIGP也是广泛使用的一种动态路由协议基于链路状态算法考虑了链路的带宽、延迟等因素来选择最佳路径。RIP(Routing Information Protocol路由信息协议一种内部网关协议Interior Gateway ProtocolIGP也是一种动态路由协议基于距离向量算法使用固定的跳数作为度量标准选择跳数最少的路径作为最佳路径。BGPBorder Gateway Protocol边界网关协议一种用来在路由选择域之间交换网络层可达性信息Network Layer Reachability InformationNLRI的路由选择协议具有高度的灵活性和可扩展性。
2. HTTP
1. 从输入 URL 到页面展示到底发生了什么打开一个网页整个过程会使用哪些协议
总体来说分为以下几个步骤:
在浏览器中输入指定网页的 URL。浏览器通过 DNS 协议获取域名对应的 IP 地址。浏览器根据 IP 地址和端口号向目标服务器发起一个 TCP 连接请求。浏览器在 TCP 连接上向服务器发送一个 HTTP 请求报文请求获取网页的内容。服务器收到 HTTP 请求报文后处理请求并返回 HTTP 响应报文给浏览器。浏览器收到 HTTP 响应报文后解析响应体中的 HTML 代码渲染网页的结构和样式同时根据 HTML 中的其他资源的 URL如图片、CSS、JS 等再次发起 HTTP 请求获取这些资源的内容直到网页完全加载显示。浏览器在不需要和服务器通信时可以主动关闭 TCP 连接或者等待服务器的关闭请求。
2. HTTP 和 HTTPS 有什么区别重要
端口号HTTP 默认是 80HTTPS 默认是 443。URL 前缀HTTP 的 URL 前缀是 http://HTTPS 的 URL 前缀是 https://。安全性和资源消耗HTTP 协议运行在 TCP 之上所有传输的内容都是明文客户端和服务器端都无法验证对方的身份。HTTPS 是运行在 SSL/TLS 之上的 HTTP 协议SSL/TLS 运行在 TCP 之上。所有传输的内容都经过加密加密采用对称加密但对称加密的密钥用服务器方的证书进行了非对称加密。所以说HTTP 安全性没有 HTTPS 高但是 HTTPS 比 HTTP 耗费更多服务器资源。SEO搜索引擎优化搜索引擎通常会更青睐使用 HTTPS 协议的网站因为 HTTPS 能够提供更高的安全性和用户隐私保护。使用 HTTPS 协议的网站在搜索结果中可能会被优先显示从而对 SEO 产生影响。
3. URI 和 URL 的区别是什么?
URI(Uniform Resource Identifier) 是统一资源标志符可以唯一标识一个资源。URL(Uniform Resource Locator) 是统一资源定位符可以提供该资源的路径。它是一种具体的 URI即 URL 可以用来标识一个资源而且还指明了如何 locate 这个资源。
3. WebSocket
1. 什么是 WebSocket?
WebSocket 是一种基于 TCP 连接的全双工通信协议即客户端和服务器可以同时发送和接收数据。 WebSocket 协议本质上是应用层的协议用于弥补 HTTP 协议在持久通信能力上的不足。客户端和服务器仅需一次握手两者之间就直接可以创建持久性的连接并进行双向数据传输。
2. WebSocket 和 HTTP 有什么区别
WebSocket 和 HTTP 两者都是基于 TCP 的应用层协议都可以在网络中传输数据。
WebSocket 是一种双向实时通信协议而 HTTP 是一种单向通信协议。并且HTTP 协议下的通信只能由客户端发起服务器无法主动通知客户端。俩者协议前缀不同。WebSocket 使用 ws:// 或 wss://。HTTP 使用 http:// 或 https://WebSocket 可以支持扩展用户可以扩展协议实现部分自定义的子协议如支持压缩、加密等。WebSocket 通信数据格式比较轻量用于协议控制的数据包头部相对较小网络开销小而 HTTP 通信每次都要携带完整的头部网络开销较大HTTP/2.0 使用二进制帧进行数据传输还支持头部压缩减少了网络开销。
3. WebSocket 的工作过程是什么样的
WebSocket 的工作过程可以分为以下几个步骤
客户端向服务器发送一个 HTTP 请求请求头中包含 Upgrade: websocket 和 Sec-WebSocket-Key 等字段表示要求升级协议为 WebSocket服务器收到这个请求后会进行升级协议的操作如果支持 WebSocket它将回复一个 HTTP 101 状态码响应头中包含 Connection: Upgrade和 Sec-WebSocket-Accept: xxx 等字段、表示成功升级到 WebSocket 协议。客户端和服务器之间建立了一个 WebSocket 连接可以进行双向的数据传输。数据以帧frames的形式进行传送WebSocket 的每条消息可能会被切分成多个数据帧最小单位。发送端会将消息切割成多个帧发送给接收端接收端接收消息帧并将关联的帧重新组装成完整的消息。客户端或服务器可以主动发送一个关闭帧表示要断开连接。另一方收到后也会回复一个关闭帧然后双方关闭 TCP 连接。
4. SSE 与 WebSocket 有什么区别
SSE 与 WebSocket 作用相似都可以建立服务端与浏览器之间的通信实现服务端向客户端推送消息但还是有些许不同
SSE 是基于 HTTP 协议的它们不需要特殊的协议或服务器实现即可工作WebSocket 需单独服务器来处理协议。SSE 单向通信只能由服务端向客户端单向通信WebSocket 全双工通信即通信的双方可以同时发送和接受信息。SSE 实现简单开发成本低无需引入其他组件WebSocket 传输数据需做二次解析开发门槛高一些。SSE 默认支持断线重连WebSocket 则需要自己实现。SSE 只能传送文本消息二进制数据需要经过编码后传送WebSocket 默认支持传送二进制数据。
4. PING
1. PING 命令的作用是什么
PING 命令是一种常用的网络诊断工具经常用来测试网络中主机之间的连通性和网络延迟。
2. PING 命令的工作原理是什么
PING 基于网络层的 ICMPInternet Control Message Protocol互联网控制报文协议其主要原理就是通过在网络上发送和接收 ICMP 报文实现的。
ICMP 报文中包含了类型字段用于标识 ICMP 报文类型。ICMP 报文的类型有很多种但大致可以分为两类
查询报文类型向目标主机发送请求并期望得到响应。差错报文类型向源主机发送错误信息用于报告网络中的错误情况。
PING 用到的 ICMP Echo Request类型为 8 和 ICMP Echo Reply类型为 0 属于查询报文类型 。
PING 命令会向目标主机发送 ICMP Echo Request。如果两个主机的连通性正常目标主机会返回一个对应的 ICMP Echo Reply。
5. DNS
5.1 DNS 的作用是什么
DNSDomain Name System域名管理系统是当用户使用浏览器访问网址之后使用的第一个重要协议。DNS 要解决的是域名和 IP 地址的映射问题。 目前 DNS 的设计采用的是分布式、层次数据库结构DNS 是应用层协议它可以在 UDP 或 TCP 协议之上运行端口为 53 。
5.2 DNS 服务器有哪些
DNS 服务器自底向上可以依次分为以下几个层级(所有 DNS 服务器都属于以下四个类别之一):
根 DNS 服务器。根 DNS 服务器提供 TLD 服务器的 IP 地址。目前世界上只有 13 组根服务器我国境内目前仍没有根服务器。顶级域 DNS 服务器TLD 服务器。顶级域是指域名的后缀如com、org、net和edu等。国家也有自己的顶级域如uk、fr和ca。TLD 服务器提供了权威 DNS 服务器的 IP 地址。权威 DNS 服务器。在因特网上具有公共可访问主机的每个组织机构必须提供公共可访问的 DNS 记录这些记录将这些主机的名字映射为 IP 地址。本地 DNS 服务器。每个 ISP互联网服务提供商都有一个自己的本地 DNS 服务器。当主机发出 DNS 请求时该请求被发往本地 DNS 服务器它起着代理的作用并将该请求转发到 DNS 层次结构中。严格说来不属于 DNS 层级结构
5.3 DNS 工作流程
以下图为例介绍 DNS 的查询解析过程。DNS 的查询解析过程分为两种模式
迭代递归
下图是实践中常采用的方式从请求主机到本地 DNS 服务器的查询是递归的其余的查询时迭代的。 现在主机cis.poly.edu想知道gaia.cs.umass.edu的 IP 地址。假设主机cis.poly.edu的本地 DNS 服务器为dns.poly.edu并且gaia.cs.umass.edu的权威 DNS 服务器为dns.cs.umass.edu。
首先主机cis.poly.edu向本地 DNS 服务器dns.poly.edu发送一个 DNS 请求该查询报文包含被转换的域名gaia.cs.umass.edu。本地 DNS 服务器dns.poly.edu检查本机缓存发现并无记录也不知道gaia.cs.umass.edu的 IP 地址该在何处不得不向根服务器发送请求。根服务器注意到请求报文中含有edu顶级域因此告诉本地 DNS你可以向edu的 TLD DNS 发送请求因为目标域名的 IP 地址很可能在那里。本地 DNS 获取到了edu的 TLD DNS 服务器地址向其发送请求询问gaia.cs.umass.edu的 IP 地址。edu的 TLD DNS 服务器仍不清楚请求域名的 IP 地址但是它注意到该域名有umass.edu前缀因此返回告知本地 DNSumass.edu的权威服务器可能记录了目标域名的 IP 地址。这一次本地 DNS 将请求发送给权威 DNS 服务器dns.cs.umass.edu。终于由于gaia.cs.umass.edu向权威 DNS 服务器备案过在这里有它的 IP 地址记录权威 DNS 成功地将 IP 地址返回给本地 DNS。最后本地 DNS 获取到了目标域名的 IP 地址将其返回给请求主机。