计算机网络参考模型

本文涉及的产品
数据传输服务 DTS,数据迁移 small 3个月
推荐场景:
MySQL数据库上云
数据传输服务 DTS,同步至 ClickHouse 1个月
数据传输服务 DTS,同步至SelectDB 1个月
简介: 应用层提供的就是人与应用程序交互的界面,如图形界面,命令行界面等等。要注意的是,这个应用程序必须是属于网络应用程序,如Telnet(远程登录)、FTP、web浏览器、Email、Http、Smtp等等。表示层(第6层)表示层是用来确定信息该以怎样的方式呈现给用户,如文本方式、图形方式、视频方式等。所以表示层有很多协议和标准,如ASCLL(文本用的)、JPEG(图形用的)、WAV(音频用的)、MPEG(视频用的)等等很多很多。

OSI七层模型每层的功能

1~3层为点到点


4~7层为端到端


应用层(第7层)


应用层提供的就是人与应用程序交互的界面,如图形界面,命令行界面等等。要注意的是,这个应用程序必须是属于网络应用程序,如Telnet(远程登录)、FTP、web浏览器、Email、Http、Smtp等等。


表示层(第6层)


表示层是用来确定信息该以怎样的方式呈现给用户,如文本方式、图形方式、视频方式等。所以表示层有很多协议和标准,如ASCLL(文本用的)、JPEG(图形用的)、WAV(音频用的)、MPEG(视频用的)等等很多很多。


会话层(第5层)


会话层是用来负责网络连接的建立和终止。为了建立连接或终止连接,会话层要与传输层不断的通信。如RPC(远程过程调用)、以及使用了RPC的NFS(网络文件系统)等


