网络的构成要素
通信媒介与数据链路
计算机之间通过电缆相互连接。电缆可以分为很多种,包括双绞线电缆、光纤电缆、同轴电缆、串行电缆等。根据数据链路(Datalink,意指相互直连的设备之间进行通信所涉及的协议及其网络。为此,有众多传输介质与之对应。) 的不同选用的电缆类型也不尽相同。而媒介本身也可以被划分为电波、微波等不同类型的电磁波。以下是各种不同的数据链路、通信媒介及其标准传输速率。
■ 传输速率与吞吐量 在数据传输的过程中,两个设备之间数据流动的物理速度称为传输速率。 单位为bps(Bits Per Second,每秒比特数)。从严格意义上讲,各种传输媒介中信号的流动速度是恒定的。 因此,即使数据链路的传输速率不相同,也不会出现传输的速度忽快忽慢的情况 。 传输速率高也不是指单位数据流动的速度有多快,而是指单位时间内传输的数据量有多少。 以我们生活中的道路交通为例,低速数据链路就如同车道较少无法让很多车同时通过的情况。 与之相反,高速数据链路就相当于有多个车道,一次允许更多车辆行驶的道路。传输速率又称作带宽(Bandwidth)。 带宽越大网络传输能力就越强。 此外,主机之间实际的传输速率被称作吞吐量。其单位与带宽相同,都是bps(Bits Per Second)。 吞吐量这个词不仅衡量带宽,同时也衡量主机的CPU处理能力、网络的拥堵程度、报文中数据字段的占有份额等信息。
网卡
任何一台计算机连接网络时,必须要使用网卡(全称为网络接口卡)。网络接口卡(NIC(集成了连接局域网功能的设备。有时会被集成到计算机的主板中,有时也可以单独插入扩展槽使用。Network Information Center的缩写也是NIC,所以要注意区分。) )有时也被叫做网络适配器、网卡、LAN卡。
很多产品目录中都加入了“内置LAN端口”的参数,说明越来越多的计算机在出厂设置中就具备了以太网(Ethernet)1000BASE-T或100BASE-TX的端口(计算机与外部连接的接口称作计算机端口。) 。没有配置NIC的计算机如果想接入以太网,至少得外接一个扩展槽以便插入NIC。无线局域网的情况下也是如此,计算机必须具备能够接入无线网的NIC才能保证连接到网络。笔记本电脑如果没有内置的NIC,可以通过ExpressCard(ExpressCard:笔记本电脑中的卡型扩展设备。由制定PC卡标准的PCMCIA(Personal Computer Memory Card International Association,PC机内存卡国际联合会)统一规格。) 或CardBus、压缩闪存以及USB方式插一块NIC以后再连网。
中继器
中继器(Repeater)是在OSI模型的第1层——物理层面上延长网络的设备。由电缆传过来的电信号或光信号经由中继器的波形调整和放大再传给另一个电缆。
一般情况下,中继器的两端连接的是相同的通信媒介,但有的中继器也可以完成不同媒介之间的转接工作。例如,可以在同轴电缆与光缆之间调整信号。然而,在这种情况下,中继器也只是单纯负责信号在0和1比特流之间的替换,并不负责判断数据是否有错误。同时,它只负责将电信号转换为光信号,因此不能在传输速度不同的媒介之间转发(用中继器无法连接一个100Mbps的以太网和另一个10Mbps的以太网。连接两个不同速度的网络需要的是网桥或路由器这样的设备。) 。
通过中继器而进行的网络延长,其距离也并非可以无限扩大。例如一个10Mbps的以太网最多可以用4个中继器分段连接,而一个100Mbps的以太网则最多只能连两个中继器。
有些中继器可以提供多个端口服务。这种中继器被称作中继集线器或集线器。因此,集线器(中继集线器也可以简称为集线器或Hub。但现在人们常说的Hub更多是交换式集线器。) 也可以看作是多口中继器,每个端口都可以成为一个中继器。
网桥/2层交换机
网桥是在OSI模型的第2层——数据链路层面上连接两个网络的设备。它能够识别数据链路层中的数据帧(与分组数据意思大致相同,但是在数据链路层中通常习惯称为帧。) ,并将这些数据帧临时存储于内存,再重新生成信号作为一个全新的帧转发给相连的另一个网段(具有分割、划分网络之意。此外,在TCP中也可以表示数据。) 。由于能够存储这些数据帧,网桥能够连接10BASE-T与100BASE-TX等传输速率完全不同的数据链路,并且不限制连接网段的个数。
数据链路的数据帧中有一个数据位叫做FCS(用CRC(Cyclic Redundancy Check,循环冗余校验码)方式校验数据帧中的位。有时由于噪音导致通信传输当中数据信号越来越弱,而这种CRC正是用来检查数据帧是否因此而受到破坏的。) ,用以校验数据是否正确送达目的地。网桥通过检查这个域中的值,将那些损坏的数据丢弃,从而避免发送给其他的网段。此外,网桥还能通过地址自学机制和过滤功能控制网络流量(网络上传输的数据报文的数量。) 。
这里所说的地址是指MAC地址、硬件地址、物理地址以及适配器地址,也就是网络上针对NIC分配的具体地址。如下图所示,主机A与主机B之间进行通信时,只针对主机A发送数据帧即可。网桥会根据地址自学机制来判断是否需要转发数据帧。
这类功能是OSI参考模型的第2层(数据链路层)所具有的功能。为此,有时也把网桥称作2层交换机(L2交换机)。
有些网桥能够判断是否将数据报文转发给相邻的网段,这种网桥被称作自学式网桥。这类网桥会记住曾经通过自己转发的所有数据帧的MAC地址,并保存到自己里的内存表中。由此,可以判断哪个网段中包含持有哪类MAC地址的设备。
以太网等网络中经常使用的交换集线器(Hub(具有网桥功能的Hub叫做交换集线器。只有中继器功能的Hub叫做集线器。) ),现在基本也属于网桥的一种。交换集线器中连接电缆的每个端口都能提供类似网桥的功能。
路由器/3层交换机
路由器是在OSI模型的第3层——网络层面上连接两个网络、并对分组报文进行转发的设备。网桥是根据物理地址(MAC地址)进行处理,而路由器/3层交换机则是根据IP地址进行处理的。由此,TCP/IP中网络层的地址就成为了IP地址。
路由器可以连接不同的数据链路。例如连接两个以太网,或者连接一个以太网与一个FDDI。现在,人们在家或办公室里连接互联网时所使用的宽带路由器也是路由器的一种。
路由器还有分担网络负荷的作用(由于路由器会分割数据链路,因此数据链路层的广播消息将无法继续传播。) ,甚至有些路由器具备一定的网络安全功能。因此,在连接网络与网络的设备当中,路由器起着极为重要的作用。
4~7层交换机
4~7层交换机负责处理OSI模型中从传输层至应用层的数据。如果用TCP/IP分层模型来表述 ,4~7层交换机就是以TCP等协议的传输层及其上面的应用层为基础,分析收发数据,并对其进行特定的处理。
例如,对于并发访问量非常大的一个企业级Web站点(由URL指定的连接到互联网的一台或一群服务器。目前根据信息内容可分为游戏站点、资源下载站点以及Web站点等多种类型。) ,使用一台服务器不足以满足前端的访问需求,这时通常会架设多台服务器来分担。这些服务器前端访问的入口地址通常只有一个(企业为了使用者的方便,只会向最终用户开放一个统一的访问URL)。为了能通过同一个URL将前端访问分发到后台多个服务器上,可以在这些服务器的前端加一个负载均衡器。这种负载均衡器就是4~7层交换机的一种(此外还可以通过DNS实现负载均衡。通过对多个IP地址配置同一个名字,每次查询到这个名字的客户得到其中的某一个地址,从而使不同客户访问不同的服务器。该方法也称作循环复用DNS技术。) 。
此外,实际通信当中,人们希望在网络比较拥堵的时候,优先处理像语音这类对及时性要求较高的通信请求,放缓处理像邮件或数据转发等稍有延迟也并无大碍的通信请求。这种处理被称为带宽控制,也是4~7层交换机的重要功能之一。
除此之外,4~7层交换机的应用场景还有很多。例如广域网加速器、特殊应用访问加速以及防火墙(可以防止互联网上的非法访问)等。
网关
网关是OSI参考模型中负责将从传输层到应用层的数据进行转换和转发的设备(依照惯例,路由器的表现与“网关”相似。但是这里的“网关”仅限于OSI参考模型中依输层以上各个分层中进行协议转换的设备或部件。) 。它与4~7层交换机一样都是处理传输层及以上的数据,但是网关不仅转发数据还负责对数据进行转换,它通常会使用一个表示层或应用层网关,在两个不能进行直接通信的协议之间进行翻译,最终实现两者之间的通信。
一个非常典型的例子就是互联网邮件与手机邮件之间的转换服务。手机邮件有时可能会与互联网邮件互不兼容,这是由于它们在表示层和应用层中的“电子邮件协议”互不相同所导致的。
那么,为什么连到互联网的电脑与手机之间能够互发电子邮件呢?如下图所示,互联网与手机之间设置了一道网关。网关负责读取完各种不同的协议后,对它们逐一进行合理的转换,再将相应的数据转发出去。这样一来即使应用的是不同电子邮件的协议,计算机与手机之间也能互相发送邮件。
此外,在使用WWW(World Wide Web,万维网)时,为了控制网络流量以及出于安全的考虑,有时会使用代理服务器(Proxy Server)。这种代理服务器也是网关的一种,称为应用网关。有了代理服务器,客户端与服务器之间无需在网络层上直接通信,而是从传输层到应用层对数据和访问进行各种控制和处理。防火墙就是一款通过网关通信,针对不同应用提高安全性的产品。
各种设备及其对应网络分层概览