MTU与MSS

MTU:一个网络包的最大长度,以太网中一般为1500各字节。

MSS:除去头部之后,一个网络包所能容纳的TCP数据的最大长度。

应用程序调用write后,将要发送的数据被交给TCP/IP协议栈进行。

协议栈不关心应用的数据内容,统一认为是一定长度的二进制字节序列。

协议栈收到数据后,会先存放在内部的发送缓冲区中,继续等待应用程序的下一段数据。一次将多少数据传递给协议栈是由应用程序自行决定的,协议栈并不能控制这一行为。

立即发送可能会发送大量小包,导致网络效率下降。

积累多少数据再发送取决于几个要素:

一、MTU与MSS

        当应用程序收到的数据长度超过或者接近MSS时再发送出去,就可以避免发送小包问题了。

二、时间

        当应用程序发送数据的频率不高的时候,可能因为等待MSS长度数据时间太长而造成发送延迟。为此,协议栈内部有一个计时器,当经过一定时间后,就会将网络包发送出去。

长度优先,那么网络的效率会提高,但可能会因为等待填满缓冲区而产生延迟;相反地,如果时间优先,那么延迟时间会变少,但又会降低网络的效率。因此,在进行发送操作时需要综合考虑这两个要素以达到平衡。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用Microsoft Dynamics AX 2012 - 5. 生产控制

生产控制的主要职责是生产成品。为了完成这项任务,制造业需要消耗物品和资源能力(人员和机械)。制造过程可能包括半成品的生产和库存。半成品是指物品包括在成品材料清单中。 制造业的业务流程 根据公司的要求,您可以选择申请Dy…

三星有一个特有的重置电脑的应用程序,方便快捷,那就是三星恢复

本文介绍如何将三星笔记本电脑重置为出厂设置。它涵盖了两种方法,它们都适用于Windows 11和Windows 10。 如何用“三星恢复(Samsung Recovery)”重置三星笔记本电脑 许多三星笔记本电脑附带一种名为“三星恢复”的实用程序。这是一个比Windows“重置此电脑”过程更快、更不…

枚举 LeetCode2048. 下一个更大的数值平衡数

如果整数 x 满足:对于每个数位 d ,这个数位 恰好 在 x 中出现 d 次。那么整数 x 就是一个 数值平衡数 。 给你一个整数 n ,请你返回 严格大于 n 的 最小数值平衡数 。 如果n的位数是k,n它的下一个大的平衡数一定不会超过 k1个k1…

插入排序与希尔排序(C语言实现)

1.插入排序 由上面的动图可以知道插入排序的逻辑就是从第一个元素开始往后遍历,如果找到比前一个元素小的(或者大的)就往前排,所以插入排序的每一次遍历都会保证前面的数据是有序的,接下类用代码进行讲解。 我们这里传…

圆通速递查询,圆通速递单号查询,用表格导出查询好的物流信息

批量查询圆通速递单号的物流信息,以表格的形式导出查询好的物流信息。 所需工具: 一个【快递批量查询高手】软件 圆通速递单号若干 操作步骤: 步骤1:运行【快递批量查询高手】软件,并登录 步骤2:点击主界…

SVN版本回退

文章目录 SVN版本回退 SVN版本回退 一、revert to this version和revert to this version的区别: 基于4674版本执行"revert to this version"操作效果: 基于4674版本执行"revert changes from this version"操作效果&#xff1…

【为什么设置了宏,在宏名称列表里面却没有?】

为什么设置了宏,在宏名称列表里面却没有? 参考这篇文档: 宏没有出现在宏列表中

【rabbitMQ】rabbitMQ的下载,安装与配置

目录 1. 下载Erland 安装步骤: 配置环境变量: 校验环境变量配置是否成功 2.下载MQ 安装步骤: 添加可视化插件 : 启动: 拒绝访问 1. 下载Erland 因为rabbitMQ是基于Erland,所以在安装rabbitMQ之前需要安装Erla…

用Java实现一对一聊天

目录 服务端 客户端 服务端 package 一对一用户; import java.awt.BorderLayout; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; imp…

Kubernetes(K8s 1.27.x) 快速上手+实践,无废话纯享版

