4 局域网技术(一):局域网概述

1 局域网概述

局域网(Local Area Network, LAN)主要处理的是网络中各个节点(比如电脑、打印机等设备)之间的数据传输,这个过程中只涉及到网络的物理层和数据链路层,而不涉及更高层次的网络层。
在局域网的工作方式中,数据链路层的功能进一步被划分为两个子层:媒体访问控制(Media Access Control, MAC)子层和逻辑链路控制(Logical Link Control, LLC)子层。

  • MAC子层负责根据我们使用的网络介质(比如电缆、无线信号等)来管理数据的发送和接收
  • LLC子层则与传输介质无关,它的任务是确保数据能够在不同的网络设备之间正确地传输。

局域网中更高级的功能,比如网络管理和资源共享,是由网络操作系统来完成的。
在局域网的标准化工作中,有多个国际和地区的组织参与,包括国际标准化组织(ISO)、美国电气和电子工程师协会的802委员会(IEEE 802)、欧洲计算机制造商协会(ECMA)、美国国家标准局(NBS)、美国电子工业协会(EIA)以及美国国家标准协会(ANSI)等。这些组织共同确保了局域网技术的一致性和互操作性。

1.1 局域网的特点

  • 局域网具有以下特点:
    • 地理分布范围较小,一般是几百米或几千米,覆盖范围可能是一幢楼,一个企业或者一个校园。
    • 数据传输速率高,带宽一般不小于10Mbps,最快可达到1Gbps或10Gbps。通常情况下到桌面为100Mbps。而且随着局域网向更高速率发展,可交换各类数字和非数字(如语音、图像和视频等)信息。
    • 误码率低,一般在10-11~10-8。低误码率的原因是局域网普遍使用基带传输技术,这种技术不涉及信号的频率变换,直接在传输介质上发送数据。同时,局域网中的通信距离较短,数据在网络中经过的设备数量也相对较少,这些都有助于减少在传输过程中可能出现的错误,从而保持了较低的误码率。
    • 局域网的归属较为单一,通常是由一个单位或一个公司内部管理,所以局域网的设计、安装、使用和操作等不受公共网络的约束,并且连接较为规范,遵循严格的LAN标准。
    • 一般采用分布式控制和广播式通信。
    • 协议简单、结构灵活、建网成本低、周期短、便于管理和扩充。
  • 构建局域网需要考虑的问题:构建局域网时一般需要考虑如下问题
    • 局域网所采用的拓扑结构
    • 选择的传输介质
    • 介质访问控制方法
    • 通信协议
    • 布线技术
  • 局域网的拓扑结构
    • 首先,在选择网络拓扑结构时,首先需要考虑的是介质访问控制(MAC)方法,因为不同的网络拓扑结构往往对应不同的介质访问控制协议。例如,以太网(Ethernet)通常采用CSMA/CD(载波侦听多路访问/冲突检测)协议,而令牌环(Token Ring)网络则使用令牌传递机制。
    • 其次,要考虑性能、可靠性、成本、扩充灵活性、实现的难易程度及传输介质的长度等因素
    • 局域网常采用总线型、环型、星型、树型拓扑和无线等结构,目前使用最多的是树型拓扑结构的以太网。这种结构通过分层的方式来组织网络,使得网络管理和故障排查更为简便。

1.2 局域网的介质访问控制方法

介质访问控制方法(MAC)是网络中用于确保数据在多个节点之间安全、可靠传输的一系列通信规则,也就是协议(Protocol)。这些规则定义了节点如何访问和使用共享的传输介质,以避免数据冲突和确保有效通信。

在早期的局域网(LAN)中,尤其是使用同轴电缆的网络,一个传输介质通常会连接多个节点。在这种情况下,需要一种仲裁机制来控制这些节点如何轮流使用传输介质。这就是MAC子层协议发挥作用的地方,它是数据链路层的一部分,负责介质访问的控制。
最常用的介质访问控制方法包括:

  • 1.CSMA/CD(载波侦听多路访问/冲突检测):这是IEEE 802.3标准定义的一种“争用型”访问方式。在CSMA/CD中,节点在发送数据之前会监听传输介质是否空闲。如果介质空闲,节点就会发送数据;如果检测到冲突(即两个或多个节点同时发送数据),它们会停止发送,等待随机时间后再次尝试。CSMA/CD是以太网(Ethernet)的核心技术,广泛应用于星型拓扑的网络中。
  • 2.令牌(Token)技术:这是IEEE 802.5标准定义的一种“轮询型”访问方式。在令牌协议中,网络中的节点需要通过一个特殊的数据包——令牌,才能获得发送数据的权限。令牌在网络中的节点间按顺序传递,每个节点在获得令牌后才能发送数据。这种方法确保了网络中始终只有一个节点在发送数据,从而避免了冲突。令牌技术主要用于IBM的令牌环网(Token Ring)和光纤分布式数据接口(FDDI)类型的网络。

