当前位置: 首页 > news >正文

网络分层、OSI七层模型、TCP/IP 五层模型

网络分层、OSI七层模型、TCP/IP 五层模型

  • 为什么要分层
  • OSI七层模型
  • TCP/IP 五层模型

为什么要分层

分层是软件工程的特点,通过分层,每个层的内部实现自己的特点(一些个性化的需求),通过层与层之间进行稳定的接口调用,这样就起到了解耦的作用,把其中一层换掉其中的实现,并不会对整个多层次的链路造成影响。
联网的模型基本上都是遵循于OSI七层模型。

OSI七层模型

在这里插入图片描述

七层模型,亦称OSI(Open System Interconnection)。参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系,一般称为OSI参考模型或七层模型。
它是一个七层的、抽象的模型体,不仅包括一系列抽象的术语或概念,也包括具体的协议。

  1. 应用层
    网络服务与最终用户的一个接口。接收用户的数据,人机交互的接口,面向的应用程序。(就是我们经常接触到的,内容就是各种应用)
    协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP
  2. 表示层(在五层模型里面已经合并到了应用层)
    表示数据的表示或者是数据的安全和压缩。(将逻辑语言转为机器语言,翻译,加密。
    格式有,JPEG、ASCll、EBCDIC、加密格式等
  3. 会话层(在五层模型里面已经合并到了应用层)
    建立、管理、终止会话。(针对传输的每一种数据建立一条虚连接)
    对应主机进程,指本地主机与远程主机正在进行的会话
  4. 传输层
    表示具体传输数据的过程,定义传输数据的协议和端口号,以及流控和差错校验。( 作用 1.区分流量 2.定义数据传输方式 )
    协议有:可靠传输TCP、不可靠传输UDP,数据包一旦离开网卡即进入网络传输层
  5. 网络层
    进行逻辑地址寻址,实现不同网络之间的路径选择(寻找网络中的地址,主要是IP地址)。
    协议有:ICMP IGMP IP(IPV4 IPV6)
  6. 数据链路层
    建立逻辑连接、进行硬件地址寻址、差错校验等功能。由底层网络定义协议。(比如MAC地址访问就是在这层实现的)
    将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正。
  7. 物理层
    传输介质(有线、无线。现在很多公司交互的专线就属于物理层),表示具体的物理硬件,建立、维护、断开物理连接。由底层网络定义协议。
  • 有线:同轴电缆、双绞线、光纤
    • 同轴电缆
      分为细缆和粗缆
      细缆:传输速度10Mbps,传输距离185m
      粗缆:传输速度10Mbps,传输距离500m
    • 双绞线(RJ-45):
      分为屏蔽(STP)和非屏蔽(UTP)—8根铜丝分4组,两两相绞(减小干扰)—传输距离100米
      568A线序:白绿、绿、白橙、蓝、白蓝、橙、白棕、棕
      568B线序:白橙、橙、白绿、蓝、白蓝、绿、白棕、棕 (是568A的3612线序)
      平行线:又称为直通线,线序相同。不同层设备使用平行线。
      交叉线:线序不同。同层设备使用交义线。
      全反线:又称为console线,配置线,线序相反,用于用户控制网络设备。
    • 光纤
      分为单模和多模,通过光导纤维(玻璃)传输光信号
      发送光信号需要由电信号转为光信号:
      电信号—>光信号:发光二极管(多模) 或 注入式激光二极管(单模)
      光信号—>电信号: 发电二极管
  • 无线: 红外线、微波、蓝牙、无线电、wimax
    • 无线电:标准IEEE 802.11
    • 蓝牙:标准IEEE 802.15
    • wimax:标准IEEE 802.16
    • 全球移动通信系统(GSM)
  • 路由器: 三层设备,识别IP地址。
    具有隔离广播域的功能,一个接口就是一个广播域,不同的接口在不同的网段(广播域)
  • 交换机(网桥): 二层设备,使用MAC地址,所有的接口默认在同一个广播域,一个接口是一一个冲突域。
  • 集线器(hub): 放大器 放大信号,属于1层设备,识别bit流,hub 上所有的接口都在同一个冲突域中。

TCP/IP 五层模型

在这里插入图片描述

TCP/IP 层级模型结构,应用层之间的协议通过逐级调用传输层(Transport layer)、网络层(Network Layer)和物理数据链路层(Physical Data Link)而可以实现应用层的应用程序通信互联。
应用层需要关心应用程序的逻辑细节,而不是数据在网络中的传输活动。应用层其下三层则处理真正的通信细节(TCP/IP 层级模型结构是五层的。将应用层,表示层,会话层合到一起作为应用层,并不是推翻了OSI七层网络模型)。在 Internet 整个发展过程中的所有思想和着重点都以一种称为 RFC(Request For Comments)的文档格式存在。针对每一种特定的 TCP/IP 应用,有相应的 RFC文档。
一些典型的 TCP/IP 应用有 FTP、Telnet、SMTP、SNTP、REXEC、TFTP、LPD、SNMP、NFS、INETD 等。RFC 使一些基本相同的 TCP/IP 应用程序实现了标准化,从而使得不同厂家开发的应用程序可以互相通信

网络模型的每一层都由自己的协议,如应用层,你连接redis会用redis的协议,你访问百度,会用到http的协议,其它层也是一样的。

相关文章:

  • Spring Boot的事务管理实战(附源码 超详细)
  • idea 如何不重启服务进行修改-(热部署)
  • 《你好,放大器》----学习记录(六)
  • mysql数据库之存储引擎
  • C++ STL中的allocator
  • GitHub提交代码超时解决方案 | 配置SSH连接
  • 火山引擎 RTC 全球化架构设计
  • 软考知识点---13语言处理程序基础
  • 生成keystore以及导出keystore公钥,私钥信息
  • 黑马学SpringCloud-Feign
  • 基于springboot的校园二手网站
  • 对于一个即将上线的网站,如何测试
  • 手把手教你搭建SpringCloudAlibaba之Nacos服务集群配置
  • 【数据分析】多重分形去趋势波动分析附matlab代码
  • Spring Cloud LoadBalancer--负载均衡的原理(源码分析)
  • 【跃迁之路】【444天】程序员高效学习方法论探索系列(实验阶段201-2018.04.25)...
  • bearychat的java client
  • LeetCode算法系列_0891_子序列宽度之和
  • Node项目之评分系统(二)- 数据库设计
  • redis学习笔记(三):列表、集合、有序集合
  • Vue组件定义
  • 阿里云前端周刊 - 第 26 期
  • 第十八天-企业应用架构模式-基本模式
  • 关于List、List?、ListObject的区别
  • 聊聊sentinel的DegradeSlot
  • 如何正确配置 Ubuntu 14.04 服务器?
  • 一、python与pycharm的安装
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • # include “ “ 和 # include < >两者的区别
  • (3)nginx 配置(nginx.conf)
  • (JSP)EL——优化登录界面,获取对象,获取数据
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (动态规划)5. 最长回文子串 java解决
  • (六)库存超卖案例实战——使用mysql分布式锁解决“超卖”问题
  • (十一)图像的罗伯特梯度锐化
  • (一)基于IDEA的JAVA基础1
  • .NET CORE 第一节 创建基本的 asp.net core
  • .NET Core WebAPI中使用swagger版本控制,添加注释
  • .Net IE10 _doPostBack 未定义
  • .net oracle 连接超时_Mysql连接数据库异常汇总【必收藏】
  • .NET Standard / dotnet-core / net472 —— .NET 究竟应该如何大小写?
  • .NET开发人员必知的八个网站
  • .net生成的类,跨工程调用显示注释
  • .NET实现之(自动更新)
  • .NET运行机制
  • [Angular] 笔记 18:Angular Router
  • [CC2642r1] ble5 stacks 蓝牙协议栈 介绍和理解
  • [CISCN2019 华北赛区 Day1 Web5]CyberPunk --不会编程的崽
  • [C语言]一维数组二维数组的大小
  • [datastore@cyberfear.com].Elbie、[thekeyishere@cock.li].Elbie勒索病毒数据怎么处理|数据解密恢复
  • [GXYCTF2019]禁止套娃
  • [Java] 图说 注解
  • [leetcode 189][轮转数组]
  • [luogu2165 AHOI2009] 飞行棋 (枚举)
  • [mmucache]-ARMV8-aarch64的虚拟内存(mmutlbcache)介绍-概念扫盲