网络初识相关

一、协议分层结构(TCP/IP分层模型)

1、协议是什么?

++在网络通信中,协议就是规定了双方的数据传输格式的一种"约定"。++

比如,市面上有很多种类的手机充电线,但是为什么买回来能够给对应的手机充电,因为充电线厂家和手机厂家约定了充电头和手机充电口的类型。

2、为什么要协议分层

协议本身特别复杂,包含很多信息,将协议分层后,++可以使协议更加简单易理解,同时实现了解耦合协议之间可以灵活替换++

3.TCP/IP分层模型

相较于osi七层模型,TCP模型为五层(真实情况)

物理层:

网络通信中所依赖的的硬件设备,比如网线,光纤,天线...

负责将数据转换为物理信号(电信号、光信号、无线信号)在介质上传输。

++核心是将比特流(0/1)转换成物理信号并传输++

数据链路层:

负责同一链路中相邻节点之间的通信,进行数据成帧、介质访问控制和差错检测。

网络层:

负责确定数据从源到目的地的路径(路由),通过IP 地址实现跨网络的数据转发。

运输层:

只关心源主机到目标主机的可靠或高效传输,通过端口区分不同应用程序,提供 TCP(可靠)和 UDP(快速)两种服务。

应用层:

包含三个要素:协议规范(定义数据格式)、接口(内核提供的 Socket)、协议解析(应用程序负责实现)。

注意这五层并不是一个协议,而是一个"协议栈"

五层模型是一个架构,每一层都有自己的协议(或协议族),这些协议纵向叠起来,共同完成网络通信功能。


二、交换机,路由器所在分层

1、****++交换机负责数据链路层和物理层,也就是TCP模型的下两层++

解释:

交换机工作在数据链路层,但它也依赖物理层(网口、电信号收发),所以通常说它实现了下两层

交换机根据MAC 地址 转发数据帧,不关心 IP 地址,更不关心应用层内容。

2、++路由器负责网络层,数据链路层和物理层,也就是TCP模型的下三层++

解释:

路由器是三层设备,核心功能在网络层(根据 IP 地址选路)。

但要处理 IP 包,它必须先:在物理层接收电/光信号 。

在数据链路层提取出帧(涉及 MAC 地址)在网络层解出 IP 包,查路由表决定从哪个接口发出去

转发时,又要重新封装链路层和物理层信息

3、++操作系统内核实现了从传输层到物理层,即TCP模型的下四层++。

应用程序只需调用++内核提供的 Socket 接口++,即可完成网络通信,无需关心底层细节。

解释:

应用程序运行在用户态,只处理应用层(如 HTTP 解析)

当应用程序要发送数据时,调用 send() 等函数,

内核接管:

传输层:TCP/UDP 处理(分段、端口、可靠性)

网络层:添加 IP 头、路由选择 ◦

数据链路层:添加 MAC 头、封装成帧 ◦

物理层:通过网卡驱动发送信号

所以内核是下四层的具体实现者,应用层则由应用程序自己实现。

相关推荐
乘云数字DATABUFF3 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
荣--5 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森5 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜6 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
SelectDB7 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
zzzzzz3108 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode8 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220709 天前
如何搭建本地yum源(上)
运维
大树8812 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠12 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql