网络基础三——IP协议补充和Mac帧协议

这篇具有很好参考价值的文章主要介绍了网络基础三——IP协议补充和Mac帧协议。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

全球网络及网段划分的理解

​ 根据国家组织地区人口综合评估进行IP地址范围的划分;

​ 假设前8位用来区分不同的国家,国际路由器负责全球数据传输,子网掩码为IP/8;次6位区分不同的省份,国内路由器负责全国数据的传输,子网掩码为IP/14,国际路由器也可以参与;再往后4位区分不同的市,由省内路由器负责全省的数据传输,子网掩码为IP/18;最后根据主机号形成一个完整的IP地址;

​ IP报文传输的过程中,通过IP目的地址和子网掩码不断地进行路由转发,最终发送到目标主机;公网IP地址会根据国家省市划分出不同的网段;在全国范围内通信是由运营商来进行维护的;

​ 一般网民使用的都是私有IP地址,而家用路由器是可以构建子网的;当普通人上网时,会将数据先传输到家用路由器,然后传输到运营商路由器,再传输到公网被接收,最后实现了通信;

​ 一个路由器是由至少两个IP地址的,一个用于子网内部路由LAN口IP,一个用于跨网络传输WAN口IP,家用路由器的WAN口IP就是运营商路由器构建的子网中的一个IP;每一个IP报文在传输时会先进行判断,如果目的IP是在子网内,源IP地址就会不会替换,如果要跨网络传输就需要将子网IP替换成WAN口IP;

​ 私有IP不断被替换的过程就是NAT技术;

通过公网 + 私有(可重复)构成了互联网

​ 当发送的目标IP是跨国的时候,运营商接收到报文就会丢掉,不允许发送出去;私有根据入网数量的多少,从高到低选用10.*,172.16.*,192.168.*的私有IP划分;

3.6路由

route
#查看路由表
#1.Destination,表示当前连接的网络号;
#2.Gateway,表示下一跳的路由器;
#3.Genmask,表示子网掩码;
#4.UG,U表示正在使用,G表示该条目是路由器;
#5.Iface,表示本地的网络接口,通过网络将数据报文发送出去;

网络基础三——IP协议补充和Mac帧协议,计算机网络,网络,tcp/ip

​ 查询路由表的过程其实就是拿着目标主机的IP & Genmask 得到一个网络号,然后和Destination对比,如果是就使用对应的网络接口将数据发送出去并进入下一跳,否则继续向下查询路由表,如果都找不到就发送到默认路由器(同网段的可以跨网络传输的路由器);最终就会到达入口路由器;入口路由器到达目标主机使用Mac地址实现;

4.IP分片与组装

​ 实际上在一台主机中,报文并没有直接糖果网络层转发出去,而是继续交给了自己的下一层协议,最后查询路由表决定是发送给同网段主机还是路由器;

数据链路层一般不能发送过大的报文,所以要求上层不能一次交付过大的报文(TCP的发送缓冲区发送报文是一个一个进行);

ifconfig
#mtu表示的是Mac帧有效载荷最大是1500字节;

网络基础三——IP协议补充和Mac帧协议,计算机网络,网络,tcp/ip

​ 如果I发送的IP报文过大就会在IP层进行分片转发,目标路由器收全之后就会进行组装形成一个完整的报文;

​ 在IP报头中具有相关切片和组装的字段;

网络基础三——IP协议补充和Mac帧协议,计算机网络,网络,tcp/ip

16位标识,不同的IP报文对应的16位标识是不一样的,但是分片之后的报文16位标识是一样的;

3位标志,第1位不使用,第2位标志为0/1表示允许/不允许分片,第3位标志表示结束标志,当前是否是最后一个小包,0/1表示是/不是最后一个小包;

13位片偏移,原始报文被分成了若干片,表示此分片在原来报文的偏移量;

​ 当原始报文被分片后,每一个分片都要进行添加报头;对于分片的组装,先将具有相同16位标识的IP分片聚集在一起,然后根据片偏移将分片排序,最后完成组装;

​ 1.分片问题,一般报文片偏移量不为0,则说明报文被分片了,特殊第一个分片偏移量为0,但是它的第3位标志为1,表示此报文分片且不是报文结尾分片,如果两个都为0则说明是正常报文;

