一、网络基础

IPv4:32位二进制 -- 点分十进制标识 192.168.1.1(连续的32位,为了好看方便每8位一段)

IPv6:128位二进制

IP(Internet协议)

洪泛:除流量进入接口外的所有接口的复制

OSI模型(开放式系统互联参考模型)

物理层          硬件(负责在物理介质传输原始比特流)

数据链路层   控制物理硬件(将比特流组织成帧,提供链路管理,差错检测,纠正功能,以太网协议)

网络层          路由器(逻辑寻址)IP协议(Internet协议)

传输层          TCP/UDP,分段+端口号(负责端到端的通信)

会话层          负责建立,管理,终止会话,协调通信过程的交互  (应用程序内部地址)    

表示层          编码转换成二进制(处理数据的表示,编码,转换

应用层          抽象语言转换成编码(HTTP,SMTP,FTP协议)

上四层负责数据的传递--统称数据流层

下三层为应用程序对数据进行加工处理的部分--数据应用层

TCP/IP模型(TCP/IP协议栈道)

链路层             物理层

网络层             链路层

传输层             网络层

应用层             传输层

                       应用层

两个模型的区别

OSI模型有七层,TCP/IP模型有四层,其中,TCP/IP模型将OSI模型中的应用层与会话层合并到应用层,将物理层,数据链路层合并到链路层,TCP/IP模型更加贴合实际的互联网协议体系,是目前互联网协议的基础协议架构(广泛被使用),而OSI模型主要用于教学与理论研究(理解网络协议的分层概念

交换机工作原理

交换机将电流识别成数据,之后在找到流量出口,将数据重新制作为电流进行传输,实现了逻辑上无限延长传输距离的效果

交换机将电流识别为数据后,可以在内存中存储在转发,来彻底避免冲突问题

数据进入交换机后,交换机先查看Mac地址,然后将该地址与进入的接口映射记录;在关注数据中的目标Mac地址,查询本地表格看是否存在对应的接口记录,若有记录按照记录对应接口唯一转出(单播),若没有记录将洪泛该数据

Mac地址:网卡芯片出厂烧录的全球唯一串号48位二进制构成,16进制显示

ARP地址解析协议--通过对端一种地址来获取对端的另一个地址

网络速率约等于  带宽/8)*85%

分段:网络在正常通讯中,为保障通讯流程,且可以多人共享宽带,需要单个数据包不能过大;分段就是将应用层加工的数据进行分段变小处理;分段大小受MTU的限制;

MTU最大传输单元,默认为1500字节;

UDP:用户数据报文--非面向连接的不可靠传输协议

         该协议在传输层仅完成基本工作----分段、端口号

TCP:传输控制协议--该协议在传输层除了完成传输层的基本工作外,还需要保障传输的可靠性;

面向连接的可靠传输协议

面向连接:通过三次握手建立端到端的虚链路

可靠传输:4种可靠传输机制---确认应答、排序(序列号)、重传(超时)、流控(滑动窗口,控制流量)

三次握手流程:

  1. 第一次握手(SYN):
  • 客户端向服务器发送一个SYN(同步序列编号)包,请求建立连接。
  • 在这个包中,SYN标志位被设置为1,表示这是一个连接建立请求。
  • ACK标志位被设置为0,因为没有数据需要确认。
  • 客户端会随机选择一个初始序列号(ISN),并将其放入SYN包中。
  1. 第二次握手(SYN-ACK):
  • 服务器收到SYN包后,如果同意建立连接,会发送一个SYN-ACK包作为响应。
  • 在这个包中,SYN标志位和ACK标志位都被设置为1,表示服务器同意建立连接,并且对客户端的SYN请求进行了确认。
  • 服务器也会选择一个初始序列号(ISN),并将其放入SYN-ACK包中。
  • 服务器还会在确认号(ACK Number)字段中放入客户端ISN加1的值,作为对客户端SYN包的确认。
  1. 第三次握手(ACK):
  • 客户端收到SYN-ACK包后,会发送一个ACK包作为最后的确认。
  • 在这个包中,SYN标志位被设置为0,因为这不是一个新的连接建立请求。
  • ACK标志位被设置为1,表示这是一个确认应答。
  • 客户端会在确认号(ACK Number)字段中放入服务器ISN加1的值,作为对服务器SYN-ACK包的确认。

IPv4

名词解释

封装  :数据从上层向下层的一个加工处理过程,过程中数据包将不断的增大;

解封装:封装的逆向过程,及设备对数据的识别过程;

PDU协议数据单元 --对各层数据的称呼单位

应用层   报文

传输层   段

网络层   包

数据链路层   帧

物理层    比特流

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/79529.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端面试测试题目(一)

一、Vue的双向绑定机制(v-model底层实现原理) Vue的双向绑定核心由 响应式系统 和 指令语法糖 共同实现,具体原理如下: 响应式系统 Vue通过数据劫持和依赖收集实现数据变化到视图的同步: • 数据劫持:在Vue…

我用Deepseek + 亮数据爬虫神器 1小时做出輿情分析器

我用Deepseek 亮数据爬虫神器 1小时做出輿情分析器 一、前言二、Web Scraper API 实战(1)选择对应的URL(2)点击进入对应url界面(3)API结果实例和爬取结果展示(4)用户直接使用post请…

机器学习实战:归一化与标准化的选择指南

在机器学习实战中——是否需要归一化(Normalization)或标准化(Standardization),取决于所使用的模型类型。 ✅ LightGBM / XGBoost 是否需要归一化或标准化? 不需要。 🔧 原因: L…

磁珠特点,原理与应用

什么是磁珠? 磁珠在1930年由日本东京工业大学的加藤与五郎和武井武两位教授发明,TDK首次生产,是电感的一种,区别就是:电感外面包裹着铁氧体材质。 因铁氧体具有高电阻率,低涡流损耗,高频时依旧…

【连载14】基础智能体的进展与挑战综述-多智能体系统设计

基础智能体的进展与挑战综述 从类脑智能到具备可进化性、协作性和安全性的系统 【翻译团队】刘军(liujunbupt.edu.cn) 钱雨欣玥 冯梓哲 李正博 李冠谕 朱宇晗 张霄天 孙大壮 黄若溪 在基于大语言模型的多智能体系统(LLM-MAS)中,合作目标和合…

React Native踩坑实录:解决NativeBase Radio组件在Android上的兼容性问题

React Native踩坑实录:解决NativeBase Radio组件在Android上的兼容性问题 问题背景 在最近的React Native项目开发中,我们的应用在iOS设备上运行良好,但当部署到Android设备时,进入语言设置和隐私设置页面后应用崩溃。我们遇到了…

[Windows] 网络检测工具InternetTest v8.8.2.2503 单文件版_支持查询IP_DNS_WIFI密码一键恢复

InternetTest(详情请戳 官网 / 作者项目地址)是一款免费开源的网络检测实用工具,其可实现监控、诊断互联网网络连接,例如进行 ping 测试、延迟测试、WiFi 密码查看、IP 地址或域名信息查询等算是搭建网站及服务器的实用维护工具。…

配置Hadoop集群-集群配置

以下是 Hadoop 集群的核心配置步骤,基于之前的免密登录和文件同步基础,完成 Hadoop 分布式环境的搭建: 1. 集群规划 假设集群包含 3 个节点: master:NameNode、ResourceManagerslave1:DataNode、NodeMana…

Spring Bean有哪几种配置方式?

大家好,我是锋哥。今天分享关于【Spring Bean有哪几种配置方式?】面试题。希望对大家有帮助; Spring Bean有哪几种配置方式? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Spring Bean的配置方式主要有三种&#xff…

Webpack中Compiler详解以及自定义loader和plugin详解

Webpack Compiler 源码全面解析 Compiler 类图解析: 1. Tapable 基类 Webpack 插件系统的核心,提供钩子注册(plugin)和触发(applyPlugins)能力。Compiler 和 Compilation 均继承此类,支持插件…

HAProxy + Keepalived + Nginx 高可用负载均衡系统

1. 项目背景 在现代Web应用中,高可用性和负载均衡是两个至关重要的需求。本项目旨在通过HAProxy实现流量分发,通过Keepalived实现高可用性,通过Nginx提供后端服务。该架构能够确保在单点故障的情况下,系统仍然能够正常运行&#…

Kubernetes控制平面组件:Kubelet详解(一):API接口层介绍

云原生学习路线导航页(持续更新中) kubernetes学习系列快捷链接 Kubernetes架构原则和对象设计(一)Kubernetes架构原则和对象设计(二)Kubernetes架构原则和对象设计(三)Kubernetes控…

VIC-2D 7.0 为平面样件机械试验提供全视野位移及应变数据软件

The VIC-2D系统是一个完全集成的解决方案,它基于优化的相关算法为平面试样的力学测试提供非接触、全场的二维位移和应变数据,可测量关注区域内的每个像素子集的面内位移,并通过多种张量选项计算全场应变。The VIC-2D 系统可测量超过 2000%变形…

多线程访问Servlet如何谨慎处理共享资源

1. 避免共享状态(最佳实践) 核心思想:Servlet 本身应设计为无状态(Stateless),不依赖实例变量存储请求相关数据。 实现方式: 将变量声明在方法内部(局部变量)&#xff0…

从Windows到Mac的过渡:学习笔记与心得

作为一名长期使用Windows操作系统的用户,当我决定转换到Mac时,心中充满了期待与好奇。Mac以其独特的操作系统和设计风格著称,虽然有许多相似之处,但仍有不少差异需要适应。为了帮助其他有类似转换需求的朋友,我总结了一…

TestNG接口自动化

第一章、 Rest assured接口测试框架 一、概述 接口自动化的框架,主要是用来做接口自动化测试,返回的报文都是JSON 语法比较简单,只需要掌握常用的方法 用例运行的速度非常快 断言的机制 Json 封装相关方法,jsonpath,x…

【速写】KV-cache与解码的再探讨(以束搜索实现为例)

文章目录 1 Beam Search 解码算法实现2 实现带KV Cache的Beam Search解码3 关于在带kv-cache的情况下的use_cache参数 1 Beam Search 解码算法实现 下面是一个使用PyTorch实现的beam search解码算法: 几个小细节: 束搜索可以加入length_penalty&#…

ABP-Book Store Application中文讲解 - 前期准备 - Part 3:Acme.BookStore项目模块详解之二

1. 汇总 ABP-Book Store Application中文讲解-汇总-CSDN博客 2. 前一章 ABP-Book Store Application中文讲解 - 前期准备 - Part 3:Acme.BookStore项目模块详解 项目之间的引用关系。 目录 1. .Domain.Shared 2. .Domain 3. .Application.Contracts 4. .Application 5…

【Leetcode刷题随笔】349. 两个数组的交集

1. 题目描述 给定两个数组nums1和nums2&#xff0c;返回它们的交集。输出结果中的每个元素一定是唯一的。我们可以不考虑输出结果的顺序。 示例1: 输入:nums1 [1,2,2,1], nums2 [2,2] 输出&#xff1a;[2] 题目条件&#xff1a; 1 < nums1.length, nums2.length < 10…

Unity打包安卓失败 Build failure 解决方法

【Unity】打包安卓失败 Build failure 的解决方法_com.android.build.gradle.internal.res.linkapplicat-CSDN博客 unity在打包时设置手机屏幕横屏竖屏的方法_unity打包默认横屏-CSDN博客