• IP 协议简介
  • IP 地址的分类
    • A类地址
    • B类地址
    • C类地址
    • D 类地址
  • 广播与多播
  • BGP
    • 参考资料

    IP 协议简介

    IP 协议位于 TCP/IP 协议的第三层——网络层。与传输层协议相比,网络层的责任是提供点到点(hop by hop)的服务,而传输层(TCP/UDP)则提供端到端(end to end)的服务。

    IP 地址的分类

    A类地址

    B类地址

    C类地址

    D 类地址

    广播与多播

    广播和多播仅用于UDP(TCP是面向连接的)。

    • 广播

      一共有四种广播地址:

      1. 受限的广播

        受限的广播地址为255.255.255.255。该地址用于主机配置过程中IP数据报的目的地址,在任何情况下,router不转发目的地址为255.255.255.255的数据报,这样的数据报仅出现在本地网络中。

      2. 指向网络的广播

        指向网络的广播地址是主机号为全1的地址。A类网络广播地址为netid.255.255.255,其中netid为A类网络的网络号。

        一个router必须转发指向网络的广播,但它也必须有一个不进行转发的选择。

      3. 指向子网的广播

        指向子网的广播地址为主机号为全1且有特定子网号的地址。作为子网直接广播地址的IP地址需要了解子网的掩码。例如,router收到128.1.2.255的数据报,当B类网路128.1的子网掩码为255.255.255.0时,该地址就是指向子网的广播地址;但是如果子网掩码为255.255.254.0,该地址就不是指向子网的广播地址。

      4. 指向所有子网的广播

        指向所有子网的广播也需要了解目的网络的子网掩码,以便与指向网络的广播地址区分开来。指向所有子网的广播地址的子网号和主机号为全1.例如,如果子网掩码为255.255.255.0,那么128.1.255.255就是一个指向所有子网的广播地址。

        当前的看法是这种广播是陈旧过时的,更好的方式是使用多播而不是对所有子网的广播。

        广播示例:

        PING 192.168.0.255 (192.168.0.255): 56 data bytes
        64 bytes from 192.168.0.107: icmp_seq=0 ttl=64 time=0.199 ms
        64 bytes from 192.168.0.106: icmp_seq=0 ttl=64 time=45.357 ms
        64 bytes from 192.168.0.107: icmp_seq=1 ttl=64 time=0.203 ms
        64 bytes from 192.168.0.106: icmp_seq=1 ttl=64 time=269.475 ms
        64 bytes from 192.168.0.107: icmp_seq=2 ttl=64 time=0.102 ms
        64 bytes from 192.168.0.106: icmp_seq=2 ttl=64 time=189.881 ms

      可以看到的确收到了来自两个主机的答复,其中 192.168.0.107 是本机地址。

    • 多播

      多播又叫组播,使用D类地址,D类地址分配的28bit均用作多播组号而不再表示其他。

      多播组地址包括1110的最高4bit和多播组号。它们通常可以表示为点分十进制数,范围从224.0.0.0到239.255.255.255。

      多播的出现减少了对应用不感兴趣主机的处理负荷。

      多播的特点:

      • 允许一个或多个发送者(组播源)发送单一的数据包到多个接收者(一次的,同时的)的网络技术
      • 可以大大的节省网络带宽,因为无论有多少个目标地址,在整个网络的任何一条链路上只传送单一的数据包
      • 多播技术的核心就是针对如何节约网络资源的前提下保证服务质量。
    1. 多播示例:
    2. PING 224.0.0.1 (224.0.0.1): 56 data bytes
    3. 64 bytes from 192.168.0.107: icmp_seq=0 ttl=64 time=0.081 ms
    4. 64 bytes from 192.168.0.106: icmp_seq=0 ttl=64 time=123.081 ms
    5. 64 bytes from 192.168.0.107: icmp_seq=1 ttl=64 time=0.122 ms
    6. 64 bytes from 192.168.0.106: icmp_seq=1 ttl=64 time=67.312 ms
    7. 64 bytes from 192.168.0.107: icmp_seq=2 ttl=64 time=0.132 ms
    8. 64 bytes from 192.168.0.106: icmp_seq=2 ttl=64 time=447.073 ms
    9. 64 bytes from 192.168.0.107: icmp_seq=3 ttl=64 time=0.132 ms
    10. 64 bytes from 192.168.0.106: icmp_seq=3 ttl=64 time=188.800 ms

    BGP

    • 边界网关协议(BGP)是运行于 TCP 上的一种自治系统的路由协议

    • BGP 是唯一一个用来处理像因特网大小的网络的协议,也是唯一能够妥善处理好不相关路由域间的多路连接的协议

    • BGP是一种外部网关协议(Exterior Gateway Protocol,EGP),与OSPF、RIP等内部网关协议(Interior Gateway Protocol,IGP)不同,BGP不在于发现和计算路由,而在于控制路由的传播和选择最佳路由

    • BGP使用TCP作为其传输层协议(端口号179),提高了协议的可靠性

    • BGP既不是纯粹的矢量距离协议,也不是纯粹的链路状态协议

    • BGP支持CIDR(Classless Inter-Domain Routing,无类别域间路由)

    • 路由更新时,BGP只发送更新的路由,大大减少了BGP传播路由所占用的带宽,适用于在Internet上传播大量的路由信息

    • BGP路由通过携带AS路径信息彻底解决路由环路问题

    • BGP提供了丰富的路由策略,能够对路由实现灵活的过滤和选择

    • BGP易于扩展,能够适应网络新的发展

    参考资料

    • 多播与广播
    • TCP_IP:广播和多播
    • 百度百科:BGP