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

网络-八股

文章目录介绍一下TCP/IP模型和OSI模型的区别背景是什么为什么从输入 URL 到页面展示到底发生了什么DNS查询过程CDN是什么有什么作用Cookie和Session是什么有什么区别单机上TCP和UDP服务为什么可以占用同一个端口端口号是什么?为什么能共用?介绍一下TCP/IP模型和OSI模型的区别背景是在物联网起初, 不同厂商有自己不同的标准, 他们无法互通.随着互联网的发展, 我们需要一个统一的, 标准化的模型, 让两个计算机能通信是什么TCP/IP模型是当今世界上最主流的网络模型(OSI模型是只存在于教科书上的模型, 并没有被实际采用)TCP/IP模型从用户到硬件可以分为以下五层应用层传输层网络层数据链路层物理层物理层是规定硬件(比如网线)要怎么设计, 要遵守什么规范传输层, 网络层, 数据链路层共同完成数据的转发过程传输层只关注路径的起始和终点, 数据是从源主机的哪个进程程序发出的要送到目标主机的哪个进程, 常见的协议是TCP/UDP网络层负责路径规划的地址管理, 从源IP主机到目标源IP主机, 主要的协议是IP数据链路层将上面规划好的路径进行具体的实施, MAC地址完成相邻设备之间的实际传输这三层是硬件设备/操作系统设定好的, 是程序员无法干预的应用层是程序员可以干预的就是拿到数据怎么用, 定义数据格式/交互规则, 主要的协议有HTTP协议每一层都只与相邻层交互发送方从上往下封装接收方从下往上解封装OSI模型和TCP/IP模型基本一样, 就是把表示层, 会话层, 应用层合并为一个应用层为什么最后是为什么。之所以采用分层设计核心原因有两点第一分治思想降低复杂度。网络通信涉及的问题太多分层后每层只关注自己的职责应用层管数据格式传输层, 网络层, 数据链路层复杂完成数据的转发物理层负责物理传输。各层解耦方便维护第二标准化带来互操作性。分层定义了清晰的接口规范只要遵循协议不同厂商的设备就能互联互通这为互联网的规模化发展奠定了基础。从输入 URL 到页面展示到底发生了什么URL解析和处理: 确定了 Web 服务器和文件名, 如果浏览器内有缓存, 则直接返回DNS查询: 将域名转化为IP地址建立网络连接 TCP 三次握手, 如果是HTTPS, 还要TLS握手发送HTTP请求与接收响应 构建HTTP报文, 向服务器发起请求并接受响应浏览器渲染 解析响应并渲染页面其中应该还涉及到IP 路由、MAC 寻址、交换机的步骤这些由操作系统和网络设备自动完成程序员基本没办法干预, 所以我没有深入理解所以在这个问题上我回答的步骤是我更关注和理解并的那部分DNS查询过程DNS用来把域名转化为IP地址整个过程可以概括为三级缓存查询三级迭代查询三级缓存: 浏览器缓存-系统缓存-本地DNS服务器缓存三级迭代: 根服务器-顶级域名服务器-权威域名服务器如果缓存中没有查到, 就会从本地DNS服务器逐级向上找假设用户第一次访问www.baidu.com浏览器检查自身缓存, 没有记录操作系统查询hosts文件和系统DNS缓存, 也没有查询本地DNS服务器缓存, 也没有记录本地DNS服务器开始迭代查询.根域名服务器-返回.com顶级域名服务器.com顶级域名服务器-返回baidu.com的权威域名服务器地址baidu.com的权威服务器-返回www.baidu.com的IP地址, 比如…最后, 这个IP沿原路返回, 本地三层都会缓存这个结果, 浏览器拿到IP后就可以建立TCP连接了CDN是什么有什么作用CDN是一种分布式网络服务, 它的核心是将内容缓存到离用户更近的地方, 通过就近访问来加速内容传输就近访问: CDN在全球范围内部署了多个服务器节点, 用户的请求会被路由到最近的 CDN 节点, 提供快速的内容访问内容缓存:CDN会缓存静态资源, 如图片, 样式表, 脚本等. 当用户请求访问这些资源时, CDN会首先检查是否已经缓存了这些资源.如果有缓存, CDN节点会直接返回缓存的资源,如果没有缓存所需资源, 它会从源服务器回源请求, 并将资源缓存到节点中, 以便后续请求通过缓存内容, 减少对原始服务器的请求, 减轻了源站的负载即使某些节点出现问题, 会自动调度到健康节点Cookie和Session是什么有什么区别┌─────────────────────────────────────────────────────────────────┐ │ Cookie和Session关联流程 │ ├─────────────────────────────────────────────────────────────────┤ │ │ │ ┌─────────────┐ 1.登录请求 ┌─────────────┐ │ │ │ ├───────────────────────│ │ │ │ │ 浏览器 │ │ 服务器 │ │ │ │ │───────────────────────┤ │ │ │ └──────┬──────┘ 2.创建Session └──────┬──────┘ │ │ │ │ │ │ │ 3.服务器返回 │ │ │ │ - Session ID: abc123 │ │ │ │ 自动设置Cookie: │ │ │ │ Set-Cookie: JSESSIONIDabc123 │ │ │ │ │ │ │ │ 4.浏览器保存Cookie │ │ │ │ ┌───────────────────────┐ │ │ │ │ │ 浏览器Cookie存储 │ │ │ │ │ │ JSESSIONID abc123 │ │ │ │ │ │ user admin │ │ │ │ │ └───────────────────────┘ │ │ │ │ │ │ │ │ 5.后续请求自动携带Cookie │ │ │ │ GET /api/session/data │ │ │ │ Cookie: JSESSIONIDabc123 │ │ │ │ │ │ │ │ 6.服务器查找Session │ │ │ │ ┌───────────────────────┐ │ │ │ │ │ 服务器Session存储 │ │ │ │ │ │ abc123 → { │ │ │ │ │ │ username: admin, │ │ │ │ │ │ loginTime: 123456, │ │ │ │ │ │ ... │ │ │ │ │ │ } │ │ │ │ │ └───────────────────────┘ │ │ │ │ │ │ │ │ 7.返回Session数据 │ │ │ │ │ │ └──────────┴──────────────────────────────────────┴────────────────┘cookie和session本质上都是键值对, Cookie 在客户端存 Session IDSession 在服务端存用户数据通过 ID 关联举个例子浏览器发起登陆请求服务器创建session{username:admin,loginTime:123456,...}服务器返回session id: “abc123”自动设置cookie浏览器cookie存储session idabc123后续请求自动携带cookie服务器查找sessionabc123-…返回session数据Cookie和Session的区别存储位置Cookie数据存储在用户的浏览器中而Session数据存储在服务器上。数据容量Cookie存储容量较小一般为几 KB。Session存储容量较大通常没有固定限制取决于服务器的配置和资源。安全性由于Cookie存储在用户浏览器中因此可以被用户读取和篡改。相比之下Session 数据存储在服务器上更难被用户访问和修改。生命周期Cookie可以设置过期时间Session依赖于会话的持续时间或用户活动。传输方式Cookie在每次HTTP请求中都会被自动发送到服务器而Session只传Session ID单机上TCP和UDP服务为什么可以占用同一个端口端口号是什么?端口号是传输层协议TCP/UDP用来区分同一台机器上不同应用程序的数字标识范围 0~65535为什么能共用?端口号是传输层用来标识不同进程的地址它依附于具体的传输层协议。TCP 和 UDP 各自维护一套独立的端口空间所以同一个数字可以分别绑定不同的服务互不冲突

