Multiple VLAN Architecture system

Information

  • Patent Grant
  • 6219699
  • Patent Number
    6,219,699
  • Date Filed
    Friday, March 26, 1999
    25 years ago
  • Date Issued
    Tuesday, April 17, 2001
    23 years ago
Abstract
A system in which a single VLAN architecture spans multiple VLAN transport protocols and technologies, including a method and system in which multiple different VLANs may be combined in a single enterprise network. Each LAN-switch in the system identifies each frame with an identifier, and associates that identifier with particular VLAN identifiers for each type of VLAN technology. When a frame is bridged or routed from a first type of VLAN to a second type of VLAN, the first VLAN encapsulation is removed and the second VLAN encapsulation is added, with appropriate change in the VLAN identifier for the frame or packet. The identifier may also be implicit for the frame, such as when a particular set of sender's MAC addresses are identified with a particular VLAN. Individual VLANs, of whatever architecture, may be added, configured or reconfigured, modified, or deleted, using control tools associated with the multiple VLAN architecture system. Individual ports may be associated with particular VLANS, or may be designated “dynamic” so that frames or packets associated with those ports are associated with particular VLANs in response to source or destination addresses or other information.
Description




BACKGROUND OF THE INVENTION




1. Field of the Invention




This invention relates to a multiple VLAN architecture system.




2. Description of Related Art




When interconnecting computers and other devices in a network, it has become desirable to create “virtual local area networks” (VLANs), in which all devices coupled to a VLAN receive all frames or packets which are universally addressed (whether by broadcast, multicast, or some other technique) on that VLAN, and in which all frames or packets which are universally addressed by a device on a VLAN are not distributed to devices outside the VLAN. However, there is more than one type of VLAN transport protocol technology which has been proposed and come to be accepted in the art. For example, VLAN technologies which are now common include LANE (for ATM LAN-Emulation), IEEE Standard 802.10, and various proprietary schemes such as ISL (for cisco Catalyst™ Inter-Switch Links).




One problem which has arisen in the art is that it is desirable to couple devices on a single VLAN even though those devices have been designed or configured for different VLAN transport protocols or technologies. Aspects of this problem are that it is desirable for devices to be on the same VLAN even though they are not physically proximal to each other or cannot be coupled to the same switching device (for example, due to limitations imposed by respective media speed), that it is desirable for devices (or networks comprising those devices) to be configurable so that a device may be moved from one VLAN to another VLAN with ease, and that it is desirable for a device to be coupled to different VLANs at different times or to multiple VLANs at one time.




Accordingly, it would be advantageous to provide a multiple VLAN architecture system, such as one which is capable of operating in a network environment with multiple different VLANs, and multiple different VLAN technologies.




The following U.S. patent(s) may be pertinent:




U.S. Pat. No. 5,394,402, issued Feb. 28, 1995, in the name of Floyd E. Ross, titled “Hub For Segmented Virtual Local Area Network With Shared Media Access”.




This patent discloses a hub for a segmented VLAN system. The hub receives packets from one of the devices, called “end stations” which are coupled thereto, and forwards them using a backbone network to other such hubs, for forwarding to other devices coupled to the same VLAN. Essentially, the hub serves to bridge packets among its ports such that packets are bridged only to those other devices which are on the same VLAN.




The pertinence of the related art will also be apparent to those skilled in the art after perusal of this application.




SUMMARY OF THE INVENTION




The invention provides a system in which a single VLAN architecture spans multiple VLAN transport protocols and technologies, including a method and system in which each VLAN may span multiple different VLAN technologies. Each LAN-switch in the system identifies each frame with an identifier, and associates that identifier with particular VLAN identifiers for each type of VLAN architecture. When a frame is bridged or routed from a first type of VLAN to a second type of VLAN, the first VLAN encapsulation is removed and the second VLAN encapsulation is added, with appropriate change in the VLAN identifier for the frame or packet. The identifier may also be implicit for the frame, such as when a particular set of sender's MAC addresses are identified with a particular VLAN.




In a preferred embodiment, individual VLANs, which may span the set of multiple VLAN technologies, may be added, configured or reconfigured, modified, or deleted, using control tools associated with the multiple VLAN architecture system. Individual ports may be associated with particular VLANs, or may be designated “dynamic” so that frames or packets associated with those ports are associated with particular VLANs in response to source or destination addresses or other information.











BRIEF DESCRIPTION OF THE DRAWINGS





FIG. 1

is a diagram of a network having multiple VLANs.





FIG. 2

is a diagram of a set of LAN-switches disposed for coupling messages between multiple VLANs.





FIG. 3

is a diagram showing a relationship between multiple VLANs, management domains, and network administration.





FIG. 4

is a diagram showing message formats for use in a VLAN protocol.











DESCRIPTION OF THE PREFERRED EMBODIMENT




In the following description, a preferred embodiment of the invention is described with regard to preferred process steps and data structures. However, those skilled in the art would recognize, after perusal of this application, that embodiments of the invention may be implemented using a set of general purpose computers operating under program control, and that modification of a set of general purpose computers to implement the process steps and data structures described herein would not require undue invention.




MULTIPLE VLAN ARCHITECTURE SYSTEM





FIG. 1

is a diagram of a network having multiple VLANs.




In an interconnected network


100


, a set of devices


101


may be coupled to a plurality of physical networks


102


. Each network


102


may comprise a local area network (LAN) such as an ethernet LAN, a token ring LAN, an FDDI network, or another LAN architecture. Each network


102


may transmit a set of frames


104


using one of a plurality of media access transmit protocols. Architectures for local area networks and for their media access transmit protocols are known in the art of networking.




The networks


102


are coupled using a set of LAN-switches


103


. The LAN-switches


103


forward frames (using a level two protocol) or packets (using a level three protocol) among the networks


102


. Each LAN-switch


103


is coupled to one or more networks


102


. For example, one of the LAN-switches


103


may be coupled to two or more networks


102


. LAN-switches are known in the art of networking.




The devices


101


are associated with a plurality of different VLAN technologies, and therefore may transmit frames using one of a plurality of VLAN transmit protocols. For example, each device


101


may be associated with a VLAN transmit protocol such as ATM LAN Emulation (LANE), IEEE 802.10, cisco Catalyst™ Inter-Switch Links (ISLs), or another VLAN transmit protocol. Each device


101


may be associated with just one VLAN technology, or with a plurality of VLAN technologies.




The devices


101


are assigned to a plurality of VLANs


106


, independent of their associated VLAN technologies. Each VLAN


106


need not comprise a single or homogeneous VLAN technology; moreover, each VLAN


106


is not subject to any requirement that all devices


101


on that VLAN


106


are proximate or even coupled using the same LAN or VLAN technology.




Those frames


104


to be transmitted on a particular VLAN segment


108


are identified with a tag


107


referencing that particular VLAN


106


. As the frame


104


is forwarded between differing VLAN technologies, the tag


107


uses a tagging technique particular to that VLAN technology. For example, the tag


107


for the same VLAN


106


may be the character string ‘GR” for LANE, the numeric value ‘1024’ for IEEE 802.10, or the numeric value ‘10’ for ISL.




The LAN-switches


103


are configured to (1) receive frames from a first VLAN associated with a first VLAN transmit protocol and encapsulated using a multiple-VLAN transmit protocol, (2) to remove the encapsulation, (3) to re-encapsulate the frames with a second VLAN transmit protocol, and (4) to transmit: the re-encapsulated frames onto a second VLAN.




In alternative embodiments, the frames


104


may have implicit tagging. In this case, those frames


104


which are addressed from a first particular set of MAC addresses (or are otherwise identifiable from their frame headers) are designated as being for a first VLAN segment


108


, while those frames


104


which are addressed from a second particular set of MAC addresses are designated as being for a second VLAN segment


108


.




As described herein, the LAN-switches


103


may also include the capability to perform layer-3 routing. LAN-switches


103


which include such layer-3 routing may couple a set of frames


104


between virtual LANs (VLANs) as well as physical networks


102


, it is possible for such a LAN-switch


103


to be coupled to only a single network


102


, and to route the frames


104


found on that network


102


between different VLANs. In that circumstance, the LAN-switch


103


receives the frame


104


from one of the VLANs implemented by the network


102


, and transmits the frame


104


onto another one of the VLANs implemented by the network


102


. An example of one such LAN-switch


103


, sometimes called a “lollypop router”


105


, is shown in the figure.




FORWARDING FRAMES AMONG MULTIPLE VLANS





FIG. 2

is a diagram of a set of LAN-switches disposed for coupling messages between multiple VLANs.




The set of LAN-switches


103


collectively comprises a subnet


200


, in which pairs of the LAN-switches


103


are coupled by a set of links


201


. Each link


201


comprises a physical network


102


, so that a set of frames


104


may be coupled between pairs of LAN-switches


103


. Each LAN-switch


103


comprises a set of ports


202


coupling the LAN-switch


103


to one of its links


201


, and therefore to another LAN-switch


103


.




Each LAN-switch


103


receives packets at each of its ports


202


, and recognizes each VLAN


106


which might be received at port


202


. When a frame


104


must be forwarded from a first VLAN segment


108


to a second VLAN segment


108


, the LAN-switch


103


removes tags


107


(shown in the figure as the numeric value ‘10’) for a first VLAN segment


108


and replaces them with tags


107


(shown in the figure as the character string value ‘GR’) for a second VLAN segment


108


.




In a preferred embodiment, the LAN-switch


103


identifies the second VLAN segment


108


required for the destination device


101


responsive to the output port


202


to which the frame


104


is routed. The port


202


may be one of three types shown in table 2-1.













TABLE 2-1









Port Type




Treatment











static




Each frame from the port is for a particular VLAN







which is statically configured for that port, regard-







less of the address or content of that frame.






dynamic




The port may be assigned to one of a plurality of







VLANs, one at a time. Each frame to or from the port







is examined and the port is dynamically reassigned to







a different VLAN in response to the address or con-







tent of that frame.







(For example, the port may be dynamically reassigned







in response to the MAC address of the sending device,







or in response to a layer three address.)






trunk




The port is assigned to a plurality of VLAN at once







Each frame to or from the port uses an encapsulation







or related technique to tag that frame as for a par-







ticular VLAN.







A VLAN trunk protocol causes each LAN-switch to







transmit advertisements regarding, and acquire infor-







mation about, VLANs for which that trunk port is con-







figured. Thus, a new VLAN need only be configured







for one LAN-switch in a management domain, as the







VLAN trunk protocol will ultimately propagate that







information to all LAN-switches in the management do-







main. The VLAN trunk protocol is described in fur-







ther detail below.














When the LAN-switch


103


receives a frame


104


on a static port


202


, it knows that frame


104


must be for the VLAN


106


statically configured for that port


202


. When the LAN-switch


103


transmits that frame


104


on another port


202


which is a trunk port


202


, it must encapsulate the frame


104


with the appropriate outgoing tag


107


to indicate the VLAN


106


.




When the LAN-switch


103


receives a frame


104


on a dynamic port


202


, it knows that the frame


104


must be configured according to one of the plurality of VLANs


106


configured for that port


202


, responsive to the address or contents (preferably the MAC address) of that frame


104


. The LAN-switch


103


identifies the incoming VLAN


106


responsive to the MAC address of the frame


104


. When the LAN-switch


103


transmits that frame


104


on another port


202


which is a trunk port


202


, it must encapsulate the frame


104


with the appropriate outgoing tag


107


to indicate the VLAN


106


.




When the LAN-switch


103


receives a frame


104


on a trunk port


202


, it knows that the frame


104


must be encapsulated and that the encapsulated frame may be for one of a plurality of VLANs


106


. The LAN-switch


103


identifies the VLAN


106


for the frame


104


responsive to the encapsulation header, and removes the encapsulation. When the LAN-switch


103


transmits that frame


104


on another trunk port


202


, it must re-encapsulate that frame


104


.




An network administrative workstation


203


is coupled to one LAN-switch


103


or elsewhere, and comprises a processor, program and data memory and mass storage, for executing application programs and for recording information, at least one input device (such as a keyboard or a pointing device such as a mouse) for receiving information from an operator


204


, and at least one output device (such as a monitor or printer) for presenting information to the operator


204


.




To identify the outgoing tag


107


which corresponds to the incoming tag


107


, the LAN-switch


103


maintains a database


205


which is preferably also available at the network administrative workstation


203


. The database


205


comprises a table


206


; the table


206


comprises a set of rows


207


and a set of columns


208


, with an entry


209


at the intersection of each row


207


and each column


208


. The table


206


is indexed by a column


208


for a VLAN management ID; there is one row


207


for each VLAN


106


and one column


208


for each VLAN transmit protocol.




In a preferred embodiment, the VLAN management ID comprises a character string, such as “red” or “green”. One VLAN management ID, “default”, is reserved for an initial VLAN


106


. LAN-switches


103


are configured for the “default” VLAN


106


