当前位置: 首页 > backend >正文

初识 网络原理

1.网络通信基础

1.IP

1.ip用来定义主机的地址类似于我们寄快递的时候,双方的地址,表示具体的两个地址

2.格式:IP地址是一个32位的二进制数,通常被分为4个“8位二进制数”相当于4个字节(约等于42亿左右)如 01100100.00000100.00000101.00000110

通常⽤“点分⼗进制”的⽅式来表⽰,即a.b.c.d的形式(a,b,c,d都是0~255之间的⼗进制整数)。 如:100.4.5.6。

通常是ipv4的格式,但是随着网络设置的越来越多升级成了IPv6(40亿亿)

2.端口号

1.端口号用于定位主机中的进程,可以理解为发件人和收件人的电话,表示具体的人

2.格式

0~65535范围的数字

1~1024是比较知名的端口号,已经被很有名的程序占用了,我们一般不使用

1025~65535这个范围可以任意指定

3.认识协议

协议相当于程序员之间的约定,表示发送快递以怎样的包装

4.五元组

1. 源IP:标识源主机

2. 源端⼝号:标识源主机中该次通信发送数据的进程

3. ⽬的IP:标识⽬的主机

4. ⽬的端⼝号:标识⽬的主机中该次通信接收数据的进程

5. 协议号:标识发送进程和接收进程双⽅约定的数据格式

5.协议分层

相当于公司实行业务,每一层都有每一层的任务,互不干扰,不同层级只需要结果对接就好

5.1 TCP/IP五层(或四层)模型

TCP/IP通讯协议采用了五层的层级结构,每一层都呼叫了它的下一层所提供的网络来完成自己的需求

 

每个层的作用 

1.应用层:负责和用户打交道,接收和展示用户的数据,比如收发快递过程中,只关注了物品的本身

2.传输层:完成端到端的传输的准备,也就是说确定收送主机的地址和端口号,对比快递来说确定好收件人和发件人的地址和电话

3.网络层:规划出端到端之间的网络路径,路径中可能会包含中间经过的其他网络设备,比如快递运输中的可以经过的加油站

4.数据链路层:完成点到点之间的传输,每个网络设备之间的传输

5.物理层:将真实的BIT数据流,通过转换成光电信号在传输介质中传输

 

6.封装和分用

1.封装是在发送方进行的对数据的处理

2.分用是在接收方进行的对数据的处理

不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在⽹络层叫做数据报 (datagram),在链路层叫做帧(frame)。

• 应⽤层数据通过协议栈发到⽹络上时,每层协议都要加上⼀个数据⾸部(header),称为封装 (Encapsulation)。

• ⾸部信息中包含了⼀些类似于⾸部有多⻓,载荷(payload)有多⻓,上层协议是什么等信息。

• 数据封装成帧后发到传输介质上,到达⽬的主机后每层协议再剥掉相应的⾸部,根据⾸部中的"上 层协议字段"将数据交给对应的上层协议处理

1.数据封装(发送方)

场景:模拟QQ放送与接收

首先发送方要发售那个一条信息比如hello

1.应用层确定消息体的内容

2.传输层,传输层众多协议中典型的两种,TCP, UDP协议,我们以TCP协议举例

确定好端口号和目的端口号把数据发送给下一层,网络层

3.网络层,规划出端于端之间的网络路径,加上IP头

4.数据链路层

5.物理层:把具体的数据(报文)转换成光电信号,通过传输介质进行传输,利用二进制,利用电信号,(3.5~5v表示高电平为1)(0.1v~0.25v为低电平为0)

2.数据分用(接收方)

 

http://www.xdnf.cn/news/16789.html

相关文章:

  • 中科院开源HYPIR图像复原大模型:1.7秒,老照片变8K画质
  • 【数传电台P900配置指南:点对点、中继与一对多通讯详解】
  • 【高等数学】第七章 微分方程——第六节 高阶线性微分方程
  • 无图形界面的CentOS 7网络如何配置
  • 【Flutter】双路视频播放方案
  • 第k小整数(快排)
  • 遥控器信号捕获
  • Trice移植(Start with Trice)
  • CS231n2017-Lecture9经典CNN架构笔记
  • Java学习-运算符
  • Git 进阶使用
  • 算法篇----位运算
  • 【Mysql】字段隐式转换对where条件和join关联条件的影响
  • Oracle EBS 缺少adcfgclone.pl文件
  • 链接脚本中. = ALIGN(4);的作用?
  • 北斗变形监测在地质灾害监测中的应用
  • 浅谈低代码平台涉及的一些技术选型
  • AI Agent 视角:可执行程序的二进制格式,是一场「结构化语言」与「智能解析」的双向奔赴
  • UE5多人MOBA+GAS 番外篇:同时造成多种类型伤害,以各种属性值的百分比来应用伤害(版本二)
  • 流式编程的中间操作
  • linux编译基础知识-编译时路径和运行时路径
  • 在Idea中,配置maven
  • Galaxea机器人由星海图人工智能科技有限公司研发的高性能仿人形机器人
  • 【C语言】预处理详解
  • 高防服务器租用:保障数据安全
  • Nginx跨域问题与 MIME 类型错误深度排错指南:解决 MIME type of “application/octet-stream“ 报错
  • PyTorch分布式训练深度指南
  • 26数据结构-顺序表
  • 【数据结构与算法】21.合并两个有序链表(LeetCode)
  • 如何将消息转移到新 iPhone