第六章 应用层
6.1网络应用模型
1,应用层概述
应用层对应用程序的通信提供服务。
应用层协议定义:
应用进程交换的报文类型,请求还是响应?
各种报文类型的语法,如报文中的各个字段及其详细描述。
字段的语义,即包含在字段中的信息的含义。
进程何时、如何发送报文,以及对报文进行响应的规则。
应用层的功能:
文件传输、访问和管理
电子邮件
虚拟终端
查询服务和远程作业登录
应用层的重要协议:
FTP
SMTP、 POP3
HTTP
DNS
2,客户/服务器(C/S)模型
服务器:提供计算服务的设备。
1.永久提供服务
2.永久性访问地址/域名
客户机:请求计算服务的主机。
1.与服务器通信,使用服务器提供的服务
2.间歇性接入网络
3.可能使用动态IP地址
4.不与其他客户机直接通信
应用:
Web,文件传输FTP,远程登录,电子邮件
3,P2P模型(Peer-to-peer)
不存在永远在线的服务器
每个主机既可以提供服务,也可以请求服务
任意端系统/节点之间可以直接通讯
节点间歇性接入网络
节点可能改变IP地址
可扩展性好
网络健壮性强
6.2域名解析系统(DNS)
DNS服务的作用:将域名解析成IP地址。
1,域名:
根: .
顶级域名: .com
1,国家级域名
cn,us,uk
2,通用顶级域名
com,net,org,gov,int,aero,museum,travel
3,基础结构域名/反向域名
arpa,只有这一个,用来将ip地址解析成域名
二级域名: cskaoyan
1,类别域名
ac,com,edu,gov,mil,net,org
2,行政区域名
用于我国各省、自治区、直辖市(bj,js)
3。个人注册的域名
全球唯一
三级域名: www
四级域名
2,域名服务器
1,根域名服务器
2,顶级域名服务器
管理该顶级域名服务器注册的所有二级域名
3,权限域名服务器
负责一个区的域名服务器
4,本地域名服务器
当一个主机发出DNS查询请求时,这个查询请求报文就发给本地域名服务器。
3,域名解析过程
1,递归查询(靠别人)
本地域名服务器——根域名服务器——顶级域名服务器——权限域名服务器
2,迭代查询(靠自己)
本地域名服务器——根域名服务器
本地域名服务器——顶级域名服务器
本地域名服务器——权限域名服务器
6.3文件传输协议(FTP)
文件传送协议FTP(File Transfer Protocol)
提供不同种类主机系统(硬、软件体系等都可以不同)之间的文件传输能力。
1,FTP服务器和用户端
FTP是基于客户/服务器(C/S)的协议。
用户通过一个客户机程序连接至在远程计算机上运行的服务器程序。
依照FTP协议提供服务,进行文件传送的计算机就是FTP服务器。
连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端。
2,FTP工作原理
登陆
ftp地址用户名&密码
匿名登录
FTP使用TCP实现可靠传输
FTP传输模式
文本模式:ASCl模式,以文本序列传输数据;
二进制模式:Binary模式,以二进制序列传输数据。
6.4电子邮件
1,概述
1,信息格式
信封
内容(首部+主体)
2,组成结构
1,用户代理
电子邮件客户端软件
功能:
1.撰写
2.显示
3.处理
4.通信
2,邮件服务器
功能:
1.发送&接收邮件
2.向发件人报告邮件传送结果
3,协议
发:SMTP
收:PO3、IMAP
2,协议
1,SMTP
简单邮件传送协议SMTP
SMTP规定了在两个相互通信的SMTP进程之间应如何交换信息。
负责发送邮件的SMTP进程就是SMTP客户,负责接收邮件的进程就是SMTP服务器。
SMTP规定了14条命令(几个字母)和21种应答信息(三位数字代码+简单文字说明)。
TCP连接、端口号25、C/S
SMTP发送过程
1,建立连接
2,邮件发送
3,连接释放
SMTP的缺点:
1.SMTP不能传送可执行文件或者其他二进制对象。
2.SMTP仅限于传送7位ASCII码,不能传送其他非英语国家的文字。
3.SMTP服务器会拒绝超过一定长度的邮件。
2,MIME
通用因特网邮件扩充MIME
使电子邮件系统可以支持声音、图像、视频、多种国家语言等等。使得传输内容丰富多彩
3,POP3、IMAP
邮局协议POP3
TCP连接、端口号110、C/S
网际报文存取协议IMAP
IMAP协议比POP协议复杂。当用户Pc上的IMAP客户程序打开IMAP服务器的邮箱时,用户可以看到邮箱的首部,若用户需要打开某个邮件,该邮件才上传到用户的计算机上。
IMAP可以让用户在不同的地方使用不同的计算机随时上网阅读处理邮件,还允许只读取邮件中的某一个部分(先看正文,有WiFi的时候再下载附件)。
3,基于万维网的电子邮件
方便
6.5万维网和HTTP协议
1,万维网概述
万维网Www(World Wide Web)是一个大规模的、联机式的信息储藏所/资料空间,是无数个网络站点和网页的集合。
传送给使用者。用户通过点击超链接(http://www.baidu.com)获取资源,这些资源通过超文本传输协议(HTTP)。
万维网以客户/服务器方式工作,用户使用的浏览器就是万维网客户程序,万维网文档所驻留的主机运行服务器程序。
万维网使用超文本标记语言HTML,够在自己的屏幕上显示出来。使得万维网页面设计者可以很方便地从一个界面的链接转到另一个界面,并能
2,超文本传输协议HTTP
HTTP协议定义了浏览器(万维网客户进程)怎样向万维网服务器请求万维网文档,以及服务器怎样把文档传送给浏览器。
用户浏览页面方法:1.输入URL2.点击超链接
具体过程:
1.浏览器分析URL
2.浏览器向DNS请求解析IP地址
3.DNS解析出IP地址
4.浏览器与服务器建立TCP连接
5.浏览器发出取文件命令
6.服务器响应
7.释放TCP连接
8.浏览器显示
1,HTTP协议特点
HTTP协议是无状态的。
但是在实际工作中,一些万维网站点常常希望能够识别用户。
Cookie是存储在用户主机中的文本文件,记录一段时间内某用户(使用识别码识别,如“123456”)的访问记录。
HTTP采用TCP作为运输层协议,但HTTP协议本身是无连接的(通信双方在交换HTTP报文之前不需要先建立HTTP连接)。
2,HTTP的连接方式
1,持久连接(Keep-alive)
-
非流水线
-
流水线
2,非持久连接(Close)
3,HTTP协议的报文结构
HTTP报文是面向文本的,因此在报文中的每一个字段都是一些ASCI码串。
HTTP报文分为请求报文和响应报文。
组成:
开始行
首部行
实体主体
状态码
1xx表示通知信息的,如请求收到了或正在处理。
2xx表示成功,如接受或知道了。202 Accepted
301 Moved3xx表示重定向,如要完成请求还必须采取进一步的行动。Permanently
4xx表示客户的差错,如请求中有错误的语法或不能完成。404 Not Found
5xx表示服务器的差错,如服务器失效无法完成请求。