Language selection

Search

Patent 2308219 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 2308219
(54) English Title: STREAM-LINE DATA NETWORK
(54) French Title: RESEAU DE DONNEES RATIONALISE
Status: Dead
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04L 12/44 (2006.01)
  • H04L 12/56 (2006.01)
(72) Inventors :
  • MCKEOWN, NICHOLAS W. (United States of America)
(73) Owners :
  • ABRIZIO, INC. (United States of America)
(71) Applicants :
  • ABRIZIO, INC. (United States of America)
(74) Agent: FETHERSTONHAUGH & CO.
(74) Associate agent:
(45) Issued:
(86) PCT Filing Date: 1998-10-27
(87) Open to Public Inspection: 1999-05-06
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): Yes
(86) PCT Filing Number: PCT/US1998/022744
(87) International Publication Number: WO1999/022496
(85) National Entry: 2000-04-20

(30) Application Priority Data:
Application No. Country/Territory Date
60/063,562 United States of America 1997-10-28

Abstracts

English Abstract




The network system of a preferred embodiment of the present invention achieves
a real-time, high bandwidth system that enables a plurality of end-devices to
communicate with one another in a simple cost-effective manner. In particular,
a redirector module operates as a centralized point in the network, which
routes data packets received from an upstream stream-line signal associated
with source end-devices to downstream stream-line signals associated with end-
devices that are the intended recipients of the data packets. A multiplexer
module is utilized in each branch of the network to multiplex channel signals
into upstream stream-line signals and demultiplex downstream stream-line
signals into channel signals.


French Abstract

Selon un mode de réalisation préféré de cette invention, le système de réseau se présente comme un système en temps réel à largeur de bande élevée qui permet à plusieurs dispositifs terminaux de communiquer entre eux de manière simple et efficace en termes de coûts. En particulier, un module redirecteur fonctionne comme un point centralisé du réseau qui achemine les paquets de données, reçus d'un signal rationalisé en amont qui est associé aux dispositifs terminaux sources, vers les signaux rationalisés en aval qui sont associés aux dispositifs terminaux sources qui sont les destinataires désirés des paquets de données. A chaque branche du réseau, on utilise un module de multiplexage pour multiplexer les signaux de voies en des signaux rationalisés en amont et pour démultiplexer les signaux rationalisés en aval en des signaux de voie.

Claims

Note: Claims are shown in the official language in which they were submitted.




CLAIMS
What is claimed is:
1. A network system having a plurality of end-devices, the system comprising:
a first multiplexer module, coupled to a first end-device and a second end-
device of the
plurality of end-devices, for receiving a first data packet signal from the
first end-device and a
second data packet signal from the second end-device and for transmitting a
first stream-line
signal with the first data packet signal and the second data packet signal;
and
a redirector module, coupled to the first multiplexer module, for receiving
the first
stream-line signal and for transmitting a second stream-line signal with the
second data packet
signal and a third stream-line signal with the second data packet signal.
2. The network system of claim 1 wherein the redirector module includes a
first port
module coupled to the first multiplexer module for receiving the first stream-
line signal,
retrieving the first data packet signal and the second data packet signal from
the first stream-line
signal and for transmitting the first data packet signal and second data
packet signal.
3. The network system of claim 1 wherein the redirector module includes a
first port
module for integrating the first data packet signal into the second stream-
line signal and for
transmitting the second stream-line signal.
4. The network system of claim 3 wherein the first port module includes a
management
unit for controlling the buffering and integration of the first data packet
signal into the second
stream-line signal.
5. The network system of claim 3 wherein the first port module includes a
buffer module
for storing the first data packet signal that cannot be integrated into the
second stream-line
signal.
6. The network system of claim 3 wherein the first port module includes a
scheduler
module for scheduling the integration of the first data packet signal into a
third stream-line
signal.
7. The network system of claim 1 wherein the redirector module includes a
packet switch
module for routing the first data packet signal and the second data packet
signal.
14



8. The network system of claim 7 wherein the packet switch module includes a
routes
module for routing the first data packet signal and the second data packet
signal.
9. The network system of claim 7 wherein the packet switch module includes a
routing
table for storing the location of each of the plurality of end-devices in the
system.
10. The network system of claim 7 wherein the packet switch module includes a
local area
network switch.
11. The network system of claim 1 further including a second multiplexes
module, disposed
between a third end-device of the plurality of end-devices and the redirector
module, for
receiving from the redirector module the second stream-line signal and for
transmitting the first
data packet signal to the third end-device.
12. The network system of claim 1 wherein the first multiplexes module
includes a
multiplexer/demultiplexer unit for multiplexing the first data packet signal
and the second data
packet signal into the first stream-line signal.
13. The network system of claim 1 wherein the first multiplexes module
includes a
multiplexer/demultiplexer unit for time-division multiplexing the first data
packet signal and the
second data packet signal into the first stream-line signal.
14. The network system of claim 1 wherein the first multiplexes module
includes a
multiplexer/demultiplexer unit for statistical multiplexing the first data
packet signal and the
second data packet signal into the first stream-line signal.
15. The network system of claim 1 wherein the first multiplexes module
includes a first
channel port coupled to the first end-device for receiving the first data
packet signal from the
first end-device.
16. The network system of claim 15 wherein the first channel port utilizes an
Ethernet
protocol to receive the first data packet signal from the first end-device.
17. A network system having a plurality of end-devices, the system comprising:
a first multiplexes module, coupled to a first end-device and a second end-
device of the
plurality of end-devices, for receiving a first data packet signal from the
first end-device and a


