应用层

网络应用模型

客户/服务器模型

客户/服务器(Client/Server,CS)模型中,有一个总是打开的主机称为服务器,它服务于许多来自其他称为客户机的主机请求。其工作流程如下︰

服务器处于接收请求的状态

客户机发出服务请求,并等待接收结果

服务器收到请求后,分析请求,进行必要的处理,得到结果并发送给客户

客户/服务器模型最主要的特征是︰客户是服务请求方,服务器是服务提供

P2P模型

CS模型中服务器性能的好坏决定了整个系统的性能,当大量用户请求服务时,服务器就必然成为系统的瓶颈。P2P模型的思想是整个网络中的传输内容不再被保存在中心服务器上,每个结点都同时具有下载、上传的功能,其权利和义务都是大体对等的

域名系统【DNS】

层次域名空间

因特网采用层次树状结构的命名方法。采用这种命名方法,任何一个连接到因特网的主机或路由器,都有一个唯一的层次结构名称,即域名。域是名字空间中一个可被管理的划分

关于域名中的标号有以下几点需要注意:

标号中的英文不区分大小写

标号中除连字符((-)外不能使用其他的标点符号

每个标号不超过63个字符,多标号组成的完整域名最长不超过255个字符

级别最低的域名写在最左边,级别最高的顶级域名写在最右边

域名服务器

因特网的域名系统被设计成一个联机分布式的数据库系统,并采用客户/服务器模型。域名到P地址的解析是由运行在域名服务器上的程序完成的

域名解析过程

域名解析是指把域名映射成为IP地址或把IP地址映射成域名的过程。前者称为正向解析,后者称为反向解析。当客户端需要域名解析时,通过本机的DNS客户端构造一个DNS请求报文,以UDP数据报方式发往本地域名服务器

域名解析有两种方式:递归查询和递归与迭代相结合的查询

文件传输协议【FTP】

工作原理

文件传输协议是因特网上使用得最广泛的文件传输协议。FTP提供交互式的访问,允许客户指明文件的类型与格式,并允许文件具有存取权限

FTP采用客户/服务器的工作方式

FTP采用客户/服务器的工作方式,它使用TCP可靠的传输服务。一个FTP服务器进程可同时为多个客户进程提供服务。FTP的服务器进程由两大部分组成︰一个主进程,负责接收新的请求;另外有若干从属进程,负责处理单个请求

其工作步骤如下

开熟知端口21(控制端口),使客户进程能够连接

等待客户进程发连接请求
启动从属进程来处理客户进程发来的请求。主进程与从属进程并发执行,从属进程对客户进程的请求处理完毕后即终止

回到等待状态,继续接收其他客户进程的请求

使用两个并行的TCP连接

控制连接与数据连接

FTP在工作时使用两个并行的TCP连接:一个是控制连接(端口号21),一个是数据连接(端口号20)

控制连接:控制连接用来传输控制信息(如连接请求、传送请求等),在整个会话期间一直保持打开状态(21端口)

数据连接:有两种传输模式,主动模式传送数据是“服务器”连接到“客户端”的端口;被动模式传送数据是“客户端”连接到“服务器”的端口(20端口)

电子邮件

电子邮件系统的组成结构

一个电子邮件系统应具有三个最主要的组成构件,即用户代理、邮件服务器和电子邮件使用的协议

邮件发送协议和读取协议︰邮件发送协议用于用户代理向邮件服务器发送邮件或在邮件服务器之间发送邮件,如SMTP;邮件读取协议用于用户代理从邮件服务器读取邮件,如POP3

SMTP用的是“推”(Push)的通信方式,POP3用的是“拉”(Pull)的通信方式

MIME(多用途网际邮件扩充)

由于SMTP只能传送一定长度的ASCII码,许多其他非英语国家的文字(如中文、俄文,甚至带重音符号的法文或德文)就无法传送,且无法传送可执行文件及其他二进制对象,因此提出了用途网络邮件扩充

SMTP

SMTP用的是TCP连接,端口号为25。SMTP通信有以下三个阶段连接建立:发件人的邮件发送到发送方邮件服务器的邮件缓存中后,SMTP客户就每隔一定时间对邮件缓存扫描一次。如发现有邮件,建立TCP连接
邮件传送:连接建立后,就可开始传送邮件。邮件的传送从MAIL命令开始,MAIL命令后面有发件人的地址
连接释放:邮件发送完毕后,SMTP客户应发送QUIT命令。SMTP服务器返回的信息是221(服务关闭),表示SMTP同意释放TCP连接

POP3

POP也使用客户/服务器的工作方式,在传输层使用TCP,端口号为110。

POP有两种工作方式:

"下载并保留"和"下载并删除"

万维网【WWW】

概念

万维网(World Wide Web,wwW)是一个分布式、联机式的信息存储空间,在这个空间中:一样有用的事物称为一样“资源”,并由一个全域“统一资源定位符”(URL)标识。这些资源通过超文本传输协议(HTTP)传送给使用者,而后者通过单击链接来获取资源

万维网的内核部分是由三个标准构成的:

统一资源定位符(URL)。负责标识万维网上的各种文档,并使每个文档在整个万维网的范围内具有唯一的标识符URL

超文本传输协议(HTTP)。一个应用层协议,它使用TCP连接进行可靠的传输,HTTP是万维网客户程序和服务器程序之间交互所必须严格遵守的协议

超文本标记语言(HTML)。一种文档结构的标记语言,它使用一些约定的标记对页面上的各种信息(包括文字、声音、图像、视频等)、格式进行描述

工作流程:

Web 用户使用浏览器(指定URL)与Web 服务器建立连接,并发送浏览请求; web服务器把URL转换为文件路径,并返回信息给Web浏览器;通信完成,关闭连接

组成结构

HTTP

超文本传输协议(HTTP)HTTP的操作过程

用户单击鼠标后所发生的事件按顺序如下

  • 浏览器分析链接指向页面的URL
  • 浏览器向DNS请求解析IP地址
  • 域名系统DNS解析出该网站服务器的IP地址
  • 浏览器与该服务器建立TCP连接
  • 浏览器发出HTTP请求
  • 服务器通过HTTP响应把文件发送给浏览器
  • 释放TCP连接

HTTP的特点

HTTP使用TCP作为运输层协议,保证了数据的可靠传输。HTTP不必考虑数据在传输过程中被丢弃后又怎样被重传

HTTP是无状态的。也就是说,同一个客户第二次访问同一个服务器上的页面时,服务器的响应与第一次被访问时的相同

HTTP既可以使用非持久连接,也可以使用持久连接
对于非持久连接,每个网页元素对象(如JPEG图形、'Flash等)的传输都需要单独建立一个TCP连接

持久连接,是指万维网服务器在发送响应后仍然保持这条连接,使同一个客户(浏览器)和该服务器可以继续在这条连接上传送后续的HTTP请求和响应报文

常用应用层协议小结


https://www.bilibili.com/video/BV1Ha411r745?p=6&spm_id_from=pageDriver

计算机网络速成【应用层】相关推荐

  1. 【计算机网络】应用层 : 总结 ( 网络应用模型 C/S P2P | 域名解析 DNS | 文件传输协议 FTP | 电子邮件 | 万维网 与 HTTP ) ★★★

    文章目录 一.网络应用模型 ★ 二.域名解析过程 ★ 三.FTP 文件传输协议 四.电子邮件★ 五.万维网 和 HTTP 协议★ 一.网络应用模型 ★ 网络应用模型 : ① 客户 / 服务器 模型 ( ...

  2. 自顶向下计算机网络学习 应用层

    自顶向下计算机网络学习 应用层 一.应用层协议原理 1. 网络应用的体系结构 1.1 客户-服务器(C/S)体系结构 1.2 对等体(P2P)体系结构 1.3 混合体:客户 - 服务器和对等体系结构 ...

  3. 计算机网络原理 - 应用层

    计算机网络原理 - 应用层 应用层 应用层是主机上进程之间的交互,不同的进程内可以有多个线程,多线程处理数据 2.1 应用层协议原理 研发网络应用的核心是写出能够运行在不同端系统和通过网络彼此通信的程 ...

  4. 计算机网络自顶向下 应用层 习题

    计算机网络自顶向下 应用层 习题 假定你想尽快地处理从远程客户到服务器的事务,你将使用 UDP 还是 TCP?为什么? 答:我会使用UDP, 因为TCP是面向连接的, 在传输之前需要进行三次握手. 而 ...

  5. 计算机网络笔记----应用层

    应用层 应用层协议原理 网络应用程序的体系结构 客户-服务器体系结构 P2P体系结构 进程通信 进程与计算机网络之间的接口 进程寻址 可供应用程序使用的运输服务 可靠数据传输 吞吐量 定时 安全性 因 ...

  6. 计算机网络自顶向下-应用层

    一.简介: 网络应用是计算机网络存在的理由,没有了应用也不存在任何的网络协议.我们学习网络应用的原理和实现方面知识,从定义应用层概念开始,其中包括网络服务.客户]服务器.进程和运输层接口. 其中包括我 ...

  7. 计算机网络之应用层图解,秒解应用层HTTP,期末考试不担心!!

    应用层 已同步微信公众号:乐享Coding,期待你的关注! 应用层是计算机网络体系结构的最顶层,是设计和建立计算机网络的最终目的,也是计算机网络中发展最快的部分. 首先对应用层要有个大概了解,思维导图 ...

  8. 计算机网络之应用层(DNS域名系统)

    应用层作为和用户直接交互的一层,它具体的内容就是规定应用进程在通信时所需要遵循的协议. 应用层的很多协议都是基于客户-服务器方式(C-S方式),即便是 P2P 的方式,本质上也只是一种特殊的客户-服务 ...

  9. 计算机网络体系结构 - 应用层

    一.应用层协议 (1)域名系统(Domain Name System,DNS):用于实现网络设备名字到IP地址映射的网络服务. (2)文件传输协议(File Transfer Protocol,FTP ...

  10. 计算机网络之应用层(文件传送协议、万维网)

    文件传送协议 FTP 文件传送协议 FTP 的概述 文件传送协议 FTP(file transfer protocol)是互联网上使用得最广泛的文件传送协议(应用层协议),基于可靠的 TCP 协议.F ...

最新文章

  1. POJ-2531 Network Saboteur 枚举||随机化
  2. Android入门(二) | 项目目录及主要文件作用分析
  3. 协议簇:TCP 解析: Sequence Number
  4. 【Nodejs篇五】Node js 使用 superagent 与 cheerio 完成简单爬虫
  5. es6 Class 的实例对象
  6. python scipy optimize_scipy.optimize.fminbound:设置参数的界限
  7. 什么是命名空间?php命名空间的基本应用分享
  8. 关于ECLIPSE中JSP代码无提示
  9. Spectra Logic磁带库成SGI方案中标准化产品
  10. “重命名”用“改名”更好
  11. DHCPv6相关知识简单总结
  12. 《人月神话》——2人月神话
  13. 4-Collection、List、Iterator和泛型
  14. kubectl源码分析之rollout undo
  15. 【直播笔记】在临床研究中,如何利用SAS做更好的统计报表输出
  16. 名字解析/DNS服务
  17. 关于安科瑞电气安全产品在医药工业洁净厂房的电气工程设计与应用
  18. C陷阱篇之char的默认符号
  19. 无忧·企业文档自助配置完成单点登录配置,对接企业原有组织架构
  20. python实现离散型变量分组统计

热门文章

  1. 浏览器打开后自动打开某个页面
  2. 微信 小程序 python 渲染_微信小程序python用户认证的实现
  3. WordPress如何变更图片存储目录uploads并取消按年月存放?
  4. 1月23日阴阳师服务器维护,阴阳师1月23日体验服更新 双神降临概率UP
  5. DHT11温湿度传感器学习
  6. Mysql高级-day02
  7. 铁威马NAS设备映射到外网进行访问
  8. php7中require_once,php require_once的使用方法总结
  9. 关于VLAN-tag
  10. java高级实训输出张三李四_假设某数据库表中有一个姓名字段,查找姓名为张三和李四的条件是...