293 * @see GlobalRoutingLSA |
293 * @see GlobalRoutingLSA |
294 * @see GlobalRoutingLinkRecord |
294 * @see GlobalRoutingLinkRecord |
295 * @returns The interface index to use when forwarding packets to the host |
295 * @returns The interface index to use when forwarding packets to the host |
296 * or network represented by "this" SPFVertex. |
296 * or network represented by "this" SPFVertex. |
297 */ |
297 */ |
298 uint32_t GetOutgoingTypeId (void) const; |
298 uint32_t GetOutgoingInterfaceId (void) const; |
299 |
299 |
300 /** |
300 /** |
301 * @brief Set the interface ID that should be used to begin forwarding packets |
301 * @brief Set the interface ID that should be used to begin forwarding packets |
302 * from the root SPFVertex to "this" SPFVertex. |
302 * from the root SPFVertex to "this" SPFVertex. |
303 * @internal |
303 * @internal |
335 * @see GlobalRoutingLSA |
335 * @see GlobalRoutingLSA |
336 * @see GlobalRoutingLinkRecord |
336 * @see GlobalRoutingLinkRecord |
337 * @param id The interface index to use when forwarding packets to the host or |
337 * @param id The interface index to use when forwarding packets to the host or |
338 * network represented by "this" SPFVertex. |
338 * network represented by "this" SPFVertex. |
339 */ |
339 */ |
340 void SetOutgoingTypeId (uint32_t id); |
340 void SetOutgoingInterfaceId (uint32_t id); |
341 |
341 |
342 /** |
342 /** |
343 * @brief Get the IP address that should be used to begin forwarding packets |
343 * @brief Get the IP address that should be used to begin forwarding packets |
344 * from the root SPFVertex to "this" SPFVertex. |
344 * from the root SPFVertex to "this" SPFVertex. |
345 * @internal |
345 * @internal |
797 GlobalRoutingLinkRecord* SPFGetNextLink (SPFVertex* v, SPFVertex* w, |
797 GlobalRoutingLinkRecord* SPFGetNextLink (SPFVertex* v, SPFVertex* w, |
798 GlobalRoutingLinkRecord* prev_link); |
798 GlobalRoutingLinkRecord* prev_link); |
799 void SPFIntraAddRouter (SPFVertex* v); |
799 void SPFIntraAddRouter (SPFVertex* v); |
800 void SPFIntraAddTransit (SPFVertex* v); |
800 void SPFIntraAddTransit (SPFVertex* v); |
801 void SPFIntraAddStub (GlobalRoutingLinkRecord *l, SPFVertex* v); |
801 void SPFIntraAddStub (GlobalRoutingLinkRecord *l, SPFVertex* v); |
802 uint32_t FindOutgoingTypeId (Ipv4Address a, |
802 uint32_t FindOutgoingInterfaceId (Ipv4Address a, |
803 Ipv4Mask amask = Ipv4Mask("255.255.255.255")); |
803 Ipv4Mask amask = Ipv4Mask("255.255.255.255")); |
804 |
804 |
805 // Local cache of the Ipv4GlobalRouting objects, indexed by nodeId |
805 // Local cache of the Ipv4GlobalRouting objects, indexed by nodeId |
806 typedef std::list< std::pair< uint32_t, Ptr<Ipv4GlobalRouting> > > Ipv4GlobalRoutingList; |
806 typedef std::list< std::pair< uint32_t, Ptr<Ipv4GlobalRouting> > > Ipv4GlobalRoutingList; |
807 void AddGlobalRoutingProtocol (uint32_t nodeId, Ptr<Ipv4GlobalRouting> proto); |
807 void AddGlobalRoutingProtocol (uint32_t nodeId, Ptr<Ipv4GlobalRouting> proto); |