网络OSI七层模型及各层作用 tcp-ip
背景
虽然说以前学习计算机网络的时候,学过了,但为了更好地学习一些物联网协议(MQTT、CoAP、LWM2M、OPC),需要重新复习一下。
OSI七层模型
七层模型,亦称OSI(Open System Interconnection)。参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系,一般称为OSI参考模型或七层模型。
它是一个七层的、抽象的模型体,不仅包括一系列抽象的术语或概念,也包括具体的协议。
| OSI七层模型 | 功能 | 对应的网络协议 |
|---|---|---|
| 应用层 | 应用层是网络体系中最高的一层,也是唯一面向用户的一层,也可视为为用户提供常用的应用程序,每个网络应用都对应着不同的协议 | HTTP、TFTP, FTP, NFS, WAIS、SMTP |
| 表示层 | 主要负责数据格式的转换,确保一个系统的应用层发送的消息可以被另一个系统的应用层读取,编码转换,数据解析,管理数据的解密和加密,同时也对应用层的协议进行翻译 | Telnet, Rlogin, SNMP, Gopher |
| 会话层 | 负责网络中两节点的建立,在数据传输中维护计算机网络中两台计算机之间的通信连接,并决定何时终止通信 | SMTP, DNS |
| 传输层 | 是整个网络关键的部分,是实现两个用户进程间端到端的可靠通信,处理数据包的错误等传输问题。是向下通信服务最高层,向上用户功能最底层。即向网络层提供服务,向会话层提供独立于网络层的传送服务和可靠的透明数据传输。 | TCP, UDP |
| 网络层 | 进行逻辑地址寻址,实现不同网络之间的路径选择,IP就在网络层 | IP, ICMP, ARP, RARP, AKP, UUCP |
| 数据链路层 | 物理地址(MAC地址),网络设备的唯一身份标识。建立逻辑连接、进行硬件地址寻址,相邻的两个设备间的互相通信 | FDDI, Ethernet, Arpanet, PDN, SLIP, PPP,STP。HDLC,SDLC,帧中继 |
| 物理层 | 七层模型中的最底层,主要是物理介质传输媒介(网线或者是无线),在不同设备中传输比特,将0/1信号与电信号或者光信号互相转化 | IEEE 802.1A, IEEE 802.2到IEEE 802 |
数据发送时从上至下封装,收到数据包后从下至上解包。每一层对于上一层来讲是透明的,上层只需要使用下层提供的接口,并不关心下层是如何实现的。
我们所说的 socket 编程,是站在传输层的基础上,所以可以使用 TCP/UDP 协议,但是不能干「访问网页」这样的事情,因为访问网页所需要的 http 协议位于应用层。
两台计算机进行通信时,必须遵守以下原则:
- 必须是同一层次进行通信,比如,A 计算机的应用层和 B 计算机的传输层就不能通信,因为它们不在一个层次,数据的拆包会遇到问题。
- 每一层的功能都必须相同,也就是拥有完全相同的网络模型。如果网络模型都不同,那不就乱套了,谁都不认识谁。
- 数据只能逐层传输,不能跃层。
- 每一层可以使用下层提供的服务,并向上层提供服务。
如:

TCP/IP
TCP/IP 参考了OSI模型,将 最上的3层(应用层、表示层、会话层) 视为为 应用层, 由 将 最下的2层(数据链路层、物理层)视为 网络接口层
所以 TCP/IP 只有4层。
我们用一张图来看,TCP/IP在OSI模型中各个部分对应的是什么部分。

