Date: 28 Mar 96 06:33:55 EST From: Tony Jeffree <100271.522@compuserve.com> To: 802-1 Subject: Priority control in 802.1p Am forwarding the attached mesage from HP giving clarification of the priority handling scheme that John Grinham presented in La Jolla. In the absence of any other comments on this subject, I will assume that the scheme described is an acceptable change to be incorporated in 802.1p/D3. Regards, Tony. ----- Forwarded Message ----- TO: Tony Jeffree, 100271,522 CC: [unknown], INTERNET:JRG@HPLB.HPL.HP.COM [unknown], INTERNET:PK@HPLB.HPL.HP.COM FROM: "David Addison", INTERNET:addy@hplb.hpl.hp.com DATE: 27/03/96, 19:35 Re: Priority control in 802.1p Tony, included is some more detail on the Priority control scheme proposed by John at the last IEEE meeting. In the GARP priority control section, we have had real trouble trying to define what happens when there are both Static Group Definition Entries and Dynamic Group Recipient Entries for the same MAC address. John said that the problem of describing the interaction of dynamic and static entries was raised at the meeting, have you received any suggestions on this matter ? So, to explain what we want, we have assumed two logical FD tables; one static and one dynamic. These two are merged using a set of rules to define the hardware encoded Forwarding Database. Yours, David. Priority control in IEEE 802.1p D2 ---------------------------------- Forwarding Process ------------------ 3.7.3 Regenerating User Priority The Filtering Database shall be used to determine the user_priority of an M_UNITDATA.request primitive, on the basis of the destination MAC address. If the Filtering Database is unable to determine the user_priority, i.e. the option is not implemented in the Filtering Database, or the Filtering Database does not contain user_priority information for that destination MAC address, then the user_priority of an M_UNITDATA.request primitive shall be; Mode: FORWARD_WITH_INCOMING_PRIORITY == False Set to the value of the Outbound User Priority for the transmission Port. If the Bridge does not support the Outbound User Priority feature, then the default values as specified in Table 3-1 of IEEE 802.1D-1990 shall be used. Mode: FORWARD_WITH_INCOMING_PRIORITY == True Set to the value of the user_priority of the corresponding M_UNITDATA.indication, if supplied, else as Mode (a). Mode can be set by Bridge management, the default shall be FORWARD_WITH_INCOMING_PRIORITY=False. Summary of Forwarding Process ----------------------------- /* * Here FD denotes the merged Forwarding Database (hardware encoded) */ lookup destination MAC address in FD if (FD_entry == True && FD_entry.user_priority is supported && FD_entry.user_priority != unspecified) { M_UNITDATA.request.user_priority = FD_entry.user_priority } else { if (FORWARD_WITH_INCOMING_PRIORITY == True) { if (M_UNITDATA.indication.user_priority != unspecified) { M_UNITDATA.request.user_priority = M_UNITDATA.indication.user_priority } else { M_UNITDATA.request.user_priority = transmission_port.user_priority } } else { M_UNITDATA.request.user_priority = transmission_port.user_priority } } GARP priority control --------------------- 3.9.4 (e) Updating Filtering Database Entries If a Static Group Definition Entry exists for a given MAC address, any Dynamic Group Recipient Entry created for the same MAC address shall be consistent with the information contained in the static entry. In other words, the set of Ports in the dynamic entry shall be a subset of (or equal to) the set of Ports in the static entry, and if the static entry contains a value of user_priority, that value shall appear in the dynamic entry. [NOTE: In 802.1D-1990, Dynamic and Static Entries cannot coexist for the same MAC address in the FD (see 3.8 case 3)] 9.7.2.3.2 (c) The user_priority value shall be set to the user_priority value specified in a Static Group Definition Entry for the Group. If no Static Group Definition Entry exists for the Group or the Filtering Database does not support user_priority, then the user_priority value shall be set as follows; Mode: USE_GARP_PRIORITY == False Set to the value unspecified (see 2.5.1 IEEE 802.1D-1990). Mode: USE_GARP_PRIORITY == True Set to the value received in the Join PDU. Mode can be set by Bridge management, the default setting shall be USE_GARP_PRIORITY=False. Summary of GARP entry change/addition ------------------------------------- /* * NOTE: We assume two logical FD tables here, one static and * one dynamic. The merging rules are embedded in this code, * which define what appears in the hardware encoded Forwarding * Database FD. */ lookup Group MAC address in static_FD if (static_FD_entry == True && static_FD_entry.user_priority is supported && static_FD_entry.user_priority != unspecified) { FD_entry.user_priority = static_FD_entry.user_priority } else { if (USE_GARP_PRIORITY == True) { dynamic_FD_entry.user_priority = JOIN_PDU.user_priority FD_entry.user_priority = dynamic_FD_entry.user_priority } else { FD_entry.user_priority = unspecified } } -- David Addison Hewlett-Packard Laboratories, NTD addy@hplb.hpl.hp.com Filton Road, Stoke Gifford, Bristol, BS12 6QZ Tel: +44 (0)117 922 9543 Fax: +44 (0)117 9228924