个人主页:Lei宝啊
愿所有美好准期而遇
目录
以太网
以太网帧格式
Mac地址
对比IP地址和Mac地址
MTU
MTU对IP协议的影响
互换机
ARP协议
以太网
以太网是目前应用最广泛的局域网技能,和以太网并列的还有令牌环网以及无线LAN等。
以太网帧格式
第一行就是以太网帧格式,目的mac地址,源mac地址,类型指的是哪种协议将数据交给了他,他将来分用时,又要将数据交付给谁。这个类型字段有三种值,0800对应IP数据报,0806对应ARP协议,8035对应RARP协议。
Mac地址
Mac地址用来识别数据链路层中相连的节点,长度为 48 位, 及 6 个字节. 一样平常用 16 进制数字加上冒号的形式来表现(例如: 08:00:27:03:fb:19),在网卡出厂时就确定了, 不能修改. mac 地址通常是唯一的。
对比IP地址和Mac地址
IP地址描述的是起点和尽头,目的地址在传输过程中是不会改变的,源IP地址因为NAT技能,在传输过程中会替换为WAN口IP。
Mac地址在传输过程中,目的地址和源Mac地址不停会发生变革。
MTU
MTU叫做数据链路层的最大传输单元,不同的网络类型有不同的MTU,最大值1500称为以太网的最大传输单元。
简单来说,就是数据链路层要求以太网帧的数据长度最小是46字节,最大不超过1500字节,假如一个数据包交到数据链路层时超过了1500字节,就需要对数据进行分片。
MTU对IP协议的影响
我们上篇文章说到IP协议时,有三个字段没有解释,这里我们就可以解释那三个字段了。
当网络层向数据链路层交付的数据包大于他的MTU时,网络层就会进行分片,怎么分片?
IP报头的16位标识,用来标识主机发送的报文,假如这个报文被分片,那么每一片的这个字段都是相同的。
3位标志,第一位保留,第二位为1表现禁止分片,这时间假如报文长度超过MTU,那么这个报文就会被直接抛弃。第三位表现更多分片,假如分片了,那么最后一片报文设置为0,其他分片的报文设置为1.
13位片偏移,实在就是分片相对于原始IP报文开始处的偏移,实际偏移的字节数是这个字段乘以8,因此,除了第一个报文,其他报文的长度必须是8的整数倍,否则除8就大概除不清,报文也就不连续了。
我们从接收方角度来看看,报文是如何被组装的:
这里也就表现出了,为什么在Tcp传输层,滑动窗口中的数据不是一次全发到下层,而是分批次发送,就是为了减少下层的分片,只管不使分片,因为分片是有危害的,一个就是增长了丢包概率,一个就是丢片后需要全部重传。
MTU 对 UDP 协议的影响 一旦 UDP 携带的数据超过 1472(1500 - 20(IP 首部 ) - 8(UDP 首部 )), 那么就会在网络层分成多个 IP 数据报 . 这多个 IP 数据报有任意一个丢失 , 都会引起接收端网络层重组失败 . 那么这就意味着, 假如 UDP 数据报在网络层被分片 , 整个数据被丢失的概率就大大增长了 . MTU 对于 TCP 协议的影响 TCP 的一个数据报也不能无穷大 , 还是受制于 MTU. TCP 的单个数据报的最大 消息长度, 称为 MSS(Max Segment Size); TCP 在创建连接的过程中 , 通信双方会进行 MSS 协商 .然后接纳min(send_MSS, recv_MSS)。 最理想的环境下 , MSS 的值恰好是在 IP 不会被分片处置惩罚的最大长度 ( 这个长度仍然是受制于数据链路层的 MTU). 双方在发送 SYN 的时间会在 TCP 头部写入自己能支持的 MSS 值 . 然后双方得知对方的 MSS 值之后 , 选择较小的作为最终 MSS. MSS 的值就是在 TCP 首部的 40 字节变长选项中 (kind=2) 查察硬件地址和 MTU 利用 ifconfig 下令 , 即可查察 ip 地址 , mac 地址 , 和 MTU; 互换机
我们说在局域网主机间通信时,大概会发生数据碰撞,从而有碰撞避免策略,同时,一台主机发送消息,局域网内所有主机都会收到这个报文,只是丢不抛弃的题目,那么互换机就用来分别碰撞域。
当互换机中没有记录主机的位置时,同一侧的主机相互发送消息,另一侧的主机仍然会收到这个报文,然后抛弃,接下来,这两个主机的位置就被互换机记录下来,位于互换机的同一侧,下次他们再相互发送消息,这个报文不会到互换机的另一侧,直接就被拦截了,纵然他们发生了数据碰撞,也不会影响到另一侧。
ARP协议
现在,整个网络通信,我们只剩下最后一个题目,那就是,在局域网下,以太网添补目的mac地址时填什么?他怎么知道对方的mac地址?
这就需要ARP协议将IP地址转换为Mac地址,怎么转换呢?
也就是说,主机A要向主机B发送消息,就在局域网中进行广播,向每一台主机发送ARP哀求,当主机B收到这个ARP哀求,与自己的IP地址核对,发现是发给自己的,就会发回ARP应答,也是这个格式,双方也就知道相互的Mac地址了。
但是每一次发送消息都要发送ARP哀求吗?不是,只是第一次发送时,之后就会将目标的IP地址和Mac地址创建映射关系进行保存。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |