网际层

作者: bayuexiong | 来源:发表于2015-05-17 14:34 被阅读0次

    网际层主要实现两个功能:

    • 逻辑寻址

    • 路由选择

    寻址与发送

    在一个路由式网路中,TCP/IP软件受用如下策略在网络上发送数据。

    1. 如果目标地址与源地址在同一网段,源计算机就把数据包直接发送给目的计算机,IP地址被ARP解析为物理地址,数据被直接发送到目的网络适配器。
    2. 如果目的地址与源地址不在一个网段,就如下执行
    • 直接发送到网关,网关地址被ARP解析为物理地址,数据被发送到网关的网络适配器。
    • 数据报被网关路由到较高级别的网段,再次重复上述过程。如果目的地址在这个网段,数据就被发送到目的,否则就会发送到另一个网关。
    • 在目的网段,目的IP地址被ARP解析为物理地址,数据被发送到目的网络适配器。

    IP报头字段

    • 版本:四个字节
    • 网际报头长度(IHL):表示IP报头以多少个32位为单位的长度,四个字节
    • 服务类型:区分优先度,8字节
    • 总长度:表示IP数据报的总长度,16字节
    • 标识:16个字节依序变大,用于接收端重组分段的数据报
    • 标记:这个字段表示分段的可能性 4字节
    • 分段位移
    • 生存时间(TTL):当TTL为0的时候,数据报被抛弃
    • 跳数:到达目的之前必须经过的路由器的数量
    • 协议:例如TCP,UDP,ICMP
    • 报头校验和:检验报头是否有效
    • 源IP地址
    • 目的IP地址
    • IP选项:一些可选的报头设置
    • 填充:保证报头是32的倍数
    • IP数据载荷

    IP地址

    A类地址: 以0开头(0~127)

    排除地址:10.0.0.0~10.255.255.255 127.0.0.1~127.255.255.255

    B类地址:以10开头(128~191)

    排除地址:172.16.0.1~172.31.255.255

    C类地址:以110开头(192~223)

    排除地址:192.168.0.0~192.168.255.255

    不过现在流行的CIDR,于IP地址的分类已经不是那么的重要

    ARP

    ARP缓存
    RARP

    ICMP


    路由选择

    为什么要路由,前面章节提到过,网咯中网络适配器需要监听网络中的每一个传输,以确保是否消息发送到它的物理地址。随着网络的发展,这显然不能实现,所以我们要使用设备(像路由器)将网络分段,而IP地址则是在路由中和路由与路由之间寻址的方法。

    IP地址只属于网络适配器,而不是属于计算机。一台计算机可以有多个IP地址,这取决于它拥有多少个网络适配器。

    路由选择过程

    当路由器的端口超过两个时,将数据传输到哪里就是一个问题,而且路由器不仅在子网内传输数据,也需要和其他网络连接。

    路由选择一般有这5个步骤:

    1. 路由器从所连接的网络之一接受数据
    2. 路由器将数据传递到协议栈的网际层,抛弃底层的报头,找到IP报头信息。
    3. 路由器检查IP报头中的目的地址
    4. 如果IP在其他的网络,路由器就会根据路由表决定去哪里转发数据
    5. 让数据通过选择好的适配器进行传输

    其中路由表的建立至关重要,路由的类型主要有两种,也是路由表来源的两种途径:

    • 静态路由
    • 路由表更新依靠系统管理员
    • 动态路由
    • 路由表更新依靠其他路由器

    静态路由需要手动配置,所以不能根据网络的变化实时更新,除了一些特别的场合,并不会使用。

    路由表就是把目的网络ID映射到下一跳的IP地址,即数据报通往目的网络的下一站,,下一跳可以是目的网络,也可以是通向目的网络的下一个下游路由器。

    动态路由算法

    • 距离矢量路由

    路由器周期性地接受邻居的路由器传来的报告,如果有新的网段,就跳数加1添加。如果有重复,就比较跳数和跳数+1,小者添加。

    • 连接状态路由

    每台路由器都定期向网络发送信息,列出自己直连的其他路由器以及链路的状况,路由器利用从其他路由器收到的状态消息建立网络拓扑的映射,在需要发送数据的时候,寻找最优的路线。

    相关文章

      网友评论

          本文标题:网际层

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