计算机网络之局域网&以太网
局域网的拓扑结构
局域网最主要的特点是:网络为一个单位所拥有,且地理范围和站点数目均有限。
局域网具有广播功能,从一个站点可很方便地访问全网,局域网上的主机可共享连接在局域网上的各种硬件和软件资源。
局域网按照拓扑结构可分为总线结构、环型结构、星型结构、网状结构、树型结构以及混合型结构。
以太网
以太网最初是美国施乐公司研制的基于基带总线的局域网,以曾经在历史上表示传播电磁波的以太(Ether)来命名。
DIX Ethernet V2 是世界上第一个局域网产品(以太网)的规约,在此基础上,IEEE制定了了802.3 标准,DIX Ethernet V2 标准与IEEE 的802.3 标准只有很小的差别,因此可以将 802.3 局域网简称为“以太网”。
为了使数据链路层能更好地适应多种局域网标准,802 委员会就将局域网的数据链路层拆成两个子层:
逻辑链路控制 LLC (Logical Link Control)子层
媒体接入控制 MAC (Medium Access Control)子层。
与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关,不管采用何种协议的局域网对LLC 子层来说都是透明的
以太网在局域网市场中已取得了垄断地位,并且几乎成了局域网的代名词,由于因特网发展很快而TCP/IP体系中经常使用的局域网只剩下DIX Ethernet V2而不是IEEE 802.3 标准中的局域网,因此现在802委员会制定的逻辑链路控制子层LLC的作用已经消失了,很多厂商生产的适配器上仅装有MAC协议而没有LLC协议。
计算机与外界局域网的连接是通过适配器。适配器上装有处理器和存储器,适配器和局域网之间的通信是通过电缆或双绞线以串行传输方式进行的,而适配器和计算机之间的通信则是通过计算机主板上的I/O总线以并行传输方式进行的。因此,适配器的一个重要功能就是要进行数据串行传输和并行传输的转换。
适配器接受和发送各种帧时不使用计算机的CPU。当适配器收到正确的帧时,它就使用中断来通知该计算机并交付给协议栈中的网络层;当计算机要发送IP数据报时,就由协议栈把IP数据报向下交给适配器,组装成帧后发送到局域网。
需要注意,计算机的硬件地址就在适配器的ROM中,而计算机的IP地址则在计算机的存储器中。
CSMA/CD协议
为了通信的简便,以太网采取了以下两种措施:
第一,采用无连接的工作方式,即不必先建立连接就可以直接发送数据。因此,以太网提供的服务是不可靠的交付,而是尽最大努力的交付。
第二,以太网发送的数据都是用曼彻斯特编码的信号。
我们知道,总线上只要有一台计算机在发送数据,总线的传输资源就被占用,因此,在同一时间只能允许一台计算机发送信息,否则各计算机之间就会相互干扰,结果大家都无法正常发送数据。
以太网采用的协调方法是使用一种特殊的协议CSMA/CD,即载波监听多点接入/碰撞检测(CarrierSense Multiple Access with Collision Detection)。
“多点接入”就是说明这是总线型网络,许多计算机以多点接入的方式连接在一根总线上,协议的实质是“载波监听”和“碰撞检测”。
“载波监听”就是“发送前先监听”,即每一个站在发送数据前先要检测一下总线上是否有其他站在发送数据,如果有,则要等到信道空闲时再发送。
“碰撞检测”就是“边发送边监听”,即适配器边发送数据边检测信道上的信号电压的变化情况,以便判断自己在发送数据时其他站是否也在发送数据。一旦发生了碰撞,适配器就要立即停止发送。
显然,在使用CSMA/CD协议时,一个站不可能同时进行发送与接收,因此使用CSMA/CD协议的以太网不可能进行全双工通信而只能进行半双工通信。
MAC地址
在局域网中,硬件地址又称为物理地址,或MAC 地址。
IEEE 802标准为局域网规定了一种48位的全球地址,是指局域网上的每一台计算机中固化在适配器的ROM中的地址。
IEEE 的注册管理机构 RA 负责向厂家分配地址字段的前三个字节(即高位 24 位)。地址字段中的后三个字节(即低位 24 位)由厂家自行指派,称为扩展标识符,必须保证生产出的适配器没有重复地址。
适配器有过滤功能,适配器从网络上每收到一个MAC帧就先用硬件检查MAC帧中的目的地址,如果是发往本站的帧则收下,否则丢弃。发往本站的帧包括以下三种帧:
(1)单播帧,即收到的帧的MAC地址与本站的硬件地址相同。
(2)广播帧,即发送给本局域网上所有站点的帧。
(3)多播帧,即发送给本局域网上一部分站点的帧。
以太网最常用的是以太网 V2 格式的MAC帧,格式如下:
由五个字段组成。前两个字段为目的地址和源地址。第三个字段是类型字段,用来标识上一层使用的是什么协议,以便把收到的MAC帧的数据上交给上一层的这个协议。第四个字段是数据字段,最后一个是帧检验序列FCS(使用CRC检验)。
局域网的扩展
集线器
使用集线器(hub)可以在物理层扩展局域网
优点
使原来属于不同碰撞域的局域网上的计算机能够进行跨碰撞域的通信。
扩大了局域网覆盖的地理范围。
缺点
碰撞域增大了,但总的吞吐量并未提高。
如果不同的碰撞域使用不同的数据率,那么就不能用集线器将它们互连起来。
网桥
在数据链路层扩展局域网是使用网桥(network bridge)。
网桥工作在数据链路层,它根据 MAC 帧的目的地址对收到的帧进行转发。
网桥具有过滤帧的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的 MAC 地址,然后再确定将该帧转发到哪一个接口。
优点
过滤通信量。
扩大了物理范围。
提高了可靠性。
可互连不同物理层、不同 MAC 子层和不同速率(如10Mb/s 和 100 Mb/s 以太网)的局域网
缺点
存储转发增加了时延。
在MAC 子层并没有流量控制功能。
具有不同 MAC 子层的网段桥接在一起时时延更大。
网桥只适合于用户数不太多(不超过几百个)和通信量不太大的局域网,否则有时还会因传播过多的广播信息而产生网络拥塞。这就是所谓的广播风暴。
交换机
以太网交换机通常都有十几个接口。因此,以太网交换机实质上就是一个多接口的网桥,可见交换机工作在数据链路层。
对于普通 10 Mb/s 的共享式以太网,若共有 N个用户,则每个用户占有的平均带宽只有总带宽(10 Mb/s)的 N 分之一。
使用以太网交换机时,虽然在每个接口到主机的带宽还是 10 Mb/s,但由于一个用户在通信时是独占而不是和其他网络用户共享传输媒体的带宽,因此对于拥有 N 对接口的交换机的总容量为 N10 Mb/s。这正是交换机的最大优点。
利用以太网交换机可以很方便地实现虚拟局域网,虚拟局域网 VLAN 是由一些局域网网段构成的与物理位置无关的逻辑组。每一个 VLAN 的帧都有一个明确的标识符,指明发送这个帧的工作站是属于哪一个 VLAN。
虚拟局域网其实只是局域网给用户提供的一种服务,而并不是一种新型局域网。
计算机网络之局域网&以太网的更多相关文章
- 计算机网络 -- TCP/IP
画图标准 OSI七层模型 7.应用层 作用:为用户提供软件/接口/界面 interface 协议:OICQ.HTTP.HTTPS.BT/P2P 6.表示层 作用:用于对用户数据进行数据呈现.(数据格式 ...
- 前端学HTTP之网络基础
× 目录 [1]网络 [2]OSI [3]TCP/IP 前面的话 HTTP协议对于前端工程师是非常重要的.我们在浏览网站时,访问的每一个WEB页面都需要使用HTTP协议实现.如果不了解HTTP协议,就 ...
- 【转+整理+答案】python315+道面试题
提示 自己整理的答案,很局限,如有需要改进的地方,或者有更好的答案,欢迎提出! [合理利用 Ctrl+F 提高查找效率] 第一部分 Python基础篇(80题) 1.为什么学习Python? # 因为 ...
- 给广大码农分享福利:一个业界良心的github仓库,中文计算机资料
我今天查资料时无意发现的,https://github.com/CyC2018/CS-Notes 这个仓库包含了下列几个维度的计算机学习资料: 深受国内程序员喜爱,已经有超过3万多star了. 1. ...
- python面试题300道答案参考1
提示 自己整合的答案,虽有百家之所长,仍很局限,如有需要改进的地方,或者有更好的答案,欢迎提出! [合理利用 Ctrl+F 提高查找效率] 文章来源 https://www.cnblogs.co ...
- IEEE802.11数据帧在Linux上的抓取
IEEE802.11数据帧在Linux上的抓取终于得到了梦寐的<802.11无线网络权威指南>,虽然是复印版本,看起来也一样舒服,光看书是不行的,关键还是自己练习,这就需要搭建一个舒服的实 ...
- Java面试葵花宝典
面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题,而6. 只是选择其中的一 ...
- java面试题小全
面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题,而6. 只是选择其中的 ...
- HBA简介及原理
HBA,即主机总线适配器英文“Host Bus Adapter”缩写.是一个使计算机在服务器和存储装置间提供输入/输出(I/O)处理和物理连接的电路板和/或集成电路适配器. 简介 主机总线适配器(Ho ...
随机推荐
- thinkjs升级到3.0后的图片上传
似乎当thinkjs升级到3.0后,才接手了一个项目.只是在实际运用过程中,还是发现了与2.2的些许差别——今天先分享关于图片上传的一些问题. 1.上传文件,我们选择了jQuery的插件:http:/ ...
- VirtualBox 局域网独立主机设置
网络地址转换(NAT)网卡用于分配虚拟机内网地址 桥接网卡用于分配母机内网地址 母机设置-网卡指定IP地址 常见坑有两个 坑1:记得把虚拟机防火墙关闭 坑2:虚拟机不可以ping主机,但母机可以pin ...
- jQuery系列 第六章 jQuery框架事件处理
第六章 jQuery框架事件处理 JavaScript以事件驱动来实现页面的交互,其核心是以消息为基础,以事件来驱动.虽然利用传统的JavaScript事件处理方式也能够完成页面交互,但jQuery框 ...
- 阿里移动云专场专题.md
小激动 一年一度的阿里云栖大会是我们开发者的盛会,带着着激动的心情参加了这次开发者盛会,二话不说进入会场就被震感到了,先来张图聊表敬意. 主会场马云爸爸还是很有范的,将未来定义为无法定义,在这里宣布成 ...
- JAVA截取字符串的几种方式
在java中提供了很多字符串截取的方式.下面就来看看大致有几种. 1.split()+正则表达式来进行截取. 将正则传入split().返回的是一个字符串数组类型.不过通过这种方式截取会有很大的性能损 ...
- [LeetCode] Count Binary Substrings 统计二进制子字符串
Give a string s, count the number of non-empty (contiguous) substrings that have the same number of ...
- [LeetCode] Task Scheduler 任务行程表
Given a char array representing tasks CPU need to do. It contains capital letters A to Z where diffe ...
- Java:扩展后的赋值运算符(带强转功能)
扩展后的赋值运算符,即 +=,-=,*=,/=,%=,&=,|=,^=,<<=,>>=,>>>=. 代码实例一: byte a=5; a=a+5; 此 ...
- [HNOI 2014]米特运输
Description 米特是D星球上一种非常神秘的物质,蕴含着巨大的能量.在以米特为主要能源的D星上,这种米特能源的运输和储 存一直是一个大问题.D星上有N个城市,我们将其顺序编号为1到N,1号城市 ...
- [POI2009]KAM-Pebbles
题目描述 Johny and Margaret are playing "pebbles". Initially there is a certain number of pebb ...