网络--链路层协议

以太网和802.3

最小长度,802.3 38,以太网 46 不足插入pad字节补齐

(1)其中的源地址和目的地址是指网卡的硬件地址(也叫MAC 地址),长度是48 位,是在网卡出厂时固化的。

(2)注意网卡芯片(例如DM9000A)收到的数据就是如上所示的一长串数据;其中包括以太网帧头、IP报报头、传输层协议段头、应用层所需数据。

(3)以太网帧中的数据长度规定最小46 字节,最大1500 字节,ARP 和RARP 数据包的长度不够46 字节,要在后面补填充位。最大值1500 称为以太网的最大传输单元(MTU),不同的网络类型有不同的MTU,如果一个数据包从以太网路由到拨号链路上,数据包度大于拨号链路的MTU了,则需要对数据包进行分片fragmentation)。ifconfig 命令的输出中也有“MTU:1500”。注意,MTU 个概念指数据帧中有效载荷的最大长度,不包括帧首部的长度。

1、MTU的概念

MTU即Maximum Transmission Unit 最大传输单元。它是指一种通信协议的某一层上面所能通过的最大数据包大小(以字节为单位)。

2、路径MTU

路径MTU是指一条因特网传输路径中,从源地址到目的地址所经过的“路径”上的所有IP跳的最大传输单元的最小值。或者从另外一个角度来看,就是无需进行分片处理就能穿过这条“路径”的最大传输单元的最大值。

3、路径MTU的发现方法

这是确定两个IP主机之间路径最大传输单元的技术,其目的就是为了避免IP分片。首先源地址将数据报的DF位置位,在逐渐增大发送的数据报的大小——路径上任何需要将分组进行分片的设备都会将这种数据报丢弃并返回“数据报过大“的ICMP响应到源地址——这样源主机就”学习“到了无需分片就能通过这条路径的最大的最大传输单元。



SLIP的帧格式描述:

  1. IP数据报以一个称作END(0xc0)的特殊字符结束。同时,为了防止数据报到来前的噪声被当作数据报内容,大多数实现在数据报的开始出也传一个END字符。
  2. 如果IP报文中某个字符为END,那么就要连续传输两个字节0xdb、0xdc来取代它。oxdb也称作为SLIP的ESC字符
  3. 如果IP报文中某个字符为SLIP的ESC字符,则需要连续传输0Xdb、0xdd来取代它

SLIP的缺陷:

  1. 每一段必须知道对方的IP地址,却无法把本端的IP地址通知另一端
  2. 数据帧中没有类型字段,也就是所拥有SLIP的线路不能同时使用其他协议
  3. SLIP没有数据校验位,报文错误只能通过上层协议发现。

PPP:点对点协议,修改了SLIP的所有缺陷

  1. 在串行立案率上封装IP数据报的方法。PPP既支持数据为8位和无奇偶校验的异步模式,还支持面向比特的同步链接。
  2. 建立、配置及测试数据立案率的立案率控制协议(NCP:Network Control Protocol)体系。
  3. 针对不同网络层协议的网络控制协议体系


PPP的数据帧格式为

———————— —————— - —————— -———————— ——————

| 标志位(0x7E) | 地址位(0xFF) | 控制位(0x03) | 协议字段(2字节) | 信息(最多1500)|

———————— ——————- —————— -——————————————

————————

| CRC | 标志(0X7E)|

————————

协议0021:IP数据报

协议C021:链路控制数据

协议8021:网络控制数据

其具体实现过程为:

  1. 当遇到字符0x7e时,需连续传送两个字符:0x7d、0x5e,以实现标识字符的转义
  2. 当遇到0x7d时,连续传送0x7d、0x5d
  3. 默认情况下,如果字符小于0x20时,进行转义,第6bit补码,如(0x01,发送0x7d、0x21)

点对点协议(PPP)

为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议(OSI 模式中的第二层),替代了原来非标准的第二层协议,即 SLIP。

PPP 主要由以下几部分组成:

封装:一种封装多协议数据报的方法。PPP 封装提供了不同网络层协议同时在同一链路传输的多路复用技术。PPP 封装精心设计,能保持对大多数常用硬件的兼容性。

链路控制协议:PPP 提供的 LCP 功能全面,适用于大多数环境。LCP 用于就封装格式选项自动达成一致,处理数据包大小限制,探测环路链路和其他普通的配置错误,以及终止链路。LCP 提供的其他可选功能有:认证链路中对等单元的身份,决定链路功能正常或链路失败情况。

网络控制协议:一种扩展链路控制协议,用于建立、配置、测试和管理数据链路连接。

配置:使用链路控制协议的简单和自制机制。该机制也应用于其它控制协议,例如:网络控制协议(NCP)。

