- 报文
- 作用:在网络应用程序及它们的应用层协议存留的地方
-
DNS(Domain Name System)
-
提供的服务
- 识别主机的两种方式:主机名或者IP地址
- DNS的主要任务:提供主机名到IP地址转换的目录服务(将主机名转化为IP地址)
- DNS协议是应用层协议,运行在UDP上,使用53号端口
-
DNS服务器
-
种类
- 根DNS服务器(只是具有13个IP地址)
- 顶级域(DNS)服务器(TTL)
-
权威DNS服务器
- DNS记录类型可以是A(address)记录,NS记录(name server),MX(mail),CNAME等
- 本地DNS服务器
- 种类
-
查询
- 递归查询:从客户端到本地DNS服务器
- 迭代查询:DNS服务器之间的交互查询
-
DNS缓存
- 描述:DNS返回了正确的IP之后,系统就会将这个结果临时储存起来。并且它会为缓存设定一个失效时间 (例如N小时),在这N小时之内,当你再次访问这个网站时,系统就会直接从你电脑本地的DNS缓存中把结果交还给你,而不必再去询问DNS服务器,变相“加速”了网址的解析。
-
协议和协议原理
-
体系结构
- C/S 结构
- P2P结构
- 进程套接字(API)向网络发送报文和从网络 接收报文
-
根据应用程序的服务要求选择运输层协议:
- 可靠数据传输
-
吞吐量
- 可用吞吐量:发送进程能够向接受进程交付比特的速率
- 定时
- 安全性
-
HTTP(HyperText Transfer Protocol)
- URL地址的组成:存放对象的服务器主机名和对象的路径名
- HTTP使用TC作为它的支撑运输协议(而不是在UDP上运行)
- 是一个 无状态协议(stateless protocol)
-
非持续连接和持续连接的HTTP
-
非持续连接
- 每个请求/响应对经一个TCP连接发送
-
持续连接
- 所有请求/响应对经相同的TCP连接发送
-
HTTP报文的通用格式
- 请求报文
- 响应报文
-
FTP(File Transfer Protocol)
-
HTTP和FTP共同点
- 都使用TCP连接
-
FTP不同于HTTP的特点
-
使用两个并行TCP连接(分别是控制连接和数据连接)传输文件
- 控制连接:用于在两个主机间传输控制信息(例如用户标识、口令等)
(带外(out of band)传输控制信息)
- 而HTTP带内(in-band)传输控制信息
- 数据连接:用于实际发送一个文件
-
SMTP(Simple Mail Transfer Protocol)
- 使用TCP连接
- 它是因特网电子邮件应用的核心,一般不适用中间邮件服务器发送邮件
-
HTTP和SMTP对比
- 当进行文件传输时,持续的HTTP和SMTP都有使用持续连接
-
不同
- HTTP是一个pull Protocol,而SMTP是一个push Protocol
- SMTP要求报文使用7比特ASCII码,而HTTP没有这种限制
- HTTP把每个对象封装到自己的HTTP响应报文中,而SMTP把所有报文对象放在一个报文中
-
邮件访问协议:
用于将邮件服务器上的报文传送给用户本地PC
-
POP3(post office protocol)
-
建立TCP连接后,POP3按照三个阶段开始工作:
authorization、事务处理、更新
- authorization:用户代理以明文形式发送username和password以鉴别用户
- 事务处理:用户代理取回报文,还可以进行其他操作
- 更新:结束POP3会话,同时邮件服务器会删除被标记为删除的报文
-
IMAP(internet mail access protocol)
- 作用:为用户提供创建远程文件夹并为报文指派文件夹的方法,以实现从任何一台机器都能对所有报文进行访问
-
相比于POP3不同的特点
- 维护了IMAP会话的用户状态信息
- 具有允许用户代理获取报文组件的命令
-
HTTP
- 基于web的电子邮件在浏览器和邮件服务器之间传送时使用HTTP