【计算机网络】五、链路层

 

链路(Link):从一个结点到相邻结点的一段物理线路,而中间没有任何其他的交换结点

数据链路(Data Link):把实现通信协议的硬件和软件加到链路上,构成数据链路

数据链路层以为单位传输和处理数据

封装成帧

指数据链路层给上层交付的协议数据单元添加帧头帧尾使之成为帧

帧头与帧尾包含控制信息,其中有帧定界的标志用于区分一个个帧

为提升传输效率,帧的数据部分尽可能大

为控制差错等因素,规定最大传送单元MTU,Maximum Transfer Unit)以约束帧的数据部分大小上限

其中:

以太网帧——帧头14字节,帧尾4字节

PPP帧——帧头5字节,帧尾3字节

透明传输

数据链路层对上层交付的传输数据没有任何限制,就好像数据链路层不存在一样

若帧的数据部分存在与帧标志重复的排列,那么会在发送方被转义,并在接收方链路层复原:

面向字节的物理链路——使用字节(字符)填充实现透明传输(重复部分前添加转义符)

面向比特的物理链路——使用比特填充实现透明传输(重复部分前补0等)

差错检测

链路层的帧格式中,都有差错检验校验和的位置,用于判断数据是否出错

常见的差错检验算法:

奇偶校验(一般不采用此法)

循环冗余校验(CRC,生成多项式校验)

由于可靠性一般由上层来保证,所以链路层在发现帧传输差错后,只需要丢弃即可

链路层也要保证可靠性的原因:有线传输通常不用,无线传输由于出错率相对更高,若不及时在链路层检测出差错,向上层传输数据时将放大差错,再纠错将造成较大资源浪费

点对点协议PPP

Point to Point Protocol。用于两端之间的链路通信,常见于广域网两个路由间的专用链路,用户端到ISP(电信宽带等),后者为基于以太网的PPP协议,即PPPoE(Point-to-Point Protocol Over Ethernet)

PPP的构成:

①对各种协议报的封装方法(帧)

②链路控制协议LCP。用于建立、配置与测试数据链路的连接

③一套网络控制协议NCPs。每个协议用于支持不同的网络层协议

PPP帧实现透明传输(见上部分内容)

媒体接入控制MAC

Medium Access Control。控制多个发送方与接收方占用共享传输媒体(与MAC地址不是一个概念)

静态划分信道

预先分配好信道,常见于无线网络

TDMA:时分多址。划分时间形成周期(时隙)轮流使用信道

FDMA:频分多址。信道的有效频率被划分为不同频段使用

CDMA:码分多址。通过不同的编码方式同时通过整个频段传输

动态接入控制

分为受控接入与随机接入,前者已被淘汰,只讨论随机MAC协议

CSMA/CD

容易在有线局域网中实现

MA:Multiple Access多点接入。多端在一条总线上,竞争使用总线

CS:Carrier Sense载波监听。发送前监听总线,总线忙则不发,否则发

CD:Collision Detection碰撞检测。边发送边监听总线,检测到冲突则立即停止发送,退避(等待)后再发送

先听后说,边听边说;一旦冲突,立刻停说;等待时机,重新再说

截断二进制指数退避算法:

争用期:开始发送到检测出碰撞的最长时间,即帧在总线上一来一回的时间(以太网规定最小帧为64字节即512比特,总线长度<2500m)

当重传16次仍不成功时,表面同时发送帧的主机太多,则丢弃该帧并向上层报告

CSMA/CA

适用于802.11无线局域网,且802.11还使用停等协议,需要收到确认帧ACK。CSMA/CD由于对无线硬件要求高,且难以碰撞检测,意义不大,因此不适用于无线局域网

CA:Collision Avoidance碰撞避免

协议规定站点需要在检测信道空闲后等待一段指定时间才能发送帧,帧间间隔取决于帧类型。以下为常见帧间间隔:

SIFS——最短帧间间隔。ACK帧、CTS帧使用SIFS

DIFS——比SIFS长得多。常见于数据帧和管理帧