​ 2.分片丢失问题,如果丢失了第一个分片则因为所有的分片没有0,识别出第一个分片丢失;如果丢失了最后一个分片则因为没有一个第3位标志为0,被识别出最后一个分片丢失;当前分片的片偏移量与前一个分片的长度不一样时,则说明当前分片之前已经有报文分片丢失;

​ 解决上述问题就可以保证将所有的分片聚在一起,然后排序组装;其实一般是不建议IP报文进行分片的,因为只要有分片丢失,就会造成所有分片都被丢弃,重新发送所有切片,增加了丢包的概率;但是Mac帧规定了上层不能交付过大的报文,所以应该在传输层就保证数据报文较小;

二、以太网

​ 通过网络层判断是将数据报文发送到同网段的主机还是跨网络发送到下一跳;想要进行跨网络传输或者同网段主机间通信,就需要确保设备之间数据帧的传输;所以数据链路层解决的就是如何让直接相连的主机设备进行数据交付;

​ 每个主机除了要有公网或者私有IP地址之外,还需要有对应的网卡,而路由器则是有至少两张网卡,不同的网卡配对不同的IP就可以集连不同的网段;每一个网卡都对应着唯一的一个Mac地址;

​ ether以太网,表示的是48位的Mac地址;Mac地址的主要作用是区分同一子网中不同的主机;

1.Mac帧报文格式

网络基础三——IP协议补充和Mac帧协议,计算机网络,网络,tcp/ip

​ 1.Mac帧报文通过使用定长报头进行解包和分用;

​ 2.Mac帧根据类型来进行分用,如:0800表示交付给IP协议,0806交付给ARP协议,8035交付给RARP协议;

数据大小范围,46-1500字节;

2.局域网通信的原理

​ 在局域网中的所以主机都可以收到发送到局域网的数据帧,但是通过对比Mac地址决定是丢弃数据帧还是接收数据帧;

​ 在局域网中是会存在数据碰撞问题的,需要使用碰撞避免算法减少碰撞次数,原理就是进行休眠,使得发送时间可以叉开,并且在休眠时其他主机可以发送数据帧;当检测到碰撞发生时,进行碰撞避免,之后进行数据帧的重发;

​ 局域网的特点是任何时间只能有一个主机发送数据帧,换句话说就是局域网是一个临界资源;

​ 一个主机要跨网络发送到远端主机就要通过路由器不断地路由到下一个网段;而经过路由器时会进行Mac帧的解包和重新封装;换句话说Mac帧只是在局域网中有效;

​ 主机数越多,发生碰撞的概率越大,所以需要增加交换机,进行碰撞域的划分,减少碰撞的发生;1.如果发生了碰撞,通信双方主机进行了休眠,交换机识别到了此碰撞域的不发送数据,就可以让其他碰撞域的主机进行发送数据帧;2.检测到不是跨碰撞域的通信,变相地减少了其他碰撞域发生碰撞的概率;3.跨碰撞域的通信就和原来进行的局域网通信是一样的,只不过多经过了交换机设备;单次发送的数据帧尽量不要太大,否则会使得与局域网通信的时间变长,导致发生碰撞的可能性增加;

​ Mac帧协议为了减少碰撞概率,所以要求上层IP协议发送的IP报文不能过大,可以进行IP分片,但是分片增大丢包概率所以不建议分片,这时候就需要上层TCP协议来保证数据段小一些,使得IP报文小,进而使得Mac帧小;如:TCP和IP都使用标准报头20字节,则TCP单次发送的数据段的有效载荷最多只有1460字节;1460字节就是MMS(max segment size),要求TCP的发送缓冲区要分割成一个一个的数据段;

​ MMS是TCP的一个方案,数据链路层的方案是MTU(max transmisson unit),有效载荷最大为1500字节,1500字节为MTU;

​ 由于设备的差异MMS和MTU可能不一样,还是会出现分片的情况,所以需要通信双方协商,使得MMS尽量保持一致;即TCP通信时会进行三次握手,协商MMS,取较小值为最终的MMS;

3.跨网络通信

​ 所谓的跨网络传输实际上就是连续多个子网路由实现;最终路由到入口路由器时要进行,解包和重新封装,封装时需要知道目标主机的Mac地址;目标主机的Mac地址是未知的,所以需要使用ARP协议(局域网协议,划分在了数据链路层)将目标主机的IP地址转换成Mac地址;文章来源地址https://www.toymoban.com/news/detail-854569.html