PPP的工作原理:

为了建立点对点链路通信,PPP 链路的每一端,必须首先发送 LCP 包以便设定和测试数据链路。在链路建立,LCP 所需的可选功能被选定之后,PPP 必须发送 NCP 包以便选择和设定一个或更多的网络层协议。一旦每个被选择的网络层协议都被设定好了,来自每个网络层协议的数据报就能在链路上发送了。链路将保持通信设定不变,直到有 LCP 和 NCP 数据包关闭链路,或者是发生一些外部事件的时候。

PPPOE 使得一个网络上的计算机可以通过简单桥接访问设备连接到远端接入设备。为了提供以太网上的点到点连接,每一个 PPP 会话必须知道远程通信对方的以太网地址,同时建立一个唯一的会话标识符。PPPoE包含一个(以太网地址)发现协议来提供这个功能。

PPPoE 过程分为两个不同的阶段,即 Discovery (地址发现)阶段和 PPP 会话阶段。当某个主机希望发起一个 PPPoE 会话时,它必须首先执行 Discovery 来确定对方的以太网 MAC 地址并建立起一个 PPPoE 会话标识符(SESSION_ID)。虽然 PPP 定义的是端到端的对等关系,Discovery 却是一种客户端 - 服务器关系。在 Discovery 过程中,主机(作为客户端)发现某个访问集中器(AccessConcentrator,作为服务器),根据网络的拓扑结构,可能主机能够发现多个访问集中器。Discovery 阶段允许主机发现所有的访问集中器并从中选择一个。当 Discovery 阶段成功完成之后,主机和所选择的访问集中器两者都具备了用于在以太网上建立点到点连接所需的所有信息。Discovery阶段保持无状态(stateless)直到建立起一个 PPP 会话。一旦 PPP 会话建立,主机和访问集中器两者都必须为一个 PPP 虚拟接口分配资源。

PPP与SLIP比较,有以下优点:

1、支持多种协议:PPP帧头中有一个协议域,用来标识链路上传送的不同的网络协议。这使得PPP协议具有良好的扩展性,可以支持不同的上层协议。

2、错误检测:PPP帧中包括FCS域来用来检测错误,一旦发现错误,就丢弃收到的数据包,并报告一个输入错误。

3、多种类型链路:PPP允许在多种类型的链路上运行。

4、选项协商:PPP允许通信双方动态协商某些选项。从某种意义来说,它允许链路一方配置另一方。

5、授权:PPP利用两个授权协议PAP和CHAP,可进行链路层授权。这两个协议通过发送和接收口令信息检查对方是否被授权与本机建立链路。

6、IP地址协商:PPP允许一方作为PPP服务器,在客户端拨入时分配IP地址。在PPP链路终止后,IP地址可被重新使用。

功能简单、封装成帧、数据透明性等

PPP是个协议簇,它包含一系列协议:

(1)链路控制协议(LCP),PPPLCP提供了建立、配置、维护和终止点对点链接的方法。

  (2)IP控制协议(IPCP),IPCP是IP的网络控制协议(NCP),负责点对点链路通信双方的IP协议模块的配置、使能和禁止,还负责通信双方IP地址的协商。它与LCP的包交换机制相同,但只有在PPP链路建立起来之后,才能进行IPCP的包交换。

  (3)口令授权协议(PAP),PAP利用双向的握手信号建立通信双方的认证,这一过程在链路初始链路化阶段完成。一旦链路建立起来,通信一方向授权者不断发送ID口令对,直到授权被认可,否则连接被终止。

 (4)询问握手授权协议(CHAP),CHAP比PAP要安全得多,CHAP利用三次握手周期性地检验对方身份。


arp协议

arp结构op操作参数:1为请求,2为应答

时间: 2024-10-14 14:00:51

网络--链路层协议的相关文章

网络7层协议

第一层,物理层  OSI模型最低层的“劳苦大众”.它透明地传输比特流,就是传输的信号.该层上的设备包括集线器.发送器.接收器.电缆.连接器和中继器. 第二层,数据链路层 这一层是和包结构和字段打交道的和事佬.一方面接收来自网络层(第三层)的数据帧并为物理层封装这些帧:另一方面数据链路层把来自物理层的原始数据比特封装到网络层的帧中.起着重要的中介作用. 数据链路层由IEEE802规划改进为包含两个子层:介质访问控制(MAC)和逻辑链路控制(LLC). 智能集线器.网桥和网络接口卡(NIC)等就驻扎

网络七层协议的形象说明

