计算机网络之应用层

简介:

应用层作文协议栈的最高层,与用户亲密打交道的的协议层也就是应用层。场景的组件:浏览器,http服务器等。

wKiom1gZ76SRglKdAAA88gs5484992.png

主要内容

  • 1网络应用体系结构

  • 2.进程通信

  • 3 需要传输层提供服务

  • 4 应用层协议


2种网络应用体系结构

客户-服务器体系结构

代表协议为HTTP。特点:(1)客户端之间不可直接通信;(2)服务器有已知的IP,服务器总是打开的。

容易出现性能问题:一台服务器往往跟不上海量的客户请求。

P2P体系结构

对服务器要求相对不高;应用程序间可以直接通信。直接通信的主机叫peers,一般是用户控制的主机。

优势是自扩展性,每个peer为系统增加服务能力,关键也非常省钱,不需要庞大的服务器带宽。

wKioL1gZ8MvS_CCjAAGdOlsEEi8396.png



2.进程通信

        计算机网络,不同主机的进程交互报文,进而相互通信。一般来说,两个通信的进程,一个为客户端,一个为服务端。这里说的进程,其实一般就是浏览器进程,IE,firefox等。

        进程如何发送报文到网络呢?套接字(socket)技术。应用程序开发者通过套接字,可以控制传输层。控制内容包括:(1)选择传输层协议(TCP OR UDP);(2)设置传输层参数。如最大缓存,最大报文长度。

       进程寻址:唯一区分接收进程,需要一个地址,包括2种信息:1.主机的地址;2.接收进程的标识符。其中主机由其IP标识。进程标识符使用端口号标识。

3 需要传输层提供服务

传输层为应用层提供服务,一般满足

可靠性(丢包)

吞吐量(比如道路上的车速)

时间保证

安全

不同的应用,选择不同的网络要求

wKioL1gZ9x-Cdzv_AADJZb3NO6s071.png

流行的用用层协议及支持的传输层协议

wKiom1gZ-AuDOSCMAACpfjQ-kHY260.png

4.应用层协议

应用层协议定义了运行在不同主机上的应用程序如何相互传递报文。协议内容

(1)交换的报文类型,请求报文 还是响应报文

(2)报文类型语法

(3)字段的语义,字段中包含的信息的含义。

(4)进程何时,如何发送报文,对报文的响应规则。也就是处理机制。

4.1 HTTP协议

HTTP定义了Web客户端向Web服务器请求Web页面的方式,以及服务器向客户传输响应的方式。

wKiom1gh2WGxpXTXAABmgGkL9Eo774.png

HTTP使用TCP作为支撑协议。

1)客户端发起1个与服务器的TCP连接

2)一旦连接建立,该浏览器与服务器进程通过套接字访问TCP.

3 )  HTTP协议不用担心数据丢失,这是TCP以及协议栈底层协议的工作。

4)HTTP是一个无状态的协议。

4.1.1非持续连接VS 持续连接

非持续连接:每个请求/响应,经一个单独TCP连接发送。

持续连接:每个请求/响应,经限购通的TCP连接发送。

wKioL1gh2vHSbJbtAABzRVfVzew093.png

一个TCP连接,涉及一次"3次握手”过程.

RTT(round-Trip Time):一个分组从客户端到服务器端,然后再返回客户端所花费的时间。

一个RTT,包括传播时延,排队时延(路由器上),处理时延。

4.1.2报文格式

wKiom1gh3KbjBBqqAABF-KsUx_U480.png

wKioL1gh3KeRmowpAABFmmcZWDM744.png

4.1.3 cookie记录状态

wKioL1gh3YywYRVwAAFvmDLGq8A473.png

包含4个组件。

  1. http请求报文中一个cookie首部;

  2. 响应报文中,一个cookie首部行。

  3. 客户端,浏览器管理着cookie文件

  4. 后端web服务器管理

cookie可以标识一个用户,可以跟踪在网点的活动。但也带来了隐私问题。

4.2 FTP协议

wKioL1gh3uygYvvRAABmUOARiWM831.png



wKioL1gh3znCzPXRAABBErna33o714.png

FTP使用2个并行的TCP连接传输文件,一个是控制连接,一个是数据连接。

控制连接用户在两主机直接传输控制信息,比如用户标识,口令,改变远程目录的命令,put,get文件命令。(带外传送)。控制链接贯穿真个用户会话期间

数据连接用于实际发送一个文件。每次文件传输都要建立一个新的数据连接。

FTP服务器必须保留用户的状态,方便对用户会话的状态进行跟踪,因而限制了会话总数。

4.3 电子邮件

wKiom1gh4Z_iNJwfAADsWekqI1s779.png


由3个部分。

  1. 用户代理(foxmail,outlook)

  2. 邮件服务器(smtp.163.com...)

  3. smtp(简单邮件传输协议)

邮件服务器时电子邮件体系结构的核心,每个接收方,都注册一个邮箱(mailbox).

4.3.1

SMTP:RFC5321给出了定义.

wKiom1gh47DQMHxlAACROCO-Ung575.png

smtp端口:25

格式:ascii 7比特格式

smtp:推协议

4.3.2 邮件访问协议

wKiom1gh5M3BBpzaAABl8Ws1PBI866.png

POP3(第三版邮局协议) RFC1939

IMAP(因特网邮件访问协议Internet Mail Access Protocol)

HTTP


POP3:工作端口是110.三个阶段:

特许:用户代理发送用户名和口令以鉴别用户

事务处理:用户代理取回报文,还可以做删除标记。“下载并删除”,“下载并保留”方式

更新:quit命令,结束pop3会话。




本文转自 randy_shandong 51CTO博客,原文链接:http://blog.51cto.com/dba10g/1870844,如需转载请自行联系原作者
相关文章
|
1月前
|
缓存 网络协议 前端开发
深入了解常见的应用层网络协议
深入了解常见的应用层网络协议
深入了解常见的应用层网络协议
|
4月前
|
网络协议
【计算机网络-应用层】HTTP协议
【计算机网络-应用层】HTTP协议
|
4月前
|
域名解析 缓存 网络协议
【计算机网络-应用层】DNS协议
【计算机网络-应用层】DNS协议
|
2月前
|
安全 网络协议 算法
计算机网络——应用层与网络安全(六)
计算机网络——应用层与网络安全(六)
78 1
计算机网络——应用层与网络安全(六)
|
2月前
|
缓存 移动开发 JSON
【网络安全 | 网络协议应用层】结合Wireshark讲解HTTP协议
【网络安全 | 网络协议应用层】结合Wireshark讲解HTTP协议
108 0
|
1月前
|
数据采集 存储 传感器
物联网的感知层、网络层与应用层分享
物联网的感知层、网络层与应用层分享
55 1
|
3月前
|
网络协议 安全 网络性能优化
【网络工程师】<软考中级>传输层协议TCP/UDP&常用应用层协议
【1月更文挑战第27天】【网络工程师】<软考中级>传输层协议TCP/UDP&常用应用层协议
|
3月前
|
网络协议 网络架构
【计算机网络】应用层
【计算机网络】应用层
46 0
【计算机网络】应用层
|
4月前
|
网络协议 算法 数据库
【网络层】RIP协议详解(应用层)、慢收敛、OSPF协议(适合大网络)
【网络层】RIP协议详解(应用层)、慢收敛、OSPF协议(适合大网络)
56 0
|
4月前
|
监控 网络协议 网络性能优化
【网络层】DHCP协议(应用层)、ICMP、IPv6详解
【网络层】DHCP协议(应用层)、ICMP、IPv6详解
58 0

热门文章

最新文章