OSI/RM(开放式系统互联参考模型)
是1979年,ISO---国际标椎化组织制定
OSI的核心内容是分层:属于同一层面的不同功能具有相同的目的和作用,而不同层面的功能之间有明显的差异,每一层都在下次的基础上提供更高级的增值服务。
分成的作用:
1、更容易标准化。
2、降低层次之间的关联性。
3、更容易学习或理解。
应用层
表示层
会话层---维持网络应用和服务器之间的会话连接
传输层---传输层实现的是端到端的传输,利用端口号(传输层地址)区分和标定不同的应用。端口号是16位2进制构成(0 - 65535),因为0号端口号作为保留,所以传输层端口号的取值范围是1 - 65535,1 - 1023为知名端口号。源端口号可以为随机值,目标端口号须成为指定值
网络层
数据链路层---介质访问控制层(MAC),逻辑链路控制层(序列)---保证数据完整性---CRC(循环冗余算法)
物理层
模型 | 功能 |
应用层 | |
表示层 | |
会话层 | 维持网络应用和应用服务器之间的会话连接。 |
传输层 | 实现端到端的传输 |
网络层 | |
数据链路层 | 确保数据的完整性(FCS(帧校验序列)) |
物理层 |
TCP/IP模型
TCP/IP协议簇
TCP/IP四层模型:
TCP/IP四层模型和五层模型:
TCP/IP四层模型 --- TCP/IP标准模型
TCP/IP五层模型 --- TCP/IP对等模型
L1PDU
L2PDU
…..
L7PDU
应用层 --- 报文
传输层 --- 段
网络层 --- 包
数据链路层 --- 帧
物理层 --- 比特流
封装和解封装
应用层
参考模型 | 封装 | 封装协议 |
应用层 | 应用 | 区于不同的应用 |
传输层 | 端口号 | TCP协议,UDP协议 |
网络层 | IP地址 | IP协议 |
数据链路层 | MAC地址 | 以太网协议 |
物理层 | 不需要封装 |
|
以太网:早起局域网的解决方案,现在也应用于广域网中,是一种依靠在MAC地址,工作在1,2层的网络
以太网2型帧:
前导符 DMAC SMAC
type:表示上层所使用的协议类型
应用层常见的协议:
HTTP TCP 80 --- 超文本传输协议
HTTPS = HTTP + SSL(安全传输协议)(TLS协议) --- TCP 443
FTP TCP 20/21 --- 文件传输协议
tftp UDP 69 ---- 简单文件传输协议
telnet TCP 23 ---- 远程登录协议
SSH TCP 22 --- telnet + SSL
DHCP UDP 67/68 --- 动态主机配置协议
DNS UDP/TCP 53 ---- 域名解析协议
传输层---端口号---(TCP协议/UDP协议)
1、TCP是面向连接的的协议,而UDP是无连接的协议。
2、TCP传输是可靠的,UDP的传输“尽力而为”。
3、TCP可以进行流控,而UDP不可以。
4、TCP可以分段,而UDP不可以。
5、TCP耗费资源比较大,传输速率较慢;UDP耗费资源较少,传输速度快。
TCP和UDP的应用场景:TCP适合应用在对传输效率要求较低,但是对可靠性要求较高的场景(即时类通信);UDP更适用于对传输率要求较高,但对可靠性要求较低的场景。
面向连接是指在设备传输数据之前,先使用预备的协议建立点到点的连接,然后再传输数据。
URG是紧急标记位,若URG=1,则紧急指针优先处理该标记位。
ACK是确认标记位,若ACK=1,则表示确认接收。
RST是强制断开连接的标记位,当收到一个RST标记位置1 的数据包,将不经过四次会受到过程,直接断开TCP的连接。
SYN是请求标记位,若SYN=1,则表示请求建立连接。
FIN是结束标记位,若FIN=1,则表示请求结束连接。
TCP头部最短是20个字节。
TCP传输的可靠性 --- 排序,确认,重传,流控 --- 滑动窗口机制
校验和(伪头部校验)是将网络层头部中的12个字节的内容一起校验。32位源IP地址,32位目标IP地址,8位保留,8位协议,16位总长度 ---- 反码相加法
TCP建立连接的过程 --- TCP三次握手:
请求建立连接过程中没有数据的传输
TCP断开连接的过程 --- TCP四次挥手:
断开连接过程中有数据的传输
TCP传输的可靠性 --- 排序,确认,重传,流控 --- 滑动窗口机制
UDP头部校验和:
UDP头部校验和最短是8个字节。
网络层 --- 将IP地址封装在数据中 --- IP协议:
TTL(生存时间)--- 数据包每经过一次路由器的转发,TTL值将会减1,当TTL值为0时,路由器将不会转发该数据,直接将该数据包丢弃。
IP协议头部最短20个字节。
TCP --- 6
UDP --- 17
ICMP --- 1
MTU(最大传输单元 )默认是1500字节。
MSS(最大段长度),最大不能超过1460,该值会再TCP的前两次握手中进行协商,取二者中较小的值来执行。