CA2123441C - Method and apparatus for an automatic decomposition of a network topology into a backbone and subareas - Google Patents

Method and apparatus for an automatic decomposition of a network topology into a backbone and subareas

Info

Publication number
CA2123441C
CA2123441C CA002123441A CA2123441A CA2123441C CA 2123441 C CA2123441 C CA 2123441C CA 002123441 A CA002123441 A CA 002123441A CA 2123441 A CA2123441 A CA 2123441A CA 2123441 C CA2123441 C CA 2123441C
Authority
CA
Canada
Prior art keywords
nodes
links
node
backbone
subarea
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CA002123441A
Other languages
French (fr)
Other versions
CA2123441A1 (en
Inventor
Claude Galand
Paolo Scotton
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CA2123441A1 publication Critical patent/CA2123441A1/en
Application granted granted Critical
Publication of CA2123441C publication Critical patent/CA2123441C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/46Cluster building
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them

Abstract

The object of the invention is to perform an automatic decomposition of a packet switching network in backbone nodes and subareas nodes to speed up the routing path search without degrading the optimization criterion of the routing algorithm and without generating additional control messages on the network.
Currently, routing algorithms compute all the available paths in the network, from the source node to the destination node before to select an optimal route.
However, networks are rarely fully meshed. They are usually built around a hierarchical structure: a set of nodes, interconnected by high throughput lines,are used to build a backbone with a high degree of meshing and then, local nodes are grouped in geographical subareas themselves attached to the backbone. Routing algorithms can take advantage of this particular network topology to drastically reduce the complexity of paths computation. For a given connection, only a limited number of nodes are defined as usable and are taken in account by the algorithm in its path calculation.

Description

~ ?.j. ' . ~; .

"
2123~4~ ' ,~
ME'I'I-IOD AND Al'l'~R/~'l'US l'OR AN AU'I'OMA'I'IC
I,COI\lI'O~il'l'l()N (31; /~ Nl;,'l'~VOl~K '1'(~1'01,0~;-' IN'I'(~
A BACKBONE AND SUBf~RE;AS.
.
'- 'reclmicl~l f iekl The present invention relates to a high speed transmission system in a large paeket switehing network ancl, more partieularly, to an apparatus and method 9 for speeding up the path seleetion between a souree and a destillLItion nocle by means of an automatie deeomposition of the network topology into a baekbone and a plurality of subareas and a pre-seleetion of usable links.

~QCk,~ ~ oJ~ (I) t , ~
It has beeome inereasingly useful to intereonneet a plurality of (lata proceL;sing elements by means of a packet s-vitehillg ne~volk ill ~VhiCIl (I.lt.l is tl-allslllittC(I
as data as.semblages ealled "paekets'. Sucll nctwolk~<i hlclu(lc a plulality Or . intereonneete(l switching no(les ~vhicll, in tUIIl, .Ire comlec~e(l lo en(l no(lc.~i supporting data processillg e(luil~ments. Sucll packet net-vol k.s ca~ ecome - quite large with an e~tensive geograpllieal distlibution. In such a si~lla~ion, the seleetion of an efficient path between t~vo en(l no(les whicll ~iL;h t(1 eommuni-~i cate with each other becomes ol' palamoullt imr)or~ance. I~il'l'erent mctho(ls alC
summarize(l by H. Nu.ssbaun1er in ~c~cinfo~ ti~ e 11 (/~llg~CS g2 to 117) .- Presses Poly~eh/~ es Rom~n(les Ig(~7.
.~, .~,:,.j.
~ P~t11 ~electio~t ,~.,, The general problem which m-lst be solved at ~he ne~wolk Ievel is ~o find a path bet~een a source and a destination node. When the network is using datagrams, the path selection must be done indivi(lually for each packet. For virtual eireuits, the path decision is done onee only at the time of the eireuit:.
establishmeIlt. In both cascs, the eh()iee of a rou~ g algol-ithm is not easy be-, P; .
'. 1 1~ 9 93 () 1 r i ,,, ~' .

'"'' ' 212'~4~1 ;
cause it nlll.s~ s..ltisl'y a large numl~er ol ol~en conl'lic~illg re~lllirelllent.s. Ihi.'i algoritllm mu.sl be simple to implement to not eomplieate the no(les realization, it must ensure a correct progres.s of lhe packet.s wl~ ever lhc dislllrh.lnce onthe network. 1 Ile algorithm must be able to provi(le satisfying results despi~eof the tralfie variations and the network topology. It must al.so ensure the e(l-uity between the different end users and provi(le an equal distribution ol the -~ rights to accc.ss the network. At la.st, the routing algorithm must allow, when possible, to exploit the network in an optimal way, aceording to a criterion ~vhieh ean vary with the utilization type. In most of the cases, the network is realized in a way to minimize the pael;et transit time and to transfer the max-:
imum number of paekets. The principal objectives are respectively the re-duetion of the transit time and the increase of tlle throughput. In other cases,'- the objective is to deerease the eommunieation eost, or to develop a reliable ... network able to operate correctly (without too sensible performance degrada-tion) either in case of eatastrophic line, node failure or peaks of traffic.
Because of the valiety of the constraint.s, thele are a lal-ge nlllllhel or(lifl'eren loutill~ typcs. Sollle COII'C.S~)OIl(l to (Ict~llllilli~ti~ ol .l~l~lptive poli~i~.s .I~:~ol(li to their capacity of integrating the traflie varialioll.s an(l the network topology.
~ Routing algorithms can be centralize(l if the paths are detelmine(l from a rar-ticular node. Olher~ are distributed helween all no(les: this i.s lavol.ll~le in .
reliability point of view but the algor;thm is more complieate~l and the patil optimization is more difficult to implement. Some Algorilllms .IIC dilfiClllt to, classify: they are u.sing ~special techni(lues calle(l l~looding Rollting 0r l~ando Routing.
.

Flooding Routillg :
.- The Flooding Routing is based on a very .shnplc plillciplc consisting fol- eacll - no(le to retransmit packets on all 0Utpllt links oi the no(le, e~cept, but the hlpllt Iink. A node connected ts) K other nodes retransmit K-l copies of the paeket ~vhieh hàs been just reeeived. This method allows the delivery to the destina-tion node of at least one eopy of the paeket with one eondition: it must exist at Ieast one path between the souree lo lhe de.s~illa~ion node. This routillg is 9 ~t ~
'", '''' ;.
~' ~ .
'' ' :

en.suled even wllell the net~volk tor)ology is challgillg l'or exanlr)le al'ter a ca~-astropllic failule or some component.s in the netwolk. 'I'he F loo~ling Routing allow~s a very good robus~ness in tlle ne~work exploi~a~ion. Ful~herm()re, a.s all po.ssibles links l~e~weell ~he source and the des~ination no(le ale tried in an exhaustive way, the method ensures that at Iea.st one copy of the packet will '" reach the reeipient through the shorter path with the minimum clelay if the . ..
network is not overloaded. This technique is simple to implement since neither routing tables to route the messages, nor knowledge of the geographieal posi-tion of the destination node in the network are required. The recipient must only know that the paeket is addressed to it.
The priee to pay for these qualities of robustness, simplieity and rapidity is abad utilization of the network resourees and a tendeney to the eongestion.
Usually, it is advantageous to plaee in the paeket header a fiek'i indicating the maximum node number ~hat a packet is autllorize(i to pa.s.s. ~i'his field is dec-remented each time the packet go through a node, and packets v~ith an empty fieki are discarde(l.

:;, .
'' Rall(lom or Stocl-.lslic l~outi~lg ~, This technique, like the Flooding Routing, does not deman(l to the nodes to have the complete knowle(lge of the net~v(!rk .structure an(l of the trafl'ic to take a routing deci.sion at their own Ievel. }-lowevel-, here, to limit the gener.ltion of a too important ghost traff'ic, the no(les avoi(i to send ~systelnatically over all output link~s copies of the p.lckets they receive. 'I'he R;ln(lolll iROlltillg COllsi'it.'i in emitting OnC or more countelr)ai-Ls ol' the receive(l p.lcket on OUt.p~lt links selected at ran(lom. 'I'l-is meth()(l is also called Selec~ive Floodillg. -I'his r~olicy Ieads to a very simple routing at the no(le Ievel all(l limi~s lhe s.ltul.ltioll ol' the net-vork due to the packet duplication. In ret~llll, the avelage routillg delay i!;
Ionger than this resulting from deterministic techniques. Packets are taking sinuous routes instead of taking the most direct path toward t'he destination node.
. .

, I R 9 93 0 1 3 "' '''' , . .
''~
~ .
.

: :' 2 12 3 ~ 4 1 ,, I.)~l~rmillislic Ko~ g ' ri,re(l Rol~ting ., The Fixed Routing defines paths that must take the difrerent packets accord-:
ing to the general network characteristics such as thc network topology and the mean traffic expected on the communication lines. The routing rules are es-tablished once and aims for optimizing the performance criterion privileged by the user. In most of the cases, the average packet transmission time through the network must be minimized. The method consists in buil(iing a routing ta-ble at the level of each nocle. Its consultation allows the node to determine onwhich output link the packet it has just received must be transferred. The Fixed Routing is very simple in its principles. The only processing done in the nodes consists in queues management and tables reading and the optimization algorithm is initiated only once at the network design Icvcl. The Fixed Routing aims for a long term and a global optimization of the network, but in com-parison with the random routing, this techniclue allows to consi(lerably ~;peed up the p acket transmis~ioll thlo-lgll the network.
.

~l~laptive Routi~tg ~, Contrary to the Fixed Routing, the p urpose Of the Ad.lr)tive Rl)uting is to satisf'y at any time tlle optimizalion clitel-ion. Ihe t.lbles ate r)ermallelltly up-dated according to, for example, the hlstalltalleous ~statc of the trarl'ic on the lillcs.

~ Centralized Routing ., When the characteristics of the neiwork Illlctuatc, it is possible to adapt the routing by assigning to one node the responsibility to update period-''' ically the routing tables according to the traffic variations and the -~ topology. This method, simple in its principles, is callcd Centraiized Rout-ing. Its principal disadvantage is to generate an important auxiliary traffic and to subordinate the good fuilctionillg of the network to only one node.
. ~
3 () 1 3 ~ "
. . -.

, .
:~.

.~ , . ..... .

:~ ~ 2~234~1 :.: s The dil'l'elent no(les m~lst sen(J ~o tl1e rolltillg CClltCI the ~ale of tlle net-work as ~hey perceive it (operali()nal ad j~lcent no(les, tlaf'ric ...), and therouting center must, in its turn, (lispatch to the n()~les their routing tables.The auxiliary traffie is concentrated aroun(l the routing center an(J this has ; for result to saturate this part of the network. Furthermore, the Central-i~ed Routing can generate some problems at the time the tables are re-freshed because said tables cannot be received at the same time by all the :: nodes. A solution is to decentralize the tables establishment at the Ievel of each node.

' o Local Routing -~,.
The local and distributed routing methods are both based on the estab-lishment by each nocle of its own routing table aceording to information locally collected. With the local routing teehnique, each node buikls its ta-: ~ ble without exch;lngillg informa~ion with thc neighbolillg llOdCS. In it~ most simple form, the method consists in placing the packet just received in the , .
. . shorter output queue and in transmit~ing it as rapidly as possihle. I he lo-;i~ cal algorithm tends in its principle to circlll.l~e the packets very quickly in .' the ne~work. However, as the routes are selecte(l hl sollle way or olhcr the ~' mean paths Iength is fal to be mh~imcll.
~';
~' ~ Distributed Routing The Distributed Rou~ing is a local method in which neighboring no(les are C~cll;ll1gillg 111C~ C~i COllCCl'llill~ 111(~ II'.II'I'iL~ (111~1 ~llC 11(~ '01'1~; (.'OIl(li~iOIl ~O
update their routing and delay tables.
:~' ~ llierarchical Routing ,. ..
:~' With the non Stochatic Routing methods, each node requires a table with '~ as many rows as nodes in the network and a number of columns equal to the number of output links. Furthermore, when the routing is a~aptive, ~, nodes must exchange periodically messages to update their routing tables.

; 1 1~ 9 93 () 1 3 '~.,, ' .
' :

:

' fi 21234~1 TllC t-lblC~; .'iiZC all(l tl1C illlp()rtarlCC Or ItlC C()lltl()l IllC.';.'i-lgC~'; are increa ing rapklly with the number of no(les all(l beeome unacceptable when ~he ne~-. .
work cont.lin~s more thLIn ten no(les. To solve lllis problem, the network is dividcd hl a hicl.llclly ol' sllb ncL~,v()lks as illusll~llc(l hl l iglllC (). In p.ll'-ticular, optimal clustering struclllres (003) are ~Ietermined so as to mini-mize the length of the routing tables require(l. Sai~l tables are taking into account only the nodes in a sub network (003) and a paeket addressed to a node in another sub network will necessarily go through the access node ~005) of this remote sub network. I'ackets transit through some mandatory nodes (005) and the price to pay for Lhis simplification is that smaller routing tables give less precise routing information which then results in Ionger path lengths for the message traffie. Hierarchical Routing proce-dures are particularly effective for large packet switched networks (001).
With smaller routing tables, they require less storage and processing in the nocies (002) as well as Iess communications overhead in the lines (004).

The pro~lem of the optimization of the hierarcllical levels has been stu(lied by L. Kleinlock nnd F. Kamo~m ~ icra)cfiicnl Rolltingfor L(lr~,~c IVct~vorks, ~ompllfer N~twofks, ~ol. 1, pp. 155-174, Jn~lu~lr y 1977.
The main iclea for reducing the routing tal~le Iengtll i.s to keep, al any node, eomplete routing information ab()ut no(les which are close ~o il an-l Iess information about nodes loeated furtller away from il. l-his can be re-alized by providing one entry per destination for the closcl- no(lcs an(l onc entry per set of clestinations for the remote nocies.
The reduction of routing table Iength is achieved throllgll a hierarchical partitioning of the network. Basically, an m-level hicl.llcllic;ll clustclillg of a set of nodes (Figure 0) consists in grouping the no(le~s (0()2) hlto a 1st Ievel clusters (0()3), which in turn, are grouped into 2nd Icvcl clustcr ctc This oper.ltion continllcs hl a bottolll ul- I'asllioll l~he mlll Ic\~cl cluslcl is the higllcsl Icvcl cluslcl (31d Icvcl clu.slcl-) ian(l as sllcll it hlclll(lcs all tllc nodes of the network (001).
Unfortunately, the gains in table length are accompanied with an increase of the message path length in the network. This result is a degradation of : ;~
-' the network performance (delay, throllghput) clue to the e~cess internal , ., , :
~, ~ ~R 9 93 013 . . .
, . ' ' ' 21~3441 trall'ic cause(l by longer patll Iengtll. I-lo~vevel, in very lalge netwolks, an~~ enormous table reduetion may be acllicvcd willl no.signirlcan~ incrc.l.sc in network path Iength.
.

Hig~a Pe~or~nance l~et1volks ~: ' The data transmission is now evolving with a speeific foeus on applications and by integrating a fundamental shift in the eustomer traf~lc profile. Driven by the growth of workstations, the local area networks (LAN) interconnection, the distributed proeessing between workstations and super computers, the new apl~lieations and the integration of various and often conflic~ing structures -hierarchical versus peer to peer, wide (WAN) versus local (LAN) area net-works, voice versus data - the data profile has become higher in banclwidtll, bursting, non deterministic and requires more connectivity. Based on the above, it is clear that there is strong requirement for .sur)polting distribute(l computing applications across high speed networks that can carry LAN com-munications, voiee, video, and traffie among channel attaehed hosts, bu.siness, engineering workstations, terminals, and .small ~o intermedi.lt.e l'ilc servers.
.~.
This vision of a high spee-l m~llLil-lotocol netwolk is the dliver ror the emer-gence of fast packet switching netwolks arcllitectllles in which data, voice, and video inform~tion is digitLIlly cnco(lc(l, chol-rlc(l in~o small paekets and trans-mitted througll a eommon set of no(les all(l links.
.

. .
Tllrougllput The key requilemellt ol' these new alellitectlJIes is to re(lllce the end-to-ell(l ' delay in order to satisfy real time delivery eonstraints and t.o achieve the nec-essary high nodal throughput for the transport of voice and vi(leo. Increases in link speeds have not been matched by proportionate increases in the proe-....
essing speeds of eommunieation nodes and the fundamental ehallenge for high ~; speed networks is to minimize the paeket proeessing time within eaeh node.

1 l~ 9 9~ ()13 , ~,' '.,~
.....
.

-" ~ 2123~1 ~s e.Yample, I'or meeting a typic.ll 1()() IllS (IClay lO dclivcr ,1 voicc packc~ hc-:j tWCCtl two end users:
.~
A total Or 36 ms might be needed for the packetization and play-out func tions at the end points.
~: .
About 20 ms is the unalterable propagation delay needed, say, to cross the United States.

o There remains 44 ms for all the intra-node processing time as the packet moves through the network. In a 5 nodes network, each node would have about 8 ms for all processing time including any queueing time. In a 10 nodes network, each node would have about 4 ms.

Another way of looking the same constraint is illustrated in Figure 1: taking a node with an effective processing rate of I MIPS (Millions of Instructions Per Second), it is possible to fill a 9.6 kbps line with 1000 byte packets even if a network node must execute ~33 ()00 instructions per packet r)rocesse(i. For a 64 kbps line the node can afford 125 000 instl-uction.s per packel. In otder to fill an OC24 limk, however, our I MIPS node coukl only e,Yecute 7 instructions per packet. In the latter case even an effective rclte .,r 10-3() MII~S woukl allow only 70-200 instructions pCI packet.
In order to minimize the proces.sing time and to takc full advantage of the highspeedjlow error rate techrlologies, most of the transpolt and control functions providcd by the new high ban(lwi(lth network architectures are perfotme(l on an end-to-end basis. The flow control alld particularly tl-e path selection are managed by the access pOinlS of llle network wllich rc(luces l~oth the a~v.lreness and the function of the internle(liaLe no(les~

Routing ~lodes The routing within the network presents two aspects:
, .
.
~ 1. Determining what the route for a given connection shall be, .-~ ~ 2. Actually switching the packet within a s~vitching node.
! ' ~ .' 1 1~ 9 93 013 :
:~, ::

;.' . , ~ .
.. .... ~ .. . . . ..

:
(32~23~41 ':
Tllere are many metho(l~s of determillillg LI rOUtC ll1rO~Igh .1 net~vol-k. For very ,;
;.~' high throughput, the critical item is that tlle switclling elements musl be able to decide where to route an incoming packet in a very short portion of time.
s described in the clocument Ni~ Spccll N~t~orki~ r~cJl~lolo~y~ ,~ln ~ntro-ctory S~lrvey (pages 8~ to g6) - GC24-3(Y/6-00 ITSC Raleigh Marcll 1992, the routing mocles the most widely used are the Source Routing and the l_abel ' Swapping.

.. , ~
~ Source Routing ....
., The Source Routing is a particular implementation of the Distributed Routing for connectionless networks. The source node (or acccss node) is responsible for calculating the route the packet must take through the net-work. A routing field is appended to every packet sent and that field is used by the intermediate nodes to direct the packet towards its destination.
In this techniclue, the sending no(lc m-lst know the ne~wolk to~ology and it must be able to find the optimal route. But once the route is determined, intermediate nodes do not need to refel- to any tables or parame~ers to make the routillg decisioll. Tlle ne~t stage of ~hc rou~c is rigll~ ~hclc in ~hcpacket header. A drawback of this method is l.hat the routing fiekl in the packet header takes some ~storage and is an overhecl(l. But this is quhe small and the benefits of being able to make a fast routing dccisioll out-weigh the small increase in bandwid~h overllead. Since all routillg inl'or-mation is contained in each packet a set up is not requiled along the path to provicle an end to end communiccltion Thus, data applicLItions wllich benefit from a datagram SClViCC CLII1 be efrectively suppolted by this tech-nique. However, the dLItaglLlm tral'fic is charLIcterized by the l'act that CaCI1 datagram can be viewe(l as a conllection and requires the computation of a path. Each packet is route(l throu~h the network as a self containe(l unit and is independent of all other packets. The key point for the source node is to determine for eac'h datagram the optimal route in the shorter lapse of . . .
~'' time.

.

~ .;
' I R 9 93 013 :,...
~ ~
'.' ,:
:' 2~23~
~, I() Lal~el Swappillg, :
.
Thc Label Swapping is a particular implementation of the Distributccl Routing for eonncction oricntcd nctworks. These networks Lypically multi-plex many connections (or sessions) on a link using some form of logical "channel". Each packet sent on thc link has a llca~cr which includes an arbitrary number identifying which logical conneetion that this paeket be-longs to. For examplc, eaeh paeket ean eontain in its routing ~leld a labcl that will be used by thc intermediatc nodes to idcntify thc transmission link the paeket should be routed ovcr. When a paeket arrivcs at a nodc, the Iabel is extraetcd from its header, and used to indcx a routing tablc that :;
provides a new labcl along with a link addrcss. The ncw label is ovcr writ-ten on the old label, and the packet is forwarded using the link addrcss.
The information in the routing table is updated at the connection set up time. Each node on a path sclects a label for each direction of thc con-ncction, an(l scnds it to thc ncighboring no(3e.
The eall sct up and thc rcsource rescrvatioll prOcess complises tlle follow-ing steps:

..
~ A comleclion requcst i<, speeil'ied hy the USCI Vi.l a set ol' p~ lllCtClS
'~ inclu(ling origin and destin.ltion net-vork a(ldle~ss an(l (iat~l l'low Chal-aetcristics, ~, Tlle patll determi~ tioll is rcalized by the soulce no(le l'rom i~s local routing Topology Database ...
,:
- ~, 'I hc route ICSCl'V.lliOIl i'i SCllt ou~ in .I ~I-ccial Illes~ c .llon~ ~llc .~p~cii'ic(l nodcs. Saicl messagc, wllicll is u.su.llly routc(l accol(lillg to the plCVi-ously describe(l Source Routing techni(lue, signal.s ~hc no(lcs ~o .set up their conncction tables an(l to reserve their resoulces to provi(le the ~; Icvel of servicc require(J by the traffic typc (for example, a ban(lwi(ltl ;; reservation on each of the links of the path).
., .
Tile tables up(late reflects the changes in the availability of the network resources. The information is ~sent to every node in the net-vork.
.,.,~,.

. . .
~
~i ., .
. . ~

, .
~, , ~:?

J
~23~
, ,. ~

The l al~cl Swapping techni~ e rc~luilcs that thc c()nncction tablc.s bc sct up and mahltclincd dynamically. That mcar1s that whcn a new connection is eslclblishe(J Or an okJ OnC i.s tcrminatcd thc klblcs arc updcltcd (thc (J.I-tabasc of nctwork topology can of coursc bc maintainc(l quite separatcly).
This is possible if thc conncction sct up is rclativcly infrc4ucnt and is not too timc critical. Thi~s rc.stricti(1n makc.s datagram Lransport cluitc incffi-cicnt. However, conncctions that requirc very short packets, like real-tirne voice connections, can be effcctivcly supported by this technique, because of the low packet overhead. Once the connection is established, there is no need to place a destination address in thc header every time a packet is ,~
sent. All is needed is a fielcl to specify which connection is to be used for this packet.
: .

.:
,~',' Path Selection Criterion ,, Onc of thc major criterion fi)r ~sclecting paths bctwccn no(lcs in packet net-works is the minimum hop count and minimum path Iength. The hnp count is thc numbcr of link~ u.~;cd to con~truct thc patll hctwccll thc two cn(l no(lcs.
The path Iength is a function of thc ovcrall transmi~sion dclay impo.sc(l by thcpath between the two end nodes. In most high speed networks, the delay (path length) is not a major consideration since the worst-case delay through such nctworks is ncarly always acccptablc. Thc hop count7 howcvcr, i.s a dircct measurc of the amount of rcsource.s re~luircd to implcmcnt a givcn patll and ;
~ hence is of cnnsidelable h~ olt.lncc in .sclccting p.~ . It is to hc no~c(l tllat a . . .
selected patll need not bc a minhllulll hor) coul1t patll sincc congcstil)n on thc nctwork links may forcc thc choicc of a largcr hop count pa~il. I lowcvcr, such Iongcr altcrnatc paths cannot bc allowc(l to grow without limit .sincc inor(linate amounts of nctwork resvurccs might be committe(l to one path, re.sulting in further congestion for othel paths and forcing yet longer hop count paths to be selected for yet other connections. The long term network throughput could thereby be adversely affected. The problem, then, is to select a path between an origin node and a dcstination node whicll has a minimum hop count, a :
,:, I~R 9 93 ()l3 ., .
:' ~,,, .';.' ....
. ' .

12 212~
,, minimum pa~h Iength, which does n()t ulilize an inordina~e amounl of networlc rcsourccs.

.. K~y requirelllents .
. .
, The Distributed Routing mechanism in large and high speed packed switching networks supporting both connection oriented and connectionless routing modes implies some requirements in terms of performance and resource con-sumption which can be summarized as follows ~ the source node (or the node providing the route calculation for the source node) must be able to cleckle where to route an incoming packet in a very rf short portion of time (the computation must be sufficiently rapid to com-pute an optimum path for each connection re~luest) 0 the switching time in the intermediate nodes must be minimized, (minimum ~- proce~ssing time) the net~vork resources along ~hc selected patll mu~it be oplilllizc~l aCCor(lill~
to the criterion of the minimum hop count o Control me~ss;lges must be as mucll as r)o.ssil-lc limitc(l 110~ ~o ovclll-;l(l thc net-vork i:
In high speed networks the cost for updating the routing tables generated hy the exchange of control messages is not critical ~so long as this can be performed before the connection set up The very high ]ine throughput autholize~s the interchanging of routillg inrormation without ClC;ltillg a SigniricLlllt burdcll ()11 i: .
the communication lines thelllselves l'he~se consi(lel;lliolls~sll~gest ;l l-eltel ac-cess and use of the routing table~s maintained within the llO~ICS ~ithout saeri-f'icing the criterion of optimal path contrary to the l-lierarcllic.ll Routillg method propose(J by L Kleinrock and 1-~ Kamo(ln .
~ . .
'. S~mola)y ot't51e invention .~
Currently, the routing algorithms compute all the available paths in the net-~' work, from the source node to the destination node before to select the optimal ,~, ~:;
9 93 ()13 A~

.:

I~ 21~3~1 route. No assumptioll is ma(le on tlle network topology alld ~he route compu-tation is often time and resource consuming. For e,Yample, some paths which are calculate(l are not acceptable due ~o ~he par~icul.lr geographic;ll conl'igur;l-tion of the network.
In the real workl, large transport network~s are not fully meshe<l. The present invention is based on the simple observation that networks are usually built around a hierarchical structure. A set of nodes, interconnected by high throughput lines, are used to build a '3B~ckbone' wiLh a high degree of meshing to allow the redundaney and reliability required by the user. Then, local nodes are grouped in geographical 'Sul~re~s' themselves attached to the backbone.
The routing algorithm can take advantage of the partieular network topology to drastically reduce the eomplexity of paths eomputation. For a given eon-nection, only a limited number of nodes are defined as eligible and are taken in aeeount by the algorithm in the optimal route search.
The obiject of the invention is to perform an automatie decomposition of the network in a baekbone and s~lbareas to speed up the path seiection without degrading the optimization eriterion of the routing algorithm an(l withoul generating additional eontlol message.s on the network.
" !
The invention is summarized as being a me~hod l'or selec~ing a rou~illg pa~h in an aeeess node in a packet switchillg communication network comprising a plurality of no(ies intereonnected willl transmission Ihlks slli-l metllo(l hlvolving the steps of:
, '.
.
- ~ storing the network collfigulation~

and characterize(l in that i~ ful ther COlllpl-iSCS ~he s~eps ol':

. .
0 au~oma~ically pre-selec~illg a se~ of usable links ror cacll dcs~illa~ioll no(lc located in the net-vork, , ,;
.~ o storing loeally said pre-selection Or usable links, ; .
determining, for each connection request between said access node and a ., ~ destination node, a routing path among said pre-selected usable links.
',..' ~ I R 9 93 013 ~ . ~

;;
.::
;.
....

:
,.;, . .
., ; ~123~41 Dc.~c~iptiol- ~,J tl~c (1~a~ s .
I~:igurc () rcprcsenl a nctwolk topology ror llieralcllical Roulirlg accordhlg to thc mcthod suggcstcd in thc prior art by L. Klcinrock an(l F. Kamoun Figure I shows the proccssing timcs (or number of instructiollC; per seconcl) required in function of the different line throughputs supported by the high spccd networks.
.
Figurc 2 shows a typical model of high specd packet switching nctwork in-cluding the access and transit nodes claimed in the present invention.
, ., , Figurc 3 dcscribcs a high spccd Rou~ing Point accor~ling to thc prcscnt in-vcntion.
.
~., Figure 4 shows a typical e,Yample of network.
,.
Figurc S shows thc conncctivity trcc ol a typical nctwolk accor(lillg to lhe ' ~ prcscnt invcntion.

~.
Figure 6 illustratcs thc node classification principle acc()l-ding to the present invcntlon.
~.
. . ~
Figure 7 shows thc rcsult of the nocles cl~assification accor~ling to the pl-esent inven tion .

Figure 8 shows the final decomposition of thc nctwork accol-~ling to the pres-ent invention.

Figure 9 shows a comparison of thc algorithm performance \,~ith all~l without the implementation of the present invention.
, .
, Figure 10 reprcsents the optimum paths trec of node r.

., ~ .
1 ~ 9 93 ()13 ii '',;~
. ' ! ''- ' 'i, ,~j ', .' :,.

. . t 2 jl 2 ~' 15 riglllc I I Iclllc~icr~; tllc ()I?tilllUll~ c 1' 1,(- Il()(lc g .Icc()~ t(~
thc prc.scnt invcnlion.
:.
' i Dcscrip~ion of tlle prctcr r l~(l cl~lb~ c~lt of t/lC i/ll'ClltiOII
- . ' As illustrated in Figurc 2, a typical mo(lcl of communicalion systcm is madc of scvcral user nctworks (212) communicating through a high pcrformancc network (200) using private lines, carrier provided services, or public data networks. Each user network can be dcscribcd as a sct of comrnunication processors and links (211) interconnecting large computcrs used as enterprise servers (2]3), user groups using workstations or personnel computcrs attachcd on LAN (Local Area Networks 2i4), applications servers (215), PBX (Private Branch eXchangc 216) or video scrvcrs (217). Thcse user nctworks, dispcrscd in clifferent establishmcnts, necd to be intcrconncctcd through widc area transport facilitics and differcnt approachcs can be uscd for organizing thc data transfer. Some architectures involve the checking for data intcgrity at cach nctwork nodc, thus slowing down thc transmis.sion. Othcrs arc cs.scntially Iooking for a high spccd data transfcr and to that cnd thc tran.smissioll, routin~
~, an(l switching tcchniqucs within the nodcs arc optimizcd to proccss thc flowing - packcts towards thcir final dcstin.ltion at tllc higllcst l?ossiblc la~c. rhc plC.~CIl~
in\~cn~ion bclongs csscntia!ly to thc lattcr catc~ory all{l morc particularly to ~hc fàst packct s~vitching nctwork architccturc dctailcd in thc following para--;~ graphs.
:..

, . .
~ig~l speed p~c1cet s~vifc~ J ~ t~vol hs ,. .
rllc gcllcr~l ~icw in ~ ig~llc 2 .~ r.l~it j?.lckct ~ iOIl ~
. tCIll COIllpl i.'iill~ Cigllt ll(~lCS (21)1 to 2~)~) C.ICIl ll()(lC l-Cill~ illtCI Cl~llllCClc(l I?y mcans of high spccd communication lincs callcd Trunks (209). The acccss ,S~ (210) to the high specd network by the users is realized through Acccss Nodes , (202 to 205) located at the pcriphcry. Thesc Acccss Nodcs comprisc one or morc Ports, each onc providing an acccss point for attaching c:Ytcrnal dcviccs supporting standard intcrfaccs to the nct~vork and pcrforming thc convcrsions s( .
, .
.~.,, ~ .
'z :.
.:
;!.
~:' I~) 2l23A~l Ic~ o ~ ol~ Cl~ (1;1~.l I'lo\~ o~ c l~ olk l'rol~ o olll~l Cx~crllal sdcviccs. As cxamplc, thc Acccss No(lc 2()2 intcrfacc.s rcspcctivcly aI'rivalc Branch cXchangc (I'L~X), all ar)plic.llioll ~erver an(l a hub thlollgh thrce Ports and communicates through the network by means of the adjacent Tran.sit No(le.s 21)1, 2()~ and 2()5.
, i:.
..
S~vitchi~tg Nodes Eaeh network node (201 to 20~) includcs a Routing Point where the ineoming data packets are selectively routcd on tlIc outgoing Trunks towards the neigh-,~
boring Transit Nodes. Sueh routing dceisions are made aeeording to the in-formation eontained in thc header of the data paekcts. In addition to thc basie !i',~ paeket routing funetion, thc nctwork no(lcs also providc aneillary scrviccs .sucl ' as:
'~,.
~ thc dctcrmination of routing paths for l-ackets originated in the no(lc, - ~ o dircetory serviecs likc rctricving and updating informati()n about nctwork . ..~, users and resourees, :-.
'; o thc maintaining of a con.si.stcnt view of the physic.ll network top(31Ogy, in--; cluding link utilization information~ an(l - . .
o the reservation of resource.s at aceess pohlts of the network.

Eaeh Port is connected to a plurality of user processing equiplllents~ eacl1 user equipment comprising either a sourcc of digital data to bc transmitted to an-other U~CI ~ystem, or a d.lta sink for colIs~ lillg digit.ll dat.l received fr()m all-other u~ser system, or, typically, bo~h. I-he interple~.ltiolI of the U~iCI5 protocols, the translation of the u~sers d.lta intO packets l'ormatte(l appl-opriatcly for their transmission on the packet network (200) ancl the generatioll of a hca(lcl- to route these packets are e~ecuted by an Aeeess Agent running in thc Port. This header is made of Control and Routing Ficlds.

q The Routing Fields eontain all thc information neecssary to routc the paeket through the network (200) to the dcstination nodc to which it is add rcsscd .
,!
. .
li I R 9 93 013 .r ~
..~
. ..~ . .
,,,"~

' ' '' :, 17 2123~41 'I'hc Conlr()l l~icl(ls includc, among otllcl thillgs~ all CllC()(IC(l idcll~il'ic.ltiOIl of the prolocol to be used in hlterpletillg the Ro~ g Fiekl (Source Rout-ing, Label Swapping, ....).

-; Rolltillg Poi1t~s .. ,~
. . .
~ Figure 3 shows a general block diagram of a typical Routing Point (300) such .~ as it can be found in the network nodes (201 to 208) illustrated in Figure 2. A
Routing Point comprises a high speed packet Switch (302) onto which packets . arriving at the Routing Point are entered. Such packets are received:
., ~~ ~
e from other nodes over high speed transmission links (303) via Trunk Adapters (304).
,, ~ from users via application adapters called Ports (301).
"
,~, Using information in the packet hea(ler, the adaptels (304, 301) delelmille - which packets are to be routed by mcans of the Switch (302) to~vards a local user network (307) or towards a transmission link (303) Ieaving the nocle. The adapters (301 and 30~) include queuillg circuits for queuing packe~s prior ~o .-; or subsequent to their launch on the S-vitch (302).
..
I'he Route Controller (3()5) calculates the optimum routcs ~hrough tlle net-work (200) so as to satisfy a given set of quality of service specificd by the user, .:
and to minimize the amount of network resources used to complcte a commu-nication path. Then, it builds the hea(lel of the p.lcke~s genel ate(l in ~hc ~- Routing Point. The optimization criterion inclu(lcs thc number of intermedi,lte nodes, the characteristics of the connection request, ~he capabilities and the - utilization of the Trunks in the path .. All the information necessary for the . routing, about the nodes and transmission links connected to the nocles, are ~' contained in a Network Topology Database (306). Under steady state condi-tions, every Routing Point has the same view of the net-vork. The network .,.
topology information is updated when new links are activated, new nodes added to the network, when links or nodes are droppecl or ~vhen link loads .
.

:.
~ IR993013 :
~..
';.''' .

~ ':
. :,;

' ,-~ 18 2~ 41 ., change signil'icantly. Such inl'ormation i.s originale(l at the netwolk no(le towhich the resources are attache?il an(J is exchangeil by mean~ Or control mes-:'~ sage~s with all other Route Controllers to pro~?i(le the up-to-~late topological ,1' inl'ollll.ltion neede(l for r(r?llle calclllatioll (.sucll (hltab.l.se u~ e.s are callic(l on packets very similar to the data packets exchang,e~l between end user.s of the network). The fact that the network topology is kept current in every no(le through continuous updates allows dynamic network reconfigurations without disrupting end users logical connections (sessions).
. ., ~- The incoming transmission links to the packet Routing Point may comprise links from e~ternal deviees in the local user networks (210) or links (Trunks) - ~ from adjacent network no(les (209). In any ease, the Routing Point operates in the same manner to reeeive each data paeket and forward it on to another Routing Point as dietated by the information in the paeket header. The fast ?,'' packet switching network operates to enable a communication between any i' two encl user applications without dedicating any transmi.ssion or nOCIC facili-~-. t;es to that communieatioll path e~cept for the (luration of a ~sin~le ~-acket. In ' ~ this way, the utilization Or the communication facili~ies Or the p?.lcket ne~wolk ~, is optimized to carry ~significantly more tral'fie than would he pos.sihle witl '~ dedieated tran~smission links for each communiea~ion r)ath.

~ ~ .
Cill S te7 i?~lg T~C~l ~tiqll e ., r~?Io~li?i ïcll Bcll~ I ord ~ Igt)rit1~

Tllere are several possible al~;olitllms to compute an optimal route in a net-.~
vork. The Modified Bellmann-For~l algorit?hm is one of the most currclltly '?,: used in fast packet packet switehing net~vorks. As deselibed in European Pat-.~. ent Application 934~0030.1 - Methods and Apparatlls for Optir~ o2 Patfi Se-~, lection in Packet Transmissioll Netwo) ks, this one is invoked for each , . . .
;~ eonnection request with the follo~ving parameters:
i ~
?R 9 93 013 ".':~.' . .

''.'' .,~

'';t "''''' -~ 2~23~41 .~ I') ~hc ~oul(:c IlOdc a(kllcss, ~ the destination no ie ad(lress, the quality of serviee require(l I'or the conneetiom For example:
n maximum call set up (Ielay (very important parameter for connections serviced in real time), '~ ~ maximum end to end transit delay, ; ~ maximum information loss, error probability, :
The algorithm uses the local copy of the network topology to determine the rninimum hop and path Iength between the source node (or access node3 and thc destination node. The Modified Bellman-Ford algorithm makes no as-sumption on the network geographical configuration. It requires the same complexity whether the network is fully meshed or llierarchized. The purpose - of the present invention is, for a given connection, to simplify the network topology by reclucing the number of eligible nocles necessary to ealculate the ''' optimal patll.
, , " ~
Patll Selectioll Comple~ity -1~ The total hops count necessary from a given no(le to rcach all the othel no(les, Ill~lltipliC(I witll tllC ll~ l ol' i~ iOIl I)CI ilO~ i~ .111 ill(li~l~ol ol' ~llc i.ltll ;~ search comple~ity C accor(lillg to the millilllUIll l1OP ClitCIiOIl. C is prOpOI-. tional to the average numbel- of links i per llO{IC, to the total number of llO(ICS
N in the network and to the average number of optimal hops hopt' from a '~ given node to reach any destillation.
'' . ~
.., .:, "' ,"', - I R 9 93 ()13 ~'' .
~;

.~., ,. . . . . .~; . . . . .

2123~
2(J

C = 1 x O
1 . I ((N-l)/ N) + (first hop) 2 . 1 ((N~l)/ N) + (second hop) 3 . 1 ((N-l)/ N) + (third hop) ..... .
~- 1 (i+l). I ((N-l)/ N) (i+l th hop) .

C = hopt . N . 1 = 2 hopt . L with :
::' hopt = average number of hops for an optimal path . 1 = aver~ge number of links per node N = total number of nodes in the network .~ L = total number of links in the network : i Thc complcxity is directly rclalc(l to tllc total n~lmhcr of Ihlks in thc nctwolk.
For a givcn path ~cal-ch bctwccn two nodcs, thc complc~ity can bc rc~luccd in a vcry siglliric.lnt propor~ion by limilhlg ~hc nulllbcl- Of Ihlks u~ahle for tllc computation of thc routc. rhis mcthod is cfficicnt at thc condilion not to dc-gradc thc thc minimum hop count constraint in thc samc proportions.

, . .
,.. .
''~ , No(les Attributes .. The basic idca of the present invention is to pre-select in a given node thc physical links ~vhich must bc considercd for building a pa~h to another node and thcn to usc saicl pre-selected links at path sclection timc. This invcnlion details also, how to initiate and maintain the link table.
'' ' .'.,-:,, : I-R 993013 ~'~,' ~''.

: ~ :
':. ' :, .
:';

21 2 ~ 2~
The objective of the clustel ing algori~!lm is to (Iecomr)ose tl1e net~ork's topology in a way to obtain a llO(IC!i' hierarchy. I he node!; are clas~iil'ied inlo '~' .I ri~.'it .'iCt C.IIIC(l '~ Ckl)Ol~C~~ ll(lC Or.'iC~'i C.IIIC(l 'Slll);ll'~';IS'. 130~11 Backbone and Subarea nodes are able to .support Ports ancl Trunk.s, without any restriction. The no(le attributes are recorded in the Topology Database and updated for each change in the network (node/link ad(lition or sup--~ pression) The classification and pre-selection of the nodes must be done in a way not to corrupt the path selection function. It is therefore essential to guarantee that the optimal path between two nodes can always be computed. The criterions -- for an optimal path selection are:
;:
the minimal number o~ hops, ancl among the paths with the minimal number of hops, the Ie.ss loa(led is cho-. sen.

~ vith the follo~ving a~suMption:
., o the net~vork comprise~ N no(le~i and L links, and ~ CVCIy acccss no(lc hcls lhc S.llllC kllO~VIC(I~C ol' ~hc ne~ olk lol-olo~y.
i;~
~,i To satisfy these requirements, the clusterhlg techni(lue must be built accor(ling to the following rules:

1. If the source and the destination no(les are in the ~ame Subalecl then the path will be compute(l only among the node~i belonging to ~his Subalea an(l the Backbone nodes directly connecte~l to the Subarea. I helel'ore thc opti-., mal path shoul(l he inclu(le(l in this set Or node~n 2. Ir thc 'iOUlCC all(l thc de~tillatioll no(le~ alc mellll-cl- ol' the l~ackl Onc then . .
the path ~ill be computed only amon~ the no(les belonging to the Back-; bone. The optimal path should be entirely included in the Backbone.

. .
~; 3. If the source and the destination nodes are in two different Subareas, then ~. the path ~vill be computecl only among the nodes belonging to:
:',', ,;" IR993013 "
,:, ., :'''' .

~ 2~23~
' 22 ~hc Sub~llca of tllc solllcc llO(IC, C;IIlCd '~OIIICC ~ul~.~rc~
~ tlle Backbone.
the Subarea of the destinatioll no(Je, called 'Destin.~tion Sul).lrea'.
~' Thererore the optimal path shoul(J l~e inclu(le(J in the Source Subarea, in the Backbone ancl in the Destinatioll Subarea.

The proposed decomposition algorithm must lead to a decomposition suchthat the above conditions are satisfied.
~.
.
Clustering Metht)dology ;, The clustering algorithm is divided into six major steps. Each step is now de-scribed.

~ Step 1: Sorting nodes ly colln~(:ti~ily Let the connectivity associatecl to a giVCIl nocle be the nultlher of links connected to the node. Tlle connectiviîy is computed for cacll no(lc of thc input network. A list of the netwolk nodes and their connectivity is then established. This list is sortecl by decreasillg conllectivi~y.

~ Step 2: Col~ ucti~lg ~ Connectivity lree . .
The goal of this step is to buikl a connectivity tree. The connectivity tree is a no cycle grapll contailling all the no(lcs of the input nctwork. Each node appears only once in the connectivity trec. Tlle rules for the tree construction are the following:

~ At the beginning, the root of the trcc is choscll as the node havillg ~he ~, highest connect;vity. If SCVCI al nodes have thc .same highcst connectivity, one of them is choscn arbitrarily.
,. The following iterations are clone until all the nodes of the nctwork ;~ ~ have been taken:
For each Ieaf (termination) of the current connectivity tree, taken ., by decreasing connectivity, a sub-tree is constructed. This sub-tree ~:: has for root the consiclered Ieaf and for Ieaves all the network nodes '- I R 9 93 0 1 3 ....
:
. , ~, .
'!,~
''~.'''' ,:,';

' ::

2 123~1 2 ~
to ~vhicll the rool ol thc ~ub-tlcc is conncclc(l lo. Of coursc, only the nodcs that havc not yet bcen takcn arc considerccl.
-, ~ rhc algorithm is thcn rccur.~ivcly appliecl lO all lhc Icaves Or thc new connectivi~y tree (original tree pius all lhe new sub-tlccs).
.
Step 3: Cl~ssifying no~les ;, -- The aim of the third step is to classify ~he noclcs into Backbone and Sub-areas. Here are the classification rules:

All the nodes of the connectivity tree that are not Ieaves become mem-ber of the Backbone.
~, All the nodes of the connectivity tree that are 'alone Ieaves', i.e. the 'father' of sueh a leaf has only this leaf for 'son', are included into the ' Backbone.
- ~ All the nodes that are not Backbone become member of the Subarecl.s.
. ~ The nodes having the same 'father' belong to the same Subarea.

Step 4: Detecting links bctweell Sub~re~s The algorithm looks now for links existing between Subaleas. All the links ~' are scanned. If two Subareas are collnected by a link in the original net-work, then the node (from which this link is is.s~lc(l) havillg the highe~t connectivity is extracted from hi.s Subarea and becomes part of the Back-bone. If the two nodes have the same connectivity then, arbitrclrily, one of them is pulled out of the Subclrea ancl incluclecl inlo the Backbone.
., Step 5: An~ly~ing Backbone to S~ rea links Finally, the algorithm scans all links between Backbone no(les ancl Sub-area nodes. For each Backbone no(le directly connected lo a Subal-c.l nocJe, the algorithrn checks:

if the 'father' (in the connectivity tree) of the Subarea no(le i.s con--.~ nected to the Backbone node, ., ~i ~ if the 'father' of the Subarea node is connected to the 'I'ather' of the -' Backbone node.
If both tests are negative then the Subarea node is marked. This proceclure is applied to all the Subarea nodes connected to the considered Backbone . ;.
~, :. I;R993()13 .~''''' :
;''.'.~' :' ~:.
,, 2123~41 :~ "
' 2~1 no(le. At thc end, the no(lc, amollg Illc m,lrkc(l onc.s, ~hicll h.n; thc higllc~t :,,.
capacity connection with the [3ackbollc nodc is rcmo\~c(l I'rom lhc Suharca and included into the Backbonc.
.,.
;~ ~ Stey 6: Removing particlllar Sul)~re~s After stcps 4 and 5, somc Subal-cas can becomc cmpty, or can conlain just a few nodes. It is therefore worthy to remove them. In fact, one can simply want to avoid having very small Subareas in the network, e.g. for network /
management purposes. All Subareas containing Iess than 2 (value fixed arbitrarily by the network designer) nodes are removed: the nodes be-longing to such Subarcas are moved to the Backbone. Empty Subareas are .
.- just suppressed .
,.~

'" E~cample .
:
Given the network depictcd in Figure 4, the algorithm i.s charac~crize~l in that it compriscs the stcps of:
.
Step 1: Sorting no(les by connectivity The first step is to establish a list of the nodes and their conncctivity. This list is then sorted by dccrcasing connectivity. T hc rcsult is givcn in ~hc ta-ble hcreundcr:

;,. .
', .

, . .

.., . ., ~: rR993()13 '.''"
~.', , ~.

;,.i ~-~ 25 2123~1 NodeConnectivity ~' a 7 b 6 , d 5 .:. e 5 ., : c 2 :
f 2 g 2 h 2 i 2 j 2 o 2 k m n p r ,"
,;- For example, node a is conncctcd to scven othcr nodes. It has the highest .' connectivity.
~ -Step 2: Con~ elillg ;l eo~ ity tree Using this table and the network topology presented in Figure 4, the connectivity tree is built. This tree is prcsentcd in Figure 5. Thc root of the ,i tree is node a which has the highest connectivity.

., ~
Sl:ep 3: Ciassifying the nolles As described in step 3 of the algorithm's presentation, the nodes are clas-~' sirled into a Backbone and Subareas. Three Subareas have been found in ~-1~ this example. The principle of this first decomposition is shown in Figure 6. For example, nodes j, k, 1, m, n are leaves of the connectivity tree and they have the same 'father': they belong to the same Subarea. Node dl is , ;i i . I:R993013 ~, , .

,' ;
~..
"~:

' 21234~1 , ~
2fi wha~ we have del'ine(l as an "alone Ieal". I his no(le is ~hen inclu(le(l into ~'~,, thc Backbonc.
',.~j!
Slep 4: Detecting links l)etween Slll)areas .Y It can be easily seen in Figure 7 that ~he link from j to o is a link between two Subareas. Thus, as said in step 4, one of the no(le has to become part of the Backbone In this case the two no~les have the same connectivity, so~
arbitrarily, o is removed from Subarea 2.
.
Step 5: Anillyzing Backbone to Sub~rea links , .
The algorithm looks now for links between Subareas and Backbone as described is step 5. As sho~vn in Figure 7, d is part of the Backbone and is con nected to r o ~I is not connected to the 'father', e, of f, Y the 'father', e, of d is not connected to the 'father',e, of f, f is marked. In the same fashion, g 11 and i are also marked. From these considerations, ;L ;S clear that the shortest Path flom d to e must go thlo~lgh one of the nocles f, g, h, or i. With the ass-lmption, in our example, that ~he transmi~ssion capacity is the same for all the links of ~he net-vl)rk, f can he ::~
i~ arbitrarily removed from Subarea 3. This guaralltees the intcgrity Of path selection function. In fact sllpl-ose tha~ wc have ~o cstablish a link bct~Yccn d an(l e, the ~shortest Backbone path is in 4 hops ((I ,e, b, ~, e). Including .', f into the Backbone, the shortest path is now in 2 hop~s. This is the optimal path.
: ' Slcp 6: l~cmovillg p;lllic~ r S~ rc.ls For thc particulal case of the propose(l exalllple ~hclc is no rcmoval ~o ~lo.
The final result of the algorithlll is given hl Figure ~.
";
~' ~, '.:.5';
1~; ', .~:.'.

. ~, ~,'.' ~'"
'~ :
9 93 ()13 . ~, ! li:., , .'',' .:,~
,, ''''';
.'., '- 2123~
. 27 Tc)polo~y D~lt~bllse ., The Topology Database is replicated in every node and contains information on the network nodes and links. A topology algorithm is u.sed to maintain a consistent view of the network in all Modes. The Topology Database contains two classes of information:
., : "
~ The physical topology of the network including static inforrnation like :;:
physical characteristics of nodes and links, - ~ The link utilization.

....
Only the first class of parameters are related to the present invention.

j,~ Lillks Attributes ;
.~ Base(l on the node attributes, each link is qualifie(l by a new attribute, ac-cording to the ~ollowing rules:
, Node_i Nodej Link_ij Type Backbone Backbone Backhone .- Backbone Subarea X Subalea X
., . _ Subarea_Y Backhone Suh.ll-ecl_Y
Subarea_Y Subarea_Y Suhal-ea_Y
:
,~ They are dynamically built by each no(le, according to the classificatioll of Node_i and Node;.

. .

;:
, r ', l R 9 93 013 ., ( , .
:,, . ~
, ., '~'.' ':~
D~finitiolls In a ~7iYen n()(Ic (No(lc_i), it must be huilt a .shllple structurc able to dcter-minc which links have to be usecl to reach any other no(le (Node;). This matriY structure can bc d~fined as follows:
i~ .
~ Thcrc is a linc for cach link and a column for cach node of the nctwork.
The so defined strueture is a L x N matrix ealled 'Path Selection Matrix'.
~ ~ The matrix element ,Eln, is a Boolean value:
!',' ~ Eln - I (TRUE) means: Link I can be used to reaeh Nodc_n from Nodc i .7 Eln = O (FALSE) mcans: Link_l cannot bc uscd to rcach Nodc n from Nodc i ~i Matrix lnitiation7 .
., Thc Path Sclcction matrix is automcltically calculatc(l in cclch node7 at the conriguration timc, from thc information con~ahle(l in tlle Tor)ology Databasc an(l according to thc follo-7i~ing principlc.s:

~ Links (or matrix lincs) ~s .
.' L7 All links in thc Sllbarca of Nodc_i al-c usal)lc to rcach other nodcs -~ (cxccpt Nodc_i itself), n All links bctwccn Backbone nodcs are usablc to reacll any node in the network except the destincltion nodes loca~e(l in the samc Sul).llea as Node_i, All othcr Subarea links (links not in thc Subarea of Node_i) are usable only to lc.lch thc Sub.llc.l thcy bclollg to.
. ~
o Nodcs (or matrix columns). In Nodcj column, ~7 If Node_; is not locatcd in thc Subarca of Node_i, all backbonc links ~i ~
' are usable, .. 1 1~ 9 93 0 13 ! ' ~
' .~
."
. . .
,:, . .

,''' ~ 21234~1 . .; , -~'; ' 2() If Noclc; is locatc(l hl lllc Sub.llc,l ()I' No(lc~ hc ~ackh()nc links are not usable, " All Ihlk.~ hl the Suh.lle.l ol Node_i orj;lnd h1 ~he Sllb.lle,l ol No(lc; ale usable, , ~ All other links are not usable.
: ' . .

, ~latrix Update .
Each time a new node or link is addecl, the Topology Database locatecl in ev-ery node of the network is upclatecl. This is done by means of control messages containing the new network configuration. The clustering algorithm, and the ..~
associated Path Selection Matrix are automatically recalculatecl for each change in the network.
.
~,:
.-E:~amplc .' - As illustrated in Figure ~, tllc nc~wotk is dcco~ osc(l~ at lhe conriglll-aLio time, in a Backbone and in a pluralily Or Subareas:
, ~ .
Backbone nodes : a,b,c,cl,e,f,o Subarea I nodes : j,k,l,m,n Subalea 2 nocles : p,q,r Subarea 3 nodes : g,h,i and Backbone links : Lab,Lbc,l cd,Lclr,Lfe,Lae,Lbo Subarea 1 links : Laj,Lak,Lal,Lam,Lan,Lo;
Subarea 2 links : Lbp,Lbq,Lbr Subarea 3 links : Lge,Lhe,Lie,Lgd,Lhd,Lid ., ~ The corresponding Path Selection Matrix for the node r is:
;
:,, '. 11~993013 ,.

., .
,' ...
~ .., -"
.~:
. ~
., .

~ 2123~1 .;
:: 3() :.
Nodes a b c d e f o g h i j k I m n p q r Links ;, Lab 1 1 1 1 1 1 1 'L 1 1 1 1 1 1 1 0 0 0 ' Lbc 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 Lcd 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 .. : Ldf 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 ~- Lfe 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 ' Lae 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 Lbo 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 Laj O O O O O O O O O 0 1 1 1 1 1 0 0 0 Lak O O O O O O O O O 0 1 1 1 1 1 0 0 0 Lal O O O O O O O O O 0 1 1 1 1 1 0 0 0 ~ Lam O O O O O O O O O 0 1 1 1 1 1 0 0 0 i Lan O O O O O O O O O 0 1 1 1 1 1 0 0 0 Loj O O O O O O O O O 0 1 1 1 1 1 0 0 0 . I.bp 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 l 1 0 j', Lbq 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 :. Lbr 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 . ,.
Lge O O O O O O 0 1 1 1 0 0 0 0 0 0 0 0 Lhe O O O O O O O 1 1 1 0 0 0 0 0 0 0 0 , Lie O O O O O O 0 1 1 1 0 0 0 0 0 0 0 0 .,?~ Lgd O O O O O O 0 1 1 1 0 0 0 0 0 0 0 0 ~ii" Lhd O O O O O O 0 1 1 1 0 0 0 0 0 0 0 0 Lid O O O O O O 0 1 1 1 0 0 0 0 0 0 0 0 j ~
';~ To simplify the notation, the matrix in No(le~ rer)rcselltecl a~i a L entl-y ta-~ ble Ti(k) (k = I, ,L) with:
., !
Ti(k) = X when link k is usable for any path, Ti(k) = -S when link k is usable l'or any path except on the paths from Node_i to nodes located in Subarea S
o Ti(k) = S when link k is usable only on the paths from Node_i to nodes located in Subarea S
.

In our ex~mple, the tables Ti in nocles a to r have the following values . ,, I R 993()13 '.'.~

:
:
,~ ,....
~:, ' 2~ 23~4~
( 31 ,, Links Ta Tb Tc Td Te Tf To Tg Th rl Tj Tk Tl Tm Tn Tp Tq Tr . .
L.~b X X X X X X X -3 -3 -3 -1 -I -1 -I -1 -2 -2 -2 Lbc X X X X X X X -3 -3 -3 -1 -1 -1 -1 -1 -2 -2 -2 . Lcd X X X X X X X -3 -3 -3 -1 -1 -1 -1 ~1 -2 -2 -2 Ldf X X X X X X X -3 -3 -3 -1 -1 -1 -1 -1 -2 -2 -2 Lfe X X X X X X X -3 -3 -3 -1 -1 -1 -1 -1 -2 -2 -2 . Lae X X X X X X X -3 -3 -3 -1 -1 -1 -1 -1 -2 -2 -2 Lbo X X X X X X X -3 -3 -3 -1 -1 -1 -1 -1 -2 -2 -2 ' Laj 1111111111 X X X X X 111 ' Lak 1111111111 X X X X X 111 ;.' Lal 1111111111 X X X X X 111 Lam 1111111111 X X X X X 111 Lan 1111111111 X X X X X 111 Loj 1111111111 X X X X X 111 ; Lbp 222222222222222 X X X
Lbq 222222222222222 X X X
Lbr 222222222222222 X X X
Lge 3333333 X X X 33333333 Lhe 3333333 X X X 33333333 ; Lie 3333333 X X X 33333333 -' Lgd 3333333 X X X 33333333 Lhd 3333333 X X X 33333333 : Lid 3333333 X X X 33333333 The path between two nodcs in the network is consiclered as optimum if the number of hops is minimum. All optimum patlls create a ~rcc Or ~vllicll rl)ot - is the source node. Figure 10 shows all the optimum patlls established from nodc r. At thc first Icvcl arc placcd all nodcs adjaccnt to the SOUICC node, then at thc second Ievel all thc adjacent nodcs to thc first Icvel nocles and not al-ready placed and so on until exhaustion. Figure 11 illustrates the path search from node r to nodc g according to thc prescnt invcntion. As prcviously dc-scribed, the eligible links to rcach nodc g located in Subarca 3 are dcrmed in the tablc Tr.
,~:
,~. .
. ..
~ 993013 '~

. ::
'~
''' ~, ~ 2 ~234~1 , ....
Eligible Non-Eligible I.inksTr Links Tr ., .~ Lab -2 Laj ~ Lbc -2 Lak Lcd -2 Lal .. Ldf -2 Lam ; Lfe -2 Lan . I,ae -2 Loj .; Lbo -2 . Lbp X
.' Lbq X
. Lbr X
; Lge 3 i~ Lhe 3 . Lie 3 Lgd 3 Lhd 3 '. Lid 3 .
. . .
~'' Only the Backbone links, and the Subarea links attaching the source nocle and the destination node to the Backbone are taken into accollnt in the search process. The other links are not taking part to the palh selection ~vhich reduces ,. .
the comple~ity of the routing algorithm computation (for e~cample the Modi-fied Bellman-For(l Algoritlllll)~ In our e~aml le, t~vo p.l~lls - rh.lcg all(l II-c-lg -, .,~, are satisfying the minimal hop constraint witll a nulllber of rour hOr)s.
' TllC comple~ity of the net-vork represen~ed in Figure ~I can be appll)~cinl.lte as follows:

!'~ .

'~ I R 993013 . ''.

:
i~
:
~~"

:
2123~1 . . .
', ' C = 2 hopt . L = 2 x 2.5 x 22 = 110 with :

~' . hopt = 2.5 hops . L = 22 links ., ' . N = 18 nodes . 1 = 2.44 ~44118) links per node ,.~

The average hop number is deterrnined from all lhe optim-lm (minimum) paths between the nodes:

S~ I hop: rb, ab, aj, ak, al, am, an, ae, bo, bp, bq, bc, oj, cd, df, dg, dh, di, ~ ei, eh, eg, ef.

- e 2 hops: ra, rc, rq, rp, ro, qa, qc, qp, qo, pa, pc, po, oa, oc, jb, je, jk, jl, jm, .. jn, kb, kc, kl, km, kn, Ib, Ie, Im, In, mb, me, mn, nb, ne, ac, ai, ah, ag, af, bd, be, ci, ch, cg, cf, fg, fh, fi, gh, gi, hi, de.
'.!.
:, - ~ 3 hops: rd, re, rj, rk, rl, rm, rn, qd, qe, qj, qk, ql, qm~ qn, pd, pe, p;, pk, .:
pl, pm, pn, od, oe, ok, ol, om, on, jc, ji, jh, jg, jf, kc, ki, kh, kg, kf, Ic, li, Ih, Ig, If, me, mi, mh, mg, mf, nc, ni, nh, ng, nf, bf, bg, bh, bi, ad, ce.
4 hops: rf, rg, rh, ri, qf, qg, qh, qi, pf, pg, ph, pi, of, og, oh, I)i, jd, kcl, kl, md, nd.

hopt = (lx22 + 2x52 + 3x58 + 4x21) / (22 -~ 52 + 58 ~ 21) = 384/153 = 2.50 hops per optimum path ~:
i,',,-.:
. The pre-selection of the usable links according to the present invention does not degrade the minimum hop constraint. The routing algolithm complexity C', viewed from node r to reach node g for example~ can be nearly reduced by ~~ 30 per cent:

~, ~ R 9930l3 '~'''' :, .~

:, ' 2123~1 , - ~., C' = 2 hopt L' = 2 x 2.38 x 16 = 76 with :
.
. hopt = 2.38 (186/78) hops ' . L' = 16 links Backbone links : Lab,Lbc,Lcd,Ldf,Lfe,Lae,Lbo S~lbarea 2 links : Lbp,Lbq,Lbr Subarea 3 links : Lge,Lhe,Lie,Lgd,Lhd,Lid ~' . N' = 13 nodes Backbone nodes : a,b,c,d,e,f,o '' Subarea 2 nodes : p,q,r ~ Subarea 3 nodes : g,h,i U
f'or a connection Backbone to Backbone, from node = ;l to node 11 for example, ,;..
the complexity C" is, this time, reduced in a factor 5:
~ .

.
, C" = 2 hopt . L" = 2 x l.9 x 7 = 26 with :
:
~:.
; . hopt = 1.9 (40/21) hops - . L" = 7 links Backbone links : I.ab,Lbc,I.cd,Ldf,Lfe,I,a~,I.bo . N" = 7 nodes Backbone nodes : a,b,c,d,e,f,o Optiolal P~lth ~eal ch Mefho~lo~y The method according to the present inventioll can be summclrize(l as l'ollo~vs:
Step 1: The node stores the network configuration in its Topology Data--- base. This database is initiated and maintained by means of corltrol mes-. . .
sages exchanged between all the nodes in the net-vol-k.
~ .
g Step 2: From the information stored in the Topology Database the node . ' determines the Backbone and the Subarea nodes (clustering algorithm).
.

I R 993()13 ,::
, ~"
~ .
: !

3S 2~L23A41 ~ Stcp 3 Thc nodc (Ietermines, from the no(le attributes previously calcu-late(l, thc link attributes (Backbone and Subarea links).
.
~ Step 4: 'I'hc node seleets thc u~sablc links for eaeh destination node in the network by buikling a L x N Path Seleetion Matrix.

Step 5: At each connection request, the routing algorithm is computed among thc sct of prc-sclectcd usablc links.

. o Step 6: During all the time of thc eonnection, thc data packets are sent to ' the destination node along the path previously computed.

.
Expel ime~ttlltio1ls oll Re~ et~orks This scction illustrates thc cf'ficicncy of thc clustering techniquc applicd to tllc Modified Bellman-Ford route computation algoritllm. The simulations have bccn done on a 'typical' high spccd nctwork. From a basic network topology, four new topologics have bccn constructed. Here are the characteristics:

o Basic network (network 1):

27 nodes, 50 links No Subareas Network 2:

67 nodes, 130 links 2 Subareas ~ Network 3:

107 nodes, 210 links 2 Subareas from Network 2 plus 2 new Subareas ' ~ Network 4:

:

i.
....

~ ., ~ 21234'l1 ~. .~
~ 147 no(les, 2')0 links R 4 Subareas from Network 3 plus 2 new Suhalells .
o Network 5:
,:
, . 227 nodes, 450 links 6 Subareas from Network 3 plu.s 4 new Subareas ., The mean path computing time has been estimated using two algorithms:

the Modified Bellman-Ford algorithm without using the clustering teeh-nique objeet of the present invention, and o the Modified Bellman-Ford algorithm using the clustering technique.
~, The results are presented in Figure 9. When the number of nodes grows the performances of the algorithm without clustering technique are highly reduced.
On the other hand, the algorithm that uses the clustering technique Ieads to ~i much better performances. The performance is expresse(l in term of connection requests per second (or calls per second) and i.s inversely proportional to the '~ Complexity C.

.
:
~, ., ,~
,, .
''. ' ~R 9 93 013 ::
: -!
'~''.' ~., ~'!
' .
. . .
.''' ''''1 : ~

? 7 ,: .
': A PPENDIX
., .
' ~
".
.. I~outillg Inl~grity ~i.
The goal of tllis section is to demonstrate that in a network, decomposed ac-cording to thc prescnt invcntion, thc following statemcn~s arc rcspccte(l:
. ,.
1. If two nodes belong to a same Subarea, the optimal path, for a givcn cri-terion, between those nodcs belongs to the Subarea.
,;
2. Thc optimal path between two nodes members of two diffelenl Subareas, is fully inclu(led into thc two Subareas and the Backbonc.

3. The optimal path between two Backbone nodes is fully inclu(led into the Backbone.

Thc proof of the algorithm is realized in three parts. Al'ter introducing some formal notations, a proof is given for each one of the previous statelllents.

lVotfltions Lct N(A, r) bc graph represcnting the net~vork topology. A is Ihe set of the nO(IcS~ an(l r is all applie.ltioll ~ha~ givcs l'or cacll elemen~ of A ~hc nodes to which this element is connccted to.
,, .;
I et 7(A, ~) be the conne,Yity trce associate(l to tllC llCtWOrk l\l(A, 1-). L~ iS dc-fined in a similar fashion as r.

D~f;~litio~ Va, /~ ~ ,1, Ict ll~(a,I)) C A I~C tllC mhlilllum h0P Pa~I1 rrOm a tO
b in tllC llCtWOlk. I hc IllillilllUlll llUlllbCI Or 11OPS rr.,lll a to b is h~(a,b) = card{H~(~,b)}
. .

.
~ .
I R 9 93 ()13 .

'! ' .

!, 2~7,34~1 :, , DcJi~itioll 2: V~l, b ~ A, Ict ~ e ~he (lislclllce l'rom a to /) i.s tllc connectivity trec. If /~ ~ ~n o ~ "' (n) tllcn C~ b) = tl -I r~l, , .. .

l~cfinitioll 3: ~la ~ A, Iet b = p(a) ~ A be the l'ather Or a. Vf course, a ~ ~(b) .
,~
..;
Def;nitioll 4: Let B e A be the Backbone llO(ICS of /V(A, 1-).
:'' Defnitivn 5: Let ~Si e A, i c 1~1, bc thc no~ies of Subarea i. For ease of defi-. nition, wc considcr that the Backbone node which the 'father' of all thc nodcs of Si is part of the Subarca and thc Backbone.
,:

~Vitllin a Sclbarcc~
.
~'. Propositiol~ a, b ~ Sj d(a,b) = 2 (i) ~ hx(a,b) < 2 (ii) ., PtooJ': (i) is givcn by an elemellt.lly propel-ty ol' trees Given (i), (ii) i.s straightforward.

Propositioll 2: Va, b ~ Sj ~f'(a,b) c Si Proof': Ad absurdum, suppose that H'(a,b) ~ Si . This impliex that ~ c ~ H'(a,b) such that c~Si. Thus h~(a,b) 2 2. By Propositioll 1, h-(a,b) < 2.
Thercforc, only two solutions are conceivable:
:.
~ If h-(a,b) = 2 thcn ~ cl ~ Si sucll that H'(a,b) = {a,cl,b} (by Proposition 1).
Moreover, cl is the cntry pOillt of thc Subarea Si hltO thc Backbonc.

o If h'(a,b) = 1 thcn c does not e:;ists.
., This yiekls to say that the initial propositioll is absurd.

Proposition 2 shows that, within a given Subarea, the optimal path between two nodes in included in the Subarea. However, this path can include the Backbone entry point ~~hich is paî t of the Subarea.
,.
....
:. I R 9 93 () 13 . .

:
',''' ,:
:, ::' ",'~

~1234~i , ~ .
; ~9 r, 0m a Sllborca to anotller Suburca . The optimal path between two nodes member of two (lifferent Sub.lreas should be include(l in those two Subarcas and in the Backb()ne. So, ~/a ~ Si, Vb ~ S~ j, the following relations shoukl be satisfied:

o H~(a,b) c {Si U B U $} (i) H-(a,b) n B ~ ~ (ii) .!
Relation (i), implies that the optimal path crosses any Subareas except i and j. So we have to ensure that Vk 7~ e ~ Sk such that c ~ H~(a,b) . To guarantee this point, it is easy to show that the two following statements mu~t . be true:
j,~
1. Vk 7~ j, Va f~ Si, ~/6 f~ $, ~c ~ Sh, c U r(a) = ~ and c U l-(b) = ~. In r ' other words there must be any clireet links between Subarea k and Sub-areas i and j If this point is guarantee(l, a path between a alld b can be ', cst.lblisllccl . .
.j ~ either directly between the two Sllbareas, either across the Backbone.
, .
-~ In the seconcl case, the optimal path wiLhill the Backbolle slloul(l be en-, .
- tirely inclu(le(l in ~he Backbone. This yiekls to lhe sccvn(l point.
, 2. ~d, e f~ B ~and d,e ~ H'(a,b), H'(d,e) c B . Wc will give a proof ~,f this point in the next part.

If relation (i) is true, relation (ii) implies that there are any direct links be-. tween Subareas i and j.
';~ To sum up:
,':
9~3()13 r~

, /
, , ~'~

~"' ?~2344 4() clation (i) implics th.lt tl-~crc hc .Illy ~lilCCt links bct~ ccr1 hc~wccn ~u~arc;
k and Subareas i and j, /c ~ i 7~ j .
, j:
, . .
o Rclation (ii) implics that thcrc must bc any dircct linl;s bclwccn Subarca i and j.
., So, to guarantee that thc optimal path between two nodes, member of two differcnt Subareas, is includcd in the Backbone and the two Subareas, there must be any direct links bet~,veen Subareas. This justifies thc 4th step of thc , ~ algorithm.

, ~Vitllin ~hc l~ackbo/~e Suppose that we have to cstablish a connection between two nodcs mcmbcr of the Backbone. Wc havc to guarantee that the optimal path is included into the Backbone. In othcr words, Va, b f~ B and Vi, ~/c ~ Sj, cr~H-(a,b) .
Given a, b and c, supposc that d(a,b) ~d(c,b) + I and h'(a,c~ = 1. In this :
case, if b is not reachable from a through the Backbone in no more than d(c,b) -~ I hops, it clearly appears that c ~ ~'(a,b) .
The problern is how to dctect, easily, such a situation. Let's look at the way the connectivity tree is constructe(i. At each .step, when a new Icvcl is addcd,all the nodes (not yet selccted) which are connccted to thc Icavcs of thc actualtrcc are included into the trce. Thcrcfore, if two nodes are conncctcd thcn thc r:
absolute difference of thcir depths in the connectivity trec is no grcatcr than -,:
I. It comes that thc only ways for a to bc conncctcd to b, through thc Back-bonc, in no more than cl(c,b) -I I hops are:
~,....
~ ~ If a is conncctcd to thc 'fathcr' of c.
. .. .
~ If the 'father' of a is conncctcd to the 'father' of c.
.,:
., .
The recursive application of the two preceding statemcnts to thc 'fathers' ~ of a and c.
.~ -' ' IR993()13 ~ .
" "

, . .
;,. ..
. .
", .~ .
' 2123~1 . '~ I
l or hllplelllen~ ion issllcs, i~ IllUS~ bc C011.';i(lCI-C(~ llC Ill;lXillllllll dCptll ol the connectivity tree is, typically, no higller then 3. In ~ddition, this kind of 'special' links between Subareas and Backbone are cluite rare. Tllerefore we can limit this test to a, c and their 'fathers'. It is very important to notice that this restriction does not compromise the proof. In fact the local restriction ofthe test is a very strong conditiom However, i~ can Iead to a sub-optimal de-' composition: for example, if a Backbone link exists at an higher level in the connectivity tree, than perhaps is not necessary to to move c into the Back-bone...
So, to reach our goal we only have to check that (r(a) n B) n (r(p(c)) n B) ~ 0 . If this statement is false then c is moved intothe Backbone. This justifies the 5th step of the algorithm.
, i Conclllsion This section has shown tllat the algorithm guarantees, when network cluster-,~ ing is applied, an optimal path calculation between two no(les of the network.
':
~:
:

,,,.,,~
i '':
i ~
.

. ., ,., .
,,i 1 1~ 9 93 013 ,~
''.'' :' " .

~ 12 2123~1 .
~ Tree Construction Pseu~o Code :~ -- Cell declaration . type CELL
type LINK is ~ccess CELL
type CELL is record ~ NAME : STRING(20); -- Node's name '., connectivity : INTEGER; -- Node's connectivity ~ LEAVES : array (POSITIVE range <>) of LINK; -- Array of pointers ,~. end record;
, -- Node List declaration -' type NODE is record NAME : STRING(20);
connectivity : INTEGER;
TAKEN : BOOLEAN := FALSE; -- To know which nodes have been considere ~, end record;
NODELIST : array (POSITIVE range <>) of NODE;
-- Assume that NODELIST is already initialized and sorted.
' - NODELIST is a global variable ,- procedure ConstructTree (ROOT : inout LINK);
~: TAKEN : INTEGER := I; -- The root is already talcen !!
''.
' while (TAKEN < Number of nodes in the network) loop.~. AddLevel(ROOT, TAKEN);
;' end loop;
end ConstructTree;

- procedure AddLevel (ROOT : inout LINK, TAKEN : inout INTEGER);
,' i : INTEGER;
~'- Nb1.eaves : TNT1,GER := 0;
begin . .

, . "
~' ~R 993013 !

'';'' ,, :.
, . ~
. .

~ 43 2123~41 -- Let's visit all the leaves of the current tree ...
if (ROOT.NbLeaves <> 0) then begin -- This is not a leaf ..
for i in O..NbLeaves loop AddLevel(ROOT.LEAVES(i), TAKEN);
end loop;
end;
else begin -- This is a leaf ....
-- Le-t's construct the sub-tree ;~ for i in all indexes of NODELIST loop if LinkExists (NODELIST(i).NAME, ROOT.NAME) then if NODELIST(i).TAKEN ~ FALSE then g- It's a good candidate !
new(ROOT.LEAVES(NbLeaves));
ROOT.LEAVES(NbLeaves).NAME := NODELIST(i).NAME;
ROOT.LEAVES(NbLeaves).connectivity := NODEI,IST(i).connectiv:ity . NODELIST(i).TAKEN := TRUE;
: NbLeaves := NbLeaves TAKEN := TAKEN ~ l;
end;
end if;
end if;
end loop;
end;
end if;
; end ConstructTree;
,~
., -- The first call to this procedure may look like :
,,.
new(ROOT);
ROOT.NAME := NODELIST(O).NAME;
ROOT.connectivity := NODELIST(O).connectivity;
ConstructTree(ROOT);
:' , !.
:1 '~"

r, ~ .
~R 993013 ,, .
::, , :~
:,.
.::
.
',', ; ~~ 44 2123~41 No~es Classification l'seudo Co~e -- Cell declaration ' type CELL
type LINK is access CELL
-type CELL is record NAME : STRING(20); -- Name of the node connectivity : INTEGER; -- connectivity of the node SUBAREA : INTEGER; -- Subarea to which the node belongs ; NbLeaves : INTEGER; -- Number of leaves of this node LEAVES : array (POSITIVE range <>) of LINK;
end record;
-- We assume here that the tree is constructed and all the fields -- of each cell are correctly initialized -- Subarea 0 stands for backbone procedure Classify(ROOT : i.nout LINK, SUBAREA : inout INTEGER) : GlobalLeaves : INTEGER := O;
i : INTEGER;
begln i,:

.~.
11~993~13 ,, 2123~41 ; -- Courlt how many globa1 leaves ~re conr1ected to this root ',' for i Ln 0.. ROOT.Nbt.~avo~ 1Oo[~
; if ROOT.I,EAVES(i) /= nul1 then ,~ if ROOT.LEAVES(i).LEAVES - 0 then -- This is a leaf of the global -tree -; GlobalLeaves := GlobalLeaves + l;
' end if;
end lf;
''' end loop;
,;
Scan all the leaves of the current subtree and mark them for i in 0..ROOT.NbLeaves loop if ROOT.LEAVES(i) /= null then if ROOT.LEAVES(i).LEAVES = 0 then if GlobalLeaves > l then This is a leaf of the global tree and it's not alone -- Let's mark it as subarea ~' ROOT.LEAVES(i).SUBAREA := SUBAREA;
', else i'~ -- It's alone ', ROOT.LEAVES(i).SUBAREA := 0;
'i end if;
;,~ else '', -- This the root of a subtree ', -- I.et's mark it as backbone R, ROOT.LEAVES(i).SUBAREA = 0;
' end if;
. end if;
;i; end loop;
,. .
' -- If subarea exists let's increment the subarea number , if GlobalLeaves > l then SUBAREA := SUBAREA + l;
end if;
,:
-- Recursive call for i in all indexes corresponding to roots of sub-trees loop Classifiy(ROOT.LEAVES(i), SUBAREA);
, end loop;
,~ end Classify;
..
-- The first call to this procedure may look like :
Classify(ROOT, l); -- Of course this is the root of the connectivity tree ,'. ~

, ~, s ' ~.''' ~R 993013 i' ;' ~ .

. . , :':
., .
',:
. .
,.:, :~
, j , . j . . . .

Claims (6)

The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:
1. A network access node for a packet switching communications network comprising a plurality of network nodes interconnected with transmission links, said network nodes being connected to termination nodes, said access node including means for receiving and transmitting data packets, and data storage means for storing data representing the network configuration, said network access node further including:
selecting means for selecting a set of links suitable for use as part of a path to each destination termination node located in the network, said selecting means further include clustering means for decomposing said network into a set of backbone nodes and a plurality of subarea nodes, said clustering means further comprising:
data retrieval means for retrieving the network configuration data from said data storage means, sorting means for ranking all nodes according to the number of links connected to the nodes, tree forming means for constructing a connectivity tree in which each node in the network appears only once and in which the tree origin is the highest rank node found by said sorting means, classifying means for classifying nodes into backbone nodes and subarea nodes, backbone nodes being all non-termination nodes and any termination node which is connected only to one other node and subarea nodes being any node that is not a backbone node, subarea nodes having the same parent being categorized in the same subarea, means for defining a backbone path between two subareas, the backbone path including a link to each subarea interconnected through the highest ranked node from the set of nodes connecting the two links, means for removing from the set of backbone to subarea links, any link in which the parent node in the subarea is not connected to the parent in the backbone and any link to a subarea having less than a predetermined number of nodes;

storage means for storing data representing the sets of links selected by said selecting means; and means responsive to a request for a connection between said access node and a destination node to establish a routing path including links from the set of links selected for the destination node.
2. A network access node according to claim 1 wherein said link pre-selecting means includes means for determining backbone links and subarea links; backbone links being links connecting two backbone nodes, and subarea links being links connecting either two nodes in the same subarea or a subarea node and a backbone node.
3. A network access node according to claim 2 wherein said link pre-selecting means includes means for selecting as usable for the path determination:
(a) the links belonging to the access node subarea when the destination nodes is located in the same subarea; then the path will be computed only;
(b) the links belonging to the access node subarea and the backbone links when the destination node is located in the backbone;
(c) the backbone links when both access node and destination node are located in the backbone; and (d) the backbone links, the links belonging to the access node subarea and the links belonging to the destination node when access node and destination node are located in different subareas.
4. A method performed in an access node for selecting a routing path in a packet switching communication network comprising a plurality of nodes interconnected by transmission links, said method comprising the steps of:
(a) storing data representing the network configuration in a network topology database;
(b) selecting a set of links which may be used in a route to each destination node in the network, said selecting step including the further step of decomposing the network into a set of backbone nodes and a plurality of subarea nodes, said decomposing step including further steps of:

retrieving data representing the network configuration from the network topology database, ranking all network nodes in the network as a function of the number of links connected to the network nodes, constructing a connectivity tree in which each node in the network appears only once and in which the tree origin is the highest ranked node found in the ranking step, classifying nodes in the network either as backbone nodes or termination nodes, backbone nodes being all non-termination nodes and any termination node which is connected only to one other node, subarea nodes being any node which is not a backbone node, subarea nodes having the same parent being grouped into the same subarea, detecting all links between each pair of subareas, defining a path through the backbone between the pair of subareas, the backbone path including a link to each subarea interconnected through the highest ranked node from the set of nodes connecting the two links, removing from the set of backbone to subarea links, any link in which the parent node in the subarea is not connected to the parent in the backbone and any link to a subarea having less than a predetermined number of nodes;
(c) storing data representing the sets of links selected by said selecting step; and (d) responsive to a request for a connection between said access node and a destination node, establishing a routing path including links from the set of links selected for the destination node.
5. A method for selecting in an access node a routing path according to claim 4 wherein said link pre-selecting step includes the step of determining backbone links and subarea links, backbone links being links connecting two backbone nodes, and subarea links being links connecting either two nodes in the same subarea or a subarea node and a backbone node.
6. A method for selecting in an access node a routing path according to claim 5 wherein said link pre-selecting step includes the step of: selecting as usable for the path determination:
the links belonging to the access node subarea when the destination nodes is located in the same subarea, then the path will be computed only;

the links belonging to the access node subarea and the backbone links when the destination node is located in the backbone;
the backbone links when both access node and destination node are located in the backbone; and the backbone links, the links belonging to the access node subarea and the links belonging to the destination node when access node and destination node are located in different subareas.
CA002123441A 1993-07-30 1994-05-12 Method and apparatus for an automatic decomposition of a network topology into a backbone and subareas Expired - Fee Related CA2123441C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP93480105A EP0637153B1 (en) 1993-07-30 1993-07-30 Method and apparatus for an automatic decomposition of a network topology into a backbone and subareas
EP93480105.1 1993-07-30

Publications (2)

Publication Number Publication Date
CA2123441A1 CA2123441A1 (en) 1995-01-31
CA2123441C true CA2123441C (en) 1999-02-16

Family

ID=8214841

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002123441A Expired - Fee Related CA2123441C (en) 1993-07-30 1994-05-12 Method and apparatus for an automatic decomposition of a network topology into a backbone and subareas

Country Status (6)

Country Link
US (1) US5495479A (en)
EP (1) EP0637153B1 (en)
JP (1) JP2737828B2 (en)
AT (1) ATE208109T1 (en)
CA (1) CA2123441C (en)
DE (1) DE69331054T2 (en)

Families Citing this family (94)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL9301544A (en) * 1993-09-07 1995-04-03 Nederland Ptt Method for selecting connections in networks, and networks in which the method is applied.
EP0788690A1 (en) * 1994-10-25 1997-08-13 Cabletron Systems, Inc. Method and apparatus for automatically populating a network simulator tool
DE4445800C1 (en) * 1994-12-21 1996-07-04 Siemens Ag Method for forming routing information intended for the subsequent switching of traffic relationships in a communication network
US6577646B2 (en) 1995-04-28 2003-06-10 Matsushita Electric Industrial Co., Ltd. Data transmitting apparatus, data receiving apparatus and data transmission control apparatus
DE69631182T2 (en) 1995-04-28 2004-08-19 Matsushita Electric Industrial Co., Ltd., Kadoma Data transmission method
EP0835575A1 (en) * 1995-06-29 1998-04-15 Telefonaktiebolaget Lm Ericsson Call set-up server
US5602839A (en) * 1995-11-09 1997-02-11 International Business Machines Corporation Adaptive and dynamic message routing system for multinode wormhole networks
DE59510586D1 (en) * 1995-12-21 2003-04-17 Siemens Ag Method for forming routing information in an ATM communication network
JPH09219702A (en) * 1996-02-14 1997-08-19 Nec Corp Method for retrieving free route of mesh configuration
US5740346A (en) * 1996-02-22 1998-04-14 Fujitsu, Ltd. System and method for dynamic network topology exploration
US6237029B1 (en) 1996-02-26 2001-05-22 Argosystems, Inc. Method and apparatus for adaptable digital protocol processing
US5946602A (en) * 1996-04-11 1999-08-31 Comsat Corporation Reduction of queuing delays by multiple subgroup assignments
US5841468A (en) * 1996-04-26 1998-11-24 Convergence. Com System and method for routing data messages through a cable transmission system
US5991821A (en) * 1996-04-30 1999-11-23 International Business Machines Corporation Method for serializing actions of independent process groups
US5828665A (en) * 1996-05-01 1998-10-27 3Com Corporation Apparatus and method for selecting improved routing paths in an emulated lan over an ATM network
US5854899A (en) * 1996-05-09 1998-12-29 Bay Networks, Inc. Method and apparatus for managing virtual circuits and routing packets in a network/subnetwork environment
US5940396A (en) * 1996-08-21 1999-08-17 3Com Ltd. Method of routing in an asynchronous transfer mode network
SE507118C2 (en) * 1996-08-26 1998-03-30 Ericsson Telefon Ab L M Procedure for optimizing a mainly optical ATM network
US5778058A (en) * 1996-10-07 1998-07-07 Timeplex, Inc. Method of adding a new PBX and new PBX port to an existing PBX network
US6108689A (en) * 1996-10-11 2000-08-22 International Business Machines Corporation Method and system for processing messages in a distributed computing environment
US5893081A (en) * 1996-11-25 1999-04-06 Etak, Inc. Using multiple levels of costs for a pathfinding computation
US5916299A (en) * 1996-11-25 1999-06-29 Etak, Inc. Method for determining exits and entrances for a region in a network
US6141325A (en) * 1996-12-18 2000-10-31 International Business Machines Corporation Paradigm for enabling interoperability between different subnetworks
US5901352A (en) * 1997-02-20 1999-05-04 St-Pierre; Sylvain System for controlling multiple networks and associated services
US5978730A (en) * 1997-02-20 1999-11-02 Sony Corporation Caching for pathfinding computation
US6097727A (en) * 1997-04-29 2000-08-01 International Business Machines Corporation Methods, systems and computer program products for end-to-end route selection in compound wide/local area networks
US6260072B1 (en) * 1997-06-12 2001-07-10 Lucent Technologies Inc Method and apparatus for adaptive routing in packet networks
EP1021757A1 (en) * 1997-07-25 2000-07-26 Starvox, Inc. Apparatus and method for integrated voice gateway
US6016485A (en) * 1998-02-13 2000-01-18 Etak, Inc. System for pathfinding
US6208623B1 (en) 1998-04-13 2001-03-27 3Com Corporation Method of combining PNNI and E-IISP in an asynchronous transfer mode network
US6317438B1 (en) * 1998-04-14 2001-11-13 Harold Herman Trebes, Jr. System and method for providing peer-oriented control of telecommunications services
US6331986B1 (en) * 1998-04-24 2001-12-18 Lucent Technologies Inc. Method for resource allocation and routing in multi-service virtual private networks
US6396842B1 (en) 1998-04-30 2002-05-28 3Com Corporation Method of searching using longest match based Randix Search Trie with variable length keys and having prefix capability
US6212188B1 (en) 1998-05-01 2001-04-03 3Com Corporation Method of source routing in an asynchronous transfer mode network when a node is in an overload state
US6192043B1 (en) 1998-05-01 2001-02-20 3Com Corporation Method of caching routes in asynchronous transfer mode PNNI networks
US6262984B1 (en) 1998-05-12 2001-07-17 3Com Corporation Method of preventing overlapping branches in point to multipoint calls in PNNI networks
US6205146B1 (en) 1998-05-28 2001-03-20 3Com Corporation Method of dynamically routing to a well known address in a network
US6223149B1 (en) 1998-05-28 2001-04-24 3Com Corporation Non-distributed LAN emulation server redundancy method
JP2978882B1 (en) * 1998-06-03 1999-11-15 三菱電機株式会社 Device-to-device data transfer device and device-to-device data transfer method
US6487600B1 (en) * 1998-09-12 2002-11-26 Thomas W. Lynch System and method for supporting multimedia communications upon a dynamically configured member network
US6563793B1 (en) 1998-11-25 2003-05-13 Enron Warpspeed Services, Inc. Method and apparatus for providing guaranteed quality/class of service within and across networks using existing reservation protocols and frame formats
EP1009131A1 (en) * 1998-12-11 2000-06-14 International Business Machines Corporation Method and system for optimizing the end to end path selection in very large packet switching networks
US6584102B1 (en) * 1998-12-21 2003-06-24 At&T Corp. Communication network apparatus and method
US6483808B1 (en) 1999-04-28 2002-11-19 3Com Corporation Method of optimizing routing decisions over multiple parameters utilizing fuzzy logic
US6577653B1 (en) 1999-04-28 2003-06-10 3Com Corporation Apparatus for and method of establishing a route utilizing multiple parallel segments in an asynchronous transfer mode network
US6594235B1 (en) 1999-04-28 2003-07-15 3Com Corporation Method of triggering reroutes in an asynchronous transfer mode network
US6456600B1 (en) 1999-04-28 2002-09-24 3Com Corporation Complex node representation in an asynchronous transfer mode PNNI network
US6473408B1 (en) 1999-05-19 2002-10-29 3Com Corporation Building a hierarchy in an asynchronous transfer mode PNNI network utilizing proxy SVCC-based RCC entities
US6614792B1 (en) 1999-05-27 2003-09-02 3Com Corporation Proxy MPC for providing MPOA services to legacy lane clients in an asynchronous transfer mode network
US6502130B1 (en) 1999-05-27 2002-12-31 International Business Machines Corporation System and method for collecting connectivity data of an area network
US6275470B1 (en) 1999-06-18 2001-08-14 Digital Island, Inc. On-demand overlay routing for computer-based communication networks
US6882643B1 (en) * 1999-07-16 2005-04-19 Nortel Networks Limited Supporting multiple services in label switched networks
US6405270B1 (en) * 1999-09-08 2002-06-11 Lsi Logic Corporation Method and apparatus for increasing data rates between nodes of a serial bus
US7428525B1 (en) 1999-11-12 2008-09-23 Tele Atlas North America, Inc. Virtual street addressing radius
US6842425B1 (en) * 2000-02-14 2005-01-11 Lucent Technologies Inc. Method and apparatus for optimizing routing through network nodes
DE50105272D1 (en) * 2000-03-10 2005-03-17 Siemens Ag Method for distributing a traffic load of a communication network and communication network for implementing the method
WO2001075677A1 (en) * 2000-04-04 2001-10-11 Goahead Software Inc. Constructing a component management database for managing roles using a directed graph
US6791949B1 (en) * 2000-04-28 2004-09-14 Raytheon Company Network protocol for wireless ad hoc networks
US6879332B2 (en) * 2000-05-16 2005-04-12 Groxis, Inc. User interface for displaying and exploring hierarchical information
US8363744B2 (en) 2001-06-10 2013-01-29 Aloft Media, Llc Method and system for robust, secure, and high-efficiency voice and packet transmission over ad-hoc, mesh, and MIMO communication networks
FI20001415A (en) * 2000-06-14 2001-12-15 Nokia Corp Road selection in a telecommunications network
FI20001553A (en) 2000-06-29 2001-12-30 Nokia Networks Oy Method and apparatus for conducting data packets in communication networks
US7466663B2 (en) 2000-10-26 2008-12-16 Inrotis Technology, Limited Method and apparatus for identifying components of a network having high importance for network integrity
GB0225109D0 (en) * 2002-10-29 2002-12-11 Univ Newcastle Method of and apparatus for identifying components of a network having high importance for network integrity
US7266084B2 (en) * 2000-12-29 2007-09-04 Wireless Lan Systems Oy Method and arrangement for maintaining and updating network element configuration in an xDSL network, and an xDSL network element
US7346911B2 (en) * 2001-01-05 2008-03-18 International Business Machines Corporation Method, system, and program for communication among nodes in a system
US20020122388A1 (en) * 2001-03-05 2002-09-05 Taher Behbehani Dynamically reconfigurable intelligent content-based network
DE10122422A1 (en) 2001-05-09 2002-11-21 Siemens Ag Method for adjusting bandwidth in a connection between two communications terminals in a data network allocates a transmission channel to the connection for transmitting data.
US7117216B2 (en) * 2001-06-07 2006-10-03 Sun Microsystems, Inc. Method and apparatus for runtime merging of hierarchical trees
US7981056B2 (en) * 2002-04-19 2011-07-19 Pelikan Technologies, Inc. Methods and apparatus for lancet actuation
US7251242B2 (en) * 2001-10-04 2007-07-31 Siemens Aktiengesellschaft Distributed transmission of traffic flows in communication networks
US8125922B2 (en) 2002-10-29 2012-02-28 Searchbolt Limited Method and apparatus for generating a ranked index of web pages
WO2004109472A2 (en) * 2003-06-06 2004-12-16 Meshnetworks, Inc. System and method to improve the overall performance of a wireless communication network
US20040264503A1 (en) * 2003-06-30 2004-12-30 Microsoft Corporation Method and system for providing a virtual protocol interlayer
US7483374B2 (en) * 2003-08-05 2009-01-27 Scalent Systems, Inc. Method and apparatus for achieving dynamic capacity and high availability in multi-stage data networks using adaptive flow-based routing
KR100772397B1 (en) * 2006-02-10 2007-11-01 삼성전자주식회사 Method and apparatus for forwarding station informaion in wireless mesh network
US8300798B1 (en) 2006-04-03 2012-10-30 Wai Wu Intelligent communication routing system and method
US7688748B2 (en) * 2006-09-22 2010-03-30 The Hong Kong Polytechnic University Methods and apparatus for ranking a node in a network having a plurality of interconnecting nodes
JP2008187359A (en) * 2007-01-29 2008-08-14 Kyocera Corp Data transmission method, data transmission management system, and data transmission path management device
US7773664B2 (en) * 2008-03-18 2010-08-10 On-Ramp Wireless, Inc. Random phase multiple access system with meshing
US9613324B2 (en) * 2008-03-28 2017-04-04 International Business Machines Corporation Apparatus and methods for decomposing service processes and for identifying alternate service elements in service provider environments
US8743740B2 (en) * 2008-04-08 2014-06-03 At&T Intellectual Property I, L.P. Methods and apparatus to implement a partial mesh virtual private local area network service
KR101001559B1 (en) * 2008-10-09 2010-12-17 아주대학교산학협력단 Hybrid clustering based data aggregation method for multi-target tracking in the wireless sensor network
JP5691543B2 (en) 2011-01-18 2015-04-01 富士通株式会社 Optical transmission equipment
US20150091909A1 (en) * 2013-09-30 2015-04-02 Alcatel Lucent Systems And Methods For Distance Approximation In Graphs
CN104301224B (en) * 2014-09-28 2017-11-03 福建星网物联信息系统有限公司 The method for routing and system of a kind of client access platforms
CN104410537B (en) * 2014-12-22 2019-10-11 上海斐讯数据通信技术有限公司 A kind of tree network topology map generalization system and its generation method
US10740702B2 (en) * 2016-01-08 2020-08-11 Oracle International Corporation Method, system, and non-transitory computer-readable medium for reducing computation time in one-to-many path searching using heuristics and limited boundary adjustment
JP2019091257A (en) * 2017-11-15 2019-06-13 富士通株式会社 Information processing device, information processing method, and program
JP6973150B2 (en) * 2018-02-13 2021-11-24 富士通株式会社 Shortest path matrix generation program, device, and method
CN110335478B (en) * 2019-07-10 2021-01-12 江苏航天大为科技股份有限公司 Cross-subarea linkage control method based on deep learning
US10904131B1 (en) 2020-07-08 2021-01-26 Eci Telecom Ltd. Systems and methods for configuring a communications network
EP4179714A1 (en) * 2020-07-08 2023-05-17 ECI Telecom Ltd. Systems and methods for configuring a communications network
US10903904B1 (en) 2020-07-08 2021-01-26 Eci Telecom Ltd. Systems and methods for configuring a communications network

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62256547A (en) * 1986-04-30 1987-11-09 Toshiba Corp Route selecting system
US5224100A (en) * 1991-05-09 1993-06-29 David Sarnoff Research Center, Inc. Routing technique for a hierarchical interprocessor-communication network between massively-parallel processors
JP2826416B2 (en) * 1992-06-05 1998-11-18 日本電気株式会社 Connection router between local area networks
US5353283A (en) * 1993-05-28 1994-10-04 Bell Communications Research, Inc. General internet method for routing packets in a communications network

Also Published As

Publication number Publication date
JPH0766834A (en) 1995-03-10
US5495479A (en) 1996-02-27
EP0637153B1 (en) 2001-10-31
EP0637153A1 (en) 1995-02-01
JP2737828B2 (en) 1998-04-08
ATE208109T1 (en) 2001-11-15
DE69331054D1 (en) 2001-12-06
DE69331054T2 (en) 2002-06-20
CA2123441A1 (en) 1995-01-31

Similar Documents

Publication Publication Date Title
CA2123441C (en) Method and apparatus for an automatic decomposition of a network topology into a backbone and subareas
JP2685069B2 (en) Network access node of communication network and method for selecting connection route in the network
CA2162491C (en) Method for efficient aggregation of link metrics
US5793765A (en) Method for selecting links in networks
US6775295B1 (en) Scalable multidimensional ring network
US5850397A (en) Method for determining the topology of a mixed-media network
EP0980191B1 (en) PNNI topology abstraction
JPH02149039A (en) Multi-cast-message distribution system
Gerstel et al. The layout of virtual paths in ATM networks
EP1393503A1 (en) Method and system for determining network characteristics using routing protocols
EP1009130A1 (en) Distributed directory services for locating network resources in a very large packet switching network
CN1254052C (en) Transmission network restraint path calculating method
US8948178B2 (en) Network clustering
US7414985B1 (en) Link aggregation
JP3184822B2 (en) Method, network apparatus and PNNI network for generating optimal PNNI compound node representation for limited cost
Bar-Noy et al. Topology distribution cost vs. efficient routing in large networks
EP1356639B1 (en) Management of protocol information in pnni hierarchical networks
Jabbari Routing and congestion control in common channel Signaling System No. 7
US7532584B2 (en) Implementation of constraints to ensure deadlock avoidance in networks
Recommendation 204 Review of Management Modeling
Tsuchiya An architecture for network-layer routing in OSI
Katz et al. SDH management network: Architecture, routing and addressing
Ince et al. Routing Methods
EP1009131A1 (en) Method and system for optimizing the end to end path selection in very large packet switching networks
Reed et al. Analysis of adaptive algorithms for an integrated communication network

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed