局域网中发送数据传输流程

在面试中,经常考的一个问题是,局域网数据传输流程是怎样的?
在这篇文章中,将说明局域网传输流程。

首先回顾一些基础知识
MAC:网卡的物理地址。
IP:访问服务器所在的地址,定位主机。
ARP协议:建立了主机IP地址和MAC地址的映射关系.

网络互联

例,客户端访问局域网http服务器,已知本机ip和本机端口号,目的ip和目的端口号

1、首先是数据的封装。

  • 应用层:浏览器将请求数据ip,封装为http协议
  • 传输层:本机传输层TCP将前一个封装的数据报封装为TCP数据段
  • 网络层:IP协议进行封装
  • 数据链路层:以太网数据封装为数据帧

2、知道目的IP,要知道对应的MAC地址。在本机ARP缓存表中,去查找IP和MAC的映射关系,
如果找到了,就将数据包发送给目的主机。
如果找不到,源主机发出ARP请求,询问“IP地址是xxx.xxx.xxx.x的主机的硬件地址是多少”, 并将这个请求广播到本地网段(以太网帧首部的硬件地址填FF:FF:FF:FF:FF:FF表示广播)。目的主机接收到广播的ARP请求,发现其中的IP地址与本机相符,则发送一个ARP应答数据包给源主机,将自己的硬件地址填写在应答包中.其他主机发现IP地址不符,则丢弃。源主机知道目的MAC后,发送数据包。

3、接收端处理数据,分用。

有交换机,无路由器

首先,我们知道在交换机内部有MAC地址表。
传输流程如下:
1.发送数据给交换机,交换机记录源MAC.
2.交换机处理数据:查找MAC地址表,如果有目的IP的MAC,则从记录的MAC地址接口发送。如果没有,则广播ARP请求数据给除了源主机之外的主机。目的主机接收到广播的ARP请求,发现其中的IP地址与本机相符,则发送一个ARP应答数据包交换机,其中包括MAC地址。
3.交换机记录目的主机的MAC地址,更新地址表。
4.发送数据。

有交换机,有路由器

在路由器中,有路由表,它记录着不同网段的信息,包括ip和MAC。
传输流程如下:
1、发送端发送封装数据包。
2、将目的IP和子网掩码进行位与操作,结果与本机IP网络号进行比较。
3、如果在一个网段(即前三位相同)走上一个有交换机,没有路由器的流程。
4、如果不在一个网段,则本机不知道目的主机的MAC,需要发送数据到网关(路由器)。
5、源主机源MAC为本机MAC,目的MAC为路由器MAC,数据发送到路由器,进行解包分用,并再次封装(源MAC改为路由器MAC,目的MAC改为目的主机MAC).
6、从网关发送到接收端。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值