网络传输流程

首先回顾一些基础知识
MAC: 网卡的物理地址。
IP:访问服务器所在的地址,定位主机。
ARP协议:建立了主机P地址和MAC地址的映射关系
网络互联
例,客户端访问局域网http服务器,已知本机ip和本机端口号,目的ip和目的端口号
1、首先是数据的封装。
应用层: 浏览器将请求数据ip,封装为http协议
传输层: 本机传输层TCP将前一个封装的数据报封装为TCP数据段
网络层: IP协议进行封装
数据链路层:以太网数据封装为数据帧

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

3、接收端处理数据,分用。
有交换机,无路由器
首先,我们知道在交换机内部有MAC地址表
传输流程如下:
发送数据给交换机,交换机记录源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、从网关发送到接收端。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值