网络通信领域的基础或流行协议

一、TCP(传输控制协议)

1. 宏观介绍

  • TCP:全称“Transmission Control Protocol”——传输控制协议,是互联网最基础的传输协议之一。传输层协议,提供面向连接可靠的字节流传输服务。它通过三次握手建立连接、四次挥手断开连接,确保数据有序、完整地传输
  • 作用:让两个设备(比如你的电脑和服务器)之间建立一条“可靠的连接”来传输数据。

2. 它是做什么的?

  • 连接导向:在通信开始前,双方先“握手”建立连接。
  • 可靠传输:确保每个数据包都能到达,而且是按顺序的,没有丢失。
  • 流控和拥塞控制:控制数据传输速率,避免网络堵塞。

3. 它的工作原理(简单版)

  • 三次握手(建立连接)
    1. 客户端发“请求连接”包
    2. 服务器响应“确认”包
    3. 客户端再确认一次,连接建立完毕。
  • 数据传输
    • 以“数据包”的形式,确认每个包都收到后,才会继续发下一包。
    • 如果包丢失或错误,自动重发。
  • 四次挥手(断开连接)
    • 关闭连接时,双方互相确认断开,确保没有数据遗漏。

4. 特点和优缺点

  • 优点
    • 可靠,确保数据完整到达。
    • 顺序到达,消息有序。
    • 支持流控(控制速率)和拥塞控制。
  • 缺点
    • 连接建立的过程比较复杂(三次握手)。
    • 传输效率因确认和重传机制较低(相对其他协议)。

5. 适用场景

  • 需要可靠性的传输:比如文件传输(FTP)、电子邮件、即时通讯(聊天更喜欢用TCP的基础,由应用协议控制)。

二、HTTP(超文本传输协议)

1. 宏观介绍

  • HTTP:“HyperText Transfer Protocol”,超文本传输协议,是Web浏览器和Web服务器之间的通信协议。应用层协议,基于 TCP,用于客户端与服务器之间的请求-响应交互。常用于网页数据传输(如 HTML、图片)
  • 作用:用来请求网页、图片、视频等内容,以及上传、提交表单。

2. 它是怎么工作的?

  • 无连接:默认每次请求完成就断开连接(HTTP/1.0),也支持保持连接(HTTP/1.1 默认保持连接)。每次请求独立,需 Cookie/Session 维持状态。

  • 请求-响应模型

    1. 客户端(浏览器)发起请求(GET、POST等方法)到服务器。其他如 PUTDELETE(RESTful API 常用)
    2. 服务器处理请求,返回资源(网页、图片等)或响应状态(如

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

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

相关文章

【教学类-34-10】20250503(通义万相)4*3蝴蝶拼图(圆形、三角、正方、半圆的凹凸小块+参考图灰色)

背景需求 2023年从网站上搜索拼图代码,陆续改良了圆形、三角形、菱形凹凸) 【教学类-34-05】20230425拼图(“圆角”凹凸拼图)3*4格子(中班主题《个别化拼图》偏美术)_拼图的槽叫什么形状-CSDN博客文章浏览阅读1.1k次。【教学类-34-05】20230425拼图(“圆角”凹凸拼图)…

bellard.org‌ : QuickJS 如何使用 qjs 执行 js 脚本

参阅上一篇:Fabrice Bellard(个人网站:‌bellard.org‌)介绍 Fabrice Bellard(个人网站:‌bellard.org‌)是计算机领域最具影响力的程序员之一,其贡献跨越多个技术领域并持续推动开…

数据结构---

案例一 1.随机生成n个工人工时,100以内,工号分别为2021101到2021100n 2.以工时数为关键字分别使用选择排序、冒泡排序、插入排序进行升序排序。 3.把排序后的结果输出,包括工号工时数 4.比较三种算法对相同的n值数组排序所花的时间 代码如下&…

Python硬核革命:从微控制器到FPGA的深度开发指南

1. 重新定义硬件开发:Python的颠覆性突破 传统硬件开发长期被C/C++和Verilog/VHDL统治,但Python正通过两条路径改变这一格局: 1.1 微控制器领域的MicroPython革命 完整Python 3.4语法支持,运行在资源受限的MCU上(最低要求:64KB ROM,16KB RAM) 直接内存访问能力,突破…

基于springboot+vue的宠物共享平台

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7数据库工具:Navicat12开发软件:eclipse/myeclipse/ideaMaven包:Maven3.3.9 系统展示 宠物寄养管理 宠…

day 11 超参数调整

一、内参与外参(超参数) 内参是模型为了适应训练数据而自动调整的,是模型内部与训练数据紧密相关的因素,不同的训练数据会导致模型学习到不同的参数值,这些参数在模型训练完成后就固定下来。 超参数是在模型训练前需…

快速搭建对象存储服务 - Minio,并解决临时地址暴露ip、短链接请求改变浏览器地址等问题

其他文章 服务容错治理框架resilience4j&sentinel基础应用---微服务的限流/熔断/降级解决方案-CSDN博客 conda管理python环境-CSDN博客 快速搭建对象存储服务 - Minio,并解决临时地址暴露ip、短链接请求改变浏览器地址等问题-CSDN博客 大模型LLMs的MCP入门-…

