美文网首页
计算机网络(五)——应用层

计算机网络(五)——应用层

作者: 花卷呀花卷 | 来源:发表于2020-04-08 20:16 被阅读0次
image.png

应用层面向用户,由用户输出信息,应用层根据数据来源使用不同协议传递给下层(传输层)。

(一)网络应用模型

客户端与服务器端之间如何连接?它们之间的连接方式只有一种吗?其实它们之间的连接方式有两种——C/S模型和P2P模型,但是更为常见的是前者。

1. C/S模型

C:client,发出请求的一方;
S:sever,接收请求的一方;
工作流程是:服务器方处于接收请求的状态,客户端发出服务请求,并且等到接收结果,服务器收到请求后,分析请求,进行必要的处理,得到结果并发送给客户端。

它们之间形成C/S模型,如图:


image.png

2. P2P模型

在C/S模型中,如果客户端向服务器发出过多请求,会导致网络拥塞。如果每个计算机既是客户机又是服务器,那么在两个对等的计算机之间就可以传输数据,这就是P2P模型。

image.png

两个模型之间的比较:


image.png

(二)应用层协议

应用层中为用户提供很多应用服务,不同应用服务之间往往使用不同协议对数据进行传输。常见的应用层协议有:DNS、 FTP、STMP、POP3和HTTP。

1. 域名系统(DNS)

域名系统是一个关于主机名和IP地址的映射表。人们不善于记忆IP地址,如果用户通过IP地址向一台主机请求数据,那么每次访问前都得进行查IP地址工作,相反,如果IP地址以人们善于记住的形式表现,那么省去查IP地址工作。而这个查IP地址的工作则交给DNS来实现。

DNS使用C/S模型,运行在UDP之上,包括3个部分:层次域名空间、域名服务器和解析器。

  • 层次域名空间:域名采用层次树状结构命名,域可以划分为子域,子域也可再划分,这些方便DNS查找。


    image.png
  • 域名服务器:由于域名以树状结构划分,因此域名服务器以联机分布式的数据库系统设计,每一层域名存储在由特定域名服务器上服务器。


    image.png
  • 解析器:解析器将域名映射成为IP地址或者把IP地址映射成域名。有两种解析过程:递归查询和递归与迭代相结合查询。


    image.png

2. 文件传输协议(FTP)

文件传输协议适合在异构网中的任意计算机之间传送文件,因此使用比较广泛。每次进行交互访问时,允许客户指明文件的类型与格式,允许文件具有存取权利。
FTP采用C/S模型,使用TCP进行传输,可以同时为多个客户进程提供服务。为了保证同时处理多个用户的请求,它在工作时使用两个并行的TCP连接——控制连接和数据连接。

  • 控制连接:监听21号端口,等待客户连接,每个控制信息都是以ASCII格式传输,当控制连接打开后,在整个会话期间会一直保持打开状态。
  • 数据连接:当收到客户端的文件传输请求后,便创建数据连接以便数据接收,当传送完毕后断开该连接。


    image.png

3. 电子邮件(STMP和POP3)

因特网中常用电子邮件来进行信息传递。它的组成包括:用户代理、邮件服务器和协议。

  • 用户代理:用户与电子邮件系统的接口,为用户提供编写邮件功能的应用程序,如Outlook;
  • 邮件服务器:为用户提供邮件收发服务,并提供邮件传送情况;
  • 协议:分别采用两个协议对邮件进行收发,即SMTP和POP3协议。
image.png image.png

1. SMTP

SMTP用于用户代理向邮件服务器发送邮件或在邮件服务器之间发送邮件,采用的是push的通信方式,也就是邮件客户端主动将邮件push到SMTP服务器端。
为了保证邮件安全性,它采用TCP连接,端口号为25。它有三个通信阶段:

  • 连接建立
  • 邮件传递
  • 连接释放

2. POP3

POP3用于用户代理从邮件服务器读取邮件。采用的是pull的通信方式,用户代理从邮件服务器中pull邮箱中的邮件。它也使用C/S的工作方式,使用TCP传递,端口号为110.

4. 万维网(WWW)

通过万维网可以随意登录各类网站。万维网由三个部分组成:统一资源定位符(URL)、超文本传输协议(HTTP)和超文本标记语言(HTML)。URL其实就是我们熟悉的网址,虽然我们看不见HTTP,但是它是一条通向服务器获取资源的路径,HTML是所见的网站页面。
万维网以C/S方式工作,基于TCP传输数据。

  • URL:用于标识万维网上的各类文档,具有唯一性,它的一般形式是:<协议>://<主机>:<端口>/<路径>;
  • HTTP:使用TCP连接进行可靠的传输,是浏览器与服务器之间交互所必须严格遵守的协议;
  • HTML:对页面上的各种信息进行描述。

1. HTTP

HTTP协议执行的过程,是从对域名解析开始,通过域名解析获取服务器的IP地址,浏览器就通过TCP向服务器发送连接建立请求,如下图:


image.png

服务器端安装有web服务程序,它监听TCP的80端口。当有浏览器通过HTTP发送TCP请求时,便与服务器器建立起连接。连接建立后如果接收HTTP请求,要求获取某个HTML页面,查找后在通过HTTP返回给浏览器。

HTTP是无状态协议,也就是如果某个HTTP请求一旦该连接断开,再次访问时服务器不会记得该HTTP请求,因此,通过cookie来跟踪用户信息。

HTTP连接服务器有两种方式:非持久性连接与持久性连接。
在非持久性连接下,每次HTTP请求完毕后便断开TCP连接,再次访问时,要再次建立TCP连接后才能请求资源,这种方式速度慢,用户体验不好。

image.png

持久性连接改进了连接方式,一旦TCP连接建立,服务器响应后不立即断开连接。


image.png image.png

相关文章

  • OSI五层网络结构

    一、简介 计算机网络中的五层协议分别包括应用层、传输层、网络层、数据链路层、物理层,其中应用层又包括应用层、会话层...

  • 计算机网络相关知识

    一.计算机网络体系结构 OSI体系结构TCP/IP体系结构五层体系结构应用层应用层(HTTP)应用层表示层会话层传...

  • 应用层

    title: 计算机网络 应用层 tag: 计算机网络 应用层协议分类 标准型网络应用 专用网络协议 C/S模式与...

  • 【计算机网络】1.1 概论

    计算机网络体系结构 结合OSI和TCP/IP的特点,采用更简洁的五层协议的结构体系。 1.应用层 应用层(appl...

  • 计算机网络目录

    计算机网络目录 运输层网络层应用层

  • 计算机网络 - 目录

    计算机网络01 - 应用层 计算机网络02 - 传输层 计算机网络03 - 网络层 计算机网络04 - 数据链路层...

  • 网络基础梳理

    计算机网络五层协议 应用层应用层协议定义的是应用进程(进程:主机中正在运行的程序)间的通信和交互的规则,即数据解读...

  • 初窥网络协议1

    计算机网络分布有五层 1.应用层(DNS,HTTP,HTTPs) 2.传输层(UDP,TCP) 3.网络层(IP层...

  • Socket 一些事

    1. 网络基础 1.1 网络分层 计算机网络分为五层:物理层、数据链路层、网络层、运输层、应用层。其中: 网络层:...

  • Socket

    网络基础 计算机网络共分为五层:应用层运输层 >>通过端口把数据传到目的主机的目的进程,来实现进程和进程...

网友评论

      本文标题:计算机网络(五)——应用层

      本文链接:https://www.haomeiwen.com/subject/sidtmhtx.html