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地址只会在本局域网中有效。

(完)

相关推荐
星辰徐哥2 分钟前
5G的行业应用:工业互联网、车联网、智慧医疗中的网络支撑
网络·5g·php
无限进步_4 分钟前
【C++】电话号码的字母组合:从有限处理到通用解法
开发语言·c++·ide·windows·git·github·visual studio
头疼的程序员32 分钟前
计算机网络:自顶向下方法(第七版)第八章 学习分享(三)
网络·学习·计算机网络
C++ 老炮儿的技术栈33 分钟前
GCC编译时无法向/tmp 目录写入临时汇编文件,因为设备空间不足,解决
linux·运维·开发语言·汇编·c++·git·qt
橘颂TA40 分钟前
【笔试】算法的暴力美学——牛客 NC213140 :除2!
c++·算法·结构与算法
@insist12344 分钟前
网络工程师-核心考点:网络管理体系与 SNMP 协议全解析
网络·智能路由器·网络工程师·软考·软件水平考试
wsoz1 小时前
Leetcode普通数组-day5、6
c++·算法·leetcode·数组
我科绝伦(Huanhuan Zhou)1 小时前
分享一个网络智能运维系统
运维·网络
codeejun1 小时前
每日一Go-44、Go网络栈深度拆解--从 TCP 到 HTTP 的资源复用艺术
网络·tcp/ip·golang
favour_you___1 小时前
2026_4_8算法练习题
数据结构·c++·算法