Dynamic bandwidth allocation mechanism between circuit slots and packet bit stream in a communication network

System for dynamically allocating circuit slots in frames which are used for exchanging bits between users connected to nodes of a communication network linked by means of medium links having transmit and receive interfaces, the frames are delimited by flags and divided into bit slots which may be used for synchronous circuit flow or asynchronous packet flow. Each node changes the flags preceding at least one frame in which at least one slot is to be added or deleted to a value including a first number of delimiting bits and a second number of bits which are coded to indicate that slot(s) is (are) to be added or deleted and the corresponding slot number sends call control packets which are propagated through the network nodes. The packets include call control information, routing information and indicating the circuit user slot number(s) to be added or deleted on specified link interfaces, and receive the call control packets and the modified flags for adding or deleting circuit user slot(s) in subsequent frames depending upon the flag value.

FIELD OF THE INVENTION 
This invention relates to a mechanism to be used in a packet/circuit 
switched transportation system for dynamically allocating the circuit 
switched slots according to the circuit user activity. 
BACKGROUND ART 
A telecommunication network is made of various nodes to which terminals are 
attached through communication controllers adapters and which are linked 
through multiplex links. 
Due to the bursty nature of most of the data to be transported packet 
switching networks have been implemented to optimize the utilization of 
the network resources. However packet transportation implies large and 
variable transit delays that cannot be suffered by some real time 
applications. The variation of the transit delay can only be compensated 
by means of additional buffers at the end users, which is costly and 
implies delays. 
On the other hand, circuit switch networks provide low constant transit 
delays, but lead to a bad utilization of the network links when bursty 
data or is to be transported through the network. 
The ISDN network (Integrated Service Digital Network) described in "I" 
series of International Telegraph and Telephone Consulative Commitee 
(CCITT) Recommendations is the present approach to circuit switching and 
packet switching integration. However the networks using the ISDN 
integration technique are not optimized for the data packet traffic since 
the bandwidth allocated to the packet traffic is channelized. 
In this type of networks which integrate the transportation of asynchronous 
(packet) data in dedicated packet bits and synchronous data such as voice 
in dedicated circuit slots there is a need to optimize the bandwith use 
allocated to asynchronous data type of users and to synchronous data type 
of users since circuit switched type of users are not always involved in a 
call. 
SUMMARY OF THE INVENTION 
In this environment an object of the present invention is to provide a 
mechanism which insures a dynamic allocation of the bandwith to circuit or 
packet switched bit users according to the user activity. 
The system according to the invention is to be used for dynamically 
allocating circuit slots in the frames which are used for exchanging bits 
between users connected to nodes of a communication network linked by 
means of medium links having transmit and receive interfaces, said frames 
being delimited by flags and divided into bit slots which may be devoted 
to synchronous circuit flow and to asynchronous packet flow. 
The system comprises in each node: 
means (20, 238, 232) for changing the flags preceding at least one frame in 
which at least one slot is to be added or deleted to a value including a 
first number of delimiting bits and a second number of bits which are 
coded to indicate that a slot(s) is (are) to be added or deleted and the 
corresponding slot number(s), 
means (418, 404) for sending call control packets which are propagated 
through the network nodes, comprising call control information, routing 
information and indicating the circuit user slot number(s) to be added or 
deleted on specified link interfaces. 
means (418, 128, 106) receiving the call control packets and the changed 
flags for adding or deleting a circuit user slot(s) in the subsequent 
frames depending upon the flag value.

