链路层的简介和MTU
链路层杂谈(凭个人理解瞎说的,欢迎拍砖)
链路层,说白了就是把网络层的IP数据处理一下,加点东西,放到物理层上去。
加的东西:源、目的地址和CRC校验值,有的还有类型这个字段,用来区分协议。
处理的部分:就是数据,就是把IP数据报,用指定的方法打个包;
打包的方法有以下几种:
尾部封装:把变长字段都放到最后(CRC之前),主要是为了前面的512整字节的数据整体直接复制到内核中而减小复制次数。
SLIP协议:串行线路IP,就是用END字符作为分隔符,分割数据报。为了防止干扰,数据报的开头也一定保证有一个END标识符。
压缩的SLIP:也就是CSLIP,相对于SLIP,只存储修改的控制信息。就是为了防止发送一个字节也要加40个字节头的情况。
PPP:点对点协议,增加了“协议”这个字段,可以支持更多的协议,更多的业务。
MTU(最大传输单元)
定义:各种为网络对数据帧都有一个大小限制,这个值就是MTU。

一般的我们常用的是以太网和IEEE 802.3的限制分别为1500和1492字节。如下图:

路径MTU
从A到B可能经过不同的网络,其中最小的MTU就是路径MTU;
另外,从A到B,与B到A的寻路结果可能不同,所以它们的路径MTU也有可能不同。
MTU的吞吐量
如果线路速率是9600 b/s,一字节等于8bit,加上开始停止两个bit,那么线路的速率就是960B/s,传输一个1024B的分节需要1066ms。
从一般的经验上看,一个交互应用,在本机有另一个应用发送1024B数据到网络的情况下,它大约要等待一般的时间533ms。这个时间对于交互应用来说体验很不好。
SLIP用减小MTU值的方法解决:MTU=256,那么传输需要266ms,它的一半就是133ms。但是这样减小了带宽的利用率(因为数据报占用的比例小了)
// 0)
{
var content = '';
content += '
';
$(h2_list[i]).before(go_to_top);
var h3_list = $(h2_list[i]).nextAll("h3");
var li3_content = '';
for(var j=0; j
';
$(h3_list[j]).before(li3_anchor);
li3_content += '
';
}
var li2_content = '';
if(li3_content.length > 0)
li2_content = '
- ' + li3_content + '
';
else
li2_content = '
';
content += li2_content;
}
content += '
';
content += '
';
content += '
正文
';
if($('#cnblogs_post_body').length != 0 )
{
$($('#cnblogs_post_body')[0]).prepend(content);
}
}
}
GenerateContentList();
// ]]>
链路层的简介和MTU的更多相关文章
- tcp/ip详解 卷1 -- 链路层
以太网 以太网指数字设备公司,英特尔公司,Xeror公司在 1982年联合公布的一个标准, 是当前 TCP/IP 采用的主要局域网技术. 以太网采用 CSMA/CD 的媒体接入方法, 即 带冲突检测的 ...
- TCP/IP协议族之链路层(二)
TCP/IP学习记录,如有错误请指正,谢谢!!! TCP/IP协议族之链路层(二) 链路层是最底层协议,主要有三个目的: 1. 为IP模块发送和接收IP数据报 2. 为ARP模块发送ARP请求和接收A ...
- TCP/IP中最高大上的链路层简介(二)
引言 对于程序猿来讲,似乎越接近底层,就越显得高大上.这也算是程序猿们的共同认知吧,虽然不是所有人.今天LZ就和各位一起探讨一下TCP/IP中最高大上的一层,也就是最底层的链路层. 这一层LZ了解的还 ...
- tcp/ip 卷一 读书笔记(2)物理层和链路层网络
物理层和链路层网络 术语 链路 是一对相邻结点间的物理线路,中间没有任何其他的交换结点. 数据链路 除了物理线路外,还必须有通信协议来控制这些数据的传输. 帧 数据链路层的协议数据单元(PDU) 串行 ...
- TCP/IP协议学习(六) 链路层详解
学习知识很简单,但坚持不懈却又是如此的困难,即使一直对自己说"努力,不能停下"的我也慢慢懈怠了... 闲话不多说,本篇将讲述TCP/IP协议栈的链路层.在本系列第一篇我讲到,TCP ...
- Linux内核--网络栈实现分析(三)--驱动程序层+链路层(上)
本文分析基于Linux Kernel 1.2.13 原创作品,转载请标明http://blog.csdn.net/yming0221/article/details/7497260 更多请看专栏,地址 ...
- TCP/IP学习-链路层
链路层: 路径MTU: 网络层: ifconfig netstat IP首部 网络字节序:大端字节序
- 《TCP/IP详解卷1:协议》第2章 链路层-读书笔记
章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...
- TCP/IP 协议:链路层概述
我们以一个常见的查看IP指令为出发点(ifconfig -a): 1.链路层是什么 链路层是指硬件层协议.也即网络所使用的硬件,比如:以太网(后文主要讨论对象),令牌环网,FDDI已经RS-232 ...
随机推荐
- JS实现悬浮移动窗口(悬浮广告)的特效
页面加载完成之后向页面插入窗口,之后向窗口插入关闭按钮,使用setInterval()函数触发moves()函数开始动画 js方法: 复制代码代码如下: <!DOCTYPE HTML PUB ...
- java验证码组件kaptcha使用方法
使用方法: 项目中导入kaptcha-2.3.jar包在web.xml里面新增: <!-- 登陆验证码Kaptcha --> <servlet> <s ...
- Safari 快捷键
标签和网页导航快捷键 8 个 切换到下一个标签页 – Control+Tab 切换到上一个标签页 – Control+Shift+Tab 向下滚动一屏 – 空格 向上滚动一屏 – Shift+空格 焦 ...
- Git详解之三 Git分支
相关文档 — 更多 Git 基础培训.ppt GIT 使用经验.ppt GIT 介绍.pptx GIT 分支管理是一门艺术.docx Eclipse上GIT插件EGIT使用手册.docx git/gi ...
- 使用开源免费类库在.net中操作Excel
自从上次找到NPOI之后,根据园友提供的线索以及Google,又找到了一些开源免费的类库,所以都简单体验了一遍. 主要找到以下类库: MyXls(http://sourceforge.net/proj ...
- AS与.net的交互——加载web上的xml
最近搞了个私活,需要用as去加载一个网站的xml,不过本人as也不咋滴,就去看看怎么玩,看完之后也蛮简单的. 由于业务上比较复杂,就随便说个小例子吧. 很多时候,为了页面区域更加灵活,生动,有吸引力, ...
- 0006 《SQL必知必会》笔记02-计算字段与函数
1.从数据库中检索出的数据往往并不是最后要展示的格式,可以在数据库端或者客户端应用程序中完成转换和格式化,但一般说来,在数据库服务器中完成要快很多. 2.拼接字段:将几个值连接到一起构成单个值.Ora ...
- WinMain与wWinMain,win32的字符集问题
刚接触win32开发的会发现,用vs新建一个win32项目默认代码里面的入口函数并不是WinMain而是_tWinMain或者wWinMain,这些都有什么区别呢? WinMain对应的是多字节字符集 ...
- Hadoop Kernel tunning
/etc/security/limits.conf @ochadoop soft nofile 102642 @ochadoop hard nofile 102642 @ochadoop soft n ...
- 感觉没睡好就..-shenmedoumeixie....
hi 昨晚没睡好,虽然梦很香,但睡不好没精神做科研啊... 1.jQuery 十二.实现聊天室创建 12.1 基本功能 登陆: 无刷新实时交流: 支持表情. 12.2 大致效果 登陆——>验证, ...