when they are shipped from the factory. In a preferred embodiment, the VLAN management ID comprises an ASCII character string of eight characters or less.




In a preferred embodiment, the table


206


comprises is one column


208


for LANE, one column


208


for IEEE 802.10, and one column


208


for ISL. Each entry


209


comprises a tag


107


for the VLAN corresponding to its row


207


and the VLAN transmit protocol corresponding to its column


208


. The data for each entry


209


has a data type which depends on the particular VLAN technology, such as numeric data, ASCII character data, or other data.




In a preferred embodiment, the ISL tag


107


for the “default” VLAN


106


is ‘1’. For IEEE 802.10, frames


104


for the “default” VLAN


106


may be transmitted as native frames without IEEE 802.10 encapsulation.




In a preferred embodiment, the database


205


also comprises information regarding properties associated with each VLAN


106


(such as, for example, whether the VLAN


106


has had its operation suspended).




In alternative embodiments, the database


205


may be made available at other locations. For example, the database


205


may be recorded and updated separately at each LAN-switch


103


, at a particular LAN-switch


103


, or at a particular non-routing device


101


.




MANAGEMENT DOMAINS AND NETWORK ADMINISTRATION





FIG. 3

is a diagram showing a relationship between multiple VLANs, management domains, and network administration.




The network administrative workstation


203


controls a set of management domains


300


, each of which comprises one or more VLANs


106


. Each VLAN


106


comprises one or more devices


101


on one or more networks


102


in the interconnected network


100


.




Each VLAN


106


must have a unique name within its management domain


300


.




When two management domains


300


are coupled via a trunk port


202


, the default behavior (prior to any additional configuration) is that no frames


104


are forwarded between the two management domains


300


. However, the respective ports


202


may he configured using the network administrative workstation


203


to forward frames


104


for specific VLANs


106


.




When two management domains


300


are coupled via a non-trunk port


202


(thus, via a static port


202


or a dynamic port


202


), the respective ports


202


may be configured using the network administrative workstation


203


to forward frames


104


for specific VLANs


106


.




When frames


104


are transmitted across a trunk port


202


between a first management domain


300


and a second management domain


300


, the LAN-switch


103


must have a mapping between the source VLAN


106


in the first management domain


300


and the destination VLAN


106


in the second management domain


300


.




Each LAN-switch


103


maintains a list of VLANs


106


which are valid in its management domain


300


. This list is associated at each LAN-switch


103


with a configuration revision number; the configuration revision number is updated whenever a change is made to the configuration for that management domain


300


. Thus, a LAN-switch


103


can compare its configuration revision number with the new configuration to determine which is more recent.




When they are initially shipped from the factory, LAN-switches


103


are configured in a “no-management-domain” state. In this state the LAN-switch


103


does not belong to any particular management domain


300


and will update its database to learn about new VLANs


106


from all VLAN trunk protocol advertisements it receives. When a LAN-switch


103


is configured for a particular management domain


300


, it will ignore advertisements from different management domains


300


and it will check advertisements from the same management domain


300


for consistency.




When a LAN-switch


103


learns about a VLAN


106


, it will have received frames


104


from that VLAN


106


on any trunk port


202


, and will forward those frames


104


to all of its other trunk ports


202


(if any). This behavior may be altered by reconfiguring the LAN-switch


103


using the network administration workstation


203


to disable one or more VLANs


106


for a particular trunk port


202


.




MULTIPLE VLAN NETWORK ADMINISTRATION




The operator


204


at the network administrative workstation


203


may alter the database


205


and cause those alterations to be propagated to the LAN-switches


103


. Table 3-1 shows the changes which the operator


204


at the network administrative workstation


203


may make.













TABLE 3-1









Change




Effect











create a




A new VLAN is created. A record is created for the






VLAN




new VLAN; a new VLAN management ID is created; en-







tries are made for the new VLAN for each VLAN tech-







nology






delete a




An existing VLAN is removed from the configuration






VLAN




for the management domain. The deleted VLAN's entries







in the database at the network administration work-







station are purged and any ports configured for the







deleted VLAN are automatically disabled.







In an alternative embodiment, the deleted VLAN is







only purged from the database after all ports config-







ured for the deleted VLAN are reconfigured for an-







other VLAN.







The “default” VLAN cannot be deleted.






suspend a




An existing VLAN has its operation suspended. All






VLAN




traffic for the suspended VLAN is turned off for the







duration of the suspension. (This function might be







useful, for example, if traffic for the suspended







VLAN was disrupting the network.) All ports config-







ured for the suspended VLAN are disabled for the du-







ration of the suspension.







The “default” VLAN cannot be suspended.






resume a




A suspended VLAN has its suspension terminated. All






VLAN




ports for the resumed VLAN are re-enabled and traffic







is allowed to flow for the resumed VLAN.














Those skilled in the art will recognize, after perusal of this application, that other and further management functions would not require undue experimentation, and are within the scope and spirit of the invention.




VLAN PROTOCOLS AND MESSAGE FORMATS





FIG. 4

is a diagram showing message formats for use in VLAN protocols.




VLAN Trunk Protocol




Each LAN-switch


103


transmits advertisements regarding all VLANs


106


about which it knows, and possibly other information global to the management domain


300


. Advertisements are transmitted via the “default” VLAN


106


; thus, only one advertisement is transmitted for each trunk port


202


. Advertisements are transmitted as multicast frames


104


but not forwarded using normal bridging techniques.




Each LAN-switch


103


maintains a configuration revision number for each managment domain


300


for which it is configured. The configuration revision number is an unsigned 32 bit value, which is initially set to zero and is incremented by one for each modification or reconfiguration at the LAN-switch


103


until the maximum value of 4,294,967,295 (hexadecimal ‘FFFF FFFF’) is reached, at which point the configuration revision number is wrapped around back to zero.




When a LAN-switch


103


receives an advertisement and it is not configured for any management domain


300


, it updates its database


205


from that advertisement. When a LAN-switch


103


receives an advertisement and it is configured for one or more particular management domains


300


, it authenticates that advertisement using its current configuration revision number for the appropriate management domain


300


. If the advertisement is authentic and its configuration revision number exceeds the LAN-switch's current configuration revision number, the LAN-switch


103


updates its database


205


from that advertisement; otherwise the LAN-switch


103


ignores the advertisement.




The configuration revision number A is deemed to be less than the configuration revision number B if and only if




((A<B and (B−A)<2,147,483,648) or (A>B and (A−B)>2,147,483,648))




The types of advertisement messages are shown in table 4-1.













TABLE 4-1









Port Type




Treatment











Advert-




