链路层的简介和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 ... 
随机推荐
- Mac OS X 删除文件快捷键
			今天发现自己还不知道怎么快捷的删除文件,网上找了下相关的资料. 原来删除文件的快捷键是:command+delete(把文件放到废纸篓),对于我这种笔记本用户,确实方便很多哈 还有一个命令也挺有用的: ... 
- 见证历史 -- 2013 NBA 热火夺冠之路有感
			见证历史-- 2013 NBA 热火夺冠之路有感今年NBA季后赛从第一轮看起,到最终的热火夺冠,应该看得是最爽的一次.但一些情节和细节,回忆起来,深有感悟. 1. 做人要低调詹宁斯豪言演黑八雄鹿本赛季 ... 
- [CMD]oracle数据库的导出导入
			除了推荐使用PL/SQL Developer 工具对oracle进行导出导入(http://www.cnblogs.com/whylaughing/p/5983490.html )之外,比较常用的还有 ... 
- check_user_createdate.sh
			在前面这篇文章Linux如何找出用户的创建时间里面讨论了查看用户创建时间的方法,后面自己尝试弄了一个脚本来检查所有用户创建时间脚本,当然更合理的应该叫检查所有用户的密码修改时间比较准确(因为这种方法有 ... 
- 十五天精通WCF——第八天  对“绑定”的最后一点理解
			转眼已经中断10几天没有写博客了,也不是工作太忙,正好碰到了端午节,然后最近看天津台的爱情保卫战入迷了...太好看了,一直都是回味无穷...而且 涂磊老师话说的真是tmd的经典,然后就这样耽搁了,好了 ... 
- 编写Java应用程序。首先,定义描述学生的类——Student,包括学号(int)、 姓名(String)、年龄(int)等属性;二个方法:Student(int stuNo,String name,int age) 用于对对象的初始化,outPut()用于输出学生信息。其次,再定义一个主类—— TestClass,在主类的main方法中创建多个Student类的对象,使用这些对象来测 试Stud
			package zuoye; public class student { int age; String name; int stuNO; void outPut() { System.out.pr ... 
- SVN Unable to connect to a repository at UR
			背景: 1. SVN服务器:VisualSVN-Server-2.5.5: 2. SVN客户端:TortoiseSVN-1.7.6.22632-x64-svn-1.7. ... 
- Linux下ejabberd开机自启(CentOS)
			废话少说,Linux下开机自启动Ejabberd步骤如下: 1.从ejabberd安装目录的bin目录拷贝ejabberd.init到/etc/init.d/ejabberd下 [root@imser ... 
- 在JAVA中,关于反射机制的讨论
			一.什么是反射机制 简单的来说,反射机制指的是程序在运行时能够获取自身的信息.在java中,只要给定类的名字, 那么就可以通过反射机制来获得类的所有信息. 二.哪里用到反射机制 ... 
- junit 测试及assert的扩张
			@Testpublic void method() 测试注释指示该公共无效方法它所附着可以作为一个测试用例. @Beforepublic void method() Before注释表示,该方法必须在 ... 
