1. 背景:在1998年,Alteon Networks 公司提出把Data Link Layer最大能传输的数据从1500 bytes 增加到9000 bytes,这个提议虽然没有得到IEEE 802.3 Working Group的同意,但是大多数设备厂商都已经支持 1500bytes 不包含18字节(14+4CRC) 2. 产生原因:提高网络的吞吐率和效率(小的数据报文封装二层信息时,效率不高),同时减少设备CPU的负担(对于小的报文,CPU花费大量的时间来分片和重组报文) 3. 定义:J…
最近有测试问我Jumbo和MTU分别限制的是什么把我问住了,网上查了一些资料,发现大部分是百科上copy下来的,都没有说到点子上,关键时刻还是同事靠谱,现在根据自己的理解整理一下.   首先了解一下二者的基本概念. MTU 最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议在某一层上面所能通过的最大数据报大小(以字节为单位),它通常与链路层协议有密切的关系.EthernetII帧结构如下: DMAC(6) SMAC(6) Type(2) Data(46-1…
MTU 最大传输单位 通过上面 MAC 封装的定义,现在我们知道标准以太网络frame所能传送的数据量最大可以到达 1500 bytes , 这个数值就被我们称为 MTU (Maximum Transmission Unit, 最大传输单位). 你得要注意的是,每种网络接口的 MTU 都不相同,因此有的时候在某些网络文章上面你会看到 1492 bytes 的 MTU 等等.不过,在以太网络上,标准的定义就是 1500 bytes.          IP 封包最大可以到 65535 bytes,…
最近使用ssh工具在VPN环境下连接一个生产环境的Linux主机的时候,发现经常出现输入命令后卡死的情况.最开始以为是Linux主机的问题,问了一些老同事之后发现原来是我自己电脑的最大传输单元MTU和服务器端接受的最大传输单元不匹配导致连接不通畅,换用其它电脑连接就不会出现这样的情况.在前辈的提示之后在网上搜索了一些查看和修改MTU值的方法,动手修改后成功解决了这个问题. 参考资料 什么是MTU,可以参考这篇文章:# 什么是MTU,如何检测和设置路由器MTU值 为什么MTU的默认值会是1500,…
http://baike.baidu.com/link?url=mU41JFjZzOb3R5crQFCNdocT5ovAswcoIqL2A4U6O5Re_U0-HIYndHG0vSKwc6HbptvHdK-6bmZfZV7ukHCpPa 因为协议数据单元的包头和包尾的长度是固定的,MTU越大,则一个协议数据单元的承载的有效数据就越长,通信效率也越高.MTU越大,传送相同的用户数据所需的数据包个数也越低. MTU也不是越大越好,因为MTU越大, 传送一个数据包的延迟也越大:并且MTU越大,数据包中…
MTU = MSS + TCP Header + IP Header. mtu是网络传输最大报文包. mss是网络传输数据最大值. MTU:maximum transmission unit,最大传输单元,由硬件规定,如以太网的MTU为1500字节. MSS:maximum segment size,最大分节大小,为TCP数据包每次传输的最大数据分段大小,一般由发送端向对端TCP通知对端在每个分节中能发送的最大TCP数据.MSS值为MTU值减去IPv4 Header(20 Byte)和TCP h…
1.共有三种动画,英文名字多种叫法如下 第一种动画:补间动画(Tween Animation/View Animation) 四个:RotateAnimation旋转. AlphaAnimation透明度. ScaleAnimation缩放. TranslateAnimation移动 第二种动画:帧动画(Frame Animation/Drawable Animation)类似多个图片的连续播放 第三种动画:属性动画(PropertyAnimation):使用Animator代替Animatio…
Android简单逐帧动画Frame的实现   Android简单逐帧动画Frame的实现 1.逐帧动画 即是通过播放预先排序好的图片来实现动态的画面,感觉像是放电影. 2.实现步骤: 1. 在工程里面导入要播放的图片.此简单例子中为start_icon1,2,3. 2. 在工程res文件目录下新建一个anim文件夹,在里面新建一个start_animation.xml格式文件,此文件用来定义动画播放图片的顺序及每一张图片显示停留时间. 例如下: <?xml version="1.0&qu…
Android帧布局(Frame Layout) FrameLayout是最简单的一个布局管理器.FrameLayout为每个加入其中的组件创建一个空白区域(一帧),这些组件根据layout_gravity执行自动对齐,如果组件layout_gravity的值一样,那么后面添加的组件会覆盖之前的.如果没有指定layout_gravity,默认为固定在屏幕的左上角.下面以几个例子来说明. 1.     根据layout_gravity的值来控制组件的位置 图1 Xml代码如下: <FrameLay…
一个对象的精灵帧(Sprite Frame)有若干关于大小的尺寸. 比较容易混淆,这里记录下来区别: CCSpriteFrame *spriteFrame = self.spriteFrame; CGSize textureSize = spriteFrame.texture.contentSize; CGRect frameRect = spriteFrame.rect; CGSize frameSize = spriteFrame.originalSize; 如果spriteFrame来源于…
android之动画(三)通过AnimationDrawable控制逐帧动画     android与逐帧动画: 效果图: 当我们点击按钮时,该图片会不停的旋转,当再次点击按钮时,会停止在当前的状态. activity代码: package cn.com.chenzheng_java.animation; import android.app.Activity; import android.graphics.drawable.AnimationDrawable; import android.…
笔者最近在调试28377系列DSP芯片的can通讯时,遇到一个小问题,百思不得姐~ 起因是这样的,在设计一个多单元并联的系统,所有单元使用can总线进行通讯,当通讯端口,can外设,以及相关通讯协议都设计好后,开始使用上位机进行通讯调试时,发现上位机可以正常接收到dsp通过can发送的数据,但检测dsp中的接收缓存,始终看不到上位机下发的数据. 于是,笔者反复排查can模块的配置,can邮箱的配置,以及相关变量的设计等,但并没有找到问题所在. 经过了半天时间,突然想到是否是上位机下发数据格式问题…
这段时间内,涉及到的都是移动端开发,说到移动端开发,我们就会思考到,目前分辨率的问题,如果用px为单位的话,在不同移动设备和不同分辨率下,页面的效果可能会有所不同,甚至导致页面变形.所以在次我们就用到了rem,使用rem为单位,在任何移动端下显示的效果都是一样的. 只要我们在页面的head中引入下面的 rem.js : ! function(n) { var e = n.document, t = e.documentElement, i = 750, d = i / 100, o = "ori…
1.实现:通过运营商提供的智能DNS,把电信用户访问时,数据进电信的网卡,出来时也从电信的网关出来,访问联通时,从联通网卡时,联通网卡出.这样速度就会快,实现双线主机的功能. 2.网卡信息:电信IP(TEL):114.80.0.4 netmask 255.255.255.128 gateway 114.80.0.3联通IP(CNC):112.65.0.2 netmask 255.255.255.0 gateway 112.65.0.1 3.vi /etc/iproute2/rt_tables,增…
无需指定font-size的大小 <script> // //- 设置根元素fontSize~ // (function (doc, win) { // var _root = doc.documentElement, // resizeEvent = 'orientationchange' in window ? 'orientationchange' : 'resize', // resizeCallback = function () { // var clientWidth = _ro…
我们目前的rtsp视频解决方案如下: 摄像头<---------->NVR(通过4G上传)<---------->easydarwin<---------->自己的播放器(或者VLC播放器) 如果NVR通过有线上传,上传主码流数据都没有任何压力,但是如果使用4G卡上传,使用子码流会出现花屏和跳帧的现象.如果使用第三码流的话就不会出现跳帧的现象.云台转动的时候花屏现象也不严重. 子码流设置如下: 第三码流设置如下: NVR中ffmpeg转发的命令如下: ffmpeg -i…
延迟 定义和标准延迟 延迟简单地说,它是一种转移或信息包从起点到终点,所花费的时间. 延迟=发送延迟+传播延迟+处理延迟+排队延迟: Propagation delay 传播时延 传播时延这个概念.是指电磁信号或者光信号在传输介质中传输的时延.而在光纤或者铜线中.光信号和电磁信号的传播速度都在20万公里/秒以上,在传输介质中传输的是电磁信号或者光信号,而不是数据! Transmission delay 传送时延 发送时延是指结点在发送数据时使数据块从结点进入到传输媒体所需的时间,也就是从数据块的…
IEEP-网络设计 网络设计概述 网络设计概述 1.负责把网络规划阶段获得的客户需求运用技术手段予以规范化体现 2.网络设计一般遵循模块化指导方针,分模块进行设计 3.网络设计的输出成果必须是规范的.详细的.明确的.可实现的 4.网络设计对设计人员要求 熟悉网络产品,能够在方案设计时进行正确的选型 理解各项网络技术 具备一定的项目经验,了解在项目实施过程中的各关键环节 网络设计的内容 物理网络设计 物理网络拓扑 小型网络典型结构 特点 用户数量较少一般几个至几十个用户 仅单个地点 网络无层次性…
HTTP 2.0是在SPDY(An experimental protocol for a faster web, The Chromium Projects)基础上形成的下一代互联网通信协议.HTTP/2 的目的是通过支持请求与响应的多路复用来较少延迟,通过压缩HTTPS首部字段将协议开销降低,同时增加请求优先级和服务器端推送的支持. 本文目的是学习HTTP 2.0的原理并研究其通信的详细细节.大部分知识点源于<Web性能权威指南>. 1. 二进制分帧层 二进制分帧层,是HTTP 2.0性能…
https://www.cisco.com/c/en/us/tech/ip/index.html IP协议在传输数据包时,将数据报文分为若干分片进行传输,并在目标系统中进行重组,这一过程称为分片(Fragmentation). IP分片(Fragmentation)发生在要传输的IP报文大小超过最大传输单位MTU(Maximum Transmission Unit)的情况.比如说,在以太网(Ethernet)环境中可传输最大IP报文大小(MTU)为1500字节.如果要传输的报文大小超过1500字…
1.TCP/IP的分层结构      网络协议通常分不同层次进行开发,每一层分别负责不同的同信功能.TCP/IP通常被认为是一个四层协议系统.      如图所示.       1)链路层(数据链路层或网络接口层),通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡. 2)网络层(互联网层),处理分组在网络中的活动. 3)运输层,主要负责两台主机上的应用程序提供端到端的同信.(TCP(传输控制协议)UDP(用户数据包协议). 4)应用层,主要负责处理特定的应用程序细节.大部分TCP/IP…
前言 DMA即直接内存存取.我理解它就是一个“交通部长”抑或是一个“搬运工”,协助CPU存储或读取数据.既然它的主要工作就是“搬运”数据,服务对象自然就是内存(不太严格的说法吧,STM32中Flash闪存也可成为DMA的服务对象). 问题1   DMA传输数量寄存器DMA_CNDTRx的含义 描述 在中文版本参考手册里,寄存器DMA_CNDTRx有如下解释: 对于“指示待传输字节数目”的解释,我有些疑惑,因为在参考手册DMA主要特性中又是这么说的:可编程的数据传输数目:最大为65535.同样的,…
TCP/IP详解学习笔记(1)-- 概述1.TCP/IP的分层结构      网络协议通常分不同层次进行开发,每一层分别负责不同的同信功能.TCP/IP通常被认为是一个四层协议系统.      如图所示.       1)链路层(数据链路层或网络接口层),通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡. 2)网络层(互联网层),处理分组在网络中的活动. 3)运输层,主要负责两台主机上的应用程序提供端到端的同信.(TCP(传输控制协议)UDP(用户数据包协议). 4)应用层,主要负责处…
第一章概述 1.2 分层 网络编程通常分不同层次进行开发,每一层负责不同的通信功能. 一个协议族比如TCP/IP,通常是一组不同层次上多个协议的组合.一般可以认为是是四层协议系统: 链路层:有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡.它们一起处理与电缆(或其他任何传输媒介)的物理接口细节.协议有以太网协议. 网络层:处理分组在网络中的活动,例如分组的选路.一般协议有ip协议,ICMP协议,IGMP协议. 运输层:有时也叫传输层,为两台主机系统提供…
[小知识] CCSpriteFrame     :精灵帧.    它是相对动画而产生的,其实就是一张纹理图片. CCAnimationFrame  :动画帧.    由精灵帧与间隔帧数组成,是动画CCAnimation中的一帧. CCSpriteFrameCache:精灵帧缓冲.用于存放精灵帧CCSpriteFrame的缓冲池. CCAnimationCache  :动画缓冲.  用于存放动画CCAnimation的缓冲池. delayPerUnit      :单位帧间隔.连续两个动画帧之间的…
目录 TCP/IP协议概述 分层 延伸知识 FTP例子 为什么需要网络层和传输层 TCP/IP的分层 封装 分用 总结 本文主要摘抄自书籍<TCP/IP详解卷一:协议>与TCP协议相关内容的学习笔记. TCP/IP协议概述 很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但TCP/IP协议族允许它们互相进行通信.TCP/IP起源于60年代末美国政府资助的一个分组交换网络研究项目,到90年代已发展成为计算机之间最常应用的组网形式.它成为被称作"全球互联网"或&…
在<在深谈TCP/IP三步握手&四步挥手原理及衍生问题—长文解剖IP>里面提到 单个TCP包每次打包1448字节的数据进行发送(以太网Ethernet最大的数据帧是1518字节,以太网帧的帧头14字节和帧尾CRC校验4字节 seq编码,在RFC793中,建议ISN和一个假的时钟绑在一起,这个时钟会在每4微秒对ISN做加一操作,直到超过2^32 据此推算,貌似单一线路,网络传输速度也就1.5*(1/4*10^6) = 375M/bs 对此的论据是:segments packets fra…
使用 ping 测试确定网卡最佳 MTU 的方法 MTU ( Maximum Transmission Unit ,最大传输单元)是指某一层协议上一次能最大传输的数据量.当一个数据包超过 MTU 数据量时,数据包需要被重组,或者是被丢弃: MTU 太小时,会导致同一段时间需要拆解为更多的数据包,同样对性能不利. 通常交换机支持的 MTU 为1500,而 windows 中默认的 MTU 也为1500.但是某些场合下,如 VPN 等,需要对数据包进行再次封装,通常无法使用到 1500 的 MTU.…
MTU:是网络的最大传输单元,通信术语:最大传输单元(Maximum Transmission Unit,MTU)是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位).最大传输单元这个参数通常与通信接口有关. 当MTU不合理时会造成如下问题1.本地MTU值大于网络MTU值时,本地传输的"数据包"过大导致网络会拆包后传输,不但产生额外的数据包,而且消耗了"拆包.组包"的时间.2.本地MTU值小于网络MTU值时,本地传输的数据包可以直接传输,但是未能完全…
帧传输类就是按照一帧的固定大小来传输数据,所有的写操作首先都是在内存中完成的直到调用了flush操作,然后传输节点在flush操作之后将所有数据根据数据的有效载荷写入数据的长度的二进制块发送出去,允许在接收的另一端按照固定的长度来读取. 帧传输类同样还是从缓存基类TBufferBase继承而来,实现的接口当然也基本相同,只是实现的方式不同而已,下面就来看看具体的实现过程和原理. 这个类所采用的默认缓存长度是512(static const int DEFAULT_BUFFER_SIZE = 51…