CSMA/CD适用于简单、成本较低的网络环境,而令牌技术则适用于需要更高可靠性和有序访问的网络环境。随着技术的发展,以太网已经成为最流行的局域网技术,而令牌环网和FDDI网络的使用已经相对减少。

1、具有冲突检测的载波侦听多路访问(CSMA/CD)

IEEE 802.3标准是基于1972年美国Xerox(施乐)公司研制的以太网而制定的
以太网的介质访问控制方式:具有冲突检测的载波侦听多路访问CSMA/CD(Carrier Sense Multiple Access/Collision Detection),它采用一种随机访问和竞争机制(“争用型”),多用于总线型拓扑结构网络。

以太网中数据传输过程:

  • 1.站点以帧的形式发送数据,帧的头部含有源节点和目标节点的地址。当一个节点需要发送数据时,它会构造一个帧,并将这个帧放置在共享的通信信道上。这个帧通过广播的方式在信道上传输,这意味着连接到该信道上的所有设备都能够检测到这个帧。
  • 2.在传输过程中,每个节点都会持续监听信道的状态,这是CSMA/CD协议的一部分。当一个节点想要发送数据时,它会首先检查信道是否空闲。如果信道空闲,节点就会发送其数据帧。如果两个或更多的节点几乎同时开始发送数据,可能会发生冲突。在这种情况下,所有冲突的节点都会停止发送数据,并在随机的时间间隔后重新尝试发送。
  • 3.当一个节点(某个站点)检测到帧中的目的地址与自己的地址匹配时,它会接收这个帧,并根据规定的链路层协议处理帧中的数据。处理完毕后,接收节点会向发送节点返回一个响应,以确认数据已经成功接收。这种机制确保了数据的可靠传输,并允许发送节点知道其数据是否被正确接收。
对几个概念进行解释
  • 载波侦听:站点发送信号前,首先监听传输介质是否空闲,判断是否已经有其他数据传输。如果空闲,站点可发送信息;如果忙,则继续监听,一旦发现空闲,便立即发送。举个例子:你和邻居们共用一条电话线,当你们中的任何一个人想要打电话时,你们都会先听一下电话线上是否有人正在通话。如果线上没有声音,说明没有人在使用电话线,这时你就可以拿起电话拨打你想要的号码。但如果听到有别人正在通话,你就会知道电话线正在被使用,所以你会选择等待,直到通话结束,电话线空闲下来后,再进行你的通话。
  • 多路访问:就是支持三个或者三个以上的设备接入,它允许多个设备在同一信道发送信号。
  • 冲突:是指两个或更多设备同时从一条共享的传输介质发送数据,造成不同信号的叠加互相破坏而变成无意义的噪声。
  • 冲突域:是指在网络中,多个设备共享同一通信介质时,数据分组可能会发生碰撞的区域。在这个区域内,任何发送到介质上的数据都可能与其他设备发送的数据发生冲突,导致数据损坏或丢失。在共享介质的环境中,如使用集线器(Hub)连接的以太网,所有连接到该介质的设备都处于同一个冲突域内。这意味着,如果两个或更多的设备同时尝试发送数据,它们的数据包可能会在介质上相遇并发生冲突。一旦发生冲突,所有涉及的设备都必须停止发送数据,并等待随机的时间间隔后再次尝试发送。
  • 集线器(Hub)是一个简单的网络设备,它在物理层工作,仅仅起到了将多个网络设备连接到同一介质的作用,但并不具备管理或控制数据流的能力。
  • 冲突检测:当发生了一个冲突时,在以太网上的其他设备可以发现它并等待它结束。冲突发生时正在传输的设备会调用一个算法来回退一段时间,然后重传一次数据。
CSMA/CD的说明

CSMA/CD(载波侦听多路访问/冲突检测)是一种用于管理多个网络设备在同一通信介质上发送数据的协议。这种协议特别适用于传统的以太网环境,其中所有的设备都直接连接到同一条物理信道上,形成了一个“多路访问”(Multiple Access)的环境。

