Skip to content
  • YOSHIFUJI Hideaki / 吉藤英明's avatar
    firewire net: Ignore spd and max_payload advertised by ARP. · 61a7839a
    YOSHIFUJI Hideaki / 吉藤英明 authored
    
    
    Stefan Richter <stefanr@s5r6.in-berlin.de> says:
    | As far as I can tell, it would be best to ignore max_rec and sspd from ARP
    | and NDP but keep using the respective information from firewire-core
    | instead (handed over by fwnet_probe()).
    |
    | Why?  As I noted earlier, RFC 2734:1999 and RFC 3146:2001 were apparently
    | written with a too simplistic notion of IEEE 1394 bus topology, resulting
    | in max_rec and sspd in ARP-1394 and NDP-1394 to be useless, IMO.
    |
    | Consider a bus like this:
    |
    |     A ---- B ==== C
    |
    | A, B, C are all IP-over-1394 capable nodes.  ---- is an S400 cable hop,
    | and ==== is an S800 cable hop.
    |
    | In case of unicasts or multicasts in which node A is involved as
    | transmitter or receiver, as well as in case of broadcasts, the speeds
    | S100, S200, S400 work and speed S400 is optimal.
    |
    | In case of anything else, IOW in case of unicasts or multicasts in which
    | only nodes B and C are involved, the speeds S100, S200, S400, S800 work
    | and speed S800 is optimal.
    |
    | Clearly, node A should indicate sspd = S400 in its ARP or NDP packets.
    | But which sspd should nodes B and C set there?  Maybe they set S400, which
    | would work but would waste half of the available bandwidth in the second
    | case.  Or maybe they set S800, which is OK in the second case but would
    | prohibit any communication with node A if blindly taken for correct.
    |
    | On the other hand, firewire-core *always* gives us the correct and optimum
    | peer-to-peer speed and asynchronous packet payload, no matter how simple
    | or complex the bus topology is and no matter in which temporal order nodes
    | join the bus and are discovered.
    
    CC: Stefan Richter <stefanr@s5r6.in-berlin.de>
    Signed-off-by: default avatarYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    61a7839a