Protocol-dependent module

Protocol-dependent modules (PDMs) are used by the routing protocol EIGRP to make decisions about adding routes learned from other sources; for example other routers or routing protocols to the routing table. In fact EIGRP has the capability for routing several different protocols including IPv4 and IPv6 using protocol-dependent modules (PDMs). The PDM is also capable of carrying information from the routing table to the topology table. EIGRP offers support for various routed protocols (e.g. Internet Protocol Version 6 (IPv6), IP, IPX, AppleTalk), and has added support for Service Routing (SAF) PDMs. The only other routing protocol that comes with support for multiple network layer protocols is Intermediate System-to-Intermediate System (IS-IS).

"In theory, EIGRP can add PDMs to easily adapt to new or revised routed protocols such as IPv6. Each PDM is responsible for all functions related to its specific routed protocol. The IP-EIGRP module is responsible for the following functions:
 * 1) Send and receive EIGRP packets that bear IP data.
 * 2) Notify DUAL (Diffusing Update Algorithm) of new IP routing information that is received.
 * 3) Maintain the results of DUAL routing decisions in the IP routing table.
 * 4) Redistribute routing information that was learned by other IP-capable routing protocols."

When a newly discovered neighbor is learned, the address and interface of the neighbor are recorded, and this information is held in the neighbor table, stored in RAM. There is one neighbor table per each protocol-dependent module.