CSMA/CD工作过程:当一个设备(站点)需要发送数据时,它首先会执行“载波侦听”(Carrier Sensing),也就是检测信道上是否有其他设备正在发送数据。这是通过监测信道上的电压值来实现的。如果信道空闲(没有电压值),设备就会开始发送数据;如果信道忙碌(有电压值),设备就会等待,直到信道变为空闲状态后再尝试发送

需要注意的是,“载波侦听”并不能保证完全避免冲突。这又是为什么呢?

这是由于网络中的信号传播需要时间,可能会出现两个或多个设备几乎同时开始发送数据的情况。例如,如果一个设备(甲站点)开始发送数据,而另一个距离较远的设备(乙站点)由于信号传播延迟尚未检测到甲站点的信号,乙站点可能会错误地认为信道是空闲的,并开始发送自己的数据,从而导致冲突。还有一种情况是,当线路没有任何站点发送数据,两台(或多台)计算机经检测传输介质空闲,如果同时开始发送数据也会发生碰撞。
在这里插入图片描述

为了解决这个问题,CSMA/CD采用边发送边侦听(冲突检测)的技术

  • 主要包含两方面的内容:
    • 一是载波侦听多路访问(CSMA)
    • 二是冲突检测(CD)
  • 工作原理:
    • 先听后发:站点发送信号前,首先侦听传输介质是否空闲。如果空闲,站点可发送信息,如果忙,则继续侦听,一旦发现线路空闲,便立即发送。
    • 边听边发:在发送过程中会继续侦听
    • 冲突停止:如果在发送过程中发生冲突,则立即停止发送信号,转而发送阻塞信号,通知网段上所有站点出现了冲突。
    • 随机延迟后重发:出现冲突后,会退避一段时间然后重新尝试发送
  • 特点:
    • 采用”争用型”介质控制方式,各节点地位平等
    • 优点:
      • 结构简单,易于实现
      • 价格低廉
      • 低负荷时,网络有较高的效率
    • 缺点:
      • 无法设置介质访问优先权
      • 对站点发送信息不提供任何时间上的保证
      • 在负荷较重情况下,竞争的站点过多,冲突也增加,传输延迟剧增,网络性能也会急剧下降

“载波侦听”并不能保证完全避免冲突,CSMA/CD 是如何维持网络稳定性的呢?

