《数据链路层》PPT课件_第1页
《数据链路层》PPT课件_第2页
《数据链路层》PPT课件_第3页
《数据链路层》PPT课件_第4页
《数据链路层》PPT课件_第5页
已阅读5页,还剩147页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第三章数据链路层,本章重点:一般了解:停止等待协议生成树滑动窗口VLANCRCHDLC、X.25、FRMACARPCSMA/CDHUB与Switch的主要功能冲突域和广播域PPP,第三章数据链路层,数据链路层使用的信道主要有以下两种类型:点对点信道,使用一对一的点对点通信方式。广播信道,使用一对多的广播通信方式,广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据收发。,第三章数据链路层,数据链路层的主要功能:1、将数据包封装为帧;2、对等层通信,将帧交付给另一个节点的数据链路层;3、差错检测和流量控制。,第三章数据链路层,数据链路层传送的是帧。,IP数据报,10100110,帧,取出,数据链路层,网络层,链路,结点A,结点B,物理层,数据链路层,结点A,结点B,发送,接收,链路,IP数据报,10100110,帧,装入,第三章数据链路层,封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,确定帧的界限,构成帧。首部和尾部的一个重要作用就是进行帧定界。,帧结束,帧首部,IP数据报,帧的数据部分,帧尾部,MTU,数据链路层的帧长,开始发送,帧开始,第三章数据链路层,PRE:前导码,10101010SFD:帧起始定界符,10101011DA:目的MAC地址SA:源MAC地址LEN:LLC帧长度DATA:数据字段CRC:校验字段,7,1,6,6,2,4,LLC帧,46到1500字节,CRC,DATA,LEN,SA,DA,SFD,PRE,以太网的帧是数据链路层的封装,网络层的数据包被加上帧头和帧尾成为可以被数据链路层识别的数据帧(成帧)。虽然帧头和帧尾所用的字节数是固定不变的,但依被封装的数据包大小的不同,以太网的长度也在变化,其范围是641518字节(不算8字节的前导字),由以下几个部分组成:起始字段地址字段长度和类型字段数据字段帧校验序列字段,第三章数据链路层,透明传输与转义SOH,StartofHeader;EOT,EndofTransmission。,SOH,装在帧中的数据部分,帧,帧开始符,帧结束符,EOT,SOH,EOT,出现了“EOT”,被接收端当作无效帧而丢弃,被接收端误认为是一个帧,数据部分,EOT,完整的帧,第三章数据链路层,发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码是1B)。字节填充(bytestuffing)/字符填充(characterstuffing):接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。如果转义字符也出现数据当中,那么应在转义字符前面插入一个转义字符。当接收端收到连续的两个转义字符时,就删除其中前面的一个。,SOH,SOH,EOT,SOH,ESC,ESC,EOT,ESC,SOH,ESC,ESC,ESC,SOH,原始数据,EOT,EOT,经过字节填充后发送的数据,字节填充,字节填充,字节填充,字节填充,帧开始符,帧结束符,SOH,第三章数据链路层,在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率BER(BitErrorRate),误码率与信噪比有很大的关系。为实现可靠通信,通信系统必须具有检测和纠正差错的机制。为了有效地检测出差错,常用的方法是在所传输的信息中,按照一定的规则,另外加入若干位附加比特,这种技术称为冗余。常用的冗余检验技术有:奇偶检验、方块检验和循环冗余检验。奇校验:通过附加奇偶校验位,使所传输的信息中1的个数为奇数。偶校验:通过附加奇偶校验位,使所传输的信息中1的个数为偶数。,第三章数据链路层,循环冗余校验(CRC,CyclicalRedundancyCheck):将所传输的除以一个预先设定的除数,所得的余数作为冗余比特,附加在要发送的数据的末尾。这样实际传输的就能够被预先设定的除数整除。当整个数据发送到接收方后,接收方利用同一个除数去除接收到的数据。如果余数为0,则传输正确,否则有误。运算规则:加法、减法均为异或运算,加法不进位,减法不借位。在数据的末尾加上r个0,r等于除数的位数减1;使用二进制除法,所得的余数为循环冗余校验码(以上除法用的是模2除法,不考虑减法借位,即0-0=0、0-1=1、1-0=1、1-1=0);将循环冗余校验码替换数据末尾的r个0,得到整个传输的数据。,第三章数据链路层,例如:假设待传送数据M1010001101,选择某生成多项式P=110101,求CRC码。,第三章数据链路层,流量控制当接收到数据后,接收方要进行某些处理,并把数据送给高层,所以数据的接收速率往往会比发送速率低。如果不对发送方的发送速率进行适当的限制,就可能出现接收端的数据帧“溢出”,前面来不及接收的帧将被后面不断发送来的帧“淹没”,从而造成帧的丢失而出错。所以,对发送端数据的发送速率适当的控制则是必需的,使发送速率不致超过接收方的速率。在数据链路层中,窗口机制是常用的流量控制方法。说明:流量控制并不是数据链路层特有的功能,许多高层协议如传输层协议也提供流量控制功能,只不过流量控制的对象不同而已。对数据链路层来说,控制的是相邻两节点之间数据链路上的流量,而对传输层来说,控制的则是从源到最终目的间端到端的流量。,第三章数据链路层,如果允许连续发送多个未被确认的帧,帧号就需采用多位二进制数才能加以区分;又因为凡被发出去但尚未被确认的帧都可能出错或丢失而被要求重发,所以这些帧都需要保留在缓冲区中,形成一张重传表。由于发送方的缓冲区容量总是有限的,因此需要某种机制,使得发送方在收到某确认帧之前,对发送方可继续发送的帧数目加以限制。如果接收方未对帧进行确认,则发送方的重发表就会不断增长。当达到重发表上限时,发送方就不再发送新帧,直至收到确认信息为止。为了实现此方案,发送方存放待确认帧的重传表中应设置待确认的帧数目的最大限度,这一限度被称为链路的“发送窗口(SendingWindow)”,这种重发机制被称为“窗口机制”。,第三章数据链路层,停止等待协议:具有最简单流量控制的数据链路层协议假定1:链路是理想的,数据不会出差错也不会丢失。假定2:不管发送方以多快的速率发送数据,接收方总是来得及收下,并及时上交主机。现在去掉上述的第二个假定,即主机A向主机B传输数据的信道仍然是无差错的理想信道。然而现在不能保证接收端向主机交付数据的速率永远不低于发送端发送数据的速率。由收方控制发方的数据流,乃是计算机网络中流量控制的一个基本方法。,第三章数据链路层,为保证可靠交付,发送方必须对所发送的帧进行编号。如果每次只发送一帧,那么只需要一个比特进行编号:0和1。ACKn表示已经正确收到第n号帧的前一个帧,并期待收到第n号帧。,第三章数据链路层,在发送节点:(1)从主机取一个数据帧。(2)将数据帧送到数据链路层的发送缓存。(3)将发送缓存中的数据帧发送出去。(4)等待。(5)若收到由接收节点发送来的确认信息,则从主机取一个新的数据帧,然后转到(2)。在接收节点:(1)等待。(2)若收到由发送节点发过来的数据帧,则将其放入数据链路层的接收缓存。(3)将接收缓存中的数据帧上交主机。(4)向发送节点发送确认信息,表示数据帧已经上交给主机。(5)转到(1),第三章数据链路层,重传时间=T1+T2+T3+T4+T5,其中T1=T4,发送时延,传播时延,处理时延,传播时延,ACK1,Data0,发送时延,处理时延,Data1,T1,T2,T3,T4,T5,如果忽略T2和T5,并且由于确认帧非常小,忽略其发送时延T3,则重传时间=2T1。,第三章数据链路层,差错检测:CRC校验确认:ACK超时:Timeout重传:通过差错检测、确认、超时计时、重传的机制,数据链路层提供可靠传输的服务。,第三章数据链路层,初始状态,发送方准备发送数据帧,而接收窗口中已有一个0号数据帧;,发送方发送了0号帧,在发送窗口保留0号帧;,(1),(2),滑动窗口,第三章数据链路层,发送方继续发送1号帧。因为此时发送方还没有收到接收方的确认帧,所以在发送窗口此时保留了两个帧,达到了窗口大小,不能继续发送数据了;,接收方收到了发送方发来的0号帧,此时原来保存的0号帧已处理,窗口滑动到1号。但还没有向发送方发送0号确认帧,所以发送窗口仍有两个帧保留,不能继续发送数据帧;,(3),(4),第三章数据链路层,发送方收到了接收方发来的0号数据帧的确认帧,所以发送窗口清除保留的0号帧,只保留1号窗格中的1号帧;,发送方又可继续发送2号帧,当然此时的2号帧又将保留在发送窗口的2号窗格中,发送窗口又达到窗口大小2,停止发送;,(5),(6),第三章数据链路层,接收方接收到发送方发来的1号帧,放在接收窗中的2号窗格中(此时原来的0号帧已处理,所以接收窗口仍只有一个保留帧);,发送方收到接收方发来的1号确认帧,在发送窗口中又清除原来保留的1号帧,只保留(6)位置发送的2号帧,可继续发送,后面的过程就是按以上规律循环进行的。,(7),(8),第三章数据链路层,最初的窗口大小为16,同意,请发快一些,把窗口大小调整为32,同意,现在忙,请发慢一些,把窗口大小调整为16,同意,请再慢一些,把窗口大小调整为8,同意,发送方,接收方,第三章数据链路层,局域网:LAN,LocalAreaNetwork。为一个单位所有,地理范围和站点数目有限。能够方便的共享外部设备、主机及软件、数据,从一个站点可以访问全网;便于系统的扩展和逐渐的演变,各设备的位置可灵活调整和改变;提高了系统的可靠性、可用性和残存性。常见网络拓扑结构:星型、总线型、环型、树型、网状,第三章数据链路层,局域网各层的主要功能:物理层:提供发送和接收信号的能力,包括对宽带频道的分配和对基带信号的调制等;媒体访问控制(MAC,MediaAccessControl)子层:实现帧的寻址和识别、数据帧的检验以及对LLC子层的支持,与接入到传输媒体有关的内容都放在MAC子层;逻辑链路控制(LLC,LogicLinkControl)子层:规定无连接和面向连接两种服务,LLC子层则与传输媒体无关,不管采用何种协议的局域网对LLC子层来说都是透明的。,第三章数据链路层,局域网是一种互联各种设备的通信网络,并在这些设备间提供信息交换的途径。局域网同其它数据网络的主要区别:覆盖范围通常的范围是一座/一组大楼,或一个园区。按地理范围的不同,技术解决方案也随之不同。所有权和控制权通常局域网由互联设备的组织所拥有。因此,局域网是由用户投资建设并管理维护的。速率和成本的差别一方面,局域网内部数据的速率通常高于城域网或广域网;另一方面,局域网用户获得和使用某速率的成本远低于城域网/广域网。,第三章数据链路层,局域网连接设备:网卡中继器(Repeater):工作于物理层,用于对线缆上的数据信号进行放大、整形、再生,可以起到延长网络距离的作用。集线器(Hub):可称之为多端口中继器,同样工作在物理层。网桥交换机,Input,Output,第三章数据链路层,为什么是以太网?在古希腊,以太指的是青天或上层大气。在宇宙学中,有时又用以太来表示占据天体空间的物质。认为空间不可能是空无所有的,它被以太这种媒介物质所充满。以太网适用于一定地理范围内高速、不定时、大流量的数据传输,低成本、可靠性高,传输速率从10M、100M到10Gbit/s。1970s,以太网的原型Aloha;1980s,DIX发布了最早的以太网标准;1985,IEEE(电气与电子工程师协会)的802.3标准。如802.3a、802.3u等等。采用带冲突检测的载波监听多路访问协议(CSMA/CD),速率为10Mbps,传输介质为同轴电缆。现在,以太网一词泛指所有采用CSMA/CD协议的局域网。它不是一种具体的网络,是一种技术规范。,第三章数据链路层,以太网由Xerox公司PARC研究中心于1973年5月22日首次提出。1980年,DEC、Inter、Xerox提出了10M以太网规范的第一个版本DIX。,以太电缆,分接器,接口电缆,收发器,站点,接口和控制器,终端器,第三章数据链路层,以太网卡可以工作在两种模式下:半双工和全双工。单工:数据在通信线路上沿一定方向传送。例如,我们只能从终端发送数据给计算机,而不接收计算机发来的数据。为了保证数据传送的正确,接收端要对接收的数据进行校验,若出现差错,接收端就要请求重发原数据。请求重发的信号是监测信号,其传递方向与数据的传输方向相反。为此,要为控制信号另设一个信道,专门传送监浏信号。因此,单工通信的线路一般采用两个信道,一个传送数据,一个传送控制信号。例如收音机和电视。半双工:使用以太网载波监听多路访问/冲突检测。传统的共享LAN是在半双工下工作的,在同一时间只能传输单一方向的数据,因此又被称为双向交替通信。若要改变传输方向,需由开关进行切换。半双工方式要求收发两端都有发送装置和接收装置。由于这种方式要频繁变换信道方向,效率低下。当两个方向的数据同时传输时,就会产生冲突。例如对讲机。全双工:采用点对点连接,这种交换方式没有冲突,因为它们使用双绞线中两个独立的线路。在双全工模式下,冲突检测电路不可用,因此每个双全工连接只用一个端口,用于点对点连接。标准以太网的传输效率可达到5060的带宽,双全工在两个方向上都提供100的效率。,第三章数据链路层,网卡(NIC,NetworkInterfaceCard)的重要功能:进行串行/并行转换。对数据进行缓存。在计算机的操作系统安装设备驱动程序。实现以太网协议。计算机通过适配器和局域网进行通信。,硬件地址,至局域网,适配器(网卡),串行通信,CPU和存储器,生成发送的数据、处理收到的数据,把帧发送到局域网、从局域网接收帧,计算机,IP地址,并行通信,第三章数据链路层,Switch,DiskArray,DatabaseServer,WWWServer,Proxy,NetworkManagementWorkStation,PC,LanSwitch,LAN,Switch,企业/校园网,第三章数据链路层,以太网是当今现有局域网采用的最通用的通信协议标准。该标准定义了在局域网(LAN)中采用的电缆类型和信号处理方法。以太网在互联设备之间以10100Mbps的速率传送数据包,双绞线电缆10BaseT以太网由于其低成本、高可靠性以及10Mbps的速率而成为应用最为广泛的以太网技术。WLAN可达54Mbps,许多制造供应商提供的产品都能采用通用的软件协议进行通信,开放性最好。以太网和IEEE802.3通常由接口卡(网卡)或主电路板上的电路实现。以太网电缆协议规定用收发器将电缆连到网络物理设备上。收发器执行物理层的大部分功能,其中包括冲突检测及收发器电缆将收发器连接到工作站上。IEEE802.3提供了多种电缆规范,10Base5就是其中的一种。在这一规范中,连接电缆称作连接单元接口(AUI),网络连接设备称为介质访问单元(MAU)而不再是收发器。,第三章数据链路层,收发器,夹子,收发器电缆,芯,连接器,双绞线,集线器,第三章数据链路层,第三章数据链路层,MAC(介质访问控制):定义了如何在物理线路上传输帧;LLC(逻辑链路控制):从逻辑上识别不同的协议类型,并加以封装。使用LLC子层与高层(网络层及更高)通信;使用MAC子层进行寻址。MAC:在以太网中唯一地标识某一台设备。MAC地址长48个比特,表示成12个十六进制数,其中前24比特为厂商地址,如:00-10-A4-82-1C-ED。在以太网中,设备之间的通信依赖于MAC地址。,第三章数据链路层,802标准给局域网规定了一个48bit的全球地址,指的是网卡上被固化在ROM的地址,这个地址被称为MAC地址。以太网上的主机在相互通讯时,需要一个用来识别该主机的介质访问控制地址(MediaAccessControl),即MAC地址,通常也称为物理地址或硬件地址。MAC地址被记录在网卡的ROM存储器中,全球唯一。网络中的计算机就是通过MAC地址来识别主机,并进行相互通讯的。MAC地址采用6字节48位二进制编码表示,前24位是由生产厂家向IEEE申请的厂商地址,后24位是由生产厂家给网卡设定的一个编号,MAC地址显示格式为:00-20-ED-6B-EE-B7,采用十六进制数表示。在运行IOS操作系统的交换机中,MAC地址采用点三分格式表达,即表达为0020.ed6b.eeb7格式。网卡从网络上接收到一个帧后,首先检查该帧的目标MAC地址,如果是发送给本站的,就接收并进行处理;如果不是就丢弃。,第三章数据链路层,局域网要着重考虑的一个问题就是如何使众多用户能够合理且方便地共享通信媒体资源。媒体共享技术大体上可以分为两大类:(1)静态划分信道,如时分复用、频分复用、波分复用和码分复用等,用户只要获得了信道就不会和其他用户产生冲突。但这种划分信道的方法代价较高,不适合于局域网和某些广播信道的网络使用。(2)动态媒体接入控制,又称为多点接入(MultipleAccess),分为两种形式。随机接入:其特点是所有的用户可随机地发送信息,但如果有两个或更多用户在同一时刻发送信息,则在共享媒体上产生碰撞(即产生冲突),则这些用户的发送都失败。受控接入:其特点是用户不能随机发送信息而必须服从一定的控制,如令牌环网和轮询。,第三章数据链路层,最初的以太网是将许多计算机都连接到一根总线上,在具有广播特性的总线上实现了一对一的通信。当初认为这样的连接方法既简单又可靠,因为总线上没有有源器件。总线上的每一个工作的计算机都能检测到B发送的数据信号,但由于只有计算机D的地址与数据帧首部写入的地址一致,因此只有D才接收这个数据帧。其他所有的计算机都检测到不是发送给它们的数据帧,因此就丢弃这个数据帧。,C,D,A,E,匹配电阻(用来吸收总线上传播的信号),匹配电阻,不接受,不接受,不接受,接受,B,只有D接受B发送的数据,第三章数据链路层,以太网采用较为灵活的无连接的工作方式,即不必先建立连接就可以直接发送数据。以太网对发送的数据帧不进行编号,也不要求对方发回确认。这是因为局域网信道的质量很好,因信道质量产生差错的概率是很小的。以太网提供的服务是不可靠的交付,即尽最大努力的交付。当目的站收到有差错的数据帧时就丢弃此帧,差错的纠正由高层来决定。如果高层发现丢失了一些数据而进行重传,以太网并不知道这是一个重传的帧,而是作为一个新的数据帧来发送。以太网都使用曼彻斯特(Manchester)编码发送数据。,第三章数据链路层,介质访问控制(MAC):用来确定在共享介质环境(冲突域)中,哪个计算机允许传输数据。确定性:TokenRing、FDDI不确定性:EthernetNet,第三章数据链路层,令牌环网络(TokenRing)网上所有站点都处于空闲时,令牌沿环绕行发送站点必须等待,直到捕获到令牌发送数据帧释放令牌吸收数据帧(绕环一周后)中间站点(数据帧的目的地址与自己不同)转发环上的数据帧接收站点(数据帧的目的地址与自己相同)拷贝环上的数据帧转发环上的数据帧,第三章数据链路层,HostB捕获到令牌T,T,HostB向HostD发送数据帧F1,F1,第三章数据链路层,HostB发送完数据帧F1后释放令牌THostC向HostD转发数据帧F1,T,HostD接收数据帧F1,拷贝一份转发HostC捕获到令牌THostC向HostA发送数据帧F2,F1,F2,F1,第三章数据链路层,HostB收到数据帧F1并将其删除HostC释放令牌THostA收到数据帧F2,拷贝一份转发,T,HostB接收数据帧F2,转发HostD捕获到令牌T,F1,F2,F2,第三章数据链路层,HostC收到数据帧F2并将其删除HostD释放令牌T,T,令牌沿环传递,F2,T,第三章数据链路层,以太网工作原理CSMA/CDCSMA/CD:CarrierSensorMultiAccess/CollisionDetect以太网采用带冲突检测的载波帧听多路访问(CSMA/CD)机制。以太网中节点都可以看到在网络中发送的所有信息,因此,我们说以太网是一种广播网络。“多路访问”表示许多计算机以多点接入的方式连接在一根总线上。“载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。“冲突检测”就是计算机边发送数据边检测信道上的信号电压大小。当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了冲突。,第三章数据链路层,在基于广播的以太网中,所有的工作站都可以收到发送到网上的信息帧。每个工作站都要确认该信息帧是不是发送给自己的,一旦确认是发给自己的,就将它发送到高一层的协议层。在采用CSMACD传输介质访问的以太网中,任何一个工作站在任何一时刻都可以访问网络。发送数据前,工作站要侦听网络是否堵塞,只有检测到网络空闲时,工作站才能发送数据。在基于竞争的以太网中,只要网络空闲,任一工作站均可发送数据。当两个工作站发现网络空闲而同时发出数据时,就发生冲突。这时,两个传送操作都遭到破坏,工作站必须在一定时间后重发,何时重发由延时算法决定。,第三章数据链路层,以太网的工作过程如下:当以太网中的一台主机要传输数据时,它将按如下步骤进行:1、侦听信道上收否有信号在传输。如果有的话,表明信道处于忙状态,就继续侦听,直到信道空闲为止。2、若没有侦听到任何信号,就传输数据。3、传输的时候继续侦听,如发现冲突则执行退避算法,随机等待一段时间后,重新执行步骤1。4、若未发现冲突则发送成功,计算机所有计算机在试图再一次发送数据之前,必须在最近一次发送后等待9.6微秒(以10Mbps运行)。,第三章数据链路层,避免冲突:先听再发解决冲突:边听边发;冲突停止;延迟再试在发送方:,发送数据,组织数据,N,总线忙?,启动发送,有冲突?,发送完成?,发送成功,冲突加强,冲突加强N=N+1,冲突次数16,退后延时,发送失败,Y,N,Y,Y,N,Y,N,第三章数据链路层,在接收方:,第三章数据链路层,常用的退避算法有非坚持、1坚持、P坚持三种。1、非坚持算法算法规则为:如果媒本是空闲的,则可以立即发送。如果媒体是忙的,则等待一个由概率分布决定的随机重发延迟后,再重复前一步骤。特点:采用随机的重发延迟时间可以减少冲突发生的可能性。缺点:即使有几个设备都有数据要发送,但由于大家都在延迟等待过程中,致使媒体仍可能处于空闲状态,使用率降低。,第三章数据链路层,2、1-坚持算法算法规则:如果媒体空闲的,则可以立即发送。如果媒体是忙的,则继续监听,直至检测到媒体是空闲,立即发送。如果有冲突(在一段时间内未收到肯定的回复),则等待一随机量的时间,重复步骤。优点:只要媒体空闲,站点就立即可发送,避免了媒体利用率的损失。缺点:假若有两个或两个以上的站点有数据要发送,冲突就不可避免。,第三章数据链路层,3、P-坚持算法算法规则:监听总线,如果媒体是空闲的,则以P的概率发送,而以(1-P)的概率延迟一个时间单位。一个时间单位通常等于最大传播时延的2倍。延迟一个时间单位后,再重复步骤。如果媒体是忙的,继续监听直至媒体空闲并重复步骤。P-坚持算法是一种既能像非坚持算法那样减少冲突,又能像1-坚持算法那样减少媒体空闲时间的折中方案。问题在于如何选择P的有值,这要考虑到避免重负载下系统处于的不稳定状态。假如媒体是忙时,有N个站有数据等待发送,一旦当前的发送完成时,将要试图传输的站的总期望数为NP。如果选择P过大,使NP1,表明有多个站点试图发送,冲突就不可避免。最坏的情况是,随着冲突概率的不断增大,而使吞吐量降低到零。所以必须选择适当P值使NP1。当然P值选得过小,则媒体利用率又会大大降低。,第三章数据链路层,CSMA/CD的代价是用于检测冲突所花费的时间。对于基带总线而言,最坏情况下用于检测一个冲突的时间等于任意两个站之间传播时延的两倍。从一个站点开始发送数据到另一个站点开始接收数据,也即载波信号从一端传播到另一端所需的时间,称为信号传播时延。信号传播时延(s)=两站点的距离(m)/信号传播速度。数据传输时延(s)=数据帧长度(bit)/数据传输速率(bps)。若不考虑中继器引入的延迟,数据帧从一个站点开始发送,到该数据帧被另一个站点全部接收所需的总时间,等于数据传输时延与信号传播时延之和。由上述分析可知,为了确保发送数据站点在传输时能检测到可能存在的冲突,数据帧的传输时延至少要两倍于传播时延。要求分组的长度不小于某个值,否则在检测出冲突之前传输已经结束,但实际上分组已被冲突所破坏。由此引出了CSMA/CD总线网络中最短帧长的计算关系式:最短数据帧长(bit)任意两站点间的最大距离(m)数据传输速率(Mbps)200m/us,第三章数据链路层,为保障系统的正常运行,必须在最小合法帧传输完之前检测到冲突。要使CSMA/CD以太网能操作,发送站必须在一个最小单位的帧传输完成之前就检测到冲突的产生。,发送数据,到达远端,发送数据,冲突帧,检测到冲突,第三章数据链路层,以太网规定最短有效帧长为64字节,凡长度小于64字节的帧都是由于冲突而异常中止的无效帧。以太网并采用一种称为强化碰撞的措施。就是一旦发送数据的站点发现产生了冲突时,除了立即停止发送数据外,还要再继续发送若干比特的人为干扰信号(JammingSignal),以便让所有的用户都知道现在已经产生了冲突。,第三章数据链路层,后期冲突(迟冲突,LateCollision)以太网的5-4-3规则:在一个10M网络中,一共可以分为5个网段,其中用4个中继器连接,允许其中的3个网段有设备,其他2个网段只是传输距离的延长。在10BSE-T网络中,只允许级联4个HUB。多个站点互连,可以使用多个HUB进行级连。理论上说只要有足够的HUB,就可以无限的扩展网络范围,因为对于数字信号,HUB的中继功能可以将衰减的信号重整放大为与原始信号相同的效果。但是碰撞的范围是有限制的,这个限制规定了碰撞域中最远的两个站点间的HUB的最大个数,也就是4个。站点发送第一个比特开始就要进行冲突检测的工作,一但检测到冲突就停止发送数据。那么站点的这个冲突检测工作需要多长时间呢?协议规定:设备进行冲突检测的时间固定为发送64个字节(512Bit)所消耗的时间。根据这一规则,对于碰撞冲突的完整表述为:站点从开始发送数据的第1个比特开始一直到第512比特的这段时间,都不要不停的进行冲突检测的工作,如果这段时间内检测到冲突则进行重发工作,如果没有检测到冲突,则认为这个站点获得了信道,它可以继续发送数据直到传输完毕。,第三章数据链路层,在正常工作的以太网中,当一个站点获得了信道后就不应该再发生冲突,这是因为:若超出了前512比特这个时间范围,即使发生了冲突站点也并不知道而是继续发送,因为这时候已经停止了冲突检测的工作。我们就将发生在512比特的这段时间之后的冲突成为迟冲突。一旦发生迟冲突就会照成这样的后果:由于产生了冲突,实际上发送的数据已被损坏,而发送站点却认为发送成功,因此它不会重发这个帧,而接收站点却没接收到这个数据,它也不会对发生站点做出响应,这最终引起发送站点应用程序计时器超时,这时发生站点才知道需要重传这个帧。引发应用程序计时器超时所消耗的时间与发送512比特的时间相比是相当长的,即使是很少的迟冲突也会照成网络性能的降低,迟冲突是一种严重的错误。对于发送数据的站点,在前512比特T这段时间内没有检测到,它就认为已经获得了信道,并把帧传输完毕。那如何保证其他设备也认为该站点获得了信道呢?需要满足下列条件:使得发送站点在前256比特所发的信号充满整个冲突域,这样该站点就获得了真正的信道,因为这时如果其他站点也要发送数据,它们必须执行“先听后发”的操作,由于信号已经充满了整个冲突域,所以它们根据协议的规定而不能发送数据,这就保证了其他设备也一致认为该发送站点获得了信号。,第三章数据链路层,逾限(超巨帧),如ISL,1518+30=1548长帧(小巨帧),如Dot1q,1518+4=1522交换机处理巨帧的方式一般有两种,一种是作为不识别的合法帧向所有的端口泛洪;一种是认为是非法的帧,直接丢弃。短帧残帧交换机处理残帧采用的是碎片隔离式(FragmentFree),它在转发前先检查数据包的长度是否够64个字节(512比特),如果小于64字节,说明是假包(或称残帧),则丢弃该包;如果大于64字节,则发送该包。该方式由于能够避免残帧的转发,所以被广泛应用于低档交换机中。使用这类交换技术的交换机使用了FIFO(FirstInFirstOut,先入先出)的缓存方式。当帧被接收时,它被保存在FIFO中。如果帧以小于512比特的长度结束,那么FIFO中的内容(残帧)就会被丢弃。数据包在转发之前将被缓存保存下来,从而确保碰撞碎片不通过网络传播,能够在很大程度上提高网络传输效率。,第三章数据链路层,帧的类型:单播(Unicast),即收到的帧中目标MAC与本站相同;组播(Multicast),即发送给某些站点的帧;广播(Broadcast),即发送给所有站点的帧。,第三章数据链路层,地址转换协议(ARP)是用来实现IP地址与本地网络认知的物理地址(以太网MAC地址)之间的映射。例如,在第四版IP中,IP地址长为32位。然而在以太局域网络中,设备地址长为48位。有一张表格,通常称为ARP缓冲(ARPcache),来维持每个MAC地址与其相应的IP地址之间的对应关系。ARP提供一种形成该对应关系的规则以及提供双向地址转换。arp-a查看本地ARP缓存arp-d删除本地ARP缓存arp-s静态设置ARP映射,第三章数据链路层,RARP被称为反向ARP,实现物理地址(MAC)到逻辑地址(IP)的映射,即通过物理地址来获取逻辑地址。在基于TCP/IP的网络中,每台主机都需要IP地址进行通信。对于无盘工作站,只能从ROM引导,ROM中不包含IP地址。在网络中需要一台RARP服务器用于IP地址的分发,需要获得IP地址的无盘工作上称为客户机。客户机向网络中广播请求IP地址,服务器收到RARP请求后,以单播的形式发送应答,为客户机分配一个IP地址。,RARP广播,RARP单播,第三章数据链路层,最早的以太网交换机出现在1995年,可简单理解为多端口网桥,连接在端口上的主机或网段独享带宽。交换机的算法相对较简单,硬件厂商将算法进行固化,生产出了交换机的核心ASIC(ApplicationSpecificIntegratedCircuit,专用集成电路)芯片,实现了基于硬件的线速度交换机。交换机是工作于OSI的第2层,能识别MAC地址,通过解析数据帧中目的主机的MAC地址,能将数据帧快速地从源端口转发至目的端口,提高了网络的交换和传输速度。交换机的工作原理是存储转发,它将某个端口发送的数据帧先存储下来,通过解析数据帧,获得目的MAC地址,然后在交换机的MAC地址与端口对应表中,检索该目的主机所连接到的交换机端口,找到后就立即将数据帧从源端口直接转发到目的端口。交换机各端口是独享带宽,并可实现全双工通讯。利用交换机提高了数据的交换处理速度和效率,但连接在交换机上的所有设备仍都处于同一个广播域。,第三章数据链路层,二层交换机的主要功能:1、地址学习(addresslearning):通过查看帧的源MAC地址来加进转发/过滤表的MAC地址数据库里。2、转发/过滤决定(forward/filterdecisions):当接口收到一个帧的时候,交换机查看目标MAC地址,寻找MAC地址数据库和接口,然后向符合条件的那个目标端口转发。3、循环避免(loopavoidance):假如有冗余的连接,可能会造成环路的产生,STP就用来阻止这些环路。,第三章数据链路层,MAC地址表交换机维护MAC地址表,通常也称为交换表。MAC地址表是交换机正常工作的基础,用于存放与该交换机端口所连设备的MAC地址的对应信息。当某一设备接入交换机的某个端口之后,交换机会自动学习并添加该MAC地址与端口的对应关系到MAC地址表中,以后当有数据帧需要发送给该MAC地址时,交换机会首先在地址表中,找到对应该MAC地址的端口,然后直接将数据帧转发到该端口,到达目标。,第三章数据链路层,1、学习MAC地址表2、数据到达,如果源MAC未知,创建新地址表,记录源端口与MAC3、根据目标MAC地址查找交换机的MAC地址表,通过相应的端口发送4、如果目标MAC未知,则flooding(洪泛),向除接收端口外的所有端口广播5、等待目标回应,如果有,记录下目标MAC所处的端口。6、维护MAC地址表。MAC地址表不可能无限大,交换机为每个MAC地址条目产生一个计时器。如果某个MAC地址在规定的时间内没有产生通信,则从MAC地址表中移除;如果有,则计时器重新计时。,PCA,PCB,第三章数据链路层,交换机初始化时MAC表为空。此时如果A向B发送数据,在收到A的数据帧后,首先抽取该帧中的源MAC并和相应的端口号保存到MAC表中,该过程称为地址学习。接下来,由于交换机还未学习到目标MAC对应哪个端口,它将洪泛该帧到除接收端口外的所有端口上。若B收到数据帧并响应,交换机收到后采取以下工作:一、读取帧中源MAC并和对应的端口保存到MAC表中;二、读取帧中目标MAC并以此值查找MAC表中对应的端口号;三、如果查找成功将此帧只转发到该端口,如果不成功则洪泛。经过一段时间的学习后交换机将会在MAC表中保存所有连接的MAC地址及其对应的端口号,并保存一定时间。如果某条记录在保持时间内没有被刷新,交换机将会删掉这条记录。,HostAMac:aaaa,HostBMac:bbbb,1X,2X,第三章数据链路层,如图所示,HostA要与HostB通信,初始时PC机的ARP表为空,交换机的MAC表也为空。1、HostA与HostB通信,源IP为,目标IP为,源MAC为aaaa,目标MAC为ffff(广播);2、交换机收到该帧,进行地址学习,根据源MAC和相应的端口号建立MAC表;3、交换机进行洪泛,将该帧向除接收端口以外的所有端口发送;4、HostB收到后,建立起ARP表,并回应。此时源IP为,目标IP为,源MAC为bbbb,目标MAC为aaaa;5、交换机收到回应帧,继续地址学习;6、交换机查找MAC表,得知MAC表中目标MAC为aaaa对应的端口号为1x,将回应帧从1x发出;7、HostA接收,构建ARP表,通信完成。,HostAMac:aaaaIP:,HostBMac:bbbbIP:,1X,2X,第三章数据链路层,三种交换模式:1、cut-through:又称为fastforward或者realtime模式。交换机只读取到帧的目标地址为止,延时小,但不适合高错误率的网络。转发速度最快,效率最高,可靠性最低。2、fragmentfree:交换机读取帧的前64字节,是Catalyst1900的默认模式。由于一般情况下冲突发生在数据帧的前64字节内,所以在这种模式下交换机读取数据帧的前64字节内容才转发,转发速度中等,效率中等,可靠性中等。3、store-and-forward:在这个模式下,交换机复制整个帧到缓冲区,然后计算CRC,帧的长短可能不一样,所以延时因帧的长短而变化。如果CRC不正确,帧将被丢弃;如果正确,交换机查找硬件目标地址然后转发它们。转发速度最慢,效率最低,可靠性最高。延时(latency):指数据包进入一个网络设备到离开该设备的出口接口所花的时间,根据不同的交换模式而不同。,第三章数据链路层,三种不同的转发模式,Preamble6bytes,SFD1bytes,DA6bytes,SA6bytes,Length2bytes,DATAUpto1500bytes,FCS4bytes,Cutthrough,FragmentFree,StoreandForward,第三章数据链路层,Switch1hasjustbeenrestartedandhaspassedthePOSTroutine.WhenHostAbeginscommunicatingwithHostC,whatwilltheswitchdo?A.Switch1willaddtotheCAMtable.B.Switch1willadd2totheCAMtable.C.Switch1willadd000A.8A47.E612totheCAMtable.D.Switch1willadd000B.DB95.2EE9totheCAMtable.,F0/4,F0/5,F0/2,F0/3,HostAMAC:000A.8A47.E612IP:,HostCMAC:000B.DB95.2EE9IP:2,HostD,HostB,第三章数据链路层,WhatwillanEthernetswitchdoifitreceivesaunicastframewithadestinationMACthatisNOTlistedintheswitchtable?A.Theswitchwillnotforwardunicastframes.B.Theswitchwillforwardtheframetoaspecificport.C.Theswitchwillreturnacopyoftheframeoutthesourceport.D.TheswitchwilladdthedestinationMACtotheswitchtable.E.Theswitchwillforwardtheframetoallportsexcepttheportonwhichitwasreceived.,第三章数据链路层,交换式以太网技术的优点:交换式以太网不需要改变网络其它硬件,包括线缆和网卡,仅需要用交换机替换共享式集线器,节省用户网络升级的费用。可在高速与低速网络间转换,实现不同网络的协同。目前大多数交换式以太网都具有100Mbps的端口,通过与之相对应的100Mbps的网卡接入到服务器上,成为局域网升级时首选的方案。它同时提供多个通道,比传统的共享式集线器提供更高的带宽。传统共享式10/100M以太网采用广播式通信方式,每次只能在一对用户间进行通信,而交换式以太网允许不同用户间进行传送。比如,一个16端口的以太网交换机允许16个站点在8条链路间通信。,第三章数据链路层,微分段是每个网络仅有两个端站,即交换机的一个接口上只连接一台主机或者不同的两个接口上各连接一台主机。微分段可以使端站之间不会产生冲突,是实现全双工的必要因素每个端站有专用带宽,即每一个微分段可以由一个站单独使用。在交换式以太网中,交换机根据收到的数据帧中的MAC地址决定数据帧应发向交换机的哪个端口。因为端口间的帧传输彼此屏蔽,因此节点就不担心自己发送的帧在通过交换机时是否会与其他节点发送的帧产生冲突。使用交换式网络替代共享式网络:减少冲突:交换机将冲突隔绝在每一个端口(每个端口都是一个冲突域),避免了冲突的扩散。提升带宽:接入交换机的每个节点都可以使用全部的带宽,而不是各个节点共享带宽。,第三章数据链路层,冲突/冲突域冲突(Collision):在以太网中,当两个数据帧同时被发到物理传输介质上,并完全或部分重叠时,就发生了数据冲突。当冲突发生时,物理网段上的数据都不再有效。冲突是影响以太网性能的重要因素,由于冲突的存在使得传统的以太网在负载超过40时,效率将明显下降。产生冲突的原因有很多,如同一冲突域中节点的数量越多,产生冲突的可能性就越大。此外,诸如数据分组的长度(以太网的最大帧长度为1518字节)、网络的直径等因素也会影响冲突的产生。因此,当以太网的规模增大时,就必须采取措施来控制冲突的扩散。通常的办法是使用网桥和交换机。,第三章数据链路层,冲突域:是指连接到同一物理介质上的一组设备所构成的区域。使用同轴电缆以总线结构或使用集线器以星型结构搭建的以太网,所有节点处于一个共同的冲突域。如果有两台设备同时要使用传输介质(发送或接收数据),就会造成冲突。当主机增多时,冲突将成倍增加,带宽和速度将显著下降。在网络中,所有直接连接在一起的节点都接收、发送帧的部分,在该域中多个网络节点竞争访问相同的物理媒介,称为冲突域。一个站点向另一个站点发出信号。除目的站点外,有多少站点能收到这个信号。这些站点就构成一个冲突域。,第三章数据链路层,广播/广播域广播:在网络传输中,向所有连通的节点发送消息称为广播。广播是指由广播帧构成的数据流量,这些广播帧以广播地址(地址的每一位都为“1”)为目的地址,告之网络中所有的计算机接收此帧并处理。广播域:网络中能接收任何一设备发出的广播帧的所有设备的集合,也就是说如果站点发出一个广播信号后能接收到这个信号的范围。广播域是指可以接收广播消息的一组设备所构成的区域,也就是广播帧所能到达的范围,一般由路由器设定边界,通常来说一个局域网就是一个广播域。广播和广播域的区别:广播网络指网络中所有的节点都可以收到传输的数据帧,不管该帧是否是发给这些节点。非目的节点的主机虽然收到该数据帧但不做处理。,第三章数据链路层,集线器是一种多端口的中继器,共享带宽,属于物理层设备,是星形拓扑结构的中心节点。集线器的基本功能是使用广播技术进行信息分发,将一个端口上接收到的信号,以广播的方式发送到集线器的其他所有端口。各端口所连接的节点接收到广播信息后,若发现该信息是发给自己的,则接收,否则丢弃。集线器并不处理或检查其上的通信量,仅通过将一个端口接收的信号重复分发给其他端口来扩展物理介质。所有连接到集线器的设备共享同一介质,其结果是它们也共享同一冲突域、广播和带宽。因此集线器和它所连接的设备组成了一个单一的冲突域。如果一个节点发出一个广播信息,集线器会将这个广播传播给所有同它相连的节点,因此它也是一个单一的广播域。集线器和中继器都是工作在物理层。,第三章数据链路层,表面上看,使用集线器时网络拓扑结构是星形。但使用集线器的以太网在逻辑上仍然是一个总线网络,各工作站使用CSMA/CD机制共享逻辑总线,在一个特定时间至多只能有一

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论