go-over 谢希仁的计算机网络---chapter3---数据链路层

数据链路层要实现的通信有两种:
1.点到点的链路
2.广播链路(一对多)

  • 点对点协议与广播链路协议的区别
    计算机网络按传输技术可分为广播网络和点对点网络。广播网络中所有机器共享通信信道,而点对点网络中机器是一对一连接起来的。以太网与点对点协议均是数据链路层协议。区别在于以太网被设计用于广播网络ppp协议用于点对点网络
    帧格式上的区别:以太网帧中有目标Mac地址,用于在多路信道确认目标端机器。而点对点协议中就没有目标mac,点对点链路两端的主机事先就已经知道链路那头是哪个ip了。
    PPP现在已经成为使用最广泛的Internet接入方式的数据链路层协议。PPP可以和ADSL、Cable Modem、LAN等技术结合起来完成各类型的宽带接入。我们家庭中使用最多的宽带接入方式就是PPPoE(PPP over Ethernet)。这是一种PPP利用以太网(Ethernet)资源,在以太网上运行PPP来对用户进行接入认证的技术,PPP负责在用户端和运营商的接入服务器之间建立通信链路
    家庭拨号上网(ASDL)就是通过PPP在用户端和运营商的接入服务器之间建立通信链路。
  • 使用点对点信道的数据链路层

物理链路 数据链路(物理链路+协议)----网路适配器(网卡)来实现这些协议

  • 数据链路层需要完成的任务有:

1.封装成帧
2.透明传输
3.差错检测

封装成帧就是将网络层发过来的数据加入帧定界符来形成一个帧,在帧中还可以添加冗余码,用于进行检错。这样的好处是能够实现对帧完整性的识别,比如说到了帧首部却没有收到帧尾部,说明这个帧不完整。
那么如何实现透明传输呢?
文本文件是ASCII码组成的(7位编码),文本文件肯定不会出现帧定界符(是8位的,格式不一样),但是当非ASCII码时,即二进制代码时(比如图片),当数据中出现和帧定界符相同的符号时,如何能够与帧定界符不混淆呢,就是添加ESC(转义符)-----字节填充
注意:1.CRS检错只能进行检错,并且不能识别是哪几位错了,也不能纠错,因此当出现错误时,就丢弃这个帧。
2.区别CRS与PRS,前者是一种检验方法,后者是用来进行检错的冗余码。
数据传输过程中出现的差错有两种
1.无比特差错-----就是能保证接收到的帧是正确完整的帧
2.传输差错----传输过程中出现的丢失,重复,失序
可靠的传输就是这两者差错都应避免,那么数据链路层一般不是可靠传输就是只避免无比特差错),但是要想让数据链路层实现可靠传输也可以----就是添加帧序号,确认和重传机制
现实情况下,是分情况来定,看看是否需要让数据链路层来实现可靠传输。(这取决于链路的通信质量是否良好)

  • PPP协议(点对点协议)

用户计算机和某个ISP进行通信时使用的协议(用户到ISP的链路),对它的需求是:
1.进行检错(只进行检错,如出错则丢失)2.适应各种网络层协议3.适应不同类型的数据链路
PPPoE
就是在以太网上运行PPP,将PPP帧再封装到以太网帧中。
PPP协议的三个组成部分:
1)将IP数据报封装 2)链路控制协议LCP–就是针对于数据链路的连接3)一套网络控制协议NCP–每一个协议用来支持不同的网络层协议
PPP协议的帧的格式 略
PPP协议的工作状态
用户与ISP先建立一个物理连接,然后用户个人电脑向ISP发送一系列的链路控制协议分组LCP,然后网络控制协议NCP给新接入的用户个人电脑分配一个临时的IP地址。当用户通信完毕时,NCP释放网络层连接,收回IP地址,然后LCP释放数据链路连接,最后再释放物理连接。

  • 使用广播信道的数据链路层

以太网已经在局域网中占据了绝对优势
传统的以太网使用的是总线型的结构,也就是连接到总线上的计算机共享总线资源。
共享的方式有两种:
1.静态共享:就是利用各种复用技术
2.动态接入
1)随机接入,想传输就传输,但是有可能会有冲突,因此有对应的冲突检测机制
2)受控接入 进行规则的限制,如令牌机制,轮询机制。

  • 适配器的作用
    计算机与外界局域网的连接是通过适配器进行的,也就是网卡。适配器与计算机通信是并行传输,而与外界局域网通信是串行,因此它需要有自己的处理器和存储器来进行转换。(能够发送与接收帧)
    注:硬件地址就是嵌入在计算机内部的适配器的名称存储在适配器的ROM当中,那么就可以当做是计算机的硬件地址,这个地址是48位的
    go-over 谢希仁的计算机网络---chapter3---数据链路层_第1张图片

    MAC地址用于在网络中唯一标示一个网卡,一台设备若有一或多个网卡,则每个网卡都需要并会有一个唯一的MAC地址。

