Language selection

Search

Patent 2428230 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 2428230
(54) English Title: SYSTEM AND METHOD FOR IMPROVING NETWORK ROUTER EFFICIENCY AND ALLEVIATING NETWORK BOTTLENECKS AND OVERLOADS
(54) French Title: SYSTEME ET PROCEDE DESTINES A AMELIORER L'EFFICACITE DES ROUTEURS SUR INTERNET ET/OU DES RESEAUX CELLULAIRES ET A ATTENUER LES GOULOTS D'ETRANGLEMENT ET LES SURCHARGES SUR LE RESEAU
Status: Dead
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04L 12/741 (2013.01)
  • H04B 10/27 (2013.01)
  • H04L 12/721 (2013.01)
  • H04L 12/747 (2013.01)
  • H04N 7/22 (2006.01)
  • H04L 12/771 (2013.01)
  • H04L 12/823 (2013.01)
(72) Inventors :
  • MAYER, YARON (Israel)
  • BAUR, AL J. C. (Israel)
(73) Owners :
  • MAYER, YARON (Israel)
  • BAUR, AL J. C. (Israel)
(71) Applicants :
  • MAYER, YARON (Israel)
  • BAUR, AL J. C. (Israel)
(74) Agent: NA
(74) Associate agent: NA
(45) Issued:
(86) PCT Filing Date: 2001-11-08
(87) Open to Public Inspection: 2002-05-16
Examination requested: 2006-11-08
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): Yes
(86) PCT Filing Number: PCT/IL2001/001042
(87) International Publication Number: WO2002/039208
(85) National Entry: 2003-05-07

(30) Application Priority Data:
Application No. Country/Territory Date
139559 Israel 2000-11-08
60/266,730 United States of America 2001-02-05
60/299,919 United States of America 2001-06-19

Abstracts

English Abstract




The present invention optically marks and detects packet headers, translating
at most only the headers (24) to electronics for making packet switching
decisions, and keeps the rest of the packets in optical delay lines (23), so
that optical switches (29) can execute the packet switching decisions (28) at
fast bit rates. This solution has very high scalability and becomes even more
efficient when physical addresses are used. Another optimisation described in
this invention is improving routing efficiency and bandwidth utilization by
grouping together identical data packets from the same source going to the
same general area with a multiple list of targets connected to each copy of
the data and sent together to the general target area. These grouped packets
are then preferably broken down into smaller groups by the routers in the
general target area and finally broken down to individual data packets for
delivering to the final actual destinations.


French Abstract

Le plus grand goulot d'étranglement sur Internet aujourd'hui est causé par la faible vitesse des routeurs, par rapport à la vitesse des fibres optiques à multiplexage par répartition en longueur d'onde dense (DWDM). La commutation par paquets ou analogue est nécessaire non seulement afin de mieux utiliser les lignes, mais aussi parce qu'elle est supérieure à la commutation de circuit sur de nombreux plans, tels qu'une meilleure variabilité dimensionnelle à mesure qu'Internet grandit, une meilleure gestion des encombrements, et une meilleure flexibilité de routage. Mais les routeurs optiques sont pour l'instant incapable d'effectuer la commutation par paquets excepté lors de la translation de données en données électroniques et l'inverse, ce qui est très inefficace. L'invention résout ce problème en marquant et détectant optiquement les en-têtes ou parties de celles-ci, en translatant au plus seules les en-têtes ou parties d'en-têtes à un dispositif électronique afin d'exécuter des décisions de commutation par paquets, et de garder le reste des paquets dans des lignes de retard optiques, et à résoudre des problèmes de temps de réponse dans le routeur, de manière que les commutations optiques brutes puisse exécuter des décisions de commutation par paquets à des débits binaires rapides. Cette solution présente une variabilité dimensionnelle élevée et devient même plus efficace lorsque des adresses physiques sont utilisées. Une autre optimisation de cette invention consiste à améliorer l'efficacité de routage et l'utilisation de la largeur de bande par groupement des paquets de données identiques entre eux à partir de la même source vers la même zone générale avec une liste multiple de cibles connectée à chaque copie des données et envoyées ensemble vers la zone cible générale. Ces paquets groupés sont ensuite, de préférence, divisés en groupes plus petits par les routeurs dans la zone cible générale et enfin divisés en paquets de données individuels pour les envoyer aux destinations réelles finales. Cette optimisation fonctionne mieux avec des adresses physiques, et peut être très utile, par exemple, dans l'optimisation d'accès à des sites très populaires, tels que Yahoo ou CNN, et peut également être utilisée, par exemple, afin de transférer plus efficacement des données de flux, à partir de stations de radio Internet, ou de chaînes de télévision Internet qui vont probablement exister dans les années à venir.

Claims

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





22

CLAIMS

We claim:

1. A system for using optical marks for fast locating of the beginnings of
data
packets and the positions of the target addresses of said packets within the
data
passing through optic fibers in order to enable faster locating and extracting
of said
packets and said target addresses for fast packet switching, without the need
to
convert more than at most a small number of bytes in each packet to
electricity for
processing, comprising:

A device for creating said optical marks;

A device at the router for optically detecting and extracting at
least part of the packet header before delaying the light bits;

A device for delaying the light bits at the router for the time
needed for making packet switching decisions without having
to convert said light bits to electricity;

A computer for comparing said target addresses to the required
database and making packet switching decisions;

A fast optical router for carrying out said packet switching
decisions after the light has passed through the delaying device,
without having to convert the light bits to electricity;

A device for compensating for the margin of error that occurs
when the response time of said fast optical router is too slow for
the bit rate and enabling addition and deletion of data if required

2. The system of claim 1 wherein the light bits are delayed at the router by
means of an optic delay circuit that the light has to run through.

3. The system of claim 2 where some address processing is done in advance, so
that the packet has also a destination label that helps said computer make
faster packet
switching decisions.

4. The system of claim 2 wherein the packet does not have an additional
destination label added to it.

5. The system of claim 3 wherein said compensation for the margin of error is
done by optically duplicating the bit stream and using one copy of the bit
stream to
route the even packets, so that the odd packets are used as a slack area, and
another
copy of the bit stream to route the odd packets, so that the even packets are
used as a
slack area, and arrangements are made in advance to make sure that all the
packets are
of at least the minimum required size.

6. The system of claim 5 wherein said marks are done by a change in frequency
and said optical detector of marks looks for a change in frequency.

7. The system of claim 5 wherein said marks are done by a change in amplitude
and said optical detector of marks looks for a change in amplitude.






23


8. The system of claim 5 wherein said marks are done by an easily detectable
period of no light and said optical detector of marks looks for a period of no
light.

9. The system of claim 5 wherein said marks are done by an easily detectable
period of consecutive light and said optical detector of marks looks for a
period of
consecutive light.

10. The system of claim 9 wherein said easily detectable period of consecutive
light is also marked by significantly increased intensity of the light and
said optical
detector of marks also looks for a period of more intense light

11. The system of claim 5 wherein said marks are done by a change in
polarization and said optical detector of marks looks for a change in
polarization.

12. The system of claim 5 wherein said marks are done by an easily detectable
period of fat bits that can also carry data and said optical detector of marks
looks for a
period of fat bits.

13. The system of claim 5 wherein said marks are done by relative time
shifting
of the waves of the different lambdas and said optical detector of marks looks
for a
change in wave phases.

14. The system of claim 3 wherein said marks are done at least by an easily
detectable period of no light before the beginning of the packet and said
optical
detector of marks looks for a period of no light, and said period is always
kept long
enough to compensate for the margin of error caused by the response time of
the
router.

15. The system of claim 3 wherein said marks are done at least by an easily
detectable period consecutive light before the beginning of the packet and
said optical
detector of marks looks for a period of consecutive light, and said period is
always
kept long enough to compensate for the margin of error caused by the response
time
of the router.

16. The system of claim 15 wherein said easily detectable period consecutive
light is also marked by significantly increased intensity of the light and
said optical
detector of marks also looks for a period of more intense light.

17. The system of claim 3 wherein said marks are done by an easily detectable
period of fat bits that can also carry data and said optical detector of marks
looks for a
period of fat bits and said period is always kept long enough to compensate
for the
margin of error caused by the response time of the router.

18. The system of claim 4 wherein said compensation for the margin of error is
done by optically duplicating the bit stream and using one copy of the bit
stream to







24


route the even packets, so that the odd packets are used as a slack area, and
another
copy of the bit stream to route the odd packets, so that the even packets are
used as a
slack area, and arrangements are made in advance to make sure that all the
packets are
of at least the minimum required size.

19. The system of claim 18 wherein said marks are done by a change in
frequency and said optical detector of marks looks for a change in frequency.

20. The system of claim 18 wherein said marks are done by a change in
amplitude and said optical detector of marks looks for a change in amplitude.

21. The system of claim 18 wherein said marks are done by an easily detectable
period of no light and said optical detector of marks looks for a period of no
light.

22. The system of claim 18 wherein said marks are done by an easily detectable
period of consecutive light and said optical detector of marks looks for a
period of
consecutive light.

23. The system of claim 22 wherein said easily detectable period of
consecutive
light is also marked by significantly increased intensity of the light and
said optical
detector of marks also looks for a period of more intense light

24. The system of claim 18 wherein said marks are done by a change in
polarization and said optical detector of marks looks for a change in
polarization.

25. The system of claim 18 wherein said marks are done by an easily detectable
period of fat bits that can also carry data and said optical detector of marks
looks for a
period of fat bits.

26. The system of claim 18 wherein said marks are done by relative time
shifting
of the waves of the different lambdas and said optical detector of marks looks
for a
change in wave phases.

27. The system of claim 4 wherein said marks are done at least by an easily
detectable period of no light before the beginning of the packet and said
optical
detector of marks looks for a period of no light, and said period is always
kept long
enough to compensate for the margin of error caused by the response time of
the
router.

28. The system of claim 4 wherein said marks are done at least by an easily
detectable period of consecutive light before the beginning of the packet and
said
optical detector of marks looks for a period of consecutive light, and said
period is
always kept long enough to compensate for the margin of error caused by the
response time of the router




25

29. The system of claim 28 wherein said easily detectable period of
consecutive
light is also marked by significantly increased intensity of the light and
said optical
detector of marks also looks for a period of more intense light.

30. The system of claim 4 wherein said marks are done by an easily detectable
period of fat bits that can also carry data and said optical detector of marks
looks for a
period of fat bits and said period is always kept long enough to compensate
for the
margin of error caused by the response time of the router.

