OSI

7层模型和TCP/IP 4层模型

OSI:open system interconnection 开放式系统互联参考模型

OSI模型各层的基本作用

说明
7应用层为应用程序提供网络服务
6表示层数据格式化、加密、解密
5会话层建立、维护、管理会话连接
4传输层建立、维护、管理端到端连接
3网络层IP寻址和路由选择
2数据链路层控制网络层与物理层之间通信
1物理层比特流传输

OSI 和 TCP/IP 的对应关系和协议

OSI七层网络模型TCP/IP四层概念模型对应网络协议
应用层(Application)应用层HTTP、TFTP、FTP、NFS、WAIS、SMTP
表示层(Presentation)应用层Telnet、Rlogin、SNMP、Gopher
会话层(Session)应用层SMTP、DNS
传输层(Transport)传输层TCP、UDP
网络层(Network)网络层IP、ICMP、ARP、RARP、AKP、UUCP
数据链路层(Data Link)数据链路层FDDI、Ethernet、Arpanet、PDN、SLIP、PPP
物理层(Physical)数据链路层IEEE 802.1A、IEEE 802.2到IEEE 802.11

OSI模型的详解

  • 1 物理层
    • 1.1 通过光缆、电缆、无线电波等方式将设备连接起来组网
    • 1.2 两个不同局域网(移动、电信)通信,需要ISP互联网服务供应商的物理连接
    • 1.3 作用:传送比特流 0和1
  • 2 数据链路层
    • 2.1 作用:根据以太网协议将一组电信号组成一个数据包,称作“帧”,并控制他的传输
      • 有两部分:
        • 1 标头head:标明数据发送者、接收者、数据类型
        • 2 数据data
    • 2.2 MAC地址
      • 2.2.1 作用:定位数据包的路径,如发送者、接收者
      • 2.2.2 既网卡地址,每个网卡都是独一无二的12个16进制数
      • 2.2.3 前6个表厂商,后6个表流水号
    • 2.3 广播方式
      • 2.3.1 发送者把数据包,发送给局域网内的所有pc,当每个pc根据MAC地址自动匹配
      • 2.3.2 发送媒介:分组交换机/网络交换机
    • 2.4 网络交换机network switch
      • 2.4.1 扩展网络的机器
      • 2.4.2 作用:为子网提供更多的接口,以连接更多的pc
  • 3 网络层
    • 3.1 作用:建立 主机-主机的连接
    • 3.2 引入新的地址模式-IP地址/网络地址,可以区分哪些PC是在同一子网(局域网)内
    • 3.3 IP类型分类
      • 3.3.1 IPv4 32个二进制,4字节*8位
        • 前24位表网格同一子网下,必须相同
        • 后8位表主机
      • 3.3.2 IPv6 128个二进制,8字节*16位
    • 3.4 子网掩码subnet mask:通过and运算判断是否在同一子网下 ip and 255.255.255.0
    • 3.5 路由 routing
      • 3.5.1 作用:
        • 通过网络把数据从原地址到目标地址
        • 引导分组传送,经过一些中间节点后,到达目的地
      • 3.5.2 实现方法:定义一条路径,经过因特网把包发送到目的地,但不指定完全路径,只定义两个网关之间的路径段
      • 3.5.3 路由器router:连接两个或多个网络并实现路由功能的机器;可看作配有多个网卡的专用电脑,让网卡接入不同的网络中
      • 3.5.4 网关 gateway: 网络层使用的路由器,通常指路由器的ip
      • 3.5.5 ex: A:发送地址 B:接收地址
        • 1 若在同一局域网:通过广播方式即可找到
        • 2 若在不同局域网:
          • A先生将包根据网关添加路由器/主机地址,通过交换机的广播方式发给主机
          • A的主机将数据包传送给B所在的主机,再由主机根据MAC广播给B 完成
          • 注:IP包不断被路由封装和拆开(添加/删除地址)
    • 3.6 ARP协议
      • 3.6.1 作用:局域网内IP和MAC地址的对应关系
      • 3.6.2 作用位置:介于数据链路层和网络层之间
      • 3.6.3 局限:仅限ipv4,ipv6用Neighbor Discovery Protocol替代
  • 4 传输层
    • 4.1 作用:建立 端口-端口间的连接
    • 4.2 端口号port
    • 4.3 socket
      • 4.3.1 进程间通信:需要双方IP,端口号,通信采用的协议栈
      • 4.3.2 格式:无符号整型变量,用来表示一个通信进程
      • 4.3.3 本质:是编程接口API,对TCP/IP协议的封装
    • 4.4 UDP/TCP
      • 4.4.1 作用:在数据包标头加上端口号
      • 4.4.2 TCP:复杂,稳定,有包遗失,会重发
      • 4.4.3 UDP:简单,但不稳定,不能确定对方是否成功接收
  • 5 会话层
  • 6 表示层
  • 7 应用层 (对会话层、表示层、应用层合并为TCP/IP的应用层)
    • 7.1 作用
      • 7.1.1 规定应用程序的数据格式
      • 7.1.2 如ftp,网页、smtp的数据格式
    • 7.2 是对OSI模型中最高3层的合并,直接面向用户

数据链路层数据包(以太网数据包)格式,除了应用层没有头部,其他都有

示例

由于以太网数据包的数据部分,最大长度为1500字节,当IP包过大时,会分割下来,但是每个分割包的头部都一样

示例

数据包在传送时的封装和解封装如下所示

示例

ref:
OSI 7层模型和TCP/IP 4层模型open in new window

最后更新时间:
贡献者: DESKTOP-ER5718D\zt