附录: TCP/IP在OSI模型中各部分的解释(OSI七层模型 相关协议 缩写)
应用层
HTTP 超文本传输协议
FTP 文件传输协议
SMTP 简单邮件传输协议
TELNET TCP/IP终端仿真协议
POP3 邮局协议第三版
Finger 用户信息协议
NNTP 网络新闻传输协议
IMAP4 因特网信息访问协议第四版
LPR UNIX 远程打印协议
Rwho UNIX 远程 Who协议
Rexec UNIX远程执行协议
Login UNIX 远程登陆协议
RSH UNIX 远程Shell协议
NTF HP 网络文件传输协议
RDA HP 远程数据库访问协议
VT 虚拟终端仿真协议
RFA HP 远程文件访问协议
RPC Remote Process Comm.
S-HTTP 安全超文本传输协议
GDP 网关发现协议
X-Window
CMOT 基于TCP/IP的CMIP协议
SOCKS 安全套接字协议
FANP 流属性通知协议
SLP 服务定位协议
MSN 微软网络服务
Radius 远程用户拨号认证服务协议
DNS 域名系统
NFS网络文件系统协议
NIS SUN 网络信息系统协议
R-STAT SUN远程状态协议
NSM SUN 网络状态监测协议
PMAP SUN 端口映射协议
Mount
LPR UNIX 远程打印协议
SNMP 简单网络管理协议
常用UDP协议的应用层服务
- BOOTP 引导协议
- DHCP动 态主机配套协议
- NTP 网络时间协议
- TFTP 简单文件传输协议
表示层
DECnet NSP
LPP 轻量级表示协议
NBSSN NetBIOS会话服务协议
XDP外部数据表示协议
IPX
会话层
SSL 安全套接字层协议
TLS 传输层安全协议
DAP 目录访问协议
LDAP 轻量级目录访问协议
RPC 远程过程调用协议
VINES NETRPC
- VFRP
- NeTBIOS
- IPX
传输层
XOT 基于tcp之上的X协议
Van Jacobson 压缩TCP协议
ISO-DE ISO 开发环境-------->NetBISO
TALI 传输适配层接口协议
DSI、NetBIOS、IP NeTBIOS、ISO-TP SSP、SMB、MSRPC
UDP用户数据报协议
RUDP 可靠的用户数据报协议
Mobile IP 移动IP协议
网络层
IP/IPv6 互联网协议/互联网协议第六版
ICMPv6互联网控制信息协议第六版
ICMP互联网控制信息协议
IGMP 互联网组管理协议
SLIP 串行线路IP协议
安全协议
AH 认证头协议
ESP 安装封装有效载荷协议
路由协议
EGP 外部网关协议
OSPF 开放最短路径优先协议
IGRP 内部网关路由协议
NHRP 下一跳解析协议
IE-IRGP 增强内部网关路由选择协议
RIPng for IPv6 IPv6路由信息协议
GGP 网关到网关协议
VRRP 虚拟路由器冗余协议
PGM 实际通用组播协议
RSVP 资源预留协议
PIM-DM 密集模式独立组播协议
DVMRP 距离矢量组播路由协议
RIP2 路由信息协议第二版
PIM-SM 稀疏模式独立组播协议
MOSPF 组播开放最短路径优先协议
数据链路层
MPLS 多协议标签交换协议
XTP 压缩传输协议
DCAP 数据转换客户访问协议
SLE 串行连接封装协议
IPinIP IP套IP封装协议
隧道协议
PPTP 点对点隧道协议
L2F 第二层转发协议
L2TP 第二层隧道协议
ATMP 接入隧道管理协议
Cisco 协议
CDP 思科发现协议
CGMP 思科组管理协议
地址解析协议
ARP 地址解析协议
RAR 逆向地址解析协议
物理层
IEEE 802.2
Ethernet v.2
Internetwork
网络OSI七层模型及各层作用 tcp-ip的更多相关文章
- 网络OSI七层模型以及数据传输过程
网络OSI七层模型 模型图 国际标准化组织(ISO)制定了osi七层模型,iso规定了各种各样的协议,并且分了7层 每一层的详细信息 具体7层 数据格式 功能与连接方式 典型设备 应用层 Applic ...
- OSI七层模型及各层作用
物理层:建立.维护.断开物理连接 数据链路层:该层的作用包括了物理地址寻址,数据的成帧,流量控制,数据的检错,重发等.该层控制网络层与物理层之间的通信,解决的是所传输数据的准确性的问题.为了保证传输, ...
- OSI7层模型(TCP4层)
OSI7层模型(TCP4层) 第一层:物理层 在局部局域网络上传送帧,它负责管理电脑通信设备和网络媒体之间的互通.包括了针脚.电压.线缆规范.集线器.中继器.网卡.主机适配器等. 第二层:数据链路层 ...
- 网络--OSI七层模型详解
OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 . 完成中继功能的节点通常称为中继系统.在OSI七层模型中,处于 ...
- 网络OSI七层模型及各层作用 与 TCP/IP
背景 虽然说以前学习计算机网络的时候,学过了,但为了更好地学习一些物联网协议(MQTT.CoAP.LWM2M.OPC),需要重新复习一下. OSI七层模型 七层模型,亦称OSI(Open System ...
- 网络OSI七层架构与TCP四层架构的应用与区别
1.OSI七层网络模型介绍 OSI(Open System Interconnection,开放系统互连)七层网络模型称为开放式系统互联参考模型 ,是一个逻辑上的定义,一个规范,它把网络从逻辑上分为了 ...
- 网络----OSI七层
OSI 订制的是一个用于计算机或通信系统间互联的标准体质(一般称为OSI参考模型或七层模型) OSI 模型把网络通信的工作分为7层分别是: 常用内容:物理层 数据链层 网络层 注解 OSI 7层 1. ...
- 网络 osi七层协议
一 互联网的本质 咱们先不说互联网是如何通信的(发送数据,文件等),先用一个经典的例子,给大家说明什么是互联网通信. 现在追溯到八九十年代,当时电话刚刚兴起,还没有手机的概念,只是有线电话,那么此时你 ...
- 读书笔记——网络编程与开发技术(3)基于TCP/IP协议的网络编程相关知识
TCP/IP协议:数据链路层,网络层,传输层,应用层. IP地址分为5类:A类.B类.C类.D类.E类. (A类.B类.C类是基本类,D类多用于多播传送,E类为保留类.) "*"表 ...
- 网络知识学习1---(基础知识:ISO/OSI七层模型和TCP/IP四层模型)
以下的内容和之后的几篇博客只是比较初级的介绍,想要深入学习的话建议自己钻研<TCP/IP详解 卷1:协议> 1.ISO/OSI七层模型 下四层是为数据传输服务的,物理层是真正的传输数 ...
随机推荐
- SAP集成技术(十三)SAP Cloud Integration
异构应用环境给IT带来了各种问题.在这种情况下,混合集成环境尤其受到影响.同时,对于建立在混合IT环境上的数字化转型项目,数据集成和跨系统访问已经开始发挥核心作用.为了满足不断增长的需求,SAP Bu ...
- 小伙伴说VuePress太简洁了,还有没有其他博客推荐?
写在前面 自从上一篇文章发出来之后,不少小伙伴开始用VuePress搭建自己的个人网站. 如果小伙伴也想用VuePress零代码零成本搭建个人网站,可以看过来 传送门 怎么零代码零成本搭建个人网站 当 ...
- UE4/5 应用角色根运动的问题
总的来说UE还是有点绕,网上提到的也不是很清晰,记录下. 具体可以下载UE官方示例ContentExample并进入Animation Level进行查看. 在Level中能看到根运动的必要步骤: 1 ...
- C++:面向对象
文章目录 继承与多态 继承 继承的构造与析构 虚继承 多态 ❀虚/纯虚函数❀ 虚析构/纯虚析构 对象的生命周期 实例化对象 构造函数与析构函数 拷贝构造函数 防止拷贝 总结 深拷贝与浅拷贝 初始化列表 ...
- JDK源码阅读-------自学笔记(二十二)(java.util.ArrayList自定义晋级,ArrayList实战详解)
简介(Introduction) 上篇文章主要介绍了ArrayList自行模仿建立的方式,那么,其实这个类不是一次性就那么完美的,现在做一个一步步变成那样完整的ArrayList的版本升级测试. ...
- docker 修改运行容器环境变量,如何修改容器中的环境变量env使长期有效
@ 目录 前言 第一步:查看Docker Root目录 第二步:查到容器的长id(container id) 第三步:停止容器 第四步:编辑修改环境变量env 第五步:重载服务的配置文件 第六步:重启 ...
- redis三主三从集群快速搭建
redis集群快速搭建 1 本文以redis6.2.6版本为例,快速搭建一套三主三从的redis集群,已经提前将脚本写好,只需要在节点上面进行执行即可安装 #!/bin/bash install_re ...
- 微信开发者工具拉取gitlab远程代码报Pull failed原因分析:
可能出现的原因: 本地主机上没有安装node node下载地址: 1 https://nodejs.org/zh-cn/download/ 没有保存gitlab的用户名和密码
- Python多线程、多进程编程
1 简介 参考:https://www.bilibili.com/video/BV1bK411A7tV?spm_id_from=333.999.0.0 python线程池ThreadPoolExecu ...
- idea 使用 mvn clean package 报错 Could not create local repository at
使用 mac 版本的 idea 打包使用打包命令 mvn clean package 总是报错: [ERROR] Could not create local repository at /Repos ...