WO2011160300A1 - 组播实现方法、装置和系统 - Google Patents

组播实现方法、装置和系统 Download PDF

Info

Publication number
WO2011160300A1
WO2011160300A1 PCT/CN2010/074376 CN2010074376W WO2011160300A1 WO 2011160300 A1 WO2011160300 A1 WO 2011160300A1 CN 2010074376 W CN2010074376 W CN 2010074376W WO 2011160300 A1 WO2011160300 A1 WO 2011160300A1
Authority
WO
WIPO (PCT)
Prior art keywords
message
igmp
multicast group
igmp message
multicast
Prior art date
Application number
PCT/CN2010/074376
Other languages
English (en)
French (fr)
Inventor
黄晓锋
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP10853443.9A priority Critical patent/EP2587755B1/en
Priority to ES10853443.9T priority patent/ES2584963T3/es
Priority to CN201080013052.2A priority patent/CN102598616B/zh
Priority to PCT/CN2010/074376 priority patent/WO2011160300A1/zh
Publication of WO2011160300A1 publication Critical patent/WO2011160300A1/zh
Priority to US13/551,229 priority patent/US8971324B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1886Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership

Definitions

  • the present invention relates to the field of network communication technologies, and in particular, to multicast technologies.
  • Multicast Listener is usually used in the multicast implementation process.
  • Discovery Proxy Multicast Listener Discovery Agent, MLD Proxy
  • MLD Proxy Multicast Listener Discovery Agent
  • Group Management Protocol Internet Group Management Protocol, IGMP
  • IGMP Internet Group Management Protocol
  • MLD proxy terminates the IGMP messages of the user equipment. Therefore, the requirements of the global network are not met.
  • the network needs to perform statistics and analysis on the global user according to the on-demand behavior of the user equipment.
  • the network provides the network.
  • the NSP needs to provide a transparent channel for the content provider (ISP) to enable the ISP to obtain IGMP messages from the user equipment.
  • ISP content provider
  • the multicast implementation method, device, and system provided by the embodiments of the present invention reduce the packet processing pressure of the network device and meet the requirements of the IGMP message in the actual network.
  • the identifier is used by the subsequent entity to determine, according to the identifier
  • the IGMP message is not multicast.
  • the IGMP message is not the first one of the multicast group or the last one of the multicast group, the IGMP message is not multicast according to the identifier in the IGMP message. Processing, forwarding the IGMP message.
  • the first module receives or generates an Internet Group Management Protocol (IGMP) message;
  • IGMP Internet Group Management Protocol
  • a difference identifier module configured to determine, in the IGMP message, whether the IGMP message is the first join message of the multicast group or the last leave message of the multicast group; the identifier is used for subsequent The entity does not process the IGMP message when it is determined that the IGMP message is not the first one of the multicast group or the last one of the multicast group.
  • the first sending module is configured to forward the IGMP message to the subsequent entity.
  • a receiving module configured to receive an Internet Group Management Protocol (IGMP) message;
  • IGMP Internet Group Management Protocol
  • the sorting module is configured to determine, according to the identifier in the IGMP message, whether the IGMP message is the first join message of the multicast group or the last leave message of the multicast group;
  • the processing module is configured to: when the sorting module determines that the IGMP message is the first joining message of the multicast group or the last leaving message of the multicast group, the IGMP message received by the receiving module The multicast processing is performed, and when the sorting module determines that the IGMP message is not the first joining message of the multicast group or the last leaving message of the multicast group, the receiving module does not receive the received message.
  • IGMP messages are multicast processed.
  • the second sending module is configured to forward the IGMP message received by the receiving module.
  • the first device is configured to receive an Internet Group Management Protocol IGMP message, determine, and identify, in the IGMP message, whether the IGMP message is a first packet, where the first packet includes: a multicast group A last packet leaving the packet or the multicast group.
  • the identifier is used by the subsequent entity to determine that the IGMP message is not the first packet according to the identifier. Forwarding the IGMP message;
  • the second device is configured to receive the IGMP message forwarded by the first device, and determine, according to the identifier in the IGMP message, that the IGMP message is the first join message or the multicast group of the multicast group.
  • the IGMP message is multicast, and the IGMP message is forwarded, and the IGMP message is determined not to be the multicast group according to the identifier in the IGMP message.
  • the IGMP message is not processed and the IGMP message is forwarded.
  • the multicast implementation system includes: a first network device, a second network device, and a final receiving device, where the first network device and the final receiving device are connected by at least one level of the second network device. ;
  • the first network device is configured to receive or generate an Internet Group Management Protocol IGMP message, and determine, in the IGMP message, whether the IGMP message is the first one of the multicast group or the multicast group. The last one leaves the message; the IGMP message is forwarded.
  • IGMP message is forwarded.
  • a second network device configured to receive an IGMP message sent by the first network device or an upstream second network device, and determine, according to the identifier in the IGMP message, that the IGMP message is a multicast group
  • the IGMP packet is multicast and the IGMP packet is forwarded to the downstream node.
  • the identifier is determined according to the identifier in the IGMP packet.
  • the final receiving device is configured to receive and store an IGMP message sent by the second upstream network device in the last stage.
  • the network device or the downstream network device can be known whether the IGMP packet is the first one of the multicast group or the last one of the multicast group. You need to perform multicast processing on IGMP messages. This prevents the network device or the downstream network device from performing multicast processing on all IGMP messages. This reduces the packet processing pressure of the network devices.
  • the IGMP messages are forwarded.
  • the final receiving device can learn the IGMP message in the network, avoiding the phenomenon that the global user's statistics and analysis cannot be performed on the on-demand behavior of the user equipment, and the NSP cannot provide a transparent channel for the ISP; thus, the embodiment can The requirements for the packet processing capability of the network device are reduced, and the requirements for IGMP messages in the actual network are met.
  • FIG. 1 is a flowchart of a multicast implementation method according to Embodiment 1 of the present invention.
  • FIG. 2 is a flowchart of a multicast implementation method according to Embodiment 2 of the present invention.
  • FIG. 3 is a schematic diagram of a multicast implementation apparatus according to Embodiment 3 of the present invention.
  • FIG. 4 is a schematic diagram of a multicast implementation apparatus according to Embodiment 4 of the present invention.
  • FIG. 5 is a schematic diagram of a network device according to Embodiment 5 of the present invention.
  • FIG. 5A is a schematic diagram of operations performed by a first device 500 according to Embodiment 5 of the present invention.
  • FIG. 5B is a schematic diagram of operations performed by the second device 510 according to Embodiment 5 of the present invention.
  • FIG. 6 is a schematic diagram of a multicast implementation system according to Embodiment 6 of the present invention.
  • FIG. 6A is a schematic diagram of a specific multicast implementation system according to Embodiment 6 of the present invention.
  • Embodiment 1 A multicast implementation method.
  • the executor of this embodiment may be an access device or other network device.
  • Access devices such as Digital Subscriber Line Access Multiplexer (DSLAM) or Optical Line Terminaton (optical line terminal, OLT), etc.
  • Other network devices such as switches or routers or terminal devices.
  • Terminal devices such as MODEM (modem) or home gateway or Set Top Box (set top box, STB) and so on. The flow of the method is shown in Figure 1.
  • DSLAM Digital Subscriber Line Access Multiplexer
  • OLT optical line terminal
  • Other network devices such as switches or routers or terminal devices.
  • Terminal devices such as MODEM (modem) or home gateway or Set Top Box (set top box, STB) and so on.
  • MODEM modem
  • STB Set Top Box
  • the S100 Receive an IGMP message or generate an IGMP message.
  • the executor of the embodiment is the source end of the IGMP message, such as the STB
  • the S100 generates an IGMP message.
  • the executor of the embodiment is a network device on the source side of the IGMP message
  • the S100 may receive the IGMP message transmitted by the host side.
  • S110 Identifying whether the IGMP message is the first join message of the multicast group and the last leave message of the multicast group, and determining whether the IGMP message is multicast in the IGMP message.
  • the first one of the group joins the packet or the last one of the multicast group leaves the packet.
  • the first join message can be IGMP.
  • the Report message in v2 or the Report message in MLD v1 can also be added to a group of Report messages or MLD in IGMP v3.
  • V2 indicates that a Report message is added to a group.
  • the first leave message may be a Leave message in IGMP v2 or a Leave message in MLD v1, or IGMP.
  • the message in v3 indicates that the report message or MLD is leaving a group.
  • the message in v2 indicates that the report message leaves a group. This embodiment does not limit the first joining message and the specific protocol used in the last leaving message, and the specific name of the message.
  • the IGMP message is added to the IGMP message to distinguish whether the IGMP message is multicast.
  • the first one of the group joins the packet or the last one of the multicast group leaves the packet.
  • the process of adding an IGMP message to the IGMP message may also be: if the IGMP message is the first join message of the multicast group or the last leave message of the multicast group, The IGMP message is added to the specific packet feature identifier. Otherwise, the IGMP message is not added with the identifier.
  • the method of adding the difference identifier to the IGMP message may also be: if the IGMP message is not the first join message of the multicast group or the last leave message of the multicast group (that is, the IGMP message is neither multicast If the first packet of the group is not the last packet of the multicast group, the IGMP message is added to the IGMP message. Otherwise, the IGMP message is not added.
  • the method of adding the difference identifier to the IGMP message may also be: if the IGMP message is the first join message of the multicast group or the last leave message of the multicast group, the IGMP message is added with the specific message feature. Identifies, otherwise, adds an IGMP message to the non-specific message feature identifier.
  • the location of the IGMP message added to the IGMP message can be determined according to the actual situation of the network. That is, the field that has no impact on the network in the IGMP message can be selected to carry the difference identifier.
  • the difference identifier may be included in the type field of the IGMP packet Ethernet encapsulation header, or the difference identifier may be included in the option field of the IP packet header of the IGMP packet. This embodiment does not limit the specific location of the distinctive identifier in the IGMP message, and the specific value.
  • the difference identifier added to the IGMP message is used by the subsequent entity to determine, according to the identifier in the IGMP message, that the IGMP message is not the first one of the multicast group or the last one of the multicast group. If the IGMP message is not processed, the subsequent entity is notified whether the IGMP message is the first one of the multicast group or the last one of the multicast group.
  • the multicast processing is performed on the IGMP packets.
  • the mapping between the port and the multicast group or the mapping between the port and the multicast group is performed.
  • the subsequent entities here may be other boards in the local network device, such as a main control board, or other network devices connected to the local network device. This embodiment does not limit the specific implementation manner of multicast processing, nor does it limit the specific manifestation of subsequent entities.
  • S120 Forwarding an IGMP message, that is, forwarding the IGMP message to the downstream (that is, the subsequent entity).
  • the downstream here may be other boards in the network device, or other network devices connected to the local network device.
  • a packet may be a first join message or a last leave message of a user group for a multicast group, or may be a join message or all leave messages of a user equipment for a multicast group.
  • the user equipment may not need to join the join message except for the first join message of a multicast group, or may not require the user equipment to leave the last leave message for one.
  • the network device can forward the first join message or the last leave message of the user equipment to the multicast network device to the downstream network device connected to it. Moreover, the number of IGMP messages transmitted in the network is reduced.
  • the network device can distinguish different user devices according to address information (such as MAC address) in the IGMP message. This embodiment does not limit the specific implementation manner in which the network device identifies whether the IGMP message is the first join message or the last leave message of a user group.
  • the first embodiment enables the network device or the downstream network to distinguish whether the IGMP message is the first one of the multicast group or the last one of the multicast group.
  • the device can learn whether to process the IGMP messages. This prevents the network device or the downstream network device from performing multicast processing on all IGMP messages. This reduces the packet processing pressure of the network devices. Therefore, the final receiving device can learn the IGMP message in the network, and the global user statistics and analysis processing cannot be performed on the on-demand behavior of the user equipment, and the NSP cannot provide a transparent channel for the ISP.
  • the requirements for the IGMP messages in the actual network are met while the requirements for the packet processing capability of the network device are reduced.
  • Embodiment 2 A multicast implementation method. The flow of the method is shown in Figure 2.
  • S210 Determine, according to the identifier (that is, the difference identifier) in the IGMP message, whether the IGMP message is the first join message of the multicast group or the last leave message of the multicast group, and determine that the IGMP message is a group.
  • the process goes to S220, otherwise, to S230.
  • the specific judgment process of the S210 may be different according to different ways of adding the difference identifier.
  • a specific example is: when it is determined that the IGMP message contains a specific message feature identifier, the IGMP message is determined to be a multicast group. The first one of the first join message or the first leave message of the multicast group is determined to be the first join message of the multicast group when the IGMP message is not included in the IGMP message. The last packet of the text or multicast group leaves the message.
  • Another specific example is: when it is determined that the IGMP message contains the non-specific message feature identifier, it is determined that the IGMP message is not the first join message of the multicast group or the last leave message of the multicast group.
  • the IGMP message is determined to be the first join message of the multicast group or the last leave message of the multicast group.
  • the third specific example is: when it is determined that the IGMP message contains the specific message feature identifier, the IGMP message is determined to be the first join message of the multicast group or the last leave message of the multicast group.
  • the IGMP message contains the non-specific packet feature identifier, it is determined that the IGMP message is not the first join message of the multicast group or the last leave message of the multicast group.
  • This embodiment does not limit the specific implementation manner of determining whether an IGMP message is the first one of the multicast group or the last one of the multicast group according to the difference identifier.
  • S220 Perform multicast processing on the IGMP message to S230.
  • the multicast processing here is as follows: establishing a correspondence between a port and a multicast group, or deleting a correspondence between a port and a multicast group. This embodiment does not limit the specific implementation of multicast processing.
  • the method further includes: removing the IGMP message.
  • the difference identifiers included in the text such as removing specific message feature identifiers, and removing non-specific message feature identifiers. That is to say, the IGMP message forwarded by the S230 may not include the difference identifier.
  • the executor of this embodiment may be an access device or other network device.
  • Access devices such as DSLAM or OLT.
  • Other network devices such as switches or routers.
  • the second embodiment can identify whether the IGMP message is the first one of the multicast group or the last one of the multicast group by using the difference identifier in the IGMP message.
  • You can learn whether the IGMP packets need to be processed in the multicast mode. This prevents the multicast processing of all IGMP messages. This reduces the packet processing pressure of the network devices.
  • the IGMP messages received are forwarded.
  • the device can learn the IGMP messages in the network, and the global user statistics and analysis cannot be performed on the on-demand behavior of the user equipment, and the NSP cannot provide transparent channels for the ISP. Therefore, the embodiment can reduce the network device.
  • the requirements of the packet processing capability are met, and the requirements for IGMP messages in the actual network are met.
  • Embodiment 3 A multicast implementation device, where the device may be installed in an access device or in another network device.
  • Access devices such as DSLAM or OLT.
  • Other network devices such as switches or routers or terminal devices.
  • the structure of the device is shown in Figure 3.
  • the multicast implementation apparatus in FIG. 3 includes: a first module 300, a difference identification module 310, and a first sending module 320.
  • the first module 300 receives or generates an IGMP message.
  • the received IGMP message is an IGMP message transmitted from the host.
  • the difference identification module 310 is configured to determine, in the IGMP message, whether the IGMP message is the first one of the multicast group or the last one of the multicast group, that is, the output of the first module 300. Whether the IGMP message is the first one of the multicast group or the last one of the multicast group.
  • the first join message can be IGMP.
  • the report message in v2 or the report message in MLD v1 can also be added to a group's Report message or MLD in IGMP v3.
  • V2 indicates that a Report message is added to a group.
  • the first leave message may be a Leave message in IGMP v2 or a Leave message in MLD v1, or IGMP.
  • the message in v3 indicates that the report message or MLD is leaving a group.
  • the message in v2 indicates that the report message leaves a group. This embodiment does not limit the first joining message and the specific protocol used in the last leaving message, and the specific name of the message.
  • the difference identifier module 310 is configured to determine whether the IGMP message sent by the first module 300 is the first join message of the multicast group or the last leave message of the multicast group, that is, the difference identifier module 310 performs the IGMP message. The processing of the difference identifier is added to distinguish whether the received IGMP message is the first join message of the multicast group or the last leave message of the multicast group.
  • the difference identification module 310 can perform the method of adding the difference identifier to the IGMP message. For example, if the IGMP message is the first join message of the multicast group or the last leave message of the multicast group, the difference identifier is used. The module 310 adds a specific message feature identifier to the IGMP message.
  • the difference tag module 310 does not add an identifier to the IGMP message. For example, if the IGMP message is not the first one of the multicast group or the multicast group. If the last one leaves the message, the difference identification module 310 adds the non-specific message feature identifier to the IGMP message. Otherwise, the difference identity module 310 does not add an identifier to the IGMP message; for example, if the IGMP message is the first of the multicast group. When a message is added to the last packet of the packet or the multicast group, the difference identification module 310 adds the specific message feature identifier to the IGMP message. Otherwise, the difference identity module 310 adds the non-specific message feature identifier to the IGMP message.
  • the difference identification module 310 may include any one or two of the first identifier submodule 311 and the second identifier submodule 312.
  • the first identifier sub-module 311 is configured to join the IGMP message when the first IGMP message sent by the first module 300 is the first one of the multicast group or the last one of the multicast group. Specific message feature identifier.
  • the second identifier sub-module 312 is configured to: when it is determined that the IGMP message output by the first module 300 is not the first join message of the multicast group or the last leave message of the multicast group, the IGMP message is the IGMP message. Add a non-specific message feature identifier.
  • the difference between the difference identifier module 310, the first identifier sub-module 311, and the second identifier sub-module 312 for adding an IGMP message to the IGMP message may be determined according to the actual situation of the network, that is, the IGMP message may be selected.
  • a field that has no effect on the network to carry the difference identifier may be included in the type field in the IGMP packet Ethernet encapsulation header, or the difference identifier may be included in the IGMP packet.
  • the option field of the IP packet header does not limit the specific location, specific value, and the like of the difference identifier added by the difference identifier module 310, the first identifier submodule 311, or the second identifier submodule 312 in the IGMP message.
  • the difference identifier added by the difference identifier module 310, the first identifier submodule 311, or the second identifier submodule 312 to the IGMP packet is used by the subsequent entity to determine that the IGMP packet is not the first join report of the multicast group according to the identifier.
  • the IGMP packet is not processed.
  • the difference identifier is used to notify the subsequent entity whether the IGMP packet is the first join packet or group of the multicast group. The last one of the broadcast group leaves the packet, so that the subsequent entity can know whether the IGMP packet needs to be multicast.
  • the multicast processing here is as follows: establishing the correspondence between the port and the multicast group or deleting the correspondence between the port and the multicast group. Relationships, etc.
  • the subsequent entities herein may be other boards in the network device where the multicast implementation device of the present embodiment is located, such as a main control board, or other network devices connected to the network device where the multicast implementation device of the embodiment is located. This embodiment does not limit the specific implementation manner of multicast processing, nor does it limit the specific manifestation of subsequent entities.
  • the first sending module 310 is configured to forward the IGMP message processed by the difference identification module 310. That is, the first sending module 310 forwards the IGMP message to the downstream.
  • the downstream device may be another board in the network device where the multicast implementation device of the embodiment is located, or may be another network device (ie, a downstream network device) connected to the network device where the multicast implementation device of the embodiment is located. .
  • the first sending module 310 forwards to the downstream network device when the multicast implementation device of the present embodiment is configured in a network device (such as an access device) above the source end of the IGMP packet.
  • the IGMP message may be the first join message or the last leave message of a user group for a multicast group, or all join messages or all leave messages of a user group for a multicast group.
  • the user equipment may not need to join the join message except for the first join message of a multicast group, or may not require the user equipment to leave the last leave message for one.
  • the first sending module 310 forwards the first joining message or the last leaving message of the user equipment to a multicast group to the downstream network device to meet the specific applications.
  • the first sending module 310 can distinguish different user equipments according to address information (such as a MAC address) in the IGMP message. This embodiment does not limit the specific implementation manner in which the first sending module 310 identifies whether the IGMP message is the first joining message or the last leaving message of a user equipment.
  • the difference identification module 310 in the third embodiment performs the difference identification of whether the IGMP message is the first join message of the multicast group or the last leave message of the multicast group.
  • the network device or the downstream network device where the multicast implementation device is located can learn whether the IGMP message needs to be multicasted, and the network device or the downstream network device where the multicast implementation device is located is configured to perform multicast processing on all IGMP messages.
  • the phenomenon is that the packet processing pressure of the network device is reduced.
  • the first sending module 310 forwards the IGMP message received by the first module 300, so that the final receiving device can learn the IGMP message in the network, thereby avoiding the inability to the user equipment.
  • the on-demand behavior performs the statistics and analysis processing of the global user, and the NSP cannot provide a transparent channel for the ISP. Therefore, the embodiment can reduce the packet processing capability requirement of the network device and meet the IGMP message in the actual network. Demand.
  • Embodiment 4 A multicast implementation device, where the device may be installed in an access device or in another network device. Access devices such as DSLAM or OLT. Other network devices such as switches or routers. The structure of the device is shown in Figure 4.
  • Access devices such as DSLAM or OLT.
  • Other network devices such as switches or routers. The structure of the device is shown in Figure 4.
  • the multicast implementation apparatus in FIG. 4 includes: a receiving module 400, a sorting module 410, a processing module 420, and a second sending module 430.
  • the device may further include: a restoration module 440.
  • the receiving module 400 is configured to receive an IGMP message.
  • the IGMP message is an IGMP message transmitted from the host.
  • the sorting module 410 is configured to determine, according to the difference identifier in the IGMP message received by the receiving module 400, whether the IGMP message is the first joining message of the multicast group or the last leaving message of the multicast group.
  • the specific determination process of the sorting module 410 may be different according to different ways of adding the difference identifier.
  • the sorting module 410 determines the IGMP when determining that the IGMP message contains a specific message feature identifier.
  • the packet is the first one of the multicast group or the last one of the multicast group.
  • the sorting module 410 determines the IGMP message when it determines that the IGMP message does not contain the specific packet identifier. It is not the first one of the multicast group or the last one of the multicast group to leave the packet.
  • the sorting module 410 determines that the IGMP message is not the first one of the multicast group or the multicast group when it is determined that the IGMP message contains the non-specific message feature identifier. The last leaving message, the sorting module 410 determines that the IGMP message is the first joining message or the last group of the multicast group when the IGMP message does not contain the non-specific message feature identifier. A leave message. The third specific example: the sorting module 410 determines that the IGMP message is the first one of the multicast group or the last of the multicast group when it is determined that the IGMP message contains the specific message feature identifier.
  • the sorting module 410 determines that the IGMP message is not the first one of the first join message or the multicast group of the multicast group when the IGMP message contains the non-specific message feature identifier. Leave the message.
  • the embodiment does not limit the specific implementation manner in which the sorting module 410 determines whether the IGMP message is the first join message of the multicast group or the last leave message of the multicast group according to the difference identifier.
  • the processing module 420 is configured to receive, by the receiving module 400, when the IGMP message received by the receiving module 400 is the first joining message of the multicast group or the last leaving message of the multicast group.
  • the received IGMP message is multicast, and the sorting module 410 determines that the IGMP message received by the receiving module 400 is not the first joining message of the multicast group or the last leaving message of the multicast group.
  • the processing module 420 does not perform multicast processing on the IGMP message received by the receiving module 400.
  • the processing module 420 performs multicast processing, for example, the processing module 420 establishes a correspondence between a port and a multicast group, or deletes a correspondence between a port and a multicast group. This embodiment does not limit the specific implementation of the multicast processing of the processing module 420.
  • the second sending module 430 is configured to forward the IGMP message received by the receiving module 400.
  • the restoration module 440 is configured to remove the difference identifier in the IGMP message received by the receiving module 400. For example, the restoration module 440 removes the specific message feature identifier and removes the non- Specific message feature identification, etc.
  • the restoration module 440 transmits the IGMP message after the difference identification is sent to the second sending module 430. At this time, the second sending module 430 forwards the IGMP message transmitted by the restoration module 440, that is, at this time, the second sending module 430
  • the IGMP messages forwarded out do not contain a distinguished identifier.
  • the sorting module 410 in the fourth embodiment can identify whether the IGMP message is the first one of the multicast group or the last of the multicast group by using the difference identifier in the IGMP message.
  • a packet is sent out. Therefore, the processing module 420 can learn whether the IGMP packet needs to be multicast, and the processing module 420 avoids the multicast processing of all the IGMP messages, thereby reducing the packet processing of the network device.
  • the second sending module 430 forwards the IGMP message received by the receiving module 400, so that the final receiving device can learn the IGMP message in the network, and the global user statistics and analysis processing cannot be performed on the on-demand behavior of the user equipment.
  • the NSP can not provide a transparent channel for the ISP. Therefore, the present embodiment can meet the requirements for the IGMP message in the actual network while reducing the packet processing capability of the network device.
  • Embodiment 5 Network equipment.
  • the network device can be an access device or other network device. Access devices such as DSLAM or OLT. Other network devices such as switches or routers. The structure of the network device is as shown in FIG.
  • the network device in FIG. 5 includes a first device 500 and a second device 510.
  • the first device 500 is configured to receive an IGMP message, and determine, in the IGMP message, whether the IGMP message is the first one of the multicast group or the last one of the multicast group, that is, the first packet.
  • the device 500 identifies whether the IGMP message is the first one of the multicast group or the last one of the multicast group.
  • the difference identifier is not used by the subsequent entity to perform multicast processing on the IGMP message when the subsequent entity determines that the IGMP message is not the first one of the multicast group or the last one of the multicast group. That is, the difference identifier is used to notify the second device 510 whether to perform multicast processing on the IGMP message.
  • the first device 500 forwards the IGMP message processed by the difference identification to the second device 510.
  • the structure of the first device 500 can be as described in the above third embodiment, and the description thereof will not be repeated here.
  • the network device shown in the fifth embodiment is a network device having the SNOOPING function
  • a specific example in which the first device 500 performs an operation is as shown in FIG. 5A.
  • the first device 500 performs message capture, and the first device 500 performs SNOOPING processing on the captured message.
  • the SNOOPING process here may include the existing processing operations, and the processing operations related to the present invention may be performed.
  • the method includes: determining whether the packet is the first join message of the multicast group in the IGMP message or the last leave message of the multicast group. When it is determined that the packet is the first one of the multicast group or the last one of the multicast group, the first device 500 performs feature tag processing on the packet, and the signature processing may include: The message adds a specific message feature identifier.
  • the first device 500 may not add any feature identifier to the message. Thereafter, the first device 500 performs a message forwarding process.
  • the packet forwarding process includes: the first device 500 sends a group that adds the specific message identifier to the downstream. The first one of the broadcast group or the last one of the multicast group leaves the packet.
  • the packet forwarding process includes: the first device 500 sends the downstream packet without adding any Feature identification message.
  • the second device 510 is configured to receive the IGMP message forwarded by the first device, and determine, according to the difference identifier in the IGMP message, that the IGMP message is the first join message or the last of the multicast group of the multicast group.
  • the IGMP message is multicast and the IGMP message is forwarded to the downstream.
  • the IGMP message is not the first one of the multicast group.
  • the IGMP message is not multicast and the IGMP message is forwarded to the downstream.
  • the structure of the second device 510 can be as described in the above fourth embodiment, and the description thereof will not be repeated here.
  • the network device shown in the fifth embodiment is a network device having the SNOOPING function
  • a specific example in which the second device 510 performs an operation is as shown in FIG. 5B.
  • the second device 510 performs message sorting processing on the received message, where the message sorting process includes, in addition to the existing processing operations, the processing operations related to the present invention may include: The second device 510 determines whether the received message is an IGMP message containing a specific message feature identifier. When it is determined that the received message is an IGMP message containing a specific message feature identifier, the second device 510 performs SNOOPING processing on the message, where the SNOOPING process is, for example, multicast processing. When it is determined that the received message is an IGMP message that does not contain a specific message feature identifier, the second device 510 may not perform SNOOPING processing on the message.
  • the second device 510 performs feature restoration processing on the IGMP message including the specific message feature identifier.
  • the feature restoration process removes the specific packet feature identifier in the first packet of the multicast group or the last packet of the multicast group.
  • the second device 510 performs packet forwarding processing.
  • the packet forwarding process may include: sending an IGMP message after removing the specific message feature identifier to the downstream, and sending the first one of the first join message or the last one of the multicast group that is not the multicast group to the downstream.
  • IGMP message may include: sending an IGMP message after removing the specific message feature identifier to the downstream, and sending the first one of the first join message or the last one of the multicast group that is not the multicast group to the downstream.
  • FIG. 5A and FIG. 5B The above description for FIG. 5A and FIG. 5B is described by taking the first device 500 and the second device 510 on the same network device as an example. Obviously, the first device 500 and the second device 510 may be disposed in different network devices. In this case, the operations performed by the first device 500 and the second device 510 are still as described above, and the description is not repeated herein. .
  • the first device 500 in the fifth embodiment performs the difference identification by using whether the IGMP message is the first join message of the multicast group or the last leave message of the multicast group.
  • the second device 510 can learn whether the IGMP message needs to be processed by the multicast device, and the second device 510 avoids the multicast processing of all the IGMP messages, and reduces the packet processing pressure of the second device 510.
  • the device 510 forwards the IGMP message, so that the final receiving device can learn the IGMP message in the network, and the global user statistics and analysis cannot be performed on the on-demand behavior of the user equipment, and the NSP cannot provide a transparent channel for the ISP. Therefore, the present embodiment can meet the requirements for the IGMP message in the actual network while reducing the packet processing capability requirements of the network device.
  • Embodiment 6 A multicast implementation system. The system is shown in Figure 6.
  • the multicast implementation system in FIG. 6 includes a first network device (ie, a lower layer node) 600, a second network device (ie, a high layer node) 610, and a final receiving device 620.
  • the lower layer node 600 and the final receiving device 620 are connected by at least one upper layer node 610.
  • the location of the low-level node 600 may be various.
  • the lower-layer node 600 may be located at a location of the terminal device or an access device above the terminal device, and the location of the lower-layer node 600 may be set according to actual needs.
  • the final receiving device 620 is a node that needs to collect IGMP messages in the network.
  • FIG. 6 shows only one lower layer node 600 and one higher layer node 610, in an actual network application, the system may include a plurality of lower layer nodes 600, and may also include a plurality of upper layer nodes 610.
  • the plurality of lower layer nodes 600 may be connected to the final receiving device 620 through one or more upper nodes 610, and one lower level node 600 and the final receiving device 620 may be connected by one or more high level nodes 610.
  • the low-layer node 600 is configured to receive an IGMP message sent by the host side or generate an IGMP message, and determine whether the IGMP message is the first one of the multicast group or the multicast group in the IGMP message. The last one leaves the packet, that is, the lower layer node 600 performs a distinguishing identifier for whether the IGMP packet is the first packet. Thereafter, the lower layer node 600 forwards the IGMP message to the downstream upper node 610.
  • the high-level node 610 is configured to receive the IGMP message sent by the lower-layer node 600 or the upstream high-layer node 610, and determine that the IGMP message is the first join message or group of the multicast group according to the difference identifier in the IGMP message.
  • the IGMP message is multicast and the IGMP message is forwarded to the downstream node.
  • the IGMP message is determined not to be the multicast group according to the difference identifier in the IGMP message.
  • the downstream node here is the downstream high-level node 610 or the final receiving device 620.
  • the final receiving device 620 is configured to receive and store an IGMP message sent by the last-level upstream high-level node 610.
  • the last-level upstream high-level node 610 in the system may also remove the difference identifier in the IGMP message forwarded to the final receiving device 620.
  • the device dedicated to removing the difference identifier in the IGMP message may be set, so that the IGMP message forwarded by the upper node 610 to the final receiving device is first transmitted to the device, and the device performs the removal. After the operation of the identification is differentiated, the device forwards the IGMP message with the distinguished identifier to the final receiving device 620.
  • the low-level node 600 in the sixth embodiment performs the difference identification on whether the IGMP message is the first one of the multicast group or the last one of the multicast group.
  • the node 610 can learn whether the IGMP message needs to be processed by the multicast, and the high-level node 610 avoids the multicast processing of all the IGMP messages, and reduces the processing pressure of the high-level node 610.
  • the high-level node 610 forwards the IGMP.
  • the message is such that the final receiving device 620 can receive and store the IGMP message in the network, thereby avoiding the phenomenon that the user device cannot perform the statistics and analysis processing of the global user on the on-demand behavior, and the NSP cannot provide a transparent channel for the ISP;
  • the requirements for the packet processing capability of the network device are reduced, and the requirements for the IGMP message in the actual network are met.
  • FIG. 6A a specific example of the multicast implementation system of the sixth embodiment is as shown in FIG. 6A.
  • the system includes a plurality of STBs 601, a plurality of SNOOPING devices 611, and a final receiving device 620.
  • the STB 601 may correspond to the lower layer node 600
  • the SNOOPING device 611 may correspond to the upper layer node 610.
  • the STB601 generates an IGMP message and identifies the IGMP message. If the first packet of the multicast group is added, the IGMP message of the last packet of the multicast group is added with a specific packet feature identifier. Thereafter, the STB 601 forwards the IGMP message to the downstream SNOOPING device 611 to which it is connected.
  • the SNOOPING device 611 receives the IGMP message sent by the STB 601, and determines that the IGMP message is the first join message of the multicast group or the last leave message of the multicast group according to the difference identifier in the IGMP message. Multicasting the IGMP message and forwarding the IGMP message to the downstream SNOOPING device 611; determining that the IGMP message is not the first join message or multicast of the multicast group according to the difference identifier in the IGMP message. When the last packet of the group leaves the packet, the IGMP message is not forwarded to the downstream SNOOPING device 611.
  • the final receiving device 620 is configured to receive and store an IGMP message sent by the last-stage SNOOPING device 611.
  • the last-stage upstream SNOOPING device 611 in the system may also remove the difference identifier in the IGMP message forwarded to the final receiving device 620, in the case that the final receiving device 620 is configured to receive the IGMP message.
  • the present invention can be implemented by means of software plus a necessary hardware platform, and of course, all can be implemented by hardware, but in many cases, the former is better.
  • Implementation Based on such understanding, all or part of the technical solution of the present invention contributing to the background art may be embodied in the form of a software product that can be used to perform the above-described method flow.
  • the computer software product can be stored in a storage medium, such as a ROM/RAM, a magnetic disk, an optical disk, etc., including instructions for causing a computer device (which can be a personal computer, server, or network device, etc.) to perform various embodiments of the present invention.

Description

组播实现方法、装置和系统
技术领域
本发明涉及网络通讯技术领域,具体涉及组播技术。
发明背景
在组播实现过程中通常会利用到SNOOPING(嗅探)或者Multicast Listener Discovery Proxy(组播侦听发现代理,MLD代理)技术。
在实现本发明的过程中,发明人发现:在采用SNOOPING技术时,由于采用SNOOPING的网络设备之上的其它网络设备需要对接收到的所有Internet Group Management Protocol(因特网组管理协议,IGMP)报文(如IGMP加入报文和IGMP离开报文等)进行组播处理,因此,对网络设备的报文处理能力要求高;在采用MLD代理技术时,由于MLD代理会终结用户设备的IGMP报文,因此,不能满足实际网络中对IGMP报文的需求,例如,网络中需要根据用户设备的点播行为进行全局用户的统计和分析处理,再例如,网络提供商(NSP)需要为内容提供商(ISP)提供透明通道,以使ISP能够获得用户设备的IGMP报文等。
发明内容
本发明实施方式提供的组播实现方法、装置和系统,在减轻了网络设备的报文处理压力的同时,满足了实际网络中对IGMP报文的需求。
本发明实施方式提供的一种组播实现方法,包括:
接收或者产生因特网组管理协议IGMP报文;
判断并在所述IGMP报文中标识所述IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文;所述标识用于后续实体根据该标识判断出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行组播处理;
向所述后续实体转发所述IGMP报文。
本发明实施方式提供的另一种组播实现方法,包括:
接收因特网组管理协议IGMP报文;
在根据所述IGMP报文中的标识确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对所述IGMP报文进行组播处理,并转发所述IGMP报文;
在根据所述IGMP报文中的标识确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对所述IGMP报文进行组播处理,转发所述IGMP报文。
本发明实施方式提供的一种组播实现装置,包括:
第一模块,接收或者产生因特网组管理协议IGMP报文;
区别标识模块,用于判断并在所述IGMP报文中标识所述IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文;所述标识用于后续实体根据该标识判断出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行处理;
第一发送模块,用于向所述后续实体转发所述IGMP报文。
本发明实施方式提供的另一种组播实现装置,包括:
接收模块,用于接收因特网组管理协议IGMP报文;
分拣模块,用于根据所述IGMP报文中的标识确定所述IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文;
处理模块,用于在所述分拣模块确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对所述接收模块接收的IGMP报文进行组播处理,在所述分拣模块确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对所述接收模块接收的IGMP报文进行组播处理;
第二发送模块,用于转发所述接收模块接收到的IGMP报文。
本发明实施方式提供的网络设备,包括:
第一装置,用于接收因特网组管理协议IGMP报文,判断并在所述IGMP报文中标识所述IGMP报文是否为第一报文;所述第一报文包括:组播组的第一个加入报文或组播组的最后一个离开报文;所述标识用于后续实体根据该标识判断出所述IGMP报文不为第一报文时,不对该IGMP报文进行组播处理;转发所述IGMP报文;
第二装置,用于接收第一装置转发来的IGMP报文,在根据所述IGMP报文中的标识确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对所述IGMP报文进行组播处理,并转发所述IGMP报文,在根据所述IGMP报文中的标识确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对所述IGMP报文进行组播处理,转发所述IGMP报文。
本发明实施方式提供的组播实现系统,包括:第一网络设备、第二网络设备和最终接收设备,所述第一网络设备与所述最终接收设备之间通过至少一级第二网络设备连接;
第一网络设备,用于接收或者产生因特网组管理协议IGMP报文,判断并在所述IGMP报文中标识所述IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文;转发所述IGMP报文。
第二网络设备,用于接收所述第一网络设备或者上游第二网络设备发送来的IGMP报文,在根据所述IGMP报文中的标识确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对所述IGMP报文进行组播处理并向下游节点转发所述IGMP报文;在根据所述IGMP报文中的标识确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对所述IGMP报文进行组播处理并向下游节点转发所述IGMP报文;
最终接收设备,用于接收并存储最后一级上游第二网络设备发送来的IGMP报文。
通过上述技术方案的描述可知,通过判断并标识为IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文,使本网络设备或者下游网络设备可以获知是否需要对IGMP报文进行组播处理,避免了本网络设备或者下游网络设备对所有IGMP报文均进行组播处理的现象,减轻了网络设备的报文处理压力;通过转发接收到的IGMP报文,使最终接收设备可以获知网络中的IGMP报文,避免了不能对用户设备的点播行为进行全局用户的统计和分析处理、以及NSP不能够为ISP提供透明通道等现象;从而本实施例能够在降低对网络设备的报文处理能力要求的同时,满足实际网络中对IGMP报文的需求。
附图简要说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一的组播实现方法流程图;
图2是本发明实施例二的组播实现方法流程图;
图3是本发明实施例三的组播实现装置示意图;
图4是本发明实施例四的组播实现装置示意图;
图5是本发明实施例五的网络设备示意图;
图5A是本发明实施例五的第一装置500执行的操作示意图;
图5B是本发明实施例五的第二装置510执行的操作示意图;
图6是本发明实施例六的组播实现系统示意图;
图6A是本发明实施例六的一个具体的组播实现系统示意图。
实施本发明的方式
下面通过实施例对本发明的具体实现过程进行例举说明。显然,下面所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一、组播实现方法。本实施例的执行主体可以为接入设备,也可以为其它网络设备。接入设备如Digital Subscriber Line Access Multiplexer(数字用户线接入复用器,DSLAM)或者Optical Line Terminaton(光线路终端,OLT)等。其它网络设备如交换机或者路由器或者终端设备等。终端设备如MODEM(调制解调器)或者家庭网关或者Set Top Box(机顶盒,STB)等。该方法的流程如附图1所示。
S100、接收IGMP报文或者产生IGMP报文。当本实施例的执行主体为STB等IGMP报文的源端时,S100为产生IGMP报文。当本实施例的执行主体为IGMP报文的源端之上的网络设备时,S100可以为接收主机侧传输来的IGMP报文。
S110、为IGMP报文是否为组播组的第一个加入报文和组播组的最后一个离开报文进行区别标识,即判断并在该IGMP报文中标识该IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文。第一个加入报文具体可以为IGMP v2中的Report(报告)报文或者MLD v1中的Report报文,也可以为IGMP v3中的表示加入某个组的Report报文或者MLD v2中表示加入某个组的Report报文。第一离开报文具体可以为IGMP v2中的Leave(离开)报文或者MLD v1中的Leave报文,也可以为IGMP v3中的表示离开某个组的Report报文或者MLD v2中的表示离开某个组的Report报文。本实施例不限制第一个加入报文以及最后一个离开报文具体采用的协议以及报文的具体名称等。
为IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文进行标识也就是对IGMP报文进行增加区别标识的处理,以区分IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文。
对IGMP报文进行增加标识(该标识也可以称为区别标识)的处理可以为:如果IGMP报文是组播组的第一个加入报文或组播组的最后一个离开报文,则给IGMP报文加入特定报文特征标识,否则,不给IGMP报文增加标识。
对IGMP报文进行增加区别标识的处理也可以为:如果IGMP报文不是组播组的第一个加入报文或组播组的最后一个离开报文(即:该IGMP报文既不是组播组的第一个加入报文,也不是组播组的最后一个离开报文),则给IGMP报文加入非特定报文特征标识,否则不给IGMP报文增加标识。
对IGMP报文进行增加区别标识的处理还可以为:如果IGMP报文是组播组的第一个加入报文或组播组的最后一个离开报文,则给IGMP报文加入特定报文特征标识,否则,给IGMP报文加入非特定报文特征标识。
上述给IGMP报文增加的区别标识在IGMP报文中的位置可以根据网络的实际情况来确定,即可以选择IGMP报文中对网络没有影响的字段来承载区别标识。例如,可以将区别标识包含在IGMP报文以太网封装头中的类型字段中,也可以将区别标识包含在IGMP报文的IP报文头的选项字段中。本实施例不限制区别标识在IGMP报文中的具体位置、以及具体取值等。
给IGMP报文增加的区别标识主要用于后续实体根据IGMP报文中的标识判断出该IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行组播处理,即通知后续实体该IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文,从而后续实体可以获知是否需要对该IGMP报文进行组播处理,这里的组播处理如建立端口与组播组的对应关系或者删除端口与组播组的对应关系等。这里的后续实体可以本地网络设备中的其它单板如主控板等,也可以为与本地网络设备连接的其它网络设备。本实施例不限制组播处理的具体实施方式,也不限制后续实体的具体表现形式。
S120、转发IGMP报文,即向下游(即上述后续实体)转发IGMP报文。这里的下游可以是本网络设备中的其它单板,也可以是与本地网络设备连接的其它网络设备。
针对本实施例需要特别说明的是,在本实施例的执行主体为IGMP报文的源端之上的网络设备(如接入设备)时,该网络设备向与其连接的下游网络设备转发的IGMP报文可以是一个用户设备针对一个组播组的第一个加入报文或者最后一个离开报文,也可以是一个用户设备针对一个组播组的所有加入报文或者所有离开报文。在某些具体应用中,可能会不需要用户设备针对一个组播组的除第一个加入报文之外的其它加入报文,也可能会不需要用户设备针对一个的除最后一个离开报文之外的其它离开报文,因此,网络设备向与其连接的下游网络设备转发一个用户设备针对一个组播组的第一个加入报文或者最后一个离开报文的技术方案可以满足这些具体应用,而且,减少了网络中IGMP报文的传输数量。网络设备可以根据IGMP报文中的地址信息(如MAC地址)等来区分不同的用户设备。本实施例不限制网络设备识别出IGMP报文是否为一个用户设备针对一个组播组的第一个加入报文或者最后一个离开报文的具体实现方式。
从上述实施例一的描述可知,实施例一通过为IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文进行区别标识,使本网络设备或者下游网络设备可以获知是否需要对IGMP报文进行组播处理,避免了本网络设备或者下游网络设备对所有IGMP报文均进行组播处理的现象,减轻了网络设备的报文处理压力;通过转发IGMP报文,使最终接收设备可以获知网络中的IGMP报文,避免了不能对用户设备的点播行为进行全局用户的统计和分析处理、以及NSP不能够为ISP提供透明通道等现象;从而本实施例能够在降低对网络设备的报文处理能力要求的同时,满足实际网络中对IGMP报文的需求。
实施例二、组播实现方法。该方法的流程如附图2所示。
S200、接收IGMP报文。
S210、根据IGMP报文中的标识(也即区别标识)判断IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文,在判断出IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,到S220,否则,到S230。
S210的具体判断过程可以根据增加区别标识的不同方式而有所不同,一个具体的例子:在判断出IGMP报文中包含有特定报文特征标识时,确定出该IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文,在判断出IGMP报文中没有包含特定报文特征标识时,确定出该IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文。另一个具体的例子:在判断出IGMP报文中包含有非特定报文特征标识时,确定出该IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文,在判断出IGMP报文中没有包含非特定报文特征标识时,确定出该IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文。第三个具体的例子:在判断出IGMP报文中包含有特定报文特征标识时,确定出该IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文,在判断出IGMP报文中包含非特定报文特征标识时,确定出该IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文。本实施例不限制根据区别标识判断IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文的具体实现方式。
S220、对IGMP报文进行组播处理,到S230。这里的组播处理如建立端口与组播组的对应关系或者删除端口与组播组的对应关系等。本实施例不限制组播处理的具体实施方式。
S230、转发该IGMP报文。
可选的,在S210判断出IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文之后,在S230转发IGMP报文之前,还可以包括:去除IGMP报文中包含的区别标识,如去除特定报文特征标识、以及去除非特定报文特征标识等。也就是说,S230转发出去的IGMP报文中可以不包含有区别标识。
本实施例的执行主体可以为接入设备,也可以为其它网络设备。接入设备如DSLAM或者OLT等。其它网络设备如交换机或者路由器等。
从上述实施例二的描述可知,实施例二可以通过IGMP报文中的区别标识来识别IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文,因此可以获知是否需要对IGMP报文进行组播处理,避免了对所有IGMP报文均进行组播处理的现象,减轻了网络设备的报文处理压力;通过转发接收到的IGMP报文,使最终接收设备可以获知网络中的IGMP报文,避免了不能对用户设备的点播行为进行全局用户的统计和分析处理、以及NSP不能够为ISP提供透明通道等现象;从而本实施例能够在降低对网络设备的报文处理能力要求的同时,满足实际网络中对IGMP报文的需求。
实施例三、组播实现装置,该装置可以设置于接入设备中,也可以设置于其它网络设备中。接入设备如DSLAM或者OLT等。其它网络设备如交换机或者路由器或者终端设备等。该装置的结构如附图3所示。
图3中的组播实现装置包括:第一模块300、区别标识模块310和第一发送模块320。
第一模块300,接收或者产生IGMP报文。接收的IGMP报文是从主机侧传输来的IGMP报文。
区别标识模块310,用于判断并在IGMP报文中标识该IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文,即:为第一模块300输出的IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文进行区别标识。第一个加入报文具体可以为IGMP v2中的Report报文或者MLD v1中的Report报文,也可以为IGMP v3中的表示加入某个组的Report报文或者MLD v2中表示加入某个组的Report报文。第一离开报文具体可以为IGMP v2中的Leave报文或者MLD v1中的Leave报文,也可以为IGMP v3中的表示离开某个组的Report报文或者MLD v2中的表示离开某个组的Report报文。本实施例不限制第一个加入报文以及最后一个离开报文具体采用的协议以及报文的具体名称等。
区别标识模块310为第一模块300输出的IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文进行区别标识也就是区别标识模块310对IGMP报文进行增加区别标识的处理,以区分接收到的IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文。区别标识模块310对IGMP报文进行增加区别标识的处理方式有多种,例如,如果IGMP报文是组播组的第一个加入报文或组播组的最后一个离开报文,则区别标识模块310给IGMP报文加入特定报文特征标识,否则,区别标识模块310不给IGMP报文增加标识;再例如,如果IGMP报文不是组播组的第一个加入报文或组播组的最后一个离开报文,则区别标识模块310给IGMP报文加入非特定报文特征标识,否则,区别标识模块310不给IGMP报文增加标识;再例如,如果IGMP报文是组播组的第一个加入报文或组播组的最后一个离开报文,则区别标识模块310给IGMP报文加入特定报文特征标识,否则,区别标识模块310给IGMP报文加入非特定报文特征标识。
上述区别标识模块310可以包括:第一标识子模块311和第二标识子模块312中的任意一个或两个。
第一标识子模块311,用于在确定出第一模块300输出的IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,为该IGMP报文加入特定报文特征标识。
第二标识子模块312,用于在确定出第一模块300输出的IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,为该IGMP报文加入非特定报文特征标识。
上述区别标识模块310、第一标识子模块311或者第二标识子模块312给IGMP报文增加的区别标识在IGMP报文中的位置可以根据网络的实际情况来确定,即可以选择IGMP报文中对网络没有影响的字段来承载区别标识。例如,可以区别标识模块310、第一标识子模块311或者第二标识子模块312将区别标识包含在IGMP报文以太网封装头中的类型字段中,也可以将区别标识包含在IGMP报文的IP报文头的选项字段中。本实施例不限制区别标识模块310、第一标识子模块311或者第二标识子模块312为IGMP报文增加的区别标识在IGMP报文中的具体位置、以及具体取值等。
区别标识模块310、第一标识子模块311或者第二标识子模块312给IGMP报文增加的区别标识主要用于后续实体根据该标识判断出IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行组播处理,即该区别标识用于通知后续实体该IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文,从而后续实体可以获知是否需要对该IGMP报文进行组播处理,这里的组播处理如建立端口与组播组的对应关系或者删除端口与组播组的对应关系等。这里的后续实体可以本实施例的组播实现装置所在的网络设备中的其它单板如主控板等,也可以为与本实施例的组播实现装置所在的网络设备连接的其它网络设备。本实施例不限制组播处理的具体实施方式,也不限制后续实体的具体表现形式。
第一发送模块310,用于转发区别标识模块310区别标识处理后的IGMP报文。即第一发送模块310向下游转发IGMP报文。这里的下游可以是本实施例的组播实现装置所在的网络设备中的其它单板,也可以是与本实施例的组播实现装置所在的网络设备连接的其它网络设备(即下游网络设备)。
针对本实施例需要特别说明的是,在本实施例的组播实现装置设置于IGMP报文源端之上的网络设备(如接入设备)中时,第一发送模块310向下游网络设备转发的IGMP报文可以是一个用户设备针对一个组播组的第一个加入报文或者最后一个离开报文,也可以是一个用户设备针对一个组播组的所有加入报文或者所有离开报文。在某些具体应用中,可能会不需要用户设备针对一个组播组的除第一个加入报文之外的其它加入报文,也可能会不需要用户设备针对一个的除最后一个离开报文之外的其它离开报文,因此,第一发送模块310向下游网络设备转发一个用户设备针对一个组播组的第一个加入报文或者最后一个离开报文的技术方案可以满足这些具体应用,而且,可以减少网络中IGMP报文的传输数量。第一发送模块310可以根据IGMP报文中的地址信息(如MAC地址)等来区分不同的用户设备。本实施例不限制第一发送模块310识别出IGMP报文是否为一个用户设备针对一个组播组的第一个加入报文或者最后一个离开报文的具体实现方式。
从上述实施例三的描述可知,实施例三中的区别标识模块310通过为IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文进行区别标识,使组播实现装置所在的网络设备或者下游网络设备可以获知是否需要对IGMP报文进行组播处理,避免了组播实现装置所在的网络设备或者下游网络设备对所有IGMP报文均进行组播处理的现象,减轻了网络设备的报文处理压力;第一发送模块310通过转发第一模块300接收到的IGMP报文,使最终接收设备可以获知网络中的IGMP报文,避免了不能对用户设备的点播行为进行全局用户的统计和分析处理、以及NSP不能够为ISP提供透明通道等现象;从而本实施例能够在降低对网络设备的报文处理能力要求的同时,满足实际网络中对IGMP报文的需求。
实施例四、组播实现装置,该装置可以设置于接入设备中,也可以设置于其它网络设备中。接入设备如DSLAM或者OLT等。其它网络设备如交换机或者路由器等。该装置的结构如附图4所示。
图4中的组播实现装置包括:接收模块400、分拣模块410、处理模块420和第二发送模块430。可选的,该装置还可以包括:还原模块440。
接收模块400,用于接收IGMP报文。该IGMP报文是从主机侧传输来的IGMP报文。
分拣模块410,用于根据接收模块400接收的IGMP报文中的区别标识确定该IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文。
分拣模块410的具体判断过程可以根据增加区别标识的不同方式而有所不同,一个具体的例子:分拣模块410在判断出IGMP报文中包含有特定报文特征标识时,确定出该IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文,分拣模块410在判断出IGMP报文中没有包含特定报文特征标识时,确定出该IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文。另一个具体的例子:分拣模块410在判断出IGMP报文中包含有非特定报文特征标识时,确定出该IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文,分拣模块410在判断出IGMP报文中没有包含非特定报文特征标识时,确定出该IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文。第三个具体的例子:分拣模块410在判断出IGMP报文中包含有特定报文特征标识时,确定出该IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文,分拣模块410在判断出IGMP报文中包含非特定报文特征标识时,确定出该IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文。本实施例不限制分拣模块410根据区别标识判断IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文的具体实现方式。
处理模块420,用于在分拣模块410确定出接收模块400接收到的IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对接收模块400接收到的IGMP报文进行组播处理,在分拣模块410确定出接收模块400接收到的IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,处理模块420不对接收模块400接收的IGMP报文进行组播处理。处理模块420进行组播处理如处理模块420建立端口与组播组的对应关系或者删除端口与组播组的对应关系等。本实施例不限制处理模块420的组播处理的具体实施方式。
在本实施例的装置不包括还原模块440的情况下,第二发送模块430,用于转发接收模块400接收到的IGMP报文。
在本实施例的装置包括还原模块440的情况下,还原模块440,用于去除接收模块400接收到的IGMP报文中的区别标识,例如,还原模块440去除特定报文特征标识、以及去除非特定报文特征标识等。还原模块440向第二发送模块430传输去除区别标识后的IGMP报文;此时,第二发送模块430转发还原模块440传输来的IGMP报文,也就是说,此时,第二发送模块430转发出去的IGMP报文中不包含有区别标识。
从上述实施例四的描述可知,实施例四中的分拣模块410可以通过IGMP报文中的区别标识来识别IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文,因此,处理模块420可以获知是否需要对IGMP报文进行组播处理,避免了处理模块420对所有IGMP报文均进行组播处理的现象,从而减轻了网络设备的报文处理压力;第二发送模块430通过转发接收模块400接收到的IGMP报文,使最终接收设备可以获知网络中的IGMP报文,避免了不能对用户设备的点播行为进行全局用户的统计和分析处理、以及NSP不能够为ISP提供透明通道等现象;从而本实施例能够在降低对网络设备的报文处理能力要求的同时,满足实际网络中对IGMP报文的需求。
实施例五、网络设备。该网络设备可以为接入设备或者其它网络设备。接入设备如DSLAM或者OLT等。其它网络设备如交换机或者路由器等。该网络设备的结构如附图5所示。
图5中的网络设备包括:第一装置500和第二装置510。
第一装置500,用于接收IGMP报文,判断并在IGMP报文中标识该IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文,即第一装置500为IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文进行区别标识。这里的区别标识用于后续实体根据该标识判断出IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行组播处理,即该区别标识用于通知第二装置510是否对该IGMP报文进行组播处理。第一装置500向第二装置510转发区别标识处理后的IGMP报文。第一装置500的结构可以如上述实施例三中的描述,在此不再重复说明。
在实施例五所示的网络设备为具有SNOOPING功能的网络设备的情况下,第一装置500执行操作的一个具体例子如附图5A所示。
在图5A中,第一装置500进行报文捕获,第一装置500对捕获到的报文进行SNOOPING处理,这里的SNOOPING处理除了包含现有的处理操作之外,与本发明相关的处理操作可以包括:判断该报文是否为IGMP报文中的组播组的第一个加入报文或组播组的最后一个离开报文。在判断出该报文为组播组的第一个加入报文或组播组的最后一个离开报文时,第一装置500为该报文进行特征标记处理,该特征标记处理可以包括:为该报文增加特定报文特征标识。在判断出该报文为IGMP报文但是不为组播组的第一个加入报文或组播组的最后一个离开报文时,第一装置500可以不为该报文增加任何特征标识。之后,第一装置500进行报文转发处理。在报文为组播组的第一个加入报文或组播组的最后一个离开报文的情况下,报文转发处理包括:第一装置500向下游发送增加了特定报文特征标识的组播组的第一个加入报文或组播组的最后一个离开报文。在报文为IGMP报文但是不为组播组的第一个加入报文或组播组的最后一个离开报文的情况下,报文转发处理包括:第一装置500向下游发送没有增加任何特征标识的报文。
第二装置510,用于接收第一装置转发来的IGMP报文,在根据IGMP报文中的区别标识确定出该IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对IGMP报文进行组播处理,并向下游转发该IGMP报文,在根据IGMP报文中的区别标识确定出IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行组播处理,向下游转发该IGMP报文。第二装置510的结构可以如上述实施例四中的描述,在此不再重复说明。
在实施例五所示的网络设备为具有SNOOPING功能的网络设备的情况下,第二装置510执行操作的一个具体例子如附图5B所示。
在图5B中,第二装置510对接收到的报文进行报文分拣处理,这里的报文分拣处理除了包含现有的处理操作之外,与本发明相关的处理操作可以包括:第二装置510判断接收到的报文是否为包含有特定报文特征标识的IGMP报文。在判断出接收到的报文为包含有特定报文特征标识的IGMP报文时,第二装置510对该报文进行SNOOPING处理,这里的SNOOPING处理如组播处理等。在判断出接收到的报文为没有包含特定报文特征标识的IGMP报文时,第二装置510可以不对该报文进行SNOOPING处理。之后,第二装置510对包含有特定报文特征标识的IGMP报文进行特征还原处理。特征还原处理即去除组播组的第一个加入报文或组播组的最后一个离开报文中的特定报文特征标识。最后,第二装置510进行报文转发处理。该报文转发处理可以包括:向下游发送去除特定报文特征标识后的IGMP报文、以及向下游发送不为组播组的第一个加入报文或组播组的最后一个离开报文的IGMP报文。
上述针对图5A和图5B的描述是以第一装置500和第二装置510设置于同一网络设备为例进行说明的。明显的,第一装置500和第二装置510可以设置于不同的网络设备中,在这种情况下,第一装置500和第二装置510执行的操作依然如上所述,在此不再重复说明。
从上述实施例五的描述可知,实施例五中的第一装置500通过为IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文进行区别标识,使第二装置510可以获知是否需要对IGMP报文进行组播处理,避免了第二装置510对所有IGMP报文均进行组播处理的现象,减轻了第二装置510的报文处理压力;第二装置510通过转发IGMP报文,使最终接收设备可以获知网络中的IGMP报文,避免了不能对用户设备的点播行为进行全局用户的统计和分析处理、以及NSP不能够为ISP提供透明通道等现象;从而本实施例能够在降低对网络设备的报文处理能力要求的同时,满足实际网络中对IGMP报文的需求。
实施例六、组播实现系统。该系统如附图6所示。
图6中的组播实现系统包括:第一网络设备(即低层节点)600、第二网络设备(即高层节点)610和最终接收设备620。
在图6的组播实现系统中,低层节点600与最终接收设备620之间通过至少一级高层节点610连接。低层节点600的位置可以有多种,如低层节点600可以位于终端设备的位置或者终端设备之上的接入设备等位置,低层节点600的位置可以根据实际需要来设置。最终接收设备620即需要收集网络中IGMP报文的节点。图6虽然只示出了一个低层节点600和一个高层节点610,但是,在实际的网络应用中,该系统可以包括多个低层节点600,也可以包括多个高层节点610。多个低层节点600可以通过一个或多个高层节点610与最终接收设备620连接,且一个低层节点600与最终接收设备620之间可以通过一级或多级高层节点610连接。
低层节点600,用于接收主机侧发送来的IGMP报文或者产生IGMP报文,判断并在IGMP报文中标识该IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文,即低层节点600为该IGMP报文是否为第一报文进行区别标识。之后,低层节点600向下游高层节点610转发IGMP报文。
高层节点610,用于接收低层节点600或者上游高层节点610发送来的IGMP报文,在根据IGMP报文中的区别标识确定出该IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对IGMP报文进行组播处理并向下游节点转发该IGMP报文;在根据IGMP报文中的区别标识确定出该IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行组播处理,直接向下游节点转发该IGMP报文。这里的下游节点如下游高层节点610或者最终接收设备620。
最终接收设备620,用于接收并存储最后一级上游高层节点610发送来的IGMP报文。在希望最终接收设备620接收到不包含区别标识的IGMP报文的情况下,该系统中的最后一级上游高层节点610还可以去除向最终接收设备620转发的IGMP报文中的区别标识。另外,也可以在最终接收设备620之前设置专用于去除IGMP报文中的区别标识的装置,这样,高层节点610向最终接收设备转发的IGMP报文先传输到该装置处,由该装置执行去除区别标识的操作,之后,该装置将去除区别标识的IGMP报文转发给最终接收设备620。
从上述实施例六的描述可知,实施例六中的低层节点600通过为IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文进行区别标识,使高层节点610可以获知是否需要对IGMP报文进行组播处理,避免了高层节点610对所有IGMP报文均进行组播处理的现象,减轻了高层节点610的报文处理压力;高层节点610通过转发IGMP报文,使最终接收设备620可以接收并存储网络中的IGMP报文,避免了不能对用户设备的点播行为进行全局用户的统计和分析处理、以及NSP不能够为ISP提供透明通道等现象;从而本实施例能够在降低对网络设备的报文处理能力要求的同时,满足实际网络中对IGMP报文的需求。
本发明实施例在应用于具有SNOOPING功能的系统的情况下,实施例六的组播实现系统的一个具体例子如附图6A所示。
在图6A中,该系统包括:多个STB601、多个SNOOPING设备611和一个最终接收设备620。STB601可以对应低层节点600,SNOOPING设备611可以对应高层节点610。
STB601产生IGMP报文,并对IGMP报文进行区别标识;如为组播组的第一个加入报文或组播组的最后一个离开报文的IGMP报文增加特定报文特征标识。之后,STB601向与其连接的下游SNOOPING设备611转发IGMP报文。
SNOOPING设备611接收STB601发送来的IGMP报文,在根据IGMP报文中的区别标识确定出该IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对IGMP报文进行组播处理并向下游SNOOPING设备611转发该IGMP报文;在根据IGMP报文中的区别标识确定出该IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行组播处理,直接向下游SNOOPING设备611转发该IGMP报文。
最终接收设备620,用于接收并存储最后一级SNOOPING设备611发送来的IGMP报文。在希望最终接收设备620接收到不包含区别标识的IGMP报文的情况下,该系统中的最后一级上游SNOOPING设备611还可以去除向最终接收设备620转发的IGMP报文中的区别标识。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,所述的软件产品在可以用于执行上述的方法流程。该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,本发明的申请文件的权利要求包括这些变形和变化。

Claims (10)

  1. 一种组播实现方法,其特征在于,包括:
    接收或者产生因特网组管理协议IGMP报文;
    判断并在所述IGMP报文中标识所述IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文;所述标识用于后续实体根据该标识判断出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行组播处理;
    向所述后续实体转发所述IGMP报文。
  2. 如权利要求1所述的方法,其特征在于,所述在所述IGMP报文中标识所述IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文包括:
    在确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,为所述IGMP报文加入特定报文特征标识;和/或者
    在确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,为所述IGMP报文加入非特定报文特征标识。
  3. 一种组播实现方法,其特征在于,包括:
    接收因特网组管理协议IGMP报文;
    在根据所述IGMP报文中的标识确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对所述IGMP报文进行组播处理,并转发所述IGMP报文;
    在根据所述IGMP报文中的标识确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对所述IGMP报文进行组播处理,转发所述IGMP报文。
  4. 如权利要求3所述的方法,其特征在于,所述方法在转发所述IGMP报文之前还包括:
    去除所述IGMP报文中的所述标识。
  5. 一种组播实现装置,其特征在于,包括:
    第一模块,接收或者产生因特网组管理协议IGMP报文;
    区别标识模块,用于判断并在所述IGMP报文中标识所述IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文;所述标识用于后续实体根据该标识判断出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对该IGMP报文进行处理;
    第一发送模块,用于向所述后续实体转发所述IGMP报文。
  6. 如权利要求5所述的装置,其特征在于,所述区别标识模块包括:
    第一标识子模块,用于在确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,为所述IGMP报文加入特定报文特征标识;和/或者
    第二标识子模块,用于在确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,为所述IGMP报文加入非特定报文特征标识。
  7. 一种组播实现装置,其特征在于,包括:
    接收模块,用于接收因特网组管理协议IGMP报文;
    分拣模块,用于根据所述IGMP报文中的标识确定所述IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文;
    处理模块,用于在所述分拣模块确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对所述接收模块接收的IGMP报文进行组播处理,在所述分拣模块确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对所述接收模块接收的IGMP报文进行组播处理;
    第二发送模块,用于转发所述接收模块接收到的IGMP报文。
  8. 一种网络设备,其特征在于,包括:
    第一装置,用于接收因特网组管理协议IGMP报文,判断并在所述IGMP报文中标识所述IGMP报文是否为第一报文;所述第一报文包括:组播组的第一个加入报文或组播组的最后一个离开报文;所述标识用于后续实体根据该标识判断出所述IGMP报文不为第一报文时,不对该IGMP报文进行组播处理;转发所述IGMP报文;
    第二装置,用于接收第一装置转发来的IGMP报文,在根据所述IGMP报文中的标识确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对所述IGMP报文进行组播处理,并转发所述IGMP报文,在根据所述IGMP报文中的标识确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对所述IGMP报文进行组播处理,转发所述IGMP报文。
  9. 一种组播实现系统,其特征在于,包括:第一网络设备、第二网络设备和最终接收设备,所述第一网络设备与所述最终接收设备之间通过至少一级第二网络设备连接;
    第一网络设备,用于接收或者产生因特网组管理协议IGMP报文,判断并在所述IGMP报文中标识所述IGMP报文是否为组播组的第一个加入报文或组播组的最后一个离开报文;转发所述IGMP报文。
    第二网络设备,用于接收所述第一网络设备或者上游第二网络设备发送来的IGMP报文,在根据所述IGMP报文中的标识确定出所述IGMP报文为组播组的第一个加入报文或组播组的最后一个离开报文时,对所述IGMP报文进行组播处理并向下游节点转发所述IGMP报文;在根据所述IGMP报文中的标识确定出所述IGMP报文不为组播组的第一个加入报文或组播组的最后一个离开报文时,不对所述IGMP报文进行组播处理并向下游节点转发所述IGMP报文;
    最终接收设备,用于接收并存储最后一级上游第二网络设备发送来的IGMP报文。
  10. 如权利要求9所述的系统,其特征在于:
    最后一级上游第二网络设备,还用于去除向所述最终接收设备转发的所述IGMP报文中的所述标识。
PCT/CN2010/074376 2010-06-24 2010-06-24 组播实现方法、装置和系统 WO2011160300A1 (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
EP10853443.9A EP2587755B1 (en) 2010-06-24 2010-06-24 Method, apparatus and system for implementing multicast
ES10853443.9T ES2584963T3 (es) 2010-06-24 2010-06-24 Método, equipo y sistema para implementar multidifusión
CN201080013052.2A CN102598616B (zh) 2010-06-24 2010-06-24 组播实现方法、装置和系统
PCT/CN2010/074376 WO2011160300A1 (zh) 2010-06-24 2010-06-24 组播实现方法、装置和系统
US13/551,229 US8971324B2 (en) 2010-06-24 2012-07-17 Method, device and system for implementing multicast

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2010/074376 WO2011160300A1 (zh) 2010-06-24 2010-06-24 组播实现方法、装置和系统

Publications (1)

Publication Number Publication Date
WO2011160300A1 true WO2011160300A1 (zh) 2011-12-29

Family

ID=45370841

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2010/074376 WO2011160300A1 (zh) 2010-06-24 2010-06-24 组播实现方法、装置和系统

Country Status (5)

Country Link
US (1) US8971324B2 (zh)
EP (1) EP2587755B1 (zh)
CN (1) CN102598616B (zh)
ES (1) ES2584963T3 (zh)
WO (1) WO2011160300A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795636B (zh) * 2012-11-02 2017-04-12 华为技术有限公司 组播处理方法、装置及系统
US9397946B1 (en) 2013-11-05 2016-07-19 Cisco Technology, Inc. Forwarding to clusters of service nodes
US9502111B2 (en) 2013-11-05 2016-11-22 Cisco Technology, Inc. Weighted equal cost multipath routing
US9769078B2 (en) 2013-11-05 2017-09-19 Cisco Technology, Inc. Dynamic flowlet prioritization
US10778584B2 (en) 2013-11-05 2020-09-15 Cisco Technology, Inc. System and method for multi-path load balancing in network fabrics
US9686180B2 (en) 2013-11-05 2017-06-20 Cisco Technology, Inc. Managing routing information for tunnel endpoints in overlay networks
US9825857B2 (en) 2013-11-05 2017-11-21 Cisco Technology, Inc. Method for increasing Layer-3 longest prefix match scale
US10951522B2 (en) 2013-11-05 2021-03-16 Cisco Technology, Inc. IP-based forwarding of bridged and routed IP packets and unicast ARP
US9655232B2 (en) 2013-11-05 2017-05-16 Cisco Technology, Inc. Spanning tree protocol (STP) optimization techniques
US20150124824A1 (en) * 2013-11-05 2015-05-07 Cisco Technology, Inc. Incast drop cause telemetry
US9674086B2 (en) 2013-11-05 2017-06-06 Cisco Technology, Inc. Work conserving schedular based on ranking
US9374294B1 (en) 2013-11-05 2016-06-21 Cisco Technology, Inc. On-demand learning in overlay networks
US9509092B2 (en) 2013-11-06 2016-11-29 Cisco Technology, Inc. System and apparatus for network device heat management
US10904134B2 (en) * 2017-03-15 2021-01-26 Nicira, Inc. Multicast packet handling in logical networks
US10511548B2 (en) * 2017-06-22 2019-12-17 Nicira, Inc. Multicast packet handling based on control information in software-defined networking (SDN) environment
US11316797B2 (en) 2018-07-24 2022-04-26 Vmware, Inc. Queue filter configuration for multicast packet handling
US10979246B2 (en) 2018-07-24 2021-04-13 Nicira, Inc. Multicast packet handling in software-defined networking (SDN) environments

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070107024A1 (en) * 2005-11-10 2007-05-10 Scientific-Atlanta, Inc. Atomic channel changes in a switched digital video system
CN101163002A (zh) * 2006-10-12 2008-04-16 中兴通讯股份有限公司 一种高效组播认证方法
CN101483655A (zh) * 2009-02-10 2009-07-15 杭州华三通信技术有限公司 一种互联网组管理协议报文传输方法和代理设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100337457C (zh) 2005-06-03 2007-09-12 华为技术有限公司 以太网交换机跨虚拟局域网的二层组播数据传输方法
CN1863187B (zh) * 2005-07-22 2012-01-11 华为技术有限公司 提高组播业务可运营性的实现方法及装置
JP4806278B2 (ja) * 2006-03-16 2011-11-02 富士通株式会社 マルチキャストシステム、通信装置、およびマルチキャスト方法
CN101060465B (zh) 2006-04-27 2011-12-28 华为技术有限公司 控制组播数据传输的方法及系统
CN101163093B (zh) * 2006-10-12 2011-07-13 中兴通讯股份有限公司 在综合接入设备上实现集中组播管理的方法
CN101448003B (zh) * 2008-12-23 2012-02-01 杭州华三通信技术有限公司 一种处理igmp报文的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070107024A1 (en) * 2005-11-10 2007-05-10 Scientific-Atlanta, Inc. Atomic channel changes in a switched digital video system
CN101163002A (zh) * 2006-10-12 2008-04-16 中兴通讯股份有限公司 一种高效组播认证方法
CN101483655A (zh) * 2009-02-10 2009-07-15 杭州华三通信技术有限公司 一种互联网组管理协议报文传输方法和代理设备

Also Published As

Publication number Publication date
CN102598616A (zh) 2012-07-18
EP2587755B1 (en) 2016-04-27
CN102598616B (zh) 2015-12-02
EP2587755A1 (en) 2013-05-01
ES2584963T3 (es) 2016-09-30
US8971324B2 (en) 2015-03-03
US20120281697A1 (en) 2012-11-08
EP2587755A4 (en) 2013-05-01

Similar Documents

Publication Publication Date Title
WO2011160300A1 (zh) 组播实现方法、装置和系统
WO2014121502A1 (zh) 在基站中,一种开站配置方法、基站及服务器
US20060018335A1 (en) Multicast to unicast traffic conversion in a network
CN108810456B (zh) 一种监控视频流调取方法及系统
WO2012074198A1 (en) Terminal and intermediate node in content oriented networking environment and communication method of terminal and intermediate node
US20110299529A1 (en) Multicast Interworking Systems and Methods
WO2007056923A1 (fr) Procede de mise en oeuvre de la multidiffusion
JP2004260832A (ja) Ipアクセスネットワークにおいて保証サービス品質を伴うサービスを提供する方法
WO2007059679A1 (fr) Procede pour le traitement de service multidiffusion anormal et equipement de reseau associe
WO2012050293A1 (en) Method and apparatus for sharing contents using information of group change in content oriented network environment
CN110022456A (zh) 邀请终端入会的方法和装置
CN111478884B (zh) 不同视联网之间进行数据传输的方法、装置和存储介质
CN109587432A (zh) 一种会议发言终端切换方法及系统
WO2015083927A1 (en) Apparatus and method for detecting abnormal sdp message in 4g mobile networks
WO2016035923A1 (ko) 영상 스트림 제공 방법 및 시스템과 중계 장치
WO2012163000A1 (zh) 一种报文转发的方法、设备及系统
WO2015167068A1 (ko) 포트 잠금을 이용하는 네트워크 트래픽 감소 방법
CN109586851A (zh) 基于视联网的数据传输方法和装置
KR101279790B1 (ko) Ip 멀티캐스트 루트 모니터링 시스템 및 방법
WO2008141516A1 (fr) Procédé de transmission d'un message, dispositif de transmission et système de transmission
CN101098287B (zh) 采用硬件扩展方式在epon上实现ipv6组播过滤的装置和方法
CN110475160B (zh) 一种跨视联网传输视频数据方法和装置
NZ334771A (en) Packet routing in a telecommunications network
CN1581817A (zh) 空间多播数字用户线接入复接器组播业务实现方法和装置
CN109819197A (zh) 视联网连接方法和装置

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080013052.2

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10853443

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010853443

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 1487/KOLNP/2012

Country of ref document: IN

NENP Non-entry into the national phase

Ref country code: DE