网络:应用层相关协议

article/2025/8/20 9:32:30

    应用层位于传输层之上,在OSI七层模型中,分为了三层,从上到下分别是应用层、表示层、会话层。这里对这三层不做具体区分。

    应用层是面向用户的一层,主要包括FTP、HTTP、HTTPS、DNS、TELNET等协议。

1、DNS协议

1.1 DNS和域名

    DNS(Domain Name System),域名系统。域指的是自治系统网络,名指的是IP对应的名字。域名系统可以将自治系统不容易记忆的IP,转化为容易记忆的域名,然后在通信的时候,再将域名解析为IP进行通信。

    域名由点、字母、数字组成,点分割不同的域。例如对于www.taobao.com,com是顶级域,taobao是二级域,www是三级域。当然,还可以继续去分隔四级域、五级域等。顶级域是国际通用的。

1.2 顶级域:

  1. 国家专用的顶级域,例如cn(中国)、us(美国)、uk(英国)、ca(加拿大);
  2. 通用的顶级域,例如com(商业机构)、net(网络服务器机构)、gov(政府机构)、org(组织)等。

    注意,edu是cn下的二级域。

1.3 DNS服务器

    DNS服务器,也叫域名服务器。只要有外网服务器,就可以搭建一个DNS服务器。

    DNS服务器分为:

  1. 根域名服务器:最高等级的服务器,每个国家自行维护,分布在不同的国家,它可以知道所有的顶级域名服务器的地址;
  2. 顶级域名服务器:主要由不同国家和地区自行维护,用于解析顶级域名;
  3. 本地域名服务器:主要由各个公司、机构自行维护,用于解析二级、三级等域名。

    如果一个本地域名服务器要查询baidu.com对应的IP,主要流程

  1. 首先要解析顶级域名com,如果它不知道去哪里找相应的顶级域名服务器,就会去查询根域名服务器,以获取到相应的顶级域名服务器的地址;
  2. 本地域名服务器去顶级域名服务器中查询,二级域名baidu应该去查询那个本地域名服务器,顶级域名服务器会告诉本地域名服务器,需要去查询的本地域名服务器的地址是多少;
  3. 本地域名服务器再去查询相应的本地域名服务器,查询baidu.com对应的IP是什么。

2、DHCP协议

    DHCP(Dynamic Host Configuration Protocol),动态主机设置协议,是一个局域网协议,使用UDP协议进行通信。

    DHCP提供了即插即用联网的功能,让在不同环境的计算机,可以不需要手动配置IP信息,即可使用网络。

    在电脑IPV4协议的配置中,通过配置自动获取IP地址,可以启用DHCP协议,DHCP会给自动用户分配一个临时IP。这个IP是有“租期”的,如果“租期”到了,计算机仍然在使用这个IP,则可以“续租”。

    DHCP为计算机自动获取IP的过程:

  1. DHCP的监听端口默认是67,主机会使用UDP协议广播DHCP发现报文,通过这个发现报文发现DHCP服务器的位置;
  2. DHCP服务器收到后,会回复DHCP提供报文,通知对方自己可以提供DHCP服务;
  3. 主机收到DHCP服务器的DHCP提供报文后,会向DHCP服务器发出DHCP请求报文,用于请求IP地址;
  4. DHCP服务器响应请求,并提供IP地址。

3、HTTP协议

    HTTP(Hyper Text Transfer Protocol),超文本传输协议。超文本指的是,超级文本,即带有超链接的文本,可以有图片、动图、音频、视频等。

    HTTP协议的地址:http(s)://<主机>:<端口>/<路径>。HTTP默认端口是80,HTTPS默认端口是443.

    HTTP协议详情参考:HTTP协议

3.1 web服务器对连接的处理过程

  1. 接受客户端连接;
  2. 接受请求报文;
  3. 处理请求;
  4. 访问web资源;
  5. 构造应答;
  6. 发送应答。

3.2 HTTP请求方法

3.3 指定资源的方式

  1. 在地址中指定:在路径后面拼接参数;
  2. 在请求体中指定。

    HTTP的结构:

3.4 状态码

3.5 Web缓存

    二八原则:缓存访问的最多的热门数据。

    存储器层次结构:

  1. 缓存速度最快,空间最小。包括Redis、Memcached、内存等,都可以作为缓存的载体;
  2. 主存速度比缓存慢,但是空间更大一些;
  3. 辅存速度比主存慢,但是空间比主存大得多。

    web代理:代理可以用来屏蔽后端Server的结构,并起到保护服务端安全的概念。

    正向代理:代表客户端访问服务器

    反向代理:代表服务器和客户端通信

3.6 内容分发网络CDN

    CDN(Content Delivery Network),内容分发网络,用来对多媒体内容加速。

    一般,网站公司会把比较大的内容在距离较远的其他地点进行备份,以此来减少时间损耗。

3.7 爬虫

    爬虫用来在互联网中采集相应的信息。

    不合理的爬虫,会带来一定的负面作用:

  1. 增加网络拥塞;
  2. 损害服务器资源。

4、HTTPS协议

    HTTP是明文传输,会有信息安全的问题。

    HTTPS的S,表示的是Secure,安全的意思。

    HTTP协议的地址:http(s)://<主机>:<端口>/<路径>。HTTP默认端口是80,HTTPS默认端口是443。

4.1 加密模型

对称加密:

   在加密模型中,如果数据加密和解密使用的秘钥是一致的,就被称为对称加密。

非对称加密:

    在加密模型中,如果数据加密和解密使用的秘钥是不一致的,就被称为非对称加密。加密和解密是拥有一定数学关系的一组秘钥。其中的一个是私钥,不对外公开,另一个是公钥,对外提供的。

    如果使用公钥进行加密后,则只有服务端使用不对外公开的私钥,才能对数据进行解密,其他人是解不开的。

4.2 数字证书

    数字证书是可信任组织颁发给特定对象的认证。可信任组织指的是,客户端和服务端都认为是安全的组织。

    数字证书的内容:需要注意的是,数字证书中包含对象的公开秘钥。

4.3 安全套接层SSL

    SSL(Secure Sockets Layer),安全套接层,位于运输层和应用层之间,提供数据安全和数据完整性的服务,并对传输层数据进行加密后传输。

    使用SSL的话,应用层交给运输层的数据,会先经过SSL加密后,再让运输层去运输。

4.4 HTTPS建立过程

4.5 SSL安全参数握手

    SSL安全参数握手:

    前三步中,前两步是明文的,从第三步开始,使用加密的信息进行传输。然后,还有第四步,对称秘钥的获取:

    双方分别生成秘钥,没有秘钥的传输,就避免了秘钥的泄露。

5、要点总结

1、应用层相对于其他层,是面向用户的一层,应用层协议主要解决了什么问题?

    应用层是为了解决某一领域应用问题,比如视频领域、音频领域等。应用层定义了应用间通信的规则,包括应用进程间通信的报文类型(请求报文、应答报文等)、报文的语法和格式、应用进程发送数据的时机和规则等。

2、请列举5个以上的应用层协议。

    DNS,动态主机设置协议DHCP,HTTP,HTTPS,TELNET,简单邮件传送协议SMTP

3、什么是域名?为什么需要域名?

    域名是由点、字母、数字组成一个名称,一个域名代表一个IP地址。

4、把域名解析成IP地址的服务叫做什么服务?它有什么特点。

    DNS服务,DNS服务器分为三级:根域名服务器、顶级域名服务器、本地域名服务器,用来查询下一级域名服务器的地址和解析不同不同级别的域名。

5、DHCP协议是应用层中重要的一个协议,DHCP协议主要干了什么工作?

    动态主机设置协议DHCP提供了即插即用联网的功能,主要用来实现局域网中设备IP地址的自动化配置。

6、HTTP协议是广泛使用的一个协议,也是最重要的应用层协议之一,HTTP协议解决了什么问题?

    HTTP协议主要解决了从万维网服务器到本地浏览器之间的超文本的传输问题。