second data packet signal from the second end-device and for transmitting a
first stream-line
signal including the first data packet signal and the second data packet
signal;
a second multiplexer module coupled to a third end-device of the plurality of
end-devices
for receiving a second stream-line signal including the first data packet
signal and for
transmitting the first data packet signal to the third end-device; and
a redirector module disposed between the first multiplexer module and the
second
multiplexer module for receiving the first stream-line signal from the first
multiplexer module
and for transmitting the second stream-line signal to the second multiplexer
module.
18. A method for transmitting data from a first end-device to a second end-
device, the
method comprising the steps of:
multiplexing a first data packet signal from the first end-device into a first
stream-line
signal comprising a plurality of data packet signals;
transmitting the first stream-line signal to a redirector module;
transmitting a second stream-line signal comprising the first data packet
signal from the
redirector module to a second multiplexer module, coupled to a second end-
device; and
demultiplexing the second stream-line signal into the first data packet for
the second
end-device.
19. The method of claim 18 further comprising the step of transmitting the
first data packet
to the second end-device.
20. The method of claim 19 further comprising the step of storing a copy of a
first portion of
the first data packet signal that is currently being transmitted to the second
end-device.
21. The method of claim 18 further comprising the step of scheduling the
combining of the
first data packet signal into the second stream-line signal.
22. A multiplexer module, disposed between a plurality of end-devices and a
redirector
module, the multiplexer module comprising:
a multiplexer/demultiplexer module for receiving a first data packet signal
and a second
data packet signal and for transmitting a first stream-line signal comprising
the first data packet
signal and the second data packet signal;
16



a first channel module, disposed between the multiplexer/demultiplexer module
and a
first end-device of the plurality of end-devices, for receiving the first data
packet signal from the
first end-device; and
a second channel module, disposed between the multiplexer/demultiplexer module
and a
second end-device of the plurality of end-devices, for receiving the second
data packet signal
from the second end-device.
23. The multiplexer module of claim 22 wherein the first channel module
communicates by
Ethernet protocol with the first end-device to receive the first data packet
signal and the second
channel module communicates by Ethernet protocol with the second end-device to
receive the
second data packet signal.
24. The multiplexer module of claim 22 further comprising a control unit,
coupled to the
multiplexer/demultiplexer module for controlling the transmission of the
second stream-line
signal from the redirector module.
25. The multiplexer module of claim 22 further comprising a buffer module,
coupled to the
first channel module, for storing a first portion of a first data packet
signal that is unable to be
transmitted by the first channel module to the first end-device.
26. The multiplexer module of claim 22 further comprising
a control unit, coupled to the multiplexer/demultiplexer module for
controlling the
transmission of the second stream-line signal from the redirector module; and
a buffer module, coupled to the first channel module, for storing a first
portion of a first data
packet signal that is unable to be transmitted by the first channel module to
the first end-device.
27. A redirector module disposed between a first multiplexer module and a
second
multiplexer module, the redirector module comprising:
a first port module coupled to the first multiplexer module for receiving a
first stream-line
signal, retrieving a first data packet signal and a second data packet signal
from the first
stream-line signal and for transmitting the first data packet signal and the
second data packet
signal;
a packet switch module, coupled to the first port module, for routing the
first data packet
signal and the second data packet signal; and
17



a second port module, coupled to the packet switch module, for receiving the
first data
packet signal, integrating the first data packet signal into a second stream-
line signal and for
transmitting the second stream-line signal comprising the first data packet
signal.
28. A port module disposed between a multiplexer module and a packet switch
module, the
port module comprising:
a management unit for controlling the receiving of a first stream-line signal
comprising a
first data packet signal and a second data packet signal from the multiplexer
module and the
transmitting of the first data packet signal and the second data packet signal
to the packet switch
module, for controlling the receiving of a third data packet signal and a
fourth data packet signal
from the packet switch module, the buffering of the third data packet signal
and fourth data
packet signal and the transmitting of a second stream-line signal comprising
the third data
packet signal and the fourth data packet signal to the multiplexer module; and
a buffer module for storing a first portion of the third data packet signal
that is
transmitted to the second stream-line signal.
29. The port module of claim 28 further comprising a scheduler module for
determining the
order and timing of transmitting the third data packet within a third stream-
line signal to be
transmitted to the multiplexer module.
18

Description

Note: Descriptions are shown in the official language in which they were submitted.



