`Sourani
`
`USOO6631132B1
`US 6,631,132 B1
`Oct. 7, 2003
`
`(10) Patent No.:
`(45) Date of Patent:
`
`(54) URGENT PACKET TRANSMISSION
`
`(75) Inventor: Sason Sourani, Hod-Hasharon (IL)
`
`(73) Assignee: VERAZ Networks Ltd., Petach-Tikva
`(IL)
`
`( c: ) Notice:
`
`Subject to any disclaimer, the term of this
`past isis'', adjusted under 35
`
`a --
`
`y U dayS.
`
`6,154.459 A * 11/2000 Wicklund ................ 370/230.1
`6.256,315 B1 * 7/2001 Barbas et al. ............... 370/412
`6,272,109 B1
`8/2001 Pei et al. .................... 370/230
`6,411,617 B1
`6/2002 Kilkki et al. ............... 370/353
`6,466.578 B1 * 10/2002 Mauger et al. .......... 370/395.3
`6,466.580 B1 * 10/2002 Leung ........................ 370/412
`6,487,171 B1 * 11/2002 Honig et al. ................ 370/235
`2001/OO15985 A1
`8/2001 Van Grinsven et al. ..... 370/471
`FOREIGN PATENT DOCUMENTS
`O 684 719
`11/1995
`EP
`* cited by examiner
`
`Primary Examiner Douglas Olms
`Assistant Examiner Van Nguyen
`(74) Attorney, Agent, or Firm-Fenester & Company
`
`(21) Appl. No.: 09/411,287
`(22) Filed:
`Oct. 4, 1999
`(51) Int. Cl. ................................................ H04L 12/56
`(52) U.S. Cl. ....................... 370/389; 370/428; 370/471;
`370/473; 370/474; 370/392
`ABSTRACT
`(57)
`(58) Field of Search .................... 370/395.42, 389-392,
`370/471-474, 428 A method of transmitting packets from a transmitter to a
`g p
`receiver. The method includes providing a first packet
`including a header, transmitting a leading part of the first
`References Cited
`R O i s SR the Eis R t S. t
`U.S. PATENT DOCUMENTS
`eading part not Including a neader Separale Irom line neader
`of the entire packet, and transmitting a Second packet on the
`5,497,371 A 3/1996 Ellis et al.
`5: A : "... yatt - - - - - - - - - - - 376. link after the leading part of the first packet was transmitted
`- Y -
`la C al. . . . . . . . . . . .
`5,802,051 A * 9/1998 Petersen et al. ....... 370/395.42
`and before a remaining part of the first packet was trans
`5,870,394 A * 2/1999 Oprea ........................ 3700
`mitted.
`5.956,341 A 9/1999 Galand et al. .............. 370/412
`5.999,534 A * 12/1999 Kim ...................... 370/395.42
`
`(56)
`
`2
`
`25 Claims, 4 Drawing Sheets
`
`2O N
`
`25
`
`URGENT
`INPUT
`BUFFER
`
`
`
`
`
`INPUT
`BUFFER
`
`24'
`
`OUTPUT
`BUFFER
`
`
`
`URGENT
`OUTPUT
`BUFFER
`
`
`
`INTERRUPT
`HANDLER
`
`LOW LAYER
`UNIT
`
`
`
`EX 1005 Page 1
`
`
`
`U.S. Patent
`
`Oct. 7, 2003
`
`Sheet 1 of 4
`
`US 6,631,132 B1
`
`zç–No.HAVI MOT
`
`, 79
`
`W3C]OW
`
`— —
`
`
`
`
`
`
`
`99C
`
`?JETONWH
`
`EX 1005 Page 2
`
`
`
`U.S. Patent
`
`Oct. 7, 2003
`
`Sheet 2 of 4
`
`US 6,631,132 B1
`
`START
`
`re- IS THERE AN
`TRANSMIT URGENT
`PACKET
`URGENT PACKET
`N ByFEER
`NO
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`INSERT INTERRUPT
`NDICATION BITS
`
`STORE CONTROL DATA
`OF CURRENT PACKET
`ON STACK
`
`TRANSMIT URGENT
`PACKET
`
`
`
`
`
`72
`
`---
`
`74
`
`RETRIEVE CONTROL DATA
`FROM STACK
`
`TRANSMIT FIRST PART
`OF REGULAR PACKET
`
`TRANSMIT PACKET BITS
`UNTIL NEXT STOP POINT
`
`TRANSMISSION
`OF PACKET
`COMPLETED2
`
`64
`
`RECEIVED
`URGEN, PACKET
`
`NO
`
`66
`
`INSERT "NO INTERRUPT'
`INDICATION BITS
`
`FIG.2
`
`EX 1005 Page 3
`
`
`
`U.S. Patent
`US. Patent
`
`Oct. 7, 2003
`Oct. 7, 2003
`
`Sheet 3 of 4
`Sheet 3 0f 4
`
`US 6,631,132 B1
`US 6,631,132 B1
`
`s
`X
`
` Nv
`
`Z7
`
`07
`
`o¢\\
`
`HEB
`
`BEAWVVSf?
`7777
`
`L1»
`
`9797
`©¢EV
`
`
`
`Dowoflgofluflwgmflu
`
`9797 |
`owoloowg
`9»m;
`
`EX 1005 Page 4
`
`QUE
`
`EX 1005 Page 4
`
`
`
`U.S. Patent
`
`Oct. 7, 2003
`
`Sheet 4 of 4
`
`US 6,631,132 B1
`
`START
`
`RECEIVE BITS UNTIL STOP POINT
`
`REMOVE INSERTED SET OF BITS
`
`84
`
`RECEIVED
`SET OF BITS
`INDICATES
`INTERRUPT
`
`YES
`
`SAVE CURRENT PACKET ON STACK
`
`RECEIVE INTERRUPTING PACKET
`
`RETRIEVE PACKET FROM STACK
`
`82
`
`86
`
`88
`
`9 O
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG.4
`
`EX 1005 Page 5
`
`
`
`1
`URGENT PACKET TRANSMISSION
`
`US 6,631,132 B1
`
`FIELD OF THE INVENTION
`The present invention relates to communication networks
`and particularly to packet based networks which accommo
`date packets of various priorities.
`
`BACKGROUND OF THE INVENTION
`Messages transmitted from a Source to a destination over
`a packet based network are broken up by the Source into
`packets which are Sent to the destination independently of
`each other. A header is annexed to each packet. The header
`identifies the packet providing, among other information, the
`Source and destination of the packet, the length of the packet,
`and the message to which the packet belongs. The length of
`the packet which appears in the header is used by the
`destination to determine which of the bits it receives belongs
`to the packet. Therefore, changing the length of the packet
`after the header was transmitted is not considered feasible.
`In many networks, especially wide area networks and
`networks which include low bandwidth links such as tele
`phone lines, it is important to minimize the amount of traffic
`through the network. Therefore, it is desired to maximize the
`ratio between the amount of data of packets and the header
`Size of the packets.
`When a Source transmits both time critical urgent data,
`Such as real time packets, and non-urgent data, precedence
`must be given to the time critical data. The precedence is
`given by tagging the time critical packets as urgent and
`transmitting the urgent packets before other packets from a
`buffer of the source. However, if a source begins transmit
`ting a long packet of about 1500 bytes and after only a few
`bits are Sent an urgent packet is received in the buffer of the
`Source, the urgent packet will have to wait for the entire long
`packet to be sent. On links with a speed of 9600 bits/second,
`this can require more than a Second.
`One method of reducing the delay incurred on urgent
`packets is to reduce the maximal size of all the packets
`transmitted along the link. Thus, the maximal amount of
`time that an urgent packet must wait is less than when full
`Size packets are transmitted on the link. The size of large
`packets may be reduced by fragmenting the long packet into
`a plurality of fragment packets with Separate headers. This,
`however, decreases the ratio between the data amount and
`the length of the header of the packets and/or fragments.
`U.S. Pat. No. 5,956,341 to Galand et al., the disclosure of
`which is incorporated herein by reference, describes a
`method for Simulating a high bandwidth link from a plurality
`of low bandwidth links. In this method, each packet is
`Segmented into a plurality of Segments which contain 60
`bytes or less of data and a header of 4 bytes (additional to
`the IP packet headers of the segmented packets). Thus,
`Segments of high priority need wait only for transmission of
`a single packet.
`
`SUMMARY OF THE INVENTION
`An aspect of Some preferred embodiments of the inven
`tion relates to a communication System which Supports
`interrupts during transmission of a packet. When an urgent
`packet is received by a transmitter while transmitting a
`current packet to a receiver, the transmitter Sends an inter
`rupt Signal to the receiver, indicating that an urgent packet
`is being transmitted before the completion of the transmis
`Sion of the current packet.
`
`1O
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`In a preferred embodiment of the present invention, after
`the urgent packet is entirely transmitted, the transmitter
`continues to transmit the packet which was interrupted, from
`the point at which it was interrupted.
`In Some preferred embodiments of the present invention,
`the interrupt signals are Sent as interrupt indication bits
`within the interrupted packet. Preferably, the interrupt indi
`cation bits may be placed within the packets only at prede
`termined Stop points. In a preferred embodiment of the
`invention, the locations of the Stop points are fixed for all the
`transmitted packets. For example, the Stop points may be
`located after every 64 (or any other number) of transmitted
`bits. Alternatively, the locations of the Stop points are a
`function of information in a header of the current packet
`and/or of external information, Such as data on the connec
`tivity of a network including the transmitter and receiver and
`the time of day.
`In a preferred embodiment of the present invention, one
`or more bits are inserted at each of the Stop points regardless
`of whether an interrupt is being declared. The one or more
`inserted bits preferably have two possible values, either “no
`interrupt” or “interrupt”. Normally, the one or more inserted
`bits have a no interrupt value. However, when an urgent
`packet is received at the transmitter while transmitting
`another non-urgent packet, at the next Stop point the trans
`mitter sets the value of the one or more inserted bits to
`interrupt and immediately begins transmitting the urgent
`packet. Alternatively, upon receiving an urgent packet, the
`transmitter immediately begins to transmit the urgent packet
`instead of the current packet, and Sets the indication bits at
`the next stop point, accordingly.
`In Some preferred embodiments of the present invention,
`a Second packet which interrupted a first packet may also be
`interrupted by a third packet. In a preferred embodiment, the
`packets are assigned levels of urgency and each packet may
`interrupt those packets which are less urgent than the inter
`rupting packet.
`An aspect of Some preferred embodiments of the inven
`tion relates to assigning Stop points and inserting bits at the
`Stop points to indicate no interrupts, only to Some of the
`packets transmitted by a specific transmitter. In a preferred
`embodiment of the invention, packets of a high urgency
`level are sent without inserted bits, and therefore these
`packets are never interrupted. Alternatively or additionally,
`packets shorter than a predetermined length are Sent without
`inserted bits. In a preferred embodiment of the present
`invention, a short Set of bits is added to each transmitted
`packet to indicate whether the packet includes inserted bits.
`Further alternatively or additionally, interrupt indication
`bits are inserted only in packets Sent to Specific destinations,
`for example, destinations which comprise apparatus which
`Supports interrupt indication bits.
`There is therefore provided in accordance with a preferred
`embodiment of the present invention, a method of transmit
`ting packets from a transmitter to a receiver, including
`providing a first packet including a header, transmitting a
`leading part of the first packet on a link from the transmitter
`to the receiver, the leading part not including a header
`Separate from the header of the entire packet, and transmit
`ting a Second packet on the link after the leading part of the
`first packet was transmitted and before a remaining part of
`the first packet was transmitted.
`Preferably, transmitting the Second packet includes trans
`mitting a packet which is more urgent than the first packet.
`In a preferred embodiment, the Second packet includes a
`real time audio packet.
`
`EX 1005 Page 6
`
`
`
`3
`Preferably, the method includes notifying the receiver,
`after transmitting the leading part of the first packet, that
`data transmitted on the channel from a specific point on
`belongs to the Second packet. Preferably, notifying the
`receiver includes transmitting a predetermined Sequence of
`bits on the channel after the leading part of the first packet.
`Preferably, transmitting a predetermined Sequence of bits
`includes transmitting the Sequence at one or more predeter
`mined Stop points along the first packet.
`Preferably, the method includes transmitting a predeter
`mined Sequence of bits, different from the Sequence used to
`notify that the data from a specific point on belongs to the
`Second packet, at those predetermined Stop points not used
`for the notifying.
`In a preferred embodiment, notifying the receiver that the
`bits transmitted from a specific point on belong to the Second
`packet includes notifying the receiver before transmitting
`any part of the Second packet. Preferably, notifying the
`receiver that the bits transmitted from a specific point on
`belong to the Second packet includes notifying the receiver
`that the bits transmitted immediately after the notification
`belong to the Second packet.
`Alternatively or additionally, notifying the receiver that
`the bits transmitted from a Specific point on belong to the
`Second packet includes notifying the receiver after transmit
`ting at least part of the Second packet.
`Preferably, the method includes transmitting a remaining
`part of the first packet, not previously transmitted, after
`transmitting the Second packet. Preferably, the leading part
`of the first packet is not retransmitted after transmitting the
`Second packet.
`Preferably, the Second packet is ready for transmission
`only after the transmitting of the leading part of the first
`packet. Preferably, transmitting the leading part of the first
`packet includes transmitting a field which indicates the
`length of the entire first packet.
`Preferably, transmitting the Second packet includes
`receiving the Second packet after the transmitting of the
`leading part of the first packet, determining whether the
`Second packet should be transmitted prior to the transmis
`Sion of a remainder of the first packet, and transmitting the
`Second packet responsive to the determination.
`Preferably, a plurality of first packets are transmitted on
`the link and transmitting the Second packet before a remain
`ing part of the first packet was transmitted is performed for
`less than all of the first packets.
`There is further provided in accordance with a preferred
`embodiment of the present invention, a method of transmit
`ting packets from a transmitter to a receiver, including
`beginning to transmit a first packet, receiving a Second
`packet after transmitting one or more bits of the first packet,
`determining whether the Second packet should be transmit
`ted prior to the transmission of a remainder of the first
`packet, and transmitting the Second packet responsive to the
`determination before transmitting a remaining part of the
`first packet.
`There is further provided in accordance with a preferred
`embodiment of the present invention, a method of transmit
`ting packets from a transmitter to a receiver, including
`transmitting a first packet from the transmitter to the
`receiver, and transmitting at predetermined Stop points
`within the first packet a set of bits which indicate that no
`interruption is being declared in the transmission of the first
`packet.
`Preferably, the set of indicating bits indicates that the
`following bits until a neXt Stop point belong to the first
`
`5
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,631,132 B1
`
`4
`packet. Alternatively, the Set of indicating bits indicates that
`the previous bits from a previous Stop point belong to the
`first packet. Preferably, the predetermined Stop points are
`located at predetermined fixed intervals of bits within the
`first packet. Preferably, the predetermined Stop points are
`located at adjustable locations within the first packet. Alter
`natively or additionally, indication of the locations of the
`predetermined Stop points is contained in at least one field of
`a header of the first packet.
`There is further provided in accordance with a preferred
`embodiment of the present invention, a transmitter, includ
`ing a buffer operative to receive regular packets and urgent
`packets, a physical layer unit which transmits packets from
`the buffer, and a controller adapted to interrupt the trans
`mission of a packet of which at least one bit was already
`transmitted and to initiate the transmission of an urgent
`packet before a remaining part of the interrupted packet was
`transmitted responsive to reception of the urgent packet in
`the buffer.
`Preferably, the buffer includes a regular buffer for regular
`packets and an urgent buffer for urgent packets.
`There is further provided in accordance with a preferred
`embodiment of the present invention, a transmitter, includ
`ing a buffer which receives packets which include respective
`headers, and a physical layer unit which transmits packets
`from the buffer, at least one first packet is transmitted after
`transmitting a leading part of a Second packet and before
`transmitting a remaining part of the Second packet, the
`leading part of the Second packet not including a header
`Separate from the header of the entire Second packet.
`There is further provided in accordance with a preferred
`embodiment of the present invention, a transmitter, includ
`ing a buffer which receives packets for transmission, a
`physical layer unit which transmits packets from the buffer,
`and a processor which inserts at predetermined Stop points
`within the transmitted packets a set of bits which indicates
`whether an interruption is being declared in the transmission
`of the packet.
`There is further provided in accordance with a preferred
`embodiment of the present invention, a receiver, including a
`physical layer unit which receives bits over a link, and a
`processor which groups the bits into packets, at least one
`first packet is grouped from bits received after receiving a
`leading part of a Second packet and before receiving a
`remaining part of the Second packet, the leading part of the
`Second packet not including a header Separate from the
`header of the entire Second packet.
`There is further provided in accordance with a preferred
`embodiment of the present invention, a receiver, including a
`physical layer unit which receives a Stream of bits, and a
`processor which examines at predetermined Stop points
`within the stream a set of bits which indicates whether the
`Stream includes bits from a Second packet before all the bits
`from a first packet were included in the Stream.
`Preferably, the processor removes the set of bits from the
`stream. Preferably, the processor is adapted to divide the
`Stream into packets responsive to the examination.
`There is further provided in accordance with a preferred
`embodiment of the present invention, a communication
`System, including a communication link, a transmitter opera
`tive to transmit a stream of bits on the communication link,
`which Stream includes one or more Sets of indication bits
`which indicate whether bits from a first packet have been
`included in the Stream between bits from a Second packet,
`and a receiver operative to identify the indication bits and
`parse the Stream into packets responsive to the indication
`bits.
`
`EX 1005 Page 7
`
`
`
`US 6,631,132 B1
`
`S
`There is further provided in accordance with a preferred
`embodiment of the present invention, a communication
`System, including a communication link, a receiver which
`receives packets over the communication link, and a trans
`mitter which transmits packets over the communication link
`and is operative, upon receiving an urgent packet, to defer
`transmission of a packet of which at least one bit was already
`transmitted in order to transmit an urgent packet before a
`remaining part of the interrupted packet was transmitted,
`and to notify the receiver of the transmitted urgent packet.
`
`15
`
`6
`embodiment of the present invention. Reference is also
`made to FIG. 3 which is a schematic illustration of a packet
`transmitted by transmitter 22 in various Stages, in accor
`dance with a preferred embodiment of the present invention.
`When link 26 is idle, interrupt handler 36 checks (60)
`whether there are any urgent packets to be transmitted. If
`there are urgent packets they are transmitted (59) before any
`of the regular packets in buffer 24. If there are no urgent
`packets to be transmitted, interrupt handler 36 receives a
`regular packet 40 (if one exists), including a header 42, from
`buffer 24 and passes (61, 62 and 63) the bits of the packet
`serially to low layer unit 32. At predefined stop points 44
`throughout packet 40, interrupt handler 36 preferably checks
`(64) whether an urgent packet has been received. If no
`urgent packet was received, interrupt handler 36 passes (66)
`for transmission a set of bits 46 (for example "000” as in
`FIG. 3) which indicate that an interrupt is not declared. If,
`however, an urgent packet 50 was received, interrupt handler
`36 stores (68) control data related to the packet on stack 37,
`while the rest of packet 40 is preferably withheld in input
`buffer 24. In addition, interrupt handler 36 preferably passes
`(70) for transmission a set of one or more interrupt indica
`tion bits 48 (“111” in FIG.3) which indicate that an interrupt
`is declared. Preferably, interrupt handler 36 immediately
`begins to pass (72) for transmission the bits of the urgent
`packet.
`When the transmission of urgent packet 50 is completed,
`interrupt handler 36 retrieves (74) the control data of the
`interrupted packet 40 from Stack 37 and continues Streaming
`the bits of packet 40 from input buffer 24 to low layer unit
`32, preferably, together with periodically added sets of bits
`46. Alternatively, packet 40 is retransmitted in its entirety.
`FIG. 4 is a flowchart of the actions performed by receiver
`28, in accordance with a preferred embodiment of the
`present invention. Bits transmitted over link 26 are received
`(80) by modem 34 and low layer unit 32' and are passed to
`interrupt handler 36". At the predefined stop points 44
`interrupt handler 36' examines (84) the received set of bits
`which indicates whether an interrupt is declared. The set of
`bits (46 or 48) is preferably removed (82) from the stream
`of bits. If the set of bits indicates that no interrupt is declared
`(set 46), interrupt handler 36' continues receiving the bits as
`usual. If, however, the bits indicate that an interrupt is
`declared (set 48), interrupt handler 36 saves (86) the packet
`being received on stack 37", preferably together with related
`control data, and begins receiving (88) the interrupting
`packet. Preferably, interrupt handler 36' checks the header of
`the interrupting packet for the length of the packet in order
`to know when the interrupting packet is finished. When the
`interrupting packet has been entirely received, interrupt
`handler 36' retrieves (90) the interrupted packet from stack
`37" and adds the Subsequently received bits to the interrupted
`packet.
`Referring in more depth to the issue of the locations of
`Stop points 44, in a preferred embodiment of the invention,
`Stop points 44 are located at fixed intervals of a predeter
`mined number of bits. Minimizing the maximal delay
`incurred on an urgent packet requires making Stop points 44
`as frequent as possible. On the other hand frequently trans
`mitting bit sets 46 incurs additional traffic on link 26.
`Therefore, the length of the fixed intervals is determined as
`a compromise between minimizing the maximal delay on
`urgent packets and minimizing the overhead traffic.
`Preferably, the fixed intervals of stop points 44 begin at
`the beginning of each packet 40. Alternatively, the fixed
`intervals begin after headers 42 of the packets, Such that
`
`25
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`The invention will be more clearly understood by refer
`ence to the following description of preferred embodiments
`thereof in conjunction with the figures, in which:
`FIG. 1 is a schematic illustration of a system for trans
`mitting packets, in accordance with a preferred embodiment
`of the invention;
`FIG. 2 is a schematic flowchart of the actions performed
`by a transmitter, in accordance with a preferred embodiment
`of the present invention;
`FIG. 3 is a schematic illustration of a packet transmitted
`with interrupt indication bits, in accordance with a preferred
`embodiment of the invention; and
`FIG. 4 is a schematic flowchart of the actions performed
`by a receiver, in accordance with a preferred embodiment of
`the present invention.
`DETAILED DESCRIPTION OF PREFERRED
`EMBODIMENTS
`FIG. 1 is a schematic illustration of a system 20 for
`transmitting packets, in accordance with a preferred embodi
`ment of the invention. System 20 is preferably part of a
`packet based communication network. FIG. 1 shows a
`transmitter 22, a receiver 28 and a link 26 connecting the
`transmitter and receiver. The distinction between the trans
`mitter and receiver is for clarity of the following explana
`tion. Preferably, both transmitter 22 and receiver 28 may
`receive and transmit packets. In a preferred embodiment of
`the invention, transmitter 22 and receiver 28 are of a
`Substantially identical Structure.
`Link 26 preferably comprises a single channel which
`allows transmission of only a single data bit at any specific
`time.
`Transmitter 22 preferably comprises an input buffer 24 for
`regular packets and an urgent buffer 25 for urgent packets,
`Such as real time audio packets, control messages and echo
`packets of keyboard Strokes. Transmitter 22 further com
`50
`prises an interrupt handler 36 which receives packets from
`buffers 24 and 25 and prepares them for transmission, the
`operation of the interrupt handler is described below. Inter
`rupt handler 36 is preferably associated with at least one
`Stack 37 for Storing control data relating to interrupted
`packets. From the interrupt handler the packets are passed to
`a low layer unit 32, for example an HDLC handler, which
`prepares the packets for transmission on link 26 according to
`the specific type of the link. Preferably, low layer unit 32
`passes the packets to a modem 34, or to another physical
`layer unit, which transmits the bits of the packet to receiver
`28. In a Similar manner, receiver 28 preferably comprises a
`modem 34", a low layer unit 32", an interrupt handler 36' and
`output buffers 24' and 25". Alternatively, receiver 28 com
`prises only a Single output buffer.
`65
`FIG. 2 is a flowchart of the actions performed by interrupt
`handler 36 of transmitter 22, in accordance with a preferred
`
`35
`
`40
`
`45
`
`55
`
`60
`
`EX 1005 Page 8
`
`
`
`US 6,631,132 B1
`
`15
`
`7
`interrupts cannot be declared within the header of a packet.
`Further alternatively, the fixed intervals are continuously
`counted over packets, preferably, until an urgent packet is
`encountered. In a preferred embodiment of the invention,
`Stop points 44 are not defined within a predetermined
`interval from the end of the transmitted packets.
`Alternatively, to placing Stop points 44 at fixed intervals
`along packet 40, the Stop points are placed in accordance
`with a predetermined Series of intervals. In a preferred
`embodiment, the intervals between Stop points 44 increase
`with the progression of the packet, Such that the Stop points
`are more frequent at the beginning of the packet than at the
`end of the packet.
`In a preferred embodiment of the present invention, the
`System manager of System 20 Sets the locations of Stop
`points 44 based on parameters of the System, Such as the
`urgency level of the urgent packets, the occurrence rate of
`urgent packets, and the traffic load on link 26. Alternatively
`or additionally, a managing processor of System 20 Sets the
`locations of Stop points 44 automatically based on measure
`ments of the above parameters and/or other parameters of
`System 20. Preferably, the managing processor Sets the rules
`of determining the locations of Stop points 44 each time link
`26 is brought up. Alternatively, the managing processor Sets
`the rules determining the locations of Stop points 44
`25
`periodically, for example, every 15–30 minutes. The man
`aging processor Sends the determined rules to both trans
`mitter 22 and receiver 28, and preferably allows the new
`rules to come into effect only after confirmation has been
`received from both the transmitter and the receiver.
`In Some preferred embodiments of the present invention,
`the rules for determining the locations of Stop points 44 vary
`with parameters of system 20, such as the connectivity of
`System 20, e.g., failure of links within the System. Alterna
`tively or additionally, the rules depend on parameters exter
`nal to System 20, Such as the time of day, which in Some
`Systems is indicative of the urgency level and/or the occur
`rence rate of urgent packets.
`Further alternatively or additionally, the locations of stop
`points 44 are indicated by information in the header of the
`transmitted packet. Preferably, the header of the packet does
`not include Stop points or includes Stop points at fixed points
`which do not change responsive to the contents of the
`header. When receiver 28 receives a new packet it imme
`diately reads the header to determine the locations of the
`Stop points in receiving the rest of the packet.
`In a preferred embodiment, the locations of Stop points 44
`depend on the Source and/or destination of the packet. In
`Some Systems, the Source and/or destination are indicative of
`the urgency level and/or occurrence rate of urgent packets
`and/or of other parameters of the System. Alternatively or
`additionally, the locations of Stop points 44 depend on the
`length of packet 40. In a preferred embodiment, short
`packets do not include Stop points 44 while long packets
`include frequent Stop points. Further alternatively or
`additionally, header 42 includes explicit indication of the
`locations of Stop points 44.
`In a preferred embodiment of the present invention, the
`locations of Stop points 44 are set according to knowledge on
`when urgent packets are expected. For example, if the urgent
`packets comprise real time audio data, the packets are
`usually generated at fixed intervals. Therefore, Stop points
`44 are preferably Set Such that an interrupt may be declared
`immediately after receiving an urgent packet.
`In Some preferred embodiments of the present invention,
`in Some packets no Stop points 44 are defined and no
`
`35
`
`8
`interrupts are allowed. For example, packets transmitted to
`receivers which do not recognize interrupts preferably do
`not include Stop points. When link 26 is brought up, trans
`mitter 22 preferably checks with receiver 28 whether it
`recognizes interrupts. If it does not recognize interrupts all
`the packets Sent to receiver 28 are Sent without adding
`indication bits.
`It is noted that unlike fragmentation, the inserted indica
`tion bits are transparent to external units. That is, once the
`indication bits are removed by receiver 28, there is no way
`for a third unit receiving a packet from the receiver to know
`whether the received packet was interrupted or whether
`interrupt indication bits were inserted to the packet.
`Referring now in more detail to the sets of bits used to
`indicate whether an interrupt is declared, in a preferred
`embodiment of the present invention, the same number of
`bits is used to declare an interrupt and to indicate that an
`interrupt is not declared. In a preferred embodiment, a fixed
`number of bits, preferably between three to five bits, are
`inserted in each Stop point. Preferably, the distance between
`the “interrupt” and “no interrupt” bit sets is as large as
`possible in order to allow for determining which of sets 46
`and 48 was received even when errors have occurred during
`the transmission of the indication bits. Immunity to trans
`mission errorS is more important in the indication bits than
`in regular bits Since the implications of a mistake in deter
`mining what is indicated by the indication bits goes beyond
`the boundaries of a single packet. Alternatively, a Single bit
`is used in each Stop point 44 to notify whether an interrupt
`is declared.
`In Some preferred embodiments of the present invention,
`when receiver 28 determines from the inserted set of bits (46
`or 48) that an interrupt was declared, it checks the inter
`rupting packet for a Standard packet Structure to make Sure
`that there was no mistake in receiving the inserted Set of bits
`(46 or 48). For example, receiver 28 preferably checks that
`the interrupting packet has a header in accordance with a
`Standard header form.
`Alternatively to using the same number of bits for the
`“interrupt” and “no interrupt” bit sets (46 and 48
`respectively), the “no interrupt” bit set is shorter than the
`“interrupt' bit Set Since the interrupt bit Set generally appears
`more often. In a preferred embodiment of the present
`invention, a single 0 bit is used to indicate that no interrupt
`is declared, while a long Set of bits, e.g., 16 bits, beginning
`with a '1', is used to declare an interrupt.
`Further alternatively or additionally, bits are added at a
`stop point 44 only if an interrupt is declared. Preferably, the
`number of added bits is large enough to make marginally
`Small the possibility that the Specific Sequence used to
`declare an interrupt a