传输层(第4层


传输层显然是做数据传输工作的。通常传输分为有保证的数据传输和无保证的数据传输。对于有保证的传输,传输层还要负责差错侦测和差错校正。对于无保证的数据传输,传输层只要负责差错侦测就可以了,差错校正由应用层去做。传输中也需要一些协议,如TCP/IP,UDP,IPX,SPX。IPX协议提供的是无保证的传输,如果要有保证的传输就要用SPX。IP也是无保证的传输,如果要有保证传输就要用TCP。


网络层(第3层)


网络层用于提供逻辑拓扑和第3层地址。一般网络设备都有一个逻辑地址,或称为第3层地址。逻辑地址由2部分组成,网络号和主机号。网络号用来标识某个网段,主机号用来标识这个网段上的某台设备。网络层要做的事情就是给网络设备分配网络拓扑中逻辑地址。网络层需要用的协议如 TCP/IP、IPX、APPLE TALK、DECNET。


数据链路层(第2层)


网络层是为设备提供逻辑地址的,而数据链路层则是给设备提供物理地址或硬件地址,也就是我们常说的MAC(Media Access Control,媒体访问控制器)地址。数据链路层还规定了网络设备如何去访问与之相连的设备。另外数据链路层还负责从物理层接收比特(二进制0和1),并将其重新组成原始的数据。在局域网里数据链路层使用的协议和标准如:IEEE802.2 、802.3 、802.5;Ethernet Ⅱ;FDDI;在广域网中要用到ATM、帧中继、HDLC(高级数据链路控制)、PPP等等。通常在数据链路层运行的设备有:交换机、网桥、网络接口控制器或网络接口卡(NIC)。


物理层(第1层)


物理层负责的是网络连接的物理技术细节,包括接口类型、线缆类型、线缆每端的连接器、线缆上每个连接的针脚排列,如:双绞线、光纤、RJ45、DB9。运行在物理层的设备如:集线器、中继器。中继器用于扩展网段,而集线器本质也是一个中继器,可以把多个网段链接在一起。另外物理层还负责发送和接收比特,也就是二进制如何转变成物理层信号,即将0和1转变成电信号(电缆用的)或者是光信号(光纤用的)。


OSI七层模型每层的特点

物理层

如何使用物理信号来表示数据1和0

数据传输是否可同时在两个方向上进行

通信双方如何建立和中止连接

物理接口特性


数据链路层

数据帧封装结构

源和目的方的物理地址

数据校验功能


网络层

数据包封装结构

源和目的方的逻辑地址

根据包头的逻辑地址选路


传输层

用户进程间的通信


会话层

建立用户间的会话关系


表示层

定义传递信息的语法和语义

编码和解码、压缩解压缩、加密解密


应用层

提供与用户的接口


TCP/IP协议族的组成

应用层

HTTP 超文本传输协议(80)

FTP 文件传输协议(21)

TFTP 简单文件传输协议(69)

SMTP 简单邮件传输协议(25)

SNMP 简单网络管理协议(161)

DNS 域名系统(53)


传输层

TCP:传输速度慢、有连接、安全可靠


UDP:传输速度快、无连接、不安全


网络层


ICMP 网际控制报文协议

IGMP 网际组管理协议

IP 网络互联协议

ARP 地址解析协议

RARP 逆向地址解析协议


物理层和数据链路层


支持所有标准和专用的协议


封装过程

应用层:原数据(为二进制数据)传送到传输层


传输层:接收到上层数据,加上tcp头部,数据形成数据段,然后把数据传送到下层


网络层:接收到上层数据段时,加上IP头部,数据形成数据包,然后把数据包传输到下层


数据链路层:接收到上层数据包时,加上mac地址头部和尾部,数据形成数据帧,然后把数据变成bit流,传送给下层。


物理层:接收到上层bit流时,把bit流转换为电信号,在网线中传输,如果是光纤,就是光信号


解封装过程

物理层:收到电信号,把电信号转换成bit流,传输给数据链路层


数据链路层:收到bit流之后,把bit流转换成数据帧,去掉mac头部和尾部,把数据包传输到网络层


网络层:收到数据包,去掉ip头部,把数据段交给传输层


传输层:收到数据段,去掉tcp头部,把原始数据交给应用层


应用层:收到原始数据进行处理


PDU协议数据单元

传输层 ------> 数据段


网络层 ------> 数据包


数据链路层 ------> 数据帧


物理层 ------>bit流


设备与层之间的关系

应用层 ------> 计算机


传输层 ------> 防火墙


网络层 ------> 路由器


数据链路层 ------>交换机


物理层 ------> 网卡


相关实践学习
自建数据库迁移到云数据库
本场景将引导您将网站的自建数据库平滑迁移至云数据库RDS。通过使用RDS,您可以获得稳定、可靠和安全的企业级数据库服务,可以更加专注于发展核心业务,无需过多担心数据库的管理和维护。
Sqoop 企业级大数据迁移方案实战
Sqoop是一个用于在Hadoop和关系数据库服务器之间传输数据的工具。它用于从关系数据库(如MySQL,Oracle)导入数据到Hadoop HDFS,并从Hadoop文件系统导出到关系数据库。 本课程主要讲解了Sqoop的设计思想及原理、部署安装及配置、详细具体的使用方法技巧与实操案例、企业级任务管理等。结合日常工作实践,培养解决实际问题的能力。本课程由黑马程序员提供。
目录
相关文章
|
4月前
|
C++
基于Reactor模型的高性能网络库之地址篇
这段代码定义了一个 InetAddress 类,是 C++ 网络编程中用于封装 IPv4 地址和端口的常见做法。该类的主要作用是方便地表示和操作一个网络地址(IP + 端口)
248 58
|
4月前
|
网络协议 算法 Java
基于Reactor模型的高性能网络库之Tcpserver组件-上层调度器
TcpServer 是一个用于管理 TCP 连接的类,包含成员变量如事件循环(EventLoop)、连接池(ConnectionMap)和回调函数等。其主要功能包括监听新连接、设置线程池、启动服务器及处理连接事件。通过 Acceptor 接收新连接,并使用轮询算法将连接分配给子事件循环(subloop)进行读写操作。调用链从 start() 开始,经由线程池启动和 Acceptor 监听,最终由 TcpConnection 管理具体连接的事件处理。
135 2
|
4月前
基于Reactor模型的高性能网络库之Tcpconnection组件
TcpConnection 由 subLoop 管理 connfd,负责处理具体连接。它封装了连接套接字,通过 Channel 监听可读、可写、关闭、错误等
143 1
|
4月前
|
JSON 监控 网络协议
干货分享“对接的 API 总是不稳定,网络分层模型” 看电商 API 故障的本质
本文从 OSI 七层网络模型出发,深入剖析电商 API 不稳定的根本原因,涵盖物理层到应用层的典型故障与解决方案,结合阿里、京东等大厂架构,详解如何构建高稳定性的电商 API 通信体系。
|
6月前
|
域名解析 网络协议 安全
计算机网络TCP/IP四层模型
本文介绍了TCP/IP模型的四层结构及其与OSI模型的对比。网络接口层负责物理网络接口,处理MAC地址和帧传输;网络层管理IP地址和路由选择,确保数据包准确送达;传输层提供端到端通信,支持可靠(TCP)或不可靠(UDP)传输;应用层直接面向用户,提供如HTTP、FTP等服务。此外,还详细描述了数据封装与解封装过程,以及两模型在层次划分上的差异。
1047 13
|
1月前
|
机器学习/深度学习 数据采集 人工智能
深度学习实战指南:从神经网络基础到模型优化的完整攻略
🌟 蒋星熠Jaxonic,AI探索者。深耕深度学习,从神经网络到Transformer,用代码践行智能革命。分享实战经验,助你构建CV、NLP模型,共赴二进制星辰大海。
|
2月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
166 2
|
6月前
|
网络协议 中间件 网络安全
计算机网络OSI七层模型
OSI模型分为七层,各层功能明确:物理层传输比特流,数据链路层负责帧传输,网络层处理数据包路由,传输层确保端到端可靠传输,会话层管理会话,表示层负责数据格式转换与加密,应用层提供网络服务。数据在传输中经过封装与解封装过程。OSI模型优点包括标准化、模块化和互操作性,但也存在复杂性高、效率较低及实用性不足的问题,在实际中TCP/IP模型更常用。
819 10
|
2月前
|
机器学习/深度学习 并行计算 算法
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
|
4月前
基于Reactor模型的高性能网络库之Poller(EpollPoller)组件
封装底层 I/O 多路复用机制(如 epoll)的抽象类 Poller,提供统一接口支持多种实现。Poller 是一个抽象基类,定义了 Channel 管理、事件收集等核心功能,并与 EventLoop 绑定。其子类 EPollPoller 实现了基于 epoll 的具体操作,包括事件等待、Channel 更新和删除等。通过工厂方法可创建默认的 Poller 实例,实现多态调用。
256 60