31. A method for using optical marks for fast locating of the beginnings of
data
packets and the positions of the target addresses of said packets within the
data
passing through optic fibers in order to enable faster locating and extracting
of said
packets and said target addresses for fast packet switching, without the need
to
convert more than at most a small number of bytes in each packet to
electricity for
processing, comprising:
A method for creating said optical marks;
A method at the router for optically detecting and extracting at
least part of the packet header before delaying the light bits;
A method for delaying the light bits at the router for the time
needed for making packet switching decisions without having
to convert said light bits to electricity;
A computer for comparing said target addresses to the required
database and making packet switching decisions;
A fast optical router for carrying out said packet switching
decisions after the light has passed through the delaying device,
without having to convert the light bits to electricity;
A method for compensating for the margin of error that occurs
when the response time of said fast optical router is too slow for
the bit rate and enabling addition and deletion of data if required

32. The method of claim 31 wherein the light bits are delayed at the router by
means of an optic delay circuit that the light has to run through.

33. The method of claim 32 where some address processing is done in advance,
so that the packet has also a destination label that helps said computer make
faster
packet switching decisions.

34. The method of claim 32 wherein the packet does not have an additional
destination label added to it.

35. The method of claim 33 wherein said compensation for the margin of error
is
done by optically duplicating the bit stream and using one copy of the bit
stream to
route the even packets, so that the odd packets are used as a slack area, and
another
copy of the bit stream to route the odd packets, so that the even packets are
used as a
slack area, and arrangements are made in advance to make sure that all the
packets are
of at least the minimum required size.



26

36. The method of claim 35 wherein said marks are done by a change in
frequency and said optical detector of marks looks for a change in frequency.

37. The method of claim 35 wherein said marks are done by a change in
amplitude and said optical detector of marks looks for a change in amplitude.

38. The method of claim 35 wherein said marks are done by an easily detectable
period of no light and said optical detector of marks looks for a period of no
light.

39. The method of claim 35 wherein said marks are done by an easily detectable
period of consecutive light and said optical detector of marks looks for a
period of
consecutive light.

40. The method of claim 39 wherein said easily detectable period of
consecutive
light is also marked by significantly increased intensity of the light and
said optical
detector of marks also looks for a period of more intense light

41. The method of claim 35 wherein said marks are done by a change in
polarization and said optical detector of marks looks for a change in
polarization.

42. The method of claim 35 wherein said marks are done by an easily detectable
period of fat bits that can also carry data and said optical detector of marks
looks for a
period of fat bits.

43. The method of claim 35 wherein said marks are done by relative time
shifting
of the waves of the different lambdas and said optical detector of marks looks
for a
change in wave phases.

44. The method of claim 33 wherein said marks are done at least by an easily
detectable period of no light before the beginning of the packet and said
optical
detector of marks looks for a period of no light, and said period is always
kept long
enough to compensate for the margin of error caused by the response time of
the
router.

45. The method of claim 33 wherein said marks are done at least by an easily
detectable period of consecutive light before the beginning of the packet and
said
optical detector of marks looks for a period of consecutive light, and said
period is
always kept long enough to compensate for the margin of error caused by the
response time of the router

46. The method of claim 45 wherein said easily detectable period of
consecutive
light is also marked by significantly increased intensity of the light and
said optical
detector of marks also looks for a period of more intense light.



27

47. The method of claim 33 wherein said marks are done by an easily detectable
period of fat bits that can also carry data and said optical detector of marks
looks for a
period of fat bits and said period is always kept long enough to compensate
for the
margin of error caused by the response time of the router.

48. The method of claim 34 wherein said compensation for the margin of error
is
done by optically duplicating the bit stream and using one copy of the bit
stream to
route the even packets, so that the odd packets are used as a slack area, and
another
copy of the bit stream to route the odd packets, so that the even packets are
used as a
slack area, and arrangements are made in advance to make sure that all the
packets are
of at least the minimum required size.

49. The method of claim 48 wherein said marks are done by a change in
frequency and said optical detector of marks looks for a change in frequency.

50. The method of claim 48 wherein said marks are done by a change in
amplitude and said optical detector of marks looks for a change in amplitude.

51. The method of claim 48 wherein said marks are done by an easily detectable
period of no light and said optical detector of marks looks for a period of no
light.

52. The method of claim 48 wherein said marks are done by an easily detectable
period of consecutive light and said optical detector of marks looks for a
period of
consecutive light.

53. The method of claim 52 wherein said easily detectable period of
consecutive
light is also. marked by significantly increased intensity of the light and
said optical
detector of marks also looks for a period of more intense light

54. The method of claim 48 wherein said marks are done by a change in
polarization and said optical detector of marks looks for a change in
polarization.

55. The method of claim 48 wherein said marks are done by an easily detectable
period of fat bits that can also carry data and said optical detector of marks
looks for a
period of fat bits.

56. The method of claim 48 wherein said marks are done by relative time
shifting
of the waves of the different lambdas and said optical detector of marks looks
for a
change in wave phases.

57. The method of claim 34 wherein said marks are done at least by an easily
detectable period of no light before the beginning of the packet and said
optical
detector of marks looks for a period of no light, and said period is always
kept long
enough to compensate for the margin of error caused by the response time of
the
router.



28

58. The method of claim 34 wherein said marks are done at least by an easily
detectable period of consecutive light before the beginning of the packet and
said
optical detector of marks looks for a period of consecutive light, and said
period is
always kept long enough to compensate for the margin of error caused by the
response time of the router

59. The method of claim 58 wherein said easily detectable period of
consecutive
light is also marked by significantly increased intensity of the light and
said optical
detector of marks also looks for a period of more intense light.

60. The method of claim 34 wherein said marks axe done by an easily detectable
period of fat bits that can also carry data and said optical detector of marks
looks for a
period of fat bits and said period is always kept long enough to compensate
for the
margin of error caused by the response time of the router.

61. The system of claim 2 wherein said target addresses are converted into
electrical data and said packet switching decisions are made by an electronic
computer.

62. The system of claim 2 wherein said packet switching decisions are made by
a photonic computer.

63. The method of claim 32 wherein said target addresses are converted into
electrical data and said packet switching decisions axe made by an electronic
computer.

64. The method of claim 32 wherein said packet switching decisions are made
by a photonic computer.

65. The system of claim 2 wherein each IP address contains also geographical
coordinates and the routers are aware of their own coordinates and the
coordinates of
at least other main routers and stationary Internet-connected devices have
exact
coordinates that are updated globally in the Internet when they change
location, and
mobile devices have more general coordinates and their more exact coordinates
are
updated only locally when they move.

66. The method of claim 32 wherein each IP address contains also geographical
coordinates and the routers axe aware of their own coordinates and the
coordinates of
at least other main routers and stationary Internet-connected devices have
exact
coordinates that are updated globally in the Internet when they change
location, and
mobile devices have more general coordinates and their more exact coordinates
are
updated only locally when they move.

67. The system of claim 2 wherein a group of lambdas is regarded as a single
channel for packet switching, so that the group is routed together with the
same
routing decisions.



29

68. The system of claim 3 wherein a group of lambdas is regarded as a single
channel for packet switching, so that the group is routed together with the
same
routing decisions.

69. The system of claim 2 wherein a group of fibers is regarded as a single
channel for packet switching, so that the group is routed together with the
same
routing decisions.

70. The system of claim 3 wherein a group of fibers is regarded as a single
channel for packet switching, so that the group is routed together with the
same
routing decisions.

71. The system of claim 67 wherein a group of fibers is regarded as a single
channel for packet switching, so that the group is routed together with the
same
routing decisions

72. The system of claim 68 wherein a group of fibers is regarded as a single
channel for packet switching, so that the group is routed together with the
same
routing decisions

73. The system of claim 1 wherein the light bits are delayed at the router by
an
optical memory.

74. The system of claim 73 wherein said optical memory is based on holographic
memory.

75. The system of claim 73 wherein said optical memory is based on stopping
and storing the light in gas.

76. The system of claim 1 wherein the light bits are delayed at the router by
letting them pass through a medium that considerably slows them down.

77. The system of claim 76 wherein said medium is chilled Sodium gas.

78. The system of claim 1 wherein the router has also a cache memory, so that,
since usually a number of packets belonging to the same communication may
reach
the router within a short time interval, the router can remember and use the
same
routing decision for all the packets that are going to the same target.

79. The system of claim 1 wherein more than one input fibers are sharing the
same output fibers, and additional mechanisms are used for handling problems
when
more than one packet with the conflicting wavelengths need to enter the same
exit
fiber before the other one finished passing.



30

80. The system of claim 79 wherein said mechanisms are based on using at least
a few fibers for each destination route, so that we have more flexibility in
choosing
alternative output fibers in such cases of collision and more statistical
chance of
solving it like this.

81. The system of claim 79 wherein each lambda is used as a separate channel
and said mechanisms are based on optical conversion of at least one of the
colliding
bit streams into another lambda.

82. The system of claim 79 wherein subsets of lambdas are used each as a
single
channel and said mechanisms are based on optical conversion of at least one of
the
colliding bit streams into another non-conflicting group of lambdas.

83. The system of claim 79 wherein said mechanisms are based on using at least
two different polarizations in such cases by letting the colliding bit streams
pass
though appropriate polarization filters.

84. The system of claim 79 wherein said mechanisms are based on routing at
least one of the colliding bit streams into at least one additional delay
circuit, hoping
that by the time it comes out the collision problem will no longer exist, and,
if the
collision is not solved, problematic packets can be dropped for example by
routing
them into a dump line.

85. The system of claim 79 wherein said mechanisms are based on routing at
least one of the colliding bit streams for temporary storage in optical
memory, hoping
that by the time it comes out the collision problem will no longer exist, and,
if the
collision is not solved, problematic packets can be dropped for example by
routing
them into a dump line.

86. The system of claim 1 wherein all the lambdas are regarded as a single
channel for packet switching, so that the entire group is routed together with
the same
routing decisions.

87. The system of claim 1 wherein subsets of lambdas are regarded each as a
single channel for packet switching, so that each group is routed together
with the same routing decisions.

88. The system of claim 1 wherein groups of fibers are regarded as a single
channel for packet switching, so that each group is routed together with the
same
routing decisions.

89. The system of claim 65 wherein identical data packets from the same source
going to the same general area can be grouped together with a multiple list of
targets
connected to each copy of the data and sent together to the general target
area.



31

