常用端口

21(控制),20(数据) TCP FTP
22 TCP SSH
23 TCP TELNET
25 TCP SMTP
53 UDP DNS
67 UDP DHCP
69 UDP TFTP
80 TCP HTTP
110 TCP POP3
161 UDP SNMP

DNS

UDP、Port 53
域名空间
www.abc.xyz.com
.com是顶级域名
.xyz是二级域名
.abc是三级域名
www是四级域名
域名解析服务器分类

  • 根域名服务器
    • 管理顶级域名
  • 顶级域名服务器
    • 管理二级域名
  • 权限域名服务器
    • 负责一个区域,当一个权限域名服务器无法给出答案,会告诉客户下一个权限域名服务器
  • 本地域名服务器

……
域名解析
计算机先向本地域名服务器寻求域名解析
此时采用递归查询
当本地域名服务器无法给出IP时,代为向其他层级域名服务器进行迭代查询

FTP

TCP、20、21
FTP文件传输协议分为两个部分
控制部分和数据传输部分
A向B进行FTP时
先与B的控制部分建立TCP连接,使用端口21(控制信息使用7bit ASCII格式传送)
进行传输时,与数据传输部分建立TCP连接,使用端口20
数据传输模式PORT:读取数据时,客户端随机开放一个端口,并用控制部分发送命令给服务器,服务器收到PORT命令和端口号之后,通过20端口与客户端进行连接
PASV:读取数据时,客户端发送PASV命令到服务器,服务器随机开放一个端口,告诉客户端,让客户端主动连接

Email

邮件格式
首部
From:abc@163.com
To: efg@qq.com
Subject: Hello!
主体
阿巴……阿巴……

邮件内容使用7bit ASCII格式
MIME进一步编码,使得能传送非ASCII码
MIME内容:5个新邮件首部字段,邮件内容格式,传送编码
邮件协议
SMTP:TCP、25
POP3:TCP、110
IMAP:提供文件夹,部分存取
通过浏览器发送/接收邮件,使用HTTP协议
邮件服务器传送使用SMTP
邮件过程
image.png
SMTP协议用于发送邮件,POP3协议用于接收邮件
SMTP三个阶段

  1. 连接建立

发送HELO命令

  1. 邮件传送

从MAIL命令开始,接发件人地址
RCPT命令附带收件人地址(可多个)
每发送一个RCPT,有相应信息返回,250OK,550无用户
DATA命令传送数据标识开始结束

  1. 连接释放

SMTP客户在数据发送完后发送QUIT命令
服务器返回221

WWW

URL:统一资源标识符,互联网上任何一个文件都有对应的唯一的标识符
<协议> :// <主机(IP/域名…)>:端口/路径
HTTP:超文本传输协议,TCP,80
C/S过程

  1. C发起连接建立
  2. C发送HTTP请求报文
  3. S返回响应
  4. 释放TCP连接

HTML:超文本标记语言