2.3 访问方法
在计算机网络中,如何防止多台计算机访问网络共享资源而不会产生沖突呢?这就是我们要讨论的访问方法。定义计算机如何把数据发送到网络电缆上以及如何从电缆上获取数据的一套规则叫做访问方法。
访问方法在网络中控制着电缆的通信量,多台计算机必须共享对连接它们的电缆的访问,在同一时间,有且只能有一台计算机访问电缆,当两台计算机同时把数据发送到电缆上时,一台计算机发送的数据就会和另一台计算机发送的数据发生冲突,导致两个数据全部被破坏。其实,计算机网络通信就好比铁路运输系统,所有火车必须遵守一个规程,这个规程规定了火车应该如何以及何时加入到车流中,如果没有这个规程,加入到车流中的火车就会碰撞已经在线路上的火车。
在网络传输中,数据通过网络从一个用户发送到另一个用户,或者从服务器上访问数据,就需要使用某种访问方法使该数据不与其他数据发生冲突,而且接收数据的计算机必须具有某种保障机制来使数据在传输中不会受到数据冲突的破坏。
访问方法就是要避免几台计算机同时访问电缆,保证某一时刻只有一台计算机可以向网络发送数据,同时保证网络数据的发送和接收是有序的过程。
用来避免几台计算机同时使用传输介质的访问方法主要有三种:
·载波侦听多路访问;
·令牌传递;
·按优先权满足请求。
下面我们分别予以讨论。
2.3.1 载波侦听多路访问
载波侦听多路访问主要有两种:带有冲突检测的载波侦听多路访问(CSMA/CD)和带有避免冲突检测的载波侦听多路访问(CSMA/CA)。
l.CsMA/CD
载波侦听多路访问是现在以太网所用的最主要的网络访问方法,当进行数据传输时,网络上的计算机首先要监听或者侦听电缆(载波侦听),网络上的计算机都试图发送数据(多路访问),但是每台计算机都首先监听检测网络中任何可能的冲突,如果某台计算机检测到任何可能的冲突(冲突检测),它就会随机等待一段时间再发送数据。
实际上,在进行网络通信的时候,只有当计算机“侦听”到电缆空闲而没有通信时,它才发送数据,一旦有一台计算机将数据发送到电缆上,在原始数据到达目的地和电缆再次空闲之前,其他计算机均不能发送数据。
如果两台或多台计算机恰好同时发送了数据,就会导致数据冲突,从而破坏数据。当发生数据冲突时,两台计算机就会在一段随机的时间内停止发送数据,然后再试图重新发送,由于每台计算机都有不同的等待期,因而这样就降低了两台或多台计算机再一次同时发送数据的可能性。
冲突检测能力跟计算机间的距离是有关系的,当计算机间的距离超过2500m时,冲突检测机制就会失效,网络部件也就无法监听到信号,也就不知道网络的另一端是否有另一台计算机在发送数据,当网络上有两台计算机同时发送数据时,就会发生冲突,从而破坏数据。
CSMA/CD是一种争用的访问方法,它看起来似乎是一种比较笨且较慢的方法,但实际上CSMA/CD相当快,以至于网络用户甚至不知道它们在争用电缆发送数据。
2.CSMA/CA
带有避免冲突的载波侦听多路访问是网络访问方法中最不普通的一种,因为在CSMA/CA中,每台计算机在实际发送数据之前,都要先发送信号来表明它要发送数据的意图,网络中的计算机以这种方式侦听可能发生的沖突,避免发送数据的冲突。不过,广播发送数据的意图会增加网络电缆的通信量,从而导致网络性能变差。
……
展开