网络通信原理简述

网络通信原理简述

背景:

主机A连接在路由器1上。主机A要与主机B通信(主机A一定是知道主机B的ip地址的,在网络层IP地址是主机的唯一标示)。

注意:我们日常使用的网络都是星型结构,一个局域网所有主机是通过路由器连接的,并没有直接连接。 wifi环境也是如此,每台主机通过分时复用或分频复用等技术分别于路由器相连,相当于每台主机都通过一根网线连在路由器上。

设:

  1. send(mac1,mac2,ip1,ip2)表示源mac地址为mac1,目标mac地址为mac2,源ip地址为ip1,目标ip地址为ip2的以太网帧
  2. 主机A:mac地址为mac-A,ip地址为ip-A
  3. 主机B:mac地址为mac-B,ip地址为ip-B
  4. 路由器1:mac地址为mac-1,ip地址为ip-1

场景:

  • 主机A先通过子网掩码和ip-B做“与”运算判断主机B是否和自己处于同一网段
    • 如果是同一网段,则在自己的ARP表中查到路由器1和主机B的mac地址后,会给路由器1发送一个以太网帧send(mac-A,mac-B,ip-A,ip-B)。 路由器收到这个以太网帧后,发现以太网帧的目标mac地址不是自己,则会在自己的mac表中查找mac-B对应的接口, 然后把以太网帧从这个接口转发出去。 这种场景下路由器退化为交换机
    • 如果不是同一网段,则在自己的ARP表中查到路由器1的mac地址后,会给路由器1发送一个以太网帧send(mac-A,mac-1,ip-A,ip-B)。 路由器收到这个以太网帧后,发现以太网帧的目标mac地址是自己,则会取出里面的IP数据包,在路由表中查找是否有对应的目标IP地址, 如果有,则会从与目标连接的接口发送一个以太网帧send(mac-1,mac-B,ip-A,ip-B)。

参考

[1] 详解网络传输中的三张表,MAC地址表、ARP缓存表以及路由表
[2] 网关,路由,局域网内的通信及不同的网络间通信实现的原理剖析
[3] 交换机和路由器的区别
[4] 同一网段内的两台主机通信是否需要路由器?
[5] 无线信号传输是如何做到一对一和多对一传输的?






附:一些基础概念的形式化描述

1. ip地址,mac地址,路由协议,ARP协议

  • ip地址相当于邮寄地址,公网地址代表省、市、县、街道、公司/家庭,私网地址代表每个人的房间或工位;
  • mac地址相当于每个人的身份证号(或手机号);
  • 路由协议相当于快递传输,根据邮寄地址派送到户;
  • ARP协议相当于快递发放,快递员会站在门口问:“这是谁的快递,手机尾号4231?”,有人应答后快递员把快递放到他的房间或工位上。

如果每个人的邮寄地址都是唯一且终生不变,那确实就不需要mac地址了,ip地址就可以唯一标示一个人。但是可惜的是,我们的ip尤其是私网ip是频繁变化的,所以不能只凭借ip地址找到一个人。一般情况下,我们都是先找到一个人的公司或家庭,然后再喊他出来。所以ip地址的作用是路由,mac地址的作用是最终确定主机。


  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值