目录
OSI 七层模型 的表格化总结,涵盖各层的 主要功能、协议 / 技术示例 及 典型设备 / 组件:
一、网络概述
1、网络的概念
两个不在同一地理位置的主机,通过传输介质和通信协议,实现通信和资源共享。
2、网络发展史
计算机网络发展的第一个阶段(60年代)
标志性的事件:ARPANET 关键技术:分组交换
计算机网络发展的第二个阶段(70-80年代)
标志性的事件:NSFNet 关键技术:TCP/IP
计算机网络发展的第三个阶段(90年代) 标志性的事件:浏览器Mosaic
关键技术:Web技术
3、网络的四要素
3.1传输介质:同轴线缆,光纤,双绞线,无线电波等 3.2通信协议:设备之间的语言,比如——eigrp,rip,OSPF,is-is,BGP,TCP,ip,ppp等
资源:数据,图片,视频,音频;
3.3终端:手机,笔记本,平板,台式机等
4、网络功能
4.1数据通信
4.2资源共享
4.3增加可靠性
4.4提高系统处理能力
5、网络类型
5.1WAN(Wide Area Network)广域网(外部网络)
5.1.1范围:几十到几千千米 5.1.2作用:用于连接远距离的计算机网络 5.1.3典型应用:Internet,MAN(Metropolitan Area Network)
5.2LAN(Local Area Network)局域网(内部网络)
5.2.1范围:1km左右 5.2.2作用:用于连接较短距离内的计算机 5.2.3典型应用:企业网,校园网
6、网络协议与标准
协议 :
语法 :多个对象之间协商的一个接口对象
语义 :解释控制信息每个部分的意义。它规定了需要发出何种控制信息,以及完成的动作与做出 什么样的响应。
同步 :以多字节或多比特组成的数据块为传送单位,仅在帧的起始处同步,帧内维持固定的时 钟。
标准:大家一致认同的协议
7、网络中常见概念
概念 | 说明 |
---|---|
主机 | 也称终端系统,任何一种能够连接网络的设备。 |
路由器 | 由物理链路(同轴电缆、双绞线、光纤等)连接到一起组成的一种物理通 路。 |
路由器 | 和链路层交换机一样,都属于交换机,主要用于转发数据。 |
分组 | 当一台端系统向另外一台端系统发送数据时,通常会将数据进行分片,然后为每段加上首部字节,从而形成分组。这些分组通过网络发送到端系统,然后再进行数据处理。 |
路径 | 一个分组所经历的一系列通信链路和分组交换机称为通过这个网络的路径。 |
因特网服务商 | ISP。网络运营商,联通、移动等。 |
网络协议 | 计算机网络中为进行数据交换而建立的规则、标准或者约定。 |
IP | 网际协议。规定了路由器和端系统之间发送和接收的分组格式。 |
TCP/IP协议 | 以TCP、IP协议为主的一系列协议。ICMP协议、ARP协议、UDP协议、DNS协议、SMTP协议等。 |
套接字接口 | 指的就是socket接口,规定了端系统之间通过因特网进行数据交换的方式。 |
协议 | 协议定义了两个以上通信实体之间交换报文格式和顺序所遵从的标准。 |
丢包 | 在计算机网络中是指分组出现丢失的现象。 |
吞吐量 | 单位时间内成功传输数据的数量 |
IP地址 | 网络协议地址,在互联网中唯一标识主机的一种地址。每台入网的设备都有一个IP地址,又分为内网IP和公网IP。 |
端口号 | 在同一台主机内,端口号用于标识不同应用程序进程。 |
URl | uniform resource identifier,统一资源标识符 |
URL | uniform resource locator,统一资源定位符,URI的子集。 |
HTML | hyper text markup language,超文本标记语言。一种用于创建网页的标准标记语言,通过一系列标签将网络上的文档格式统一,使分散的Internet资源连接为一个逻辑整体。 |
web页面 | web page,由页面上的很多对象组成。 |
web服务器 | web server,可以向浏览器等web客户端提供文档,也可以放置网站文件、数据文件、供全世界浏览和下载。主流的有Apache、Nginx、IIS。 |
webservice | 一种跨编程语言和操作系统平台的远程调用技术。 |
CDN | content delivery network,内容分发网络。应用了http协议里的缓存和代理技术,代替源站响应客户端的请求。CDN是构建在现有网络基础之上的网络,它依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块、使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。 |
WAF | 一种应用程序保护系统,它是一种通过执行一系列针对HTTP/ HTTPS的安全策略来专门为Web应用提供保护的一款产品,它是应用层面的防火墙,专门检测HTTP流量,是防护 Web 应用的安全技术。 |
HTTP | hypertext transfer protocol,超文本传输协议。是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范。 |
SMTP协议 | 提供电子邮件服务的协议。主要用于系统之间的邮件新仙尼传递,并提供有关来信的通知。 |
DNS协议 | 用于把人类易于记忆的网络地址名称映射为主机能够识别的IP地址。 |
TELNET协议 | 远程登录协议,允许用户(Telnet客户端)通过一个协商过程来与一个远程设备进行通信,它为用户提供了在本地计算机上完成远程主机工作的能力。 |
SSH协议 | SSH是一种建立在应用层上的安全加密协议。因为TELNET在主机和远程主机的发送数据包的过程中是明文传输,未经任何安全加密,容易被网上不法分子嗅到数据包来搞事情。为了数据的安全性,一般会用SSH进行远程登录。 |
FTP协议 | 文件传输协议,是应用层协议之一。包括FTP服务器和FTP客户端。用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。FTP协议传输效率很高,一般用来传输大文件。 |
单向数据传输 | 数据的流向只能是单向的,也就是从发送端到接收端。 |
双向数据传输 | 数据流向是双向的,又叫全双工通信。 |
面向连接的 | 指应用进程在向另一个应用进程发送数据前,需要先进行握手,即它们必必须相互发送预备报文段,用来建立确保数据传输的参数。 |
三次握手 | TCP连接的建立需要经过三个报文段的发送,这种连接的建立过程被称为三次握手。 |
四次挥手 | TCP断开连接需要经过四个报文段的发送,这种断开过程是四次挥手。 |
IPv4 | 网际协议的第四个版本,使用32位的地址。 |
IPv6 | 网际协议的第六个版本,IPv6的地址长度为128位。IPv6的使用,解决了网络资源地址数量的问题,也解决了多种接入设备连入互联网的障碍。 |
接口 | 主机和物理链路之间的边界。 |
ARP协议 | 一种解决地址问题的协议。通过IP位线索,可以定位下一个用来接受数据的网络设备的MAC地址。如果目标主机和主机不在同一个链路上时,可以通过ARP查找下一条路由的地址。ARP只适用于IPv4。 |
RARP | 将ARP反过来,通过MAC地址定位IP地址的一种协议。 |
代理ARP | 用于解决ARP包被路由器隔离的情况,通过代理ARP可以实现将ARP请求转发给临近的网段。 |
ICMP协议 | Internet报文控制协议。如果在IP通信过程中由于某个IP包由于某种原因未能到达目标主机,那么将会发送ICMP消息,ICMP实际上是IP的一部分。 |
DHCP协议 | 一种动态主机配置协议。使用DHCP就能实现自动设置IP地址、统一管理IP地址分配,实现即插即用。 |
NAT协议 | 网络地址转换协议。指所有本地地址的主机在接入网络时,都需要在NAT路由器上将其转换成全球IP地址,才能和其他主机进行通信。 |
IP隧道 | 由路由器把网络层协议封装到另一个协议中从而跨过网络传输到另外一个路由器的过程。 |
单播 | 1对1发送信号。例如早期的固定电话。 |
广播 | 主机和与他连接的所有端系统相连,主机将信号发送给所有的端系统。 |
多播 | 与广播类似,不同在于多播需要限定在某一组主机作为接收端。 |
任播 | 在特定的多台主机中选出一个接收端的通信方式。 |
IGP | 内部网关协议,一般用于企业内部自己搭建的路由自治系统。 |
EGP | 外部网关协议,通常用于在网络主机之间相互交换路由信息。 |
MPLS | 一种标记交换技术,会对每个IP数据包都设定一个标记,然后根据这个标记进行转发。 |
MAC协议 | 媒体访问控制协议,规定了帧在链路上传输的规则。 |
以太网 | 以太网是一种当今最普遍的局域网技术,它规定了物理层的连线、电子信号和MAC协议的内容。 |
VLAN | 虚拟局域网是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及应用等因素将他们组织起来,相互之间的通信就好像它们在同一个网段中一样,所以称为虚拟局域网。 |
基站 | 无线网络的基础设施 |
8、网络拓扑结构
拓扑 : 优点 :易于实现 、易于网络扩展 、易于故障排查
缺点:中心节点压力大
网型拓扑 : 各个节点至少与其他两个节点相连
可靠性高、组网成本也高
二、网络模型
1、分层思想
1.1、概述
分层思想的核心理念是将复杂的系统或问题划分为多个独立的、相互关联的层级,每个层级有不同的功 能和责任。这种分层的方式可以使系统或问题更具结构化和可管理性,简化设计和实施过程,并提高系 统或问题的可扩展性和互操作性。
1.2、核心理念
模块化:将系统或问题划分为多个模块或层级,每个层级负责特定的功能,模块之间相互独立但也 相互关联。这样可以降低复杂度,使系统设计更加清晰和可扩展。
抽象性:每个层级都对其他层级提供特定的抽象接口,屏蔽了底层实现的复杂性,使各层级之间的 交互更加简化和统一。这样可以提高代码的可维护性和可重用性。
松耦合:每个层级之间通过抽象接口进行交互,层级之间的耦合度尽可能地降低,使得各个层级可 以独立地进行修改和演变。这样可以使系统更具灵活性和可扩展性。
可替换性:由于每个层级之间的耦合度较低,所以可以灵活地替换或添加新的功能层级,而不需要 对其他层级进行修改。这样可以使系统更容易适应变化的需求和技术。
2、OSI七层模型 (重点)
定义:它将网络通信分为 7 个层次,每层负责特定功能,层间通过接口交互,降低了网络设计的复杂度。
1、 应用层
Application Layer
,直接面向用户和应用程序,负责提供具体的网络服务和应用功能。它定义了应用程序如何通过网络交换数据、处理业务逻辑,并与用户直接交互。应用层的核心目标是解决用户实际需求,例如文件传输、网页浏览、电子邮件、实时通信等,无需关心底层网络协议的技术细节(如数据如何封装、路由如何选择等)。
作用:
应用层为用户提供网络应用和服务,如电子邮件、文件传输、远程登录等。应用层负责处理高层应用程 序之间的通信,满足用户的需求,提供与用户的接口
整理:
-
应用层为用户提供网络应用和服务,如电子邮件、文件传输、远程登录等”,表明应用层是直接面向用户的,为用户提供各种具体的网络应用和服务,像电子邮件方便用户收发信件,文件传输可实现文件在不同设备间传送,远程登录能让用户操控远程计算机。
-
“应用层负责处理高层应用程序之间的通信”,说明应用层在多个高层应用程序交互时发挥关键作用,保障它们之间能顺利进行信息交流。
-
“满足用户的需求,提供与用户的接口”,意味着应用层以满足用户使用网络的需求为目的,并且提供了用户与网络应用交互的途径,比如用户通过各类应用程序的界面(APP 界面、网页界面等),就可以利用应用层提供的服务。
数据封装与解封装过程:
在发送端,应用层会将数据分割成合适的格式,如HTTP请求或SMTP邮件等。接收端则根据应用层的首 部信息,将数据还原为原始格式。这就是应用层的解封装过程。
2、 表示层
Presentation Layer
主要负责数据格式的转换、加密解密和压缩解压缩,确保不同系统之间传输的数据能够被对方正确理解和处理。其核心功能是解决异构系统间的数据表示差异,让应用层无需关心底层数据格式的细节,专注于业务逻辑。
作用:
表示层负责处理数据的表示方式。它将数据从应用程序格式转换为网络格式,并提供数据压缩、加密等 服务。表示层还会根据不同的应用需求,对数据进行分组或割。定义传递信息的语法和语义,编码和 解码、压缩解压缩、加密解密 。
整理与扩展:
-
数据格式转换(Format Conversion)
-
将应用层的原始数据(如文本、图像、音频等)转换为适合网络传输的标准格式,或从网络格式转换为目标系统的本地格式。
-
典型场景:
-
不同操作系统的文本编码转换(如 Windows 的 ANSI 与 Linux 的 UTF-8 互转)。
-
图像格式转换(如 JPEG 转 PNG,BMP 转 GIF)。
-
二进制数据与文本的互转(如 JSON/XML 序列化与反序列化)。
-
-
-
数据加密与解密(Encryption/Decryption)
-
对传输数据进行加密处理,防止敏感信息在网络中被窃取或篡改,到达目标端后再解密还原。
-
常用算法:
-
对称加密(如 AES、DES)用于高效加密大量数据。
-
非对称加密(如 RSA)用于密钥交换和数字签名。
-
-
应用场景:HTTPS 协议通过 TLS/SSL 在表示层实现数据加密(OSI 模型中 TLS/SSL 可视为表示层功能的一部分)。
-
-
数据压缩与解压缩(Compression/Decompression)
-
通过算法减少数据体积,降低网络传输带宽消耗,接收端再解压缩恢复原始数据。
-
常用算法:
-
无损压缩(如 ZIP、DEFLATE,适用于文本、程序文件)。
-
有损压缩(如 JPEG、MP3,适用于多媒体数据)。
-
-
作用:提升文件传输效率(如邮件附件压缩)、优化流媒体传输性能(如视频流的 H.264 压缩)。
-
-
语法协商(Syntax Negotiation)
-
在通信双方建立连接时,协商数据传输所使用的格式、编码、加密算法等参数,确保双方支持相同的表示规则。
-
示例:FTP 协议在传输文件前会协商文件类型(二进制或文本),HTTP/2 通过头部字段协商压缩算法(如 HPACK)。
括:加密与安全协议
-
表示层负责实现加密逻辑,常见协议包括:
-
TLS/SSL(传输层安全协议,实际应用中常被归类为表示层功能)。
-
PGP(Pretty Good Privacy,用于邮件加密)。
-
-
-
数据封装与解封装过程:
在发送端,表示层会对数据进行必要的处理,如分割、压缩、加密等。接收端则需要根据表示层的首部 信息,将数据还原为原始格式。这就是表示层的解封装过程。
表示层与应用层的区别
特性 | 表示层 | 应用层 |
---|---|---|
核心目标 | 解决数据格式、加密、压缩等 “表示” 问题 | 提供具体的应用服务(如 HTTP、FTP、邮件) |
数据处理阶段 | 在数据进入网络前转换格式 / 加密,或接收后还原 | 直接处理应用逻辑数据(如解析 HTTP 请求、生成邮件内容) |
独立性 | 与具体应用无关,专注于通用数据表示 | 依赖具体应用场景(如浏览器解析 HTML 属于应用层功能) |
典型技术 | ASN.1、TLS、ZIP 压缩 | HTTP、SMTP、FTP 协议 |
3、会话层
Session Layer
位于传输层之上、表示层之下,主要负责建立、管理和终止应用程序之间的会话连接,并协调通信双方的交互流程。其核心功能是在端到端的传输连接基础上,为上层应用提供会话同步、会话管理、断点续传等机制,确保分布式应用之间高效、有序地通信。
作用 :
-
会话连接的建立与管理
-
在传输层建立的端到端连接(如 TCP 连接)之上,创建逻辑会话通道,实现应用进程间的对话控制。
-
支持单工(单向通信)、** 半双工(交替双向通信)和全双工(同时双向通信)** 三种通信模式。
-
例如:数据库远程访问(如 SQL 会话)、网络远程登录(如 SSH、Telnet)等场景需通过会话层管理连接状态。
-
-
会话同步与检查点
-
在长数据传输过程中插入同步点(Checkpoint),将数据划分为多个逻辑段,确保通信中断后可从最近的同步点恢复,避免从头重传。
-
典型应用:文件传输协议(如 FTP)通过会话层同步机制实现断点续传,减少网络资源浪费。
-
-
会话流量控制与对话管理
-
控制通信双方的
数据发送顺序和权限例如:
-
半双工模式下,通过 “令牌(Token)” 机制确保同一时刻只有一方拥有数据发送权(类似对讲机的 “按键说话”)。
-
全双工模式下,通过流量控制机制协调双向数据的传输速率,避免缓冲区过载。
-
-
-
会话终止
-
提供有序释放(Graceful Release)和强制释放(Abrupt Release)** 两种会话终止方式:
-
有序释放:双方确认所有数据传输完毕后正常断开会话(如 TCP 的四次挥手可视为会话层逻辑的简化实现)。
-
强制释放:立即中断会话(可能导致未传输数据丢失,仅用于紧急情况)。
-
-
数据封装与解封装过程 :
在发送端,会话层会为数据添加一些会话控制信息,如会话标识符、状态等。接收端则通过识别这些信息,将它们从数据中提取出来,并传递给下一层。这就是会话层的解封装过程。
会话层与传输层的区别
特性 | 传输层 | 会话层 |
---|---|---|
核心目标 | 确保端到端的数据可靠传输(如 TCP/UDP) | 管理应用进程间的会话逻辑(如连接生命周期、交互流程) |
作用范围 | 建立 “主机进程到主机进程” 的通信链路 | 在传输层连接之上建立 “应用会话” 的逻辑抽象 |
可靠性 | 通过校验和、重传等机制保证数据完整性 | 不直接处理数据可靠性,依赖传输层或应用层实现 |
典型协议 | TCP、UDP | ISO 8327、X.225(实际应用较少,功能被上层吸收) |
4、传输层
Transport Layer
主要负责端到端(End-to-End)的通信,确保数据在源主机和目标主机的进程之间可靠、高效地传输。其核心功能是为上层应用提供逻辑通信信道,屏蔽网络层以下的通信细节(如物理介质差异、路由选择等),并解决数据传输中的分段与重组、流量控制、差错控制、连接管理等问题。
作用 : 传输层为应用层提供端到端的数据传输服务。它负责将数据分割成更小的单元,如TCP或UDP数据(报
文)段,并确保它们按照正确的顺序传输到目的地。传输层还负责处理流量控制和错误恢复等问题。用 户进程间的通信,承上启下
整理:
-
提供端到端数据传输服务:传输层为应用层的数据传输提供了从发送端到接收端的完整通道,确保数据能准确无误地从一个应用程序传输到另一个应用程序。
-
数据分割:将来自应用层的大数据分割成适合网络传输的更小单元,常见的如 TCP(传输控制协议)或 UDP(用户数据报协议)的数据(报文)段,以利于在网络中高效传输。
-
确保顺序传输:保证这些分割后的小段数据能按照正确的顺序到达目的地,避免数据乱序给应用层处理带来问题。
-
处理流量控制:当发送方发送数据过快,而接收方处理能力有限时,传输层通过流量控制机制,防止接收方因来不及处理数据而导致数据丢失。
-
处理错误恢复:如果在数据传输过程中出现错误,如数据丢失、损坏等,传输层负责采取相应措施恢复数据,确保数据的完整性和准确性。
-
用户进程间通信,承上启下:传输层实现了不同用户进程之间的通信,对上承接应用层的需求,为应用层提供可靠或不可靠的数据传输服务;对下依赖网络层等更低层的功能,将数据在网络中进行传输。
例如,在使用浏览器访问网页时,浏览器进程作为应用层程序,向服务器请求网页数据。传输层将浏览器发送的请求数据分割成 TCP 或 UDP 报文段,通过网络传输到服务器。服务器接收到这些报文段后,传输层再将其按正确顺序组装还原为原始数据交给服务器上对应的应用程序。如果在传输过程中出现数据丢失,传输层会尝试重发丢失的数据。同时,若服务器处理能力有限,传输层会通知浏览器减慢发送速度,这就是流量控制。
数据封装与解封装过程 : 在发送端,传输层将为数据添加TCP或UDP的首部,包含序列号、确认号等信息。接收端则通过识别这些信息,将它们从数据段中提取出来,并传递给下一层。这就是传输层的解封装过程。
扩展:
传输层的主要功能
-
分段与重组(Segmentation and Reassembly)
-
将应用层的大块数据分割成适合网络层传输的数据段(Segment),并在接收端重组为完整数据。
-
例如:TCP 将应用数据分割为 TCP 段,UDP 直接封装应用数据为 UDP 数据报。
-
-
端到端的寻址(Port Addressing)
-
通过 ** 端口号(Port Number)** 标识目标主机上的具体应用进程(如 HTTP 默认端口 80、FTP 默认端口 21),实现 “进程到进程” 的通信。
-
端口号范围:0~65535,其中 0~1023 为知名端口(预留给常见服务),1024~49151 为注册端口,49152~65535 为动态端口。
-
-
流量控制(Flow Control)
-
防止发送方发送数据过快,导致接收方缓冲区溢出。
-
典型机制:
-
滑动窗口协议(TCP 采用):接收方通过告知发送方 “剩余接收窗口大小” 来限制发送速率。
-
停止等待协议:发送方每发一个数据段,等待接收方确认后再发下一个(简单但效率低)。
-
-
-
差错控制(Error Control)
-
检测并纠正传输过程中的数据错误,确保数据完整性。
-
主要手段:
-
校验和(Checksum):对数据段计算校验值,接收端验证是否一致(如 TCP/UDP 均使用校验和)。
-
重传机制:若数据丢失或出错,接收方请求发送方重传(TCP 通过序列号和确认应答实现)。
-
-
-
连接管理(Connection Management)
-
对于面向连接的协议(如 TCP),负责建立、维护和释放端到端的逻辑连接。
-
典型流程:
-
三次握手(Three - Way Handshake)建立连接:发送方 SYN→接收方 SYN+ACK→发送方 ACK。
-
四次挥手(Four - Way Wavehand)释放连接:双方各自确认数据传输完毕后断开连接。
-
-
二、传输层的核心协议
传输层主要有两大协议:TCP(传输控制协议)*和*UDP(用户数据报协议),二者在特性和应用场景上差异显著。
特性 | TCP(面向连接) | UDP(无连接) |
---|---|---|
连接特性 | 需建立逻辑连接(三次握手),通信结束后释放连接 | 无需建立连接,直接发送数据报 |
可靠性 | 可靠传输(保证数据按序到达,重传丢失数据) | 不可靠传输(不保证到达,无重传机制) |
数据单位 | 数据段(Segment) | 数据报(Datagram) |
传输效率 | 较低(因需要确认、流量控制等机制) | 较高(无额外开销,适合实时传输) |
流量控制 | 支持(滑动窗口协议) | 不支持 |
拥塞控制 | 支持(慢启动、拥塞避免等算法) | 不支持 |
典型应用 | HTTP、HTTPS、FTP、SMTP、POP3 等 | DNS、DHCP、VoIP、视频流、实时游戏等 |
三、传输层与网络层的区别
-
作用范围
-
网络层:负责主机到主机的通信,通过 IP 地址寻址,解决网络间的路由问题(如 IP 协议)。
-
传输层:负责进程到进程的通信,通过端口号寻址,解决端到端的数据传输质量问题。
-
-
可靠性
-
网络层提供 “尽力而为” 的不可靠传输(不保证数据到达);
-
传输层可通过 TCP 实现可靠传输,或通过 UDP 维持不可靠传输(由应用层决定是否需要可靠性)。
-
-
协议数量
-
网络层主要依赖 IP 协议;
-
传输层有 TCP 和 UDP 两种协议,分别适配不同的应用需求。
-
四、传输层的重要性
-
抽象上层应用:为应用层提供统一的通信接口,隐藏底层网络细节(如不同网络的 MTU 差异)。
-
保障通信质量:通过流量控制、差错控制等机制,确保数据在复杂网络环境中稳定传输。
-
支持多业务场景:TCP 和 UDP 的分工使网络既能承载需要可靠性的业务(如文件传输),也能承载实时性要求高的业务(如视频会议)。
总之,传输层是连接 “网络通信” 与 “应用需求” 的桥梁,其设计直接影响网络应用的性能和用户体验。
5、 网络层
Network Layer
它主要负责将网络传输的数据进行分组,并为这些分组选择合适的路径,以实现不同网络之间数据的传输和路由。简单来说,就如同城市交通系统中规划路线的部门,负责决定数据包从源端到目的端该走哪条 “路”。例如,当你在手机上访问一个国外网站时,网络层会规划数据从你手机所在网络到目标网站服务器所在网络的最佳传输路径。它在网络通信中起着关键作用,能够确保数据准确、高效地在不同网络节点间传输。
作用 : 网络层负责在整个网络中选择和定位传输路径,处理分组的传输和路由问题。它主要负责IP地址的解析和 路由信息的获取,以便将数据从一个网络传输到另一个网络。数据包封装结构,源和目的方的逻辑地址 (IP地址),根据包头的逻辑地址选路
整理:
-
路径选择与传输处理:网络层承担着在整个网络范围内挑选合适传输路径以及确定其位置的任务,同时处理分组数据的传输过程与路由相关问题。比如,在互联网中,数据从一台计算机传送到另一台,可能有多条路径,网络层要从中选择最优路径。
-
IP 地址解析与路由信息获取:它的主要工作包括对 IP 地址进行解析,以及获取路由相关信息,其目的是实现数据在不同网络之间的顺利传输。举例来说,当数据要从校园网传送到外网服务器时,网络层要解析目标服务器的 IP 地址,并获取到如何到达该服务器的路由信息。
-
数据包封装与选路:上文中的数据包封装结构,源和目的方的逻辑地址(即 IP 地址),并且强调根据包头的逻辑地址来进行选路。例如,每个数据包都有包头,包头里包含源 IP 地址和目的 IP 地址,网络层依据这些 IP 地址来决定数据包该往哪个方向传输。
数据封装与解封装过程: 发送端网络层会将数据分割成更小的单元,如IP数据包,并为每个数据包添加一些额外的信息,如IP地址、校验 和等。接收端则通过识别这些信息,将它们从数据包中提取出来,并传递给下一层。这个过程就是网络 层的解封装过程。
6、 数据链路层 Data Link Layer
作用 (功能):
在相邻节点间传输数据帧,处理物理层的传输错误,通过差错控制(检错、纠错)和流量控制确保数据可靠传输。在数据封装和解封装过程中,数据链路层主要负责添加和删除数据帧的 首部和尾部。数据帧封装结构,源和目的方的物理地址(MAC),数据校验功能
整理作用:
-
数据传输与错误处理:在相邻节点间进行数据帧的传输,同时要处理物理层可能出现的传输错误。具体通过差错控制(包括检测错误和纠正错误)以及流量控制的方式,来保障数据能够可靠地传输。比如在网络传输中,可能会因为信号干扰等物理因素导致数据出错,数据链路层就负责发现并修正这些错误,同时避免发送方发送数据过快,接收方来不及处理。
-
数据封装与解封装:在数据封装和解封装过程里,数据链路层的主要职责是添加和删除数据帧的首部与尾部。例如,当数据从上层传下来准备发送时,数据链路层会给数据加上特定的首部和尾部信息,形成完整的数据帧。接收方收到数据帧后,数据链路层再把首部和尾部去掉,将数据交给上层。
-
数据帧结构相关:数据帧的封装结构里包含源和目的方的物理地址(即 MAC 地址),这就好比是收发信件时的发件人和收件人的地址,用于在网络中准确找到通信的双方。同时还具备数据校验功能,通过特定算法对数据进行校验,确认数据在传输过程中没有出错,保证数据的完整性。
数据封装与解封装过程 :
在发送端,数据链路层将数据分割成多个数据帧,并为每个数据帧添加首部和尾部。这些首部和尾部包 含了用于传输控制和错误检测的信息。接收端则通过识别这些首部和尾部,将它们从数据帧中提取出 来,并传递给下一层。这就是数据链路层的解封装过程。
整理:
-
在发送端,数据链路层会把数据划分成一个个数据帧,同时给每个数据帧都添加首部和尾部。这里的首部和尾部承载着对传输控制和错误检测起到关键作用的信息,比如可能包含目的地址、源地址、校验码等信息,目的地址用于确定数据要发往何处,校验码可用于检测数据在传输过程中是否出错。(在发送端” 指的是在信息、数据或信号传输过程中,负责将相关内容主动发出的那一端。例如在网络通信里,用户通过电脑向服务器上传文件,此时用户的电脑就处于发送端,它将文件数据发送出去;在无线电广播系统中,广播电台把音频信号通过发射设备发送出去,广播电台就是发送端。总之,发送端是整个传输流程中起始发出信息的一方。)
-
在接收端,会执行解封装过程,也就是通过识别数据帧的首部和尾部,将它们从数据帧中分离出来,然后把处理后的数据传递给下一层。例如,假设接收端收到一个数据帧,先根据特定规则识别首部和尾部,去除这些部分后,把剩下的有效数据传递给网络层等下一层进行后续处理。
7、物理层 (最底层)
物理层是 OSI 参考模型的最底层,主要负责在物理传输介质上实现比特流的透明传输。
Physical Layer
作用 :
物理层负责在计算机之间传输原始的比特流。定义硬件设备、传输介质(如电缆、光纤)、信号类型(电信号、光信号)和物理接口标准(如 RJ45、USB),以及数据在传输 媒介上的传输方式。在数据封装和解封装过程中,物理层主要负责比特流的传输和接收。如何使用物理 信号来表示数据1和0,数据传输是否可同时在两个方向上进行,通信双方如何建立和中止连接,物理接 口特性 。
特性:
机械特性(Mechanical Characteristics)
定义:规定物理接口的机械结构和尺寸,包括接口的形状、引脚数量、排列方式、固定装置等。 作用:确保不同厂商的硬件设备能够物理连接并兼容。 典型示例:
-
RJ45 接口(以太网常用):8 芯引脚呈梯形排列,适配网线水晶头。
-
USB 接口:A 型接口有 4 个引脚,B 型接口有 4~5 个引脚,不同版本(如 USB 2.0/3.0)的尺寸和引脚布局有差异。
-
光纤连接器(如 SC、LC 接口):明确插头的形状和卡扣结构,确保光纤精准对接。
规程特性(Procedural Characteristics)
定义:规定信号传输的操作流程和时序关系,包括通信的建立、维护和断开过程,以及信号传输的同步机制。 作用:确保通信双方按顺序协调工作,避免因时序混乱导致数据丢失或错误。 关键内容:
-
连接建立与释放:
-
如调制解调器(Modem)通过握手信号(如 RTS/CTS、DTR/DSR)建立连接:发送端请求发送(RTS),接收端确认清除发送(CTS)后开始传输数据。
-
-
同步机制:
-
异步传输:通过起始位和停止位实现字符同步(如串口通信)。
-
同步传输:通过时钟信号(如以太网的曼彻斯特编码)或同步字符(如 SDH 光传输)实现比特流同步。
-
-
错误检测与恢复:物理层可能通过简单机制(如电压校验)检测传输错误,但通常不负责纠错(纠错由数据链路层或高层协议处理)。
总结:物理层特性的核心目标
物理层的四大特性(机械、电气、功能、规程)从硬件接口、信号规则、功能定义到操作流程,全方位保障了比特流在物理介质上的可靠传输。它们是计算机网络底层通信的基础,也是不同厂商设备实现互连互通的关键技术规范
常见设备:
集线器(Hub)、中继器(Repeater)
数据封装与解封装过程:
在发送端,物理层将比特流添加到数据帧的首部,形成一个新的数据单元。这个过程就是数据封装。 在 接收端,物理层将这个数据单元的首部移除,并传递给下一层。这就是数据解封装。
OSI 七层模型 的表格化总结,涵盖各层的 主要功能、协议 / 技术示例 及 典型设备 / 组件:
层级 | 主要功能 | 协议 / 技术示例 | 典型设备 / 组件 |
---|---|---|---|
7. 应用层 | 为用户提供直接交互的应用程序接口,处理特定应用逻辑(如文件传输、邮件、远程登录等)。 | HTTP、HTTPS、FTP、SMTP、POP3、Telnet、DNS、SSH、NFS、SNMP | 应用程序(如浏览器、邮件客户端) |
6. 表示层 | 负责数据格式转换、加密解密、压缩解压缩,确保不同系统间的数据兼容性。 | ASCII、UTF-8、JPEG、PNG、MPEG、SSL/TLS、ZIP、RAR | 无特定设备(由应用或系统处理) |
5. 会话层 | 管理主机间的通信会话,包括会话建立、维护、同步和终止,确保会话有序进行。 | PPP(点到点协议)、NetBIOS、RPC(远程过程调用)、SQL(部分会话管理功能) | 无特定设备(由操作系统或中间件处理) |
4. 传输层 | 提供端到端的可靠或不可靠数据传输,处理流量控制、差错校验,分割 / 重组数据段。 | TCP(可靠传输,面向连接)、UDP(不可靠传输,无连接)、SPX(Novell 协议栈) | 网关(部分传输层功能) |
3. 网络层 | 负责网络间的逻辑寻址和路由选择,将数据包从源网络转发到目标网络(跨网段通信)。 | IP(IPv4/IPv6)、ICMP、IGMP、OSPF、BGP、RIP、ARP、RARP | 路由器、三层交换机 |
2. 数据链路层 | 实现相邻节点间的可靠数据传输,处理物理寻址、帧同步、差错检测和介质访问控制(MAC)。 | Ethernet(IEEE 802.3)、Wi-Fi(IEEE 802.11)、PPP、HDLC、FR(帧中继)、MAC 地址协议 | 交换机、网桥、网卡(MAC 层) |
1. 物理层 | 定义物理设备的电气、机械、功能和规程特性,实现比特流在物理介质上的透明传输。 | RS-232、USB、HDMI、EIA/TIA-568(以太网布线标准)、光纤传输标准(如 SDH、SONET) | 集线器、中继器、物理线缆(如双绞线、光纤) |
补充说明:
-
层间依赖关系: 上层(应用层、表示层、会话层)依赖下层(传输层及以下)提供的服务,下层为上层屏蔽底层技术细节。例如,传输层为应用层提供可靠的数据通道,网络层为传输层的数据段选择路由。
-
实际应用中的简化:
-
在 TCP/IP 协议栈 中,OSI 七层模型被简化为四层(应用层、传输层、网络层、网络接口层),合并了会话层、表示层与应用层,数据链路层和物理层归为网络接口层。
-
现代网络设备(如交换机、路由器)通常支持多层功能(如三层交换机同时处理数据链路层和网络层)。
-
-
关键区分点:
-
传输层:区分 “端到端” 通信(如两台主机上的进程间通信),TCP/UDP 是核心协议。
-
网络层:关注 “网络到网络” 的路由(如跨路由器的数据转发),IP 协议是核心。
-
数据链路层:处理 “节点到节点” 的直接通信(如同一局域网内的设备通信),MAC 地址是关键标识。
七者间的关系
OSI 七层模型中各层之间是 依赖与服务 的关系,下层为上层提供透明服务,上层依赖下层的功能实现。以下是各层之间的具体关系及交互逻辑:
层间依赖关系:下层为上层提供服务
上层 依赖的下层服务 示例 应用层 依赖表示层的数据格式处理和会话层的会话管理。 浏览器(应用层)通过表示层解析 HTML/JSON 格式,通过会话层维持用户登录状态。 表示层 依赖会话层的会话连接,通过传输层实现数据传输。 加密数据(表示层)通过会话层建立的连接,经传输层分段后发送。 会话层 依赖传输层的端到端通信能力,通过网络层实现跨网络的会话连接建立。 远程桌面(会话层)通过传输层的 TCP 连接,经网络层路由到目标主机。 传输层 依赖网络层的路由功能,通过数据链路层实现相邻节点的数据传输。 TCP 数据包(传输层)由网络层封装为 IP 数据报,经数据链路层封装为帧后在物理介质传输。 网络层 依赖数据链路层的帧传输能力,通过物理层实现比特流传输。 IP 数据报(网络层)由数据链路层封装为以太网帧,经物理层的双绞线 / 光纤发送。 数据链路层 依赖物理层的比特流传输,将数据组织为帧并实现相邻节点的可靠传输。 以太网帧(数据链路层)通过物理层的电气信号(如高低电平)在网线中传输。 物理层 无下层依赖,直接与物理介质交互,是所有上层的数据传输基础。 光纤(物理层)通过光信号传输比特流,为数据链路层提供透明传输通道。 数据传输的双向流程
1. 发送端:从上到下逐层封装
应用层数据 → 表示层(格式转换/加密) → 会话层(添加会话标识) → 传输层(分割为段,添加TCP/UDP头) → 网络层(封装为包,添加IP头) → 数据链路层(封装为帧,添加MAC头) → 物理层(转换为比特流)→ 物理介质传输
-
关键动作:每一层接收上层数据后,添加本层协议头部(有时包含尾部),形成本层的协议数据单元(PDU)。
2. 接收端:从下到上逐层解封装
物理层接收比特流 → 数据链路层(剥离MAC头,校验帧)→ 网络层(剥离IP头,路由判断)→ 传输层(剥离TCP/UDP头,重组段)→ 会话层(恢复会话状态)→ 表示层(解密/转换格式)→ 应用层(交付用户程序)
-
关键动作:每一层剥离本层协议头部,校验数据完整性,将 “净荷”(Payload)传递给上层。
核心交互逻辑
-
对等层通信(逻辑上的直接交互) 虽然数据实际通过下层逐跳传输,但 对等层之间通过协议实现逻辑通信。例如:
-
发送端应用层与接收端应用层通过 HTTP 协议 “对话”,但实际数据需经下方六层传递。
-
对等层协议定义了数据格式和交互规则(如 TCP 的序列号 / 确认机制)。
-
-
透明性原则 上层无需关心下层技术细节。例如:
-
应用层程序(如微信)无需知道数据是通过 Wi-Fi(无线链路层)还是光纤(物理层)传输的,只需调用传输层接口发送数据。
-
-
错误处理的分层机制
-
物理层 / 数据链路层:处理物理介质的比特错误(如 CRC 校验、重传帧)。
-
传输层:处理端到端的错误(如 TCP 的超时重传、流量控制)。
-
应用层:处理语义错误(如 HTTP 404 错误、邮件发送失败提示)。
-
类比理解:以快递运输为例
OSI 层 快递类比 对应关系 应用层 用户(寄件人 / 收件人) 决定寄件内容(如文件、物品),对应具体应用需求。 表示层 包装公司(将物品装箱、标注易碎品) 转换数据格式(如压缩文件、加密内容),确保接收方可用。 会话层 物流公司客服(记录订单状态、追踪物流) 管理通信会话(如建立连接、维持会话状态)。 传输层 运输路线规划(选择陆运 / 空运,确保包裹完整到达) 选择传输方式(TCP/UDP),处理端到端可靠性(如 TCP 的 “包裹签收” 机制)。 网络层 交通枢纽(分拣中心按地址分配路线) 路由选择(如 IP 地址寻址、跨路由器转发)。 数据链路层 城市内运输(同一区域内的货车配送) 相邻节点通信(如同一局域网内的交换机转发帧)。 物理层 公路 / 铁路 / 航线(物理运输介质) 物理介质传输(如网线、光纤传递比特流)。 总结:七层模型的设计目标**
-
分层解耦:各层功能独立,便于单独设计和优化(如更换物理层介质不影响应用层)。
-
标准化接口:层间接口标准化,支持不同厂商设备互联(如任意品牌路由器支持 IP 协议)。
-
灵活性与扩展性:新增应用(如 HTTPS)只需修改应用层 / 表示层,无需改变底层架构。
通过这种分层协作,OSI 模型实现了复杂网络系统的模块化设计,成为理解现代网络架构的基础。
-
3、TCP/IP五层模型
1、应用层
协议 :
HTTP | HTTPS :超文本传输协议
检测端口号 80/tcp | 443/tcp
FTP :文件传输协议
检测端口号21/TCP
TFTP :简单文件传输协议
检测端口号69/UDP
DNS :域名解析协议
检测端口号 53/UDP
SMTP :邮件传输协议
检测端口号25/TCP
2、传输层
协议:
TCP :
传输控制协议
UDP :
用户数据报协议
3、 网络层
协议 :
ICMP :
控制报文协议 用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是 否可用等网络本身的消息。(ping命令)
IGMP :
Internet 组管理协议 组播协议 运行在主机和组播路由器之间
ARP :
地址解析协议 根据网络层IP数据包包头中的IP地址信息解析出目标硬件地址(MAC地址)信息,以保证通信 的顺利进行。
RARP :
反向地址转换协议 RARP发出要反向解析的物理地址并希望返回其对应的IP地址,应答包括由能够提供所需信息 的RARP服务器发出的IP地址。
IP :
代表所有协议
RIP :
动态路由协议
4、 数据链路层
协议 :
以太网(Ethernet)
无线局域网(Wi-Fi)
点对点协议(PPP)
5、物理层
协议 :
以太网(Ethernet)
无线局域网(Wi-Fi) 光纤通道(Fibre Channel)
4、数据的封装与解封装过程
4.1、PDU(Protocol Data Unit,协议数据单元)
数据段:segment
数据包:packet
数据帧:frame
比特流:bits
4.2、数据封装与解封装过程
TCP/IP 五层模型与对应设备
层次 | 功能概述 | 典型工作设备 | 设备功能细节 |
---|---|---|---|
应用层 | 为用户提供直接服务(如 HTTP、FTP、邮件等) | 终端设备(PC、手机、服务器、物联网设备等) | - 运行具体应用程序(如浏览器、邮件客户端) - 生成应用层数据(如 HTML、JSON) |
传输层 | 实现端到端的数据传输(TCP/UDP 协议) | 终端设备(同上) | - 封装数据为 “段”(Segment) - 处理端口号、可靠性传输(如 TCP 的确认机制) |
网络层 | 负责跨网络的路由和寻址(IP 协议) | 路由器(Router)、三层交换机 | - 根据 IP 地址进行路由转发 - 实现不同网络(如不同子网、广域网)的互联 - 处理 IP 数据报分片 |
数据链路层 | 实现相邻节点间的数据帧传输(以太网、Wi-Fi 等协议) | 交换机(Switch)、网桥(Bridge)、网卡(NIC) | - 基于 MAC 地址转发数据帧 - 错误检测(CRC 校验) - 物理地址寻址(如 ARP 协议) |
物理层 | 定义物理介质的电气 / 机械特性,传输比特流(0/1 信号) | 集线器(Hub)、中继器(Repeater)、物理介质(网线、光纤、无线 AP) | - 放大 / 中继信号(Hub / 中继器) - 转换数字信号为物理信号(如电信号、光信号) |