OSI模型分为七层,由下到上分别为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。
应用层通俗来讲就是我们在终端的应用进程 ,即任务管理器页面所显示的信息。
传输层顾名思义主要是用于数据的传输,其传输单位为数据段,传输重要信息例如端口号。端口号的主要作用是表示一台计算机中的特定进程所提供的服务。
网络层主要交换数据包/分组,典型为IP地址。
数据链路层主要传输数据帧,典型为MAC地址。
物理层都传输单位为比特。(补充:比特是最小的数据单位,8比特等于1个字节,表示为8b=1B。在存储结构中,G、K、B的进制为1024;在数据传输中,G、K、B的进制为1000)
各层主要功能如上图。
传输层中分别提到了“可靠”、“不可靠”、“端到端”,前两者即TCP、UDP协议。其区别大致如下,转载自UDP协议是什么?作用是什么?_udp是什么协议_小媛末末的博客-CSDN博客
TCP(传输控制协议)提供的是面向连接、可靠的字节流服务。当客户端和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。
UDP(用户数据协议)是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。
端到端:假如有4个点,A到B到C到D,前后相连,A与D并不相连。则称A到D为端到端传输。
网络层提到逻辑寻址,路由选择。前者常见为IP、后者常见为后续会学到的RIP、OSPF等协议。
数据链路层主要有两个功能 :帧编码和误差纠正控制。差错控制CRC就是实现其功能的一种方法,还有常考的海明码:数据链路层协议又被分为两个子层 :逻辑链路控制(LLC)协议和媒体访问控制(MAC)协议。
OSI模型与TCP/IP模型对照。