CA 02308219 2000-04-20
WO 99/22496 " PCTIUS98/22744
STREAM-LINE DATA NETWORK
Inventor
Nicholas W. McKeown
RELATED APPLICATIONS
This application claims the benefit under 35 U.S.C. ~ 119(e) of U.S.
Provisional
Application Serial No. 601063,562, inventor Nick McKeown, filed on October 28,
1997, entitled
"Stream-Line LANs".
IO BACKGROUND OF INVENTION
Field of Technology
The present invention generally relates to the field of communication systems
and more
particularly to the field of computer data network systems.
IS The evolution of computer data network systems has been very rapid and
dynamic. In
particular, much progress has occurred in the field of data networks such as
local area networks
(LANs). LANs are systems, which interconnect a plurality of end-devices, such
as computers,
through usually one of a variety of different networking protocols. One of the
more popular
networking protocols is CSMA/CD (IEEE 802.3), which is more popularly known as
Ethernet.
20 An Ethernet-based LAN usually exhibits a data transfer rate between IOMb/s
and 1Gb/s.
In particular, in a hub-based Ethernet LAN each end-device within the LAN is
connected to a
repeater (hub), which receives a data packet having a destination address
header and broadcasts
the data packet to the remaining end-devices connected to the LAN. Only the
end-device having
the same address header will process the transmitted data packet and
accordingly respond. If
25 two end-devices transmit data packets at the same time to the repeater, a
collision will occur,
which results in the corruption of the transmitted data packets and the need
for both end-devices
to retransmit their data packets at a later time. To attempt to avoid further
collisions of these
same data packets by the same two end-devices, each end-device pauses for a
randomly
generated amount of time before retransmitting its specific data packet to the
same repeater.
30 Although Ethernet is very simple to implement, this networking scheme
suffers from an
inherent problem of exhibiting non-deterministic characteristics. In
particular, Ethernet does not
provide a predictable means for determining how long it will take for an end-
device to transmit
a data packet through the network to another end-device. Instead, the data
transfer rate for the


CA 02308219 2000-04-20
W O 99122496 " PCT/US98I22744
data packets directly depends upon the number of other active end-devices,
which are attached
to the network, and the particular arrival time of the data packets at the
repeater. The more end-
devices, which are transmitting data packets, the more likely that there will
be a collision
between at least two data packets, thereby requiring each end-device to
retransmit its data
packets at a later time.
An additional problem with this type of network system is that in recent years
some of
the new software applications, such as digital video and audio in intranet
applications, are
requiring even larger amounts of data to be transferred across these same
network systems
within very time-sensitive bandwidth performance constraints. In addition,
data traffic patterns
have shifted away from local workgroup traffic toward more backbone-centric
server-based data
traffic. Such a shift has caused a greater bandwidth burden on the backbone of
the LAN, which
must be managed efficiently by the network system.
In an attempt to reduce this congestion of LANs, repeaters often are replaced
by Ethernet
switches that more closely manage the bandwidth of the system. Figure 1
illustrates such a
IS conventional Ethernet switch-based system 100. In particular, a
conventional router 110 is used
to link each Ethernet switch 120 with the other Ethernet switches 120 in the
network 100. In
particular, each Ethernet switch 120 represents a central management scheme
for a specific
branch of the network system 100. Each of these branches of the network system
includes a
plurality of end-devices 130, which are coupled to a specific Ethernet switch
120. If the end-
device 130 must communicate with an end-device 130 on another branch of the
network, the
data packets must be forwarded via the router 110 to the Ethernet switch 120
that manages the
destination end-device 130.
The Ethernet switch i 20 has two primary advantages over other conventional
network
systems. First, by being able to switch amongst dedicated, private Ethernet
connections for each
of the end-devices 130, which are connected to the Ethernet switch 120, only
data packets
destined for a specific end-device 130 are specifically forwarded to that end-
device 130. Such a
scheme avoids the unnecessary additional bandwidth burdens associated with
requiring a
repeater to broadcast each data packet to every end-device 130 on the network
system 100.
Second, by utilizing the Ethernet switching architecture, if two or more data
packets arrive at the
same Ethernet switch 120 at the same time for different end-devices, all of
the data packets can
be simultaneously forwarded without the risk of a collision and the need to
retransmit these data
packets. Such a reduction in collisions results in the network system becoming
less non-
deterministic and more appealing for time-sensitive software applications.
2


