第二章 OSI参考模型与TCPIP模型
第二章 OSI参考模型与TCPIP模型
专栏总目录
第一章 计算机网络概述
第二章 OSI参考模型与TCPIP模型
第三章 局域网基本原理
第四章 广域网基本原理
第五章 IP基本原理
第六章 TCP与UDP
第七章 路由器&交换机&操作系统介绍
第八章 命令行操作基础
第九章 网络设备文件管理
第十章 网络设备调试
第十一章 以太网交换机工作原理
第十二章 配置Vlan
第十三章 STP协议
第十四章 交换机端口安全技术
第十五章 链路聚合
第十六章 IP子网划分
第十七章 DNS
第十八章 文件传输协议
第十九章 DHCP
第二十章 IPv6
第二十一章 IP路由原理
第二十二章 VLNA间路由
第二十三章 静态路由
第二十四章 路由协议概述
第二十五章 RIP
第二十六章 OSPF
第二十七章 ACL
第二十八章 NAT
第二十九章 HDLC&PPP
第三十章 3G+WLAN
第三十一章 H3CNE综合实验
一、写在开始:
在以前计算机网络的各大厂商根据自己的协议生产出了不同的硬件和软件,为了实现网络设备间的互相通讯,ISO和IEEE相继提出了OSI参考模型及其TCP/IP模型。今天我们就简单的介绍一下,这两个模型,请继续往下看。
二、OSI参考模型:
OSI参考模型定义了网络中设备所遵守的层次结构。
如果不理解层次换个角度理解,比如手机厂商生产手机,我们需要生产配件、组装配件、包装手机这几个大步骤,那这几个步骤就是层次,每个层次有自己对应的任务。
OSI参考模型层次结构:
分层结构的优点:
- 开放的标准化接口
- 多厂商兼容性
- 易于理解、学习和更新协议标准
- 实现模块化工程,降低了开发实现的复杂度
- 便于故障排除
OSI参考模型各层次的单位
每一层都使用自己的协议,每一层都利用下层提供的服务与对等层通信。
依次介绍各层次
物理层:
定义电压、接口、线缆标准、传输距离、传输截止等物理参数
物理层介质:
同轴电缆(coaxial cable):细缆和粗缆
双绞线(twisted pair):UTP、STP
光纤(fiber):单模、多模
无线(wireless):红外线、蓝牙Blue Tooth、WLAN技术
数据链路层:
数据链路层的功能:
- 编帧和识别帧
- 数据链路的建立、维持和释放
- 传输资源控制
- 流量控制
- 差错验证
- 寻址
- 标识上层数据
局域网数据链路层分为LLC子层和MAC子层
- LLC子层:逻辑链路控制(LLC)子层负责向其上层提供服务,识别网络层协议,然后对它们进行封装。LLC子层也可以提供流量控制,并控制比特流的排序。
- MAC子层:介质访问控制(MAC)子层负责控制与连接物理层的物理介质。在发送数据的时候,MAC协议可以事先判断是否可以发送数据,如果可以发送将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送到物理层;在接收数据的时候,MAC协议首先判断输入的信息并是否发生传输错误,如果没有错误,则去掉控制信息发送至LLC(逻辑链路控制)层。
网络层:
作用:
编址、路由、拥塞控制、异种网络互连
简单认识两种网络层地址:
IP地址和IPX地址,但是现在互联网广泛使用的是IP地址。
网络层地址通常由两部分组成: 网络地址和主机地址
网络层的地址是全局唯一的(注意哦,这里说的是全局哦)
路由协议与可路由协议:
- 可路由协议(routed protocol)定义数据包内各个字段的格式和用途,对数据进行网络层封装
- 路由协议(routing protocol)在路由器之间传递信息,计算路由并形成路由表,为可路由协议选择路径
面向连接的服务和尽力而为的服务:
面向连接的服务
- 通信之前先建立连接,通信完成后断开连接
- 有序传递
- 应答确认
- 差错重传
- 适合于对可靠性要求高的应用
无连接的服务
- 尽力而为的服务
- 无需建立连接
- 无序列号机制,无确认机制,无重传机制
- 适合于对延迟敏感的应用
传输层:
传输层功能:
- 分段上层数据
- 建立端到端连接
- 透明、可靠传输
- 流量控制
数据分段:
通常我们的网卡一次只能收一个数据包发一个数据包,日常我们多个应用同时在线使用,实质上就是因为数据分段才能维持的,因为在很短的时间单位里分别发送了不同应用的数据包,人为的感知上是多个应用同时在线。如果不分段的话,假设QQ应用发送一个大型的文件给其他人,那么网络只能将这个大的数据包发送完成才能发送其他应用的数据包,这样的话必然会导致其他应用长时间无法网络互联导致接收数据不及时的情况。
端到端的连接:
通常我们QQ发送消息对方QQ能够收到,为什么对方微信收不到呢?计算机实质上就是利用了该技术,使用端口来区分数据是发给那个应用的。
传输层协议:
主要有TCP/IP协议族的TCP协议和UDP协议,以及IPX/SPX协议组的SPX协议等。
TCP和UDP:
TCP为什么可靠呢,实质上就是因为他有很多确认机制,这里列举几张图片不详细介绍,详情请自行查阅文档。
客户端--------------------------------------------------------------------------服务端
三次握手:
四次挥手:
UDP为什么不可靠呢?因为缺乏这种确认机制,所以无论你接不接收我都往你哪里发送数据。
会话层:
举例说明,百度是一个网站服务器,它同一时间有十万用户同时使用,每个用户搜索的内容不一样,作为服务器的我们又该怎么区分呢?
其实就是利用了会话层的端口技术。
注意:这里所说的会话层端口不要和传输层的端口混淆了
会话层和传输层是计算机网络协议栈中的不同层次,它们分别负责不同的功能和协议。因此,会话层和传输层的端口在作用和实现上都有所不同。
在传输层,端口是指计算机系统上的应用程序与协议栈中的传输层协议(如TCP和UDP)进行通信的端口。传输层端口主要是为了标识通信伙伴,以便在通信中进行识别。
而在会话层,端口是用于标识通信伙伴的一种机制。每个会话层实体都有一个唯一的端口号,以便在通信时进行识别。
虽然会话层和传输层的端口都是为了标识通信伙伴,但它们的作用和实现方式有所不同。传输层的端口是动态分配的,通常由系统自动分配,用于标识应用程序之间的通信。而会话层的端口也是动态分配的,但通常需要应用程序自行分配和管理。
因此,虽然会话层和传输层都涉及到端口的标识和通信,但它们的端口在作用、实现方式和功能上都有所不同。
简明:传输层的端口是区分不同应用的,而会话层是可以区分同一应用下多个不同用户访问的。
表示层:
我们所有用计算机传输的数据都是有对应的二进制表示方法,我们数据在网络中传输都是以二进制出现的。主要的作用是将应用处理的信息转换为适合网络传输的格式,或将来自下一层的数据转换为上层能够处理的格式。所以它主要负责数据格式的转换。
应用层:
- 为应用程序进程(比如文字处理、邮件、电子表格)
- 提供网络服务 文字处理、邮件、电子表格等
由于本课程主要学习OSI七层模型中的2-4层所以以上三层不详细介绍
OSI的不足
事实上各大厂商并不遵守OSI的七层模型,而是遵守TCP/IP的模型,因为OSI模型存在一些不足。
- 划分层次过多,会话层和表示层的存在意义并不大
- IP协议成为事实的网络层唯一协议(OSI七层模型网络层可以支持多种网络协议,如IP、IPX等但后来IP协议已经成为了广泛使用的协议,故存在其他选项已经没有意义了)
三、TCP/IP模型:
TCP/IP层次模型和OSI参考模型在技术上都是一样的,都是为了实现不同系统之间的通信。不同的是,TCP/IP层次模型和OSI参考模型在划分的层次、功能和适用范围上有所不同。
在功能上,TCP/IP层次模型和OSI参考模型都提供了面向连接和无连接的通信服务。
但是,TCP/IP层次模型在网络接口层实际上并没有真正的定义,只是一些概念性的描述。而OSI参考模型不仅分了两层,而且每一层的功能都很详尽,甚至在数据链路层又分出一个介质访问子层,专门解决局域网的共享介质问题。
另外,TCP/IP参考模型是先有协议然后建立模型,而OSI参考模型是在协议开发前设计的,具有通用性。
总的来说,TCP/IP层次模型和OSI参考模型在技术上是相同的,但在划分的层次、功能和适用范围上有所不同
层次结构:
四层划分法(官方文档解释):
五层分法(厂商真实遵守的分法,答题目过程中一律以四层为准,这里仅作一个扩展):
TCP/IP和OSI模型不一样但是对应层次关系是一样的,主要功能都是大同
四、数据封装与解封装:
封装:
在原始数据(Data)的基础上加入一些额外信息形成新的格式
解封装:
拆除封装的额外信息,还原成为原有数据
数据封装和数据解封装过程:
一张图看懂数据封装的过程,这里引用wlgcszz博主文章中的图一用,如果侵,联系即删。
网络层协议传输过程中的操作:
如图所示,在HOSTA应用数据发送给HOSTB为例,首先HOSTA会按照顺序对数据进行封装,而网络设备传输过程中需要知道IP地址或MAC地址,其存放在不同层次,由于我们数据封装是逐层的,所以需要读取的时候就需要逐个解开才能查看,所以这个时候我们的设备会将数据解开到对应层次后进行查找或修改进行重新封装传递
五、总结
OSI参考模型和TCP/IP的出现,为清晰地理解互联网络、开发网络产品和网络设计等带来了极大的方便,推动了计算机网络的飞速发展。
OSI参考模型分为七层结构,而TCP/IP模型分为四层结构
结束语
如果您认为本文对您有帮助,请帮忙在文末关注、点赞、收藏、文头点击订阅专栏,因为有了热度才能帮助更多人学习到看到本文,关于本文如果有问题可以在评论区留言,回复效率可能会低但是一定会积极恢复哦!~~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端