This message requests that an advertisement be sent.






Request






Summary-




This message provides the management domain, configu-






Advert




ration revision number, and checksum for the adver-







tisement. The Summary-Advert message is followed by







zero or more Subset-Advert messages, as appropriate.






Subset-




This message comprises all advertised information for






Advert




one or more VLANs. Each Subset-Advert message is la-







belled with a sequence number in case more than one







Subset-Advert message is sent.














The Advert-Request message


400


comprises a VLAN trunk protocol version number


401


(1 byte, which is always ‘1’), a type of message code


402


(1 byte, which is preferably ‘3’ for the Advert-Request message


400


), a reserved byte


403


, a management domain name


404


(variable length, but preferably a multiple of 4 bytes), a length value


405


(1 byte) for the management domain name


404


, and a start value


406


(2 bytes).




The Summary-Advert message


410


comprises the VLAN trunk protocol version number


401


, the type of message code


402


(which is preferably ‘1’ for the Summary-Advert message


410


), the management domain name


404


(variable length, but preferably a multiple of 4 bytes), a length value


405


(1 byte) for the management domain name


404


, a configuration revision number


411


(4 bytes), an MD5 digest value


412


(4 bytes), and a followers value


413


(1 byte).




The Subset-Advert message


420


comprises the VLAN trunk protocol version number


401


, the type of message code


402


(which is preferably ‘2’ for the Subset-Advert message


420


), a reserved byte


403


, the configuration revision number


411


, a sequence number


421


(1 byte), and a sequence of VLAN blocks


430


.




Each VLAN block


430


comprises a status value


431


(1 byte), a VLAN type value


432


(1 byte), a VLAN name


433


(variable length, but preferably a multiple of 4 bytes), a length value


434


(1 byte) for the VLAN name


433


, an ISL VLAN identifier


435


(2 bytes), an IEEE 802.10 index value


438


, and a maximum frame size value


439


.




The start value


406


is used in the event that the LAN-switch


103


does not desire all VLANs


106


to be advertised to it. In the actual advertisement, the Subset-Advert messages


420


are ordered by ISL VLAN identifier


435


. The start value


406


indicates from which ISL VLAN identifier


435


to start; all VLANs


106


which precede the start value


406


are not advertised. If the start value


406


is zero, all VLANs


106


are advertised.




Advertisements are authenticated; learning only occurs from authentic advertisements. Each advertisement comprises a checksum, preferably the MD5 digest value


412


, which is computed using a one-way cryptographic hash function (the MD5 digest function) of the concatenation of (1) the Summary-Advert message


410


with the followers value


413


replaced with a zero value, (2) the VLAN blocks


430


ordered by ISL VLAN identifier


435


, and (3) a “secret value”. The default secret value is all zeros, thus providing non-secure but immediately compatible operation. The secret value may be configured for each LAN-switch


103


using the network administrative workstation


203


, thus providing secure operation. Since each advertisement comprises a new configuration revision number


411


, the MD5 digest value


412


cannot be repeated until the configuration revision number


411


is itself repeated.




The followers value


413


indicates how many Subset-Advert messages


420


follow the Summary-Advert message


410


. The number of Subset-Advert messages


420


which follow the Summary-Advert message


410


are shown in table 4-2.













TABLE 4-2









Reason for Sending Advertisement




Number of Followers











Neither this LAN-switch or any




zero






other LAN-switch has recently






(within the timeout period) sent






an advertisement.






A configuration change has been




the minimun number required to






made.




contain all information on ex-







actly those VLANs which have







changed, ordered by ISL VLAN







identifier






An Advert-Request message for




the minimum number required to






information for all VLANs was




contain all information on all






received.




VLANs, ordered by ISL VLAN iden-







tifier






An Advert-Request message for




the minimum number required to






information about a subset of




contain all information on all






all VLANs was received.




VLANs except those which were







not requested, ordered by ISL







VLAN identifier














The VLAN type value


432


indicates what type the VLAN


106


is: ethernet or IEEE 802.3, token ring or IEEE 802.5, or FDDI.




The maximum frame size value


439


indicates the maximum frame size for that particular VLAN


106


.




An Advert-Request message


400


is sent in the following cases:




when the LAN-switch


103


is rebooted.




when the LAN-switch


103


receives a Subset-Advert message


420


having a configuration revision number


411


higher than the LAN-switch's own configuration revision number


411


.




when the LAN-switch


103


receives a Summary-Advert message


410


having a configuration revision number


411


higher than the LAN-switch's own configuration revision number


411


, and followed by zero Subset-Advert messages


420


.




when the LAN-switch


103


does not receive the expected number of Subset-Advert messages


420


within a short period after receiving a Summary-Advert message


410


having a configuration revision number


411


higher than the LAN-switch's own configuration revision number


411


. In this case, the Advert-Request message


400


is set to request only the missing Subset-Advert messages


420


, by setting the start value


406


to one more than the highest ISL VLAN identifier


435


received.




when the LAN-switch


103


receives a Summary-Advert message


410


having a configuration revision number


411


more than one value higher than the LAN-switch's own configuration revision number


411


.




An advertisement, comprising a Summary-Advert message


410


and zero or more Subset-Advert messages


420


, is sent in the following cases:




immediately after its configuration revision number is modified (thus, immediately after any configuration change);




periodically on any trunk port


202


for which it has not sent an advertisement or received an advertisement matching its own, for a configurable timeout period, preferably about five minutes. The actual time for sending advertisements is jittred (modified by a small random or pseudorandom value) to avoid syncrhonization effects. Periodic advertisements can be disabled using the network administrative workstation


203


.




when a request for an advertisement is received. In this case, the timeout period is truncated to a small random or pseudorandom value.




In a preferred embodiment, the timeout for sending an advertisement is between about 2 minutes and about 10 minutes. Whenever this timeout is started, a pseudorandom value of less than about 1 second is added to it. When a consistent advertisement is received, the timeout is restarted without sending any advertisement. When an Advert-Request message


400


is received, the timeout is truncated to the value of the most recent pseudorandom value.




Those skilled in the art will recognize, after perusal of this application, that the VLAN trunk protocol may be used to distribute other and further types of information, that such activity would not require undue experimentation, and that such activity is within the scope and spirit of the invention. For example, such other and further types of information could include the following:




port configuration information—whether a particular port


202


is a static port


202


, dynamic port


202


, or a trunk port


202


; or




dynamic assignment configuration information—either (1) which VLAN


106


a dynamic port


202


is associated with, or (2) a mapping between a layer three protocol address space, or a subspace thereof, and which VLAN


