计算机网络第六章——应用层(下)

文章详细介绍了电子邮件系统中用户代理、SMTP发送邮件、POP3接收邮件、SMTP和POP3协议的工作原理,以及HTTP在Web通信中的角色,强调了TCP/IP连接和无状态/持久连接的概念。
摘要由CSDN通过智能技术生成

等闲变却故人心,却道故人心易变

文章目录


请添加图片描述
主要组成:
用户代理(UA):用户与电子邮件系统的接口
邮件服务器:组成电子邮件系统的核心,发送和接收邮件,向用户回报发送情况
邮件发送协议和读取协议:SMTP:邮件发送协议用于用户代理向邮件服务器发送邮件或在邮件服务器之间发送邮件,POP3: 邮件读取协议用于用户代理从邮件服务器读取邮件
电子邮件的收发过程:
发信人调用用户代理来撰写和编辑要发送的邮件。用户代理用SMTP把邮件传送给发送方邮件服务器,发送方邮件服务器将邮件放入邮件缓存队列中,等待发送
运行在发送方邮件服务器的SMTP客户进程,发现邮件缓存中有待发送的邮件,就向运行在接收方邮件服务器的SMTP服务器进程发起建立TCP连接,TCP连接建立后,SMTP客户进程开始向远程SMTP服务器进程发送邮件。当所有待发送邮件发完后,SMTP就关闭所建立的TCP连接,运行在接收方邮件服务器中的SMTP服务器进程收到邮件后,将邮件放入收信人的用户 邮箱,等待收信人在方便时进行读取收信人打算收信时,调用用户代理,使用POP3( 或IMAP )协议将自己的邮件从接收方 邮件服务器的用户邮箱中取回( 如果邮箱中有来信的话

请添加图片描述
电子邮件的格式:
to是必需的关键字,后面填入一个或多个收件人的电子邮件地址,Subiect是可选关键字,是邮件的主题,反映了邮件的主要内容。From是必填的关键字,但它通常由邮件系统自动填入

请添加图片描述
用户代理就是用户和电子邮件系统之间的一个接口,通常都是运行在电脑中的一个程序,用户代理又可以称为电子邮件客户端软件,可以为用户提供一个比较友好的接口,邮件服务器作为一个服务器就需要长时间的工作,保持24小时不间断的工作,会有一个大容量的邮箱来容纳信件,这个发送是指从这个邮件服务器发送到接收端的邮件服务器,用户代理的发送是发送到邮件服务器,向发件人报告邮件的传送结果就是有没有发送成功,每一个服务器可以充当服务器或者客户,
请添加图片描述
发送文件都是SMTP协议,接收文件使用POP3协议从用户缓冲区读取这个数据,这三段都是可靠连接。

请添加图片描述
你需要对这三个阶段的逻辑顺序以及具体是做什么的掌握清楚即可,
概述:一种提供可靠且有效的电子邮件传输的协议,它控制两个相互通信的SMTP进程交换信息,使用客户/服务器方式,发送邮件的SMTP进程是SMTP客户,而负责接收邮件的SMTP进程是SMTP服务器,TCP连接,端口号为25
通信阶段
连接建立:
发件人的邮件发送到发送方邮件服务器的部件缓存中后,SMTP客户就每隔一定时间对邮件缓存扫描一次发现有邮件,就使用SMTP的熟知端口号(25)与接收方邮件服务器的SMTP服务器建立TCP连接,SMTP不使用中间邮件服务器。TCP连接总是在发送方和接收方这两个邮件服务器之间直接建立
邮件传送:
连接建立后,就可开始传送邮件,邮件的传送从MAIL命令开始,MAIL命令后面有发件人的地址,SMTP服务器已准备好接收邮件,则回答250 0K,接着SMTP客户发送一个或多个RCPT(收件人recipient的增写)命今,RCPT命令的作用:先弄清接收方系统是否已做好接收邮件的准备,然后才发送邮件,避免浪费通信资源
获得OK的回答后,客户端就使用DATA命令,表示要开始传输邮件的内容
连接释放:
邮件发送完毕后,SMTP客户应发送QUIT命令,SMTP服务器返回的信息是221( 服务关闭)表示SMTP同意释放TCP连接
缺点:1.SMTP不能传送可执行文件或者其他二进制对象。2.SMTP仅限于传送7位ASCII码,不能传送其他非英语国家的文字 3.SMTP服务器会拒绝超过一定长度的邮件
请添加图片描述
这里的A和B是指用户和服务器,但是要注意谁是客户谁是服务器,比如第一个阶段发送方就是客户,发送方邮件服务器就是服务器,但是第二个阶段就是发送方服务器作为客户,接收方服务器作为服务器,
RCPT是表示发送给谁,当然也是支持群发的,会有一个相应的返回,

请添加图片描述
可以将MIME理解为是一个协议或者说是在SMTP上进行扩充的一种方式,主要方法就是将其他的文字转化为7位的ASCII码,
服务器会将它们发送的多媒体数据类型告诉这个MIME类型,从而这个浏览器就可以知道那些是MP3文件,那些是JPG文件,
来告诉浏览器使用那种插件来读取文件,所以说可以支持多种类型文件的传输。
请添加图片描述
概述,邮局协议( POP)是一个非常简单但功能有限的邮件读取协议,现在使用的是它的第3个版本POP3,当用户读取邮件时,用户代理向邮件服务器发出请求,拉取用户邮箱中的邮件,使用客户/服务器的工作方式,在传输层使用TCP,端口号为110。工作方式:下载并保留,下载并删除。

请添加图片描述
这个协议依然是接收端服务器到接收方所用到的,
请添加图片描述
用户浏览器与Hotmail或Gmail的邮件服务器之间的邮件发送或接收使用HTTP,
在不同邮件服务器之间传送部件时使用SMTP
只要是与用户代理接触的两个环节都是使用http协议,中间这个发送邮件的协议使用的是SMTP协议,

请添加图片描述
请添加图片描述万维网(WWW):在这个空间中,有用的事物称为资源,并由一个全域“统一资源定位符” ( URL)标识。这些资源通过超文本传输协议(HTTP)传送给使用者,而后者通过单击链接来获取资源
内部部分标准构成:
统一资源定位符(URL):负责标识万维网上的各种文档,并使每个文档在整个万维网的范围内具有唯一的标识符URL
超文本传输协议(HTTP ):一个应用层协议,它使用TCP连接进行可靠的传输,HTTP 是万维网客户程序和服务器程序之间交互所必须严格遵守的协议。
超文本标记语言(HTML):一种文档结构的标记语言,它使用一些约定的标记对页面上 的各种信息( 包括文字、声音、图像、视频等)、格式进行描述
工作流程:Web用户使用浏览器(指定URL)与Web服务器建立连接,并发送浏览请求,Web服务器把URL转换为文件路径,并返回信息给Web浏览器,通信完成,关闭连接

请添加图片描述
把全球所有的网站统一到一起就是万维网,
也就是说HTTP协议是可以规定资源到达使用者中间这样一个过程,这个过程就很像服务器在为客户提供服务,
请添加图片描述
HTTP定义了浏览器(万维网客户进程)怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传送给浏览器,HTTP是面向事务的应用层协议,规定了在浏览器和服务器之间的请求和响应的格式与规则,是万维网上能够可靠地交换文件的重要基础
HTTP的操作过程:每个万维网站点都有一个服务器进程,它不断地监听TCP的端口 80(默认),当监听到连接请求后便与浏览器建立连接,TCP连接建立后,浏览器就向服务器发送请求获取某个Web页面的HTTP请求,服务器收到HTTP请求后,将构建所请求Web页的必需信息,并通过HTTP 响应返回给浏览器,浏览器再将信息进行解释,然后将Web页显示给用户
TCP连接释放。
用户单击鼠标后发生的事件按顺序:浏览器分析链接指向页面的URL,浏览器向DNS请求解析域名的IP地址,域名服务器DNS解析出IP地址,浏览器与该服务器建立TCP连接(默认端口号为80)浏览器发出 HTTP 请求GET /chn/index.html,服务器通过HTTP响应把文件index.htm发送给浏览器,TCP连接释放,浏览器解释文件index.htm,并将Web页显示给用户
HTTP的特点:HTTP是无状态的,同一个客户第二次访问同一个服务器上的页面时,服务器的响应与第一次被访问时的相同,HTTP的无状态特性简化了服务器的设计,使服务器更容易支持大量并发的HTTP请求,使用Cookie加数据库的方式来跟踪用户的活动,HTTP采用TCP作为运输层协议,保证了数据的可靠传输,HTTP既可以使用非持久连接,也可以使用持久连接(HTTP/1.1支持 )
持久连接与非持久连接:非持久连接:每个网页元素对象(如JPEG图形、Flash等)的传输都要单独建立一个 TCP连接,持久连接:是指万维网服务在发送响应后仍然保持这条连接,使同一个户和服务器可以继续在这条连接上传送后续的HTTP请求与响应报文
持久连接,非流水线:客户在收到前一个响应后 才能发出下一个请求,流水线:客户每遇到一个对象引用,就立即发出一个请求
HTTP 是面向问本的,报文类型,请求报文:请求报文:从客户向服务器发送的请求报文,响应报文: 从服务器到客户的回答。
1Xx表示通知信息的,如请求收到了或正在处理
2xx表示成功,如接受或知道了。
3xx表示重定向,如要完成请求还必须采取进一步的行动
4xx表示客户的差错,如请求中有错误的语法或不能完成。
5xx表示服务器的差错,如服务需失效无法完成请求
这个服务器就会运行这些服务器的进程,每一个万维网的网点都会有一个服务器的进程,这个进程会不断监听TCP的80端口,以便发现是否是有客户请求服务,建立好TCP连接之后,浏览器就可以向服务器发送一个浏览的请求,也就是发送一个HTTP请求的报文,来请求相关的文档,服务器就会把请求的资源以文档的形式放到HTTP的响应之中,返回给客户端,最后就可以释放TCP连接,
请添加图片描述
无状态也就是第二次访问和第一次访问时服务器的响应一样的,是没有记忆的无状态的,
cookie就是记录了历史的访问记录

请添加图片描述
首先需要和服务器建立一个连接,就需要使用三次连接,就需要使用三次握手,三次握手的前两次完成之后也就经过了一个RTT的时间,然后就可以发送http请求报文作为三次握手的第三次的数据部分,所以耗费的时间是两倍的往返时间加上文档的传输时间,若是再发送一个请求报文同样的还是需要建立连接,
持久连接就是在已经建立连接的一段时间内再发送的时候就不需要再建立连接了,
发送一个请求受到回复之后才能再发送一个请求,这就是非流水线式的连接,流水线就是可以连续发送多个请求,服务器依次返回,基本上是一个RTT时间之内,
请添加图片描述
这个开始行就是用于区分是请求报文还是响应报文,这个方法就是一些命令也就是告诉所请求的对象进行什么操作,是获取还是删除,还是其他的操作,这个实体主体在请求报文中通常是不用的,而在响应报文中是有一些不使用的,

请添加图片描述
这个Connection表示的是连接的方式,这里是非持续连接,COOKie说明用户的识别码就是12345,有cookie就说明之前访问过这个网站,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值