退避算法与CSMA/CD不同,在以下情景采用退避算法:

①在发送数据帧之前检测到信道处于忙状态时

②在每一次重传一个数据帧时

③在每一次成功发送后要连续发送下一个帧时(避免一个站点长时间占用信道)

通过交换RTS帧与CTS帧进行信道预约

MAC地址

也称为硬件/物理地址(但不属于物理层)。以太网的MAC子层所使用的地址

MAC地址是对网络接口的唯一标识,而不一定是设备的唯一标识(路由器/交换机有多个MAC地址)

标准表示法:00-0c-cf-93-8c-92(前三字节确定硬件厂家,后三字节由厂家随机分配)

与IP地址对比:

IP地址是用于网络分层的——类似联系方式。子网内网络号一致,路由聚集,减少路由表,完成网络到网络的交付

MAC地址是用于一个平面的——类似身份证号。网络接口(网卡)在生产时不知道被用于哪个网络,因此通过MAC地址唯一标识,用于在一个网络内部进行区分,完成节点到节点的交付

数据包转发过程中源IP与目标IP保持不变(网络层),MAC地址逐个链路/网络改变(链路层)

ARP

地址解析协议,用于通过其它端的IP地址获取其MAC地址

每个节点有一个ARP表,包含IP与MAC地址的映射<IP addr; MAC addr; TTL>,TTL为映射失效时间(动态失效或静态永久)

若通过IP查表未找到记录,则:

①发送ARP请求广播帧,包含源IP与MAC地址,目标IP(目标MAC地址为ff-ff-ff-ff-ff-ff,因此所有主机都会收到)

②目标IP对应的主机收到请求后,记录源主机的IP与MAC地址到ARP表中,并返回单播MAC帧

ARP适用于LAN(局域网),不能跨网段查询MAC地址

交换机

类似路由器,都属于存储转发设备,但处于数据链路层(检查帧头部),效率更高,端口采用以太网协议。有交换表<MAC addr; interface; TTL>

对帧进行存储/(选择性)转发,向某些网段转发时使用CSMA/CD进行接入控制

透明:有MAC地址,无IP地址,节点不关心交换机的存在

交换机无需配置,能够自学习建立交换表:

①登记——收到帧后登记源MAC地址与对应接口号

②明确转发——通过查询交换表转发帧(单播、多播、广播)

③盲目转发——泛洪。查表失败时向除源接口外的所有接口转发

④明确丢弃——交换机知道不应该转发该帧时丢弃

交换机使用生成树协议(STP,Spanning Tree Protocol)通过增加冗余链路提高可靠性,避免网络环路带来的问题

VLAN

Virtual Local Area Network,一种将局域网内的设备进行逻辑分组的技术

插入vlan标记(vid,取值范围1-4094)后的帧为802.1Q,由交换机处理,客户端无法处理

pvid:接口的vlan id,华为的命名方式

打标签:当端口设置pvid后,收到普通以太网MAC帧时,会插入vlan标记使其变为802.1Q帧,简称“打标签”

去标签:当端口转发(发送)802.1Q帧时,可能会删除vlan标记,使其变为普通帧,简称“去标签”

交换机端口类型

Access

用于连接客户端(用户计算机)

只能属于一个vlan

接收:一般只接收不同帧,并给其打标签(vid为自身接口的pvid)

转发/发送:802.1Q帧中的vid等于自身的pvid,则去标签并转发,否则丢弃

Trunk

用于交换机间的连接

可以属于多个vlan

接收:对于已打标签的帧,直接接收;对于未打标签的帧,接收并给其打标签(vid为自身接口的pvid)

转发/发送:802.1Q帧的vid=自身pvid时,去标签后转发,否则直接转发

Hybrid

可用于交换机间的连接,也可用于连接客户端,还可用于连接路由器

可以属于多个vlan

接收:与Trunk接口相同。对于已打标签的帧,直接接收;对于未打标签的帧,接收并给其打标签(vid为自身接口的pvid)

转发/发送:查询去标签列表(用户设置),若查到则去标签后转发,否则直接转发

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值