TCP/IP五层模型+网络传输基本流程

TCP/IP五层模型+网络传输基本流程

协议

协议,本质是一种约定!

协议,就是约定好的结构体!

为什么要有TCP/IP协议?

网络通信最大的特点是设备之间的距离变远了。

TCP/IP协议,本质是一种网络长距离通信的解决方案。

什么是TCP/IP协议?

1.TCP/IP协议的本质是一种解决方案。

2.TCP/IP协议能分层,前提是因为问题本身能分层。

TCP/IP协议与系统的关系

TCP/IP五层/四层模型(OSI七层模型)

物理层(网卡)

数据链路层

网络层

传输层

应用层

网络传输基本流程

局域网通信原理(以以太网为例):

每台主机在局域网上,要有唯一的标识来保证主机的唯一性:MAC地址

同一个局域网中,主机之间可以直接通信。

认识MAC地址:

MAC地址用来识别数据链路层中相连的节点。

在网卡出厂时就确定了,具有唯一性。

以太网通讯原理(局域网):

在以太网中,任何时候,只允许一台主机向网络中发送数据。

如果有多台同时发送,会发生数据干扰,我们称为数据碰撞。

在没有交换机的情况下,一个以太网就是一个碰撞域。

所有发送数据的主机要进行碰撞检测和碰撞避免。

如果发生碰撞,就要做碰撞避免算法。

主机之间通信本质是两个协议栈在通信。

为什么要自顶向下封装?

因为发送数据的是用户,而传输数据必须由网卡传输,中间分别经过应用层,传输层,网络层,数据链路层,再由网卡发送到其他主机。必须贯穿操作系统,贯穿协议栈。

向下交付:封装

向上交付:解包:报头和有效载荷进行分离

细节1:不考虑应用层协议,任何协议

a.报头中必须要能做到,和有效载荷进行分离的能力

b.报头中必须包含,如何将自己的有效载荷,交付给上层的哪一个具体协议。

细节2:底层收到报文,如果该报文不是发给某主机的,数据链路层会直接丢掉。

报文 = 报头 + 有效载荷

跨网络传输流程

IP地址:IP地址,用来标识全球范围内,主机的唯一性(公网IP)。

IP地址与MAC地址的区别:

从哪来,到哪去 ----源IP,目标IP地址

上一站从哪里来,下一站到哪里 ----源MAC,目标MAC地址

区别:目标IP地址是指最终地址,目标MAC地址指下一站的地址

路由功能:发现不是发给自己局域网主机的报文,就推送给路由器。

路由的过程中,IP地址不变,mac地址一直再变,mac地址只会在本局域网中有效。

(完)

相关推荐
上海安当技术7 小时前
固件签名与Secure Boot:安当CAS如何构建汽车固件信任链
网络·汽车·信任链·boot·secure·固件签名·安当cas
ShineWinsu8 小时前
对于C++:C++11中lambda、function、bind的解析
c++·面试·笔试·开发·lambda·bind·function
上海安当技术8 小时前
诊断接入认证:安当CAS如何堵住汽车网络安全的物理后门
网络·web安全·汽车·access·secure·安当cas·诊断接入认证
码匠许师傅8 小时前
【C++ 面试真题】聊聊 C++ 的拷贝构造与拷贝赋值
java·c++·面试
ze^08 小时前
【软考信息安全】第2章 网络攻击原理与常用方法
网络·web安全·网络安全
这个DBA有点耶9 小时前
数据库一体机架构演进:从硬件堆叠到软硬深度耦合
服务器·网络·数据库·硬件架构·运维开发·database·数据库架构
旖旎夜光9 小时前
LeetCode 3:无重复字符的最长子串(滑动窗口) —— 题解
数据结构·c++·算法·leetcode·滑动窗口
汉字萌萌哒9 小时前
2024CSP-J入门级C++真题详解
开发语言·c++
arbboter9 小时前
【网络工具】NetProxy网络代理用户手册
开发语言·网络·c#·网络代理·网络异常·代理工具
hy.z_77710 小时前
【C++】13. 继承
c++