文章目录 1 基础知识1.1 K8s 有用么?1.2 K8s 是什么?1.3 k8s 部署方式1.4 k8s 环境解析 2 环境部署2.1 基础环境配置2.2 容器环境操作2.3 cri环境操作2.4 harbor仓库操作2.5 k8s集群初始化2.6 k8s环境收尾操作 3 应用部署3.1 应用管理解读3.2 应用部署实…

C++初阶-string类的模拟实现

string类的模拟实现 一、经典的string类问题1.1 构造函数1.1.1 全缺省的构造函数 2.1 拷贝构造3.1 赋值4.1 析构函数5.1 c_str6.1 operator[]7.1 size8.1 capacity9.1 比较(ASCII)大小10.1 resize11.1 reserve12.1 push_back(尾插字符)13.1 append(尾插字…

视频剪辑方法:视频随机分割,高效批处理剪辑实战

随着数字媒体技术的不断发展,视频剪辑已经成为影视制作、广告投放、教育视频制作等领域中不可或缺的一部分。为了提高剪辑效率和质量,采用视频随机分割的方法,能够实现对视频的批量处理,进而提高剪辑的效率和质量。视频随机分割是…

【上海大学数字逻辑实验报告】五、记忆元件测试

一、实验目的 掌握R-S触发器、D触发器和JK触发器的工作原理及其相互转换。学会用74LS00芯片构成钟控RS触发器。学会用74LS112实现D触发器学会在Quartus II上用D触发器实现JK触发器。 二、实验原理 基本R-S触发器是直接复位-置位的触发器,它是构成各种功能的触发器…

云LIS实验室信息管理系统源码——实验室信息管理解决方案

云LIS(Cloud Laboratory Information System)是一种为区域医疗提供临床实验室信息服务的计算机应用程序,其主要功能是协助区域内所有临床实验室相互协调并完成日常检验工作,对区域内的检验数据进行集中管理和共享,通过…

根据图片生成前端代码:GPT vesion 助你释放效能 | 开源日报 No.98

php/php-src Stars: 36.4k License: NOASSERTION PHP 是一种流行的通用脚本语言,特别适合 Web 开发。快速、灵活和实用,PHP 支持从博客到世界上最受欢迎的网站等各种应用。PHP 遵循 PHP 许可证 v3.01 发布。 主要功能: 提供强大而灵活的脚…

RK3566 MPPJPEG 编码初入门 mpi_enc_test

一、导览 本文介绍了使用rk mpp 库的demo 程序,对一帧 nv12的yuv 图像进行jpeg 编码,最后输出jpeg图像的过程。作为学习mpp 入门的教程。 rk mpp 的源码仓库地址是:https://github.com/rockchip-linux/mpp/ 参考文档在:https://g…

UE4.27-UE5.1设置打包Android环境

打包Android配置文件 1. 配置打包Android的SDK需求文件位于下面文件中: 2. 指定了对应的SDK环境变量名字以及NDK需求等: UE4.27-UE5.1--脚本自动配置 安装前提 1. 务必关闭虚幻编辑器和Epic Games Launcher,以确保NDK组件的安装或引擎环境…

概率论之 证明 正态分布的上a 分位点的对称的性质

公式(Z(a) -Z(1-a)) 表示正态分布的上(a)分位点与下(1-a)分位点在分布曲线上关于均值的对称性。 左侧 (Z(a)): 这是分布曲线上累积概率为(a)的那个点。也就是说,这是一个使得这个点及其左侧的面积占据整个曲线下方(a)的位置。 右侧 (Z(1-a))&#xff1…

基于STM32 + DMA介绍,应用和步骤详解(ADC多通道)

前言 本篇博客主要学习了解DMA的工作原理和部分寄存器解析,针对ADC多通道来对代码部分,应用部分作详细讲解,掌握代码编程原理。本篇博客大部分是自己收集和整理,如有侵权请联系我删除。 本次博客开发板使用的是正点原子精英版&am…

软件设计师——程序设计语言基础(二)

📑前言 本文主要是【程序设计语言基础】——软件设计师——程序设计语言基础的文章,如果有什么需要改进的地方还请大佬指出⛺️ 🎬作者简介:大家好,我是听风与他🥇 ☁️博客首页:CSDN主页听风与…