网络基础初识

IP地址

IP 代表了一台机器在网络上的一个位置,由32位二进制(4字节)表示 .为了简化表示,将4个字节由.符号分开,每一部分都是0~255的数字代表1字节.

  • 在终端cmd中输入ipconfig可以看到自己电脑的ipv4地址

端口号

端口号描述的是使用的应用软件,网络传输数据之后,通过IP找到电脑,又通过端口号来找到应用,数据就给到对应的应用使用.

  • 程序之间使用的端口号不能相同

进行一次网络通信,IP 和 端口各两个.

  • 源端口 源IP,
  • 目的IP 目的端口

协议

网络之间需要有约定好传输格式,遵守协议确保各厂家生产之间能够互通

协议分层

维护网络安全.实现网络通信.就要要遵守各种各样的协议,管理复杂多样的协议,采用分层结构. 上层调用下层功能,下层为上层提供服务.

  • 上层协议直接调用下层协议的内容,不需要了解细节.(封装好了)
  • 层与层之间的交流不能越级交流
  • 某层的更改不会对其他不相邻层造成影响.
  • TCP/IP 是现在最广泛使用的网络协议,(5层)
  1. 应用层
    应用拿到数据之后,数据要用来做什么用
  2. 传输层
    起点 在哪,发送到的目的地又在哪 (香港) -> (北京)
  3. 网络层
    规划一条传输路径 (香港) -> (广东) -> (北京)
  4. 数据链路层
    传输路径之间的方式,香港到广东坐船还是开车,广东到北京是飞机还是火车...
  5. 物理层
    硬件的配合使用

过程:

  1. 首先应用层应用将数据打包,通过应用开发者约定好的字符串连接方式,将各种各样的信息封装在一起
  2. 传输层 主要有TCP协议和UDP协议,TCP协议确保数据能准确到达,可能重复发送,UDP发送更快,但是不理会信息是否到达

传输层生成 生成一个报头,将报头和应用层发送过来的数据连接.

报头里面装载着一些传输的重要信息,UDP协议中报头装载了两地端口号 ,TCP更为复杂

  1. 网络层继续在前面添加了IP报头

传输层传过来的数据被封装在一起,由IP报头引领寻找目的IP

  1. 数据链路层,生成帧头和帧尾,中间IP报头以及它的内容再次封装放在帧头和帧尾之间.

5.物理层将以上二进制转换成光信号/电信号/电磁波信号传递给下一硬件


下一硬件又会一层一层的往上拆解

  1. 下一硬件物理层 -> 生成二进制信息

  2. 到达数据链路层拆解以太网帧头帧尾

  3. 到达网络层,拆解

然后再次封装,准备发送给下一硬件

又通过硬件发送到下一硬件,直到到达指定端口,被应用接收使用.

相关推荐
云烟成雨TD18 小时前
Spring AI Alibaba 1.x 系列【6】ReactAgent 同步执行 & 流式执行
java·人工智能·spring
于慨18 小时前
Lambda 表达式、方法引用(Method Reference)语法
java·前端·servlet
swg32132118 小时前
Spring Boot 3.X Oauth2 认证服务与资源服务
java·spring boot·后端
gelald19 小时前
SpringBoot - 自动配置原理
java·spring boot·后端
殷紫川19 小时前
深入理解 AQS:从架构到实现,解锁 Java 并发编程的核心密钥
java
一轮弯弯的明月19 小时前
贝尔数求集合划分方案总数
java·笔记·蓝桥杯·学习心得
chenjingming66619 小时前
jmeter线程组设置以及串行和并行设置
java·开发语言·jmeter
殷紫川19 小时前
深入拆解 Java volatile:从内存屏障到无锁编程的实战指南
java
eddieHoo19 小时前
查看 Tomcat 的堆内存参数
java·tomcat
那个失眠的夜19 小时前
Mybatis延迟加载策略
xml·java·数据库·maven·mybatis