CA 02308219 2000-04-20
WO 99/22496 "~ PCT/US98/22744
This Ethernet switch architecture, however, has two inherent problems. First,
if two or
more data packets simultaneously arrive at the same Ethernet switch 120 for
the same
destination end-device 130, only one data packet can be forwarded at any one
time to the same
destination end-device 130. To avoid this unwanted generation of a collision
signal, which
contributes to non-deterministic delays in the system, the Ethernet switch 120
as well as the
router 110 must buffer the data packets in one of a plurality of data packet
buffers. Each of
these data packets then is sequentially retransmitted to the same destination
end-device 130,
thereby ensuring that the originating end-device 130 does not have to
retransmit the same data
packet. Since this problem repeatedly occurs within any conventional Ethernet
switch-based
network system, Ethernet switches 120 and the router 110 typically must
contain a large and
expensive pool of such data packet buffers to ensure that collisions are
minimized within the
system 100.
The second problem with the conventional Ethernet switch network system is
that to
maintain a certain quality of service (QoS) throughout the system 100 a
significant amount of
management of the system must occur in each Ethernet switch 120 as well as the
router 110. In
particular, to efficiently manage each branch of the network, each Ethernet
switch 120 and the
router 110 must rely upon a technique such as packet scheduling, resource
reserved protocol
(RSVP), weighted fair queuing (WFQ), the assignment of virtual LANs (VLANs),
the
configuration of ports, the allocation of buffers, the configuration of a
spanning tree protocol, IP
switching, multiprotocol over ATM (MPOA), tag switching or a combination
thereof. Such
management of the network system 100 results in a decentralized architecture
where the router
110 and each Ethernet switch 120 must perform the same buffering and
management functions,
thereby complicating the deployment and management and also increasing the
overall cost of
such a conventional large, high bandwidth network.
What is needed is a network system, which centralizes the management of the
network,
while still maintaining a predictable high performance bandwidth for servicing
high bandwidth
and real-time based applications.
SUMMARY OF INVENTION
The network system of a preferred embodiment of the present invention includes
a
redirector module and a plurality of multiplexer modules, which achieves a
real-time, high
bandwidth system that enables a plurality of end-devices to communicate with
one another in a
simple cost-effective manner. The multiplexer modules, which are individually
disposed
between the redirector module and a plurality of end-devices, multiplexes
channel signals,


CA 02308219 2000-04-20
WO 99/22496 " PCT/US98l22744
which are received from source end-devices, and transmits upstream stream-line
signals to the
redirector module. In addition, the multiplexes modules demultiplex downstream
stream-line
signals, which are received from the redirector module, into channel signals
that are transmitted
to the corresponding destination end-devices. By utilizing multiplexes modules
to generate
stream-line signals, the redirector module becomes the central location for
routing and buffering
of these stream-line signals. In particular, the redirector module receives
from each multiplexes
module upstream stream-line signals that contain data packets from multiple
source end-devices
that are coupled to each multiplexes module. The redirector module routes each
of these data
packets to a downstream stream-line signal, which is associated with the
specific branch of the
network where the end-device which is to receive the data pocket, is located.
By relying upon the redirector module to primarily manage the routing of the
data
packets between the different end-devices, the current network system avoids
the problems
associated with the conventional decentralized network system schemes.
DESCRIPTION OF THE DRAWINGS
Figure 1 illustrates a conventional Ethernet switch network system.
Figure 2 illustrates an overview of a network system of a preferred embodiment
of the
present invention.
Figure 3 illustrates a high level block diagram of a redirector module of a
preferred
embodiment.
Figure 4 illustrates a block diagram of a multiplexes module of a preferred
embodiment.
Figure 5 illustrates a statistical multiplexing scheme for a multiplexes
module of an
alternative embodiment.
Figure 6 illustrates a time division multiplexing scheme for a multiplexes
module of a
preferred embodiment.
Figure 7 illustrates a timing scheme for a multiplexes module of a preferred
embodiment.
Figure 8 illustrates a flow control methodology of a preferred embodiment.
Detailed Description of Preferred Embodiments of the Present Invention
Preferred embodiments of the present invention are now described with
reference to
figures where like reference numbers indicate identical or functionally
similar elements and the
left most digit of each reference number corresponds to the figure in which
the reference number
is first used.
A network system of a preferred embodiment of the present invention contains
the
management simplicity and costs similar to a repeater and the performance
equal to or
4


CA 02308219 2000-04-20
WO 99/22496 " PCTIUS98I22744
exceeding that of an Ethernet switch. In particular, by applying a high
performance (e.g., an
approximate aggregate bandwidth of 0.6 Terabit/Second and an approximate
lmicrosecond
latency) Internet protocol (IP) routes to a preferred embodiment of the
present invention, a very
simple, powerful and cost-effective network system can be achieved, which can
be integrated
into different network topologies. For example, a preferred embodiment of the
present
invention relies upon a simple and inexpensive multiplexed configuration to
create a scaleable
super routes (SSR) network system that contains a large number of Ethernet
ports, which operate
at, for example, either lOMbps, 100Mbps or 1 Gbps. The benefits of such a
network design is
that a high level of performance can be guaranteed while still maintaining a
simple centralized
network administration.
Figure 2 illustrates an overview of a preferred embodiment of a network system
200 of a
preferred embodiment of the present invention. In particular, this network
system 200 includes
a redirector module 210 and a plurality of multiplexes modules 220. The
redirector module 210
serves as a centralized module for managing the routing of multiplexed data
packets (stream-line
IS signals) between different branches of the network system 200. The
multiplexes modules 220,
which are each associated with a specific branch of the network system 200,
are disposed
between a plurality of end-devices I30 and the redirector module 210. When
each channel
signal, which is comprised of a plurality of data packets that are transmitted
from a specific end-
device 130, is received by the multiplexes module 220, the multiplexes module
220
mechanically multiplexes each data packet within the channel signal into an
"upstream" stream-
line signal. This upstream stream-line signal then is transmitted to the
redirector module 210 for
data packet routing. When a "downstream" stream-line signal is received from
the redirector
module 210, the multiplexes module 220 mechanically demultiplexes the
downstream stream-
line signals into channel signals that are transmitted to each corresponding
end-device 130. In a
preferred embodiment, the multiplexes module 220 utilizes time division
multiplexing {TDM),
which will be discussed in more detail with regard to Figure 6, to multiplex
and demultiplex the
data packets.
Since each multiplexes module 220 does not actively manage its corresponding
branch
of the network 200 like an Ethernet switch, the redirector module 210 becomes
the primary
component that manages the performance of the network system 200. Such a
simple
configuration ensures that there is no need for complicated distributed
management functions,
such as VLANs, or for distributed buffering schemes as is necessary in
conventional network
5