软件地址就是IP地址,是存储在计算机当中的

  • CMSA/CD技术(载波监听多点接入/碰撞检测)
    就是采用无连接的方式,对帧不进行编号无确认机制,帧错误是否需要重传取决于上层协议(如上层是TCP的话就重传)。
    以太网多使用的是采用随机接入的方法,然后采用CMSA/CD技术进行冲突检测。----这就像上课发言一样,以太网使用的是半双工通信方式
    一个站点发送数据时,要看看信道有没有被使用,而发送时也会边发送边检测。
    为什么监听了,还是会出现碰撞?
    如果A发送数据给B,在B未接收到数据时(就是B接收不到的时候肯定是检测不出信道是否被占用的,因为还没到它那一端),这个时候B也发送了数据,那么信道上的两方数据就重叠了,失效了。----也就是因为有传播时延
    这个时候A,B方发送数据都失败了,然后它们都会等待一段时间来进行重新发送。-----这个等待时间是通过一个算法产生的随机时间
    那么A最多需要多长的时间才能知道发生了冲突呢?----这个时间称之为争用期, 这与A到B端的距离有关,因为有传播时延,则争用期是传播时延的二倍。所以说又叫做碰撞窗口,也就是只有在争用期没有发生碰撞,才能肯定这次发送不会产生碰撞。
    因此我们也会限制数据的最短长度,因为若数据太短,A发送完了之后产生了数据冲突,那么因为A已经发送完了,也不知道产生冲突了,也不会进行重发。因此最短长度就是一个传播时延的长度。最短帧长64字节(是针对于10Mbit/s)
    还规定了帧最小间隔为9.6us

  • 使用集线器的星型拓扑
    使用集线器形成星型的网络(物理上),这个在后期使用的更普遍(物理搭建上)
    使用集线器的网络在逻辑上仍是总线型网络,仍使用CMSA/CD协议
    以太网的信道利用率
    要提高信道利用率,就需要减小传播时延,增大帧的发送时间

  • 以太网的MAC层(也就是媒体接入控制层)
    适配器从网络上接收到MAC帧之后就会检查MAC帧中的目的地址,如果是发往本站的则留下,否者丢弃。
    路由器通过适配器连接到局域网时,适配器上的硬件地址就用来标志路由器的某个接口,如果路由器同时连接到两个网络时,就会有两个适配器(也就是两个硬件地址)
    以太网的各帧之间有一定的间隙,这样子,当收到帧定界符之后连续到达的比特流就是一个帧----不需要结尾符,也不需要用字节插入来保证透明传输

  • 扩展的以太网

  • 转发器,集线器,网桥,交换机的区别:

物理层扩展就是使用转发器,集线器(多接口的转发器)
集线器是工作在物理层的,就是一个多接口的交换机,它收到一个数据之后就会进行全范围的广播,比如3个冲突域连接到了一个集线器上,那么这就形成了一个冲突域。
并且使用不同以太网技术的网络(如数据率不同),不能通过集线器连接起来
数据链路层扩展网校和交换机是工作在数据链路层的
以太网交换机会在交换机内部维护一个交换表,在接收到一个帧之后不是进行广播,而是查看表发给对应的接口,并且可以建立多个对的连接,这个样子,端到端的数据传输就是专有的信道,也就不会产生冲突了。是全双工模式
比如10个用户的交换机,每个用户的带宽是10Mbit/s,但由于用户在通信时是独享的,所以这个交换机的总容量是100Mbit/s。
后期的以太网是星型结构的(采用以太网交换机),不使用共享总线,所以不会产生冲突,也就不使用CMSA/CD协议,但是仍采用以太网的帧结构
总结:集线器工作在物理层,交换机工作在数据链路层

  • 虚拟局域网VLAN

是局域网给用户提供的一种服务,就是可以划分逻辑组,处于同一虚拟局域网的被当做是一个组,也就是虚拟的划分,这样限制了接收广播的计算机数

你可能感兴趣的:(计算机网络)