106


a dynamic port


202


should be associated with.




VCS Protocol




A VLAN configuration server comprises local information about VLANs


106


, including port configuration information and dynamic assignment configuration information. In a preferred embodiment, the VLAN configuration server is available at the network work administrative workstation


203


, but in alternative embodiments, may be a separate device


101


or may be distributed over several LAN-switches


103


or other devices


101


.




To configure its ports


202


, each LAN-switch


103


sends a message to the VCS to request configuration information. If the LAN-switch


103


is coupled to a ATM network


102


, it also attempts, for each VLAN


106


it knows about, to join the LANE emulated-LAN (ELAN) having the same name.




For static ports


202


, the LAN-switch


103


receives configuration information specifying with which VLAN


106


the port


202


is associated.




For dynamic ports


202


, the LAN-switch


103


receives configuration information specifying a mapping to VLANs


106


for MAC addresses for the sending devices


101


for frames


104


.




The message requesting configuration information is sent directly to the VCS if the LAN-switch


103


is not coupled to a ATM network


102


. Otherwise, the message is encapsulated using the LANE protocol and sent to a LANE configuration server (LECS).




If the VCS (or LECS) responds for a port


202


with a VLAN name (or ELAN name) which is known to the LAN-switch


103


, the port


202


is assigned to the VLAN


106


with that name.




If the VCS (or LECS) responds for a port


202


with a refusal, that port


202


is disabled.




If the VCS (or LECS) responds for a port


202


with a VLAN name (or ELAN name) which is not known to the LAN-switch


103


, or if the VCS (or LECS) does not respond after a number of retries, or if the VCS (or LECS) cannot be reached, the LAN-switch


103


retries the request at periodic intervals.




However, if the LAN-switch


103


has local configuration information which maps a source MAC addresses to VLANs


106


for a dynamic port


202


, it uses that local configuration information to reassign the dynamic port


202


in response to source MAC addresses.




Alternative Embodiments




Although preferred embodiments are disclosed herein, many variations are possible which remain within the concept:, scope, and spirit of the invention, and these variations would become clear to those skilled in the art after perusal of this application.