CA 02308219 2000-04-20
WO 99/22496 ° PCT/US98122744
systems. The redirector module 210 functions as a centralized hub where all
primary network
management and buffering is performed.
Figure 3 illustrates in more detail the redirector module 210, which includes
a packet
switch module 310 and a plurality of port modules 320. The packet switch
module 310 alsa
S includes a router module 315 and a routing table 317. Each port module 320
also includes a
management unit 360, a buffer module 355 and a scheduler unit 365. In a
preferred
embodiment, the packet switch module 310 is a LAN switch, such as a Catalyst
series LAN
switch from Cisco Systems of San Jose, California, and the routing table 317
is a database
stored within a memory module (not illustrated) within the packet switch
module 310. In
addition, the management unit 360 and the scheduler unit 365 are logic
circuitry and the buffer
module 355 is random access memory. In an alternative embodiment, the packet
switch module
is a router, such as a Cisco 7500 or 12000 series router from Cisco Systems of
San Jose,
California.
Each port module 320, which is coupled to the packet switch module 310,
operates as an
IS interface between a specific branch of the network system 200 and the
packet switch module
310. In particular, each port module 320 may operate as either a source
network node or a
destination network node for a specific branch of the network 200.
When operating as a source network node, the management unit 360 of the port
module
320 receives the upstream stream-line signal from the multiplexer module 220
that is coupled to
the port module 320. The management unit 360 then demultiplexes the upstream
stream-line
signal into its corresponding data packets and sequentially transmits each of
these data packet to
the packet switch module 310. In a preferred embodiment, with the port module
320 operating
as a source network node, the buffer module 355 and the scheduler module 365
remain
primarily idle.
When the packet switch module 310 receives the data packets from the
management unit
360, the router module 315 reads the header of each data packet and utilizes
the routing table
317, which is coupled to the router module 315, to determine the location of
the destination end-
device 130. In particular, the routing table 317 maintains a list of end-
devices 130 and the
corresponding branch of the network 200 where each of these end-device 130 is
located. When
a specific end-device 130 is identified as the destination for a specific data
packet, the router
module 315 utilizes the routing table 317 to determine the specific port
module 320 (destination
network node) that is associated with the branch of the network 200 where the
destination end-
device 130 resides. Once a specific port module 320 is identified as the
destination network
6


CA 02308219 2000-04-20
WO 99/22496 " PCT/US98I22744
node, the packet switch module 310 routes each data packet corresponding to
that branch of the
network 200 to the management unit 360 of that port module 320.
In a preferred embodiment, the management unit 360 receives each of the data
packets
associated with this branch of the network and multiplexes them onto the
downstream stream
s line signal. When bandwidth problems develop in transmitting these data
packets to their
corresponding destination end-devices 130, the management unit 360 relies upon
the buffer
module 355 and the scheduler module 365 to manage the buffering of these
delayed data packets
for later integration into a subsequent downstream stream-line signal that is
to be transmitted to
the multiplexer module 220.
There are several reasons why a data packet cannot be included in the current
downstream stream-line signal. First, as in the conventional Ethernet switch,
when multiple
data packets simultaneously arrive at the port module 320 (possibly from
different port modules
320, but all destined to the same end-device 130), if the downstream stream-
line signal data rate
necessary to transmit these data packets exceeds the data rate capacity of the
multiplexer module
I S 220 to transmit data packets to a specific destination end-device 130,
these data packets must be
buffered in the buffer module 355 of the port module 320 until some bandwidth
becomes
available. Second, if the transmission rate between the multiplexer module 220
and the end-
devices 130 is half-duplex, only one channel signal can be transmitted either
to or from the end-
device 130. If an end-device 130 is currently transmitting a first channel
signal to the
multiplexer module 220 and the multiplexer module 220 attempts to transmit a
second channel
signal to the same end-device 130, a collision signal between data packets
will occur and the
multiplexer module 220 will trigger the buffering of the remaining portions of
the data packet in
both the port module 320 and the multiplexer module 220. A more detailed
discussion
concerning the triggering and the buffering of data packets will be discussed
with regard to
Figure 4 and 7.
Upon storing a portion of a data packet in the buffer module 355 for either of
the before-
mentioned reasons, the scheduler module 365 utilizes one of several different
scheduling
algorithms to determine the order in which these buffered data packets will be
added to
subsequent downstream stream-line signals. In a preferred embodiment, a
scheduling algorithm,
such as a first come, first served (FCFS) (also known as first in, first out
(FIFO)), a weighted
fair-queuing, or a virtual clock algorithm, is used to determine the order of
integration of the
buffered data packets into the next downstream stream-line signals.


