数据链路层

负责通过一条链路从一个节点向另一个屋里链路直接相连的相邻节点传送数据报。
提供的服务有:
组帧,封装数据报构成数据帧,加首尾,实现帧同步,识别开始结束
链路接入,共享介质需解决信道接入问题,帧首部中的Mac地址用于寻址,标识源和目的
相邻结点间可靠交付,低误码率的有线链路上很少采用,如光纤双绞线,无线链路误码率高,需可靠交付
流量控制,协调相邻结点的发送接受
差错控制,信号衰减和噪声引起的差错,重传或丢弃
差错纠正,全双工和半双工通信控制
具体实现需要借助网卡
数据链路层_第1张图片
数据链路层_第2张图片

差错编码

基本原理是在数据中增加冗余信息,增加数据的关联信息,这种方法不保证完全可靠,同时我们希望冗余信息尽可能少,检错能力尽可能强。
数据链路层_第3张图片
根据检错能力,差错编码分为检错吗和纠错码,首先介绍一个概念——汉明距离,编码学中对这些概念进行过详细介绍,大概来说是任意两码字距离的最小值,对于两码字集来说是对应比特位不同的位数。
若汉明距离d=r+1,则该差错编码可以检测r位差错。
若汉明距离d=2r+1,则该差错编码可纠r位差错。

奇偶校验码

增加1比特校验位,检测奇数位差错,可扩充为二维奇偶校验码,纠同一行或列的奇数位错。
数据链路层_第4张图片

Internet校验和

发送端将校验内容划分为16位二进制整数序列
数据链路层_第5张图片

循环冗余校验码CRC

利用多项式理论,后加R再除G,如果整除说明没错。
数据链路层_第6张图片
数据链路层_第7张图片

多路访问控制协议

前面的网络层应用层等都是解决点对点的传输问题,但是在共享介质下的广播链路,利用单一共享信道,多个节点同时传输肯定会发生干扰,所以需要多路访问控制协议来协调解决,该协议基于信道本身共享协调信息。
分类如下:
划分信道——多路复用,tdma,fdma,cdma和wdma等,这种方法在流量大时高效,小流量因为不能利用全部带宽会造成浪费。
随机访问,不划分信道给节点,允许冲突,只采用冲突恢复机制,需要进行冲突检测,等待确认,冲突恢复和延迟重传,比如aloha,csma等。这种方法流量小不冲突高效,但是流量大冲突多导致太多恢复,造成低效。
轮转协议,结点轮流使用信道,与时分多用不同,此处轮转不固定,不划分时长,只是轮流邀请结点使用,使用结束后邀请下一个节点。这种方法综合了上面两种方法的优点,但是增加了轮询开销,等待延迟,依靠主节点轮询, 考虑了整体的延迟,但是对于单体来说延迟未必最低。
数据链路层_第8张图片

MAC地址

IP地址使用32位表示接口的网络层地址,支持分组转发,Mac地址或称Lan地址或物理地址(不在物理层,而在数据链路层),用于在局域网内表示一个帧从哪个接口发出,到达哪个物理相连的其他接口,48位的Mac地址固化在网卡ROM中,有的可以更改设置,在局域网内唯一。
MAC地址由IEEE同一管理分配,是可从一个lan携带到另一个lan中的平面地址,而IP是层次地址,不可携带。

ARP 地址解析协议

解决同一局域网下,已知IP确定MAC地址的问题。
通过ARP表实现,lan中每个IP结点维护一个表,存储IP与Mac的映射,不在该表中的,广播 ARP查询分组,包含需查的IP地址,广播时目的Mac为全1,即ff,接受端IP匹配成功向查询方响应,查询方缓存映射直至超时。
该协议即插即用,结点自主创建ARP表,无需干预。
不在同一局域网下的该如何找到对应关系呢?需要使用寻址思想,简单来说就是以路由为界,两侧分别使用ARP,在界处更换目的Mac即可,比如a响应自己Mac发给路由,路由根据目的IP交付,更改目的Mac转发即可。

以太网Ethernet

目前统治地位的有线lan技术,应用最广泛,造价低廉,满足网络速率需求,有两种不同类型。
总线型,使用同轴电缆,像计算机的总线结构,各个结点在同一冲突域。
星型,是目前主流拓扑,利用交换机连接结点,每个节点单独冲突域,提供不可靠的无连接服务,网卡无握手过程,不确认,因为有线网络,局域网中误码丢失率小。
此处有一个思考,**可靠的数据传输是不是有一层即可?**链路层等都是不可靠无连接服务,那可靠的数据传输是不是只要使用了tcp就可以保证了呢?
Mac协议采用二进制指数退避算法,csma/cd
数据链路层_第9张图片

帧结构

前导码,8b,用于发送端与接收端的时钟同步;
目的/源Mac地址,各6b,全1,即ff时为广播地址;
类型,2b,指示封装哪种高层协议的分组;
数据,46-1500b,上层协议数据;
CRC,循环冗余校验码
以太网的标准因速率不同和物理介质的不同而不同,Mac层协议帧格式相同。

交换机Switch

链路层设备,用于存储转发以太网帧,使用中透明,主机感知不到交换机存在,即插即用,自学习无需配置,每段链路利用csma/cd收发帧,无冲突,全双工。
交换机转发表,即交换表,与路由表类似,不同之处是来源,交换机自学习获知交换表,接受帧时将源主机Mac连接到输入链路接口上,发送时检索交换表,若目的主机位于收到该帧的网段,直接丢弃(说明该帧直接可达),不在表中的,泛洪查询,向除收到接口外的所有接口转发查询。
交换机可通过互联构成更大的局域网。

交换机VS路由器

都是存储转发设备,路由器为网络层设备,检测网络层分组首部,交换机检测链路层帧首部;
都使用转发表,路由利用算法计算,依据IP地址,交换机利用自学习泛洪构建,依据Mac地址。
网络设备对比如图:
数据链路层_第10张图片

虚拟局域网vlan

在一个物理lan架构上配置定义多个vlan,部分代替路由器,基于端口的vlan可以实现流量隔离,端口可以动态分配给不同的vlan,跨多交换机的vlan使用中继端口,需携带vlanID信息,在802.1q为vlan增加额外首部用于存储该信息。

点对点协议

无需介质访问控制,无需明确Mac地址(因为只有他俩通信),在拨号链路,isdn链路中使用,常见协议有:gdlc,ppp协议。
需提供如下服务:
组帧,网络层到数据链路,可同时承载任何网络层协议,不仅IP数据报,向上层实现分用多路分解;
比特透明传输,数据域必须支持承载任何比特模式;
差错检测,不纠正;
连接活性检测,检测并向网络层通知链路失效;
网络层地址协商,结点学习彼此的网络地址。

802.11无线局域网

数据链路层_第11张图片
数据链路层_第12张图片

你可能感兴趣的:(信息安全基础知识,网络)