90. The system of claim 89 wherein said grouped packets are broken down into
smaller groups by the routers in the general target area and finally broken
down to
individual data packets for delivering to the final actual destinations.

91. The system of claim 89 wherein said grouped packets are broken down
directly by the routers in the general target area into individual data
packets for
delivering to the final actual destinations.

92. The system of claim 89 wherein said grouping of the packets is done as a
pre-
processing by routers before entering the optical highway.

93. The system of claim 89 wherein said grouping of the packets is done by the
servers themselves.

94. The system of claim 93 wherein this is used also for transmitting much
more
efficiently heavy streaming data, such as from Internet TV stations, so that
even huge
overloads of users accessing the site at the same time can be handled very
efficiently.

95. The system of claim 93 wherein this can be used in general for many
purposes in many servers, so that even huge overloads of users accessing
popular sites
at the same time can be handled very efficiently.

96. The method of claim 66 wherein identical data packets from the same source
going to the same general area can be grouped together with a multiple list of
targets
connected to each copy of the data and sent together to the general target
area.

97. The method of claim 96 wherein said grouped packets are broken down into
smaller groups by the routers in the general target area and finally broken
down to
individual data packets for delivering to the final actual destinations.

98. The method of claim 96 wherein said grouped packets are broken down
directly by the routers in the general target area into individual data
packets for
delivering to the final actual destinations.

99. The method of claim 96 wherein said grouping of the packets is done as a
pre-processing by routers before entering the optical highway.

100. The method of claim 96 wherein said grouping of the packets is done by
the
servers themselves.

101. The method of claim 100 wherein this is used also for transmitting much
more efficiently heavy streaming data, such as from Internet TV stations, so
that even
huge overloads of users accessing the site at the same time can be handled
very
efficiently.


32

102. A system for improving routing efficiency and bandwidth utilization
efficiency in Networks of interconnected devices such as the Internet and
cellular
networks, wherein identical data packets from the same source going to the
same
general area can be grouped together with a multiple list of targets connected
to each
copy of the data and sent together to the general target area.

103. The system of claim 102 wherein said grouped packets are broken down into
smaller groups by the routers in the general target area and finally broken
down to
individual data packets for delivering to the final actual destinations.

104. The system of claim 102 wherein said grouped packets are broken down
directly by the routers in the general target area into individual data
packets for
delivering to the final actual destinations.

105. The system of claim 102 wherein said grouping of the packets is done as a
pre-processing by routers before entering the data highways.

106. The system of claim 102 wherein said grouping of the packets is done by
the
servers themselves.

107. The system of claim 106 wherein this is used also for transmitting much
more efficiently heavy streaming data, such as from Internet TV stations, so
that even
huge overloads of users accessing the site at the same time can be handled
very
efficiently.

108. The system of claim 106 wherein this can be used in general for many
purposes in many servers, so that even huge overloads of users accessing
popular sites
at the same time can be handled very efficiently.

109. A method for improving routing efficiency and bandwidth utilization
efficiency in Networks of interconnected devices such as the Internet and
cellular
networks, wherein identical data packets from the same source going to the
same
general area can be grouped together with a multiple list of targets connected
to each
copy of the data and sent together to the general target area.

110. The method of claim 109 wherein said grouped packets are broken down into
smaller groups by the routers in the general target area and finally broken
down to
individual data packets for delivering to the final actual destinations.

111. The method of claim 109 wherein said grouped packets are broken down
directly by the routers in the general target area into individual data
packets for
delivering to the final actual destinations.

112. The method of claim 109 wherein said grouping of the packets is done as a
pre-processing by routers before entering the data highways.


33

113. The method of claim 109 wherein said grouping of the packets is done by
the
servers themselves.

114. The method of claim 113 wherein this is used also for transmitting much
more efficiently heavy streaming data, such as from Internet TV stations, so
that even
huge overloads of users accessing the site at the same time can be handled
very
efficiently.

115. The method of claim 113 wherein this can be used in general for many
purposes in many servers, so that even huge overloads of users accessing
popular sites
at the same time can be handled very efficiently.

116. A method of improving routing efficiency and bandwidth utilization
efficiency in Networks of interconnected devices such as the Internet and
cellular
networks, wherein proxies are used which can work also with streaming data by
using
short time windows to combine requests for data together.

117. The method of claim 116 wherein, after getting the data, said proxies can
also
group together identical data packets from the same source going to the same
general
area, with a multiple list of targets connected to each copy of the data and
sent
together to the general target area.

118. The method of any of claim 116 & 117 wherein at least some of the routers
function also as said proxies.

119. The system of any of claims 102-104 wherein packets from different
sources
going to the same general target area can also be combined, so that they can
be routed
together more efficiently and later similarly broken down according to
physical
proximity to the target area.

120. The method of any of claims 109-111 wherein packets from different
sources
going to the same general target area can also be combined, so that they can
be routed
together more efficiently and later similarly broken down according to
physical
proximity to the target area.

121. A system for improving routing efficiency in Networks such as the
Internet
and cellular networks, wherein routers have also a cache memory, so that,
since
usually a number of packets belonging to the same communication may reach the
router within a short time interval, the router can remember and use the same
routing
decision for other packets that are going to the same target.

122. A method for improving routing efficiency in Networks such as the
Internet
and cellular networks, wherein routers use also a cache memory, so that, since
usually
a number of packets belonging to the same communication may reach the router
within a short time interval, the router can remember and use the same routing
decision for other packets that are going to the same target.


Description

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



CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
1
System and method for improving the efficiency of routers on the Internet
and/or cellular networks and alleviating bottlenecks and overloads on the
network.
Background of the invention
Field of the invention:
The present invention relates to router optimizations on the Internet, and
more
specifically to a system and method for improving the efficiency of routers on
the
Internet and/or cellular networks and alleviating bottlenecks and overloads on
the
network.
B ack,_ r~ ound
With the current explosion of information transfer, optic fibers are becoming
faster
all the time. Most of the recent advances in the amounts of data that these
fibers can
carry per time unit have come from adding more and more wavelengths (termed
lambdas) to the same fiber at the same time, a method which is called DWDM
(Dense Wave Division Multiplexing). The biggest obstacle to this was the lack
of
suitable amplifiers, until the Erbium amplifiers were discovered in the late
80's,
which have 2 advantages: 1. They don't need to convert the optical signals to
electricity and back, but instead, light in the feeble input signals
stimulates excited
Erbium Atoms to emit more light at the same wavelength, 2. Because they
preserve
the wavelength of the optical signals, they can amplify many wavelengths
simultaneously without having to first extract them separately and then
recombine
them after amplification. Typically a single optic fiber can carry today up to
80
different lambdas simultaneously, and the number is likely to increase
further. As
the Internet becomes more and more demanding for bandwidth, optic fibers will
keep getting faster at a high rate. The upper limit for optic fibers using
such methods
is currently estimated to be around 100 terabits per second, and is expected
to be
achieved within the next 8 years.
However, the biggest bottleneck with such fibers today is the relatively much
slower speed of the routers. There are two main methods for routing: circuit
routing,
and packet switching. In circuit routing, each connection gets a communication
route for a certain time slice. This has typically been used until now mainly
in
telephony, but the big disadvantage is that typical data interactions have a
peak 15
times greater than their average rate, so typically on average only 7% of the
line is
used. In packet switching the same route can be used by many users
simultaneously,
and the bandwidth is divided between the users by collecting bits together in
packets
(typically up to 64 Kilobytes per packet in the TCP/IP Internet protocol), and
each
packet has a header that contains among other things the target IP address of
the
packet. This way, the route can be utilized up to 100% instead of only 7%.
Since the
early 70's the computing cost to switch packets has been cheaper and has
decreased
at a faster rate than the communication speed cost, and this is the reason
that the


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
2
Internet started using packet switching. Today, packet switching is beginning
to take
over voice as well as data. According a thorough review, "ATM. Another
technological mirage, or why ATM is hot the solution" by Vadim Antonov,
published in http://www.inetdevgLrp.org/19980421/atm.htm, packet switching or
something similar to it is needed not just for better utilization of the
lines, but also
because it is superior to circuit switching in many ways, such as better
scaleability
as the Internet grows, better handling of traffic congestions, and better
routing
flexibiliy.
On the other hand, recently the ability of optic fibers to carry data has
increased
faster than the computing power, and the use of DWDM in optic fibers has
resulted
in routers separating between the lambdas in a way more similar to circuit
switching. The start-up company Trellis Photonics for example created and
patented
a fast router that uses a special crystal that contains holograms and
manipulates each
lambda to into the wanted output fiber through the appropriate hologram, by
applying an electrical current to the crystal. Typically this switch has a
response
time of about 30 nanoseconds, which is among the fastest in the industry
today, and
can support optic fibers that carry even a few terabits per second (because
the
switching is done for large groups of bits, not for every bit of information
that
passes, and there can be time coordination on both sides for circuit
switching), and
Trellis will probably have soon faster switches with a few nanoseconds
response
time. Another start-up company - Lynx - claims that it will soon have a faster
router that uses, instead of holograms, Lithium Niobate waveguides, which will
typically have a response time of about 4-5 nanoseconds.
Even with DWDM, Packet switching is of course still used on the Internet after
separating the lambdas, but the biggest problem with packet switching is that
the
computation requirements for analyzing the packets, finding their target IP
addresses, looking them up in the database, and determining their required
destination routes, create a severe bottleneck and slow down the process
considerably. Translating the information from the light bits into electronic
bits for
processing in electronic computers and then translating it back to light bits
is too
much time-consuming. For this reason, there are today a number of companies
and
university departments who are trying to work in the direction of all-optical
switches, which will be able to analyze the information within the data
packets
directly in the form of light bits, or various hybrid systems that will
combine
electronics and photonics. According to the thorough review "Technology:
Optical
illusions? ", published in http://www.americasnetwork.com/issues/2000issues/
20000901/20000901 optical.htm, the idea of reading the header separately
without
disrupting the optical bit stream and using that information to send a control
signal
to an optical switch has been already suggested in numerous research papers in
various scientific journals, starting from the early 90's, but the biggest
problems
have been the speed of the switching element, and the buffering of the
packets.
Another good review of such problems is "Advances in Photouic Packet
Switching:
An overview ", by Yao et.al., published in IEEE Communications Journal on Feb.
2000, describing for example various complex attempts to synchronize the
packets.


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
3
Summary of the invention
The present invention solves the above problems by working around the
synchronization problem, so that the system is able to automatically
compensate for
the crudeness of the response time of the optical switch (at least a few
nanoseconds
with the available optical switches described above) compared to the speed of
the
bits flow. This way the "cutting knife" can be much thicker than the point it
has to
cut between each two consecutive packets. Obviating the need for
synchronization
between packets also enables simpler and more flexible buffering, so that the
delay
lines can even deal with packets of sizes longer than the lengths of the delay
lines.
The routers read only the headers or parts of them by optically preferably
obtrusively marking the target IP addresses or the entire headers or parts of
them, or
optically preferably obtrusively marking the beginning of each packet header
and
making sure that the distance in bits between the beginning of the packet and
the
position of the target IP address is always constant, or marking both. Since
the
position of the target IP address in the TCP/IP protocol is close to the
position of
beginning of the packet, it is very easy to find both positions when at least
one of
them is marked. (In case this distance can change, marking may be done for
both the
beginning of the packet and the position of the target IP address, or some
more bits
have to be read for finding the exact second position, but this is less
efficient.
Keeping this distance constant and keeping both positions close to each other
is
more efficient). So. from now on, throughout the text of the patent, including
the
claims, marking the target IP address means either marking the target address
itself
directly or marking it indirectly by marking the beginning of the packet
header, or
marking both, or marking the entire header or part of it, so that in any case
this
marking also enables us to know the position of the beginning of the packet
(See
also the glossary for more clarification). If both are marked, the 2 kinds of
marks are
preferably different, so that for example the beginning of the packet header
might be
marked by a much longer consecutive period of light (as explained in solution
5
below) than the mark of the target address. This marking is preferably done at
the
point where the data is entered into each lambda, and is preferably detected
after
separating the lambdas. The detection is preferably done with the help of a
very fast
and sensitive photo-diode or photo transistor, which detects the optically
obtrusive
mark and then extracts only the relevant few bits that follow it and
preferably
translates them to electronic bits for processing by electronic computer or
computers, preferably with multiple processors. This is much easier and
cheaper
than having to use a photonic computer, yet very efficient. This way, since a
data
packet in the current prevalent TCP/IP protocol can typically be as large as
64
Kilobytes, and the target IP address is typically just a few bytes long, by
optically
marking the location of the Target IP address it can be much more efficiently
located by optical means without having to translate all the light bits to
electricity or
having to process all the light bits in an all-optical processor. So the
number of bits
that have to be processed this way can be reduced by a factor of 2-3 orders of
magnitude. After extracting directly the IP Target addresses and preferably
additional data from the header, this data can then be analyzed by the fastest
means


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
4
possible (for example by electronic computers with one or more processors, or
by
photonic computers when they become available), and then the routing decisions
can be immediately transmitted back to the router, which can then act directly
on the
light packets as for example in the two fast switches of Trellis-Photonics and
Lynx,
without ever converting them into electricity and back. Since the header is
small
relative to the packet size, this optical marking can be used also for
locating and
reading the entire header or additional parts of it, such as for example the
packet
size.
Since making the packet switching decisions still takes considerably longer
than
the time it takes the light to pass through the router, preferably the router
has an
ability to efficiently delay the light data within its circuitry for the
number of cycles
needed until the packet switching decisions can be made. Another problem is
the
crudeness of the response time of the optical switch as explained above. A
number
of solutions to this problem are shown.
Another optimization described in this invention in another possible
variation,
which is related to the efficient handling of the packets by the routers, is
improving
routing efficiency and bandwidth utilization efficiency in Networks. of
interconnected devices such as the Internet and cellular networks, by grouping
together identical data packets from the same source going to the same general
area
so that the body of the packet is sent only once with a multiple list of
targets
attached to it, to each general target area. This grouping is preferably done
by the
server of the originating source itself, and is preferably based a physical
addresses
system, such as for example GPS. These grouped packets are then preferably
broken
down into smaller groups by the routers in the general target area and finally
broken
down to individual data packets for delivering to the final actual
destinations.
Another possible variation is that preferably the server can also group
together non-
identical packets (such as for example packets from different files or a
number of
different condensed packets of the type described above) going in the same
general
area, with a combined header or general area tag, although in this case the
different
packets or groups of condensed packets can not be further condensed to a
single
copy of the data, so the saving is only on the number of headers that need to
be
processed along the way fox making routing decisions. Such groups of different
packets going in the same direction are also then preferably similarly broken
down
into smaller groups by the routers in the general target area and finally
broken down
to individual data packets for delivering to the final actual destinations.
These
optimizations can be very useful for example for optimizing the access to very
popular sites such as Yahoo or CNN, and can be used also for example for more
efficiently transferring streaming data, such as from Internet radio stations,
or even
for example Internet TV stations which will probably exist in, the next years,
a thing
which ordinary proxies cannot do. This can work even more efficiently when it
is
applied in addition to the current state of the art load distribution systems,
such as
Akamai. This is explained in more detail as part of the reference to fig. 1b.


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
A number of methods can be used for optically marking the target addresses
(and/or the beginning of the packet headers, or the entire headers, or part of
them).
(The optical detector for detecting these marks will then look for the marks
accordingly):
1. One way of implementing this could be to reserve a special lambda just for
marking the location of the target addresses (and/or the packet headers or the
beginnings of them). In other words, this means that the target IP addresses
are marked by a slightly different color. However, this method has the
disadvantage of being able to mark the positions only crudely because of the
different chromatic dispersion of different lambdas. Another disadvantage is
that the packet switching will be typically done after separating the lambdas,
so this method of marking requires transferring the special lambda together
with each separated lambda or using a new mark for later processing by the
packet switching router, unless this processing is done at the same time of
separating the lambdas.
2. Solution number 2 is similar to solution number 1, except that instead of
one
lambda for marking target addresses (and/or the packet headers or the
beginnings of them) for all the lambdas passing through the optic fiber, each
lambda has its own preferably slight shift in wavelength for marking its own
target IP address. _However this wastes more wavelengths and more
problems of crosstalk between close wavelengths may occur.
3. Solution number 3 does not use any change in color (wavelength) for
marking the target addresses (and/or the packet headers or the beginnings of
them), but instead uses a conspicuous change in light amplitude, preferably a
significant increase in the amplitude for all the bits of the target IP
address
and/or all the bits of the header or part of it. However, since optical fibers
typically need amplifiers at certain intervals, and some of them may not
support keeping the different levels of amplitude, this solution might require
changing amplifiers.
4. Solution number 4 does not use any change in color (wavelength) for
marking the target addresses (and/or the packet headers or the beginnings of
them), but instead uses a temporal method of marking it, which is much
cheaper and easier to create and also easier to detect later. Preferably, this
can
be easily done by simply marking the position of the target IP address with a
period of no light considerably longer than ordinary. Preferably, This
considerably longer period is at the beginning of the packet and the exact
position of the target IP address is defined by a slight shift from there or
marked separately.
5. Solution number 5 is very similar to solution number 4, except that instead
of
an easily noticeable period of no light, it uses an easily noticeable period
of
consecutive light. Preferably, in addition to this, the period of consecutive


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
6
light can also use significantly higher intensity, in order to make the mark
even more conspicuous. Preferably, This considerably longer period is at the
beginning of the packet and the exact position of the target IP address is
defined by a slight shift from there or marked separately.
6. Solution number 6 is to use a different polarization for marking the target
addresses (and/or the packet headers or the beginnings of them), which is
also cheap and easy to create and also easy to detect later. So the detector
in
this case is a polarization detector, preferably tuned especially to the
different
polarization. Of course, various combinations of methods 5 and 6 and/or the
other solutions can also be used. Another variation of this solution is to use
alternating polarizations for each two consecutive packets in the lambda bit
stream, so that for example all the odd packets have one polarization and all
the even packets have another polarization. However, such alteration between
odd and even packets is problematic and less desirable because after the
routing the order of packets can change, so it would require additional
mechanisms for shifting again the polarizations at the router or adding a
dummy packet when required, to keep the alteration rule working. Also, this
can work only with polarization retaining fibers, which are more expensive.
7. Solution number 7 in to synchronize the wave phases of the various lambdas
and use time shifting of the waves of the different lambdas for the harks,
while taking into account also the differences in wavelengths, so the detector
in this case is a phase detector. However, this solution is impractical in
long-
distance fibers because of dispersion problems.
8. Solution number ~ is using for the mark a temporally different kind of
bits,
for example fatter bits. So, for example, if normal 1's are 20 picometers wide
and 0's are 10 picometers wide, the marks can use for example 1's that are 60
picometers wide and 0's that are 30 picometers wide. The proportional
change of 0's and 1's does not have to be the same, and also the width of the
separator between bits can be either also changed or not changed. This
solution is in a way a combination of solutions 4 and 5 and it is better than
them because it enables the mark to carry also information, and also avoids
problems such as a dark mark being the same as a period of a silence in
transmission. This mark of fat bits can be for example in front of the packet
header, but preferably the entire packet header itself or at least parts of it
(such as the target address) are encoded or duplicated in fat bits. This will
enable easier handling of the header even if the bit stream is extremely fast.
Of course various combinations of the solutions are also possible, such as for
example a longer consecutive period of darkness or light before the
beginning of the fat bits of the header.
Brief description of the drawings


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
Fig. 1 is a schematic illustration of a preferable exemplary configuration of
the
system.
Fig. 1b is a schematic illustration of a preferable example of grouping
together
identical data packets from the same source going to the same general area
with a
multiple list of targets connected to each copy of the data and sent together
to the
general target area.
Fig. 2 is a schematic illustration of a preferred way in which the fast packet
switching optical router works.
Fig. 3 is a schematic visual illustration of a preferable example of the
temporal
marks in a single lambda in solutions 4 and 5.
Important Clarification and glossary:
Throughout the patent when possible variations are mentioned, it is also
possible to use combinations of these variations, and when combinations are
used, it is also possible to use at least some elements in them separately.
These
variations are preferably in different embodiments. In other words: certain
features of the invention, which are described in the context of separate
embodiments, may also be provided in combination in a single embodiment.
Conversely, various features of the invention, which are described in the
context of a single embodiment, may also be provided separately or in any
suitable subcombination. All these drawings are just exemplary diagrams.
They should not be interpreted as literal positioning, shapes, angles, or
sizes of
the various elements. When used throughout the text of this patent, including
the claims, "database" means either database or databases. When used
throughout the text of this patent, including the claims, "computer" means
either computer or computers, and can mean any kind of computer, such as for
example electronic or photonic, with a single processor or multiple
processors.
"TCP/IP" stands for "Transmission Control Protocol / Internet Protocol. "IP
Address" stands for "Internet Protocol Address". However, throughout this
patent, including the claims, this address is used as a logical concept and
does
not necessarily depend on a specific implementation, so the concept of this
patent can work with any implementation or kind of target address.
Eventhough there are actually 7 layers of communication, we are concentrating
on the target address as a logical concept regardless of other layers. Since
our
optical marking is done at layer 1, which is the physical layer, layer 2,
which
provides error control, must be able to ignore our marks or avoid being
confused by them. If some more data needs to be read for example from layer
2, it can still be done within the scope of the present invention by adding
for
example a few more optical marks if necessary. Also, the protocol of the first
3
layers can be modified between the routers that comply with this invention in
order to make the marking easier to implement. Also, eventhough we described
the invention with reference to DWDM, it will be appreciated that the present


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
invention can work similarly also with other means of multiplexing that may be
used in the future.
Detailed descriution of the preferred embodiments
All of the descriptions in this and other sections are intended to be
illustrative
examples and not limiting.
Referring to Fig. 1, we are assuming for the simplicity and clarity of the
example,
that there are only 4 lambdas carried simultaneously by the optic fiber. So
there are
4 units (marked 1-4) that encode electrical bits from electrical input lines
(marked a-
d) respectively into the light bits of each lambda, and while encoding them,
these
units find the target address of each data packet and/or the beginning of the
packet
header and mark them with an optically obtrusive mark, or mark the entire
header,
so that the computer that makes the packet switching decisions will get the
entire
header. Preferably the target address is very close to the beginning of the
packet and
at a constant distance from it, so only one mark is needed for each packet.
Most
preferably the target address would be the first thing at the beginning of the
header.
Unfortunately, according to current Internet protocol, although the header is
indeed
very small (At most 60 bytes long), this distance is not constant: Eventhough
the
typical header length is 20 bytes, this length can change between 20 to 60
bytes, and
the target IP address is near the end of the header, so one solution is the
read most or
all of the header. Another possible solution is to change the protocol within
the
system of routers that conform to this invention, so that the target address
is moved
or copied also to the beginning of the packet before the normal packet header
begins, and before exiting the system this can be changed back to the original
header
structure. An even better solution is to do some IP address processing in
advance
and put, preferably in front of the packet header, a label that defines
already the
general destination of the packet, similar to the way that postal services
look first of
all at the destination country. Such a system can save processing time for the
computers that make the packet switching decisions in each router, and we want
to
make this decision time as fast as possible, so that the optical delay circuit
can be
made as short as possible. Also, it should be emphasized that the present
invention
enables a good flexibility in the amount of address processing done by the
router, so
that fox example the main junctions can rely more on the pre-processed labels
(or on
various levels of pre-processing), and other routers closer to the targets,
who
eventually have to deal with the exact address, can still do it much faster
than it is
done today. In the next generation Internet that will take over in the next
few years,
this will work even better, because: a. the next generation headers are going
to be of
constant size, b, the IP address size will increase and will probably contain
also
information that will help to determine better and faster in advance the
physical
location of the Target, so both the pre-processing of the addresses in advance
and
the processing at the router will be able to work faster. So the physical
location info
might include for example the GPS coordinates of the target and the origin, or
longitude and latitude coordinates, or geographical info such as state and
town, and


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
9
therefore, preferably the routers also know their own geographical location
and also
the geographical location of all the other major routers in the Internet
(coordinates,
and especially GPS coordinates are better because the calculation is immediate
without a need for maps). This way, almost no lookup tables are needed and
even
without any pre-processing the decision making per each address can be almost
instantaneous. However, for increased efficiency, preferably each router knows
in
addition to the geographical location of the other main routers, also their
connectivity (for example in map or table or graph form), which shows which
routers are connected to which, and preferably also the bandwidth of each
connection and/or for example relative load on each connection, and/or for
example
average free bandwidth, etc. If the physical location of the target or the
source
changes, including for example in the case of mobile Internet-enabled phones
and
portable wirelessly connected computers and/or other devices that might be
connected in the future to the Internet (such as smart home or office gadgets,
etc.),
then preferably they can immediately determine their own GPS and update it in
the
appropriate extension of their IP address, or if they don't know it, then
preferably
they are automatically informed of it and update this field, by the first GPS
aware
router or cellular company's cell that knows that they are close to it.
Therefore,
preferably, all the cells of all the cellular companies should also be
constantly aware
of their own GPS. However, since the IP address of each Internet-connected
device
must be updated over Domain Name Servers in the Internet when it changes, for
efficiency considerations preferably there are different codes for typically
mobile
devices and typically stationary devices, so that since stationary device
change their
GPS only rarely, preferably their GPS is updated globally in the DNS system
when
they change location, whereas mobile devices preferably have only a cruder GPS
covering only their general area (or their state or country for example), and
when
they move beyond a certain minimal significant distance within their general
area,
they update only the nearest cells (or are updated by the nearest cells) about
their
new GPS location so these changes do not propagate over the Internet but only
locally. In this case preferably their crude GPS changes only when they move
beyond their crude general area. (However, the decision making might still
have to
take into account some knowledge about the current loads and/or accessibility
and/or bandwidth of the other main routers, so preferably such data is updated
all
the time at the decision making computers at the routers). Another possible
variation
is to make additional pre-processing that groups together packets that are
going to
the same general area, and use a general destination tag for the entire group,
and
then preferably the group of packets can be treated by the routers of the main
junctions like a single packet and treated as individual packets at the
routers closer
to the target. Also, preferably, packets that are smaller than a certain
minimum are
padded with extra trailing bits to reach a required minimum size (The need for
this
is explained below in the ref. to Fig. 2). Anyway, if the bit rate is very
high,
preferably these changes are done previously and these marks are also done
previously electronically (such as for example by higher voltage or noticeable
consecutive period of constant voltage) so that no computational processing of
the
data will be needed at this stage. These lambdas are then condensed through
optical
means (marked e-h) into the same optic fiber (5) and travel typically a large


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
distance. It should be noticed that typically there are more than one optical
fiber in
each physical optic fibers bundle, so everything is multiplied by the number
of
actual fibers. Typically there are also amplifiers at certain intervals for
keeping the
optical signals strong enough. Eventually the optic fiber reaches the first
router (6),
which is preferably a fast optic router such as for example the routers
developed by
Trellis-Photonics or Lynx or other demultiplexers, for separating the lambdas
each
into a different target optic fiber (marked by 7-10). These optic fibers then
each
reach the packet switching router (marked 11-14) that works much more
efficiently
by optically detecting the marked target IP addresses. It should be emphasized
that
although this is a typical configuration today (of course with much more
lambdas
and much more optic fiber in each bundle), many changes in this configuration
can
be made in the future. The distance between the first router (6) that
separates the
lambdas to the packet switching routers (7, 8, 9, or 10) can be any distance,
from
near to far.
However configurations can also be conceived in which the fast packet
switching
is used even before separating the lambdas, for example if we start making
much
larger packets (such as for demanding visual communications), or making
additional
pre-processing that groups together packets that are going to the same general
area,
and using a general destination tag for the entire group. This way, the whole
group
of lambdas or subgroups of them can behave like a single channel with packet
switching, but in this case preferably additional controls are used to ensure
synchronization between the lambdas, such as for example marking the starting
points of the packet headers in each lambda with long consecutive marks, so
that
only one header needs to be interpreted but the exact position can be
determined for
each lambda. Other variations are also possible, such as for example using a
number
of subsets of lambdas each as a single channel with packet switching. Since
the
propagation delay variation for example between lambdas 30 nanometers apart
can
be around 60 nanoseconds after traveling a 100 Kilometers, or about 6 nano if
dispersion compensation fibers are used, then for example after,traveling
7,000 km
for example in a submarine cable, the delay variation will be 4200 nano, or
420
nano if dispersion compensation fibers are used. Therefore, for example with a
typical frequency of 10 Gigabits per second for each lambda at the current
state-of
the-art broadcast rates, about 10 bits per nanosecond are passing in each
lambda at a
given point on the fiber, so this can cause a deviation of 4,200 bits = 525
Bytes
between the lambdas that are 30 nm apart. This means that if we use more than
one
lambda as a single channel, preferably subsets of lambdas closer to each other
are
used, and/or the length of the long marker is preferably for example at least
a few
thousands of bits long. Another possible solution is to use the method of
duplicating
the bit stream (explained below in the ref. to Fig. 2) and making sure that
each
packet is at least long enough so that we have a long enough slack area. This
way,
the router need only look at one of the headers, preferably the header of the
fastest
lambda, for making the routing decisions, and the exact positions of the
headers of
the other lambdas need to be determined only at the destination or for example
at
routers at the periphery which have to convert it to electronic signals for
the non-
optical peripheral part of the network. Another possible variation of this is
that


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
11
preferably the slowest lambda in the group is also extracted, in order to find
the size
of the gap between it and the fastest lambda in the group in order to make
sure that
the slack area is within limits. Another possible solution in this case is to
separate
the lambdas at the router (or only the most divergent ones) and determine the
starting position of each lambda's header at the router, but use only the
first header
that comes in (preferably the one from the fastest lambda) for making the
packet-
switching decision, and then applying the same routing decision to all the
lambdas
in the group. Of course, various combinations of these solutions can be used.
In the
other direction - another possible variation is for example to regard more
than one
optic fiber as a single channel for packet switching, but, again, in such a
case
additional controls may be needed to ensure synchronization between the
lambdas in
each fiber and between the fibers that are used as one channel. Preferably, in
such a
case, the delay circuit can contain for example more than one fiber in
parallel, or a
number of delay circuits can be used in parallel - one for each fiber, but the
packet
switching decision made for one of the fibers would be applied automatically
to all
the fibers that belong to the same subset. (In this case, if other temporary
optical
storage method or methods are used, the data from more than one fiber is
preferably
similarly stored together or in parallel). It is also possible, for example,
to optically
duplicate the entire group of lambdas entering the router into as many copies
as
needed, and then various combinations of decisions can be made based both on
separating lambdas and on packet switching or any other combinations of any
kinds
of mixed protocols. Another possible variation is to add also for example
something
like an automatic cache memory to the router, so that, since usually a number
of
packets belonging to the same communication may reach the router within a
short
time interval, the router can remember and use the same routing decision for
other
packets that are going to the. same target (and/or for example to the same
general
area, if physical addresses are used). This and other features can also be
used
independently of the other features of this invention.
Referring to fig. 1b, we show in another possible variation, a preferable
optimization of making additional pre-processing that automatically checks and
identifies packets of identical data if they are coming from the same Internet
page
(for example from server 41) and going to the same general area (for example
area
51) (for example within a small pre-defined time window) and can group them
together so that the body of the data is sent only once and for example the
first part
of the packet for example has a special additional data part that contains the
actual
list of targets. (Preferably in one of the possible embodiments this special
part can
also be marked differently optically, for example with fat bits, in order to
make it
easier for the router to read and rewrite this part on the fly as needed, but
in this case
preferably these bits are less fat than the bits of the real packet header, in
order to
avoid confusion. Another variation is using normal bits for this data). In
this case
preferably there is a special mark in the header that tells the routers on the
way (for
example router 42a) that this packet is actually a condensation of more than
one
identical data packet. As the condensed packet reaches the general area (for
example
area 51), it is preferably separated back by duplicating into separate
packets, each
with its original target restored in the header, or, in another variation,
separated into


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
12
similar grouped packets but with a smaller number of targets and a more
precise
general united target area, and further distributed from there (for example by
routers
41a-c), and later broken down into the individual packets. Of course this
grouping
and ungrouping according to destination areas can be only done efficiently in
the
next generation Internet, by using the physical part of the address,
preferably GPS
coordinates. Preferably, the physical address system is implemented as
described in
the reference to Fig. 1. Preferably, the decision when to break down the
packets into
smaller groups or into individual packets can be done for example as a simple
function of the amount of distance between the target area's physical
coordinates
and the router's physical coordinates, or the router for example decides to
break up a
group if there are no other main routers with coordinates closer to the
coordinates of
the general target area. For the actual breaking-up, in electrical routers
there is no
problem to maniplulate the data, and in optical routers preferably the
extended
header (that contains also the list of targets) is preferably read along with
the real
header for processing, and then for breaking up the grouped packets, they ~
are
preferably optically duplicated and the new headers inserted for each sub-
group or
individual packet created. (However, in the meantime until the physical
address
system becomes available, it can be done, preferably in another embodiment,
although less efficiently, by using for example trace-route information of the
request
for the data, so that packets are grouped together based on the routers
through which
the request for the data traveled or originated. For this purpose, packets
that travel
on the Internet, or preferably at least for example the small packets of
requests for
data typically generated by Internet browsers, can for example accumulate
along the
way the list of the routers though which the request passed and deliver this
information to the server, an so when sending back the data, the server can
for
example automatically regard requests as belonging to the same general area by
identifying common routers in their lists of traversed routers). This can be
very
useful for example for optimizing the access to very popular sites such as
Yahoo or
CNN, in a way similar to a caching proxy, except that it can be done
automatically
even when the user does not work through a specific proxy. However, this is
even
more useful than ordinary proxies since it can be used also for example for
more
efficiently transferring streaming data, such as from Internet radio stations,
large-
scale e-learning classrooms or video conferences, or even for example Internet
TV
stations which will probably exist in the next years, a thing which ordinary
proxies
cannot do. However, comparing the data of packets if their header says that
they
come from the same source and go to the same general target area in order to
see if
their data is identical is not efficient, so preferably this packing together
of same
packets with multiple targets is done already by the server itself (41) based
on the
later cooperation of the routers along the way (This can be for example an
additional
protocol that sits on the normal TCP/IP protocol for example by using part of
the
united data packet as an extended part of the header which contains the list
of actual
target addresses). This way, the server (41) can either send only one copy of
each
data packet with all the list of target addresses included, to the nearest
router (for
example 42) that can handle it, or more preferably for example prepare a
number of
separate copies each already grouped by at least some level of general
division of
areas. So for example if the site is an Internet Radio or TV station, and for
example


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
13
there are 100,000 people in Israel who want to view it at the same time, the
same
streaming data can be automatically sent to Israel (51) just once, and
automatically
divided into targets by the routers (41 a-41 c) in Israel. (So if Israel is
for example the
general target area (51), until the combined packet reaches this area, all the
routers
on the way don't have to look at all at the packed list of targets).
Preferably in this
case much larger packets sizes can also be used, in order to further increase
the
efficiency of handling the distribution, especially if the list of targets is
so large, so
that preferably the header is still much smaller than the actual data part of
the
packet. With the aid of an additional slight variation this can be even used
for
example for very efficient video-on-demand or radio-on-demand, by having for
example a number of sub-parts in the Internet radio or TV stations, so that
each sub-
part has different transmission times for example with jumps of 10 minutes
between
them, so that the user for example does not need to wait more than 10 minutes
for
viewing a certain choice of movies. Of course, as the Internet becomes faster,
the
transmission speed can be much faster than the actual movie time, so for
example
the entire movie can be broadcast in a few minutes or even seconds, which
would
make the idea of waiting for example 10 minutes obsolete, so the waiting will
be
mainly just for filling the preferably short time window so that the server
can gather
enough target addresses for packing the packets together. (However, the
transmission speed is for example limited when broadcasting live from an
Internet
TV station). Another possible variation is that streaming data such as for
example
TV or radio broadcast or e-learning broadcast or video conference over the
Internet
will have a special status, so that the server can easily keep a list of
hooked
"audiences" (for example by assuming a certain minimum time of attendance) in
order to be able to more efficiently use the same list of target addresses for
multiple
packets. This is somewhat similar to the way that e-mail with multiple
addressees is
handled, except that it is much more efficient in grouping and ungrouping
according
to general destination areas (since the POP mail server practically sends
together
only e-mails that are going to the same domain), and it can be applied to much
more
types of data, in addition to e-mails. This way Internet high loads can be
handled
much more efficiently than any method in use today, and it has very high
scaleability, so that even huge overloads on a single site are automatically
handled
extremely efficiently by using the very fact that the site is requested by a
large
number of users in order to send out the data much more efficiently. At least
in
some aspects, this may work also more efficiently than load distribution
systems
such as for example Akamai, or at least further improve them when applied in
addition to them, because: A. These systems cover only part of the route from
the
server to the target, whereas the new system and method described here can
extend
automatically longer along the route. B. These system are limited to a finite
number
of predefined areas where additional servers are positioned, whereas the new
system
and method is automatically much more dynamic. C. These systems cannot handle
dynamic data at present because of synchronization problems, whereas the new
system and method can. D. Systems such as Akamai help only a set of servers
who
specifically request the service and pay for it, whereas the new system and
method
can work automatically for any server that supports it. Of course it can work
even
more efficiently when it is applied in addition to the current state of the
art load


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
14
distribution systems, such as Akamai. Another possible variation is that when
combining the new system with load distribution systems like Akamai (and
especially when broadcasting streaming data such as for example video or TV),
preferably the load distribution systems try to keep the users as much as
possible on
the same server after assigning the closest server to them, without
unnecessary
switching between servers according to load, in order to enable more
consistency in
sending the data to the same hooked audiences. This is also easier to
accomplish
because the new system automatically reduces the load anyway without needing
to
continuously move users around servers according to load. Another possible
variation is that when downloading for example very large files, such as for
example
large video files, the server can combine together in the united packets also
requests
that came after the original time window, so that for example new requests
might be
combined with older requests and thus get first a later part of the file and
then get
earlier parts of the file later. Another possible variation is that preferably
the server
(and/or routers along the way) can also group together non-identical packets
(such
as for example packets from different sources or a number of different
condensed
packets of the type described above) going in the same general area with a
combined header or general area tag, although in this case the different
packets or
groups of condensed packets can not be further condensed to a single copy of
the
data, so the saving is only on the number of headers that need to be processed
along
the way for making routing decisions. Such groups of different packets going
in the
same direction are also then preferably similarly (like in the mechanism
described
above) broken down into smaller groups by the routers in the general target
area and
finally broken down to individual data packets for delivering to the final
actual
destinations. So this can be considered an improvement of current MPLS
(Multiple
Protocol Label systems). Another possible variation is to use, preferably in
addition
to the above described options, also proxies which are able to support also
streaming
data. This can be accomplished for example by using in the proxy a time window
(or buffer) like the time window described above for the servers, so that the
proxy
for example combines all the requests for the same data that arrive within the
time
window and requests the data just once and then sends it back to the IP
addresses
that requested it. Another possible variation is that the proxy first gets the
streaming
data the first time it is requested and then waits and keeps the data at least
for the
specified time window to see if there are additional requests for it. This way
the data
can be sent to the requesters even before the time window is over. On the
other
hand, if there are many requests, it may be even more efficient if the proxy
itself
then sends the data as a, united package with the list of targets, as in the
optimization
described above. And this can be even more efficient if it is used in addition
or in
combination with load distribution systems such as Akamai. Another possible
variation of this is that at least some of the main routers can also function
as such
proxies themselves. This means that when these routers also act as proxies,
they are
preferably able to cache data and preferably also able to create by themselves
combined packages in an efficient manner like when the server itself creates
it.
Preferably this can be done for example both in optical and non-optical
routers, but
if it is done in optical routers, then preferably the cached data is optically
stored for
example in delay lines and/or some type of optical memory for temporary
storing of


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
1S
packets data, such as for example holographic memory, or for example the newly
discovered methods for considerably slowing light for example in chilled
Sodium
gas, or stopping it for example in Rubidium gas with the help of additional
laser
beam or beams, and then releasing the light again at will. Another possible
variation
is to store such cached data in normal RAM or electromagnetic storage also in
optical routers, since typically such cache data may need to be stored for
longer time
windows than the times needed for making routing decisions. The above
optimizations can be done also independently of the other features described
in the
present invention, and also non-optical routers can deal with it. However in
non-
optical routers preferably the headers (or parts of them) are also marked
electronically (or at least logically) so that the router can more easily
access them
without having to go through the data part of the packet except when needed.
This
optimization can work similarly also in other Networks of interconnected
devices
such as for example with Mobile Internet-connected devices, such as cellular
phones
or palm devices or mobile computers connected through cellular networks,
especially when they will have also at least a crude general-area GPS.
Preferably in
this case at least part of this optimization is continued also for example by
the
cellular company's cells andlor by special routers so that the optimization
can
continue up to the level of cells or groups of cells. This can be very useful
for
example in the 3rd generation cellular networks, since they will need to
support also
more heavy traffic such as streaming video, etc.
Referring to Fig. 2, an optic fiber (or more than 1 fiber) (21), preferably
carrying a
single lambda (after the lambdas have been separated each to a different optic
fiber),
enters the optical detector for the marked target addresses (22). Preferably
this is
done by optically duplicating the bit stream from the fiber into two or more
branches, so that reading the signals does not disrupt the optical bit stream.
The
detection is preferably done with a very fast and sensitive photo-diode or
photo
transistor, which detects the optically obtrusive mark and then extracts only
the
relevant few bits that follow it. The detector (22) preferably translates the
target
address bits to electronic bits for processing by electronic computer or
computers
(26), with single or multiple processors, but this can also be done for
example with a
photonic computer (such computers might become available within the next few
years), and in that case the translation to electronic bits is not needed. The
extracted
target addresses (24) are transferred to the computer or computers (26) for
analyzing with the database and making the packet switching decisions, while
the
light bits are preferably passed through a delay circuit (23). This can be
done, for
example, by using a spiral of up to a few kilometers of optic fiber,
preferably rolled
around an element of the router. So, for example, since the speed of light is
approx.
300,000 km per second, the time the light spends in a router with a length of
1 meter
is approx. 3.33 nanoseconds, and by forcing the light to go for example
through an
optic fiber spiral of 3 kilometers, the time for making packet switching
decisions
will be increased from 3.33 nanoseconds to 10 microseconds. By using for
example
a bundle of 10 or 100 optic fibers within the same jacket of the delay circuit
and
forcing the light to go through all of them serially, this factor can be
increased 10 or
100 times. However, it is preferable to use for the delay spiral optical
fibers without


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
16
the jacket or with a very thin jacket (such as very thin plastic coating), and
preferably only cover the entire spiral or larger parts of it with a
protective jacket.
Another possible solution is for example to use a solid stable box of mirrors
in
which the light will travel at certain angles so as to create a very long path
until
coming out again. But the previous solution is much easier and safer to
implement.
The faster the processing speed that is established, the smaller the delay
needed.
Preferably, the router is able to choose among a number of delays, preferably
by
being able to choose one of a number of entry points into the delay circuit.
So, for
example, if the computing power has been significantly increased, or the
computational requirements have been decreased by using some pre-processing of
the target addresses and general destination labels, the same router can
easily start
supporting smaller delay times. Preferably, the fibers in the spirals are
protected
from possible cross-talk for example by coating them in a thin layer of dark
opaque
color. If the spiral is very long, for example a few dozens of kilometers or
more,
preferably it might include also amplification for example by Erbium or Raman
amplifiers, in order to correct for the attenuation of the signals. Other
possible
variations are to use for example some type of optical memory for temporary
storing
of packets data, such as for example holographic memory, or for example the
newly
discovered methods for considerably slowing light for example in chilled
Sodium
gas, or stopping it for example in Rubidium gas with the help of additional
laser
beam or beams, and then releasing the light again at will. Various
combinations of
these or similar solutions could also be used. More than one detector for the
optical
marks may be used for increasing speed or reliability. The packet routing
decisions
(28) are then transferred into a fast optical router (29) while the light bits
are entered
into the optical router (29) through optic fiber (27). The fast optical router
(29)
preferably uses fast optical switches such as for example those developed by
Trellis-
Photonics or Lynx, for routing the light bits into the requested output fibers
(30)
without ever converting them into electricity and back. If an optical switch
like the
one by Trellis-Photonics is used, then preferably it is a variation of that
technology
that does not depend on wavelength but simply activates one of a set of
holograms
on command, to transfer the incoming bit stream to the desired destination
outlet.
Another variation is that the command to this switch takes into account the
lambda
of the bit stream being processed. Another variation could be to shift the
wavelength
by optical means to whatever is more convenient, which might be needed in
configurations where more than one input fibers have to compete for the same
output fibers and there are collisions between outgoing lambdas, as explained
later
below. Preferably, the packet routing instructions (28) can tell the router
(29) where
each packet begins and ends for example by specifying the exact time frame for
each packet. Preferably, at the optical router (29) an additional target IP
address
mark detector (20) is positioned in order to find again the same marks for
ensuring
correct synchronization between the packet switching instructions and light
bits.
Another problem is that since the fast optical routers (29), such as those by
Trellis-
Photonics or by Lynx, currently require at least a few nanoseconds for
response
time, they will not be able to cut the packets at the exact bit positions on
the
boundary between each two packets, if the bit rate is too high. This does not


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
17
necessarily mean that the entire response delay is translated into a "cutting"
error,
since part of the delay can perhaps be compensated for by shifting the "cut"
command a little earlier in time, taking into account the delay in response.
The
easiest way to solve this is to use solution number 4 or 5 and put the
noticeable
consecutive period of light (in solution 5) or no light (in solution 4) at the
beginning
of the packet and make this period long enough to compensate for any errors
caused
by the response time of the router. So for example, if the "cutting knife" is
500
times cruder then the point it has to cut, then we preferably make the
consecutive
period at the length of at least a 1000 bits, in order to take into account
this margin
of error. However, this only ensures the integrity of the packet itself,
whereas the
long mark can be partially truncated in the process. So it is possible to use
this
solution only if appropriate measures are taken to lengthen the mark again at
each
"cut point". This can be done for example if the routing switch itself in the
router
(29) is automatically programmed to add a similar long mark on the point that
it cuts
before letting the bit stream pass. (For example, upon receiving the "cut
command",
the router can route the packet bit stream into a very short delay circuit,
insert into
the output channel a stream of constant light for the mark, and route the
packet bit
stream into the output chanel). This means, however, that the exact length of
the
marks can change as they pass various routers on the way, so the mark
detectors
(22) need to know this and look first for the end of the mark before starting
to
extract data. Also, during the unstable period of the response time, the added
mark
might not be stitched properly, so there might be some "garbage" before and
after
the added mark, and the mark detector needs to take this also into account.
Also, it
might be possible to avoid or at least minimize these "bad stitches" by using
overlap
with the constant light during the unstable period. However, this example has
assumed that the long mark is a consecutive period of light. On the other
hand, if the
long mark is a consecutive period of darkness, no additional beam of light is
needed,
and the stitch can be much cleaner. In the case of using darkness, there is an
additional problem that periods of silence (no transmission) may look like the
darkness mark, but this is very easy to. solve, since the mark detector
regards the
packet anyway as beginning only after the darkness ends. However, this might
not
be enough, since the address processing protocol might require also adding or
changing data, such as for example adding a MAC header to the packet in the
data
link layer (layer 2) or changing the MAC header. In order to enable this, the
newly
inserted mark preferably also carries information, by using for example fatter
bits.
This way, any data that needs to be added or changed at the router (29) can be
included in this mark. (This can be done also for other layers, if needed).
Another
possible solution is to duplicate the light by optical means, preferably
before
entering the fast optical router (29), so that we have at least 2 copies of
the light bit
stream. Assuming for example that the margin of "cutting" error is about 500
bits,
and we have to make a cut between packets a and b, so preferably we send for
example 1000 additional bits to the route where packet a is going after the
logical
end of packet a, taking these bits from the first copy of the bit stream, and
we use
the 2nd copy of the bit stream to start sending bits to the route where packet
b is
going, for example 1000 bits before the logical start of packet b. In other
words, in
this solution one of the bit stream copies is used for routing the even
packets (and is


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
18
regarding the odd packets as slack area) and another copy of the bit stream is
used
for routing all the odd packets (and is regarding the even packets as slack
area). In
this solution the surplus bits from the slack area are later discarded or
ignored. This
solution for this example assumes that the size of each packet is at least
1000 bits
long, so packets shorter than this are preferably padded in advance with
appropriate
trailing bits. If the router also needs to add or change some data, then the
previously
described mechanism for adding or changing data or a similar mechanism has to
be
used also in this solution. (Another possible variation of this solution is to
use
alternating polarizations for the odd and even packets in each lambda, as
described
at the end of solution no. 6 in the summary of the invention. In this case,
using
appropriate polarization filters can automatically get rid of the surplus bits
from the
slack areas. Another possible variation of this solution is to use alternating
wavelengths for the odd and even packets in each lambda, as described at the
end of
solution no. 2 in the summary. In this case, using appropriate wavelength
filters can
automatically get rid of the surplus bits from the slack areas. However, these
two
variations are problematic and less desirable). Another problem is that all of
these
solutions are adding extra data at the cutting points (either in the form of
the long
consecutive mark or in the form of normal bits). Of course the error-
correction layer
(typically layer 2) should be aware of this so that it will not be confused by
the extra
data. Anyway, the extra data causes no confusion in the solution of using long
marks, because the packet always begins after the mark ends. In the other
solution,
the extra bits also should not cause confusion because we have a mark for the
beginning of each packet, and the packet header contains information about its
size,
so the "garbage" data can be easily ignored. Preferably, the garbage data is
eventually discarded before exiting the system of routers that comply with the
present invention. However, since extra bits are added at every router in this
system
between each two packets, the amount of "garbage data" can accumulate. This is
not
such a big problem, since assuming for example even up to 100 routers between
the
origin to the target and a garbage size of up to 1000 bits as in our example
(the exact
amount depends on the ratio between the response time of the router (29) and
the
speed of the bit stream, and changes of course each time according to the
actual
"cutting error"), each packet can accumulate at most 100,000 bits of garbage
on the
way, which are about 12.5 Kilobytes. Since packet size will typically increase
as the
network gets faster and faster, this is not a big problem. The problem is even
smaller, since usually much less than 100 routers are needed between any two
points
on the Internet, typically no more than 20 routers. (By the way, if we assume
an
average of 20 of our routers on the way between any two points on the
Internet, each
for example with a 3000 meters delay circuit, then the total delay caused by
these
routers is about the time it takes the light to travel 300,000 meters=300
kilometers,
in other words just 0.2 milliseconds delay for the entire journey). So one
solution is
to do nothing about controlling the amount of accumulated "garbage". However,
it
is also possible to make sure that the garbage does not increase significantly
beyond
the needed safety margin: In the long mark solution, preferably the mark
detector
(22) simply reports to the decision making computer (26) also the size of the
mark,
and then if the size of the mark is already large enough (for example, twice
or more
of the normal size), preferably the "cutting" router (29) can be told in this
case to


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
19
add a smaller mark or no mark at all. (Another possible variation is the
reverse of
this: Starting with a mark long enough for being cut for example by 20
routers, and
increasing the mark only if it becomes too short). However, if the mark is
used also
to write new information at the router, or to change information, such as the
MAC
header, preferably by using for example fat bits in the mark, then the mark
has to be
written even if the prevous mark is already long enough, so the length control
is
preferably done in this case by giving the "cut" command earlier, so the new
mark
will overwrite part of the older mark. However, to avoid confusion between
info
written in the new mark and info written in the old mark, the procedure
preferably
makes sure that the new mark will always overwrite the old mark in a way the
bits
of the new mark will always start before the bits of the old mark. In the
solution that
duplicates the bit stream and uses the adjacent packets as slack area, so that
the
packets become separated by "garbage bits", preferably the mark detector (22)
extracts from the header also the bytes representing the packet size and
preferably
also reports the distance till the next packet, and so the decision making
computer
(26) can decide if the garbage is already too long, and then preferably tell
the router
(29) to add less or no slack bits in this case by making the cut at the end of
the
packet earlier. This will usually not significantly delay the computer (26)
since
typically the detector (22) can tell the computer (26) what is the distance to
the next
packet long before the computer (26) has made its routing decision. Of course,
the
method of using long marks can be combined with the method of duplicating the
bit
stream. Also, preferably the router (29) is also able to drop packets (when
needed
for example because of network congestion) or delete any other data, which is
very
easy for example by simply routing discarded data to a dump line. It is
possible to
mark also the end of packets, but it is much more efficient to use the packet
size
from the header for finding the correct size.
Of course, various integrations or separations of various elements of this
invention
can be made, so that for example using stronger parallel computers might
enable the
decision making computer (26) for example to give services to more than one
lambda at the same time. In the other direction, assuming for example an
average
queue of 40 packets traveling in the delay circuit (23) at the same time,
either 1
computer (with single or multiple processors) makes the packet switching
decisions
for these packets, or more than one computer is used there so that the load
can be
divided. The length of the delay circuit (23) and the size of the packets
determine of
course the number of packets in the delay circuit at the same time. However,
with
the current state-of the-art rate of about 10 Gigabits per second per lambda,
each bit
is the size of about 30 mm, so a delay circuit of 3000 meters (= 3 million mm)
contains 100,000 bits, which are 12.5 Kilobytes, and a delay circuit of 30 km
contains 125 Kbytes. Therefore, especially as the traffic goes bigger and the
packet
size increases, there will probably be just 1 or a few packets at a time in
the delay
circuit, at least until the bit rate increases considerably. One of the
advantages of the
present invention is that it is very easily scaleable and its speed depends
much more
on the number of packet headers it has to deal with than on the speed of the
bit
stream, so that for example as the Internet grows and traffic carries heavier
data,
such as Video, virtual reality data, etc., preferably much larger packets will
be used


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
compared to the typical packet sizes today. So, for example, if the Internet
becomes
a 100 times faster and the average packet sizes become a 100 times larger, the
routers of the present invention will still be able to handle very efficiently
this much
faster bit rate. Additionally, if the entire packet header or at least the
important parts
of it are also encoded in fat bits (compared to the rest of the data), the
system will be
able to handle the header easily even if the bit stream becomes extremely
fast.
Another possible variation of this is that if the ~ bit-rate of the data
becomes
extremely fast, preferably the error correction layer or layers can also
postpone
checking and dealing with errors to a later point after the router. So, for
example, if
much faster bit rates per lambda are accomplished, for example by using much
shorter wavelengths, the router can handle the fat bits of the headers even if
the bit-
rate of the data itself becomes so fast that the router can't even read it.
This makes
this solution very desirable. Preferably, if fat bits are used both in front
of the header
and in the header, the mark in front of the header uses a different fatness
level, to
avoid confusion with the header. An additional advantage of the present
invention is
that the use of the delay circuit like a production line enables us to handle
even
packets that are bigger than the size of the delay circuit.
On the other hand, if more than one input fibers are sharing the same output
fibers, we need to add some limitations and additional mechanisms for handling
problems when more than one packets with the same wavelength (or group of
wavelengths, if we use more than one lambda as a single channel) need to enter
the
same exit fiber before the other one finished passing. There are a number of
possible
solutions for this: 1. Use at least a few fibers for each destination route
and possibly
also for each source route. This way we have more flexibility in choosing
alternative
output fibers in such cases of collision and more statistical chance of
solving it like
this, and as the Internet grows, more fibers will be used anyway for each
route.
Another possible variation of this is to have also spare output fibers that
can be used
for example in cases of high overload. 2. Convert, preferably by optical means
(such
as for example interferometric cross-phase modulation wavelength converters
that
use semiconductor optical amplifiers), at least one of the colliding bit
streams into
another available lambda within the range of usual lambdas. Another variation
of
this is for example in times of high overload, to use also conversion to some
additional lambdas which are not normally used. This can be done for example
by
using a series of one or more quantum-cascade lasers, which can give high-
efficiency in almost any desired frequency in the near infra-red range (750-
2600
nano) and using the original bit stream as a pump for boosting a signal of a
nearby
frequency, and, if more than one step is needed, then in the next step the
amplified
signal can be used as the new amplification pump. This conversion might be
done
for example by letting the relevant bits streams pass through special flexible
or fixed
converters, or by routing them to special delay lines which contain also the
converters. This solution is of course irrelevant if all of the lambdas are
used as a
single channel (unless for example Raman amplifiers are used instead or in
addition
to Erbium amplifiers, and so a whole range or ranges of alternate lambdas are
available), but might be at least partially possible if only subsets of the
lambdas are
used as single channels. 3. Preferably only in such cases of collision, at
least one of


CA 02428230 2003-05-07
WO 02/39208 PCT/ILO1/01042
21
the colliding bit streams is routed into one or more additional delay circuits
(or, if
optical memory is used, temporarily stored in one of the available optical
memories), hoping that by the time it comes out the collision problem will no
longer
exist. Preferably, if the collision is not solved for example after a certain
amount of
time or a certain number of delays, the problematic packet or packets can be
dropped for example by routing them into a dump line. Preferably, available
free
delay lines (or optical memory) are not limited to specific fibers but can be
used by
any of the fibers on a need basis. Preferably there are a large number of
spare delay
circuits for cases of traffic overload, and preferably a large range of sizes
of them is
available, so that the length of the delay line can be chosen for example
according to
the length of the colliding packets that are currently occupying the needed
output
channel or channels. (For example, spirals of 10-micron fibers with lengths of
thousands of kilometers without jackets can occupy very little space, so
thousands
of them can easily fit together, either in separate or in parallel spirals).
4. Use other
optical separators to prevent bit streams of the same lambda entering the same
output fiber from causing problems for each other, such as for example using
one or
more different polarizations in such cases, preferably by letting the
colliding bit
streams pass though appropriate polarization filters. However, in this case
preferably polarization-retaining fibers are used. Of course, all of these
solutions
preferably require taking into account concurrently the situation in all the
output
fibers. Various combinations of these solutions can also be used.
Fig. 3 is a schematic visual illustration of the temporal marks in a single
lambda
(31 ) in solutions 4 and 5. The short white squares in this exemplary
illustration
represent 0's, the long white squares represent 1's, and the short black lines
represent small intervals of no light. The considerably longer square (32)
represent
either a longer period of consecutive darkness (solution 4) or a longer period
of
consecutive light (solution 5). Preferably the first n bits after the mark are
the bits of
the target IP address (where n represents the length in bits of the IP
address).
Implementing this depends on the way 0's and 1's are marked in optic fibers.
For
example, if 0's are marked by short pulses of light and 1's by longer pulses
and the
pulses are separated by constant short intervals of no light, then there is no
problem
to make the longer marks unique by making them considerably longer then the
ordinary intervals of 0's, 1's, or separators. On the other hand, in solution
4, for
example, if 0's were marked by no light, then groups of 0's longer then a
certain
number would have to be represented as a multiplication factor followed by the
0
sign, so that normal periods of no light would be limited to no longer than a
certain
period. Same goes for solution 5 regarding 1's. However, since optic fibers
are
currently not marking 0's or 1's consecutively without separators, there is no
such
problem.
While the invention has been described with respect to a limited number of
embodiments, it will be appreciated that many variations, modifications,
expansions and other applications of the invention may be made which are
included within the scope of the present invention, as would be obvious to
those
skilled in the art.

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 2001-11-08
(87) PCT Publication Date 2002-05-16
(85) National Entry 2003-05-07
Examination Requested 2006-11-08
Dead Application 2010-05-05

Abandonment History

Abandonment Date Reason Reinstatement Date
2009-05-05 R30(2) - Failure to Respond
2009-11-09 FAILURE TO PAY APPLICATION MAINTENANCE FEE

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Application Fee $150.00 2003-05-07
Maintenance Fee - Application - New Act 2 2003-11-10 $50.00 2003-10-21
Maintenance Fee - Application - New Act 3 2004-11-08 $50.00 2004-11-08
Maintenance Fee - Application - New Act 4 2005-11-08 $50.00 2005-11-08
Request for Examination $400.00 2006-11-08
Maintenance Fee - Application - New Act 5 2006-11-08 $100.00 2006-11-08
Maintenance Fee - Application - New Act 6 2007-11-08 $100.00 2007-11-08
Maintenance Fee - Application - New Act 7 2008-11-10 $100.00 2008-11-10
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
MAYER, YARON
BAUR, AL J. C.
Past Owners on Record
None
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) 
Abstract 2003-05-07 2 64
Claims 2003-05-07 12 775
Drawings 2003-05-07 2 23
Description 2003-05-07 21 1,928
Representative Drawing 2003-06-16 1 4
Cover Page 2003-06-17 2 48
Correspondence 2007-11-08 1 40
PCT 2003-05-07 3 96
Assignment 2003-05-07 3 97
Correspondence 2003-06-12 1 13
PCT 2003-05-08 6 284
Correspondence 2003-08-11 1 72
Fees 2003-10-21 1 26
Correspondence 2003-10-21 1 26
Correspondence 2004-08-10 1 54
Correspondence 2007-11-21 1 40
Correspondence 2008-08-11 1 53
Fees 2004-11-08 1 24
Correspondence 2005-08-09 1 54
Fees 2005-11-08 1 24
Correspondence 2006-08-09 1 53
Prosecution-Amendment 2006-11-08 1 31
Fees 2006-11-08 1 31
Correspondence 2006-11-20 1 72
Correspondence 2006-07-11 1 23
Correspondence 2007-08-09 1 53
Fees 2007-11-08 2 29
Correspondence 2008-02-18 1 39
Prosecution-Amendment 2008-11-05 5 206
Fees 2008-11-10 3 89
Correspondence 2008-11-10 3 90
Correspondence 2009-07-28 1 82
Correspondence 2009-08-11 1 54
Correspondence 2010-01-04 1 91