网络七层协议的形象说明 第一层,物理层  OSI模型最低层的“劳苦大众”.它透明地传输比特流,就是传输的信号.该层上的设备包括集线器.发送器.接收器.电缆.连接器和中继器. 第二层,数据链路层 这一层是和包结构和字段打交道的和事佬.一方面接收来自网络层(第三层)的数据帧并为物理层封装这些帧:另一方面数据链路层把来自物理层的原始数据比特封装到网络层的帧中.起着重要的中介作用. 数据链路层由IEEE802规划改进为包含两个子层:介质访问控制(MAC)和逻辑链路控制(LLC). 智能集线器.网桥和网络

网络七层协议形象解释

第一层,物理层  OSI模型最低层的"劳苦大众".它透明地传输比特流,就是传输的信号.该层上的设备包括集线器.发送器.接收器.电缆.连接器和中继器. 第二层,数据链路层 这一层是和包结构和字段打交道的和事佬.一方面接收来自网络层(第三层)的数据帧并为物理层封装这些帧:另一方面数据链路层把来自物理层的原始数据比特封装到网络层的帧中.起着重要的中介作用. 数据链路层由IEEE802规划改进为包含两个子层:介质访问控制(MAC)和逻辑链路控制(LLC). 智能集线器.网桥和网络接口卡(NIC

计算机网络——链路层协议

一. 链路层的功能 可靠交付:在高差错的链路,如无线链路,可以进行可靠交付:对于其它的有线,可以是多余的: 流量控制:防止接收方的缓存区溢出,帧丢失: 差错检测与差错纠正:在硬件上实现了: 二.多路访问协议 信道划分协议: 时分复用(TDM).频分复用(FDM). 码分多址(CDMA): 随机接入协议:以信道的全部速率进行传输,遇到碰撞就停下来, 等待随机的时间后再次发送: 时隙ALOHA:把每个节点的发送时间开始都是固定的.同步的(如12点.1点.2点--, 而不会12.04发送),间隔时间为

网络七层协议、五层协议与四层协议

OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 .完成中继功能的节点通常称为中继系统.一个设备工作在哪一层,关键看它工作时利用哪一层的数据头部信息.网桥工作时,是以MAC头部来决定转发端口的,因此显然它是数据链路层的设备.具体说: 物理层:网卡,网线,集线器,中继器,调制解调器 数据链路层:网桥,交换机 网络层:路由器 网关工作在第四层传输层及其以上 集线器是物理层设备,采用广播的形式来传输信息. 交换机就是

在网络7层协议中,如果想使用UDP协议达到TCP协议的效果,可以在哪层做文章?(QQ 为什么采用 UDP 协议,而不采用 TCP 协议实现?)

为了解决这题,可以具体看看下面这个讨论. 解灵运工程师 185 人赞同 某次架构师大会上那个58同城做即时通信的人说:原因是因为当时没有epoll这种可以支持成千上万tcp并发连接的技术,所以他们使用了udp,然后在udp上面封装了一下,模拟了一下tcp,解决了大并发的问题,之后因为做的很nb了,虽然epoll这种技术出现了,还是没有改回使用tcp了.现在再做类似的东西就不需要使用udp了.这个说法应该比较可信的. 发布于 2014-04-16 18 条评论 感谢 分享 收藏 • 没有帮助 • 

网络七层协议简述

C/S和B/S架构 C/S和B/S架构的介绍 #C:client客户端 #B:browse浏览器端 #S:server服务器端 C/S和B/S架构的优缺点 #C/S架构 基于客户端与服务端之间的通信 #优点:个性化设置,相应速度快 #缺点:开发成本高,维护成本高,占用空间,用户固定 ======================================================= #B/S架构 基于浏览器与服务端之间的通信 #优点:开发成本低,占用空间小,用户不固定 #缺点:功能相对

网络七层协议

OSI模型有7层结构,每层都可以有几个子层. OSI的7层从上到下分别是 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 其中高层(即7.6.5.4层)定义了应用程序的功能: 下面3层(即3.2.1层)主要面向通过网络的端到端的数据流. 应用层 与其它计算机进行通讯的一个应用,它是对应应用程序的通信服务的.例如,一个没有通信功能的字处理程序就不能执行通信的代码,从事字处理工作的程序员也不关心OSI的第7层.但是,如果添加了一个传输文件的选项,那么字处理器的

网络七层协议及其作用

OSI的7层从上到下分别是: 7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层 其中高层,既7.6.5.4层定义了应用程序的功能,下面3层,既3.2.1层主要面向通过网络的端到端的数据流.下面我给大家介绍一下这7层的功能: (1)应用层:与其他计算机进行通讯的一个应用,它是对应应用程序的通信服务的.例如,一个没有通信功能的字处理程序就不能执行通信的代码,从事字处理工作的程序员也不关心OSI的第7层.但是,如果添加了一个传输文件的选项,那么字处理器的程序员就需