在使用CSMA/CD(介质控制方式的网络中,所有直接连接到同一通信介质(如以太网总线)的计算机构成了一个“冲突域”。在这个冲突域内,如果两个或多个站点同时尝试发送数据,他们的数据包可能会在介质上相遇并发生冲突。

为了理解冲突检测的时间,我们需要考虑网络中的传播时延,即信号从网络一端传播到另一端所需的时间。在基带以太网中,一个冲突发生并被检测到的时间是最大传播时延的两倍。这是因为:

  • 1.当A站点开始发送数据时,数据包沿着总线传播。
  • 2.经过最大传播时延t,数据包接近到达B站点。
  • 3.如果此时B站点也开始发送数据,两个数据包会在介质上相遇并发生冲突。
  • 4.B站点可以立即检测到这个冲突,因为它就在冲突发生的地方。
  • 5.然而,A站点需要等待数据包返回(这需要另一个最大传播时延t),才能检测到冲突。

因此,在最坏的情况下,A站点检测到冲突的时间是两个最大传播时延的总和(2t)。
在这里插入图片描述

利用这个原理可以确定以太网络的最大直径。由于CSMA/CD协议需要在冲突发生后能够及时检测到冲突并采取措施,所以网络的物理长度不能超过一定限度。这个限度是由传播时延和帧长度决定的。如果网络直径过大,那么冲突检测的时间将会过长,导致网络效率降低。因此,以太网的标准规定了帧的最小和最大长度,以确保即使在最坏情况下,冲突也能在合理的时间内被检测到,从而维持网络的稳定性和效率。

2、令牌(Token)技术

令牌技术采用的是轮流访问的方式,尽可能的确保多个设备能够公平、有序地共享通信介质。它特别适用于环型拓扑结构的网络,如IBM的令牌环网络。这种技术的工作原理可以通过以下步骤来理解:

  • 1.令牌的循环:在网络中,存在一个特殊的短帧,称为“令牌”。这个令牌在环型网络的节点之间按顺序单向传递,类似于“击鼓传花”游戏中的花。当没有节点需要发送数据时,令牌就会持续在环中循环。
  • 2.等待令牌:当某个节点需要发送数据时,它必须等待令牌到达自己的节点。只有当节点捕获到令牌后,它才有权开始发送数据。
  • 3.获取并标记令牌:一旦节点捕获到令牌,它会修改令牌中的一个特殊字段,将其标记为“已使用”。这个标记同时也是告诉网络中的其他节点,当前有一个节点正在使用通信介质。
  • 4.发送数据:节点将标记为已使用的令牌作为数据帧的头部,并将数据帧发送到环上。此时,环上不再有可用的令牌,其他想要发送数据的节点必须等待下一个空闲令牌。
  • 5.数据帧的传输和处理:数据帧沿着环循环,每个节点都会检测帧中的目的地址。如果地址与自己的地址相符,节点就会复制该帧并处理数据。
  • 6.数据帧的删除和新令牌的生成:数据帧在环上绕行一周后,到达发送节点。发送节点会从环上删除该数据帧,并生成一个新的令牌,继续传递给下一个节点,从而允许其他节点在获得令牌后发送数据。

通过这种轮流访问的方式,令牌技术确保了网络中的每个节点都有机会发送数据,避免了数据冲突,并提供了一种公平的介质访问控制机制。这种方法在需要高可靠性和有序通信的网络环境中非常有用。

令牌技术既可以用在环型拓扑结构(令牌环),也可以用于总线拓扑结构(令牌总线)。

  • 在环型拓扑结构中,逻辑环结构和物理环结构相同,令牌传递的次序和站点连接的物理次序也一致
  • 在总线型拓扑结构,逻辑环次序则不一定和线路上的站点连接次序相对应。

令牌访问介质方式的优点:

  • (1)不存在竞争,因此不会出现冲突,常用于高负荷通信量较大的网络。
  • (2)令牌绕环一周的时间固定,实时性好,适用于控制性或实时性要求较高的场合。
  • (3)令牌单向流动,因此可使用带宽高的光纤作为传输介质。
  • (4)可以设置优先级,适用于集中管理。
  • (5)负荷较高时,有较好的响应方式。

令牌访问介质方式,尽管在网络通信中提供了一种有序和可靠的数据传输机制,但它也存在一些缺点:

  • 1.管理机制较为复杂:令牌访问机制需要网络中的每个节点都遵循严格的规则来传递和使用令牌。这种机制的管理相对复杂,因为它涉及到令牌的生成、传递、检测和回收等多个环节。
  • 2.错误检测和恢复:为了防止令牌在网络中的损坏、丢失或出现多个令牌等错误情况,网络必须具备错误检测和恢复的能力。这可能需要额外的协议和机制来确保网络的稳定性和数据的完整性。
  • 3.监视站点的需求:在令牌环网络中,通常需要有一个或多个节点被指定为监视站点(Monitor)。这些节点负责检测令牌的状态,确保令牌按预期的方式在网络中传递。如果发现令牌丢失或重复,监视站点需要采取措施来恢复令牌的正常传递。

1.3 网络适配器

网络适配器(Network Adapters),又称网络接口卡NIC(Network Interface Card),简称为网卡。

网卡的作用是实现介质访问控制协议,为逻辑链路控制层提供服务,它是组建局域网的主要器件。

1、网络适配器的功能

网卡是计算机和局域网传输介质之间的物理接口,主要作用是在OSI参考模型的第一层(物理层)和第二层(数据链路层)完成数据的发送和接收工作。
网卡的功能:

  • 基本功能是:
    • 在物理层的主要功能:
      • 信号转换:网卡将计算机内部并行传输的数据转换为串行信号,以便在传输介质(如双绞线、光纤等)上进行传输。同样地,接收端的网卡会将从传输介质上接收到的串行信号转换回并行数据,供计算机处理。
      • 信号编码:网卡对数据进行编码,使用不同的调制技术(如非归零编码、曼彻斯特编码等)来优化信号的传输效率和可靠性。
      • 比特同步:网卡负责同步发送和接收的比特流,确保数据传输的准确性。
    • 在数据链路层的主要功能:
      • 帧的装配与拆装:网卡在发送数据时,会将数据封装成帧(Frame),并在帧中添加必要的控制信息,如源MAC地址和目的MAC地址。在接收端,网卡会拆装帧,提取出数据供计算机处理。
      • 介质访问控制:网卡实现介质访问控制(MAC)协议,如CSMA/CD或令牌环协议,以协调多个设备对共享传输介质的访问,避免数据冲突。
      • 数据缓冲:网卡通常具有缓冲区,用于临时存储待发送或刚接收的数据。
      • 错误检测与纠正:网卡在发送和接收数据时,会进行错误检测(如循环冗余校验CRC)和必要的纠正措施,以确保数据的完整性。
      • 流量控制:网卡通过流量控制机制(如暂停和恢复信号)来匹配发送方和接收方的数据传输速率,防止数据丢失或缓冲区溢出。
  • 接收方和发送方的网卡功能:
    • 发送端的网卡:负责将发送的数据转变成能在传输介质上传输的信号发送出去
    • 接收端的网卡:接收信号并把信号转换成能在计算机内处理的数据,传输信号一般是串行的电信号或光信号

2、网卡的总类

网卡可以分为不同的类型:

  • (1)按传输速率分为:10Mbps、100Mbps、10/100Mbps自适应和1000Mbps网卡。
  • (2)按传输数据信号的位数分为:8位、16位、32位和64位网卡。
  • (3)按网卡与传输介质的接口类型分为:与粗缆连接的AUI接口网卡、与细同轴电缆连接的BNC接口网卡、与双绞线连接的RJ-45接口网卡、USB接口、与光纤连接的ST、SC插头网卡和无线网卡等。
  • (4)按总线插槽接口可分为:ISA、EISA、VESA、PCI和PCMCIA网卡
    • ISA、EISA和VESA网卡使用8位或16位总线插槽,速度极低,目前已很少使用。
    • PCI网卡是目前主流产品,它以32 位总线传输数据,在服务器上一般使用64 位或增加型(PCI-X)网卡
    • PCMCIA主要用于笔记本计算机上,有16位和32位等总线类型。
    • 无线网卡和通用串行总线USB(Universal Serial Bus)接口网卡。USB接口网卡和其他USB设备一样,具有热插拔、不占用总线插槽和安装使用方便等优点。
  • (5)按数据传输方向可分为:半双工、全双工网卡。

3、Ethernet网卡

Ethernet网卡遵循IEEE 802.3标准,用于实现局域网(LAN)中的通信。在Ethernet网卡中,CSMA/CD(载波侦听多路访问/冲突检测)功能已经被集成到网卡的硬件控制器中。
每个Ethernet网卡都有自己的控制器,通过控制器来实现以下功能:

  • 发送和接收数据时机的控制
  • 执行IEEE 802.3 规程,包括:
    • 构成帧
    • 计算帧检验序列
    • 产生/识别CRC码(差错控制)
    • 流量控制
    • 执行曼彻斯特编码译码转换
    • 。。。

4、NIC地址

每个网卡都有一个48 位的全局地址,网卡地址也称为物理地址、NIC地址或MAC地址。
它由两部分组成:

  • 第一部分是IEEE分配的高24位的厂商地址
  • 第二部分是由生产厂商自己编号的低24位地址

每个网卡的物理地址在全球都是唯一的。

  • 10
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
设计和实现一个基于 socket 通信的局域网聊天系统可以分为以下几个步骤: 1. 确定通信协议:选择合适的通信协议,例如 TCP 或 UDP,以及选择合适的端口号。 2. 创建服务器端:创建一个服务器端应用程序,用于接受客户端的连接请求,并处理消息的转发。 3. 创建客户端:创建一个或多个客户端应用程序,用于与服务器端建立连接并进行消息交互。 4. 建立连接:客户端应用程序与服务器端应用程序之间通过 socket 建立连接。客户端通过指定服务器的 IP 地址和端口号来建立连接。 5. 消息传递:客户端和服务器端通过 socket 进行消息传递。可以定义一套自己的消息格式,例如使用 JSON 或者自定义的二进制格式。 6. 处理消息:服务器端接收客户端发送的消息后,可以根据需要进行处理,例如转发给其他客户端或者保存到数据库中。客户端接收到服务器发送的消息后,可以进行展示或者回复操作。 7. 错误处理和异常处理:在实现过程中要考虑错误和异常的处理,例如网络连接中断、消息格式错误等情况。 8. 用户界面设计:可以根据需求设计用户界面,提供更好的用户体验。 总结起来,局域网聊天系统的设计和实现主要涉及到服务器端的创建、客户端的创建、连接的建立、消息的传递和处理、错误和异常的处理以及用户界面的设计。以上仅为一个概述,具体的实现细节还需要根据实际需求来进行调整和完善。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值