朴素贝叶斯分类器

朴素贝叶斯分类器 朴素贝叶斯是一种基于密度估计的分类算法,它利用贝叶斯定理进行预测。该算法的核心假设是在给定类别的情况下,各个特征之间是条件独立的,尽管这一假设在现实中通常不成立,但朴素贝叶斯分类器依然能够生成对有偏…

在 Trae CN IDE 中配置 Python 3.11的指南

在 Trae CN IDE 中配置 Python 3.11的指南 下载 python 3.11 安装 Python 3.11 首先,我们需要确保安装了 Python 3.11。可以从Python 官方网站下载适合你操作系统的版本。 链接 如果你已经安装了 Python 3.11,可以通过以下命令确认: 文…

MQTT 协议与 HTTP 协议的区别

在现代的网络通信中,MQTT 协议和 HTTP 协议都扮演着重要的角色,但它们有着不同的特点和适用场景。下面我们就从多个方面来详细探讨它们之间的区别。 一.协议设计理念 1. MQTT 协议 MQTT(Message Queuing Telemetry Transport)即…

Postgresql源码(145)优化器nestloop参数化路径评估不准问题分析

相关 《Postgresql源码(133)优化器动态规划生成连接路径的实例分析》 1 问题 最近遇到一个问题,评估行数和真实行数存在较大差距,导致计划不准的问题。 nestloop内表评估是根据外表的参数来的。因为外表驱动表每取一条&#xff…

HTML与CSS实现风车旋转图形的代码技术详解

在前端开发中,HTML和CSS是构建网页的基础技术。通过巧妙运用HTML的结构搭建和CSS的样式控制,我们能够实现各种精美的视觉效果。本文将对一段实现旋转图形效果的HTML和CSS代码进行详细解读,剖析其中的技术要点。 一、运行效果 HTML与CSS实现风…

linux下,ollama会把模型文件保存在哪里?

文章目录 运行ollama,有两种形式,估计得分开讨论首先是使用自动启动的ollama:先跑个“小一点的大模型”但是现在模型文件存在哪儿呢?运行ollama,有两种形式,估计得分开讨论 我们用两种方式,来运行ollama。 首先是使用自动启动的ollama: ps -aux | grep ollama系统自…

鼎讯信通 智能通信干扰设备:多频段多模态信号压制解决方案

在万物互联时代,通信安全已成为现代社会的核心基础设施防护重点。面对日益复杂的电磁环境挑战,新一代智能通信干扰设备通过技术创新实现了信号压制能力的革命性突破。本文将深入解析该设备的八大核心功能与技术特性,展现其在商业通信保障、工…

【2025软考高级架构师】——案例分析总结(13)

摘要 本文对2025年软考高级架构师的考纲及案例分析进行了总结。内容涵盖系统规划、架构设计、系统建模、安全架构、可靠性分析、大数据架构等多方面知识点,还涉及软件质量特性、系统流程图与数据流图、嵌入式系统架构、分布式系统设计等考查内容,详细列…

js单调栈解题模板

模板 function solve(arr) {const stack [];const result new Array(arr.length).fill(默认值);for (let i 0; i < arr.length; i) {while (stack.length && 比较条件(arr[i], arr[栈顶])) {const top stack.pop();result[top] 计算结果(i, top); }stack.push…

[蓝桥杯真题题目及解析]2025年C++b组

移动距离&#xff08;填空&#xff09;** 小明初始在二维平面的原点&#xff0c;他想前往坐标 (233,666)。在移动过程中&#xff0c;他只能采用以下两种移动方式&#xff0c;并且这两种移动方式可以交替、不限次数地使用&#xff1a; 水平向右移动&#xff0c;即沿着 x 轴正方…

【ICMP协议深度解析】从网络诊断到安全实践

目录 前言技术背景与价值当前技术痛点解决方案概述目标读者说明 一、技术原理剖析核心概念图解核心作用讲解关键报文类型说明协议版本对比 二、实战演示环境配置要求核心实验实现实验1&#xff1a;标准ping流程实验2&#xff1a;traceroute路径发现实验3&#xff1a;自定义ICMP…

安卓基础(悬浮窗分级菜单和弹窗)

initializeViews() 初始化 把全部的按钮都弄出来 // 主菜单按钮ImageButton mainButton floatingMenuView.findViewById(R.id.main_button);// 二级菜单按钮subButtons new ImageButton[3];subButtons[0] floatingMenuView.findViewById(R.id.sub_button_1);subButtons[1]…

冯·诺依曼体系:现代计算机的底层逻辑与百年传承

在智能手机流畅运行复杂游戏、超级计算机模拟气候变化的今天&#xff0c;很少有人会想到&#xff0c;驱动这些神奇机器运转的核心架构&#xff0c;依然遵循着70多年前提出的设计理念。这就是由匈牙利裔美国科学家约翰冯诺依曼&#xff08;John von Neumann&#xff09;奠定的冯…