美文网首页
网络中数据的传输

网络中数据的传输

作者: 梦落迹南天 | 来源:发表于2018-12-07 09:46 被阅读0次

之前在理解vip的时候卡在了一些网络问题,发现不清楚数据是如何从网络层到数据链路层,以及到物理层的一步步传输的,看了点资料,加点猜测一个包的具体传输过程。


image.png

数据经过传输层(TCP/UDP)后被包装成传输帧之后,头部携带有源端口和目的端口,经由IP传输层装帧之后,头部就有了源/目的IP,经过ARP协议,在局域网内发送arp报文,查询出IP对应的MAC地址,经由数据链路层装帧成为以太帧之后,头部有了源头/目的mac地址,最终,报文最终在物理层传输,在数据链路广播传输过程中,设备的网卡对链路上的包截取,通过匹配目的MAC地址是否与本机相同,进而决定是否要接收该包

在数据链路层的传输过程,比较具体的可以参考网卡的工作机制


而对于一个主机获取IP的过程,猜测有两种,第一种是发送广播某种报文,向交换机/路由器获取了IP,路由器从其拥有的IP池中选择一个出来,分发给该主机,将该IP与MAC地址进行绑定,对内部网络,同时广播发送arp更新报文,通知同网段的主机更新该ip对应的mac缓存,而对外部网络,路由过来的IP包通过路由器上的IP条项查到对应mac地址后,进行转发即可。第二种,自己设定的IP,这种应该是设定完了之后,向路由器/网关发报文说,这个IP我使用了,该IP如果未分配就分配给他,然后进行arp更新,如果分配了,不清楚具体的处理方式是如何。

相关文章

  • 网络中数据的传输

    之前在理解vip的时候卡在了一些网络问题,发现不清楚数据是如何从网络层到数据链路层,以及到物理层的一步步传输的,看...

  • Kafka设计之美

    一 数据传输 1 传统数据从文件到网络的传输路径 2 传统数据从文件到网络的传输路径图解 3 对传统数据传输的优化...

  • PHP加密解密- AES加密算法 -RSA加密算法

    为了保证网络传输数据的安全性,涉及敏感数据的传输,最好对数据预先加密,然后再在网络上进行传输,同时,还要保证数据在...

  • 网络数据的传输

    关于网络数据的传输大体上可以分为两步: 找到想要给他数据的人 给他可以理解的数据 就像是小刘想要找到女朋友丽丽,跟...

  • Android网络 | Socket(Eclipse--Java

    在现实网络传输应用中,通常使用TCP、IP或UDP这3种协议实现数据传输。在传输数据的过程中,需要通过一个双向的通...

  • Python的序列化与反序列化(pickle)

    序列化定义:将内存中的数据写入磁盘或者传输到网络中。 反序列化:将本地数据或者网络数据写入内存中。 Python ...

  • SSL连接初涉

    ActiveMQ普通的TCP连接方式,报文在网络中是以明文方式传输的,出于安全的考虑,为了确保报文数据在网络传输过...

  • TCP、UDP、IP头部结构

    数据传输在TCP/IP网络模型中,经过一层便会添加一层头部,其中TCP(网络传输协议),UDP处于传输层,IP(网...

  • JDK序列化官方指南

    在网络中数据传输都是以字节数组传输的,而在java程序中操作的是类对象。java程序中对象到对象的传递在网络中的传...

  • 网络规划设计师知识点—计算机网络基础篇—OSI七层模型 - 原理

    从上到下分别是:应用层—表示层—回话层—传输层—网络层—数据链路层—物理层 数据在网络中的传输过程:源主机当高层(...

网友评论

      本文标题:网络中数据的传输

      本文链接:https://www.haomeiwen.com/subject/msyncqtx.html