当前位置:网站首页>使用TCP/IP四层模型进行网络传输的基本流程
使用TCP/IP四层模型进行网络传输的基本流程
2022-07-07 02:18:00 【abs(ln(1+NaN))】
OSI七层模型将网络从逻辑上分成了7层,最主要的功能是实现了两台不同主机的通信。实际上OSI七层模型并不实用,我们一般使用其中的四层或者五层协议,四层的说法是 单纯的从软件方面来谈,我们需要了解四层,但是软件又是基于硬件,所以又有了五层的说法。
下面左半部分是七层模型,右半部分是四层模型,我们把这四层称为“TCP/IP五层(四层)模型”。这四层与计算机体系结构也有着一定的对应关系

目录
一、什么是协议
所谓的协议就是一种约定,一个宿舍有来自不同地方的人,如果大家只是各说各的方言,那根本无法沟通,此时有一个人提出建议,大家都说普通话,达成这个约定以后,大家就可以正常通信了。
站在网络的角度,在传输层有TCP和UDP协议,这个约定的是选择有连接传输还是无连接传输。
二、TCP/IP五层(四层)模型
TCP/IP是一组协议的代名词,你可以理解为几乎每一层都有自己的协议。
- 应用层:负责应用程序之间的沟通,如简单电子邮件传输协议(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)。
- 传输层:决定两台主机之间以什么样的方式进行的数据传输,如传输控制协议(TCP)。
- 网络层:负责地址管理和路由选择。可以理解为要走哪条路来传输数据到对方主机。例如在IP协议中,通过IP地址来标识一台主机,并通过路由表的方式规 划出两台主机之间的数据传输的线路。路由器工作在该层。
- 数据链路层:负责设备之间的数据帧的传送和识别。例如冲突检测(如果检测到冲突,就自动重发)、数据差错校验等工作。交换机工作在数据链路层。
- 物理层:负责光/电信号的传递方式。我们常说的同轴电缆、光纤、wifi都属于该层的内容。可以简单理解为物理层的大多数内容都是有实体的。物理层决定了最大传输速率、抗干扰性等。集线器工作在物理层(将数据放大,降低数据损耗)。
三、网络传输的基本流程
你或许觉得,依然有点晦涩难懂,下面就以一个简单的例子来熟悉上面各层的作用,同时对网络传输有一个初步的了解。
网络传输可以看作是卖家和买家的关系,假设你从淘宝上买了一瓶洗发水,那么主机A的应用层就相当于卖家,主机B的应用层就相当于买家。

1、卖家(主机A)
(1) 应用层
卖家把洗发水装到盒子里,这个过程就相当于应用层给数据加上一个数据首部,这个首部包含了首部的长度、载荷的长度、上层协议是什么等信息。其实就相当于放到产品盒子里,产品盒子上有产品的质量、生产日期等信息。
应用层相当于OS中的用户,不管数据如何发送、以及数据如何送达。只负责处理应用程序的细节。

(2) 传输层
商品来到快递站以后,快递站要给商品贴上快递单,快递单上有发货地址。这个过程其实就相当于传输层又给数据加了一个数据首部。
这之后呢?那就是决定要发哪家快递了。传输层相当于OS的内核部分,通信方面的细节就是在这里,还有下一层的网络层决定的。传输层就是决定了数据的传输方式,是TCP还是UDP。

(3) 网络层
既然决定了发哪家快递,下面就要决定路线了。这一层同样要加一个首部。
网络层决定了数据的传输路线。
(4) 数据链路层
快递在路上了,假设现在到了南京,南京的快递站就会把你发给下一站浙江。数据链路层决定的是中转站传递数据这个过程。
2、买家(主机B)
买家收到货了,我们需要的东西可能被包了很多层,现在要一层一层拆。这个过程就是解包。

关于封装和解包的过程可以参考下面的博客。
边栏推荐
- [SOC FPGA] custom IP PWM breathing lamp
- Tkinter window selects PCD file and displays point cloud (open3d)
- 「运维有小邓」符合GDPR的合规要求
- 精准时空行程流调系统—基于UWB超高精度定位系统
- JVM 全面深入
- js装饰器@decorator学习笔记
- 【从零开始】win10系统部署Yolov5详细过程(CPU,无GPU)
- tkinter窗口选择pcd文件并显示点云(open3d)
- Apache ab 压力测试
- Etcd database source code analysis -- starting from the start function of raftnode
猜你喜欢

途家、木鸟、美团……民宿暑期战事将起

软件测试到了35岁,真的就干不动了吗?

字符串常量与字符串对象分配内存时的区别
![[FPGA] EEPROM based on I2C](/img/28/f4f2efda4b5feb973c9cf07d9d908f.jpg)
[FPGA] EEPROM based on I2C

哈趣投影黑马之姿,仅用半年强势突围千元投影仪市场!

VMware安装后打开就蓝屏

学习笔记|数据小白使用DataEase制作数据大屏

雷特智能家居龙海祁:从专业调光到全宅智能,20年专注成就专业

【从零开始】win10系统部署Yolov5详细过程(CPU,无GPU)

Doctoral application | Professor Hong Liang, Academy of natural sciences, Shanghai Jiaotong University, enrolls doctoral students in deep learning
随机推荐
What are the classic database questions in the interview?
JESD204B时钟网络
MySQL installation
PostgreSQL database timescaledb function time_ bucket_ Gapfill() error resolution and license replacement
请问如何查一篇外文文献的DOI号?
[solution] final app status- undefined, exitcode- 16
string(讲解)
Linear algebra (1)
Implementation of VGA protocol based on FPGA
面试中有哪些经典的数据库问题?
项目实战 五 拟合直线 获得中线
力扣62 不同路径(从矩阵左上到右下的所有路径数量) (动态规划)
Niuke Xiaobai monthly race 52 E. sum logarithms in groups (two points & inclusion and exclusion)
Redis(一)——初识Redis
Redis (I) -- getting to know redis for the first time
tkinter窗口选择pcd文件并显示点云(open3d)
ICML 2022 | explore the best architecture and training method of language model
What books can greatly improve programming ideas and abilities?
Force deduction 62 different paths (the number of all paths from the upper left to the lower right of the matrix) (dynamic planning)
Abnova循环肿瘤DNA丨全血分离,基因组DNA萃取分析
https://blog.csdn.net/challenglistic/article/details/125643881?spm=1001.2014.3001.5501