计算机网络笔记分享(第六章 应用层)

文章目录

介绍

学习计算机网络的过程中,我整理了一些比较关键的、考试可能会考的点,有些具体的点可能没涉及到,希望对大家有所帮助!

六、应用层

6.1 域名系统DNS

地址解析,把域名变成IP地址

解析的两种查询方式

递归查询

迭代查询

6.2 文件传送协议FTP

基于TCP,因为文件传输不能出错

简单传输协议TFTP

阉割版,使用UDP数据报,只支持文件传输而不支持交互

6.3 远程终端协议TELNET

又称终端仿真协议,实现不复杂,现在很少使用

采用TCP连接,中间使用NVT格式,用于将用户的按键等输入进行转换,目标端能再转换成对应系统所需的格式

6.4 万维网WWW

大规模的、联机式的信息储藏所

就是站点链接到另一个站点,采用分布式

应用:比如点击带下划线的蓝色字,就会跳转到另一个网页

要是没有万维网,那么用户只能使用复杂命令来进行跳转,不能直接点链接

万维网是一个分布式的超媒体系统,是超文本系统的扩充,多了声音图像等

统一资源定位符URL

标记万维网上的不同文档

超文本传输协议HTTP

使用TCP连接,但本身HTTP无连接,即交换HTTP报文之前不需要先建立HTTP连接

  • 将HTTP请求报文作为TCP的第三阶段传过去,然后获得HTTP响应报文

无状态,浏览器不会记得用户曾经访问几次以及访问内容,每次访问时的响应都相同

代理服务器

中间加了层缓存,若缓存中有数据则直接响应给客户端,而不用再去互联网访问该资源

HTTP报文结构

1、开始行

  • 请求:请求行(方法(GET、POST...)、URL、版本、CRLF)
  • 响应:状态行(版本、状态码、短语、CRLF)

2、首部行

3、实体主体

  • 请求:请求体
  • 响应:响应体

Tips: 状态码包括

  • 200 ok
  • 304 重定向
  • 400 客户端错误
  • 500 服务端错误等
万维网的文档HTML

简单理解就是个网页

和前端的知识密切相关,学过点 html css js 的都清楚是啥东西,网上资料也一堆,我此处不再详细介绍。

万维网的信息检索系统

搜索引擎:万维网中用来搜索的工具(全文检索、分类检索)

博客和微博

博客blog是个人文档日记的共享

微博是微型博客,只有记录琐碎片段,针对一个问题进行回答

社交网站

facebook、youtube、tiktok ...

6.5 电子邮件

简单邮件传输协议SMTP

互联网文本报文格式RFC

SMTP协议使用 TCP 作为其传输层协议

6.6 动态主机配置协议DHCP

提供 即插即用联网 的机制

计算机加入网络后就自动分配给它一个IP地址

现在每个网络至少有一个DHCP中继代理

6.7 简单网络管理协议SNMP

管理程序、进程之类的

6.8 应用进程跨越网络的通信

当应用进程需要使用网络进行通信时就发出系统调用 ,请求操作系统为其创建**"套接字"**,以便把网络通信所需要的系统资源分配给该应用进程。

操作系统为这些资源的总和用一个叫做套接字描述符的号码来表示。

应用进程所进行的网络操作都必须使用这个套接字描述符。

通信完毕后,应用进程通过一个关闭套接字的系统调用通知操作系统回收与该套接字描述符相关的所有资源。

几种常用的系统调用

当应用进程需要使用网络进行通信时,就发出系统调用。

使用 TCP/IP 应用编程接口 API,就可以编写基于互联网的网络应用程序了。

调用 API 时,用户可以使用 TCP 服务,也可以使用 UDP 等其他服务。

TCP 提供面向连接的服务。

使用TCP服务需要经历 3 个阶段:

  • 连接建立阶段
  • 数据传送阶段
  • 连接释放阶段

6.9 P2P应用

涉及文件的上传、下载

P2P软件是采用P2P原理,实现高速下载的软件,如:迅雷

相关推荐
特种加菲猫1 小时前
指尖上的魔法:优雅高效的Linux命令手册
linux·笔记
wuxuanok1 小时前
Web后端开发-分层解耦
java·笔记·后端·学习
wuxuanok2 小时前
Web后端开发-请求响应
java·开发语言·笔记·学习
诗句藏于尽头3 小时前
内网使用rustdesk搭建远程桌面详细版
笔记
蜡笔小电芯3 小时前
【C语言】指针与回调机制学习笔记
c语言·笔记·学习
丰锋ff3 小时前
瑞斯拜考研词汇课笔记
笔记
DKPT5 小时前
Java享元模式实现方式与应用场景分析
java·笔记·学习·设计模式·享元模式
KoiHeng7 小时前
操作系统简要知识
linux·笔记
巴伦是只猫9 小时前
【机器学习笔记Ⅰ】11 多项式回归
笔记·机器学习·回归
DKPT12 小时前
Java桥接模式实现方式与测试方法
java·笔记·学习·设计模式·桥接模式