Techniques for Generic Pruning in a Trill Network
Techniques are provided for managing and distributing communications in a network. At a first switch device arranged in a first configuration in a network, a set of one or more network attributes are determined, which are associated with network communications that the first switch device is interested in receiving from other network devices. The first switch device sends to a controller device an attribute interest message that informs the controller device of the set of network attributes. The first switch device receives a mapping of the network attributes in to one or more identifiers. The identifiers are included in a header of subsequent frames sent in the network. An identifier interest message is then sent to a second switch device arranged in a second network configuration in the network to inform the second switch device of identifiers of the network attributes of which the first device has an interest.
Latest CISCO TECHNOLOGY, INC. Patents:
The present disclosure relates to distributing communications in a network environment.
BACKGROUNDDevices in a network may be connected to one another across a plurality of network links. Network communications may traverse one or more of these network links as they travel between a source device in the network to a destination device in the network. Distribution trees may be assigned within the network to ensure optimal transmission of these network communications. Distribution trees may be rooted at one or more devices in the network, and new distribution trees may be calculated based on changes to the network topology.
Techniques are provided for managing and distributing communications in a network. These techniques may be embodied as a method, apparatus and instructions in a computer-readable storage media to perform the method. At a first switch device arranged in a first configuration in a network, a set of one or more network attributes are determined. The network attributes are associated with network communications that the first switch device is interested in receiving from other devices in the network. The first switch device sends to a controller device in the network an attribute interest message that informs the controller device of the set of one or more network attributes. The first switch device receives from the controller device an identifier assignment message that maps the network attributes in the set of one or more network attributes to one or more identifiers. The one or more identifiers are configured to be included in a header of a subsequent frame sent in the network. An identifier interest message is then sent to a second switch device arranged in a second network configuration in the network. The identifier interest message is sent to inform the second switch device of identifiers of the one or more network attributes of which the first device has an interest.
Additionally, the controller device in the network receives the attribute interest message from the first switch device arranged in the first configuration. The attribute interest message informs the controller device of the set of network attributes associated with the network communications that the first switch device is interested in receiving from other devices in the network. One or more identifiers are mapped to the one or more network attributes in the set of network attributes to generate a map of the identifiers and the one or more network attributes associated with the identifiers. The one or more identifiers are configured to be included in a header of a frame sent in the network. The identifier assignment message is then sent to the first switch device. The identifier assignment message comprises the map.
Example EmbodimentsThe techniques described hereinafter involve managing communications in a network environment. An example network system/topology (hereinafter “network”) is shown at reference numeral 100 in
The designation of the network devices 102(a)(1)-102(a)(4) as leaf devices and of the network devices 102(b)(1)-102(b)(4) as spine devices indicates the device configuration within the network 100. The classification of these network devices as a leaf device or a spine device, however, may not necessarily indicate a device “type.” All of the leaf devices and spine devices may be the same network device type. For example, the leaf devices and spine devices in the network 100 may all be switch devices (e.g., Open Systems Interconnection (OSI) model layer 2 or layer 3 switch devices, which may be referred to as “layer 2 switch devices” or “layer 3 switch devices”). Furthermore, in addition to being classified as a leaf device or a spine device, one of the network devices 102(a)(1)-102(a)(4) and 102(b)(1)-102(b)(4) may also be designated as a controller device that is configured to provide identifiers to other network devices, as described by the techniques hereinafter. For example, in
Thus, in
As stated above, the network devices 104(1)-104(4) are in direct communication with corresponding leaf devices. For example, network device 104(1) is in direct communication with leaf 1, network device 104(2) is in direct communication with leaf 2, and so on. The network devices 104(1)-104(4) may be computer devices and/or server devices that are configured to send and receive network communications (e.g., packets or frames) in the network 100. For example, the network devices 104(1)-104(4) may be computers, laptops, mobile devices, tablet computing devices, etc. configured as part of the network 100. For simplicity, the network devices 104(1)-104(4) are referred to hereinafter as host devices (e.g., network device 104(1) is referred to as “host device 1” or “host 1,” network device 104(2) is referred to as “host device 2” or “host 2,” and so on).
The host devices 104(1)-104(4) are configured to communicate with each other by exchanging packets or frames (hereinafter “frames”). For example, in network 100, when a source device (e.g., host 1) communicates with a destination device (e.g., host 2), frames are exchanged between host 1 and host 2 via switch devices (i.e., the leaf devices and spine devices that reside in a network path between host 1 and host 2). As frames are distributed through the network 100, they may travel between the source device and the destination device via one or more network links, which are shown in
Often times, a subset of these network links is determined in order to optimize the frame transmission and prevent duplications. For example, if host 1 is sending a frame to host 2, it may be more efficient to send the frame along the following distribution path:
host 1→leaf 1→spine 2→leaf 2→host 2
rather than sending the frame along another distribution path, for example:
host 1→leaf 1→spine 4→leaf 3→spine 2→leaf 2→host 2
That is, certain distribution paths within the network 100 may have a shorter number of path links in order for the frame to be sent from a particular source device to a particular destination device. As such, an optimal path may be selected among the network links for distribution of all frames in the network 100. This optimal path may be calculated by one or more of the leaf devices or spine devices in the network by using, for example, an intermediate system to intermediate system (IS-IS) routing protocol to determine a shortest path first (SPF) route among the network links. An example of this optimal path is shown as a distribution tree (dotted lines) in
As stated above, the host devices 104(1)-104(4) are configured to exchange frames with each other via the distribution tree. The host devices 104(1)-104(4) themselves have certain network attributes, and the frames that are exchanged between the host devices 104(1)-104(4) may be exchanged based on one or more of these attributes. For example, host device 2 and host device 3 may belong to a same virtual local area network (VLAN), and thus, frames associated with this VLAN may be exchanged between these host devices. In another example, the host devices 104(1)-104(4) may be configured with an internet protocol (IP) address attribute, a virtual network identifier attribute, etc., and frames can be sent between host devices by using these attributes.
For example, if host device 2 and host device 3 are in the same VLAN, host device 2 may send a multi-destination frame intended for host device 3. This frame may be, for example, a Transparent Interconnect of Lots of Links (TRILL) frame as defined by the Internet Engineering Task Force (IETF). Host device 2 may include the VLAN information in the payload of this TRILL frame to indicate that the frame is intended for the devices (e.g., host device 3) that reside in the same VLAN as host device 2. Similarly, the host device 1 may send a TRILL frame destined for host device 2 by sending a TRILL frame with TRILL frame payload that indicates the virtual network identifier of host device 2.
As stated above, spine 2 is the root node of the distribution tree in
Reference is now made to
The memory 208 may comprise read only memory (ROM), random access memory (RAM), magnetic disk storage media devices, optical storage media devices, flash memory devices, electrical, optical, or other physical/tangible (non-transitory) memory storage devices. The memory 208 stores software instructions for the pruning identifier request and distribution process logic 210. The memory 208 also stores the network attribute database 212 that, as described above, stores context identifier information for virtual machines hosted by servers managed by the switch device 104. Thus, in general, the memory 208 may comprise one or more computer readable storage media (e.g., a memory storage device) encoded with software comprising computer executable instructions and when the software is executed (e.g., by the processor 206) it is operable to perform the operations described for the pruning identifier request and distribution process logic 210.
The pruning identifier request and distribution process logic 210 may take any of a variety of forms, so as to be encoded in one or more tangible computer readable memory media or storage device for execution, such as fixed logic or programmable logic (e.g., software/computer instructions executed by a processor), and the processor 206 may be an application specific integrated circuit (ASIC) that comprises fixed digital logic, or a combination thereof.
For example, the processor 206 may be embodied by digital logic gates in a fixed or programmable digital logic integrated circuit, which digital logic gates are configured to perform the pruning identifier request and distribution process logic 210. In general, the pruning identifier request and distribution process logic 210 may be embodied in one or more computer readable storage media encoded with software comprising computer executable instructions and when the software is executed operable to perform the operations described hereinafter.
Reference is now made to
In general, as stated above in connection with
Typically, spine 2 understands or “knows” its connectivity to the leaf devices, but spine 2 does not know which leaf devices are directly connected to corresponding host devices. Thus, upon receiving a frame, spine 2 distributes the frame along links in the distribution tree to all of the leaf devices to ensure that the frame reaches the intended destination. In order for spine 2 to send the frame only to appropriate leaf devices (and thus pruning the distribution tree), spine 2 must “know” or be made aware of which host devices are associated with corresponding leaf devices. Existing TRILL pruning techniques require modifications to hardware components of the spine devices to allow the spine devices to evaluate the payload of the frames to appropriately prune the distribution tree. These approaches, however, are not ideal, since the hardware components of the spine devices must be provisioned to know or understand all possible network attributes that are associated with the host devices. In other words, if a new network attribute (e.g., an IP version 6 (IPv6) address) is assigned to one or more of the host devices 104(1)-104(4), the hardware of the spine devices will have to be further modified so that the spine devices can evaluate frame payloads for these particular attributes. Since existing network protocols and attributes may change and evolve, these existing pruning techniques may be ineffective for widespread deployment within network topologies.
The techniques described hereinafter, however, offer solutions that allow distribution trees to be pruned independently of the evolving or newly added network attributes. In other words, the techniques described hereinafter are agnostic to additions or modification to network attributes assigned to the host devices 104(1)-104(4). These techniques provide a generic pruning approach without requiring modifications to hardware components of the spine devices. For example, this generic pruning approach allows the spine devices to prune distribution trees based on network attributes associated with the host devices and leaf devices without having to evaluate payloads of frames received from these devices.
In one example, according to the techniques described hereinafter, the leaf devices determine a set of one or more network attributes associated with network communications that the leaf devices are interested in receiving from other devices in the network. In other words, the leaf devices determine the network attributes associated with the corresponding host devices that are directly connected to the leaf devices and send this information to the controller device 202 in the network. For example, host devices that are connected to leaf 2 and leaf 3 (e.g., host 2 and host 3) may be arranged in a VLAN (e.g., VLAN 100), and as a result, leaf 2 and leaf 3 are “interested in” network communications involving VLAN 100 and may send this interest to the controller device 202. Similarly, host device 2, in addition to being provisioned in VLAN 100, may also be assigned a particular IP address or virtual network identifier. Thus, leaf 2 may also be interested in network communications associated with the particular IP address or virtual network identifier and may send this interest to the controller device 202. The leaf devices may send their attributes of interest to the controller device 202 by using, for example, an attribute interest message, as shown at reference numeral 1 in
After receiving the network attributes of interest from the leaf devices, the controller device 202 generates identifiers for the network attributes and maps these identifiers to the network attributes of interest for each of the leaf devices. For example, if leaf 2 and leaf 3 are interested in VLAN 100, the controller device 202 generates an identifier (e.g., an identifier “1”) associated with VLAN 100 and maps the identifier to VLAN 100. It should be appreciated that multiple attributes may be mapped to one network identifier. For example, an identifier may be mapped to the greatest common number of network attributes that are unique to a set of leaf devices. In other words, the identifier that is generated by the controller device 202 may be mapped to one network attribute that leaf devices are interested in or may be mapped to multiple network attributes, as the case may be. For example, multiple attributes may be mapped to one network identifier (e.g., a pruning identifier) if these attributes are interested by the same set of leaf devices.
Reference is now made to
After the controller device 202 generates the table 402, the table 402 is stored in the pruning identifier and network attribute mapping database 312 of the controller device 202. The table 402 is then sent to the leaf device(s) that requested the pruning identifier. For example, the table 402 is sent to the leaf device(s) by using an identifier assignment message, shown at reference numeral 2 in
The leaf devices are configured to send interested identifiers to the spine devices. As a result, every spine device receives the information regarding which leaf is interested in what identifiers. The leaf devices may send the identifiers to the spine devices via an identifier interest message, shown at reference numeral 3 in
It should be appreciated that the leaf devices may send the attribute interest message to the controller device 202 by using a generic TRILL pruning protocol or GTPP Likewise, the controller device 202 may send the identifier assignment message using the GTPP, and upon receiving the table 402, the leaf devices may distribute its interested identifiers to the spine devices via the identifier interest message that uses a new TRILL IS-IS Interested Pruning IDs TLV.
Additionally, it should be appreciated that as network conditions change, the leaf devices may become interested in different network attributes. For example, a new host device may join the network or attributes of existing host devices may change such that corresponding leaf devices are interested in new or different network attributes. Thus, leaf devices may need to update the pruning IDs assigned to these attributes in order to account for these changes. In order to update these pruning IDs, the leaf devices may send additional attribute interest messages to the controller device 202 in order to receive an updated table 402 with updated pruning ID-to-attribute mapping information. The leaf devices can utilize two approaches to obtain this information and distribute this updated information to the spine device: a sequential approach, where the leaf devices wait to receive a new identifier assignment message from the controller device 202 before sending updated identifier interest messages to the spine devices (informing the spine devices of the updates) or a parallel approach, where the leaf devices send the identifier interest messages to the spine devices while concurrently receiving new identifier assignment messages from the controller device 202. In other words, when the updated identifier interest messages are sent using the parallel approach, the leaf devices send pruning ID information based on “old” mapping information instead of waiting for a “new” mapping carried in identifier assignment messages. The mapping information is still updated, as the leaf devices may request an interest in a new pruning ID which it did not previously request. In one example, the parallel approach has faster convergence but may lead to excessive flooding when a leaf device becomes interested in a network attribute whose pruning ID is shared with other pruning attributes not interested by the leaf device. On the other hand, the sequential approach has slower convergence as it has to wait for new pruning ID allocation, but it may avoid excessive flooding.
There may be a transient period of time during the pruning ID allocation where the leaf devices are assigned inconsistent pruning IDs. For example, the controller device 202 may assign a first pruning ID to a network attribute, and while the first pruning ID is being sent to leaf 2, the controller device 202 may reallocate the first pruning ID to a new network attribute. Thus, to detect these potential inconsistencies, the table 402 also comprises a revision number associated with each of the pruning IDs. This revision number is updated whenever a pruning ID allocation has changed. For example, in
Reference is now made to
As stated above, a pruning ID may also be used to “unprune” the distribution tree. For example, if an inconsistency is detected in the assignment of pruning IDs to leaf devices, a leaf device may allow the spine devices to transiently unprune the frames associated with the inconsistent pruning IDs. This is achieved by the leaf devices encapsulating frames with a reserved pruning ID (e.g., pruning ID “0”), which may have a special semantic that instructs the spine devices not to prune frames that are encapsulated with the reserved pruning ID.
Reference is now made to
Reference is now made to
It should be appreciated that the techniques described above in connection with all embodiments may be performed by one or more computer readable storage media that is encoded with software comprising computer executable instructions to perform the methods and steps described herein. For example, the operations performed by the leaf device, spine devices and controller device may be performed by one or more computer or machine readable storage media (non-transitory) or device executed by a processor and comprising software, hardware or a combination of software and hardware to perform the techniques described herein.
In summary, a method is provided comprising: at a first switch device arranged in a first configuration in a network, determining a set of one or more network attributes associated with network communications that the first switch device is interested in receiving from other devices in the network; sending to a controller device in the network an attribute interest message that informs the controller device of the set of network attributes; receiving from the controller device an identifier assignment message that maps the network attributes in the set of one or more network attributes to one or more identifiers, wherein the one or more identifiers are configured to be included in a header of a subsequent frame sent in the network; and sending an identifier interest message to a second switch device arranged in a second configuration in the network, wherein the identifier interest message is sent to inform the second switch device of the identifiers of the one or more network attributes of which the first device has an interest.
Additionally, a method is provided comprising: at a controller device in a network, receiving an attribute interest message from a first switch device arranged in a first configuration in a network, wherein the attribute interest message informs the controller device of a set of network attributes associated with network communications that the first switch device is interest in receiving from other devices in the network; mapping one or more identifiers to one or more network attributes in the set of network attributes to generate a map between the identifiers and the network attributes, wherein the one or more identifiers are configured to be included in a header of a subsequent frame sent in the network; and sending an identifier assignment message to the first switch device, wherein the identifier assignment message comprises the map.
Furthermore, an apparatus is provided comprising: a network interface unit; a memory; and a processor coupled to the network interface unit and the memory and configured to: determining a set of one or more network attributes associated with network communications that the apparatus is interested in receiving from other devices in the network; send to a controller device in the network an attribute interest message that informs the controller device of the set of network attributes; receive from the controller device an identifier assignment message that maps the network attributes in the set of one or more network attributes to one or more identifiers, wherein the one or more identifiers are configured to be included in a header of a subsequent frame sent in the network; and send an identifier interest message to a switch device in the network, wherein the identifier interest message is sent to inform the switch device of the identifiers of the one or more network attributes of which the apparatus has an interest.
In addition, an apparatus is provided comprising: a network interface unit; a memory; and a processor coupled to the network interface unit and the memory and configured to: receive an attribute interest message from a first switch device arranged in a first configuration in a network, wherein the attribute interest message informs the apparatus of a set of network attributes associated with network communications that the first switch device is interested in receiving from other devices in the network; map one or more identifiers to one or more network attributes in the set of network attributes to generate a map between the identifiers and the network attributes, wherein the one or more identifiers are configured to be included in a header of a subsequent frame sent in the network; and send an identifier assignment message to the first switch device, wherein the identifier assignment message comprises the map.
The above description is intended by way of example only. Various modifications and structural changes may be made therein without departing from the scope of the concepts described herein and within the scope and range of equivalents of the claims.
Claims
1. A method comprising:
- at a first switch device arranged in a first configuration in a network, determining a set of one or more network attributes associated with network communications that the first switch device is interested in receiving from other devices in the network;
- sending to a controller device in the network an attribute interest message that informs the controller device of the set of network attributes;
- receiving from the controller device an identifier assignment message that maps the network attributes in the set of one or more network attributes to one or more identifiers, wherein the one or more identifiers are configured to be included in a header of a subsequent frame sent in the network; and
- sending an identifier interest message to a second switch device arranged in a second configuration in the network, wherein the identifier interest message is sent to inform the second switch device of the identifiers of the one or more network attributes of which the first device has an interest.
2. The method of claim 1, wherein receiving comprises receiving the identifier assignment message from the controller device that is configured as a third switch device arranged in the first configuration in the network.
3. The method of claim 1, wherein sending the identifier interest message comprises sending the identifier interest message such that the second switch device utilizes the identifier information to evaluate the header of a Transparent Interconnect of Lots of Links (TRILL) frame to determine whether to forward the TRILL frame to the first switch device without evaluating a payload of the TRILL frame.
4. The method of claim 1, wherein receiving the identifier assignment message comprises receiving the identifier assignment message with one of the identifiers mapped to more than one of the network attributes.
5. The method of claim 1, further comprising sending a new identifier interest message to the second switch device comprising updated information of the identifiers that the first switch device is interested in using a sequential approach, wherein the first switch device waits to receive a new identifier assignment message from the controller device before sending the new identifier interest message to the second switch device.
6. The method of claim 1, wherein sending the identifier interest message comprises sending the identifier interest message to the second switch device using a parallel approach, wherein the first switch device sends the identifier interest message to the second switch device while concurrently receiving a new identifier assignment message from the controller device.
7. The method of claim 1, wherein receiving the identifier assignment message comprises receiving the identifier assignment message from the controller device that is configured as a pruning identifier management device.
8. The method of claim 1, further comprising evaluating the identifier assignment message to determine a revision number associated with the identifiers to determine whether the identifiers have been reassigned by the controller device before the first switch device receives the identifier assignment message.
9. The method of claim 1, further comprising sending frames with a reserved pruning identifier that the second switch device utilizes to send the frames to all switch devices in the network along the distribution tree.
10. A method comprising:
- at a controller device in a network, receiving an attribute interest message from a first switch device arranged in a first configuration in a network, wherein the attribute interest message informs the controller device of a set of network attributes associated with network communications that the first switch device is interest in receiving from other devices in the network;
- mapping one or more identifiers to one or more network attributes in the set of network attributes to generate a map between the identifiers and the network attributes, wherein the one or more identifiers are configured to be included in a header of a subsequent frame sent in the network; and
- sending an identifier assignment message to the first switch device, wherein the identifier assignment message comprises the map.
11. The method of claim 10, wherein the controller device is configured as a third switch device arranged in the first configuration in the network.
12. The method of claim 10, wherein sending the identifier assignment message comprises sending the identifier assignment message such that the first switch device announces its interests in identifiers to a second switch device in the network such that the second switch device utilizes the identifier information to evaluate the header of a Transparent Interconnect of Lots of Links (TRILL) frame to determine whether to forward the TRILL frame to the switch device without evaluating a payload of the TRILL frame.
13. The method of claim 12, wherein sending the identifier assignment message comprises sending the identifier assignment message such that the second switch device prunes the distribution of the TRILL frame in the network by sending the TRILL frame in the network to some but not all of the network devices in the network based on the identifier information in the header of the TRILL frame.
14. The method of claim 13, further comprising sending the identifier assignment message such that the second switch device prunes a distribution tree within the network.
15. The method of claim 10, wherein receiving the attribute interest message comprises receiving the attribute interest message from the first switch device using a generic Transparent Interconnect of Lots of Links (TRILL) pruning protocol (GTPP) and wherein sending the identifier assignment message comprises sending the identifier assignment message to the first switch device using the GTPP.
16. The method of claim 10, further comprising updating a revision number associated with the identifiers when the identifiers are mapped to the network attributes.
17. An apparatus comprising:
- a network interface unit;
- a memory; and
- a processor coupled to the network interface unit and the memory and configured to: determining a set of one or more network attributes associated with network communications that the apparatus is interested in receiving from other devices in the network;
- send to a controller device in the network an attribute interest message that informs the controller device of the set of network attributes;
- receive from the controller device an identifier assignment message that maps the network attributes in the set of one or more network attributes to one or more identifiers, wherein the one or more identifiers are configured to be included in a header of a subsequent frame sent in the network; and
- send an identifier interest message to a switch device in the network, wherein the identifier interest message is sent to inform the switch device of the identifiers of the one or more network attributes of which the apparatus has an interest.
18. The apparatus of claim 17, wherein the processor is further configured to send the identifier interest message such that the switch device utilizes the identifier information to evaluate the header of a Transparent Interconnect of Lots of Links (TRILL) frame to determine whether to forward the TRILL frame to the first switch device without evaluating a payload of the TRILL frame.
19. The apparatus of claim 17, wherein the processor is further configured to receive the identifier assignment message with one of the identifiers mapped to more than one of the network attributes.
20. The apparatus of claim 17, wherein the processor is further configured to send a new identifier interest message to the switch device comprising updated information of the identifiers that the apparatus is interested in using a sequential approach, wherein the processor waits to receive a new identifier assignment message from the controller device before sending the new identifier interest message to the switch device.
21. The apparatus of claim 17, wherein the processor is further configured to send the identifier interest message to the switch device using a parallel approach, wherein the processor sends the identifier interest message to the switch device while concurrently receiving a new identifier assignment message from the controller device.
22. The apparatus of claim 17, wherein the processor is further configured to receive the identifier assignment message from the controller device that is configured as a pruning identifier management device.
23. The apparatus of claim 17, wherein the processor is further configured to evaluate the identifier assignment message to determine a revision number associated with the identifiers to determine whether the identifiers have been reassigned by the controller device before the apparatus receives the identifier assignment message.
24. The apparatus of claim 17, wherein the processor is further configured to send frames with a reserved pruning identifier that the switch device utilizes to send the frames to all switch devices in the network along the distribution tree.
25. An apparatus comprising:
- a network interface unit;
- a memory; and
- a processor coupled to the network interface unit and the memory and configured to: receive an attribute interest message from a first switch device arranged in a first configuration in a network, wherein the attribute interest message informs the apparatus of a set of network attributes associated with network communications that the first switch device is interested in receiving from other devices in the network; map one or more identifiers to one or more network attributes in the set of network attributes to generate a map between the identifiers and the network attributes, wherein the one or more identifiers are configured to be included in a header of a subsequent frame sent in the network; and send an identifier assignment message to the first switch device, wherein the identifier assignment message comprises the map.
26. The apparatus of claim 25, wherein the processor is further configured to send the identifier assignment message such that the first switch device announces its interests in identifiers to a second switch device in the network such that the second switch device utilizes the identifier information to evaluate the header of a Transparent Interconnect of Lots of Links (TRILL) frame to determine whether to forward the TRILL frame to the switch device without evaluating a payload of the TRILL frame.
27. The apparatus of claim 26, wherein the processor is further configured to send the identifier assignment message such that the second switch device prunes the distribution of the TRILL frame in the network by sending the TRILL frame in the network to some but not all of the network devices in the network based on the identifier information in the header of the TRILL frame.
Type: Application
Filed: Aug 15, 2012
Publication Date: Feb 20, 2014
Patent Grant number: 8855015
Applicant: CISCO TECHNOLOGY, INC. (San Jose, CA)
Inventors: Yibin Yang (San Jose, CA), Chia Tsai (Cupertino, CA)
Application Number: 13/586,208
International Classification: H04L 12/28 (20060101);