DETAILED DESCRIPTION OF THE INVENTION 
The mechanism according to the invention allows circuit switched bit slots 
to be dynamically allocated in the frames which are used for exchanging 
bits between users connected to nodes of a communication network linked by 
means of medium links, said frames being delimited by f-bit flags, f being 
higher than four and the flags comprising at least two delimiting bits and 
which are divided into bits slots which may be devoted to synchronous 
circuit flow and to asynchronous packet flow according to the circuit user 
activity on a per al basis. 
For adding a new circuit slot in the frame the managing means of the 
originating node connected to the calling user sends a call request packet 
using the packet flow, said call request packet including call control 
information and the slot number to be allocated to the calling user, on 
the transmit interface of one of the node outgoing links to be used for 
reaching the destination node according to the network routing facility 
and the non delimiting bits of the opening flag of at least one of the 
subsequent frame sent on the interface as defined in the call control 
information are set to a coded value indicating that a slot is to be added 
on said link transmit interface and the slot number to be added and at 
least one circuit slot is added in the following frames. 
The node receiving this call request packet and detecting the new flag 
configuration, if not the destination node, propagates the call request 
packet to a further node, said packet being updated so as to contain the 
slot number to be allocated on a specified transmit interface of one of 
the node outgoing link to be used for reaching the destination node and 
the opening flag configuration of at least one of the subsequent frame 
sent on this specified interface is set to a value indicating that a slot 
is to be added and at least one circuit slot is added in the following 
frames. 
When the call request packet reaches the destination node, if the call may 
be accepted, the managing means in said node causes a call connected 
packet to be sent to the originator node including call control 
information and the slot number to be allocated on a specified transmit 
interface of one of the node outgoing links to be used for reaching the 
originating node and the opening flag configuration of at least one of the 
subsequent frames sent on this interface is set to a value indicating that 
a slot is to be added and at least one additional slot is provided in the 
following frames. 
The call connected packet is propagated in the network through the same 
nodes as the call request packet, until the originator node is reached, 
and slots are allocated in the transmit interfaces to be used for reaching 
said originator node, as previously described by setting the flags to 
values specifying the slot numbers to be added and by updating of the call 
connected packets in the crossed nodes. When the call connected packet 
reaches the originator node, a full duplex connection is established 
between the users which can exchange circuit switched bits in the slots 
which have been allocated thereto in the frames on the links. 
If the call request packet may not be propagated, which occurs when the 
maximum circuit slot number in the frame to be sent on one node outgoing 
link, is reached, the node sends a clear request packet to the originator 
node, on the transmit interfaces of the previously crossed node outgoing 
links, and the opening flags of the subsequent frames sent on these 
interfaces are set to a value indicating that the slots previously 
allocated have to be deleted. The clear request packet includes the slot 
number and the call control information as the one of the call request 
packet. 
The originator node receiving the clear request packet sends a clear 
confirmation packet. The clear confirmation packet is propagated back to 
the originator node of the clear request packet to confirm that the clear 
request has been received. 
When the call established according to the above procedure is to be 
released, a clear request packet is sent by one of the users in the same 
way as described above for the call request packet except that the flags 
are set to a value indicating that slots have to be deleted. This causes a 
clear confirmation packet to be sent by the other user in the same way as 
described above for the call connected packet, except that the flags are 
also set to a value indicating that slots have to be deleted. 
The originator of a call request or clear request packets is responsible of 
retrying the action if the corresponding confirmation is not received 
within a pre-defined period of time. Before describing this mechanism, a 
detailed description of a specific environment wherein it may be 
implemented will be made. 
A telecommunication network, as schematically shown in FIG. 1 comprises a 
plurality of nodes, four of which 1, 2, 3, 4 are represented. A plurality 
of circuit switched type users C and a plurality of packet switched type 
users P are attached to each node. The nodes are linked through medium 
links, the links between different nodes may operate at any speed v higher 
than u.64 kilobits per second, u being the number of circuit switched 
users. The users connected to a node share the link bandwidth in such a 
way that, at a given instant the circuit switched users exchange the non 
character coded information (NCI), such as voice, in subchannels and the 
remaining bandwidth is used for packet traffic. This is schematically 
represented in FIG. 1 by the hatched part of the links. 
The circuit type users operates at 64 kilobits per second, which 
corresponds to the presently conventional bit rate, i.e. 8 bits every 125 
microseconds. 
The transmitting adapter of each node comprises means to cause the data and 
non coded information NCI bits such as voice emanating from the packet 
switched type users and from the circuit switched type users connected to 
the node to be transmitted on the medium link in complex frames having the 
structure shown in FIG. 2. The structure of the complex frames is 
determined using the method of the present invention which comprises the 
steps illustrated in FIG. 3. 
For the sake of the explanation of the invention, the structure of the 
theoreatical complex frame is shown in FIG. 2-A. FIG. 2-B shows the 
complex frame which is generated by the means described in FIG. 6 to be 
sent on the medium link. The complex frame contains Nc or Nc+1 bits and 
has a duration equal to nT+e, T being the conventional time division 
multiplex slot which for the present time is equal to 125 microseconds, n 
being an integer equal or higher than 1 and e being lower than a medium 
link bit period, n depends upon the link speed and is calculated as will 
be described in reference to FIG. 3. 
The complex frames contain n subframes, each subframe has a duration equal 
or less than T so as to contain an integer number Ns of bits. The Ns bits 
of a subframe are allocated to the transportation of a variable number of 
circuit switched bit slots. The number of slots depends upon the user 
need, two slots are represented in FIG. 2, and the remaining bits are 
allocated to the transport of packet switched bits. 
The purpose of the mechanism of the invention is to dynamically allocate 
the circuit user bit slots to active circuit users, so that the subframe 
structure changes depending upon the circuit user activity, thus the 
number of packet data bits varies. 
The complex frames are delimited through a f-bit flag which is part of the 
R bits remaining at the end of the complex frame with R=Nc-nNs. 
In cases where R is higher than f, the r=R-f bits are filled with 
asynchronous traffic bits. 
The residual r bits, may be spread in given subframes to avoid jitter. This 
causes a variable determined number of bits Nsi to be contained in the 
subframes. This result in a different number R1 of residual bits at the 
end of the complex frame which is equal to 
##EQU1## 
As shown in FIG. 2-B, the flag is generated at the next medium link clock 
time following the nT boundaries. Then the n subframes comprising Ns bits 
and the r residual bits are sent on the medium link. 
The environment of the invention will be more specifically described 
assuming that the subframes contain a constant number of bits, and the man 
skilled in the art can easily adapt the means which will be described 
later on to provide subframes having a variable number of bits according 
to the above requirement. 
As can be seen in the hereafter table, depending upon the link speed versus 
64 kbps, the complex frames do not contain a constant number of bits, 
however the variation of the bit number Nc in consecutive complex frames 
is only equal to 1. Thus, the complex frame limit is known by the 
receiving end thanks to the flag detection and bit counting. To implement 
the mechanism according to the invention, the flag comprises two 
delimiting 2 bits, and f-2 non-delimiting bits which are used for 
synchronization purposes or which are coded to indicate that cicuit slots 
have to be added or deleted, as will be described later on. The two 
delimiting bits are set to 01 or 10. When the lowest possible number Nc of 
bits a complex frame have been counted, the two next bits are analyzed. An 
equality of these bits with the two delimiting bits of the flags, means 
that the frame contains Nc bits, if not, the frame contains Nc+1 bits. 
This is illustrated below: 
______________________________________ 
Flag 01; 
. . . XXXXX represent the frame bits which can be equal to 0 or 1 
XXXXXXX01 Frame contains Nc bits 
XXXXXXXX01 Frame contains Nc+1 bits 
I.fwdarw.bit count Nc 
______________________________________ 
Consequently, when Nc bits have been counted from the beginning of the 
opening flag the two next bits including the first bit of the next flag 
and the additional bit of the frame, if any, cannot simulate the 01 
delimiting pattern, whatever the value of this additional frame bit can 
be. When Nc bits have been counted, the detection of the 01 pattern 
indicates that the frame contains Nc bits. 
Delimiting bits equal to 10 has also the same property. 
The method which is used for configuring the complex frames at each 
transmitting ends is represented in FIG. 3. 
The speed of the medium link and the desired approximate number of bits Na 
in the complex frames determine the complex frame structure. In a specific 
configuration of the complex frames which for the present time are 
intended to be used with medium link speed lower or equal to 2.048 
megabits per second, Na is chosen equal to 256 so that the number Nc be as 
close as possible to 256 bits, in order to keep a flag overhead ratio f/Nc 
in the same range as the one used for classical TDM first order multiplex 
link. 
The method consists in calculating the link bit time which is equal to 1/v, 
where v is the bit rate on the medium link. (Step 1). 
Then the number of bits in the time division multiplex slot T is 
calculated. The number of bits Ns in each subframe is equal to the integer 
part of this number. Assuming that v is expressed in kilobits per second 
and T is equal to 125 microseconds, Ns is the integer part of the product 
125.v.10.sup.-3. (Step 2). 
Then the number n of subframes is calculated, this number is the integer 
part of the quotient Na/Ns. In the specific embodiment described in FIG. 
3, it is the integer part of 256/Ns. (Step 3). Then the residual number R 
of bits is calculated (Step 4). This number is equal the difference 
between the real number of bits comprised in T and Ns, multiplied by the 
subframe number n and can be expressed as follows: 
EQU n.(T.v.10.sup.-3 -Ns) 
This number R is compared to f, (Step 5). If it is higher or equal to f, 
the number of bits in the subframes is made equal to the value of Ns 
calculated in step 2. If not the number of bits in the subframes is made 
equal to Ns calculated in step 2 minus 1. The residual number R of bits 
corresponding to this new subframe number is calculated. 
Steps 4 and 5 are resumed as long as the residual number R is not higher or 
equal to f. 
This method also applies when it is desired to have the residual bits 
spread in the subframes. In that case the theoretical numbers Ns and R are 
calculated according to the above described method and the residual bits 
are placed in specific identified subframes and the new residual bit 
number R1 is calculated so that the r1 bits, with r1=R1-f, if any 
remaining at the end of the complex frames may be filled with asynchronous 
traffic bits. 
The following table gives the various values which are obtained according 
to the above method for four medium link speeds. 
TABLE 1 
______________________________________ 
Maximum Number of 
Medium Ns bits number of Number bits Nc or 
link per circuit n of Nc+1 in 
speed v 
sub- users sub- complex 
kbps frame at 64 kbps 
frames r f frame 
______________________________________ 
72 8 1 28 20 8 252 
132 15 1 16 16 8 264 
230 27 3 9 7 or 8 258 or 259 
8 
1.544 185 23 1 0 8 193 
______________________________________ 
FIG. 4 shows two nodes of the telecommunication network. Each node 
comprises similar means, they are referenced by the same number with a 
suffix 1 for the means in node 1 and 2 for means in node 2. Each node 
comprises medium link adapters 10 and 11 made of receiver/transmitter 
means and including the specific means which are needed to implement the 
method according to the invention. The adapters are connected to medium 
links, each link having a specific speed, so that the complex frames on 
the different links have different configurations. These frames are built 
in the transmitter means of the adapters to be sent on the links. The 
parameters n, Ns, r of the complex frames are made known to the 
corresponding receiver means, in order the received bits may be processed. 
The complex frames are shown in a schematic way on the different links. 
Two paths are provided in each node. One path CP is dedicated to the 
circuit switched bits (synchronous path) which have to be transmitted with 
constant and very short delay (&lt;500 microseconds) and the other path PP is 
dedicated to the packet switched bits (asynchronous path) which are 
bufferized and processed in packet handling means 14. FIG. 5 shows how 
packets ready to be switched could be reconstructed in the receiving node 
from the asynchronous flow made of packet bits. 
The consecutive received complex frames contain circuit user slots C1 and 
C2 for example, assuming that two circuit users are involved in a call and 
packet switcked bits P. Complex frame (m-1) contains packet bits P0, 
complex frame m contains packet bits P1, P2, P3, P4 and complex frame m+1 
contains packet bits P5. For the purpose of illustration, it is assumed 
that a packet ready to be switched: i.e. constituted of a packet header 
containing the information which is necessary to route and switch the 
packet and packet data comprising packet bits P1, P2, P3, P4 from complex 
frame m and parts of packet bits P0 and P5. 
FIGS. 6 and 7 show the specific means which are needed in the medium link 
adapters to build the complex frames. 
FIG. 6 represents the transmitting means and FIG. 7 represents the 
receiving means. For the sake of explanation, it is assumed that FIG. 6 
shows the transmitting means of a first transmitting node and FIG. 7 shows 
the receiving means of a second receiving node. It is to be understood 
that, each adapter comprises receiving and transmitting means such as 
shown in FIGS. 6 and 7. The medium access manager and the finite state 
machine are common to the receiving and transmitting means in an adapter. 
In the transmitting means, the medium link access manager 20 computes the 
link parameters according to the method of FIG. 3. It also provides event 
indications to finite state machine 32, EMG1, 2, 3, and receives signal 
SMG3 from finite state machine 32 as will be described later on in 
connection with the finite state machine diagram. The medium link access 
manager 20 provides through output bus 21 the link parameters Ns, n and 
the slot allocation to registers 22 and 24 and to slot table 26, 
respectively. Thus the slot table 26 contains an indication of the slots 
of the subframes which are allocated to circuit users. At each subframe 
generation, the slot table is read and its output 28 is used in logic 
circuit 30 to generate Packet or Circuit P or C ENABLE signals. 
The medium access protocol is managed through finite state machine 32 which 
is a logic providing control signals when specific events occur. The 
operation of this machine will be detailed later. It is connected to three 
lines 33, 34 and 35 from the associated receiving means, said lines 
carrying the RECEIVED IDLE PATTERN, RECEIVE SYNCHRO REQUEST and the 
RECEIVE LOST SYNCHRO signals respectively and to output bus 21. Depending 
upon the received events it generates on its output lines 38, 39, 40, 41 
control signals DISABLED, SEND SYNCHRO PATTERN, SEND SYNCHRO REQUEST and 
OPERATION respectively. 
Bit counter 44 working under control of a clock 48 operating at the medium 
link speed counts the bits and the subframes. Counter 46 counts the 
subframes. The contents of counters 44 and 46 are compared with the Ns and 
n registers 22 and 24 by comparators 47 and 49. The output 50 of 
comparator 47 is provided to subframe counter 46 so as to cause this 
counter to be incremented each time an equality is detected by comparator 
47. 
Outputs 50 and 51 of the comparators, output 28 of slot table 26 are 
provided to logic 30 to generate the P ENABLE, C ENABLE and FLAG ENABLE 
signals at the correct times to build the complex frame as shown in FIG. 
2-B. 
Logic 30 also receives the OPERATION control signal from finite state 
machine 32. Flag and r sending logic control circuit 56 working under 
control of T-pulse counter 57, medium link bit clock 48 and outputs 50 and 
51 of comparators 47 and 49 allows specific patterns to be sent on the 
medium link at given instants under control of the signals on output lines 
39, 40 and 41 of finite state machine 32. It also provides a reset counter 
signal on its output line 58. Output line 58 and output lines 50 and 51 of 
comparators 47 and 49 are provided to OR circuits 52 and 54 which provide 
the reset signal to bit and subframe counters 44 and 46 respectively. 
Circuit 56 also generates on output line 60, a r sending control signal 
which is provided to logic 30 so as to cause the r residual packet bits to 
be sent on the medium link in order to generate the complex frames as 
described in reference to FIG. 2-B. 
The different flags are generated by circuit 56 on output lines 62, 64 and 
66. As will be described later on, different flags have to be sent at 
given times. In a specific embodiment, O1111110 is the normal complex 
frames delimiter, abort flag 01111111 is used to request the 
synchronization and UCC flag is used for indicating to the receiving means 
that a circuit user is added or deleted, according to the present 
invention. 
Consequently generator 56 generates the medium 01111110 flag under control 
of OPERATION and SEND SYNCHRO PATTERN signals on lines 41 and 39 from 
finite state machine 32. 
Circuit 56 generates the specific 01111111 flag under control of SEND 
SYNCHRO REQUEST line 40 from finite state machine 32. 
Circuit 56 generates the USER CIRCUIT CHANGE pattern UCC which is used for 
changing the user slots in the subframes. This pattern is changed under 
control of the medium access manager 20, so that circuit 56 receives the 
pattern to be generated on bus 21. 
The flag outputs 62, 64 and 66 of circuit 56 are provided to OR circuit 72. 
Circuit 56 also generates a flag sending control signal on line 68 which is 
provided to logic 30 and which is also used during the initialization 
period to prevent the idle 111 . . . 11 configuration from being sent on 
the medium link during the flag sending period as will be detailed later 
on. 
Circuit 56 generates a next slot signal on line 70, which is provided to 
the slot table to cause the table to be scanned in order to have the P or 
C indication to be provided to logic 30 through output line 28 of slot 
table 26. 
The packet user bits from path PP and the circuit user bits from path CP or 
the specific patterns from the output of OR circuit 72 are transmitted on 
medium link 96 at specific instants to build the complex frames through 
AND gates 74, 76 and 78 and OR gate 80. AND gate 74 receives the P ENABLE 
signal from output line 84 of logic circuit 30 and the packet switched 
bits from PP path. AND gate 76 receives the C ENABLE signal from output 
line 86 of circuit 30 and the circuit switched bits from path CP. AND gate 
78 receive the FLAG ENABLE signal from output line 88 of circuit 30 and 
the specific flag patterns from output of OR circuit 72. 
The outputs of AND gates 74, 76 and 78 are provided to OR circuit 80. The 
output of OR circuit 80 is provided to AND gate 81 which is conditioned 
when the medium link clock signal is positive, for example. The output of 
AND gate 81 set latch 83 which is reset when the medium link clock signal 
is negative. Thus latch 83 provides on its output the bit to be 
transmitted on the medium link 96. OR circuit 82 receiving the DISABLED 
signal from output line 38 of finite state machine 32 has its output 
connected to OR circuit 80, so that the idle configuration 11 . . . 1111 
is sent on the medium link 96 through AND gate 81 and latch 83 when the 
DISBLED signal is active. 
AND gate 94 receiving the OPERATION signal from line 41 inverted by 
inverter 92 and the flag sending control signal from line 68 of circuit 
56, has its output connected to OR circuit 82 to send the all mark 111 . . 
. 111 configuration on medium link 96 during the initialization period, 
between flags. 
An embodiment of circuit 56 will be described in reference to FIG. 8. 
The receiving means shown in FIG. 7 will now be described, so that the 
operation of the transmitting means will be explained in connection with 
the operation of the receiving means. 
In the receiving means which is assumed to be in the adapter of the second 
node to be linked to the first node comprising the transmitting means 
described in reference to FIG. 6, the adapter medium access manager 100 is 
represented. 
The finite state machine 101 of the adapter is also schematically shown in 
FIG. 7, only OPERATION output line 103 which is needed for the receiving 
operation is represented. 
The link parameters have to be known from the receiving means. They may be 
transmitted from the transmitting means or may be calculated in the 
receiving means. In a specific embodiment, they are found in the receiving 
means by consulting tables containing the correlation between Nc and the 
desired parameters values Nc being the number of bits received between two 
flags during the initialization period, i.e. being an indication of the 
link speed. 
The medium link parameters are loaded in Ns-register 102, n-register 104 
and slot table 106 through output bus 101. 
The receiving means also comprises a bit counter 108 and a subframe counter 
110. Bit counter 108 works under control of medium link clock 112. 
Comparator 114 compares the content of counter 108 and Ns-register 102 and 
comparator 116 compares the content of counter 110 and n-register 104 so 
as the generate signals on their output lines 115 and 117 which are active 
when an equality is detected. Output lines 115 and 117 are connected 
together with the output line 119 of slot table 106 to logic circuit 118. 
Logic circuit 118 generates P ENABLE or C ENABLE signal on output lines 
120 and 122 respectively. 
The detection of an equality by comparators 114 and 116 causes counters 108 
and 110 to be reset. 
The received bits on medium link 96 are provided to two AND gates 124 and 
126 by means of 8-bit shift register 127. AND gates 124 and 126 are 
conditioned by the P ENABLE and the C ENABLE signals on lines 120 and 122 
respectively. Their outputs are provided to the packet switched bit 
handling facility of the receiver and to the circuit switched bit handling 
facility, where the packet and circuit switched bits are processed in the 
conventional way. These facilities are not described since they are not 
the subject of the invention. 
The received bits are also provided to circuit 128. Circuit 128 comprises 
means 128-1 for detecting the flags and counting the bits in the complex 
frames. In normal mode of operation, i.e. after the initialization period, 
"r Received" output line 130 of circuit 128 is activated so as to cause 
the P ENABLE signal at output of logic 118 to be activated so that the r 
residual bits are provided to the packet switched bit handling facility 
through AND gate 124. 
It also detects the UCC flags which are transmitted to the slot table 
through bus 132 in order the receiving means take into account the circuit 
user change transmitted by the transmitting means and generates the RCV 
UCC signal on line 136 and the next slot signal on line 137 which causes 
the content of slot table 106 to be scanned to cause the P and C ENABLE 
signals to be activated according to the subframe configurations. 
Circuit 128-1 generates a reset CTR signal on line 138 which is provided to 
OR circuits 140 and 142. The outputs of comparators 114 and 116 are also 
provided to OR circuits 140 and 142 whose outputs control the resetting of 
counters 108 and 110. 
The function of shift register 127 is to delay the received bits in such a 
way that the flag detection may be performed in circuit 128. 
Circuit 128 detects the flags in the received bits and from this flag 
detection and the counting of bits, part 128-2 detects when the 
synchronization is lost to generate the RCV LOST SYNCHRO and RCV SYNCHRO 
REQUEST on lines 35 and 34. It also detects the all mark 11 . . . 111 
received bit stream to generate the RCV IDLE signal on line 33. These 
three signal are sent to the transmitting means as shown in FIG. 6. 
A specific embodiment of part 128-1 will be described in reference to FIG. 
9. 
The operation of the transmitting and receiving means will now be 
described. Through the framing of the medium complex frame, the adjacent 
medium access elements are able to exchange status information and 
signals. 
The different states are the following: 
DISABLED: send idle pattern, i.e. 111 . . . 1111 
ENABLED: send SYNCHRO (01111110) or SYNCHRO REQUEST (01111111) at 
transmitting end and SEARCH FOR RECEIVE SYNHRO at receiving end, 
SYNCHRONIZED: receive SYNCHRO without SYNCHRO REQUEST & send SYNCHRO 
without SYNCHRO REQUEST 
OPERATIONAL: send/receive normal frame; send/receive User Circuit Change 
UCC 
The finite state machine generates signals which depend upon the occurence 
of events. There are two kinds of signals and events, namely the medium 
access manager events and signals and the medium link events and signals. 
MANAGER EVENTS AND SIGNALS 
EVENTS: 
EMG1: Load transmit medium access parameters Ns, n 
EMG2: Load receive medium access parameters 
EMG3: Add circuit user 
SIGNALS: 
SMG1: User Circuit Change UCC 
MEDIUM EVENTS AND SIGNALS 
EVENTS: 
EMD1: Receive idle, i.e. all mark 
EMD2: Receive SYNCHRO REQUEST, i.e. 01111111 in place of flag 
EMD3: Receive LOST SYNCHRO if not 01XXXXXX every medium frame 
EMD: Receive UCC, i.e. 010CXXXX in place of flags where 01 are the two 
delimiting bits of the flags and the following 0 indicates a circuit user 
change, C=0 means delete and C=1 means add and XXXX means the user number 
from 0000 to 1111. If there are more than 16 circuit users, the user 
number to be added or deleted is encoded in two consecutive frames. In 
that case, in the first coding frame UCC value 010C1111 indicates that the 
circuit user number is encoded on two consecutive frames, said number 
being equal to 1110 plus the value in the opening flag of the following 
frame. 
EMD5: receive normal frame 
EMD6: receive SYNCHRO PATTERN: normal flag 01111110 with ones between the 
flags 
SIGNALS: 
SMD1: Send idle 
SMD2: Send SYNCHRO REQUEST 
SMD3: Send SYNCHRO PATTERN 
SMD4: Send normal frame 
SMD5: Send circuit user change 
The medium access protocol is managed according to the following state 
diagram through the finite state machine. 
##STR1## 
The operation of the transmitting means and receiving means located at both 
ends of a medium link between two nodes 1 and 2 will now be described. 
Before an exchange is established between the two nodes, an initialization 
period is required for synchronization purposes. This initialization 
period encompasses the states DISABLED, ENABLED and SYNCHRONIZED as 
described in the state diagram. 
From the node power on reset, the following operations are performed: 
The idle configuration corresponding to all marks i.e. 11 . . . 111 is sent 
by the transmitting means in node 1 and transmitting means in node 2 which 
are in the disabled state. In that state the disabled signal is active and 
OR gate 82 provides the idle pattern to the medium link 96. 
The medium access manager in node 1 adapter loads the medium link 
parameters in n and Ns registers 24 and 22 of transmitting means. 
Then, the transmitting means generates through flag and r sending control 
circuit 56: 
1-synchro pattern without synchro request if synchro not lost, (SMD3), i.e. 
##STR2## 
2-synchro pattern with synchro request if synchro lost, (SMD2), i.e. 
##STR3## 
During this initialization period, P ENABLE signal is active so that all 
the bits between the flags are handled as packet switched bits. The number 
of bits between flags is an indication of the link speed which is used in 
the receiving means to get the Nc receiving parameter. 
The 1 at the end of the flags indicate that synchro is requested at the 
receiving end. 
When the node 1 transmitting means detects that the SYNCHRO REQUEST line 34 
is no more active which mean that synchro is no longer requested receiving 
means in node 2, the transmitting means in node 1 stop the synchro pattern 
generation and may switch from continuous flag sending at n.T boundaries 
(SMD3) to normal or UCC flag sending (SND4&SMD5). This corresponds to the 
state OPERATIONAL as defined in the state diagram. 
The UCC flags which are thus transmitted are used in the receiving means 
for loading slot table 106. 
If no UCC change is received from medium access manager the normal flag is 
sent instead of the UCC flag. 
The link parameters computed by consulting tables containing the parameters 
as a function of Nc, are loaded in registers 102 and 104 of receiving 
means in node 2. 
While in operational state, all mark bits are sent in the frame between the 
flags by nodes 1 and 2, till one of the nodes has something to transmit. 
At that time, the slot table 26 in the transmitting means of the node 
having something to transmit is loaded according to the active circuit 
user configuration. 
In the receiving means, the slot table 106 is loaded through the UCC 
detection in circuit 128. 
Then, the complex normal frames built according to the method of the 
invention are exchanged between the two nodes. Comparators 47 and 49 
detect the end of the subframes and of the n subframes in the complex 
frames. This detection and the scanning of the slot table causes P, C and 
F ENABLE signal to be activated through gating logic 30 to build the 
complex frames as shown in FIG. 2-B. 
In reference to FIGS. 8, 9 and 2-B, it will now be described how the flags 
and the r residual bits are generated and received. 
In circuit 56, counter 57 counts the T (125 microseconds) periods, the 
T-pulse count at the output of counter 57 is compared with the n value 
provided by register 24 by comparator 200. Comparator 200 provides an 
active signal when an equality is detected, this active signal indicating 
a nT boundary. When a nT boundary is detected, latch 202 is set. The 
output of latch 202 and the output of medium link clock 48 are provided to 
AND gate 204. The output of gate 204 sets FLAG latch 206 which thus 
provides on its output 68 the FLAG SENDING control signal which is active 
at the bit clock time following a nT boundary. Latches 202 and 206 are 
reset by the signal on line 208 at the output of comparator 210. 
Comparator 210 compares the content of flag or slot bit counter 212 which 
counts modulo eight the medium bit clock from 48, with eight. This counter 
is rest at the medium link clock pulse following a nT boundary or at the 
eight-modulo bit boundary through OR gate 214 by connecting output of 
comparator 210 to one OR gate 214 input. The other input of OR gate 214 is 
connected to the output of AND gate 204 to provide the reset signal on its 
output 216. 
Output 208 of comparator 210 is connected to the rest input of latches 202 
and 206 in order to reset the latches on the eight-bit boundaries so as to 
provide on output 68 of latch 206 a FLAG SENDING control signal which is 
active during the eight-bit flag periods. 
Comparator output line 208 and FLAG SENDING control line 68 are provided to 
AND gate 218 which thus provides the reset signal for Ns and n counters 22 
and 24, on line 58. This signal is active at the end of the flag sending 
period, so that counters 22 and 24 are reset to zero in order to initiate 
the bit and subframe counting from that time. 
The FLAG SENDING signal on line 68 is provided to frame counter 220 which 
is a one-bit counter providing an indication that the sent frame number is 
even or odd. This indication is required for sending normal flag or UCC 
flag alternatively. 
Latch 224 is set at the n subframes boundary which is detected when 
comparator 49 detects an equality and provides an active signal on line 51 
and is reset when the flag sending period begins which is detected by 
comparator 200. Thus the output of comparator 200 is provided to the reset 
input of latch 224, which is thus set during the r sending period and 
provides the r sending control signal on output 60, see FIG. 2-B for r 
sending period. 
AND gate 226 is connected to the output 208 of comparator 210, to FLAG 
SENDING PERIOD line 68 through inverter 228 and to the output 60 of latch 
224 through inverter 230. Thus AND gate provides an active output signal 
on its output 70 at the eight-bit boundaries when FLAG SENDING and r 
SENDING control signals are inactive. Thus AND gate 226 provides on line 
70 the NEXT SLOT control signal which is used for scanning slot table 26. 
The flag patterns 01111110 and 01111111 are contained in shift registers 
228 and 230 and the UCC flags are loaded in shift register 232 from bus 
21. The two most right bits of shift register 232 are set to 10 and the 
other bits indicates either the user change, if any, or are set to 011111 
if no user change is requested. 
This shifting of registers 228, 230 and 232 is performed under control of a 
logic circuit comprising AND gates 234, 236 and 238. These AND gates are 
conditioned by the FLAG SENDING signal on line 68 and by the medium bit 
clock signals from 48. 
AND gate 234 provides an active shifting output signal when its third input 
240 is activated by means of OR gate 242 and AND gate 246. AND gate 246 
provides an active signal to one input of OR gate 240 when the OPERATION 
line 41 from finite state machine 32 is activated and when the output of 
frame counter 220 is at a first value corresponding to an odd frame 
number, for example. The second input of OR gate receives the SEND SYNCHRO 
PATTERN signal from output line 39 of finite state machine 32. 
When these conditions are met, the normal 01111110 flag in register 228 is 
provided on line 62 to be sent by AND gate 78 (FIG. 6) on medium link 96. 
AND gate 236 provides an active shifting output signal during the flag 
sending period when the SEND SYNCHRO REQUEST signal on line 40 from finite 
state machine 32 is activated. Thus during this period the abort flag 
01111111 is provided to AND gate 78 (FIG. 6) to be sent on medium link 96. 
AND gate 238 provides an active shifting output signal during the flag 
sending period when AND gate 248 is activated i.e. when the OPERATION 
signal on line 41 from finite state machine 32 is active and when frame 
counter 220 indicates an even frame number. Thus during this period, the 
UCC flag is provided to AND gate 78 to be sent on medium link 96. 
FIG. 9 represents part 128-1 which performs the flag handling and generates 
the control signal which allows the P- ENABLE line 120 to be activated 
when the r residual bits are received. 
It comprises circuit 300 which detects the flag configuration during the 
initialization period i.e. when the OPERATION signal 103 from finite state 
machine 101 is not activated. Circuit 300 comprises one-counter 302 which 
counts the ones in the received bit stream. Received bit stream from link 
96 is provided to AND gate 310 which also receives the medium link clock 
signal from 112. The output of AND gate 310 is provided to the one counter 
302. Counter 302 content is compared with six in comparator 304 so that 
when six consecutive ones are found in the received bit stream output 306 
of comparator is activated and counter 302 is reset. 
The output 306 of comparator 304 is provided to AND gate 312 which also 
received the bit stream on link 96 inverted in inverter 314 and the 
OPERATION signal from line 103 inverted in inverter 316. Thus AND gate 312 
provides on its output line 318 a eight-bit flag detect signal which is 
activated during the initialization period when six consecutive ones 
followed by a zero are received. 
The value Nc or Nc+1 of the complex frame bits is found during the 
initialization period by means of medium bit counter 320, Nc/Nc+1 register 
322, comparator 324 and AND gates 326. Counter 320 counts the medium link 
clock pulses from 112 and is reset by Ns and n counter reset signal from 
line 138. The content of counter 320 is gated by AND gate 326 when signal 
on line 318 is activated, in register 322. Consequently register 322 
contains the number of complex frame bits between two flags. 
The medium access manager loads the parameters calculated from Nc/Nc+1 and 
then becomes operational. 
Then, register 322 content is compared with medium bit counter content in 
comparator 324, which provides an output signal on line 328 which is 
activated when medium bits counter 320 reaches the value recorded in 
register 322. This active signal set latch 330 which controls the 
detection of the 01 first bits of the received flag. 
The output line 332 of latch 330 is provided to AND gate 334 to which is 
also provided the received medium bit from link 96 and the last received 
medium bit taken in register 127 (FIG. 7) and inverted in inverter 336. 
Consequently AND gate 334 provides an output signal on line 338 indicating 
that the 01 delimiting configuration of the flag has been received. This 
signal is used to preset at 2, slot bit counter 340. Slot bit counter 
counts the slot bits and its content is compared to 8 in comparator 342. 
Output line 344 of comparator 342 is activated when an equality is 
detected which indicates a 8-bit medium link boundary. Counter 340 is 
reset by the output of OR gate 346 which receives the 8-bit flag detect 
signal on line 318 and the 8-bit medium link boundary signal on line 344. 
Latch 348 is set by the 2-bit delimiting pattern of the flag received 
signal on line 338 and reset by the 8-bit medium link boundary signal on 
line 344, so that it remains set during six bit period after the detection 
of the 01 delimiting pattern of the flag. 
The output line 340 of latch 348 is provided to AND gate 352 which also 
receives the output line 344 of comparator 342. Thus the output signal of 
AND gate 352 is activated so as to provide the n and Ns counter reset 
signal on line 138 during the flag detection period. 
Latch 354 is set by the signal on line 138 and is reset by the 8-bit medium 
link boundary signal 344 and provides to logic 118 in FIG. 7 the FLAG/UCC 
period signal on line 134 which is activated during eight bit period 
following the last bit of the flag. This signal is needed to compensate 
the delay of the received bit stream introduced by shift register 127 in 
FIG. 7. 
During the six bit period following the 01 delimiting configuration of the 
flag, the received medium bits are shifted in register 356 through AND 
gate 358 the inputs of which are connected to link 96 and to output line 
350 of latch 348. Output bus 132 of UCC register 356 is provided to medium 
access manager 100 and used to update slot table 106. 
Output 350 of latch 348 provides the receive UCC signal on line 136 which 
is provided to logic 118 of FIG. 7 corresponding to the event EMD4 of 
finite state machine diagram. 
AND gate 360 receives the 8-bit medium link boundary signal on line 344, 
the flag detection period signal on line 350 inverted by inverter 362 and 
the r received signal on line 130 inverted in inverter 366 and provides on 
its output line 137 the NEXT SLOT signal used for scanning slot table 106 
in FIG. 7. 
The r received signal on line 364 is provided by latch 368 which is set 
when comparator 117 detects an equality and is reset by the reset signal 
on line 138. Consequently this latch is set so as to activate the P ENABLE 
line 120 for gating the r residual bits to the packet path PP. It will now 
be described how the bandwidth is allocated as a function of the circuit 
user activity according to the present invention. 
During the initialization phase, once the transmitting and receiving ends 
are set into the operational state, i.e. once the parameters are loaded 
into the transmitting and receiving parameter registers, all bits which 
are transmitted between two flags are interpreted as packet switched bits 
until circuit user slots are established. These bits are coded and decoded 
by the ends as a normal HDLC channel. They constitute an HDLC string 
having a conventional format. Each HDLC frame contains a packet and the 
two first bytes of the data field of the packet contain a logical channel 
number LCN as defined in the CCITT recommendation X.25. This LCN value is 
set at 0 to indicate that the corresponding packet is a control packet 
used for managing a call in the network. This constitutes a logical 
control channel similar to the "D" channel of ISDN. The packets having 
their LCN values different from 0 are used for other flow including the 
data flow. 
The packet types are those defined by the X25 protocol, for example 
Call request 
Call connected 
Clear request 
Clear confirmation 
FIG. 10 represents two adjacent nodes in a network, one medium link 
comprising transmit and receive legs is represented between the two nodes. 
However, other medium links connecting said nodes with other nodes in the 
network are in fact provided as schematically shown in FIG. 1. FIG. 10 
shows more specifically the protocols and interfaces defined in the system 
according to the invention. Medium interface 400 defines the medium 
complex frames. Medium access interface 402 defines the commands used by 
the medium access manager to control the medium access elements such as 
shown in FIGS. 6 and 7, to add or release circuit switch bandwidth by 
direct action on the complex frame. 
Medium configuration control MCC interface 404 defines the format of the 
messages i.e. packet bits circulating on logical channel 0 (LCN=0) that 
are the control packets as explained above. 
Circuit switched function interface 406 defines the commands to the circuit 
switching function 408 in order to synchronize this function with the 
medium configuration. For this purpose, circuit switch function 408 
comprises two switching tables 409. These tables are updated by service 
manager 412 through interface 406 so as to correlate the complex frame 
slot number on the receive leg of an input link of the node to the complex 
frame slot number on the transmit leg of the output link which is used for 
routing the call packets. In the end nodes i.e. originator and destination 
nodes, the switching tables correlate the circuit user number with one 
link and incoming and outgoing slots on this link. 
Packet switched function interface 410 defines the necessary commands and 
signals between the service manager 412 and the packet switched function 
414 in order to manage the packet flow including the data and control 
packet flows. 
Network service interface 416 defines the messages exchanged between the 
system manager 418 and the network service function which includes the 
configuration service, the directory service, the measurement service and 
the maintenance service. There are two kinds of protocols, namely the 
medium access protocol MAP that describes the exchanges over the medium at 
medium complex frame level and which has been described in connection with 
FIGS. 6 and 7 and the service manager protocol SMP that describes the 
exchanges between two system managers. 
The residual clear channel is configured inside the complex frames built as 
described above, to carry bit packets using the virtual circuit/ logical 
channel number VC/LCN of the X25 protocol for example. 
As already explained, the LCN=0 is reserved and the packet circulating on 
this LCN are routed to the system service manager 418, as a network 
service communication channel used in cooperation with the metwork 
configuration services. This channel is schematically shown as the 
configuration service channel CSC in FIG. 10. 
FIG. 11 shows the call set up flow through a system node in a specific 
case. It is assumed that circuit user X connected to originator node A 
wants to establish a call with circuit user Z connected to destinator node 
C, through intermediate node B. Service manager 412 in node A causes the 
call initiation phase to be entered. During this phase using the 
asynchronous packet flow (LCN=0), a call request packet is sent by the 
originator node A to node B. This packet includes the called number and 
potentially the calling number, information indicating that a circuit 
switched call is to be established and the slot number assigned to user X 
on the incoming leg of link L1 connecting node A to node B. The opening 
flag of the subsequent complex frame generated by the transmitting means 
in node A is set to a value 0101"xx", indicating that a circuit user is to 
be added and that slot number "xx" is assigned to it. For example if the 
complex frames contained 2 circuit slots, slot 3 is assigned to user X in 
the subsequent transmitted complex frames. The slot table of the 
transmitting means in node A is updated. The decoding by node B of this 
new UCC flag indicates to node B, the complex frame from which the change 
is effective. 
Node B service manager waits for the two correlated information: call 
request packet and UCC flag 0101"xx" to determine whether it is the 
desination node or whether the call request packet has to be propagated to 
another node found as usual in a network by consulting routing tables. 
If node B is, as assumed, an intermediate node the service manager in node 
B checks whether a circuit user slot may still be allocated in the complex 
frame to be generated on the outgoing leg of the medium link L2 between 
node B and destination node C. If yes, the call packet is propagated to 
node C, said call packet including the called number, information 
indicating that a circuit switched call is to be established and the slot 
number "yy" assigned to user X in the complex frame generated from B 
toward C on link L2. The slot table in the transmitting means attached to 
the medium link L2 between B and C is updated and flag UCC in the 
subsequent frames transmitted on this link is set to 0101"yy", where "yy" 
indicates the slot number assigned to user X on this link. 
Receiving means in node C attached to this link receives the so generated 
complex frames. The node C service manager determines that destination 
user Z is attached to this node and sent to node B a call connected packet 
indicating that slot "zz" is assigned in the complex frame to be generated 
from node C toward node B, to user Z. The UCC flag is set to 0101"zz". 
Detection in node B of the call connected packet and correct correlation 
with the flag 0101"zz" causes the call connected packet to be propagated 
to node A, the slot table in the node B receiving means controlling the 
medium link L2 between C and B is updated. 
The call connected packet is propagated by node B to node A on the link L1. 
Service manager in node B assigns slot "tt" to user Z and the UCC flag in 
the subsequent frames generated by node B transmitting means controlling 
the link L1 between B and A is set to 0101"tt". 
Detection in node A of the call connected packet and of flag 0101"tt" 
causes receiving slot table of the link L1 between node B and A to be 
updated and completes the call initiation and call completion phases. 
The switching tables in each node are updated when the call control 
packets: call request packet and call connected packet are pro[agated 
through the node so as to contain the correlation between the slot number 
on the incoming link with the identification of the outgoing link and slot 
number on this link. For example in node B, the switching slot tables keep 
track of the correlation between "xx" on link L1 and "yy" on link L2 and 
of "zz" on link L2 and "tt" on link L1. 
The call control packets may have to be propagated through several 
intermediate nodes depending upon the routing capabilities in the network. 
The sames operations as described above are performed in each node. 
If it were found in one of the intermediate node that a circuit user slot 
may not be allocated, this occurs when there is no more bandwidth 
available for circuit users, a clear request packet is sent by this 
intermediate node to the originator node. 
In case node B were not an intermediate node, but the destination node, the 
call connected packet or the clear packet as the case may be is directly 
sent by node B to node A with the flag 0101"tt" correlated to the call 
connected packet. 
When the call initiation phase and the call completion phases as described 
above are completed, a new full duplex circuit referenced by the slot 
numbers exists between nodes A and C. The bandwidth used to carry these 
slots has been removed from the asynchronous flow. 
Consequently, the complex frames must at any time include some bits 
dedicated to the asynchronous flow. It is the responsability of the node 
service manager to determine the minimum bandwidth that must remain 
available for the asynchronous flow. In fact the call control packets are 
sent using these bits in as many complex frames as required to transmit 
them. Whenever this minimum number is reached, attempt to establish an 
additional circuit slot is rejected (clear phase) 
The same mechanisms as those described above in connection with the call 
initiation and call completion phases are used for the clear initiation 
and clear completion phases for deleting the circuit user slots, except 
that the C flag bit is set to 0 instead of being set to 1 and the call 
request packet is replaced by a clear request packet and the call 
connected packet is replaced by a clear confirmation packet. 
The establishment of a circuit connection between two nodes may involve up 
to four different links in the most general case instead of unique link L1 
as shown in FIG. 11, namely: 
first incoming link transporting the call request packet, in this case the 
call control information comprises in addition to the slot number, the 
called number, the calling number and the identification of a second link 
on which the circuit slot is to be established. 
third outgoing link transporting the call connected packet, in this case 
the call control information comprises in addition to the slot number, the 
called number, the calling number and the identification of a fourth link 
on which the circuit slot is to be established. 
Although the mechanism of the invention has been described in the specific 
environment wherein the complex frames have the structure shown in FIG. 2, 
the man skill in the art may implement it so as to add or delete circuit 
user slots in frames having different configurations.