相关文章:

网络-八股

文章目录介绍一下TCP/IP模型和OSI模型的区别背景是什么为什么从输入 URL 到页面展示到底发生了什么?DNS查询过程CDN是什么,有什么作用?Cookie和Session是什么?有什么区别?单机上,TCP和UDP服务为什么可以占用…...

【2026奇点大会独家前瞻】:视觉语言模型轻量化部署的5大工业级落地陷阱与避坑指南

第一章:2026奇点智能技术大会:视觉语言模型部署 2026奇点智能技术大会(https://ml-summit.org) 视觉语言模型(VLM)正从研究原型加速迈向工业级边缘部署,2026奇点智能技术大会首次设立“VLM生产就绪”专项轨道&#xf…...

Phi-4-Reasoning-Vision镜像免配置指南:双卡4090环境下模型加载进度条UI实现

Phi-4-Reasoning-Vision镜像免配置指南:双卡4090环境下模型加载进度条UI实现 1. 项目概述 Phi-4-Reasoning-Vision是基于微软Phi-4-reasoning-vision-15B多模态大模型开发的高性能推理工具,专为双卡4090环境优化设计。这个工具解决了大模型部署中的几个…...

JavaSE 基础语法 - 初始 Java

一、Java是什么? Java 是一门面向对象的、跨平台的高级编程语言,由 Sun Microsystems 公司(后被 Oracle 收购)于 1995 年推出,设计初衷是 “Write Once, Run Anywhere(一次编写,到处运行&#x…...

SMUDebugTool:解锁AMD Ryzen处理器硬件调试与性能优化的专业指南

SMUDebugTool:解锁AMD Ryzen处理器硬件调试与性能优化的专业指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: …...

ROS中使用自定义头文件和源文件的方法--c++版本

自定义RobotCar.h和RobotCar.cpp文件,test.cpp引用RobotCar,对CmakeLists.txt进行配置:1. 存放头文件组织结构如下:首先将头文件RobotCar.h文件存放到功能包文件夹(car_coop_nav)下的include文件夹下的功能包名文件夹内:存放头文件…...

Jimeng AI Studio效果展示:Z-Image-Turbo生成3D渲染风格图像

Jimeng AI Studio效果展示:Z-Image-Turbo生成3D渲染风格图像 1. 惊艳的3D渲染效果展示 Jimeng AI Studio基于Z-Image-Turbo引擎,在3D渲染风格图像生成方面展现出了令人印象深刻的能力。这个轻量级工具不仅生成速度快,更重要的是能够产出具有…...

如何利用数据库特性防注入_使用只读事务模式执行查询

不能。只读事务仅限制写操作,无法防御SQL注入,攻击者仍可执行SELECT、UNION、延时函数等恶意查询;防注入核心是参数化查询与最小权限账户配合。只读事务真能防 SQL 注入吗不能。只读事务 SET TRANSACTION READ ONLY 或 START TRANSACTION REA…...

RMBG-2.0效果对比实测:BiRefNet vs U2Net vs MODNet,边缘精度全解析

RMBG-2.0效果对比实测:BiRefNet vs U2Net vs MODNet,边缘精度全解析 在图片处理领域,抠图一直是个技术活。无论是电商商品图、人像摄影还是创意设计,一张边缘干净、过渡自然的抠图作品,往往能直接决定最终效果的成败。…...

Pixel Couplet Gen 电路设计联动:Proteus仿真中显示AI生成春联

Pixel Couplet Gen 电路设计联动:Proteus仿真中显示AI生成春联 1. 项目背景与创意来源 这个项目的灵感来源于传统春节与现代技术的碰撞。每年春节,家家户户都会贴春联,而作为电子工程师,我们突发奇想:能不能让电路板…...

Stable-Diffusion-v1-5-Archive 赋能Web应用:JavaScript前端实时预览功能开发

Stable-Diffusion-v1-5-Archive 赋能Web应用:JavaScript前端实时预览功能开发 你有没有想过,在一个AI绘画网站上,输入一句话,就能看着画面从模糊到清晰,一点点在你眼前“生长”出来?那种实时看到创作过程的…...

第17篇:TMC2240诊断功能软件实现|故障检测+报警输出(保姆级)

#TMC2240 #故障诊断 #过流保护 #过热报警 #欠压检测 #自恢复机制 #STM32开发 作者:BackCatK Chen 厦门市电子工程中级工程师 (承接第16篇多轴联动,关注我解锁TMC2240稳定运行终极方案,从“故障失控”到“智能诊断”一步到位&#…...

阿里云:调整标准版、专业版用户的API免费额度并支持按量付费

阿里云此次调整DataWorks API免费额度,表面上是取消每日调用限制、简化计费,但深层逻辑是AI算力需求井喷后,“价格战”向“价值战”转向的行业缩影。 如果说“龙虾”AI智能体的爆火点燃了这场变革的导火索,那么阿里云此举&#xf…...

一次看懂 C# TimeSpan:时间差操作的完整指南

在技术领域,我们常常被那些闪耀的、可见的成果所吸引。今天,这个焦点无疑是大语言模型技术。它们的流畅对话、惊人的创造力,让我们得以一窥未来的轮廓。然而,作为在企业一线构建、部署和维护复杂系统的实践者,我们深知…...

【跨域姿态估计】Cross-Domain Animal Pose Estimation With Skeleton Anomaly-Aware Learning

论文信息 论文题目 Cross-Domain Animal Pose Estimation With Skeleton Anomaly-Aware Learning 作者均来自浙江大学计算机科学与技术学院 论文链接 https://doi.org/10.1109/TCSVT.2025.3557844 Github链接 https://github.com/LeHan-ZJU/UDARP-9.4K动物姿态估计(…...

【Kafka系列·进阶第四篇】云原生收官实战:K8s容器化部署+运维自动化+集群迁移

大家好,在上一篇进阶第三篇中,我们完成了Kafka流处理与数据治理体系搭建,实现了实时数据计算、消息格式强校验、多租户权限隔离,让传统Kafka集群具备了企业级合规管控能力。但随着云原生架构普及,传统物理机/虚拟机部署…...

终极RDP Wrapper完整指南:3步解决Windows远程桌面限制 [特殊字符]

终极RDP Wrapper完整指南:3步解决Windows远程桌面限制 🚀 【免费下载链接】rdpwrap RDP Wrapper Library 项目地址: https://gitcode.com/gh_mirrors/rd/rdpwrap RDP Wrapper Library 是一款革命性的开源工具,它让Windows家庭版也能拥…...

【Kafka系列·进阶第三篇】流处理与数据治理实战:Streams实时计算+Schema校验+多租户管控

大家好,在上一篇进阶第二篇中,我们完成了Kafka全链路性能调优,让集群实现高吞吐低延迟的双达标,彻底解决了高并发场景下的性能瓶颈。但很多同学会发现,普通的生产消费模式,只能实现消息的简单传输&#xff…...

数组arr

一.概念[必须是常量值] 1.概念2.一维数组的创及其初始化(怎么定义数组) 2.1数组创建2.2数组初始化2.2数组类型(去掉数组名)3.一维数组的使用 3.1数组下标(从0开始)3.2如何打印目标数组元素3.3如何打印数组所…...

大模型应用必看:分块策略详解(收藏版),轻松提升RAG系统召回率!

本文深入探讨了在RAG系统中,如何通过分块策略提升大模型的处理效率和召回率。文章详细介绍了固定大小、重叠、递归、文档特定、语义及混合等分块策略,并分析了每种策略的优缺点及适用场景。通过LangChain提供的多种文档分块方法,开发者可以轻…...

Pi0机器人控制初体验:Web界面操作详解,从安装到运行全流程

Pi0机器人控制初体验:Web界面操作详解,从安装到运行全流程 1. 项目概述 Pi0是一个创新的视觉-语言-动作流模型,专为通用机器人控制设计。这个项目提供了一个直观的Web演示界面,让用户能够通过浏览器轻松控制机器人。无论您是机器…...

02阶段:大模型部署机器人项目

一、ollama私有大模型本地部署 1.智聊机器人概述 ① 知道什么是聊天机器人 能够听懂人话,并且说出人话的程序。 1)基本定义:一个用来模拟人类对话或聊天的程序。 2)主要应用:客服支持、智能助手、社交互动、教育学习…...