Claims
  • 1. A multiple VLAN architecture system, in which multiple different VLANs are capable of operating within a single network, comprisingat least one network communication medium; a LAN-switch coupled to said at least one network communication medium and disposed to receive and route packets, each said packet having a VLAN identifier, and comprising means for routing from a first VLAN to a second VLAN, said means for routing comprising means for removing a first VLAN encapsulation and means for adding a second VLAN encapsulation, said means for adding said second VLAN encapsulation replacing said first VLAN encapsulation with said second VLAN encapsulation, said means for removing and said means for adding located at said LAN-switch; and means for identifying said VLAN identifier and means for determining a new VLAN identifier for said second VLAN responsive thereto.
  • 2. A multiple VLAN architecture system, in which multiple different VLANs are capable of operating within a single network, comprisingat least one network communication medium; and a LAN-switch coupled to said at least one network communication medium and disposed to receive and route packets, each said packet having a VLAN identifier, and comprising means for routing from a first VLAN to a second VLAN, said means for routing comprising means for removing a first VLAN encapsulation and means for adding a second VLAN encapsulation, said means for adding said second VLAN encapsulation replacing said first VLAN encapsulation with said second VLAN encapsulation, said means for removing and said means for adding located at said LAN-switch; wherein said LAN-switch comprises a plurality of static ports, each said static port being associated with one of said VLANs.
  • 3. A multiple VLAN architecture system, in which multiple different VLANs are capable of operating within a single network, comprisinga plurality of network communication media; a first VLAN comprising a first plurality of devices, each one of said first plurality of devices coupled to at least one of said network communication media; and a second VLAN comprising a second plurality of devices, each one of said second plurality of devices coupled to at least one of said network communication media; said first plurality of devices and said second plurality of devices sharing at least one common device; and said system further comprising: means for receiving a packet having a first encapsulation according to said first VLAN; means for removing said first encapsulation; means for re-encapsulating said packet with a second encapsulation according to said second VLAN; and means for receiving a packet from a source coupled to said first VLAN and transmitting said packet to a destination coupled to said second VLAN; wherein said first encapsulation and said second encapsulation are substantially different, and said means for removing and said means for re-encapsulating are located at said at least one common device.
  • 4. A multiple VLAN architecture system, in which multiple different VLANs are capable of operating within a single network, comprisinga plurality of network communication media; a first VLAN comprising a first plurality of devices, each one of said first plurality of devices coupled to at least one of said network communication media; and a second VLAN comprising a second plurality of devices, each one of said second plurality of devices coupled to at least one of said network communication media; said first plurality of devices and said second plurality of devices sharing at least one common device; and said system further comprising: means for receiving a packet having a first encapsulation according to said first VLAN; means for removing said first encapsulation; means for re-encapsulating said packet with a second encapsulation according to said second VLAN; and means for defining a new VLAN comprising a new corresponding plurality of devices, each one of said new corresponding plurality of devices coupled to at least one of said network communication media; wherein said first encapsulation and said second encapsulation are substantially different, and said means for removing and said means for re-encapsulating are located at said at least one common device.
  • 5. A method for routing a packet in a multiple VLAN architecture system, in which multiple different VLANs are capable of operating within a single network having at least one network communication medium, said system including a LAN-switch coupled to said at least one network communication medium and disposed to receive and route said packet, said packet having a VLAN identifier, said LAN-switch performing the step of:routing said packet from a first VLAN to a second VLAN by: removing a first VLAN encapsulation; and replacing said first VLAN encapsulation with a second VLAN encapsulation; wherein said LAN-switch includes a plurality of ports; and wherein said plurality of ports include at least one dynamic port, and said method further includes steps of: associating said at least one dynamic port with a first one of said VLANs; and reassociating said at least one dynamic port with a second one of said VLANs.
  • 6. A method for routing a packet in a multiple VLAN architecture system, in which multiple different VLANs are capable of operating within a single network having a plurality of network communication media, said system including a first VLAN comprising a first plurality of devices and a second VLAN comprising a second plurality of devices, each one of said second plurality of devices coupled to at least one of said network communication media, said first plurality of devices and said second plurality of devices sharing at least one common device, said at least one common device performing the steps of:receiving a packet having a first encapsulation according to said first VLAN; removing said first encapsulation; re-encapsulating said packet with a second encapsulation according to said second VLAN, wherein said first encapsulation and said second encapsulation are substantially different; and defining a new VLAN comprising a new corresponding plurality of devices, each one of said new corresponding plurality of devices coupled to at least one of said network communication media.
  • 7. An apparatus having a central processing unit (CPU) and a memory coupled to said CPU for switching a packet between a plurality of different VLAN segments operational within a single network having one or more VLANs and one or more management domains, each management domain for management of at least one VLAN, the apparatus including:a network interface in communication with at least one network communication medium and with said CPU; a packet reception mechanism configured to receive said packet from said at least one network communication medium using the network interface, said packet having a VLAN identifier and originating from a first VLAN segment; a packet routing mechanism configured to route said packet to a second VLAN segment; and a VLAN configuration mechanism configured to maintain said one or more management domains in said apparatus, wherein the VLAN configuration mechanism includes: a case detection mechanism configured to detect when to request an advertisement message; a request advertisement mechanism, responsive to the case detection mechanism, configured to send an advert-request message over said at least one network communication medium; an advertisement reception mechanism configured to receive said advertisement message from said at least one network communication medium; and a configuration maintenance mechanism, responsive to changes in said one or more management domains, configured to maintain a configuration revision number for each of said one or more management domains.
  • 8. The apparatus of claim 7 wherein said advert-request message includes:an advert-request identification value in a type of message field; and a management domain identification value of said apparatus in a management domain field.
  • 9. The apparatus of claim 8 wherein said advert-request message further includes: a start field containing a VLAN selection value that controls which of said one or more VLANS respond to said advert-request message.
  • 10. The apparatus of claim 7 wherein the case detection mechanism is responsive to a condition selected from the group consisting of:a condition of the apparatus initializing; a condition of the apparatus having received one of a set of advertisement subset messages having a configuration value higher than said configuration revision number; a condition of the apparatus having received an advertisement summary message having a configuration value higher than said configuration revision number without a subsequent one of a set of advertisement subset messages; a condition of the apparatus having not received each of a set of advertisement subset messages as specified by an advertisement summary message; or a condition of the apparatus having received an advertisement summary message having a configuration value more than one higher than said configuration revision number.
  • 11. The apparatus of claim 7 wherein said advertisement message includes:an advertisement summary message; and a set of advertisement subset messages; wherein each message has a type of message field and a type of message field.
  • 12. The apparatus of claim 11 wherein said advertisement summary message includes:an advertisement summary message identification value, in said type of message field, that identifies said advertisement summary message; a management domain identification value of a source of said advertisement summary message in said management domain field; a followers value, in a followers field, that specifies a number of said set of advertisement subset messages related to said advertisement summary message; and a configuration value, in a configuration revision number field, that identifies a configuration state for the source of said advertisement summary message.
  • 13. The apparatus of claim 11 wherein each of said set of advertisement subset messages includes:an advertisement subset message identification value, in said type of message field, that identifies said advertisement subset message; a configuration value, in a configuration revision number field, that identifies the configuration state for a source of the advertisement subset message; a sequence value, in a sequence number field, that distinguishes each of said set of advertisement subset messages; and a set of VLAN block specific information for the VLANs advertised by the source of said advertisement subset messages.
  • 14. An apparatus having a central processing unit (CPU) and a memory coupled to said CPU for switching a packet between a plurality of different VLAN segments operational within a single network having one or more VLANs and one or more management domains, each management domain for management of at least one VLAN, the apparatus including:a network interface in communication with at least one network communication medium and with said CPU; a packet reception mechanism configured to receive said packet from said at least one network communication medium using the network interface, said packet having a VLAN identifier and originating from a first VLAN segment; a packet routing mechanism configured to route said packet to a second VLAN segment; and a VLAN configuration mechanism configured to maintain said one or more management domains in said apparatus, wherein the VLAN configuration mechanism includes: a case detection mechanism configured to detect when to send an advertisement message; a send advertisement sending mechanism, responsive to the case detection mechanism, configured to send an advertisement message over said at least one network communication medium; an advert-request message reception mechanism configured to receive an advert-request message from said at least one network communication medium; and a configuration maintenance mechanism, responsive to changes in said one or more management domains, configured to maintain a configuration revision number for each of said one or more management domains.
  • 15. The apparatus of claim 14 wherein the case detection mechanism is responsive to a condition selected from the group consisting of:a condition of the apparatus having modified said configuration revision number; a condition of an expiration of a timer without the apparatus having sent said advertisement message or the apparatus having received another advertisement message from said at least one network communication medium; or a condition of receipt of said advert-request message by the advert-request message reception mechanism.
  • 16. A computer program product including:a computer usable storage medium having computer readable code embodied therein for causing a computer to switch a packet between a plurality of different VLAN segments operational within a single network having one or more VLANs and one or more management domains, each management domain for management of at least one VLAN, said computer readable code including: computer readable program code configured to cause said computer to effect a network interface in communication with at least one network communication medium and with said CPU; computer readable program code configured to cause said computer to effect a packet reception mechanism configured to receive said packet from said at least one network communication medium using the network interface, said packet having a VLAN identifier and originating from a first VLAN segment; computer readable program code configured to cause said computer to effect a packet routing mechanism configured to route said packet to a second VLAN segment; and computer readable program code configured to cause said computer to effect a VLAN configuration mechanism configured to maintain said one or more management domains in said product, wherein the VLAN configuration mechanism includes: computer readable program code configured to cause said computer to effect a case detection mechanism configure to detect when to request an advertisement message; computer readable program code configured to cause said computer to effect a request advertisement mechanism, responsive to the case detection mechanism, configured to send an advert-request message over said at least one network communication medium; computer readable program code configure to cause said computer to effect an advertisement reception mechanism configured to receive said advertisement message from said at least one network communication medium; and computer readable program code configured to cause said computer to effect a configuration maintenance mechanism, responsive to changes in said one or more management domains, configured to maintain a configuration revision number for each of said one or more management domains.
  • 17. The product of claim 16 wherein the case detection mechanism is responsive to a condition selected from the group consisting of:a condition of the product initializing; a condition of the product having received one of a set of advertisement subset messages having a configuration value higher than said configuration revision number; a condition of the product having received an advertisement summary message having a configuration value higher than said configuration revision number without a subsequent one of a set of advertisement subset messages; a condition of the product having not received each of a set of advertisement subset messages as specified by an advertisement summary message; or a condition of the product having received an advertisement summary message having a configuration value more than one higher than said configuration revision number.
  • 18. A computer program product including:a computer usable storage medium having computer readable code embodied therein for causing a computer to switch a packet between a plurality of different VLAN segments operational within a single network having one or more VLANs and one or more management domains, each management domain for management of at least one VLAN, said computer readable code including: computer readable program code configured to cause said computer to effect a network interface in communication with at least one network communication medium and with said CPU; computer readable program code configured to cause said computer to effect a packet reception mechanism configured to receive said packet from said at least one network communication medium using the network interface, said packet having a VLAN identifier and originating from a first VLAN segment; computer readable program code configured to cause said computer to effect a packet routing mechanism configured to route said packet to a second VLAN segment; and computer readable program code configured to cause said computer to effect a VLAN configuration mechanism configured to maintain said one or more management domains in said product, wherein the VLAN configuration mechanism includes: computer readable program code configured to cause said computer to effect a case detection mechanism configured to detect when to send an advertisement message; computer readable program code configured to cause said computer to effect a send advertisement sending mechanism, responsive to the case detection mechanism, configured to send an advertisement message over said at least one network communication medium; computer readable program code configured to cause said computer to effect an advert-request message reception mechanism configured to receive an advert-request message from said at least one communication medium; and computer readable program code configured to cause said computer to effect a configuration maintenance mechanism, responsive to changes in said one or more management domains, configured to maintain a configuration revision number for each of said one or more management domains.
  • 19. The product of claim 18 wherein the case detection mechanism is responsive to a condition selected from the group consisting of:a condition of the product having modified said configuration revision number; a condition of an expiration of a timer without the product having sent said advertisement message or the product having received another advertisement message from said at least one network communication medium; or a condition of receipt of said advert-request message by the advert-request message reception mechanism.
  • 20. A multiple VLAN architecture in which multiple different VLANs are capable of operating within a single network, comprisingat least one network communication medium; and a LAN-switch coupled to said at least one network communication medium and disposed to receive and route packets, each said packet having a VLAN identifier, and comprising means for routing from a first VLAN to a second VLAN, said means for routing comprising means for removing a first VLAN encapsulation and means for adding a second VLAN encapsulation, said means for adding said second VLAN encapsulation replacing said first VLAN encapsulation with said second VLAN encapsulation, said means for removing and said means for adding located at said LAN-switch; wherein said LAN-switch comprises a plurality of ports; and wherein said plurality of ports include at least one dynamic port which is associated with a first one of said VLANs and includes means for being reassociated with a second one of said VLANs.
