文章目录
1 简述OSI七层模型
- 开放式系统互联通信参考模型(英语:Open System Interconnection Reference Model,缩写为 OSI),简称为OSI模型。
- 物理层、数据链路层、网络层、传输层、会话层、表示层、应用层
1.1 物理层(网卡、集线器)比特流传输
- 主要解决两台设备之间的通信,通过转换成二进制比特流的传输来实现,二进制数据表现为电流电压上的强弱,到达目的地再转换成二进制机器码。
- 功能主要是为数据端设备提供传送数据的通路以及传输数据
1.2 数据链路层(交换机)控制网络层与物理层间通信
- 实现计算机网络中相邻节点之间的可靠传输,把原始的、有差错的物理传输线路加上数据链路协议以后,构成逻辑上可靠的数据链路。
- 接收来自物理层的位流形式的数据,并封装成帧,传送到上一层;
- 同样,也将上层的数据帧,拆装为位流形式的数据转发到物理层。
1.3 网络层(路由器)IP寻址和路由选择
- 将网络地址翻译成对应的物理地址;
- 把从下层接收的数据进行ip地址的封装和解封装,这层的数据叫做数据报;
- 并决定如何将数据从发送方路由到接收方,通过路由选择算法分组通过通信子网选择最佳路径。
1.4 传输层 建立、维护、管理端到端连接
- 定义传输协议和端口号
- 提供进程间的逻辑通信,传输层向高层用户屏蔽了下面网络层的核心细节,使应用程序看起来像是在两个传输层实体之间有一条端到端的逻辑通信信道。
1.5 会话层 建立、维护、管理会话连接
- 建立会话:身份验证,权限鉴定等;
- 保持会话:对该会话进行维护,在会话维持期间两者可以随时使用这条会话传输局;
- 断开会话:当应用程序或应用层规定的超时时间到期后,OSI会话层才会释放这条会话。
1.6 表示层 数据格式化、加密、解密
- 对数据格式进行编译,对收到或发出的数据根据应用层的特征进行处理,如处理为文字、图片、音频、视频、文档等,还可以对压缩文件进行解压缩、对加密文件进行解密等。
1.7 应用层 为应用程序提供网络服务
- 应用层为OSI的最高层,是直接为应用进程提供服务的。
- 提供应用层协议,如HTTP协议,FTP协议等等,方便应用程序之间进行通信。
2 传输层协议(TCP、UDP)
2.1 TCP协议(Transmission Control Protocol,传输控制协议)
效率低,可靠。建立传输通道并传输数据,主要用来传输可靠性要求高的
数据量大的数据。需要经过3次握手才能完成链接。
2.1.1 三次握手
- TCP是面向连接的协议,因此每个TCP连接都有3个阶段:连接建立、数据传送和连接释放。连接建立经历三个步骤,通常称为“三次握手”。
- 第一步,请求端(客户端)发送一个包含SYN标志的TCP报文,SYN即同步(Synchr