CA 02308219 2000-04-20
WO 99/22496 " PCT/US98/22744
Figure 4 illustrates in more detail the multiplexes module 220, which is
disposed
between the port module 320 of the redirector module 210 and a plurality of
end-devices 130.
The multiplexes module 220 includes a multiplexer/demultiplexer (mux/demux)
unit 410, a
control unit 420, a plurality of channel modules 430 and a plurality of buffer
modules 440.
Unlike Ethernet switches, the multiplexes module 130 contains no direct
management or address
look-up functionality. In addition, the multiplexes module 130 does not have
the same level of
buffering as that of Ethernet switches. This simplicity of design ensures that
the complexity of
managing the network system 200 is shifted from each major component within
the network 200
to one single, central location, the redirector module 210.
The mux/demux module 410, which is disposed between the port module 320 and
the
channel modules 430, multiplexes channel signals, which are received from end-
devices 130,
into upstream stream-line signal data packets and demultiplexes downstream
stream-line
signals, which are received from the port module 320, into channel signal data
packets. To
minimize the need for significant buffering in the multiplexes module 220, the
connection
between the mux/demux module 410 and the port module 320 is full-duplex and
equal in the
capacity of all connections to/from the end-devices 130. In a preferred
embodiment, the
mux/demux module 410 is logic circuitry or a software module executed within a
general
purpose computer.
Figures 5 and 6 illustrate two alternative embodiments for the mux/demux
module 410
to multiplex the channel signals into an upstream stream-line signal. It
should be noted,
however, that each data packet within this upstream stream-line signal is of a
fixed size unit
(e.g., one bit at a time, one byte at a time, or any other fixed size unit).
In a preferred
embodiment, the fixed-size unit is one byte. However, in alternative
embodiments, any fixed-
size unit may be employed.
In a first embodiment, Figure 5 illustrates the statistical (packet)
multiplexing of three
channel signals, P,, P2 and P3, which are received from three different end-
devices 130, into a
single upstream stream-line signal. In particular, each channel signal is
serially appended to the
end of the preceding channel signal to form the upstream stream-line signal.
To ensure that the
routes module 315 later can properly redirect the data packets that correspond
to the channel
signals to the appropriate end-device 130 destinations, the multiplexes module
220 transmits a
repeating sequence of framing bytes (e.g., one byte for each of the channel
modules associated
with a source end-device), which indicates which byte in the sequence belongs
to which channel
module 430. In an upstream stream-line signal, this repeating framing byte
corresponds to the
8


CA 02308219 2000-04-20
WO 99/22496 "~ PCT/US98/22744
channel module 430 on which the data packet arrived. In a downstream
streamline signal, this
repeating framing byte corresponds to the channel module 430 to which the data
packet is
destined.
Figure 6 illustrates a preferred embodiment of the present invention where
time division
multiplexing (TDM), rather than statistical multiplexing, is used by the
mux/demux module 410
to multiplex data packets of the channel signals into stream-line signals.
Unlike statistical
multiplexing, TDM implicitly encodes the channel module information into the
stream-line
signal. For example, consider a downstream stream-line that uses TDM with byte-
size units and
a multiplexes module that has N channel modules. Every Nth byte on the stream-
line signal
would be destined to channel module P,, followed by a byte for channel module
P2, etc.
Each of the plurality of channel modules 430 within the multiplexes module 220
represents a dedicated channel to a specific end-device 130. In a preferred
embodiment, each
end-device 130 may be a computer, multiple electronic devices, a network
repeater (hub) or a
LAN switch. Each channel module is either logic circuitry or a software
module. In an
alternative embodiment, for fault tolerance, a multiplexes module 130 also may
have additional
redundant connections via other channel modules 430 to end-devices 130, other
redirector
modules 210 or other multiplexes modules 220. Each of the channel modules 430
communicates with a dedicated end-device 130 using a conventional local area
network (LAN)
protocol, such as 10 Mb/s Ethernet, 100Mb/s (fast) Ethernet, or 1Gb/s
Ethernet. Such protocols
rely upon either half-duplex (e.g., data packets only flow in one direction at
a time) or full
duplex (e.g., data packets simultaneously flow in both directions)
communication, which can
contain an additional flow control protocol. To minimize the possible delays
associated with
demultiplexing downstream stream-line signals and transmitting the data
packets within channel
signals from the mux/demux module 410 to the end-devices 130 via the channel
modules 430,
each channel module 430 of a preferred embodiment of the present invention
communicates in
full-duplex with the end-devices 130.
In an alternative embodiment, however, the channel module 430 may communicate
in
half-duplex with the end-devices 130, thereby requiring the system 200 to
respond to collisions
between channel signals transmitted to and channel signals simultaneously
transmitted from the
end-devices 130. In such a situation, more significant buffering of data
packets in the
multiplexes module 220 and the port module 320 will be necessary to minimize
the possible
delays associated with such a configuration. This degree of buffering,
however, is still
significantly less than what would be necessary in a conventional
decentralized network system.
9