到了这里,关于网络基础三——IP协议补充和Mac帧协议的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络安全 Day19-计算机网络基础知识04(网络协议)

    Linux查看arp:arp -a 局域网内主机的通讯方式是通过MAC地址来实现的 告诉MAC地址如何查找物理记得位置 员工入职记录网卡MAC地址 工位网线接口上联交换机端口,用交换机查看 刚连接上网络时的电脑和交换机情况 当PC1开始发出数据传输PC7请求时(请求内容:PC1deIP PC1的MAC地址

    2024年02月15日
    浏览(73)
  • 小林coding图解计算机网络|基础篇01|TCP/IP网络模型有哪几层?

    小林coding网站通道:入口 本篇文章摘抄应付面试的重点内容,详细内容还请移步: 我们的电脑或手机使用的应用软件都是在应用层实现。应用层 只需要专注于为用户提供应用功能,不用去关心数据是如何传输的 。 而且 应用层是工作在操作系统中的用户态,传输层及以下则

    2024年04月11日
    浏览(55)
  • Linux【网络基础】IP协议

    IP是InternetProtocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性: 一是解决互联网问题,实现大规模、异构网络的互联互通; 二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。根据端到端的设计原则

    2024年02月11日
    浏览(48)
  • 【数据链路层】网络基础 -- MAC帧协议与ARP协议

    用于两个设备(同一种数据链路节点)之间进行传递 在同一个局域网的主机,能不能直接通信?可以的,比如: 假如你正在上课,你的老师在课堂上问小明你昨天的作业怎么没做?这时候小明回答说他做了只不过交过去比较晚老师可能没看到。老师和小明交流的过程班级里面的

    2024年02月08日
    浏览(43)
  • 计算机网络:MAC地址 & IP地址 & ARP协议

    如果两台主机通过一条链路通信,它们不需要使用地址就可以通信,因为连接在信道上的主机只有他们两个。换句话说, 使用点对点信道的数据链路层不需要使用地址 。 再来看使用共享信道的总线型局域网: 总线上的某台主机要给另一台主机发送帧,表示帧的信号通过总线

    2024年04月17日
    浏览(51)
  • 【网络基础】TCP/IP协议详解

    TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是在多个不同网络间实现信息传输的通信协议.是由一组不同功能的协议组合在一起构成的协议簇,利用一组协议完OSI所实现的功能. OSI模型对照DOD模型 NFS 网络文件系统 ,英文Network File System(NFS),是由

    2024年02月16日
    浏览(66)
  • Linux 网络基础(1)基础知识、IP地址、端口、协议、网络字节序

    网络发展背景: 网络的划分:局域网(覆盖范围在1000m以内)、城域网(覆盖范围在20km以内)、广域网(更大范围) 组网方式:以太网、令牌环网.... 日常名词:互联网,因特网----说的是一个网络,就是国际化的广域网 网卡:实现数字信号与电信号之间的转换 中继器:信号

    2024年02月05日
    浏览(93)
  • 计算机网络基础知识(五)——什么是TCPUDP协议?图文并茂的方式对两大传输层协议进行从头到尾的讲解

    TCP和UDP协议是TCP/IP协议的核心。 TCP 传输协议:TCP 协议是一TCP (Transmission Control Protocol)和UDP(User Datagram Protocol)协议属于传输层协议。其中TCP提供IP环境下的数据可靠传输,它提供的服务包括数据流传送、可靠性、有效流控、全双工操作和多路复用。通过面向连接、端到端和可靠

    2024年02月05日
    浏览(57)
  • 网络层协议及IP编址与IP路由基础&华为ICT网络赛道

    目录 4.网络层协议及IP编址 4.1.网络层协议 4.2.IPv4地址介绍 4.3.子网划分 4.4.ICMP协议 4.5.IPv4地址配置及基本应用 5.IP路由基础 5.1.路由概述 5.2.静态路由 5.3.动态路由 5.4.路由高阶特性 IPv4(Internet Protocol Version4)协议族是TCP/IP协议族中最为核心的协议族。它工作在TCP/IP协议栈的网络层

    2024年01月22日
    浏览(48)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包