网络编程-OSI模型
OSI模型
OSI是open system interconnection的缩写,译为“开放式系统互联”。
OSI模型把网络通信的工作分为7层,从下到上分别是物理层,数据链路层,网络层,传输层,会话层,表示层和应用层。
OSI七层网路模型和TCP/IP四层网络模型的对比。
网络模型:就是进行数据封装的。
当另一台计算机接收到数据包时,会从网络接口层再一层一层往上传输,每传输一层就拆开一层包装,直到最后的应用层,就得到了最原始的数据,这才是程序要使用的数据。
在互联网上传输一份数据是多么地复杂,而我们却感受不到,这就是网络模型的厉害之处。我们只需要在代码中调用一个函数,就能让下面的所有网络层为我们工作。
两台计算机进行通信时,必须最遵守以下原则:
-
必须是同一层进行通信,比如,A计算机的应用层和B计算机的传输层就不能通信,因为他们不再一个层次,数据的拆包会遇到问题。
-
每一层的功能都必须相同,也就是拥有完全相同的网络模型。如果网络模型都不同,那不就乱套了。
-
数据只能逐层传输,不能跃层。
-
每一层可以使用下层提供的服务,并向上层提供服务。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律