CA 02308219 2000-04-20
WO 99/22496 " PCTIUS98/22744
Figure 7 illustrates in more detail the necessary size of the buffer modules
440 in the
multiplexer module 220 and its timing relationship with the port module 320.
In particular, in a
preferred embodiment, the exact number of bits of storage in the multiplexer
module 220 is a
design decision based on the data rate of the stream-line signal, the maximum
propagation delay
S along the link between the multiplexer module 220 and the port module 320
(which is dictated
by the length of the link and the speed of the propagation along the link),
the time for the control
unit 420 in the multiplexes module 220 to generate a flow-control message for
the management
unit 360 of the port module 320, and the time for the management module 360 to
process that
message. Based upon these factors, an adequate amount of buffering within the
muitiplexer
module 220 can be established to ensure that, when possible, a channel signal
will be
continuously transmitted to the end-devices 130.
For example, in Figure 7 each buffer IB;I has a channel module data rate b;,
where
b=Eb;
is the total data rate of the stream-line signal (0 5 i <_ n with n equal to
the total number of
IS channel modules 430 in the multiplexes module 220). Assume that the round-
trip propagation
delay of a bit from the control unit 420 of the multiplexes module 220 to the
management unit
360 of the port module 320 and back to the control unit 420 equals T seconds
(this time includes
the time for the control unit 420 to transmit a flow-control message, and for
the management
module 360 to process the message). The amount of buffering required for the
channel module
430, therefore, is then approximately equal to:
IB;I = b; X T bits,
while the total buffering required by each multiplexes module 220 is:
IB I = b X T bits.
In addition, further buffering will be needed to accommodate retransmissions
over the
multiplexes module 220 to the end-devices 130. In particular, the size of this
buffering is
calculated in the same manner as above, but with regard to the propagation
round trip delay
between the multiplexes module 220 and the end-devices 130.
For example, if the stream-line signal operates at 1 Gb/s ( 109 bits per
second), and a
single bit of information travels from the port module 320 to the multiplexes
module 220 in lp.s
( 10-6 seconds), then the multiplexes module 220 must have the ability to
buffer at least 10-6 X
109= 10~ bits of the data packets.
Figure 8 illustrates a flow control methodology of a preferred embodiment of
the present
invention between the port module 320 of the redirector module 210 and the
multiplexes module


CA 02308219 2000-04-20
WO 99/22496 "~ PCT/US98/22744
220. In particular, when data packets have been received by the port module
320 in a preferred
embodiment, the port module 320 attempts to continuously transmit 810 these
data packets as
part of the downstream stream-line signal to the corresponding multiplexes
module 220. The
multiplexes module 220 demultiplexes this downstream stream-line signal back
into the separate
data packets and forwards each data packet to its predesignated channel module
430. Each
channel module 430 then transmits 820 the received data packet to the end-
device 130, which is
coupled to the channel module 430. If, after beginning the transmission of the
data packet, the
channel module 430 receives 830 a collision signal from the end-device 130,
the channel
module 430 triggers the control unit 420 to transmit 840 a flow control signal
STOP message,
such as XOFF, to the management unit 360 of the port module 320. This STOP
message
triggers the management unit 360 of the port module 320 to stop transmitting
data packets
associated with this specific channel module 430.
To ensure the integrity of each data packet, which has experienced a
collision, the buffer
module 440 coupled to the destination channel module 430 and the buffer module
355 within
IS the port module 320 jointly store portions of the data packet. In
particular, the buffer module
440 stores the portion of the collided data packet that had been in transit
between the channel
module 430 and the end-device 130. The buffer module 355 stores the portion of
the collided
data packet that was in transit between the port module 320 and the
multiplexes module 220 as
well as the remaining portion of the data packet that has yet to be
transmitted to the multiplexes
module 220.
After a random amount of time has elapsed, the channel module 430 that
received the
collision signal will begin to retransmit 850 the portion of the data packet
that collided. Once
the remaining amount of the data packet within the buffer module 440 is equal
to the amount of
the data packet that will be transmitted to the end-device 130 within a round
trip propagation
delay, the control unit 420 transmits 860 a flow control START message to the
management
unit 360 of the port module 320 to reinitiate the transmission of the
remaining portion of the
data packet to the channel module 430. Such timing will ensure that the end-
device 130 coupled
to this channel module 430 will receive a continuous stream of data packets
without any
disruption due to the collision.
There are several ways that the flow-control messages may be sent to the
management
module 360. For example, in one embodiment, the control unit 420 can send flow-
control
messages for the channel module 430 by sending explicit control bytes in the
corresponding
channel of the stream-line signal. The control messages are distinguished from
normal data
11