7、HTTP地址有什么特点,一个完整的HTTP地址由哪几个部分组成?

    HTTP地址由五部分组成:<协议>://<主机>:<端口>/<路径>?<参数>。

8、HTTP协议中常用的HTTP请求方法有什么?他们分别表示什么意思。

    POST,GET,DELETE,UPDATE。POST用来提交数据,GET用来获取URL标注的特定资源,DELETE用来删除特定的资源,UPDATE用来更新数据。

9、HTTP服务的状态码由3位十进制数组成,主要可以分成几类呢?

    五类:1xx表示通知信息,服务器已经收到,需要进一步的处理;2xx表示消息接收成功;3xx表示重定向,需要客户端进一步请求;4xx消息表示客户端请求出错,需要检查请求链接;5xx表示服务器出错,例如服务器故障等。

10、一个浏览器在请求服务器时,拿到了404状态码的回应,请问是什么意思?

    404 Not Found,请求的资源在服务器上未被发现。

11、一个浏览器在请求服务器时,拿到了502状态码的回应,请问是什么意思?

    502 Bad Gateway,网关或代理服务器在执行请求时,收到下游服务器无效的响应。

12、请简述HTTP请求报文的主要结构。

    请求报文分为三部分:

  • 请求行:包括请求方法、URL和版本号;
  • 首部行:每行表示一对键值对,由参数的名称和参数值组成;
  • 实体:可能不使用。

13、请简述HTTP应答报文的主要结构。

    应答报文分为三部分:

  • 状态行:包括版本、状态码、短语,短语是状态码的描述,例如404对应的短语是Not Found;
  • 首部行:每行表示一对键值对,由参数的名称和参数值组成;
  • 实体:可能不使用

14、什么是缓存,什么是Web缓存?

    缓存是将一些请求和对应的响应预先存储起来,在用户访问的时候可以快速给用户返回相应的结果。web缓存是用于web请求的缓存。

15、Web代理在生成环境中应用非常广泛,一般使用Nginx来完成代理,请问什么是Web代理,Web代理有什么作用?

    web代理是一组服务器,用来代替真正的服务器接收用户请求。可以起到保护真正的服务器,以及让复杂的服务器集群结构对用户透明。

16、什么是CDN,什么是爬虫?搜索引擎的本质是什么?

    CDN是内容分发网络,通过在不同的地方部署资源服务器,来加快相应地区的资源请求的塑速率。

    爬虫是一种在互联网中采集特定信息的程序。

    搜索引擎本质上是将通过爬虫采集到的信息缓存起来,并按用户需要返回相应信息给用户。

17、HTTPS是安全的HTTP协议,HTTPS应用了密码学的知识,其中就包括对称加密和非对称加密,请问什么是对称加密,什么是非对称加密?

    对称加密指的是,加密和解密的秘钥是一致的;非对称加密指的是,加密和解密的秘钥是不一致的。

18、SSL为现代Web应用的安全作出了重要的贡献,请简述SSL握手的主要过程。

    SSL握手分成四步:

  1. 协商加密算法:客户端发送SSL版本号和自己支持的一些加密算法;服务器从中选出自己支持的加密算法,并通知客户端。
  2. 服务器鉴别:服务器发送包含选定加密算法公钥的数字证书给客户端;客户端使用该证书认证机构公开发布的公钥验证数字证书。
  3. 会话秘钥计算:客户端产生一个随机数,用服务器的公钥进行加密后发送给服务器;服务器解密获取秘钥。
  4. 安全数据传输:双方用会话秘钥加密和解密它们之间传送的数据,并验证其完整性。

19、数字证书是什么?

    数字证书是可信任组织颁发给特定对象的认证。可信任组织指的是,客户端和服务端都认为是安全的组织。


http://chatgpt.dhexx.cn/article/UNO5soh3.shtml

相关文章

基于TCP或UDP的应用层协议有哪些?——Linux网络编程

