OSI七层模型和TCP/IP五层模型详细介绍
这里写目录标题
- 一.OSI含义
- 二.OSI七层模型
- 1.应用层
- 2.表示层
- 3.会话层
- 4.传输层
- 5.网络层
- 6.数据链路层
- 7.物理层
- TCP/IP五层协议
- 1.应用层
- 2.运输层
- 运行在TCP上的协议
- 运行在UDP上的协议
- 3.网络层
- IP协议配套使用的协议
- 4.数据链路层
- 四.网络协议分层的好处
一.OSI含义
OSI即是开放式通信互联参考模型,是国际标准化组织提出的一个网络标准框架
二.OSI七层模型
1.应用层
为用户提供各种请求服务,以及提供各种应用程序和网服务的接口
常见协议有http,https,FTP,SMTP
2.表示层
数据编码,格式转换,数据加密和压缩,提供各种编码和转换功能,确保另一个系统的应用层可以识别。
3.会话层
- 创建,管理和维持会话,接受来自传输层的数据,负责建立,管理,终止表示层通信会话,支持数据交换
4.传输层
数据通信,建立主机端到端的链接,为会话层和网络层提供端到端的可靠和透明的数据传输,确保数据传输到网络层
5.网络层
- IP选址以及路由选择,通过路由选择算法,为报文和通信子网选择最适当路径。控制链路与传输层之间的信息转发,建立,和终止网络连接。
- 数据链路层的数据在这一层被转换为数据包,然后通过路径选择、分段组合、顺序、进/出路由等控制,将信息从一个网络设备传送到另一个网络设备。
- 网络层负责把一个数据从一个网络传递到另外一个网络,最大的功能就是进行路由决策,比如通过 IP,子网等概念,使数据更好着在不同的局域网中传递
- 传输层的功能就是建立端口到端口的通信,刚才说的网络层的功能则是建立主机到主机的通信,比如通过网络层我们可以把信息从 A 主机传递到 B 主机,但是 B 主机有多个程序,我们具体要发给哪个程序,则是靠传输层的协议来识别,常见协议有 UDP 和 TCP。
6.数据链路层
- 提供介质访问和链路管理。接受来自物理层的位流形式的数据,封装成帧,传输到网络层;将网络层的数据帧,拆装为位流发送到物理层。
- 负责建立和管理节点间的链路,通过各种控制协议,将有差错的物理信道变为无差错的、能可靠传输数据帧的数据链路。
- 链路层涉及到的协议比较多,比如 Mac 地址啊,ARP 等,这一层主要就是负责数据的通信,使各节点之间可以通信,比如通过 MAC 地址唯一识别不同的节点,通过以太网协议定义数据包等
7.物理层
- 管理通信设备和网络媒体之间的互联互通。传输介质为数据链路层提供物理连接,实现比特流的透明传输。实现相邻计算机节点之间比特流的透明传送,屏蔽具体传输介质和物理设备的差异。
- 负责把两台计算机连起来,然后在计算机之间通过高低电频来传送0,1这样的电信号,比如通过一些电缆线传输比特流
TCP/IP五层协议
1.应用层
涉及到的协议
- 域名系统DNS:将域名和 IP 地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的 IP 数串。
- 邮件传输协议:SMTP
- HTTP协议:超文本传输协议,所有的万维网文件都必须遵守这个标准。设计 HTTP 最初的目的是为了提供一种发布和接收 HTML 页面的方法。
2.运输层
作用:
- 提供端到端的服务
- 流量控制:防止过载,即过多的数据注入到网络中
- 拥塞控制:抑制数据传输的速率
运行在TCP上的协议
- HTTP(Hypertext Transfer Protocol,超文本传输协议)Web服务器传输超文本到本地浏览器的传送协议。端口:80
- HTTPS(HTTP over SSL,安全超文本传输协议),HTTP协议的安全版本。端口:443
- FTP(File Transfer Protocol,文件传输协议),用于文件传输。端口:21
- SMTP(Simple Mail Transfer Protocol,简单邮件传输协议),用来发送电子邮件。端口:25
- SSH(Secure Shell,用于替代安全性差的TELNET),用于加密安全登陆用
运行在UDP上的协议
- DNS(Domain Name Service,域名服务),用于完成地址查找,邮件转发等工作。
- SNMP(Simple Network Management Protocol,简单网络管理协议),用于网络信息的收集和网络管理。
- NTP(Network Time Protocol,网络时间协议),用于网络同步。
- DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),动态配置IP地址。
3.网络层
通过IP寻址来建立两个节点之间的连接,之后把运输层产生的报文段或用户数据报封装成分组和包进行传送,在发送分组时不需要先建立连接,每一个分组独立发送,与其前后的分组无关。在这个过程中网络层不提供端到端的可靠传输服务,尽最大努力进行交付(由网络的主机中的运输层负责可靠交付)。
IP协议配套使用的协议
地址解析协议 ARP (Address Resolution Protocol)
网际控制报文协议 ICMP (Internet Control Message Protocol)
网际组管理协议 IGMP (Internet Group Management Protocol)
4.数据链路层
两台设备之间的数据传输,可以看成是在一条管道上进行的,传送的数据单位是帧(每一帧包括数据和必要的控制信息(如同步信息,地址信息,差错控制等)),链路层保证被传输数据的正确性
- 封装成帧 :就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧,首部和尾部的一个重要作用就是进行帧定界。
- 透明传输:在数据传输过程中,如果数据中的某个字节的二进制代码恰好和 SOH 或 EOT 一样,数据链路层就会错误地“找到帧的边界”从而导致这些数据都能够按照原样没有差错地通过这个数据链路层。解决透明传输问题:字符填充 (插入转义字符)
- 差错检测:在传输过程中可能会产生比特差错:1 可能会变成 0, 而 0 也可能变成 1。在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率 BER (Bit Error Rate),误码率与信噪比有很大的关系,为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施,在数据链路层传送的帧中,广泛使用了循环冗余检验 CRC 的检错技术。
四.网络协议分层的好处
- 简化问题的难度和复杂度:通过各层独立,可以将问题分割在各个层去处理
- 灵活,易于维护,通过上下接口不变,可以更好的维护,更新。
- 促进标准化工作