CA 02308219 2000-04-20
WO 99/22496 " PCT/US98l22744
packet bytes by either (a) sending an additional bit with each byte to
indicate whether the byte is
a control byte or a data byte, (b) using a line code (e.g. a 4B/5B block code
as used in 100 Base
TX and FDDI) with certain reserved line codes used to indicate that a byte
contains a control
message. In an alternative embodiment, a single bit may be added to each data
byte from the
multiplexes module 220 to the port module 320. The bit always indicates the
polarity of the
flow control. For example, if the bit is equal to ' 1', the port module may be
prevented from
sending data on this channel, whereas if the bit is equal to '0' then the port
module 320 may
resume transmission on this channel.
To better illustrate the overall flow of the transmission of information from
a source end-
device 130 to a destination end-device 130 in a preferred embodiment of the
present invention,
an example of a first end-device A 130, which is coupled to multiplexes R 220,
transmitting data
to end-device B 130, which is coupled to multiplexes S 220, will now be
discussed. In
particular, end-device A 130 transmits a channel signal including a source end-
device address A
and a destination end-device address B. When the packet is received by
multiplexes module R
220, the mux/demux module 410 does not examine the address header or content
of the data
packets of the channel signal, but rather simply TDM multiplexes the data
packets onto the
upstream stream-line signal in the dedicated channels associated with the
source end-device 130.
The buffer module 440 of multiplexes module R 220 only buffers the data
packets until the next
opportunity to transmit the data packets in the appropriate stream-line signal
channel. Once the
channel signal is TDM multiplexed, the data packets, which are now part of the
upstream
stream-line signal, are transmitted to the port module 320 associated with
this branch of the
network. Once received by the port module 320, the packet switch module 310 of
the redirector
module 210 utilizes the destination address information within each data
packet to determine to
which destination port module 320 this specific data packet is to be routed.
Once the data
packet is forwarded to the destination port module 320 coupled to multiplexes
module S 220,
the data packet is integrated into a downstream stream-line signal and
transmitted to multiplexes
module S 220, which is disposed between the port module 320 and the end-device
B 130. As
previously discussed, when the link between the channel port 430 and end-
device B 130 is half
duplex and a collision has occurred between two data packets, the data packets
that are destined
for end-device B 130 must be buffered in the buffer module 355 of port module
320 until the
channel module 430 begins to retransmit data packets to end-device B 130. In
this instance, the
channel module 430 communicates with end-devices 130 in full-duplex, thereby
avoiding this
need for buffering.
12


CA 02308219 2000-04-20
WO 99/22496 w PCT/US98/22744
Once the data packet is multiplexed onto the downstream stream-line and
transmitted to
multiplexes module S, the data packet is TDM demultiplexed by the mux/demux
module 410
and transmitted over the channel signal dedicated to the channel module 430,
which is
connected to end-device B 130. Since the data rate of the channel module 430
is equal to the
data rate between the mux/demux module 410 and the channel module 430, the
data packets do
not need to be buffered.
In an alternative embodiment, however, the muxldemux module 410 may have an
aggregate bandwidth that is in excess of the data rate of the channel module
430. Such an over-
subscribing of the channel modules 430 may be desirable in cost-sensitive
environments to
enable the channel modules 430 to be pooled and allocated as needed. The
number of channel
modules 430 in this alternative embodiment is determined by the acceptable
probability of
contention for the upstream stream-line signal. In this embodiment, arriving
data packets are
allocated a free channel module 430, rather than transmitted to a dedicated
channel module 430.
If all channel modules 430 are occupied, the data packet is dropped, or the
end-device 130 is
informed. Conventional methods exist to stop the end-device 130 from
transmitting, or forcing
it to retransmit the data packet. These methods include, but are not limited
to: ( 1 ) sending an
IEEE 802.3 Flow Control message or (2) asserting a collision signal to stop
the end-computer
from transmitting. When channel modules 430 are allocated on demand, a small
header may be
added to each data packet to indicate to the port module 320 on which channel
port 430 the data
packet should arnved. Likewise, when data packets are transmitted by the port
module 320, a
small header may be used to indicate to which channel module 430 the packet is
to be sent.
While the present invention has been particularly shown and described with
reference to
various preferred embodiments, and several alternate embodiments, it will be
understood by
persons skilled in the relevant art that various changes in form and details
can be made therein
without departing from the spirit and scope of the invention.
13

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date Unavailable
(86) PCT Filing Date 1998-10-27
(87) PCT Publication Date 1999-05-06
(85) National Entry 2000-04-20
Dead Application 2004-10-27

Abandonment History

Abandonment Date Reason Reinstatement Date
2003-10-27 FAILURE TO PAY APPLICATION MAINTENANCE FEE
2003-10-27 FAILURE TO REQUEST EXAMINATION

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Application Fee $300.00 2000-04-20
Maintenance Fee - Application - New Act 2 2000-10-27 $100.00 2000-10-10
Registration of a document - section 124 $100.00 2001-04-18
Maintenance Fee - Application - New Act 3 2001-10-29 $100.00 2001-10-09
Maintenance Fee - Application - New Act 4 2002-10-28 $100.00 2002-10-03
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
ABRIZIO, INC.
Past Owners on Record
MCKEOWN, NICHOLAS W.
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Representative Drawing 2000-07-17 1 6
Abstract 2000-04-20 1 54
Description 2000-04-20 13 827
Claims 2000-04-20 5 233
Drawings 2000-04-20 8 99
Cover Page 2000-07-17 1 47
Correspondence 2000-06-20 1 2
Assignment 2000-04-20 4 121
PCT 2000-04-20 14 503
Assignment 2001-04-18 4 213