参考博文01&#xff1a;https://blog.csdn.net/Wu000999/article/details/89293717 博文02 https://blog.csdn.net/u014082714/article/details/44994719 这个面试的时候面试官经常会问我&#xff0c;然后就总结了一下。 TCP/IP四层模型&#xff08;数网传应&#xff09;&#…

应用层——协议

前言&#xff1a;本章将介绍关于应用层的协议&#xff0c;如下图所示 一、应用协议的概要 利用网络的应用程序有很多&#xff0c;包括Web浏览器、电子邮件、远程登陆、文件传输、网络管理等&#xff0c;能够让这些应用进行通信处理的正是应用协议。 网络应用由不同的用户和软…

常见应用层协议

常见应用层协议 1、超文本传输协议 用于传输浏览器使用的普通文本、超文本、音频和视频等数据。 详细情况请看&#xff1a;超文本传输协议HTTP/HTTPS 2、邮件协议 在互联网中&#xff0c;电子邮件的传送是依靠这些协议完成的。 详细情况请看&#xff1a;邮件协议SMTP/POP3…

《白帽子讲web安全》读书笔记以及读后感

因为本书作于2010年前&#xff0c;书中所使用的部分技术版本已经过于老旧&#xff0c;很多书中提到的攻击方法和绕过思路都已经严重落后&#xff0c;但之所以本书会成为安全界的经典必读书目&#xff0c;就是因为本书所讨论的安全思想尤为精华&#xff0c;对于企业来说的安全建…

《白帽子讲Web安全 -- 纪念版 吴翰清著》读后随笔

《白帽子讲Web安全 – 纪念版 吴翰清著》 该书大多数内容举例大多数是2010年左右的 相隔11年左右, 但是内容并没有被淘汰, 感觉很适合入门, 因为内容详细且比较基础 当然, 这只是对我而言 该书一共 四篇 18章 第一篇世界观安全 - 第一章 我的安全世界观 第一章第一节介绍了…

《白帽子讲web安全》第3章 跨站脚本攻击(XSS)

一、XSS简介 跨站脚本攻击(Cross Site Script):本来缩写是CSS&#xff0c;为了和层叠样式表示(Cascading Style Sheet,CSS)有所区别&#xff0c;所以在安全领域叫做“XSS”。通常指黑客通过“HTML注入”篡改了网页&#xff0c;插入了恶意的脚本&#xff0c;从而在用户浏览网页…

在学习web安全的小白看过来,这本《白帽子讲web安全》强烈推荐,必读!(附PDF)

Web是互联网的核心&#xff0c;是未来云计算和移动互联网的最佳载体&#xff0c;因此Web安全也是互联网公司安全业务中最重要的组成部分。 前排提醒&#xff1a;文末有pdf领取 下面来看看几种常见的web漏洞&#xff1a; 1.XSS跨站脚本攻击 XSS跨站脚本攻击&#xff0c;通常…

白帽子讲Web安全(纪念版)笔记

白帽子讲Web安全&#xff08;纪念版&#xff09; 只是笔记&#xff0c;详情请查阅吴翰清老师的《白帽子讲Web安全》 前言 安全工程师的核心竞争力不在于他能拥有多少个0day&#xff0c;掌握多少中安全技术&#xff0c;而是在于他对安全理解的深度&#xff0c;以及由此引申的看…

《白帽子讲Web安全》学习笔记

一、为何要了解Web安全 最近加入新公司后&#xff0c;公司的官网突然被Google标记为了不安全的诈骗网站&#xff0c;一时间我们信息技术部门成为了众矢之的&#xff0c;虽然老官网并不是我们开发的&#xff08;因为开发老官网的前辈们全都跑路了&#xff09;。我们花了很多时间…

笔记《白帽子讲Web安全》吴翰清

第一篇&#xff1a;世界观安全 第一章&#xff1a;我的安全世界观 一个网站的数据库&#xff0c;在没有任何保护的情况下&#xff0c;数据库服务端口是允许任何人随意连接的&#xff1b;在有了防火墙的保护后&#xff0c;通过ACL可以控制只允许信任来源的访问。这些措施在很大…

