LANs(一)

简介: LANs

addressing, ARP

MAC 地址和ARP

32bitIP地址:


网络层地址

前n-1跳:用于使数据报到达目的IP子网

最后一跳:到达子网中的目标节点

LAN(MAC/物理/以太网)地址:


用于使帧从一个网卡传递到与其物理连接的另一个网卡 (在同一个物理网络中)

48bit MAC地址固化在适配器的ROM,有时也可以通 过软件设定

理论上全球任何2个网卡的MAC地址都不相同

e.g.: 1A-2F-BB-76-09-AD

网络地址和mac地址分离

IP地址和MAC地址的作用不同

a) IP地址是分层的


一个子网所有站点网络号一致,路由聚集,减少路由表

需要一个网络中的站点地址网络号一致,如果捆绑 需要定制网卡非常麻烦

希望网络层地址是配置的;IP地址完成网络到网络的 交付

b) mac地址是一个平面的


网卡在生产时不知道被用于哪个网络,因此给网卡一个 唯一的标示,用于区分一个网络内部不同的网卡即可

可以完成一个物理网络内部的节点到节点的数据交付

分离好处

a) 网卡坏了,ip不变,可以捆绑到另外一个网卡的 mac上


b) 物理网络还可以除IP之外支持其他网络层协议, 链路协议为任意 上层网络协议, 如IPX等


捆绑的问题

a) 如果仅仅使用IP地址,不用mac地址,那么它仅支 持IP协议


b) 每次上电都要重新写入网卡 IP地址;


c) 另外一个选择就是不使用任何地址;不用MAC地 址,则每到来一个帧都要上传到IP层次,由它判 断是不是需要接受,干扰一次


局域网上每个适配器都有一个唯一的LAN地址


08b6e6e61445dee9fdb49273aad4989e_1692786995829-df7f83c4-86dd-4fb8-9d24-cbafeef76558.png


MAC地址由IEEE管理和分配


制造商购入MAC地址空间(保证唯一性)


类比:


(a)MAC地址:社会安全号

(b)IP地址:通讯地址

MAC平面地址 ➜ 支持移动


可以将网卡到接到其它网络

IP地址有层次-不能移动


依赖于节点连接的IP子网,与子网的网络号相同( 有与其相连的子网相同的网络前缀)

ARP: Address Resolution Protocol

问题:已知B的IP地址,如何确定B的 ?


答: 就是通过ARP协议 完成ip地址到mac地址的转换


91ebd3b80bc7cb5dc5848aa925042b50_1692787495082-4eaaa5ca-d36c-43eb-9227-2b7e26987576.png


在LAN上的每个IP节 点都有一个ARP表


ARP表:包括一些 LAN节点IP/MAC地 址的映射


< IP address; MAC address; TTL>


TTL时间是指地址映射失效 的时间

典型是20min

ARP协议:在同一个LAN (网络)

A要发送帧给B(B的IP地址 已知), 但B的MAC地址不 在A的ARP表中

A广播包含B的IP地址的 ARP查询包

Dest MAC address = FF-FF-FF-FF-FF-FF

LAN上的所有节点都会收到 该查询包

B接收到ARP包,回复A自 己的MAC地址

帧发送给A

用A的MAC地址(单播)

A在自己的ARP表中,缓存 IP-to-MAC地址映射关系 ,直到信息超时

ARP是即插即用的


节点自己创建ARP的表项

无需网络管理员的干预

编址:路由到其他LAN

Walkthrough :发送数据报:由A通过R到B, 假设A知道B的IP地址


在R上有两个ARP表,分别对应两个LAN

在源主机的路由表中,发现到目标主机的下一跳时111.111.111.110

在源主机的ARP表中,发现其MAC地址是E6-E9-00-17-BB-4B, etc

892636ec0a4886984108db5804344dd8_1692787816769-8c92916b-a2b9-4b9a-b4b9-3a08778ff3f9.png


蓝色为帧,绿色为帧的数据


A创建数据报,源IP地址:A;目标IP地址:B


A创建一个链路层的帧,目标MAC地址是R,该帧包含A 到B的IP数据报


帧从A发送到R


帧被R接收到,从中提取出IP分组,交给上层IP协议实 体


IP dest: 222.222.222.222, R转发数据报,数据报源IP地址为A,目标IP地址为B


R创建一个链路层的帧,目标MAC地址为B,帧中包含 A 到B的IP 数据报


5594af028a05161026ce8b3498ee04fc_1692787887023-9b5da230-b4a0-417b-a6e7-0477f1b3bdf4.png


Ethernet

以太网

以太网网卡模型:


66f254f8989be1c0649d831800223313_1692788137436-4c96af53-6caf-45f8-9c25-8c74d0cc0911.png


目前最主流的LAN技术:98%占有率

廉价:30元RMB 100Mbps!

最早广泛应用的LAN技术

比令牌网和ATM网络简单、廉价

带宽不断提升:10M, 100M, 1G, 10G

以太网:物理拓扑

总线:在上个世纪90年代中期很流行


所有节点在一个碰撞域内,一次只允许一个节点发送

可靠性差,如果介质破损,截面形成信号的反射,发送节点误认为 是冲突,总是冲突

星型:目前最主流


连接选择: hub 或者 switch

现在一般是交换机在中心

每个节点以及相连的交换机端口使用(独立的)以太网协议(不会 和其他节点的发送产生碰撞)

b21ac03bf20f182c476d9cce8be74cde_1692788744749-4bace0bb-e918-4ab0-b3c8-6108476f45c7.png


以太帧结构