没历史数据怎么建基站?NetSpatial:教你用AI看“卫星图”推演全城流量!

文章目录没历史数据怎么建基站?NetSpatial:教你用AI看“卫星图”推演全城流量!一、城市通信的“薛定谔状态”:从玄学选址到算力崩溃二、NetSpatial的破局本质:从“被动算命”到“主动沙盘推演”💡 深度拆解…...

Adobe-GenP 3.0:终极Adobe CC全系列激活指南

Adobe-GenP 3.0:终极Adobe CC全系列激活指南 【免费下载链接】Adobe-GenP Adobe CC 2019/2020/2021/2022/2023 GenP Universal Patch 3.0 项目地址: https://gitcode.com/gh_mirrors/ad/Adobe-GenP Adobe-GenP 3.0是一款功能强大的通用补丁工具,专…...

像素史诗效果展示:研报生成过程中的‘能量值’反馈与推理稳定性监测

像素史诗效果展示:研报生成过程中的能量值反馈与推理稳定性监测 1. 像素史诗智识终端概览 Pixel Epic Wisdom Terminal是一款基于AgentCPM-Report大模型构建的研究报告辅助系统,它将枯燥的科研工作转化为一场视觉化的像素冒险。系统采用16-bit复古游戏…...

立知-lychee-rerank-mm详细步骤:日志排查、重启、调试全流程