《白帽子讲web安全》我的安全世界观

文章目录 我的安全世界观前言安全工程师的核心竞争力白帽子的使命现状里程碑安全的本质安全三要素如何防范安全问题&#xff1f; 安全评估步骤资产等级划分互联网核心问题威胁分析&#xff08;确定攻击面&#xff09;风险分析设计安全方案 白帽子兵法一、Secure By Default 原则…

学习web安全,强烈推荐这本《白帽子讲web安全》!

Web是互联网的核心&#xff0c;是未来云计算和移动互联网的最佳载体&#xff0c;因此Web安全也是互联网公司安全业务中最重要的组成部分。 下面来看看几种常见的web漏洞&#xff1a; 1.XSS跨站脚本攻击 XSS跨站脚本攻击&#xff0c;通常指黑客通过”HTML注入”篡改了网页&am…

白帽子讲Web安全——世界观安全

一、web安全简史 1、不想拿“root”的黑客不是好黑客 2、在黑客的世界里&#xff0c;有的黑客&#xff0c;精通计算机技术&#xff0c;能自己挖掘漏洞&#xff0c;并编写exp&#xff1b;而有的黑客只懂得编译别人的代码&#xff0c;自己没有动手能力&#xff0c;这种黑客被称…

白帽子讲Web安全

第一篇&#xff1a;世界观安全 第一章&#xff1a;我的安全世界观 一个网站的数据库&#xff0c;在没有任何保护的情况下&#xff0c;数据库服务端口是允许任何人随意连接的&#xff1b;在有了防火墙的保护后&#xff0c;通过ACL可以控制只允许信任来源的访问。这些措施在很大…

白帽子讲web安全(精写含思维导图)

写在前面 重要的事多说几遍 本文对学习基础、面试、了解安全都有辅助的作用 觉得本文对您有帮助的朋友们&#xff0c;请您动动小手点赞、收藏加关注哦~ 觉得本文对您有帮助的朋友们&#xff0c;请您动动小手点赞、收藏加关注哦~ 觉得本文对您有帮助的朋友们&#xff0c;请您动…

无人驾驶综述:国外国内发展历程

一、国外 从上世纪20年代开始&#xff0c;欧美等国家就开始了无人驾驶技术的探索。从无线电遥控汽车&#xff0c;到运用计算机视觉技术辅助感知、规划和控制&#xff0c;再到军方、大学、汽车企业广泛合作研发多辆自动驾驶汽车原型&#xff0c;无人驾驶的发展经历了很多重要的时…

无人驾驶综述:等级划分

无人驾驶不可能一蹴而就&#xff0c;从实现不同程度的无人驾驶开始也能较快促进产业的发展。无人驾驶的智能程度就对应不同的无人驾驶等级。《SAE J3016推荐实践&#xff1a;道路机动车辆驾驶自动化系统相关术语的分类和定义》&#xff08;下文简称为《SAE驾驶自动化分级》&…

无人驾驶算法总结

本人主要做自动驾驶功能软件算法开发&#xff0c;最近上海疫情比较严重&#xff0c;已经被被封了好几天了&#xff0c;突然想总结总结无人驾驶这块。我们今天先来说说算法类岗位&#xff0c;结合高级辅助驾驶三大系统&#xff0c;分为环境感知类算法、决策规划类算法、控制算法…

无人驾驶决策控制

近年来&#xff0c;随着人工智能和物联网技术的快速发展&#xff0c;无人驾驶汽车受到学术界、产业界极大关注&#xff0c;无人驾驶概念持续火热。从概念定义来看&#xff0c;智能驾驶汽车是一种自动化载体&#xff0c;能够部分或者全面代替驾驶员进行驾驶行为&#xff0c;无人…

无人驾驶技术综述

Self-Driving Car System 有四个组成部分&#xff1a; 1.Perception : other objects around the car. 2.Localization : GPS local landmarks IMU. 3.Decision : path, speed and other behaviour planing. 4.Control : Drive by wire steering wheel, throttle(油门), …