传输层协议、应用层协议
传输层协议、应用层协议
一、传输层协议
1、传输层概述
(1)传输层的作用
IP层提供点到点的连接
传输层提供端到端的连接
(2)传输层的协议
TCP(Transmission Control Protocol)传输控制协议
可靠的、面向连接的协议;传输效率低
UDP(User Datagram Protocol)用户数据报协议
不可靠的、无连接的服务
传输效率高
2、TCP协议 (可靠地)
0 -- 1023 为常用端口号,已经被占用了,自定义端口号选1024以上,最大值是65535。
(1)TCP 的封装格式
(2)TCP的连接与断开
TCP的连接 ---- 三次握手
TCP的断开 ---- 四次握手
(3)TCP的流控与差错控制
TCP的流控机制 -- 滑动窗口
TCP的流控机制 -- 拥塞控制
TCP差错控制的三种方式
-- 校验和
-- 确认
-- 超时
(4)TCP的计时器
① TCP的重传计时器 -- 为了控制丢失的数据段
② TCP的坚持计时器 -- 为了防止零窗口死锁
③ TCP的保活计时器 -- 防止两个TCP连接之间长时间的空闲
④ TCP的时间等待计时器 -- 连接终止期间使用,当发送了最后一个ACK后,不立即关闭连接,
而是等待一段时间,保证能接收到重复的FIN数据段。
(5)TCP的应用
端口号 |
协议 |
作用 |
21 |
FTP |
文件传输协议,用于文件上传和下载 |
23 |
Telnet |
用于远程登录,通过连接目标计算机的这一端口, 得到验证后,可以远程控制管理目标计算机 |
25 |
SMTP |
简单邮件传输协议,用于发送邮件 |
53 |
DNS |
域名服务,当用户输入网站名称后,由DNS负责将他解析成IP地址 |
80 |
HTTP |
超文本传输协议,通过HTTP实现网络上超文本的传输 |
3、UDP协议
(1)UDP的封装格式
(2)UDP的应用
端口号 |
协议 |
说明 |
53 |
DNS |
域名服务 |
69 |
TFTP |
简单文件传输协议 |
123 |
NTP |
网络时间协议 |
111 |
RPC |
远程过程调用 |
(3)UDP的流控与差错控制
UDP没有流控机制
UDP只有校验和来提供差错控制
--- 需要上层协议来来提供差错控制:例如TFTP协议
二、应用层概述
1、应用层的作用
与应用程序协同工作,利用基础网络交换应用程序专用的数据
2、常见的应用层协议
--- DNS
--- SMTP和POP3
--- HTTP和HTTPS
--- Telnet
--- FTP和TFTP
三、应用层协议精讲
1、DNS(Domain Name System)域名系统
作用:用来完成域名与IP地址之间的映射
端口号:TCP或UDP的53号端口
分布式、层次性
域名空间结构
-- 根域
-- *域
-- 二级域名
FQDN = 主机名 + .DNS后缀
通用域
2、SMTP与POP3
--- SMTP(Simple Mail Transfer Protocol)简单邮件传输协议
作用:用于发送和接收邮件
端口号是25号
--- POP3(Post Office Protocol V3)邮局协议版本3
作用:用于客户端接收邮件
端口号是110
3、HTTP与HTTPS
--- HTTP(Hyper Text Transfer Protocol)超文本传输协议
作用:用于传输Internet浏览器使用的普通版本、超文本、音频和视频等数据
端口号为TCP的80
--- HTTPS安全超文本传输协议
作用:基于HTTP开发,提供加密,可以确保消息的私有性和完整性
端口号为443
4、FTP和TFTP
--- FTP(File Transfer Protocol)文件传输协议
使用最为广泛的文件传输应用
端口号为TCP的20端口和21端口
--- TFTP(Trivial File Transfer Protocol)简单文件传输协议
用来传输一些琐碎的小文件
端口号为UDP的69号端口
5、FTP的工作原理
-- 控制连接:TCP 21,用于发送FTP命令信息
-- 数据连接:TCP 20,用于上传、下载数据
-- 数据连接的建立类型:主动模式和被动模式
6、TFTP的工作原理
-- 数据传输是在连接建立和终止之间发生的
-- 文件划分成若干个数据块
每一块为512个字节
最后一块必须在0 -- 511之间
-- 文件传输的可靠性保证
由TFTP自行提供流控和差错控制
7、Telnet(Terminal Network)终端网络应用
通过文本方式远程管理计算机或路由器/交换机
端口号为TCP的23
8、Telnet配置命令