立知-lychee-rerank-mm详细步骤:日志排查、重启、调试全流程 1. 引言:当重排序模型“罢工”时 想象一下这个场景:你正在搭建一个智能问答系统,用户上传了一张“金毛犬在草地上奔跑”的图片,并问“这是什么品种的狗&a…...

从“普惠”到“全能”:全志T153工业芯如何以HZ-T153_MiniEVM重塑工控开发体验

1. 为什么工业控制需要"普惠型"芯片? 在工业自动化领域,设备制造商常常面临一个两难选择:要么采用性能强大但价格昂贵的外国芯片方案,要么选择价格低廉但功能受限的入门级控制器。全志T153的出现打破了这种局面&#xf…...

数字化电价执行错误识别新模式:原理、模型与工程实现

目录 一、研究背景与业务痛点(为什么要做数字化识别) 1.1 电价执行合规的核心意义 1.2 传统电价核查模式的核心痛点(附业务具象化) 1.3 数字化识别模式的核心价值 二、总体模型设计思路(核心逻辑拆解) 三、行业细分与用电行为定性分析(高风险场景聚焦) 3.1 高风险…...

IntelliJ IDEA 2026.1 安装配置与高效开发环境搭建 (保姆级图文教程)

IDEA 2026.1 部署工具包下载 0. 前言 在 2026 年,IntelliJ IDEA 2026.1 不仅仅是一个编辑器,它已经进化为深度集成 DeepSeek/GPT-4o、支持云原生架构的开发者大脑。对于 Java 程序员来说,环境搭建不仅仅是“装上软件”,更是性能…...

资源优化攻略:如何在消费级显卡上高效运行lora-scripts训练

资源优化攻略:如何在消费级显卡上高效运行lora-scripts训练 1. 理解LoRA训练的资源挑战 LoRA(Low-Rank Adaptation)技术已经成为微调大型模型的主流方法,它通过冻结预训练模型的权重,只训练少量低秩矩阵来实现高效适…...