Parent Case Info

This is a continuation of application Ser. No. 08/582,074 filed Jan. 2, 1996 now U.S. Pat. No. 6,035,105.

US Referenced Citations (193)
Number Name Date Kind
RE. 33900 Howson Apr 1992
4131767 Weinstein Dec 1978
4161719 Parikh et al. Jul 1979
4316284 Howson Feb 1982
4397020 Howson Aug 1983
4419728 Larson Dec 1983
4424565 Larson Jan 1984
4437087 Petr Mar 1984
4438511 Baran Mar 1984
4439763 Limb Mar 1984
4445213 Baugh et al. Apr 1984
4446555 Devault et al. May 1984
4456957 Schieltz Jun 1984
4464658 Thelen Aug 1984
4499576 Fraser Feb 1985
4506358 Montgomery Mar 1985
4507760 Fraser Mar 1985
4532626 Flores et al. Jul 1985
4644532 George et al. Feb 1987
4646287 Larson et al. Feb 1987
4677423 Benvenuto et al. Jun 1987
4679189 Olson et al. Jul 1987
4679227 Hughes-Hartogs Jul 1987
4723267 Jones et al. Feb 1988
4731816 Hughes-Hartogs Mar 1988
4750136 Arpin et al. Jun 1988
4757495 Decker et al. Jul 1988
4763191 Gordon et al. Aug 1988
4769810 Eckberg, Jr. et al. Sep 1988
4769811 Eckberg, Jr. et al. Sep 1988
4771425 Baran et al. Sep 1988
4819228 Baran et al. Apr 1989
4827411 Arrowood et al. May 1989
4833706 Hughes-Hartogs May 1989
4835737 Herrig et al. May 1989
4879551 Georgiou et al. Nov 1989
4893306 Chao et al. Jan 1990
4903261 Baran et al. Feb 1990
4922486 Lidinsky et al. May 1990
4933937 Konishi Jun 1990
4960310 Cushing Oct 1990
4962497 Ferenc et al. Oct 1990
4962532 Kasirai et al. Oct 1990
4965767 Kinoshita et al. Oct 1990
4965772 Daniel et al. Oct 1990
4970678 Sladowski et al. Nov 1990
4979118 Kheradpir Dec 1990
4980897 Decker et al. Dec 1990
4991169 Davis et al. Feb 1991
5003595 Collins et al. Mar 1991
5014265 Hahne et al. May 1991
5020058 Holden et al. May 1991
5033076 Jones et al. Jul 1991
5034919 Sasai et al. Jul 1991
5054034 Hughes-Hartogs Oct 1991
5059925 Weisbloom Oct 1991
5072449 Enns et al. Dec 1991
5088032 Bosack Feb 1992
5095480 Fenner Mar 1992
5115431 Williams et al. May 1992
5128945 Enns et al. Jul 1992
5136580 Videlock et al. Aug 1992
5166930 Braff et al. Nov 1992
5199049 Wilson Mar 1993
5206886 Bingham Apr 1993
5208811 Kashio et al. May 1993
5212686 Joy et al. May 1993
5224099 Corbalis et al. Jun 1993
5226120 Brown et al. Jul 1993
5228062 Bingham Jul 1993
5229994 Balzano et al. Jul 1993
5237564 Lespagnol et al. Aug 1993
5241682 Bryant et al. Aug 1993
5243342 Kattemalalavadi et al. Sep 1993
5243596 Port et al. Sep 1993
5247516 Bernstein et al. Sep 1993
5249178 Kurano et al. Sep 1993
5251205 Callon et al. Oct 1993
5253251 Aramaki Oct 1993
5255291 Holden et al. Oct 1993
5260933 Rouse Nov 1993
5260978 Fleischer et al. Nov 1993
5268592 Bellamy et al. Dec 1993
5268900 Hluchyj et al. Dec 1993
5271004 Proctor et al. Dec 1993
5274631 Bhardwaj Dec 1993
5274635 Rahman et al. Dec 1993
5274643 Fisk Dec 1993
5280470 Buhrke et al. Jan 1994
5280480 Pitt et al. Jan 1994
5280500 Mazzola et al. Jan 1994
5283783 Nguyen et al. Feb 1994
5287103 Kasprzyk et al. Feb 1994
5287453 Roberts Feb 1994
5291482 McHarg et al. Mar 1994
5305311 Lyles Apr 1994
5307343 Bostica et al. Apr 1994
5309437 Perlman et al. May 1994
5311509 Heddes et al. May 1994
5313454 Bustini et al. May 1994
5313582 Hendel et al. May 1994
5317562 Nardin et al. May 1994
5319644 Liang Jun 1994
5327421 Hiller et al. Jul 1994
5331637 Francis et al. Jul 1994
5345445 Hiller et al. Sep 1994
5345446 Hiller et al. Sep 1994
5359592 Corbalis et al. Oct 1994
5361250 Nguyen et al. Nov 1994
5361256 Doeringer et al. Nov 1994
5361259 Hunt et al. Nov 1994
5365524 Hiller et al. Nov 1994
5367517 Cidon et al. Nov 1994
5371852 Attanasio et al. Dec 1994
5386567 Lien et al. Jan 1995
5390170 Sawant et al. Feb 1995
5390175 Hiller et al. Feb 1995
5394394 Crowther et al. Feb 1995
5394402 Ross Feb 1995
5400325 Chatwani et al. Mar 1995
5408469 Opher et al. Apr 1995
5416842 Aziz May 1995
5422880 Heitkamp et al. Jun 1995
5422882 Hiller et al. Jun 1995
5423002 Hart Jun 1995
5426636 Hiller et al. Jun 1995
5428607 Hiller et al. Jun 1995
5430715 Corbalis et al. Jul 1995
5430729 Rahnema Jul 1995
5442457 Najafi Aug 1995
5442630 Gagliardi et al. Aug 1995
5452297 Hiller et al. Sep 1995
5473599 Li et al. Dec 1995
5473607 Hausman et al. Dec 1995
5477541 White et al. Dec 1995
5485455 Dobbins et al. Jan 1996
5490140 Abensour et al. Feb 1996
5490258 Fenner Feb 1996
5491687 Christensen et al. Feb 1996
5491804 Heath et al. Feb 1996
5497368 Reijnierse et al. Mar 1996
5504747 Sweasey Apr 1996
5509006 Wilford et al. Apr 1996
5517494 Green May 1996
5519704 Farinacci et al. May 1996
5519858 Walton et al. May 1996
5526489 Nilakantan et al. Jun 1996
5530963 Moore et al. Jun 1996
5535195 Lee Jul 1996
5539734 Burwell et al. Jul 1996
5541911 Nilakantan et al. Jul 1996
5546370 Ishikawa Aug 1996
5555244 Gupta et al. Sep 1996
5561669 Lenney et al. Oct 1996
5583862 Callon Dec 1996
5592470 Rudrapatna et al. Jan 1997
5598581 Daines et al. Jan 1997
5600798 Chenrukuri et al. Feb 1997
5602770 Ohira Feb 1997
5604868 Komine et al. Feb 1997
5608726 Virgile Mar 1997
5617417 Sathe et al. Apr 1997
5617421 Chin et al. Apr 1997
5630125 Zellweger May 1997
5631908 Saxe May 1997
5632021 Jennings et al. May 1997
5633869 Burnett et al. May 1997
5634010 Ciscon et al. May 1997
5638359 Peltola et al. Jun 1997
5644718 Belove et al. Jul 1997
5659684 Giovannoni et al. Aug 1997
5666353 Klausmeier et al. Sep 1997
5673265 Gupta et al. Sep 1997
5678006 Valizadeh et al. Oct 1997
5680116 Hashimoto et al. Oct 1997
5684797 Aznar et al. Nov 1997
5687324 Green et al. Nov 1997
5689506 Chiussi et al. Nov 1997
5694390 Yamato et al. Dec 1997
5724351 Chao et al. Mar 1998
5740097 Satoh Apr 1998
5748186 Raman May 1998
5748617 McLain, Jr. May 1998
5754547 Nakazawa May 1998
5802054 Bellenger Sep 1998
5835710 Nagami et al. Nov 1998
5841874 Kempke et al. Nov 1998
5854903 Morrison et al. Dec 1998
5856981 Voelker Jan 1999
5859837 Crayford Jan 1999
5892924 Lyon et al. Apr 1999
5898686 Virgile Apr 1999
5903559 Acharya et al. May 1999
Foreign Referenced Citations (7)
Number Date Country
0 384 758 A2 Aug 1990 EP
0 431 751 A1 Jun 1991 EP
0 567 217 A2 Oct 1993 EP
WO9307692 Apr 1993 WO
WO9307569 Apr 1993 WO
WO9401828 Jan 1994 WO
WO9520850 Aug 1995 WO
Non-Patent Literature Citations (12)
Entry
William Stallings, Data and Computer Communications, PP: 329-333, Prentice Hall, Upper Saddle River, New Jersey 07458.
Allen, M., “Novell IPX Over Various WAN Media (IPXW AN),” Network Working Group, RFC 1551, Dec. 1993, pp. 1-22.
Becker, D., “3c589.c: A 3c589 EtherLink3 ethernet driver for linux,” becker@CESDIS.gsfc.nasa.gov, May 3, 1994, pp. 1-13.
Chowdhury, et al., “Alternative Bandwidth Allocation Algorithms for Packet Video in ATM Networks,” INFOCOM 1992, pp. 1061-1068.
Doeringer, W., “Routing on Longest-Matching Prefixes,” IEEE/ACM Transactions in Networking, vol. 4, No. 1, Feb. 1996, pp. 86-97.
Esaki, et al., “Datagram Delivery in an ATM-Internet,” 2334b IEICE Transactions on Communications, Mar. 1994, No. 3, Tokyo, Japan.
IBM Corporation, “Method and Apparatus for the Statistical Multiplexing of Voice, Data and Image Signals,” IBM Technical Disclosure Bulletin, No. 6, Nov. 1992, pp. 409-411.
Pei, et al., “Putting Routing Tables in Silicon,” IEEE Network Magazine, Jan. 1992, pp. 42-50.
Perkins, D., “Requirements for an Internet Standard Point-to-Point Protocol,” Network Working Group, RFC 1547, Dec. 1993, pp. 1-19.
Simpson, W., “The Point-to-Point Protocol (PPP),” Network Working Group, RFC 1548, Dec. 1993, pp. 1-53.
Tsuchiya, P.F., “A Search Algorithm for Table Entries with Non-Contiguous Wildcarding,” Abstract, Bellcore.
Zhang, et al., “Rate-Controlled Static-Priority Queueing,” INFOCOM 1993, pp. 227-236.
Continuations (1)
Number Date Country
Parent 08/582074 Jan 1996 US
Child 09/277329 US