发送方适配器在以太网帧中封装IP数据报, 或其他网络层协议数据单元


8e0a4f2a4827e4ae3bd8471ab634c03f_1692788765322-6055dc22-81bb-4dc2-955f-d5fcc693961c.png


前导码:


7B 10101010 + 1B 10101011


用来同步接收方和发送方的时钟速率


使得接收方将自己的时钟调到发送端的时钟

从而可以按照发送端的时钟来接收所发送的帧

地址:6字节源MAC地址,目标MAC地址


如:帧目标地址=本站MAC地址,或是广播地址, 接收,递交帧中的数据到网络层

否则,适配器忽略该帧

类型:指出高层协(大多情况下是IP,但也支 持其它网络层协议Novell IPX和AppleTalk)


CRC:在接收方校验


如果没有通过校验,丢弃错误帧

以太网:无连接、不可靠的服务

无连接:帧传输前,发送方和接收方之间****没有握手


不可靠:接收方适配器不发送ACKs或NAKs给发送 方


递交给网络层的数据报流可能有gap

如上层使用像传输层TCP协议这样的rdt,gap会被补上(源主机,TCP实体)

否则,应用层就会看到gap

以太网的MAC协议:采用二进制退避的CSMA/CD介质访问控制形式


很多不同的以太网标准


相同的MAC协议(介质访问控制)和帧结构

不同的速率:2 Mbps、10 Mbps 、100 Mbps 、 1Gbps 、 10G bps

不同的物理层标准

不同的物理层媒介:光纤,同轴电缆和双绞线

4069b82a842587880f28a5a5db6c2774_1692789152008-06b8551c-661b-43e4-b8bc-fb25d0ad7ca1.png


以太网使用CSMA/CD

没有时隙

NIC如果侦听到其它NIC在 发送就不发送:载波侦听 carrier sense

发送时,适配器当侦听到其 它适配器在发送就放弃对当 前帧的发送,冲突检测 collision detection

冲突后尝试重传,重传 前适配器等待一个随机 时间,随机访问random access

以太网CSMA/CD算法

适配器获取数据报,创建帧

发送前:侦听信道CS

1)闲:开始传送帧

2)忙:一直等到闲再发送

发送过程中,冲突检测CD

1)没有冲突:成功

2)检测到冲突:放弃,之后尝 试重发

发送方适配器检测到冲突, 除放弃外,还发送一个Jam 信号,所有听到冲突的适配 器也是如此 强化冲突:让所有站点都知 道冲突

5.如果放弃,适配器进入指数 退避状态 在第m次失败后,适配器随 机选择一个{0,1,2, , 2^m-1}中K,等待K*512位时 ,然后转到步骤2

exponential backoff 二进制指数退避算法


指数退避 目标:适配器试图适应当前 负载,在一个变化的碰撞窗 口中随机选择时间点尝试重 发


高负载:重传窗口时间大, 减少冲突,但等待时间长

低负载:使得各站点等待时 间少,但冲突概率大

CSMA/CD的效率

6df7fe98eade0c2dca5b0d6da130c029_1692789719132-fa4a569a-d61a-430d-94dd-ad3f4d3c2c94.png


10BaseT and 100BaseT

cad87b4d9f45def0fb896e170aa476ac_1692789848707-d1d6e9d1-9c47-4325-bc10-3c6b0361c8f9.png


100 Mbps 速率 也被称之为 “fast ethernet”

T代表双绞线

节点连接到HUB上: “star topology”物理上星型

逻辑上总线型,盒中总线

节点和HUB间的最大距离是100 m

Hubs 本质上是物理层的中继器:



目录
相关文章
|
6月前
|
人工智能 并行计算 PyTorch
【PyTorch&TensorBoard实战】GPU与CPU的计算速度对比(附代码)
【PyTorch&TensorBoard实战】GPU与CPU的计算速度对比(附代码)
351 0
|
6月前
|
人工智能 数据可视化 算法
计算机设计大赛信息可视化设计的获奖经验剖析解读—助力4C大赛【全网最全万字攻略-获奖必读】
计算机设计大赛信息可视化设计的获奖经验剖析解读—助力4C大赛【全网最全万字攻略-获奖必读】
383 2
|
存储 人工智能 编译器
C/C++期末考试复习---知识点+习题
C/C++期末考试复习---知识点+习题
1692 2
|
消息中间件 Java 应用服务中间件
Github上365道Java高频面试复习题,助你吊打面试官
试问你进入了自己心仪的企业了吗,拿到自己满意的薪资待遇了吗? 无论如何在这两个月的跳槽黄金期 筹备面试是最重要的了,你有规划好自己的复习方向了吗?
|
缓存 Java 应用服务中间件
【高并发优化手段】基于Springboot项目(二)
【高并发优化手段】基于Springboot项目
472 0
|
6月前
|
网络协议
TCP和UDP可以绑定同样的端口吗?
TCP和UDP可以绑定同样的端口吗?
|
6月前
|
存储 缓存 网络协议
计算机网络 第三章 应用层(习题)
计算机网络 第三章 应用层(习题)
|
6月前
|
网络协议 算法 网络性能优化
TCP 重传、滑动窗口、流量控制、拥塞控制
TCP 重传、滑动窗口、流量控制、拥塞控制
|
6月前
|
安全 搜索推荐 C++
指标体系构建-01-什么是数据指标
指标体系构建-01-什么是数据指标
|
6月前
|
缓存 JavaScript 前端开发
js/javascript获取时间戳的5种方法
js/javascript获取时间戳的5种方法
108 0