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

(完)

相关推荐
视觉小萌新11 小时前
C++利用libmicrohttpd制作交互网页端——C1
java·c++·交互
fpcc11 小时前
C++编程实践—C++实现类似Qt的信号槽机制
c++·qt
格发许可优化管理系统11 小时前
Mentor许可证使用规定全解析
java·大数据·c语言·开发语言·c++
郝学胜_神的一滴11 小时前
Qt 高级开发 030:QListWidget 右键菜单全解,从策略配置到精准删除的优雅实现
c++·qt
爱讲故事的11 小时前
计算机网络第七章:无线与移动网络复习笔记
网络·笔记·计算机网络
王莎莎-MinerU11 小时前
面向大模型工作流的文档解析:从OCR到MinerU的深度技术指南
网络·ocr
攻城狮Soar12 小时前
STL源码解析之list(1)
开发语言·c++
TechWayfarer12 小时前
IP画像在企业安全中的应用:它能做什么?不能替代什么
网络·python·tcp/ip·安全·网络安全
2401_8697695912 小时前
内容5 日期类实现
开发语言·c++
xxwl58512 小时前
一个原创题(二)
c++·算法