我们以一个常见的查看IP指令为出发点(ifconfig -a):

 

1、链路层是什么

链路层是指硬件层协议。也即网络所使用的硬件,比如:以太网(后文主要讨论对象),令牌环网,FDDI已经RS-232串行线路。

在上面的命令(ifconfig -a)结果中,硬件地址(MAC)为08:00:27:00:9c:59 (48bit),链路层主要的作用就是连接不同的两个硬件。

 

2、链路层的作用

1.为IP模块发送和接收IP数据报

2.为ARP模块发送和接收ARP应答

3.为RARP发送RARP请求和接收RARP应答

 

注意:

1.TCP/IP支持在不同链路层之间的传输

2.IP、ARP、RARP表示三个协议,后面的三个章节我们将描述这3个协议

 

3、具体链路层

3.1、RFC标准的链路层以及链路层实例以太网的封装格式:

 

3.2、对IP数据包的进一步封装SLIP和PPP协议:

在串行线路上对IP数据报进行简单的封装存在多种方式SLIP就是其中一种简单的形式,SLIP对IP数据报的封装形式:

            

由于SLIP只是对IP数据报进行简单的封装,所以依然存在较多的问题:

1.两端都需要对方的IP地址,不能将本端的IP告知另一端

2.封装格式中不存在类型字段,因此该封装具有特殊性

3.封装格式中不存在校验和

 

PPP协议是为解决SLIP的问题而提出的另一种对IP数据包封装格式:

 

3.3、减少逻辑操作的环回接口(Loopback Interface)描述:

环回接口(Loopback Interface)存在原因是为了减少在主机内部的数据传递(省略传输层(TCP,UDP),网络层(IP层))的逻辑操作。其具体的情况见最初命令(ifconfig -a)中的lo。

其判断的逻辑较为简单:

关于lookback interface的几个注意点:

1.传给环回地址(一般是127.0.0.1)的任何数据均作为IP输入

2.传给广播地址或多播地址的数据报复制一份传给环回接口,然后送到以太网上。这是因为广播传送和多播传送的定义包含主机本身

3.任何传给该主机IP地址的数据均送到环回接口

 

3.4、最大传输单元(MTU)和路径MTU描述:

每一种数据链路层协议,都有一个MTU(最大传输单元)定义,在这个定义下面,如果IP数据报过大,则要进行分片(fragmentation),使得每片都小于MTU。需要注意的是MTU只是逻辑限制(程序限制,一般限制为最优解),而不是固定值,使用netstat –i可以查看MTU(ifconfig –a同样可以)。

     

注意此处显示的MTU表示的是最大传输单元。路径MTU则是指两台相互通信的主机中路径最小的那个MTU。

 

 

Reference:

TCP/IP 协议:链路层概述的更多相关文章

  1. TCP/IP协议学习-1.概述

    目录 TCP/IP协议概述 分层 延伸知识 FTP例子 为什么需要网络层和传输层 TCP/IP的分层 封装 分用 总结 本文主要摘抄自书籍<TCP/IP详解卷一:协议>与TCP协议相关内容 ...

  2. TCP/IP中链路层的附加数据(Trailer数据)和作用

    1.TCP/IP中链路层的附加数据是什么 在用wireshark打开报文时,链路层显示的Trailer数据就是附加数据,如图 2.如何产生 1.例如以太网自动对小于64字节大小的报文进行填充(未实验) ...

  3. TCP/IP协议详解概述

    TCP/IP协议详解卷1--第一章概述--读书笔记 作者:vpoet 日期:2015/06/25 注:本系列的文章只是作者对TCP/IP协议的理解,难免会出现纰漏或者不完整,当然也有可能很肤浅,希望大 ...

  4. 网络基础知识-TCP/IP协议各层详解

    TCP/IP简介 虽然大家现在对互联网很熟悉,但是计算机网络的出现比互联网要早很多. 计算机为了联网,就必须规定通信协议,早期的计算机网络,都是由各厂商自己规定一套协议,IBM.Apple和Micro ...

  5. TCP/IP协议详解---概述

        工作之后,才发现以前在学校里学的东西忘得太快太干净了,现在需要一点点地捡起来了,要不然写几行程序会闹很多笑话会出现很多bug的.从今天开始,翻一翻<TCP/IP协议详解 卷1>这本 ...

  6. TCP/IP协议栈 -----链路层

    这节说一下链路层和ARP RARP协议 链路层: 在协议栈中链路层的目的有三个:1. 为IP模块发送或接受数据包 2.为ARP模块发送或接受ARP请求 3. 为RARP模块发送或接受RARP请求. 让 ...

  7. TCP/IP 笔记 - 链路层

    链路层的目的是为IP模块发送和接收IP数据报. 以太网和IEEE 802局域网标准 以太网指的是一套标准,有DEC.Intel公司和Xerox公司在1980年首次发布,并在1982年加以修订.第一个常 ...

  8. TCP/IP学习-链路层

    链路层: 路径MTU: 网络层: ifconfig netstat IP首部 网络字节序:大端字节序

  9. OSI七层模型和五层TCP/IP协议

    1.查公网ip的方法: windows,打开浏览器,访问百度,搜IP即可 linux:curl ifconfig.me 2.OSI七层模型 ==网络工程师:== 物理层 1层,通信介质的信号到数字信号 ...

  10. 【TCP/IP 协议】 TCP/IP 基础

    总结 : 通过学习 TCP/IP 基础, 并总结相关笔记 和 绘制思维导图 到博客上, 对 TCP/IP 框架有了大致了解, 之后开始详细学习数据链路层的各种细节协议, 并作出笔记; 博客地址 : h ...

随机推荐

  1. Java垃圾回收以及内存分配

    http://www.cnblogs.com/ggjucheng/p/3977384.html http://www.blogjava.net/qcyycom/archive/2012/04/14/3 ...

  2. mysql 一些基础的语法和命令

    语法: SELECT 属性列表       FROM 表名或视图名       [ WHERE 条件表达式1 ]       [ GROUP BY 属性名1 [ HAVING 条件表达式2 ] [ W ...

  3. c# this关键字的理解

    this关键字引用类的当前实例 1/限定被相似的名称隐藏的成员 2/将对象作为参数传递到其他方法 3/声明索引器 实际案例参考: //成员类 public class Employee { priva ...

  4. pycharm的一些设置和快捷键

    最近在搞python的开发,用上了pycharm,所以记录一些pycharm的设置 1. pycharm默认是自动保存的,但我个人不太习惯,习惯自己按ctrl + s  所以进行如下设置: 1. Se ...

  5. 五大权限:UGO权限、SetUID SetGID Sticky、ACL权限、chattr(文件系统级别的权限)、SELINUX

    五大权限:UGO权限.SetUID SetGID Sticky.ACL权限.chattr(文件系统级别的权限).SELINUX   ======================文件属性以及ugo权限= ...

  6. [css] CSS相对定位|绝对定位

    第一篇链接:http://www.zhangxinxu.com/wordpress/2010/12/css-%E7%9B%B8%E5%AF%B9%E7%BB%9D%E5%AF%B9%E5%AE%9A% ...

  7. myeclipse/eclipse没有Project Facets的解决方法

    http://www.cnblogs.com/jerome-rong/archive/2012/12/18/2822783.html 经常在eclipse中导入web项目时,出现转不了项目类型的问题, ...

  8. laravel 中 与前端的一些事3 之使用Gulp编译less

    更多关于less的使用方法,参考上一篇scss的使用,两者大同小异

  9. 关于JAVA EE项目在WEB-INF目录下的jsp页面如何访问WebRoot中的CSS和JS文件

    找了这么久资料,总算解决了 感谢博客园:http://www.cnblogs.com/xsht/p/5275081.html 感谢百度:http://zhidao.baidu.com/link?url ...

  10. VRP

    VRP系统命令采用分级保护方式,命令被划分为参观级.监控级.配置级.管理级4个级别. 参观级:网络诊断工具命令(ping.tracert).从本设备出发访问外部设备的命令(包括:Telnet客户端.S ...