应用层提供用户直接面对的服务。
可靠传输通常使用 TCP。简单快捷的通常使用 UDP。
C/S 范式: 服务器: 一直在线,固定 IP,集群…
客户端:
- 客户端之间不能直接通信
- IP 可变
P2P 架构:
- 没有固定的 Server
- 端之间直接通信
- IP 可变
7.1 DNS 域名系统
提供易于记忆的名称,避免记忆 IP 的困难。DNS 服务器提供 Hostname 到 IP 地址的转换。
特点:
- 分级域名空间
- 分布式数据库
顶级域名: 美国的顶级域名表示性质,如 edu, com, gov
其它国家分配了各自的顶级域,如 cn, jp
域名各级通过 .
连接,结尾的 .
可以省略。
Zones(区)
负责维护一部分的域名空间。例如 bupt 管理 *.bupt.edu.cn
资源记录(Resource Records)
域名 - 资源记录是一对多的。资源记录包括五部分信息:
- 所有者。即域名
- 类型:
- SOA
- A
- MX
- CNAME
- TXT
- Class:
- IN - 互联网
- TTL 缓存时间
- 值
DNS 客户端(解析器)
本地域名解析服务器(Local name server)运行在客户端上。
DNS 服务器
每个服务器管理一部分域名,对其下的域名而言它是 权威名字服务器(Authoritative Name Server)
如果服务器不知道记录值,则会请求上级服务器(递归查询)。
迭代解析:上级不帮忙查询,只返回可能知道的其它服务器的地址,自己根据这个地址去查询。
DNS 缓存:/
7.2 电子邮件
异步通信,不需要两方同时在线。
构成
如果两方使用同一个服务器,则发送到邮件服务器即可。
如果两方不在同一个服务器,则需要一个转发,涉及到两个服务器。
发件和转发使用 SMTP 协议,收件使用 POP3/IAMP 协议
基本功能:
- 编写
- 传送
- 显示
- 处理
邮件格式:
名称 @域名
消息格式
RFC 5322
- 信封,通过邮件服务器构成
- 内容,包括头 + 空行 + 正文
邮件头:
Header | 意义 |
---|---|
TO | 接收方 |
CC | 抄送方 |
BCC | 秘密抄送方 |
FROM | 写信的人 |
SENDER | 发送的人 |
MIME 多用互联网邮件扩展
支持多部份、多媒体
增加 Content-Type 头,Encoding(编码规则,如 ASCII,UTF8)
SMTP
简单邮件传输协议,用于发送和转发。
端口:25
如果发送失败则返回差错报告。
基于 ASCII
POP3/IMAP
POP3 用于客户端收信,由于对多端支持不好,被 IMAP 取代。
IMAP(互联网消息访问协议)
- 支持文件夹
- 可以在服务器保留
- 多端、部分下载