Internet不是一种新的物理网络,而是一种把物理网络互连的方法以及一组使用网络的约定,这些约定允许联网的计算机进行交互
网络通信的两种途径
通信网络分为两种基本路线:
- 电路交换:也被称为面向连接的
- 分组交换:也被称为无连接的
电路交换
电路交换网络在两点之间形成专用线路。
- 好处:一旦建立一条线路,没有其他网络活动会减少线路的容纳
- 缺点:线路的耗费是固定的,与通讯量的大小无关。也就是说,就算没有人用,但是还是需要花钱
举个例子:电话交换,一个call之间的达到必须根据一条线路(物理上存在)才能找到对方。
很少用了
分组交换
常用于连接计算机,它采用完全不同的处理方法。
- 在分组交换网络中,网络上传输的数据被分成一个个小的信息片,称为分组,分组被多路复用在大容量机器间的连接上
- 一个分组,通常含有几千比特的数据,载有标识信息,使得网络硬件知道怎样把数据发送到指定目的地。
比如,一个要在两台机器之间传输的大文件,必须被分成很多分组,在网络上一个个的传输。网络硬件把分组传输到指定目的地,在那里,软件把它们重新组装成一个文件。
优缺点:
- 优点:计算机之间的多路通信可以并行进行,机器间的连接被正在通信的每一对机器所共享
- 缺点:一旦某个分钟交换网络超载,那么,使用这个网络的计算机在能够继续发送分组之前,必须等待。
广域网和局域网
分组交换技术通常被分为两大类:
- 广域网WAN
- 也被称为远程网,它能够提供长距离通信
- 广域网可以允许通信的终点在任意远的地方
- 通常,广域网运行的速率比局域网低,而且在连接之间由更大的时延
- 局域网LAN
- 提供提供了计算机间的最高速链接,但是牺牲了连接长距离的能力。
在局域网技术中,每台计算机通常有一个直接连接到网络的设备,通常称为网络接口(Network Interface Card, NIC)。网络本身不需要包含太多智能,依赖附加到网络上的计算机中的电子接口设备来产生和接收复杂的电信号。
在广域网技术中,网络通常由一系列复杂的计算机组成,这些计算机称为分组交换机(packet swithc),由长距离通信线路相互链接起来。网络的规模可以通信添加新的交换机和通信线路来扩大。把用户的计算机连到一个广域网上,意思是把它连到一个分组交互机上去。广域网的一条路径上的每个分组交换机,当接受一个分组并把它转发到下一个交换机上时,都会产生时延。因此,广域网越大,在它上面传递信息所需的时间也越长。
网络硬件地址
- 每种网络硬件技术都定义了一种编址机制,计算机使用这种机制指定每个分组的目的地。每台链接到网络的计算机都被赋予一个唯一地址,通常是个整数
- 在网络上传输的分组包括一个目的地址字段,其中有接受者的地址。在所有分组中,目的地址出现在同一位置上,使网络硬件能够很容易的检测到目的地址
- 发送者必须知道接受者的地址,而且必须在发送分组之间把接受者地址放到分组的目的地址字段中
每种硬件技术都规定了如何给计算机分配地址。
以太网技术
以太网(Ethernet)是一种流行的分组交换局域网技术。它是如此流行,因此以它为基础有一些变形技术。
以太网的性质
以太网设计为一种共享总线技术,可以支持广播,使用尽最大努力交付的机制,并且有分布式接入控制。
- 由于所有网点连接到一个共享的单一通信信道,这种拓扑方式可以称为共享总线;
- 所有网点都能收到每次发送,因此可以把一个分组同时传输到所有的网点,这种拓扑方式有被称为广播技术。
- 最低级硬件无法区分每个传输,集线器把所有分组传递给每个主机接口,由主机接口来选择计算机要接收的分组并滤除调其他的分组。之所以要尽最大努力交付,是因为硬件没有向发送者通过任何信息来判断分组是否已经被发送。比如,如果目的主机掉线,那么发送给它的分组将丢失,而发送者得不到通知
- 以太网的接入控制是分布式的,这是因为以太网与某些网络技术不同,它没有任何中央权力来授权接入。以太网的接入方式称为具有冲突检测的载波监听多点计入CSMA/CD:
- 多台机器可同步接入以太网,并且各机探测是否存在载波来决定以太是否空闲
- 当某主机接口要发送一个分组时,首先监听以太,看是否有报文正在发送(即执行载波监听)
- 当没有监听到发送时,主机接口开始发送。每次发送都在限定的事件内完成(因为有一个最大分组长度)
- 另外,硬件必须在两次发送之间保持一个最小空闲时间,也就是说,没有一对正在通信的机器可以连续使用网络而不给其他机器接入网络的机会
冲突检测与恢复
-
当一个站点开始传输时,信号并未同时到达网络各处,而是大约以70%光速的速率在电缆上传输。这样就可能有两个收发器同时探测到网络空闲,并同时开始发送。当这两个电信号交汇时,它们混杂在一起,每个信号都失去了意义。这种事件称为冲突。
-
以太网以一种巧妙的方式处理冲突。每个收发器在发送时监视电缆,看是否有外来信号干扰其发送
- 从技术上来说,这种监视称为冲突检测CD,使得以太网称为一个CSMA/CD
- 当检测到冲突时,主机接口放弃本次发送,等待活动停止,并再次尝试发送。
-
注意,要避免所有收发器都发送而导致每次发送都产生冲突,使整个网络拥塞。 为避免在这种局面,以太网使用一种二进制指数退避策略:
- 第一次冲突后延时一个随机时间
- 如果第二次发送也冲突,就延迟第一次时延的两倍
- 如果第三次发送也冲突,就延迟第一次时延的四倍
- …
-
执行指数退避的考虑是:如果发送许多网点同时发送的情况,将发生严重的拥塞。在这种拥塞中,很可能两个网点选择非常接近的随机时间进行退避。这样,发送另一次冲突的可能性是很高的。通过使延迟时间加倍,指数退避策略会很快把网点重新发送的事件间隔显著拉开,使得再一次发送冲突的可能性变得非常小。
以太网硬件地址
以太网定义了一个48比特寻址方式,每台连接到一条网络的计算机分配到一个唯一的48比特数组,即它的以太网地址。
通常,以太网地址是以机器可读形式固定在主机接口硬件上的,没有两个硬件具有同一的以太网地址。因为以太网地址属于硬件设备,所以它们有时也被称为硬件地址、物理地址、MAC地址、2层(layer 2)地址。
物理地址与以太网接口硬件相关,把硬件接口移到新机器上或者替换硬件接口将改变机器的物理地址
主机接口硬件检测分组并确定应该发送到主机的分组。
- 请记住,每个接口收到的是通过集线器传递的每个分组的副本,也包括要发送到其他机器的分组
- 主线接口把分组中的目的地址字段作为一个过滤器
- 接口忽略要转发到其他机器上的分组,只把地址是本地主机的分组传给主机。
编址机制和硬件过滤是必要的,它们可以避免计算机因为到达数据过多而超载。尽管计算机的中央处理器可以完成这种检测,但由主机接口实现该功能可保持以太网上的同性恋,避免降低所有计算机的处理速度。
一个48比特地址不仅仅指定目的计算机地址。地址可以是下面三种形式之一:
- 一个网络接口的物理地址(单播地址)
- 网络广播地址
- 组播地址
为适应广播以及组播编制,以太网接口硬件必须识别除了它自己的物理地址之外的更多信息。主机接口通常接收两种分组:寻址到接口物理地址的分组(即单播)和寻址到网络广播地址的分组。
计算机启动时,操作系统初始化以太网接口硬件,给它一组要识别的地址。然后,接口检测每个分组的目的地址字段,只把发送给某个指定地址的分组传送给主机
以太网帧格式
以太网可以看做机器之间的链路层连接。因此,可以把传输的数据看做一帧。
- 以太网帧是可变长度的,大概在64 octec 到1518 octec
- 在所有分组交换网络中,每个以太网帧都包含目的地址字段
- 前同步码是64比特0,1交替序列,用于帮助接收接口实现同步
- 32比特CRC帮助接口检测发送错误
- 帧类型是一个16比特的整数,用来识别此帧承载的类型。当一帧到达了指定机器时,操作系统根据帧类型决定用哪个协议软件模块对它进行处理
对以太网进行扩展
使用中继器扩展以太网
- 中继器可以把所有电信号从一段电缆传输到另一端电缆
- 为了保持CSMA/CD时序,以太网标准限制了中继器的使用,任意两台机器之间最多只能由两个中继器
使用网桥扩展以太网
用网桥把两个以太网连接起来比中继器或者集线器更好:
- 因为网桥对分组进行操作,而不是对电信号进行操作
- 而且,网络不复制噪声、错误或者畸形帧,在网桥从一个网段接收一帧并转发到另一帧之前,必须接收一个完整有效的帧。
- 网络掩盖了互联的细节:一系列用户网桥链接的网段可以向单个以太网一样运行。
大部分网桥所做的工作不仅仅是把帧从一段线路复制到另一段,它们还能够只能决定把帧转到何处。这种网桥叫做自适应网桥或者学习网桥:
- 自适应网桥由一台由两个以太网接口的计算机组成。
- 自适应网桥中的软件维护这两张地址表,每个接口各自有一张。当一帧从以太网E1到达时,自适应网桥把它的以太网源地址添加到E1相关的表中;当一帧从以太网E2到达时,自适应网桥把它的以太网源地址添加到E2相关的表中,渐渐地,自适应网桥也知道了E1上有哪些机器,E2上有哪些机器
- 记录了一帧的源地址之后,自适应网络根据该帧的目的地址决定是否继续转发该帧。
- 如果(从地址表中可以看出)该帧的目的地址在本以太网中,网桥不再转发该帧
- 如果该帧的目的地址不在地址表中,则网桥把该帧转发到其他以太网
总之,自适应网桥连接两个以太网段,把帧从一个网段转发到另一个网段。它利用源地址来了解哪个网段上由哪些机器,并把了解到的信息与目的地址组合起来,以排除不必要的转发
光纤分布式数据互联
光纤分布式数据互联FDDI是另一种流行的局域网技术
FDDI网络的性质
FDDI网络是数据传输率为100MB/s的共享令牌环技术,具有自恢复的能力
- FDDI网络是共享的,因为多台计算机连接到一个给定的网络,并依次发送分组
- FDDI被称为“环路”(ring),因为网络形成了一个回路,从一台计算机开始,通过所有计算机,再回到源站
- FDDI是一个令牌传递环,因为它使用令牌传递来控制传输
- 当网络空闲时,一个叫做令牌(token)的特殊保留帧从一站沿环传递到另一站
- 当某站由分组要发送时,它等待令牌带来后开始发送分组,发完后把令牌传递到下一站
- 循环的令牌保证了公平性,它保证所有的栈在任何站发送第二个分组之前都有发送分组的机会
- 具有可以检测和排除故障的能力。因为硬件可以自动适应故障,所以网络被称为是自恢复的。
双反向旋转环路
为自动从故障中恢复过来,FDDI硬件采用了两个独立的环路,它们都连接到每一台计算机:
除非发生错误,否则FDDI不需要使用两个环。事实上,直到出现差错时位置,FDDI接口的行为就像任何传递令牌的网络接口一样。接口检查所有在环上循环的分组,把分组中的目的地址与计算机的地址上进行比较。接口中存有目的站位本地机器的所有分组的副本,也继续在环上转发分组
当某台计算机需发送分组时,它等待令牌的到来,此时会暂停转发比特流,并且发送分组。发完分组后,继续转发比特流。一次只能发一个分组。
当出现硬件错误时,也就是当某个接口出现故障,与它相邻的接口会就把它从环上排除
FDDI硬件将自动使用反向旋转环路(FDDI环也叫做反向旋转环路)在仍能正常运转的方向上形成一个闭回路,继续通信
FDDI的帧格式
FDDI的一个优点是它可以使用很长的帧。对于传输大量数据的应用程序,很长的帧意味着开销更少,吞吐量更大