bediger@isis.cs.du.edu (bruce allen ediger) (02/26/91)
I've noticed a couple of confusing things in connection with AppleTalk Phase 2. 1. Use of network number 0. From "Inside AppleTalk", 2nd edition. pg 4-6: "The network number 0 is reserved to mean unknown; by default is specifies the local network to which the node is connected." pg 4-21: "The use of network number 0 to indicate unknow introduces some complexity for DDP clients. ... The rule to use is 'Zero matches anything.'" pg 5-25: "Remember when comparing network numbers that a destination network number of 0 will always match whatever it is being compared to." Which is it: the local network, or a wildcard symbol? 2. Hidden assumption in routing algorithm on pg 5-26, Figure 5-7. It would appear that packets entering the diagram have already been filtered on the basis on hardware address. For IEEE802.3 packets, that means that only AppleTalk Phase2 multicast packets (with 9:0:7:nn:nn:nn hardware addresses) or packets addressed specifically to the router are allowed to be routed. If this check on hardware address is not performed, a whole lot of duplicate routing will get done, since there is no other way to determine whether any given packet is going from router-to-router, or from node-to-router.
cremer@Apple.COM (Mike Cremer) (03/02/91)
In article <1991Feb25.174948.29698@isis.cs.du.edu> bediger@isis.UUCP (bruce allen ediger) writes: > I've noticed a couple of confusing things in connection with AppleTalk > Phase 2. > 1. Use of network number 0. > Which is it: the local network, or a wildcard symbol? Well, it is both. The reason for allowing "wildcard" matching is that this allows nodes on extended network cables with different "network" addresses to talk to each other as if they were local (i.e. no routing). Consider an NBP lookup broadcast to the "local" cable (network 0x0000), which everyone should accept. Suppose that the sender is on network 0x1001, and the cable has the network range 0x1000-100F. It is likely that the nodes on the cable will be evenly distributed among network numbers, so even though they share the same physical cable, they are logically not peers. If the lookup packet was sent with the node's "real" network number (0x1001) then the packet would only be accepted by nodes having the same network number, and none of the other nodes (even though they should). If, however, the lookup packet was addressed to network 0x0000, all nodes on the cable would receive and accept the lookup request. did any of that make any sense? > 2. Hidden assumptions in routing algorithm I don't follow what the question is (why lots of duplicate packets?), so I will pass it by. $mike cremer apple network systems development usual disclaimers
kerlyn@apple.com (Kerry Lynn) (03/02/91)
In article <1991Feb25.174948.29698@isis.cs.du.edu> bediger@isis.cs.du.edu (bruce allen ediger) writes: > Which is it: the local network, or a wildcard symbol? Both. Non-extended nodes use 0 internally to specify their network address when there are no routers active on their cable, thus they will accept long-DDP packets addressed to any network and their node ID (but such packets are not generated by Apple implementations.) Extended nodes ALWAYS have an internal net number != 0 or 0xFFFF. The only acceptable use of network number = 0 in a Phase 2 packet is in a cable-wide broadcast where dest net = 0 and dest node = 0xFF. The flowchart that matches the Mac DDPRead implementation can be found in "AppleTalk Phase 2 Protocol Specification" (APDA #C0144LL/A) and unambiguously demonstrates the use of net = 0 in extended and non-extended cases. > Hidden assumption in routing algorithm The above mentioned flowchart expands somewhat on the one contained in "Inside AppleTalk, 2e." However, it has a hidden assumption that the routing code (Figure 4-4) discards pkts addressed to net = 0. > It would appear that packets entering the diagram have already been > filtered on the basis on hardware address. Indeed, the algorithm routes packets based on DDP address which implies that the packet has already passed through the LAP layer and thus has been "filtered." A packet travelling through the internet gets a new link level address for every router it passes through, but its DDP destination address never changes.