linuxsocket网络编程用处:嵌入式linux网络编程
linuxsocket网络编程用处:嵌入式linux网络编程LAN 地址和 ARP曼彻斯特编码链路层提供的服务链路层子层网络适配器
本文主要给大家分享网络七层概念之链路层,后续章节会跟大家讲述物理层、
传输层、应用层等,欢迎学习嵌入式网络编程的朋友关注、转载和发表评论!
(绝对的好文,建议先收藏和转载!)
本文的主要内容为:
链路层提供的服务
链路层子层
网络适配器
曼彻斯特编码
LAN 地址和 ARP
MAC 地址
ARP 地址解析协议
术语
以太网
以太网基础
以太网分类和发展
WLAN(无线局域网)
集线器、网桥和交换机
集线器
网桥
交换机
PPP(Point-to-Point Protocol)点到点协议
链路层协议用来在单段链路上传输分组。链路层协议定义了在链路两端的主机之间交互的分组格式
(PDU),以及当发送和接受分组时这些节点采取的动作。链路层协议交换的数据单元为帧frame),每个链路层帧通常封装了一个网络层的数据报。
当发送和接收帧时,链路层协议所采取的动作包括差错检测、重传、流量控制和随机访问。链路层 协议包括以太网、802.11WLAN、令牌环和 PPP;在很多场合下 ATM 也视作链路层协议。
网络层的任务是端到端的将袁术层报文段从源主机传送到目的主机,而链路层协议的任务是节点到 节点的将网络层的数据报传送通过路径中的单段链路。链路层的一个重要特点是数据报在路径的不同链 路上可能由不同链路层协议处理。例如:数据报在第一段链路上可能由以太网处理,在最后一段链路上 可能由 PPP 处理,在中间的所有链路上有帧中继处理。不同的链路层协议提供的服务可能是不同的。例如:链路层协议可能提供、也可能不提供可靠的交付。因此网络层必须能够在各段链路层提供异构服务 的情况下,完成端到端的工作。
4.1.1 链路层提供的服务
TCP/IP 协议族中链路层的作用主要有 3 个:
1. 为 IP 模块发送和接收 IP 数据帧;
2. 为 ARP 模块发送请求和接收应答;
3. 为安全准入模块发送和接收控制信息。而链路层协议提供的服务包括:
· 成帧:所有的链路层协议都在网络层数据报传送到链路上之前,用链路层帧将其封装。帧 由一个数据字段和若干首部字段组成,网络层数据报就插在数据字段中。(帧可能也包括尾部字段;然而我们把首部字段和尾部字段合并成为首部字段。)该帧的结构由数据链路协议规定。
· 链路访问:媒体访问控制(MAC)协议定义了帧在链路上传输的规则。对于一端只有一个发送方、另一端只有一个接收方的点对点链路,MAC 协议比较简单(或者不存在),即任何时候只要链路空闲,发送方都能够发送帧。更有趣的情况是多个节点共享一个广播链路, 即所谓的多路访问问题。
· 可靠传输:当链路层协议提供可靠的传输服务时,它保证将每个网络层的数据报无差错地通过链路层。和运输层可靠的数据传输服务(TCP)类似,链路层可靠的传输服务是通过确认和重传来获得。
· 流量控制:流量控制用于防止在端口阻塞的情况下丢帧,这种方法是当发送或接收缓冲区开始溢出时通过将阻塞信号发送回源地址实现的。流量控制可以有效的防止由于网 络中瞬间的大量数据对网络带来的冲击,保证用户网络高效而稳定的运行。
· 差错检测:当帧中的一个比特作为 1 传输时,接收方节点可能错误地判断为零,反之亦然。这种比特差错是由信号衰减和电磁干扰噪声导致的。因为转发有差错的数据报是没有意义的,许多链路层协议提供一种机制以检测是否存在一个或多个差错。这是通过发送节点在帧中设置差错检测比特,让接收方节点进行差错检测来实现的。
· 差错纠正:差错纠正和差错检测类似,区别在于接收方不仅能检测是否帧中引入了差错, 而且能够准确地判断帧中的差错出现在哪。
· 半双工与全双工:采用全双工传输时,链路两端的节点可以同时传输分组。采用半双工传输时,节点不能同时传输和接收。
4.1.2 链路层子层IEEE802 系列标准把数据链路层分成 LLC(Logical Link Control,逻辑链路控制)和 MAC(Media Access Control,媒介接入控制)两个子层。LLC 子层在 IEEE802.2 标准中定义,为 802 标准系列共用; 而 MAC 子层协议则依赖于各自的物理层。IEEE802.15.4 的 MAC 层能支持多种 LLC 标准,通过 SSCS(Service-Specific Convergence Sublayer,业务相关的会聚子层)协议承载 IEEE802.2 类型一的 LLC 标准,同时也允许其他 LLC 标准直接使用 IEEE802.15.4 的 MAC 层的服务。
划分 LLC 与 MAC 子层原因:
· 局域网基本上采用共享介质环境,从而数据链路层必须考虑介质访问控制机制;
· 介质访问控制机制与物理介质、物理设备和物理拓扑等涉及硬件实现的部分直接有关;
· 分为两个子层,可保证层服务的透明性,在形式上保持与 OSI 模型的一致性。
· 使整个体系结构的可扩展性更好,以备将来接受新的介质与介质访问控制方法。
· LLC 逻辑链路控制子层LLC 子层在 IEEE802.2 标准中定义,为 802 标准系列共用;而 MAC 子层协议则依赖于各自的物理层。IEEE802.15.4 的 MAC 层能支持多种 LLC 标准,通过 SSCS(Service-Specific Convergence
Sublayer,业务相关的会聚子层)协议承载 IEEE802.2 类型一的 LLC 标准,同时也允许其他 LLC 标准直接使用 IEEE802.15.4 的 MAC 层的服务。
数据链路层的 LLC 子层用于设备间单个连接的错误控制,流量控制 数据报的分段与重组,数据报的顺序传输。
与 MAC 层不同,LLC 和物理媒介全无关系。媒介是 CSMA/CD 的 802.3 还是 802.5 的令牌环都没关系。它在 LAN 中是独立的 802.2。在 LLC 之上的网络层可以是无连接、响应的无连接或面向连接的不同业务。
LLC 用业务接入点 SAP 访问上层协议,有了 SAP,站点就能在 LLC 层只用一个接口同时与几个高层协议玩。一个 SAP 是简单的地址或协议 ID,内容则为空的 LLC 帧。LLC 协议数据单元(LLCPDU)即 LPDU。它包括:DSAP(目的 SAP)/SSAP(源 SAP);一个定义吞吐量优先级的控制域(Controlfield);和含带数据的信息域。在接收方,DSAP 例如协议 ID 就是消息要被递送的,通常 DSAP 和 SSAP 是一样的,因为两端只有在同种协议间才能通信。例如当 SAP 为 AA,代表 SNAP(子层接入协议)。SNAP 是个非标准化的,或厂商特定的协议,用于接入协议的业务。例如当 SAP 为 06,则代表 IP 协议;当 SAP 为 FO,代表 NetBIOS(网络基本输入/输出协议)。SAP 为 FF 表示广播的 Global 协议。
· MAC 介质访问控制子层MAC 主要负责控制与连接物理层的物理介质。在发送数据的时候,MAC 协议可以事先判断是否可以发送数据,如果可以发送将给数据加上一些控制信息,最终将数据以及控制信息以规定的格式发送 到物理层;在接收数据的时候,MAC 协议首先判断输入的信息并是否发生传输错误,如果没有错误,则去掉控制信息发送至 LLC(逻辑链路控制)层。
不管是在传统的有线局域网(LAN)中还是在目前流行的无线局域网(WLAN)中,MAC 协议都被广泛地应用。在传统局域网中,各种传输介质的物理层对应到相应的 MAC 层,目前普遍使用的网络采用的是 IEEE 802.3 的 MAC 层标准,采用 CSMA/CD 访问控制方式;而在无线局域网中,MAC 所对应的标准为IEEE 802.11,其工作方式采用 DCF(分布控制)和 PCF(中心控制)。
CDMA2000 一 1x 系统中引入 MAC 子层是为了实现在空中接口容量范围内,允许话音、电路型数据和分组型数据业务的组合且同时传送。在 MAC 子层还采用了 QoS 机制来平衡并发的多个服务的不同 QoS 要求。MAC 子层必须按照物理层信道的定时要求,及时地向物理层中特定信道发送数据或从那里接收数据。在 CDMA20000—1 x 中,MAC 子层承担如下两个重要功能, (1)"尽力发送(Best EffortDelivery)"由无线链路协议(RLP)"尽力而为"地保证传输的可靠性,在无线链路上实现适度的可靠传输。 (2)复用(Mux)和 QoS 控制:通过协滴由多业务产生的、有冲突的发送业务到物理信道的请求,以及为接人请求安排合适的优先级.来确保实施事先阱商好的 QoS 级别。 MAC 子层还要完成具体的逻辑信道到物理信道的映射,尽管这个映射可能在 MAC 子层以上的层中已经定义了,但最终的转换过程是在 MAC 子层和物理层之间发雉的。 由图 6~4 可知,MAC 子层包含 3 个主要部分:信令无线突发协议(sRBP)、无线链路协议(RLP)以及复用及 QoS 单元。其 SRBP 和 RLP 分刖完成信令信息和业务信息的"尽力传送"功能, 保证信令和业务的传送;复用及 QoS 单元实现将上层数据映射到物理层,以及将物理层收到的数据转发到相应的上层。 1 SRBP SRBP 用于将短数据突发以及信令提交给复用单元,它在 MAC 子层中是一个刑信令消息提供无连接协议的实体。它与复用单元中公共信道(前向同步信道、寻呼信道、前向公共控制信道、反向接人信道等)的操作相关联,并控制随机接人信道的接人过程。
4.1.3 网络适配器定义将计算机、工作站、服务器等设备连接到网络上的通信接口装置。在很多情况下,它是一个单独的网络接口卡(NIC),即"网卡"。
网络适配器又称网卡或网络接口卡(NIC),英文名 NetworkInterfaceCard。网络适配器的内核是链路层控制器,该控制器通常是实现了许多链路层服务的单个特定目的的芯片,这些服务包括成帧,链 路接入,流量控制,差错检测等。网络适配器是使计算机联网的设备,平常所说的网卡就是将 PC 机和
LAN 连接的网络适配器。网卡(NIC) 插在计算机主板插槽中,负责将用户要传递的数据转换为网络上其它设备能够识别的格式,通过网络介质传输。它的主要技术参数为带宽、总线方式、电气接口方式等。
网络类型:现在比较流行的有以太网,令牌环网,FDDI 网等,选择时应根据网络的类型来选择相对应的网卡。
传输速率:
应根据服务器或工作站的带宽需求并结合物理传输介质所能提供的最大传输速率来选择网卡的传输速率。以以太网为例,可选择的速率就有 10Mbps,10/100Mbps,1000Mbps,甚至 10Gbps 等多种,但不是速率越高就越合适。
总线类型:计算机中常见的总线插槽类型有:ISA、EISA、VESA、PCI 和 PCMCIA 等。在服务器上通常使用 PCI 或 EISA 总线的智能型网卡,工作站则采用可用 PCI 或 ISA 总线的普通网卡,在笔记本电脑则用 PCMCIA 总线的网卡或采用并行接口的便携式网卡。
网卡支持的电缆接口:网卡最终是要与网络进行连接,所以也就必须有一个接口使网线通过它与其它计算机网络设备连接 起来。不同的网络接口适用于不同的网络类型,目前常见的接口主要有以太网的 RJ-45 接口、细同轴电缆的 BNC 接口和粗同轴电 AUI 接口、FDDI 接口、ATM 接口等。
(1) RJ-45 接口:这是最为常见的一种网卡,也是应用最广的一种接口类型网卡,这主要得益于双绞线以太网应用的普及。
(2) AUI 接口:这种接口类型的网卡对应用于以粗同轴电缆为传输介质的以太网或令牌网中,这种接口类型的网卡目前更是很少见。
(3) FDDI 接口:这种接口的网卡是适应于 FDDI(光纤分布数据接口)网络中,这种网络具有100Mbps的带宽,但它所使用的传输介质是光纤。
(4) BNC 接口:这种接口网卡对应用于用细同轴电缆为传输介质的以太网或令牌网中,目前这种接口类型的网卡较少见,主要因为用细同轴电缆作为传输介质的网络就比较少。
(5) ATM 接口:这种接口类型的网卡是应用于 ATM(异步传输模式)光纤(或双绞线)网络中。它能提供物理的传输速度达 155Mbps
网络适配器的主要作用
1 它是主机与介质的桥梁设备
2 实现主机与介质之间的电信号匹配
3 提供数据缓冲能力
4 控制数据传送的功能(网卡一方面负责接收网络上传过来的数据包,解包后,将数据通过上的总 线传输给本地计算机;另一方面它将本地计算机上的数据打包后送入网络。)
图 4-1 网络适配器
如上图所示,适配器的主要部分是总线接口和链路接口。总线接口负责和适配器父节点通信。它在适配器和父节点之间传输数据和控制信息。链路接口负责实现链路层协议。除了将数据报形成帧和接收电路。对于常用的链路层技术(例如以太网)链路接口使用能够在是芯片市场上买到的芯片组来实现。
4.1.4 曼彻斯特编码曼彻斯特编码(Manchester Encoding),也叫做相位编码(PE),是一个同步时钟编码技术,被物理层使用来编码一个同步位流的时钟和数据。曼彻斯特编码被用在以太网媒介系统中。曼彻斯特编码提供一个简单的方式给编码简单的二进制序列而没有长的周期没有转换级别,因而防止时钟同步的丢失,或来自低频率位移在贫乏补偿的模拟链接位错误。在这个技术下,实际上的二进制数据被传输通过这个电缆,不是作为一个序列的逻辑 1 或 0 来发送的(技术上叫做反向不归零制(NRZ))。
相反地,这些位被转换为一个稍微不同的格式,它通过使用直接的二进制编码有很多的优点。曼彻斯特编码,常用于局域网传输。在曼彻斯特编码中,每一位的中间有一跳变,位中间的跳变既作时钟信号,又作数据信号;从低到高跳变表示"1",从高到低跳变表示"0"。还有一种是差分曼彻斯特编码,每位中间的跳变仅提供时钟定时,而用每位开始时有无跳变表示"0"或"1",有跳变为"0",无跳变为"1"。
图 4-2 曼彻斯特编码
4.2 LAN 地址和 ARP网卡虽然有很多种,不过,有一点是一致的,那就是每块网卡都有一个世界惟一的 ID 号,也叫做MAC(Media Access Control)地址。MAC 地址被烧录于网卡的 ROM 中,就像是我们每个人的遗传基因密码 DNA 一样,即使在全世界也绝对不会重复。MAC 地址用于在网络中标识电脑的身份,实现网络中不同电脑之间的通信和信息交换。
4.2.1 mac 地址在局域网中,硬件地址又称为物理地址,或 MAC 地址。 802 标准所说的"地址"严格地讲应当是每一个站的"名字"或标识符。 但鉴于大家都早已习惯了将这种 48 位的"名字"称为"地址",所以本书也采用这种习惯用法,尽管这种说法并不太严格。
IEEE 的注册管理机构 RA(Registration Authority ) 负责向厂家分配地址字段的前三个字节(即高位 24 位)。地址字段中的后三个字节(即低位 24 位)由厂家自行指派,称为扩展标识符, 必须保证生产出的适配器没有重复地址。一个地址块可以生成 224 个不同的地址。这种 48 位地址称为 MAC-48,它的通用名称是 EUI-48。"MAC 地址"实际上就是适配器地址或适配器标识符EUI-48。
MAC 地址字段可以采用两种形式之一:6B 全球范围,2B 单位范围
· 地址块:地址字段的前 3 个字节(高 24 位)由 IEEE 统一分配给厂商,低 24 位由厂商分配
· 地址类型标识:地址字段的第一字节的最低位 I/G 0 -- 单个站地址; 1 -- 组地址
· 地址范围标识:地址字段的第一字节的最低第二位 G/L 0 -- 局部管理; 1 -- 全局管理
图 4-3 mac 地址
适配器从网络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 MAC 地址.
· 如果是发往本站的帧则收下,然后再进行其他的处理。
· 否则就将此帧丢弃,不再进行其他的处理。
"发往本站的帧"包括以下三种帧:
· 单播(unicast)帧(一对一)
· 广播(broadcast)帧(一对全体)
· 多播(multicast)帧(一对多)
所有的适配器可识别广播和单播帧,第一字节的最低位为 I/G 位,I/G=0 是单播,I/G=1 广播。比如 01-00-5E-A0-B1-C3。IEEE 实际分配 23 位地址。
4.2.2 ARP 地址解析协议ARP,即地址解析协议,实现通过 IP 地址得知其物理地址。在 TCP/IP 网络环境下,每个主机都分配了一个 32 位的 IP 地址,这种互联网地址是在网际范围标识主机的一种逻辑地址。为了让报文在物理网路上传送,必须知道对方目的主机的物理地址。这样就存在把 IP 地址变换成物理地址的地址转换问题。以以太网环境为例,为了正确地向目的主机传送报文,必须把目的主机的 32 位IP 地址转换成为 48 位以太网的地址。这就需要在互连层有一组服务将 IP 地址转换为相应物理地址,这组协议就是 ARP 协议。
图 4-4 LAN 内 arp 请求
图 4-5 arp 请求数据包
图 4-6 arp 查询
图 4-7 ARP 请求
图 4-8 ARP 响应
图 4-9 接收方主机不再同一个链路
基本功能在以太网协议中规定,同一局域网中的一台主机要和另一台主机进行直接通信,必须要知道目标主机的 MAC 地址。而在 TCP/IP 协议栈中,网络层和传输层只关心目标主机的 IP 地址。这就导致在以太网中使用 IP 协议时,数据链路层的以太网协议接到上层 IP 协议提供的数据中,只包含目的主机的 IP 地址。于是需要一种方法,根据目的主机的 IP 地址,获得其 MAC 地址。这就是 ARP 协议要做的事情。所谓地址解析(address resolution)就是主机在发送帧前将目标 IP 地址转换成目标 MAC 地址的过程。
另外,当发送主机和目的主机不在同一个局域网中时,即便知道目的主机的 MAC 地址,两者也不能直接通信,必须经过路由转发才可以。所以此时,发送主机通过 ARP 协议获得的将不是目的主机的真实 MAC 地址,而是一台可以通往局域网外的路由器的某个端口的 MAC 地址。于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况称为 ARP 代理(ARP Proxy)。
ARP 流程在每台安装有 TCP/IP 协议的电脑里都有一个 ARP 缓存表,表里的 IP 地址与 MAC 地址是一一对应的。
图 4-10 命令 arp –a
以主机 A(192.168.1.5)向主机 B(192.168.1.1)发送数据为例。当发送数据时,主机 A 会在自己的 ARP 缓存表中寻找是否有目标 IP 地址。如果找到了,也就知道了目标 MAC 地址,直接把目标 MAC 地址写入帧里面发送就可以了;如果在 ARP 缓存表中没有找到目标 IP 地址,主机 A 就会在网络上发送一个广播,A 主机 MAC 地址是"主机 A 的 MAC 地址",这表示向同一网段内的所有主机发出这样的询问:"我是 192.168.1.5,我的硬件地址是"主机 A 的 MAC 地址".请问 IP 地址为192.168.1.1 的 MAC 地址是什么?"网络上其他主机并不响应 ARP 询问,只有主机 B 接收到这个帧时,才向主机 A 做出这样的回应:"192.168.1.1 的 MAC 地址是 00-aa-00-62-c6-09"。这样,主机 A 就知道了主机 B 的 MAC 地址,它就可以向主机 B 发送信息了。同时 A 和 B 还同时都更新了自己的 ARP 缓存表(因为 A 在询问的时候把自己的 IP 和 MAC 地址一起告诉了 B),下次 A 再向主机 B 或者 B 向 A 发送信息时,直接从各自的 ARP 缓存表里查找就可以了。ARP 缓存表采用了老化机制(即设置了生存时间 TTL),在一段时间内(一般 15 到 20 分钟)如果表中的某一行没有使用,就会被删除,这样可以大大减少 ARP 缓存表的长度,加快查询速度。
RARP 反向地址解析协议反向地址解析协议用于一种特殊情况,如果站点被初始化后,只有自己的物理网络地址而没有IP 地址,则它可以通过 RARP 协议,并发出广播请求,征求自己的 IP 地址,而 RARP 服务器则负责回答。这样无 IP 的站点可以通过 RARP 协议取得自己的 IP 地址,这个地址在下一次系统重新开始以前都有效,不用连续广播请求。RARP 广泛用于获取无盘工作站的 IP 地址。
4.2.3 术语· 冲突(Collision):
· 数据冲突。当冲突发生时,物理网段上的数据都不再有效。
· 冲突域:
· 在同一个冲突域中的每一个节点都能收到所有被发送的帧。 影响冲突产生的因素:
· 同一冲突域中节点的数量越多
· 数据分组的长度
· 网络的直径等因素
•
解决方案:
· 冲突影响以太网性能。由于冲突的存在使得传统的以太网在负载超过 40%时,效率将明显下降。
· 使用网桥和交换机将网络分段,将一个大的冲突域划分为若干小冲突域。
•
· 广播:
· 在网络传输中,向所有连通的节点发送消息称为广播。
· 广播域:
· 网络中能接收任何一设备发出的广播帧的所有设备的集合。
· 广播网络和广播的区别:
· 广播网络指网络中所有的节点都可以收到传输的数据帧,不管该帧是否是发给这些节点。非目的节点的主机虽然收到该数据帧但不做处理。
· 广播是指由广播帧构成的数据流量,这些广播帧以广播地址(地址的每一位都为"1")为目的地址,告之网络中所有的计算机接收此帧并处理它。
4.3 以太网
4.3.1 以太网基础
以太网即 Ethernet 是 Xerox、DigitalEquipment 和 Intel 三家公司开发的局域网组网规范,于 80年代初首次出版,称为 DIX1.0。1982 年修改后的版本为 DIX2.0。这三家公司将此规范提交给 IEEE(电子电气工程师协会)802 委员会,经过 IEEE 成员的修改并通过,变成了 IEEE 的正式标准,并编号为IEEE802.3。Ethernet 和 IEEE802.3 虽然有很多规定不同,但术语 Ethernet 通常认为与 802.3 是兼容的。IEEE 将 802.3 标准提交国际标准化组织(ISO)第一联合技术委员会(JTC1) 再次经过修订变成了国际标准 ISO8802.3。
以太网。指的是由 Xerox 公司创建并由 Xerox Intel 和 DEC 公司联合开发的基带局域网规范。以太网络使用 CSMA/CD(载波监听多路访问及冲突检测技术)技术,并以 10M/S 的速率运行在多种类型的电缆上。以太网与 IEEE802·3 系列标准相类似。
它不是一种具体的网络,是一种技术规范。
以太网是当今现有局域网采用的最通用的通信协议标准。该标准定义了在局域网(LAN)中采用的 电缆类型和信号处理方法。以太网在互联设备之间以 10~100Mbps 的速率传送信息包,双绞线电缆
10BaseT 以太网由于其低成本、高可靠性以及 10Mbps 的速率而成为应用最为广泛的以太网技术。直扩的无线以太网可达 11Mbps,许多制造供应商提供的产品都能采用通用的软件协议进行通信,开放性最好。
拓扑结构总线型:所需的电缆较少、价格便宜、管理成本高,不易隔离故障点、采用共享的访问机制,易造 成网络拥塞。早期以太网多使用总线型的拓扑结构,采用同轴缆作为传输介质,连接简单,通常在小规
模的网络中不需要专用的网络设备,但由于它存在的固有缺陷,已经逐渐被以集线器和交换机为核心的 星型网络所代替。
星型:管理方便、容易扩展、需要专用的网络设备作为网络的核心节点、需要更多的网线、对核心 设的可靠性要求高。采用专用的网络设备(如集线器或交换机)作为核心节点,通过双绞线将局域网中 的各台主机连接到核心节点上,这就形成了星型结构。星型网络虽然需要的线缆比总线型多,但布线和 连接器比总线型的要便宜。此外,星型拓扑可以通过级联的方式很方便的将网络扩展到很大的规模,因 此得到了广泛的应用,被绝大部分的以太网所采用。
传输介质以太网可以采用多种连接介质,包括同轴缆、双绞线和光纤等。其中双绞线多用于从主机到集线器 或交换机的连接,而光纤则主要用于交换机间的级联和交换机到路由器间的点到点链路上。同轴缆作为 早期的主要连接介质已经逐渐趋于淘汰。
接口的工作模式以太网卡可以工作在两种模式下:半双工和全双工。
半双工:半双工传输模式实现以太网载波监听多路访问冲突检测。传统的共享 LAN 是在半双工下工作的,在同一时间只能传输单一方向的数据。当两个方向的数据同时传输时,就会产生冲突,这会降低 以太网的效率。
全双工:全双工传输是采用点对点连接,这种安排没有冲突,因为它们使用双绞线中两个独立的线路,这等于没有安装新的介质就提高了带宽。例如在上例的车站间又加了一条并行的铁轨,同时可有两列火车双向通行。在双全工模式下,冲突检测电路不可用,因此每个双全工连接只用一个端口,用于点对点连接。标准以太网的传输效率可达到 50%~60%的带宽,双全工在两个方向上都提供 100%的效率。
以太网采用带冲突检测的载波帧听多路访问(CSMA/CD)机制。以太网中节点都可以看到在网络中 发送的所有信息,因此,我们说以太网是一种广播网络。以太网的工作过程如下:
工作步骤当以太网中的一台主机要传输数据时,它将按如下步骤进行:
1、帧听信道上收否有信号在传输。如果有的话,表明信道处于忙状态,就继续帧听,直到信道空 闲为止。
2、若没有帧听到任何信号,就传输数据
3、传输的时候继续帧听,如发现冲突则执行退避算法,随机等待一段时间后,重新执行步骤 1(当冲突发生时,涉及冲突的计算机会发送一个拥塞序列,以警告所有的节点)
4、若未发现冲突则发送成功,计算机会返回到帧听信道状态。
注意:每台计算机一次只允许发送一个包,所有计算机在试图再一次发送数据之前,必须在最近一 次发送后等待 9.6 微秒(以 10Mbps 运行)。
4.3.2 以太网分类和发展现在最常用的以太网技术包括 10Base2(它在总线拓扑中使用细同轴电缆,传输速率是 10Mbit/s)、
10BaseT(它在星形拓扑中使用双绞铜线,传输速率为 10 Mbit/s)、100BaseT(它通常在星形拓扑中使用双绞铜线,速率为 100 Mbit/s)和吉比特以太网(它同时使用光纤盒双绞铜线,速率 1Gbit/s)。这些以太网技术由 IEEE802.3 工作组标准化。由于这个原因,以太网 LAN 经常被称为 802.3 以太网。
转发器:也叫做网络转发器,是一类重建到来的电子、无线或光学信号的网络设备。有了物理媒体如以太网或 Wi-Fi ,数据传输在信号降级之前仅能跨越一个有限范围。转发器尝试来保护信号的完整性和扩展数据能够安全传输的距离。在网络互连时用在 ISO 物理层的中继系统。
一、标准以太网开始以太网只有 10Mbps 的吞吐量,使用的是带有冲突检测的载波侦听多路访问( CSMA/CD, Carrier Sense Multiple Access/Collision Detection)的访问控制方法,这种早期的 10Mbps 以太网称之为标准以太网。以太网可以使用粗同轴电缆、细同轴电缆、非屏蔽双绞线、屏蔽双绞线和光纤等多种传输介质进行连接,并且在 IEEE 802.3 标准中,为不同的传输介质制定了不同的物理层标准, 在这些标准中前面的数字表示传输速度, 单位是"Mbps", 最后的一个数字表示单段网线长度(基准单位是 100m),Base 表示"基带"的意思, Broad 代表"带宽"。
·10Base-5 使用直径为 0.4 英寸、阻抗为 50Ω粗同轴电缆, 也称粗缆以太网, 最大网段长度为 500m, 基带传输方法, 拓扑结构为总线型; 10Base- 5 组网主要硬件设备有: 粗同轴电缆、带有 AUI 插口的以太网卡、中继器 、收发器、收发器电缆、终结器等。
·10Base-2 使用直径为 0.2 英寸、阻抗为 50Ω细同轴电缆, 也称细缆以太网,最大网段长度为 185m, 基带传输方法, 拓扑结构为总线型; 10Base- 2 组网主要硬件设备有: 细同轴电缆、带有 BNC 插口的以太网卡、中继器、T 型连接器 、终结器等。
·10Base- T 使用双绞线电缆, 最大网段长度为 100m, 拓扑结构为星型; 10Base- T 组网主要硬件设备有:3 类或 5 类非屏蔽双绞线、带有 RJ-45 插口的以太网卡、集线器、交换机、RJ-45 插头等。
· 1Base- 5 使用双绞线电缆,最大网段长度为 500m,传输速度为 1Mbps;
·10Broad- 36 使用同轴电缆( RG-59/U CATV), 网络的最大跨度为 3600m, 网段长度最大为 1800m,是一种宽带传输方式;
·10Base-F 使用光纤传输介质,传输速率为 10Mbps;
二、快速以太网
随着网络的发展,传统标准的以太网技术已难以满足日益增长的网络数据流量速度需求。在
1993 年 10 月以前,对于要求 10Mbps 以上数据流量的 LAN 应用,只有光纤分布式数据接口(FDDI) 可供选择,但它是一种价格非常昂贵的、基于 100Mpbs 光缆的 LAN。1993 年 10 月,Grand Junction公司推出了世界上第一台快速以太网集线器 Fastch10/100 和网络接口卡 FastNIC100, 快速以太网技术正式得以应用。随后 Intel、SynOptics、3COM、BayNetworks 等公司亦相继推出自己的快速以太网装置。与此同时,IEEE802 工程组亦对 100Mbps 以太网的各种标准,如 100BASE-TX、100BASE-T4、MII、中继器、全双工等标准进行了研究。1995 年 3 月 IEEE 宣布了 IEEE802.3u100BASE- T 快速以太网标准(Fast Ethernet),就这样开始了快速以太网的时代。
快速以太网与原来在 100Mbps 带宽下工作的 FDDI 相比它具有许多的优点,最主要体现在快速以太网技术可以有效的保障用户在布线基础实施上的投资, 它支持 3、4、5 类双绞线以及光纤的连接,能有效的利用现有的设施。 快速以太网的不足其实也是以太网技术的不足,那就是快速以太网仍是基于 CSMA/ CD 技术,当网络负载较重时,会造成效率的降低,当然这可以使用交换技术来弥补。 100Mbps 快速以太网标准又分为:100BASE-TX 、100BASE-FX、100BASE-T4 三个子类。
· 100BASE- TX: 是一种使用 5 类数据级无屏蔽双绞线或屏蔽双绞线的快速以太网技术。它使用两对双绞线,一对用于发送,一对用于接收数据。在传输中使用 4B/5B 编码方式,信号频率为 125MHz。符合 EIA586 的 5 类布线标准和 IBM 的 SPT 1 类布线标准。使用同 10BASE-T 相同的 RJ-45 连接器。它的最大网段长度为 100 米。它支持全双工的数据传输。
· 100BASE - FX : 是一种使用光缆的快速以太网技术, 可使用单模和多模光纤( 62.5 和
125um) 多模光纤连接的最大距离为 550 米。单模光纤连接的最大距离为 3000 米。在传输中使用 4B/ 5B 编码方式,信号频率为 125MHz。它使用 MIC/FDDI 连接器、ST 连接器或 SC 连接器。它的最大网段长度为 150m、412m、2000m 或更长至 10 公里,这与所使用的光纤类型和工作模式有关, 它支持全双工的数据传输。100BASE-FX 特别适合于有电气干扰的环境、较大距离连接、或高保密环境等情况下的适用。
· 100BASE-T4:是一种可使用 3、4、5 类无屏蔽双绞线或屏蔽双绞线的快速以太网技术。100Base-T4 使用 4 对双绞线, 其中的三对用于在 33MHz 的频率上传输数据,每一对均工作于半双工模式。第四对用于 CSMA/CD 冲突检测。在传输中使用 8B/6T 编码方式,信号频率为 25MHz, 符合 EIA586 结构化布线标准。它使用与 10BASE-T 相同的 RJ-45 连接器,最大网段长度为 100 米。
三、千兆以太网千兆以太网技术作为最新的高速以太网技术,给用户带来了提高核心网络的有效解决方案, 这种解决方案的最大优点是继承了传统以太技术价格便宜的优点。 千兆技术仍然是以太技术, 它采用了与 10M 以太网相同的帧格式、帧结构、网络协议、全/半双工工作方式、流控模式以及布线系统。由于该技术不改变传统以太网的桌面应用、操作系统,因此可与 10M 或 100M 的以太网很好地配合工作。升级到千兆以太网不必改变网络应用程序、网管部件和网络操作系统, 能够最大程度地投资保护。 为了能够侦测到 64Bytes 资料框的碰撞,Gigabit Ethernet 所支持的距离更短。Gigabit Ethernet 支持的网络类型,如下表所示:
传输介质 距离
千兆以太网技术有两个标准: IEEE802.3z 和 IEEE802.3ab。IEEE802.3z 制定了光纤和短程铜线连接方案的标准。IEEE802.3ab 制定了五类双绞线上较长距离连接方案的标准。
1. IEEE802.3z
IEEE802.3z 工作组负责制定光纤(单模或多模)和同轴电缆的全双工链路标准。IEEE802.3z 定 义 了 基 于 光 纤 和 短 距 离 铜 缆 的 1000Base-X , 采 用 8B/10B 编 码 技 术 , 信 道 传 输 速 度 为
1.25 Gbit/s,去耦后实现 1000Mbit/s 传输速度。 IEEE802.3z 具有下列千兆以太网标准:
· 1000Base-SX 只支持多模光纤, 可以采用直径为 62.5um 或 50um 的多模光纤,工作波长为 770-860nm,传输距离为 220-550m。
· 1000Base-LX 多模光纤:可以采用直径为 62.5um 或 50um 的多模光纤,工作波长范围为1270-1355nm,传输距离为 550m。
单模光纤: 可以支持直径为 9um 或 10um 的单模光纤, 工作波长范围为 1270-1355nm, 传输距离为 5km 左右。
· 1000Base-CX 采用 150 欧屏蔽双绞线(STP),传输距离为 25m。
2. IEEE802.3ab
IEEE802.3ab 工作组负责制定基于 UTP 的半双工链路的千兆以太网标准,产生 IEEE802.3ab 标准及协议。IEEE802.3ab 定义基于 5 类 UTP 的 1000Base-T 标准, 其目的是在 5 类 UTP 上以
1000Mbit/s 速率传输 100m。 IEEE802.3ab 标准的意义主要有两点:
(1) 保护用户在 5 类 UTP 布线系统上的投资。
(2) 1000Base-T 是 100Base-T 自然扩展, 与 10Base-T、100Base-T 完全兼容。不过, 在 5 类 UTP 上达到 1000Mbit/s 的传输速率需要解决 5 类 UTP 的串扰和衰减问题,因此,使 IEEE802.3ab 工作组的开发任务要比 IEEE802.3z 复杂些 。
四、万兆以太网万兆以太网规范包含在 IEEE 802.3 标准的补充标准 IEEE 802.3ae 中, 它扩展了 IEEE802.3 协议和 MAC 规范使其支持 10Gb/s 的传输速率。除此之外,通过 WAN 界面子层(WIS: WAN interface sublayer),10 千兆位以太网也能被调整为较低的传输速率, 如 9.584640 Gb/s( OC-192), 这就允许 10 千兆位以太网设备与同步光纤网络(SONET) STS -192c 传输格式相兼容。
· 10GBASE-SR 和 10GBASE-SW 主要支持短波(850 nm)多模光纤(MMF),光纤距离为 2m到 300 m 。
10GBASE-SR 主要支持"暗光纤"( dark fiber), 暗光纤是指没有光传播并且不与任何设备连接的光纤。
10GBASE-SW 主要用于连接 SONET 设备,它应用于远程数据通信。
· 10GBASE-LR 和 10GBASE-LW 主要支持长波(1310nm)单模光纤(SMF),光纤距离为 2m到 10km (约 32808 英尺)。
10GBASE-LW 主要用来连接 SONET 设备时,10GBASE-LR 则用来支持"暗光纤"( dark fiber)。
· 10GBASE-ER 和 10GBASE-EW 主要支持超长波(1550nm)单模光纤(SMF),光纤距离为 2m到 40km (约 131233 英尺)。
10GBASE-EW 主要用来连接 SONET 设备,10GBASE-ER 则用来支持"暗光纤"( dark fiber)。
· 10GBASE-LX4 采用波分复用技术, 在单对光缆上以四倍光波长发送信号。系统运行在1310nm 的多模或单模暗光纤方式下。该系统的设计目标是针对于 2m 到 300 m 的多模光纤模式或 2m 到 10km 的单模光纤模式。
4.4 WLAN(无线局域网)WLAN是以太网的无线电介质版本,以太网脱胎于ALOHA(1960年代由美国夏威夷大学主导研究的一 种共享无线网络技术,ALOHA是夏威夷原住民语Hello的意思),ALOHA就是一种无线技术,所以WLAN和ALOHA也有很深的渊源。WLAN标准化工作开始于1997年,而Richard写书是在1993年,所以当时他并没有研究这项技术。WLAN的标准化技术是由IEEE 802.11委员会领导的,通常我们认为WLAN = 802.11 = WiFi, 但最耳熟能详的是时髦的WiFi,稍微专业一点的知道WLAN,更专业的才知道802.11。
WLAN的通信介质是同频无线电(通常被划分为不同频段的Channel信道),无线电是在自由空间传播的,无线电通信具备开放接入的特点,也是一种共享介质模型,因此也存在冲突的可能,WLAN解决多 点通信冲突的解决方法是CSMA/CA(载波监听、多点接入、冲突避免,Avoidance避免),为何不是CSMA/CD 呢,因为WLAN的无线信号在开放空间内传输,信号并不强(大多WLAN设备在开放空间全向覆盖半径为100m,特殊情况使用定向天线可达10km),能量容易被金属等材料吸收,有可能无法覆盖到空间,载波介质在空间中可能是断续的,而不是连续的,因而无法保证所有节点都可以互相监听,而以太网则在专 门的线缆内传递,线缆上的节点都能够进行监听,如上图中Infrastructure模式中终端4和终端2因为距 离较远可能就无法互相监听,也就检测不到冲突,因此无线电介质上多点接入的冲突主要是靠事先避免(Avoidance),而非事后检测(Detection)。在WLAN中,所有节点被称为station简称STA,在ad hoc(此为拉丁语,意为特殊)模式中,所有STA都是对等的,所以也叫Peer to Peer模式;在Infrastructure 模式中,有一个特殊的STA称为Access Point(无线接入点,简称AP),其余STA都要与AP建立连接,STA 之间的通信都要由AP转发。两种模式中,Infrastructure模式更加常见,WLAN在这种模式中也扩展出了极其丰富的应用。总体来说这两种模式的差别在于转发上:
IEEE 802.11委员会针对WLAN所做的标准非常多,有涉及介质层面的802.11a/b/g/n,也有MAC层面的802.11i/e等等,除此之外,无线信号相关的射频理论知识也有一个非常庞大的体系,可以说比TCP/IP 框架复杂专业得多。限于能力和时间原因,不在本文中专门介绍,读者可以从已出版的书籍中找到相关 知识。
WLAN连接模式。无线局域网的组网方式一:对等网络,又称Ad-Hoc方式
由一组有无线网络接口的计算机组成。同一Ad-Hoc网络中的计算机要有相同的工作组名、ESSID 和密码。配置简单,在管理和预先设置方面没有要求。可以实现点对点与点对多点连接。但不能连接外部网络。适用于用户数相对较少的网络规模。以下图为例,因为信号强弱的缘故,STA1 无法检测到TA4,只能检测到STA2,那么STA1只能与STA2通信,而无法与STA3、4通信,也就是说ad hoc模式中,通信无法中转;
图4-11 Ad-hoc方式
无线局域网的组网方式二:基础结构网络最常见的无线局域网构建模式,又称Infrastucture方式。以AP为中心,实现对网络访问 集中控制。 其弱点是AP成为单故障点;可与有线网络结合起来使用。
如下图中,所有的STA必须连接到AP,STA1、2、3、4皆连接到同一个AP,那么STA1要和STA4 通信时,即使STA1、STA4因为信号足够好,STA1也要讲数据帧交给AP来转发,也就是说Infrastructure模式中,所有数据都必须由AP进行中转,AP就是所谓的Infrastructure(基础设施)中的一部分,在WLAN中,完整基础设施的名称是distributed system分布式系统,现代的大型无线网络中,一个DS通常由若干AP以及连接这些AP的有线网络、AP控制器构成(AP控制 器可以控制若干个AP共同覆盖一个比较大的区域范围)。
图4-12 基础结构网络
· 为什么需要无线局域网?· 有线网络所存在的使用限制:
· 具有空旷场地的建筑物内;
· 具有复杂周围环境的制造业工厂、货物仓库内;
· 机场、车站、码头、股票交易场所等一些用户频繁移动的公共场所内;
· 缺少网络电缆而又不能打洞布线的历史建筑物内;
· 受自然条件影响而无法实施布线的环境,如存在河道;
· 在一些需要临时增设网络节点的场合,如体育比赛场地、展示会等
· 支持无线局域网的技术标准主要有:· 蓝牙技术:手机或PDA为主要设计对象
· HomeRF技术:主要服务为家庭无线网络
· IEEE 802.11系列:无线局域网标准
· 覆盖无线局域网的物理层和MAC子层:· 物理层标准规定了无线传输信号等基础规范,如802.11a、802.11b、802.11d、802.11g、802.11h 。
· MAC子层标准包括802.11e、802.11f、802.11i。
· IEEE 802.11系列:无线局域网标准
· 红外线(IR)采用波长小于1μm的红外线作为传输媒体,有较强的方向性,受阳光干扰大。它支持1~2Mbit/s 数据速率,适于近距离通信。
· 无线电波方式(具有覆盖范围大,抗干扰、抗噪声、抗衰减和保密性好的优点)· 直接序列式扩频(DSSS):支持1~2Mbit/s数据速率
· 跳频扩展频谱(FHSS) :支持1Mbit/s数据速率
· 采用带冲突避免的载波侦听多路访问(Carrier Sense Multiple Access/Collision Avoidation )协议 ,简称 CSMA/CA。
· 在CSMA/CD基础上,引入了称为请求发送/清除发送(RTS/CTS)的机制。
若发送目的地是无线节点,则当数据到达基站时,基站向无线节点发送一个RTS帧,请求一段用 来发送数据的专用时间。接收到RTS请求帧的无线节点将回应一个CTS帧,表示它将中断其他所有的通信 直到该基站传送数据结束。
其他设备可监听到传输事件的发生,同时将在此时间段的传输任务向后推迟。这样,节点间传 送数据时发生冲突的概率就会大大的减小。
无线局域网设备· 无线网卡:
相当于有线网卡在有线局域网中的作用。按总线类型可分为适用于台式机的PCI接口的无线网 卡,适用笔记本的PCMCIA接口的无线网卡,笔记本和台式机均适用的USB接口的无线网卡。
· 无线访问接入点(AP):
无线局域网中进行数据发送和接收的集中设备,相当于有线网络中的集线器。
通常,一个AP能够在几十至上百米的范围内连接多个无线用户。AP可以通过标准的Ethernet电缆 与传统的有线网络相联,从而可作为无线网络和有线网络的连接点。
· 无线网桥:
用于无线或有线局域网之间的无线互连。
· 天线(Antenna) :
将信号源发送的信号藉由天线传送至远处。
天线有定向性(Uni-directional)与全向性(Omni-directional)之分,前者较适合于长距离使 用,而后者则较适合区域性之应用。
· 无线路由器 :
集成了无线AP的接入功能和路由器的第三层路径选择功能的无线连网设备。
4.5 集线器、网桥和交换机一个机构(包括公司、大学和高中)通常包括许多部门,每个部门都有自己的以太网 LAN,并对它进行 管理。很显然,各个机构也希望各部门互联它们的 LAN 网段。在本节我们将考虑连接 LAN 的 3 中不同方法:集线器、网桥和交换机。
4.5.1 集线器定义:集线器的英文称为"Hub"。"Hub"是"中心"的意思,集线器的主要功能是对接收到的信号进行 再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上。它工作于 OSI(开放系统互联参考模型)参考模型第一层,即"物理层"。集线器与网卡、网线等传输介质一样,属于局域网中的基础设备,采用 CSMA/CD(一种检测协议)访问方式。
集线器(HUB)属于数据通信系统中的基础设备,它和双绞线等传输介质一样,是一种不需任何软 件支持或只需很少管理软件管理的硬件设备。它被广泛应用到各种场合。集线器工作在局域网(LAN)环
境,像网卡一样,应用于 OSI 参考模型第一层,因此又被称为物理层设备。集线器内部采用了电器互联, 当维护 LAN 的环境是逻辑总线或环型结构时,完全可以用集线器建立一个物理上的星型或树型网络结构。在这方面,集线器所起的作用相当于多端口的中继器。其实,集线器实际上就是中继器的一种,其区别仅在于集线器能够提供更多的端口服务,所以集线器又叫多口中继器。
原理:我们知道在环型网络中只存在一个物理信号传输通道,都是通过一条传输介质来传输的,这样就存在各节点争抢信道的矛盾,传输效率较低。引入集线器这一网络集线设备后,每一个站是用它自己专用的传输介质连接到集线器的,各节点间不再只有一个传输通道,各节点发回来的信号通过集线器集中, 集线器再把信号整形、放大后发送到所有节点上,这样至少在上行通道上不再出现碰撞现象。但基于集线器的网络仍然是一个共享介质的局域网,这里的"共享"其实就是集线器内部总线,所以当上行通道与下行通道同时发送数据时仍然会存在信号碰撞现象。当集线器将从其内部端口检测到碰撞时,产生碰撞强化信号(Jam)向集线器所连接的目标端口进行传送。 这时所有数据都将不能发送成功,形成网络
"大塞车"。
正因为集线器的这一不足之处,所以它不能单独应用于较大网络中(通常是与交换机等设备一起分担小部分的网络通信负荷),就像在大城市中心不能有单车道一样,因为网络越大,出现网络碰撞现象的机会就越大。也正因如此,集线器的数据传输效率是比较低的,因为它在同一时刻只能有一个方向的 数据传输,也就是所谓的"单工"方式。如果网络中要选用集线器作为单一的集线设备,则网络规模最好 在 10 台以内,而且集线器带宽应为 10/100Mbps 以上。
集线器除了共享带宽这一不足之处外,还有一个方面在选择集线器时必须要考虑到,那就是它的广播方式。因为集线器属于纯硬件网络底层设备,基本上不具有"智能记忆"能力,更别说"学习"能力了。它也不具备交换机所具有的 MAC 地址表,所以它发送数据时都是没有针对性的,而是采用广播方式发送。也就是说当它要向某节点发送数据时,不是直接把数据发送到目的节点,而是把数据包发送到与集线器相连的所有节点,图示如图 2 所示。
这种广播发送数据方式有两方面不足:(1)用户数据包向所有节点发送,很可能带来数据通信的不安全因素,一些别有用心的人很容易就能非法截获他人的数据包;(2)由于所有数据包都是向所有节点同时发送,加上以上所介绍的共享带宽方式,就更加可能造成网络塞车现象,更加降低了网络执行效率。
特点:依据 IEEE 802.3 协议,集线器功能是随机选出某一端口的设备,并让它独占全部带宽,与集线器的上联设备(交换机、路由器或服务器等)进行通信。由此可以看出,集线器在工作时具有以下两个特点。
(1) Hub 只是一个多端口的信号放大设备,工作中当一个端口接收到数据信号时,由于信号在从源端口到 Hub 的传输过程中已有了衰减,所以 Hub 便将该信号进行整形放大,使被衰减的信号再生(恢复)到发送时的状态,紧接着转发到其他所有处于工作状态的端口上。从 Hub 的工作方式可以看出,它在网络中只起到信号放大和重发作用,其目的是扩大网络的传输范围,而不具备信号的定向传送能力, 是—个标准的共享式设备。
(2) Hub 只与它的上联设备(如上层 Hub、交换机或服务器)进行通信,同层的各端口之间不会直接进行通信,而是通过上联设备再将信息广播到所有端口上。由此可见,即使是在同一 Hub 的不同两个端口之间进行通信,都必须要经过两步操作:第一步是将信息上传到上联设备;第二步是上联设备再将 该信息广播到所有端口上。
4.5.2 网桥定义:
一种在链路层实现中继,常用于连接两个或更多个局域网的网络互连设备。网桥(Bridge)像一个聪明的中继器。中继器从一个网络电缆里接收信号, 放大它们,将其送入下一个电缆。相比较而言, 网桥对从关卡上传下来的信息更敏锐一些。网桥是一种对帧进行转发的技术,根据 MAC 分区块,可隔离碰撞。网桥将网络的多个网段在数据链路层连接起来。
网桥种类远程网桥: 由两个半桥构成
透明网桥: 即插即用,支撑树算法
源路由网桥:用于 802.5,发现帧发现路由功能:
中继器、网桥以及路由器主要解决的是网络通信线路的连接问题,所以他们工作在 OSI 的第三层。中继器实现网络间物理层的互连。中继器从一个网络段上接受信号将之放大,重新定时后传送到另一个网络段上,以延长局域网的电缆长度。路由器是网络层的互连设备,不但可以用于局域网之间的互连, 还可以在广域网之间、广域网与局域网之间实现互连功能,它不仅可以存储和转发分组,还具有路径选择、多路重发和错误检测的功能。
数据过滤和转发网桥的功能之一就是数据的过滤和转发。网桥首先要确定收到帧的目的设备是否在这个数据帧本身 所在的网段上。如果目的设备在这个网段上,网桥就不会将这个数据帧送到其他网桥端口,这就是一个 过滤的例子。过滤是对帧的处理过程,它阻止帧通过网桥。过滤有三种基本类型:
· 目的地址过滤
· 源地址过滤
· 协议过滤自学习能力
当一帧到达时,网桥必须决定将其过滤还是转发。如果要转发,则必须决定发送哪个局域网。此决 策通过查阅网桥中一张大型散列表里的目的地址来确定。该表可列出每个可能的目的地,以及它属于哪一条输出线路(LAN)。
连接广域网络随着企业网的发展,网络覆盖的地理区域要求越来越广阔。网桥可以互连相距遥远的局域网,如下 图所示,这样就可以解决一些企业发展自己网络的需要。这种功能的实现是由广域网网桥来完成的。在 最开始我们就提到,广域网网桥也叫半网桥,他们成对的在一起工作。每个网桥的一个端口连接在租用 的线路上或者与一个 X25 网络相连。各个网桥相互合作,通过使用类似于 SDLC 或 HDLC 的协议经过点到点链路来路由数据帧,或使用 X25 经过公共网络路由数据帧。
图 4-13 广域网网桥
在通过广域网络进行互连时,必须考虑广域网接入时延和信息传送时延。显然广域网中传输距离越 长,信息传送延迟就越大,而相应的数据传输效率就越底,一般推荐,基于网桥的广域网络连接的计算 机网络覆盖距离不应该超过 20km 以保证较底的传输时延。广域网络访的访问时间在于网桥基于数据链路层工作,所以采用的点到点直达通道,一般不希望数据传输在广域网落中经过复杂的交换,这和路由
器和网桥式路由器是不同的,即网桥中期望数据帧快速传输。
设备管理
· 配置管理 :这一功能包括,网络中所有网桥的操作和网桥的操作参数设置。网桥的操作有初
始化、重置和关闭,网桥的操作参数设置包括过滤表的生存时间、帧传播延时控制。
· 故障管理 :这一功能可以及时报告网络故障,并对网络故障进行修整。
· 性能管理 :统计网桥各端口推进和数据帧的丢失数量。
· 安全管理 :网桥可以通过一些设置以满足一定的安全需求。它可以设置不同的设备网桥访问时间,或者配置用户修改和访问网桥的参数。其中各厂家对于安全管理实现方式各不相同。
网桥的工作原理
数据链路层互联的设备是网桥(bridge),在网络互联中它起到数据接收、地址过滤与数据转发的作用,
用来实现多个网络系统之间的数据交换。网桥的基本特征
1.网桥在数据链路层上实现局域网互连;
2.网桥能够互连两个采用不同数据链路层协议、不同传输介质与不同传输速率的网络
3.网桥以接收、存储、地址过滤与转发的方式实现互连的网络之间的通信;
4.网桥需要互连的网络在数据链路层以上采用相同的协议
5.网桥可以分隔两个网络之间的通信量,有利于改善互连网络的性能与安全性。 网桥的局限性
网桥具有迅速高效、自适应能力强的特点,同时,与其他工作在高层的网络互连设备相比较,它的 使用和安装都相对简单。但是网桥也存在问题,特别是在与广播帧相关的应用上。广播式通信所带来的 结果是整个网络都能看见存在于某对设备间的问题。
4.5.3 交换机定义交换机(英文:Switch,意为"开关")是一种用于电信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路。最常见的交换机是以太网交换机。其他常见的还有电话语音 交换机、光纤交换机等。
原理工作在数据链路层。交换机拥有一条很高带宽的背部总线和内部交换矩阵。交换机的所有的端口都 挂接在这条背部总线上,控制电路收到数据包以后,处理端口会查找内存中的地址对照表以确定目的
MAC(网卡的硬件地址)的 NIC(网卡)挂接在哪个端口上,通过内部交换矩阵迅速将数据包传送到目的端口,目的 MAC 若不存在,广播到所有的端口,接收端口回应后交换机会"学习"新的地址,并把它添加入内部 MAC 地址表中。使用交换机也可以把网络"分段",通过对照 MAC 地址表,交换机只允许必要的网络流量通过交换机。通过交换机的过滤和转发,可以有效的减少冲突域,但它不能划分网络层广播,即广播域。交换机在同一时刻可进行多个端口对之间的数据传输。每一端口都可视为独立的网段,连接在其上的网络设备独自享有全部的带宽,无须同其他设备竞争使用。当节点 A 向节点 D 发送数据时,节点 B 可同时向节点 C 发送数据,而且这两个传输都享有网络的全部带宽,都有着自己的虚拟连接。假使这里使用的是 10Mbps 的以太网交换机,那么该交换机这时的总流通量就等于 2×10Mbps=20Mbps,而使用 10Mbps 的共享式 HUB 时,一个 HUB 的总流通量也不会超出 10Mbps。总之,交换机是一种基于 MAC 地址识别,能完成封装转发数据包功能的网络设备。交换机可以"学习"MAC 地址,并把其存放在内部地址表中,通过在数据帧的始发者和目标接收者之间建立临时的交换路径,使数据帧直接由源地址到达 目的地址。
人工交换
电信号交换的历史应当追溯到电话出现的初期。当电话被发明后,只需要一根足够长的导线,加上 末端的两台电话,就可以使相距很远的两个人进行语音交谈。
电话增多后,要使每个拥有电话的人都能相互通信,我们不可能每两台电话机之间有拉上一根线。 于是人们设立了电话局,每个电话用户都接一根线到电话局的一个大电路板上。当 A 希望和 B 通话时, 就请求电话局的接线员接通 B 的电话。接线员用一根导线,一头插在 A 接到电路板上的孔,另一头插到B 的孔,这就是"接续",相当于临时给 A 和 B 拉了一条电话线,这时双方就可以通话了。当通话完毕后,接线员将电线拆下,这就是"拆线"。整个过程就是"人工交换",它实际上就是一个"合上开关" 和"断开开关"的过程。因此,把"交换"译为"开关"从技术上讲更容易让人理解。
以太网交换机
随着计算机及其互联技术(也即通常所谓的"网络技术")的迅速发展,以太网成为了迄今为止普 及率最高的短距离二层计算机网络。而以太网的核心部件就是以太网交换机。
不论是人工交换还是程控交换,都是为了传输语音信号,是需要独占线路的"电路交换"。而以太 网是一种计算机网络,需要传输的是数据,因此采用的是"分组交换"。但无论采取哪种交换方式,交 换机为两点间提供"独享通路"的特性不会改变。就以太网设备而言,交换机和集线器的本质区别就在 于:当 A 发信息给 B 时,如果通过集线器,则接入集线器的所有网络节点都会收到这条信息(也就是以广播形式发送),只是网卡在硬件层面就会过滤掉不是发给本机的信息;而如果通过交换机,除非 A 通知交换机广播,否则发给 B 的信息 C 绝不会收到(获取交换机控制权限从而监听的情况除外)。
目前,以太网交换机厂商根据市场需求,推出了三层甚至四层交换机。但无论如何,其核心功能仍 是二层的以太网数据包交换,只是带有了一定的处理 IP 层甚至更高层数据包的能力。
光交换光交换是人们正在研制的下一代交换技术。目前所有的交换技术都是基于电信号的,即使是目前的 光纤交换机也是先将光信号转为电信号,经过交换处理后,再转回光信号发到另一根光纤。由于光电转 换速率较低,同时电路的处理速度存在物理学上的瓶颈,因此人们希望设计出一种无需经过光电转换的
"光交换机",其内部不是电路而是光路,逻辑原件不是开关电路而是开关光路。这样将大大提高交换 机的处理速率。
分类
交换机的传输模式有全双工,半双工,全双工/半双工自适应交换机的全双工是指交换机在发送数据的同时也能够接收数据,两者同步进行,这好像我们平时打电话一样,说话的同时也能够听到对方的声音。目前的交换机都支持全双工。全双工的好处在于迟延小, 速度快。
提到全双工,就不能不提与之密切对应的另一个概念,那就是"半双工",所谓半双工就是指一个时间段内只有一个动作发生,举个简单例子,一条窄窄的马路,同时只能有一辆车通过,当目前有两辆车对开,这种情况下就只能一辆先过,等到头儿后另一辆再开,这个例子就形象的说明了半双工的原理。 早期的对讲机、以及早期集线器等设备都是实行半双工的产品。随着技术的不断进步,半双工会逐渐退出历史舞台。
功能
交换机的主要功能包括物理编址、网络拓扑结构、错误校验、帧序列以及流控。目前交换机还具备 了一些新的功能,如对 VLAN(虚拟局域网)的支持、对链路汇聚的支持,甚至有的还具有防火墙的功能。
学习:以太网交换机了解每一端口相连设备的 MAC 地址,并将地址同相应的端口映射起来存放在交换机缓存中的 MAC 地址表中。
转发/过滤:当一个数据帧的目的地址在 MAC 地址表中有映射时,它被转发到连接目的节点的端口而不是所有端口(如该数据帧为广播/组播帧则转发至所有端口)。
消除回路:当交换机包括一个冗余回路时,以太网交换机通过生成树协议避免回路的产生,同时允 许存在后备路径。
交换机除了能够连接同种类型的网络之外,还可以在不同类型的网络(如以太网和快速以太网)之 间起到互连作用。如今许多交换机都能够提供支持快速以太网或 FDDI 等的高速连接端口,用于连接网络中的其它交换机或者为带宽占用量大的关键服务器提供附加带宽。
一般来说,交换机的每个端口都用来连接一个独立的网段,但是有时为了提供更快的接入速度,我 们可以把一些重要的网络计算机直接连接到交换机的端口上。这样,网络的关键服务器和重要用户就拥 有更快的接入速度,支持更大的信息流量。
交换机的基本功能:1. 像集线器一样,交换机提供了大量可供线缆连接的端口,这样可以采用星型拓扑布线。
2. 像中继器、集线器和网桥那样,当它转发帧时,交换机会重新产生一个不失真的方形电信号。
3. 像网桥那样,交换机在每个端口上都使用相同的转发或过滤逻辑。
4. 像网桥那样,交换机将局域网分为多个冲突域,每个冲突域都是有独立的宽带,因此大大提高
了局域网的带宽。
5. 除了具有网桥、集线器和中继器的功能以外,交换机还提供了更先进的功能,如虚拟局域网
(VLAN)和更高的性能。 交换机与路由器的区别
传统交换机从网桥发展而来,属于 OSI 第二层即数据链路层设备。它根据 MAC 地址寻址,通过站表选择路由,站表的建立和维护由交换机自动进行。路由器属于 OSI 第三层即网络层设备,它根据 IP 地址进行寻址,通过路由表路由协议产生。交换机最大的好处是快速,由于交换机只须识别帧中 MAC 地址, 直接根据 MAC 地址产生选择转发端口算法简单,便于 ASIC 实现,因此转发速度极高。但交换机的工作机制也带来一些问题。
1.回路:根据交换机地址学习和站表建立算法,交换机之间不允许存在回路。一旦存在回路,必须启动生成树算法,阻塞掉产生回路的端口。而路由器的路由协议没有这个问题,路由器之间可以有多 条通路来平衡负载,提高可靠性。
2.负载集中:交换机之间只能有一条通路,使得信息集中在一条通信链路上,不能进行动态分配, 以平衡负载。而路由器的路由协议算法可以避免这一点,OSPF 路由协议算法不但能产生多条路由,而且能为不同的网络应用选择各自不同的最佳路由。
3.广播控制:交换机只能缩小冲突域,而不能缩小广播域。整个交换式网络就是一个大的广播域, 广播报文散到整个交换式网络。而路由器可以隔离广播域,广播报文不能通过路由器继续进行广播。
4.子网划分:交换机只能识别 MAC 地址。MAC 地址是物理地址,而且采用平坦的地址结构,因此不能根据 MAC 地址来划分子网。而路由器识别 IP 地址,IP 地址由网络管理员分配,是逻辑地址且 IP 地址具有层次结构,被划分成网络号和主机号,可以非常方便地用于划分子网,路由器的主要功能就是 用于连接不同的网络。
5.保密问题:虽说交换机也可以根据帧的源 MAC 地址、目的 MAC 地址和其他帧中内容对帧实施过滤,但路由器根据报文的源 IP 地址、目的 IP 地址、TCP 端口地址等内容对报文实施过滤,更加直观方便。
4.6 PPP(Point-to-Point Protocol)点到点协议有人经常把PPP和P2P混淆,其实了解字面意思后就知道二者之间风马牛不相及,PPP是一种链路层 协议,P2P则只是一种通信模型。之前介绍的以太网、WLAN都是多点接入链路技术,以太网尽管实现了 点到点介质,但链路依然是多点接入的。
图 4-14 常见单链路 PPP
图 4-15 扩展的多链路 Multi-Link PPP
而PPP就是专门为点到点链路设计的协议,介质是点到点的,链路也是点到点的。如上图所示,PPP 的物理介质有可能不是连续的,但PPP链路建立之前要求先建立连续通信介质。这可能听起来有点危言耸听,怎么建立连续介质呢?我们忽略了人在网络中的重要性,网络是人设计的,当然我们有建立连续 介质的权利,比如电话,要求人拨电话号码,拨号就是一个建立连续介质的过程,可以说PPP链路和以太网很不一样的特点就是"按需接入",而以太网、WLAN都是"自由接入"特点,因此使用PPP协议的物理层通常是Modem、广域网专线这样的场景。PPP的链路层模型如下所示:
图4-16 PPP链路层次模型
· 媒介和物理层已经介绍了拨号(Dial-up)线路,该线路最明显的就是传统Modem拨号和它的升级版本ADSL Modem和3G拨号,以及虚拟拨号,既在以太网/WLAN上建立虚拟拨号链路,我们称为PPP over Ethernet,简称PPPoE;拨号线路的特点可以建立长距链路(如建立从南国广州到东北哈尔滨的链路),但是带宽小,而且不稳定,只能适合个人用户,如果是企业或者研究机 构,则要求带宽高一些,稳定的链路,这就是广域网中的串行线路,分同步、异步两种,目前 同步SDH线路应用广泛一些,有通常比较常见的带宽选项有2M、155M、622M、2.5G,当然带宽越高,要掏的银子也少不了;
· PPP工作在链路层,最底层的是链路控制协议,Link Control Protocol,作用是建立、配置、测试网络数据连接,也就是说在物理层在人的干预下建立连续介质后,介质两端的LCP就要开工了,协商双方的参数是不是相互兼容,如果各种必要参数OK,那么LCP宣告PPP链路已经建立好了,把工作移交给上一层;
· LCP的上一层是认证模块,这是一个由LCP协商出来的可选模块,共有2种认证方式:PAP
(Password Authentication Protocol密码认证协议)和CHAP(Challenge Authentication
Protocol挑战认证协议),这两种认证都采用用户名、密码认证,可以确认拨号者身份,两种协议的差别在于安全性,PAP在线路上传输用户名、密码的明文,CHAP则传送MD5计算后的摘要, 比较安全;认证一般用在个人使用拨号线路中,目的是确保受信拨号,认证完了也可以计费收钱,而串行线路是专线,也就是介质是无需拨号提前建好,专门给某两个终端使用,银子也是提前就付了的,使用专线的也基本上是大客户,认证没有必要;
· 认证通过或者免认证后就是NCP(Network Control Protocol网络控制协议)进行最后的收尾了,NCP是一个家族的统称,PPP为不同的网络层协议专门制定NCP,如网络层是IPv4,那么就叫IPCP,如果是IPv6,那么就是IPv6CP,如果是OSI,那就叫OSICP,但OSI协议自出生就被IPv4 牢牢扼杀住,能一睹其芳容的机会很少,除OSI之外还有一些被IPv4/IPv6干废的网络层协议有
DECnet、Appletalk等,它们都在PPP上有自己的NCP;NCP的作用是协商链路两侧终端的网络层地址信息、压缩之类的参数,NCP竣工后,网络层协议就可以在PPP链路上欢畅运行了。
· PPP的主要扩展包括Multi-Link PPP(多链路PPP)、PPP压缩(Compression)等技术。