📄 rfc2102.txt
字号:
Shared Tree Data Forwarding: Packets sent from the source for group G contain the Flow-id used by the sender(s) and receiver(s) for setting up the delivery tree. The packets from the sender are sent to the RP where they are multicast, using the state created for the flow, into the delivery tree rooted at the RP to all of the receivers that did a Tree-Join.5.4 Switching to a Source-Rooted Shortest Path Tree There are two parts involved in switching to a Source-Rooted Shortest Path Tree - the receiver-source communications wherein the receiver joins a multicast delivery tree rooted at the source and the receiver-RP communications wherein the receiver leaves the shared tree. Receiver-Source Communications: An endpoint E that is receiving packets through the shared tree from source S has the option of switching to a delivery tree rooted at the source such that packets from S to E traverse the shortest path (using whatever metric). The endpoint representative of E obtains the flow-id to be used for the flow. The flow-id is constructed equivalently to the tuple (Source-EID, G). Note that the flow-id must be unique to the particular multicast flow. This is not the only method or perhaps even the best method for obtaining a flow id. Alternate methods for obtaining the flow-id are discussed in section 5.5. The representative for E initiates a Tree-Join toward S with NMFReq fields as follows: o S-EID : EID of the Endpoint E. o T-EID : EID of the source. o Flow-id : Flow id for the multicast (obtained as mentioned above). o Code : Join.Ramanathan Informational [Page 18]RFC 2102 Nimrod Multicast Support February 1997 o Direction : REVERSE. o Source Route : To obtain the route, the route agent is queried for a shortest path route (based on the chosen metric, typically, the delay) from the source to the endpoint. We note that the quality of the route is constrained by the amount of routing information available, directly or indirectly, to the route agent. The Source Route is the reverse of the route thus obtained. A comment on the difference between the shortest-path trees obtained using the RPF tree as in [DEF+94b, DC90] and the trees that are be obtained here. When using the RPF scheme, the packets from the source S to the endpoint E follow a path that is the shortest path from E to S. This is the desired path if and only if the path is symmetric in either direction. However, in the mechanism described here for Nimrod, the packets do follow the "actual" shortest path from S to E whether or not the path is symmetric. The NMFRep fields are obvious. Receiver-RP Communications: After the receiver has joined the source-rooted tree, it can optionally disassociate itself from the shared tree. This is done by initiating a Tree-Leave procedure. The representative sends a NMFReq packet toward the RP with the fields as follows. o S-EID : The EID of the endpoint wishing to leave the shared tree. o T-EID : The RP-EID. o Flow-id : The flow-id it used to join the shared tree. o Code : Prune. o Direction : REVERSE. o Source Route : Obtained as for the Tree-Join. The prune packet is processed by the intermediate forwarding agents as mentioned in section 5.2. When the receiver gets back the NMFRep packet, the receiver has left the shared tree. Source Tree Data Forwarding: Packets from the source contain the flow-id that was used to join the source tree for a given multicast group. Forwarding agents simply use the state created by the Tree- Join procedure in order to duplicate and forward packets toward the receivers.Ramanathan Informational [Page 19]RFC 2102 Nimrod Multicast Support February 19975.5 Miscellaneous Issues Obtaining the Flow-Id: In the above scheme the flow-id for a particular multicast group G was obtained by combining the RP-EID and the group set-id (G-SID) (in case of shared tree) or by combining the Source-EID and the G-SID (in case of source-based tree). A disadvantage of this approach is that the bit-length of EID/SID is potentially high (more than 64 bits) and thus the flow-id could be very long. While there do exist bit-based data structures and search algorithms (such as Patricia Trees) that may be used for an efficient implementation, it is worth considering some other methods in lieu of using the EID/SID combination. We describe some methods below :1. For shared trees, the flow-id for a particular group G may be stored and updated in the association database. Since we have to use the association database anyway to obtain the RP-EID, these does not cause much additional burden. However, this cannot be used efficiently for source-based trees because we need a flow-id for each combination of Source and Group.2. The flow-id for shared trees could be done as above. When the sender does an RP-Register, it could send the RP the flow-id that it wishes to be used by receivers when they switch to a source-based tree. This could be included in the RP-Register message. The RP could then multicast that flow-id to all receivers in a special packet. When the receivers wish to switch, they use that flow-id. This needs the definition of the "special" packet.3. The flow-id is handed out only by the source (for source-based trees) or the RP (for shared trees). The receivers use a "dummy" flow-id in the NMFReq when doing a Tree-Join. The correct flow-id to be used is returned in the NMFRep message generated by the forwarding agent where the new branch meets the existing tree. Forwarding agents in the path of the NMFRep packet update the state information by rewriting the dummy flow-id by the correct flow-id contained in the NMFRep packet. This requires the re-definition of the NMFRep packet. Note that now there must be space for two flow-ids in the NMFRep packet - one for the "dummy" flow-id and the other for the "correct" flow-id that must replace the dummy flow-id. We claim that each of the above schemes achieves synchronization in the flow-id in various parts of the internetwork and that each flow- id is unique to the multicast delivery tree. A formal proof of these claims is beyond the scope of this document.Ramanathan Informational [Page 20]RFC 2102 Nimrod Multicast Support February 1997 Dense Mode Multicast: The PIM architecture [DEF+94a] includes a multicast protocol when the group membership is densely distributed within the internetwork. In this mode, no Rendezvous Points are used and a source rooted tree is formed based on Reverse Path Forwarding in a manner similar to that of DVMRP [DC90]. We do not give details of how Nimrod can implement Dense Mode Multicast here. Multiple RPs: Our discussion above has been based on the assumption that there is one RP per group. PIM allows more than one RP per group. We do not discuss multiple-RP PIM here.6 Security Considerations Security issues are not discussed in this memo.7 Summaryo Nimrod does not specify a particular multicast route generation algorithm or state creation procedure. Nimrod can accommodate diverse multicast techniques and leaves the choice of the technique to the particular instantiation of Nimrod.o A solution for multicasting within Nimrod should be capable of: - Scaling to large networks, large numbers of multicast groups and large multicast groups. - Supporting policy, including quality of service and access restrictions. - Resource sharing. - Interoperability with other solutions.o Multicasting typically requires the setting up of state in intermediate routers for packet forwarding. The state setup may be initiated by the sender (e.g., IDPR), by the receiver (e.g., CBT), by both (e.g., PIM) or by neither. The architecture of Nimrod provides sufficient flexibility to accommodate any of these approaches.o A receiver-initiated multicast protocol, PIM, is being designed by the IDMR working group of the IETF. The facilities provided by Nimrod make the use of PIM as a multicast protocol quite straightforward.Ramanathan Informational [Page 21]RFC 2102 Nimrod Multicast Support February 19978 References[BFC93] A. J. Ballardie, P. F. Francis, and J. Crowcroft. Core based trees. In Proceedings of ACM SIGCOMM, 1993.[CCS96] Castineyra, I., Chiappa, N., and M. Steenstrup, "The Nimrod Routing Architecture", RFC 1992, August 1996.[DC90] S. Deering and D. Cheriton. Multicast routing in datagram internetworks and extended lans. ACM Transactions on Computer Systems, pages 85--111, May 1990.[DEF+94a] Deering, S., Estrin, D., Farinacci, D., Jacobson, V., Liu, C., and L. Wei, "Protocol Independent Multicast (PIM) : Motivation and Architecture, Work in Progress.[DEF+94b] Deering, S., Estrin, D., Farinacci, D., Jacobson, V., Liu, C., and L. Wei, "Protocol Independent Multicast (PIM) : Sparse Mode Protocol Specification, Work in Progress.[DEFJ93] Deering, S., Estrin, D., Farinacci, D., and V. Jacobson, "IGMP router extensions for routing to sparse multicast groups, Work in Progress.[DM78] Y. K. Dalal and R. M. Metcalfe. Reverse path forwarding of broadcast packets. Communications of the ACM, 21(12), pages 1040--1048, 1978.[Moy92] Moy, J., "Multicast Extensions to OSPF, RFC 1584, March 1994.[RS96] Ramanathan, S., and M. Steenstrup, "Nimrod functional and protocol specifications, Work in Progress.[Ste] Steenstrup, M., "Inter-domain policy routing protocol specification: Version 2", Work in Progress.Ramanathan Informational [Page 22]RFC 2102 Nimrod Multicast Support February 19979 Acknowledgements We thank Isidro Castineyra (BBN), Charles Lynn (BBN), Martha Steenstrup (BBN) and other members of the Nimrod Working Group for their comments and suggestions on this memo.10 Author's Address Ram Ramanathan BBN Systems and Technologies 10 Moulton Street Cambridge, MA 02138 Phone: (617) 873-2736 EMail: ramanath@bbn.comRamanathan Informational [Page 23]
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -