公众号里的网站怎么做,滇中引水建设管理局网站,巨野做网站的,网站建设公司效果前言#xff1a;本系列文章旨在通过TCP/IP协议簇自下而上的梳理大致的知识点#xff0c;从计算机网络体系结构出发到应用层#xff0c;每一个协议层通过一篇文章进行总结#xff0c;本系列正在持续更新中... 计网期末复习指南#xff08;一#xff09;#xff1a;计算… 前言本系列文章旨在通过TCP/IP协议簇自下而上的梳理大致的知识点从计算机网络体系结构出发到应用层每一个协议层通过一篇文章进行总结本系列正在持续更新中... 计网期末复习指南一计算机网络体系结构计网期末复习指南二物理层计网期末复习指南三数据链路层计网期末复习指南四网络层计网期末复习指南三运输层计网期末复习指南六应用层 目录
一.应用层概述
二.域名系统DNS
▐ 域名结构
三.文件传输协议FTP
四.万维网WWW
▐ 统一资源定位符URL
URL的结构
URL示例
URL在Web中的作用
▐ 超文本传输协议HTTP
HTTP请求
HTTP响应
常见的HTTP方法
HTTP状态码
HTTP的版本
▐ 超文本标记语言HTML
动态万维网文档
活动万维网文档
五.邮件收发协议 一.应用层概述
在TCP/IP模型中应用层是网络协议栈中最高层的一层负责处理网络应用之间的通信。
应用层的主要功能包括
提供应用程序与网络之间的接口使应用程序能够通过网络传输数据。定义了应用层协议如HTTP、SMTP、FTP等用于规定应用程序之间的通信规则和数据格式。实现了应用层协议的解析和处理包括对数据的封装、路由、拆分和重组等。提供了各种网络服务的功能如电子邮件、文件传输、远程登录等。
应用层协议是应用程序直接使用的协议因此应用层协议的设计需要考虑到应用程序的需求和特点。同时应用层还负责将数据传输到传输层将接收到的数据传递给相应的应用程序。 二.域名系统DNS
域名系统Domain Name System, DNS是互联网的基础服务之一它将用户友好的域名如www.example.com转换为计算机可以理解的IP地址如192.0.2.1。这个过程称为域名解析。DNS的主要作用是通过将便于记忆的域名转换为实际的IP地址帮助用户更方便地访问互联网资源。比如我们平常使用百度都是直接访问baidu.com而没有人去输入百度的IP地址有了DNS的帮助可以极大程度上优化用户的体验。
以下是DNS的基本工作原理
用户输入域名用户在浏览器地址栏输入域名。DNS解析器查询浏览器向本地DNS解析器发送查询请求。本地缓存检查本地DNS解析器先检查缓存中是否有对应的IP地址。 如果有缓存记录则直接返回IP地址。如果没有缓存记录则继续向上级DNS服务器查询。递归查询如果本地DNS解析器没有找到结果它会递归查询其他DNS服务器。查询过程通常从根DNS服务器开始逐级向下查询顶级域TLD服务器和权威DNS服务器。获得IP地址最终权威DNS服务器返回域名对应的IP地址。返回结果本地DNS解析器将IP地址返回给用户的浏览器。建立连接浏览器使用获得的IP地址与目标服务器建立连接获取网页内容。
DNS系统分为多个层级包括
根域名服务器管理顶级域如.com、.org等的信息。顶级域TLD服务器管理特定顶级域内的所有域名如.com域的所有域名。权威DNS服务器存储具体域名及其对应的IP地址信息。缓存DNS服务器保存近期解析过的DNS记录减少重复查询。
▐ 域名结构
互联网的域名结构采用层次化的分级体系每个域名由多个部分组成从右到左依次为顶级域、二级域、三级域等形成一个树状结构。以下是详细的域名结构 顶级域Top-Level Domain, TLD通用顶级域gTLD如.com、.org、.net、.info等。国家代码顶级域ccTLD如.cn中国、.uk英国、.jp日本等。 二级域Second-Level Domain, SLD位于顶级域之下通常由注册者选择和注册。例如在example.com中example是二级域。 三级域Third-Level Domain二级域下的子域。例如在www.example.com中www是三级域。 更低级别的域Lower-Level Domains根据需要可以进一步划分为四级域、五级域等。例如sub.www.example.com中sub是四级域。
示例
www.example.comcom顶级域TLDexample二级域SLDwww三级域 三.文件传输协议FTP
FTP (File Transfer Protocol) 是一种用于在网络中传输文件的标准协议。它是一个客户端-服务器协议允许用户通过客户端程序与远程服务器建立连接并进行文件的上传和下载。
使用FTP用户可以在本地计算机和远程服务器之间传输文件。用户需要输入远程服务器的IP地址或域名、用户名和密码来建立连接。一旦连接建立成功用户可以浏览服务器上的文件和目录并进行文件的上传和下载。
FTP协议使用两个不同的连接控制连接和数据连接。控制连接用于传输命令和回应而数据连接用于传输实际的文件数据。
FTP支持多种操作包括上传文件、下载文件、创建目录、删除文件、重命名文件、浏览文件列表等。同时FTP还提供了认证和安全机制如用户名和密码验证、加密传输等以保护文件传输的安全性。
由于FTP是一种老旧的协议存在一些安全性和性能方面的限制。因此现在更常用的是基于FTP的安全协议如SFTP (SSH File Transfer Protocol) 和FTPS (FTP over SSL/TLS)。这些协议通过加密和身份验证等机制提供更高的安全性和性能。
FTP协议使用两个不同的端口号
控制连接端口Command Port默认使用端口号21。该端口用于建立控制连接用于传输FTP命令和回应。数据连接端口Data Port默认使用端口号20。该端口用于建立数据连接用于传输实际的文件数据。 四.万维网WWW
万维网World Wide Web是一种基于超文本的联机信息系统英文简称是Web是互联网的一部分。它由一系列的网页Web Page组成这些网页通过超链接Hyperlink相互连接。通过万维网人们可以通过浏览器访问和浏览网页上的内容如文本、图像、音频、视频等。
万维网的概念由英国科学家蒂姆·伯纳斯-李Tim Berners-Lee于1989年提出并在1990年创造了第一个网页浏览器和服务器。万维网的设计理念是将信息以分布式的方式组织起来使之能够被广泛地共享和访问。
通过万维网人们可以搜索和获取各种信息进行在线购物、在线娱乐、社交网络等活动。万维网以客户服务器方式工作客户机向服务器发出请求服务器程序向客户端程序送回客户想要的万维网文档。在这个过程中需要解决以下几个问题
怎样标志分布在整个互联网上的万维网文档用什么样的协议来实现万维网上的各种链接怎样使不同作者创作的不同风格的万维网文档都能在互联网上的各种主机上显示出来同时使用户清楚地知道在什么地方存在着链接
为了解决第一个问题万维网使用统一资源定位符URL (Uniform Resource Locator)来标志万维网上的各种文档并使每一个文档在整个互联网的范围内具有唯一的标识符URL。
为了解决上述的第二个问题就要使万维网客户程序与万维网服务器程序之间的交互遵守严格的协议这就是超文本传送协议HTTP(Hyper Text Transfer Protocol)。HTTP是一个应用层协议它使用TCP连接进行可靠的传送。
为了解决上述的第三个问题万维网使用超文本标记语言HTML(Hyper Text Markup Language),使得万维网页面的设计者可以很方便地用钱接从本页面的某处链接到互联网上的任何一个万维网页面并且能够在自己的主机屏幕上格文些页面显示出来。最后用户可使用搜索工具在万维网上方便地查找所需的信息。
▐ 统一资源定位符URL
统一资源定位符Uniform Resource Locator, URL是用于标识和定位互联网上的资源的字符串。URL是一种子集属于更广泛的统一资源标识符Uniform Resource Identifier, URI家族。URL提供了资源的位置以及访问该资源的方法。
URL的结构
URL的基本结构由多个部分组成每个部分都有特定的功能。这些部分通常以某种格式组合在一起以便唯一地标识和访问资源。URL的典型结构如下
scheme://userinfohost:port/path?query#fragment1. 方案Scheme
表示资源访问的协议类型如http、https、ftp、mailto等。例子http、https。
2. 用户信息Userinfo
可选部分包含用户名和密码用于访问受保护的资源。格式username:password。例子user:pass。
3. 主机Host
表示资源所在的服务器可以是域名或IP地址。例子www.example.com、192.0.2.1。
4. 端口Port
可选部分指定访问资源的端口号默认情况下HTTP使用80端口HTTPS使用443端口。格式:port。例子:8080。
5. 路径Path
表示资源在服务器上的具体位置通常以/分隔的层级结构表示。例子/path/to/resource。
6. 查询Query
可选部分包含一些参数用于向资源传递额外的信息。通常以键值对的形式表示多组键值对用分隔。格式?key1value1key2value2。例子?searchexamplelangen。
7. 片段Fragment
可选部分指向资源内的某个部分或位置通常用于HTML文档中的锚点。格式#fragment。例子#section1。
URL示例
以下是一些URL的示例展示了不同部分的组合和用途
简单的HTTP URL
http://www.example.com/index.htmlScheme: httpHost: www.example.comPath: /index.html
带有端口的URL
http://www.example.com:8080/index.htmlScheme: httpHost: www.example.comPort: 8080Path: /index.html
带有查询参数的URL
http://www.example.com/search?qopenailangenScheme: httpHost: www.example.comPath: /searchQuery: qopenailangen
URL在Web中的作用
资源定位URL是访问网页、图片、视频等各种资源的基础。导航和链接URL用于超链接帮助用户在不同网页和网站之间导航。数据传递通过查询参数传递数据实现搜索、过滤等功能。
▐ 超文本传输协议HTTP
超文本传输协议HyperText Transfer Protocol, HTTP是用于在万维网上分布式、协作和超媒体信息系统中传输数据的应用层协议。HTTP是Web的基础通过它客户端和服务器能够互相通信并交换信息。
HTTP是一种无状态的协议意味着每个请求和响应都是独立的不保留任何状态信息。每次客户端发送请求时都需要包含所有必要的信息服务器在响应后不会保留任何请求的信息。
HTTP通信由请求Request和响应Response组成。客户端发送HTTP请求服务器处理请求后返回HTTP响应。
HTTP请求
一个HTTP请求由以下部分组成
请求行Request Line包含请求方法、请求目标URI和HTTP版本。请求头Request Headers包含描述请求的元数据例如主机、用户代理、接受的内容类型等。空行用于分隔请求头和请求体。请求体Request Body可选包含要发送到服务器的数据如表单数据。
示例请求
GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0
Accept: text/html
HTTP响应
一个HTTP响应由以下部分组成
状态行Status Line包含HTTP版本、状态码和状态描述。响应头Response Headers包含描述响应的元数据例如内容类型、内容长度等。空行用于分隔响应头和响应体。响应体Response Body可选包含服务器返回的数据如网页内容。
示例响应
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 123html
body
h1Hello, World!/h1
/body
/html常见的HTTP方法
GET请求指定资源。只用于请求数据不应修改服务器上的任何资源。POST向指定资源提交数据通常用于表单提交。PUT向指定资源上传数据替换目标资源的所有当前表示。DELETE请求删除指定资源。HEAD类似GET但只请求资源的头部信息不返回响应体。OPTIONS返回服务器支持的HTTP方法。PATCH对指定资源进行部分修改。
HTTP状态码
HTTP状态码由三位数字组成表示服务器对请求的处理结果。常见状态码如下
1xx信息性请求已接收继续处理。 100 Continue2xx成功请求已成功处理。 200 OK201 Created3xx重定向需要进一步操作以完成请求。 301 Moved Permanently302 Found4xx客户端错误请求包含错误或无法处理。 400 Bad Request401 Unauthorized403 Forbidden404 Not Found5xx服务器错误服务器在处理请求时发生错误。 500 Internal Server Error502 Bad Gateway503 Service Unavailable
HTTP的版本
HTTP/1.0最初版本支持基本的请求和响应功能。HTTP/1.1改进了持久连接、管道化传输、分块传输编码等。HTTP/2引入二进制分帧、多路复用、头部压缩等特性提高了传输性能。HTTP/3基于QUIC协议进一步提升传输效率和安全性。
HTTP广泛应用于Web浏览、API通信、文件传输等领域。它是浏览器与Web服务器、客户端与RESTful服务之间通信的主要协议。
▐ 超文本标记语言HTML
超文本标记语言HTML是一种用于创建网页的标记语言。HTML使用标签来描述网页中的各种元素和结构。这些标签被放置在尖括号中并以开始标签和结束标签的形式出现开始标签以开头结束标签以/结尾。
HTML标记语言可以定义文本的结构、布局、链接、图像、音频、视频等内容。它允许开发人员在网页中插入文本、图像、链接等元素并通过使用相关的属性来控制这些元素的外观和行为。
HTML是开放标准由万维网联盟W3C负责维护和发展。它是网页开发的基础在互联网上广泛应用。通过使用HTML开发人员可以创建具有各种功能和交互性的网页从简单的静态网页到复杂的动态网站。
以下就是一个简单的静态万维网文档
!DOCTYPE html
html
headtitle页面标题/title
/head
bodyh1这是一个标题/h1p这是一个段落。/p
/body
/html动态万维网文档
动态万维网文档Dynamic Web Document是一种根据用户的请求和动作而生成的网页内容。与静态网页不同动态网页的内容不是预先编写好的静态HTML文件而是根据服务器端的程序和数据库等进行实时生成的。
动态网页通常由两部分组成前端和后端。前端部分负责处理用户的输入和交互并将数据发送到后端。后端部分则根据接收到的数据进行处理从数据库中检索所需的信息对数据进行操作最终生成动态内容并将其发送回前端以供用户浏览。
动态网页的实现通常使用服务器端的脚本语言如PHP、Python、Ruby等和数据库如MySQL、Oracle等。通过这些技术开发人员可以根据用户的需求和数据库中的数据生成具有个性化和实时性的网页内容。
动态网页的优点是可以实现更复杂的交互功能和个性化定制适用于需要实时更新内容的场景如社交媒体、电子商务网站等。然而相对于静态网页而言动态网页在加载速度上可能会稍慢并且需要更多的服务器资源来处理和生成内容。
活动万维网文档
活动万维网文档Active Web Document是指具有动态交互性和实时更新能力的网页文档。与静态网页和动态网页相比活动万维网文档更加具有实时性和个性化定制的特点。
活动万维网文档通过使用前端技术如JavaScript和后端技术如服务器端脚本实现动态交互功能。它可以根据用户的行为和输入动态地改变网页的内容、样式和行为。常见的例子包括在线游戏、即时通讯、实时更新的股票报价等。
与动态万维网文档相比活动万维网文档更加注重实时性和交互性。它可以通过使用前端技术实现实时的动画效果、实时响应用户的操作。而动态网页更加强调后端技术通过服务器端的脚本和数据库等来生成和提供动态的网页内容。
总的来说动态万维网文档是指通过服务器端脚本和数据库等实时生成的网页内容而活动万维网文档是指具有动态交互性和实时更新能力的网页文档。活动万维网文档可以通过前端技术实现实时的动画效果和实时响应用户的操作更加注重实时性和交互性。 五.邮件收发协议
常见的邮件收发协议有以下几种
POP3Post Office Protocol Version 3是一种用于从邮件服务器上收取电子邮件的协议。它允许用户将电子邮件下载到本地设备上并在本地设备上进行管理。IMAPInternet Message Access Protocol与POP3类似也是用于从邮件服务器上收取电子邮件的协议。不同的是IMAP允许用户在本地设备上查看邮件的同时也可以在服务器上对邮件进行管理如创建文件夹、删除邮件等操作。SMTPSimple Mail Transfer Protocol是一种用于发送电子邮件的协议。SMTP将邮件从发送者的邮件客户端发送到接收者的邮件服务器并在服务器之间进行中转直到邮件被送达到接收者的邮件服务器。POP3S和IMAPS分别是POP3和IMAP的安全版本使用SSL/TLS加密通信确保邮件在传输过程中的安全性。
这些协议在电子邮件的收发过程中扮演着重要的角色保证了邮件的可靠传输和安全性。这里单独对SMTP简单解释一下。
SMTPSimple Mail Transfer Protocol是一种用于发送电子邮件的协议。它定义了邮件从发送者的邮件客户端发送到接收者的邮件服务器的传输规则。SMTP协议使用TCP作为传输层协议它使用25号端口来进行通信。
在SMTP协议中发送邮件的过程可以简单地分为以下几个步骤
建立连接发送者的邮件客户端通过向接收者的邮件服务器发送连接请求来建立连接。连接请求包括发送者的身份验证和连接建立的要求。握手接收者的邮件服务器接收到连接请求后会发送一个握手响应通知发送者连接已建立。发送邮件发送者通过SMTP命令向接收者的邮件服务器发送邮件内容。常用的SMTP命令包括HELO发送者的身份验证、MAIL FROM指定发送者的电子邮件地址、RCPT TO指定接收者的电子邮件地址、DATA开始发送邮件内容、QUIT关闭连接等。传输邮件内容发送者将邮件内容以文本格式发送给接收者的邮件服务器。邮件内容包括邮件主题、发件人、收件人、邮件正文、附件等。邮件路由接收者的邮件服务器根据收件人的地址将邮件转发给相应的收件人。结束连接邮件发送完毕后发送者的邮件客户端发送QUIT命令通知接收者的邮件服务器关闭连接。
SMTP协议的设计目标是快速、可靠地传递电子邮件并提供一定的错误处理和反馈机制。它是电子邮件系统中不可或缺的一部分广泛应用于各种邮件客户端和邮件服务器之间的通信。 本次的分享就到此为止了希望我的分享能给您带来帮助创作不易也欢迎大家三连支持你们的点赞就是博主更新最大的动力如有不同意见欢迎评论区积极讨论交流让我们一起学习进步有相关问题也可以私信博主评论区和私信都会认真查看的我们下次再见