throbber
Europaisches Patentamt
`
`European Patent Office
`
`Office europeen des brevets
`
`
`
`11111111 11111111 0110111111101 1111111 1100111110111101 1111
`
`
`
`
`
`
`
`
`
`CD Publication number: 0 582 537 A2
`
`EUROPEAN PATENT APPLICATION
`
`0 Application number : 93480096.2
`
`0
`
`Int. CI.5 : HO4L 29/06, HO4L 12/64
`
`0 Date of filing : 16.07.93
`
`0 Priority : 07.08.92 US 927697
`
`0 Date of publication of application :
`09.02.94 Bulletin 94/06
`
`0 Designated Contracting States :
`AT BE CH DE ES FR GB IT LI NL SE
`
`0 Applicant : International Business Machines
`Corporation
`Old Orchard Road
`Armonk, N.Y. 10504 (US)
`0 Inventor : Cidon, Israel
`Technion - I.I.T.
`Haifa 32000 (IL)
`
`Inventor: Doney, Richard M.
`5724 Fortunes Ridge Drive
`Durham, NC 27713 (US)
`Inventor : Drake, John Ellis, Jr.
`321 Fearrington
`Pittsboro, NC 27312 (US)
`Inventor: Hervatic, Elizabeth Anne
`4908 Matlock Street
`Apex, NC 27502 (US)
`Inventor : Potter, Kenneth Harvey, Jr.
`5404 Amsterdam Place
`Raleigh, NC 27606-9708 (US)
`Inventor : Tedijanto, Theodore Ernest
`106 Tasman Court
`Cary, NC 27513 (US)
`
`0 Representative : de Pena, Alain
`Compagnie IBM France Departement de
`Propriete Intellectuelle
`F-06610 La Gaude (FR)
`
`communications links.
`
`0
`
`O
`
`O
`
`.72
`0
`
`LN
`d
`
`WEli
`
`E
`
`=2 a
`a_
`
`0 0
`
`
`
`U.
`N
`
`O
`
`0
`
`0
`
`LI-
`0
`
`0
`
`0
`0
`
`0
`N
`
`0 Transmission of high-priority, real-time traffic on low-speed
`0
`A
`protocol
`is
`defined
`for mixed
`data/voice/multimedia
`communications
`sys-
`tems
`to
`transmit and
`receive high-priority,
`real-time
`traffic over low-speed digital com-
`munication
`links by embedding such high-
`priority traffic in low-priority, non-real-time traf-
`fic. High-priority, real-time packets are
`thus
`transmitted without delay by preempting low-
`priority
`packets. Low-priority,
`non-real-time
`packets are held during preemption, and low
`-priority transmission is automatically resumed
`after transmission of high-priority packets has
`been completed. A protocol is defined for corn-
`munications systems to exchange information,
`at the time that a communication link is acti-
`vated, defining their link capabilities for hand-
`ling high-priority,
`real-time packets and
`to
`agree on how this high-priority traffic will be
`transmitted on the communication link.
`
`a.
`
`03
`0
`
`Z
`
`0
`
`N
`
`O
`
`z
`
`Jouve, 18, rue Saint-Denis, 75001 PARIS
`
`EP 0 582 537 A2
`
`IPR2024-001428
`HP – EX1007, Page 1 of 15
`
`

`

`EP 0 582 537 A2
`
`Field of the Invention
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`The present invention relates to data communications networks and more particularly to a data commu-
`nications network having the capability of processing both high priority and low priority packets using a pre-
`empt-resume protocol.
`
`Background of the Invention
`
`Communications systems traditionally have used packet switching techniques for carrying bursty data traf-
`fic and have used circuit switching techniques for carrying multiplexed real-time traffic such as voice and video.
`Circuit switching techniques are typified by a time-division multiplexed voice telephone network in which the
`traffic is sent as a continuous stream of bits. Packet switching techniques, on the other hand, have been de-
`veloped to handle bursty data over digital networks in which destination and drop-off addresses are combined
`with the message data. Each packet is delimited by flags and contains address/routing headers, priority de-
`finers and error checkers. Traditional packet networks are characterized by significant per packet processing
`in the intermediate nodes of a network. This processing has limited the throughput of packet nodes and in-
`troduced high delays for packets. To achieve higher throughput and to reduce this delay, fast packet switching
`networks have been defined which minimize the amount of processing required in intermediate nodes.
`This simplified intermediate node processing now makes it feasible for packet networks to carry, in the
`form of packets, traffic traditionally carried only over circuit switched networks. In addition, this traffic in packe-
`tized form can share the same packet network including communication links with the bursty data traffic. How-
`ever since the traditional circuit switched traffic had stringent bounds on total allowable delay across the net-
`work as well as variability of delay, nodes in the packet network must ensure that this traffic receives priority
`handling. To accomplish this, packets carrying bursty data traffic can be assigned a non real-time priority while
`packets carrying the traditional circuit model traffic can be assigned a higher, real time priority. A node in a
`fast packet network contains buffers for holding packets waiting for transmission on its communication links.
`Packets waiting for transmission can be held in buffers managed differently , depending on the priority, as-
`signed to the packets.
`A communication node in a network can adopt a number of different service policies in order to transmit
`packets from the different priority buffers: priority with no preemption, preemption with retransmission, and
`preemption with resume. When do preemption is used, the packet priority is only examined to determine from
`which buffer to select the next packet for transmission. If a high-priority packet is placed in the buffer while a
`low-priority packet is being transmitted, the high-priority packet must wait until the current transmission is com-
`pleted. A preemption with retransmission service policy means that the node will abort the transmission of a
`low-priority packet upon the arrival of a high-priority packet and immediately transmit the high-priority packet.
`Once all high-priority packets have been transmitted, transmission of the preempted low-priority packet will
`be restarted from the beginning of the packet. A preemption with resume service policy is similar except the
`preempted low-priority packet is restarted from the point of interruption rather than the beginning.
`The selection of the appropriate service policy is dependent on the characteristics of the communication
`link, the delay requirements of the high-priority packets, and the size of the low-priority packets. If the trans-
`mission rate of the communication link is high enough compared to the size of the longest low-priority packets,
`then the delay incurred by a high-priority packet waiting for a low-priority one to complete may be acceptable.
`In this case, the priority with no preemption service policy is preferable since it is easier to implement and may
`have slightly lower link overhead. If the usage efficiency of the communication link is not important but the
`delay associated with waiting for completion of the low-priority packets is too high, than the preemption with
`retransmission service policy may be acceptable. However, if the usage efficiency of the communication link
`is important and the priority with no preemption service policy does not meet the delay requirements, then
`the preempt with resume service policy may be required.
`Various schemes exist for transmitting packetized information over communication links. The typical
`scheme used over low speed serial links up to T3 speeds is based ont he HDLC MAC-layer protocol. Each
`packet is delimited by starting and ending flags (X'7E'). The ending flag of one packet may also be the starting
`flag for the next packet. The packet itself consists of an integral number of bytes of data. Since the contents
`of the packet may include bit patterns that are the same as the flag pattern, a technique known as bit stuffing
`is used to differentiate the data from the flags. The transmitter inserts a '0' bit after any sequence of five con-
`tiguous '1' bits int he packet data. Likewise, the receiver removes any '0' bit immediately following a sequence
`of five '1' bits in the received bit stream. When no packets are waiting to be transmitted, flags are repeatedly
`transmitted.
`Both the priority with no preemption and the preemption with retransmission service policies can be im-
`
`2
`
`IPR2024-001428
`HP – EX1007, Page 2 of 15
`
`

`

`EP 0 582 537 A2
`
`plemented using the existing HDLC MAC-layer protocol.
`
`Summary of the invention
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`The present invention relates to method and apparatus for effecting a modified HDLC MAC-layer protocol
`providing preemptive priority with resume over a serial communication link.
`It is, therefore, an object of this invention to provide method and apparatus for embedding high-priority
`traffic in low-priority for serial transmission though low speed communication links, without delay incurred by
`having first to complete transmission of a low-priority traffic. It is another object of this invention to preempt
`low-priority packet traffic with a high-priority packet and later resume transmission of the preempted low-pri-
`ority packet automatically, with minimal overhead on the communication link. It is another object of this inven-
`tion to detect bit transmission errors affecting packet boundaries and to recover from said errors with minimal
`loss of packets. It is another object of this invention to provide a method and apparatus for determining whether
`preemption of low-priority packets is required on a given communication link as a function of link speed, ac-
`ceptable delay and maximum packet size, and therefore whether preemption should be enabled. It is another
`object of this invention to allow a mode of operation that is compatible with HDLC MAC-layer, either priorit to
`enabling preemption or when it is determined that preemption is not required.
`According to this invention, packets of information are embedded in frames having starting and ending
`flags, control headers to designate the packet's priority, and any required routing information. The flags, in
`addition to defining the boundaries of a packet, also define byte alignment of the packet data. The flags also
`indicate when a low-priority packet has been preempted by a high-priority packet and when the transmission
`of a low-priority packet is being resumed. The control bits designate whether or not a particular packet is high-
`priority or low-priority and hence whether or not the packet is preemptable.
`Also when a communication link is activated, the two communications systems at each end of the link ex-
`change control information about their respective packet capabilities. The control information describes the
`maximum supported low-priority packet size supported in the transmit and receive direction and the ability of
`the communications system to support high-priority packets. Using the information exchanged along with the
`communication link's data rate and the maximum acceptable delay for high-priority packets, each communi-
`cations system independently determines whether the preempt/resume protocol should be enabled or whether
`a simple priority with no preemption the protocol should be used.
`
`Brief Description of the Drawings
`
`Figure 1 shows a basic packet frame used in the practice of this invention, where packet containing header
`and data is delimited by flags;
`Figure 2 shows the valid combination of formatted packet frames in which a low-priority packet is preempt-
`ed by a high-priority packet with subsequent automatic resumption;
`Figure 3 shows a combination of packet frames containing a bit error which causes a transmission abort;
`Figure 4 shows a block diagram of the transmit portion of a communication link interface of a communi-
`cations systems to which this invention is applicable;
`Figure 5 shows a block diagram of the receive portion of a communication link interface of a communica-
`tions system to which this invention is applicable;
`Figure 6 is a table used in explaining how maximum permissible packet size and the need for preempt/re-
`sume protocols is determined in each direction of a communication link; and
`Figure 7 is a finite state machine table showing preempt/resume states.
`
`Detailed Description of the Invention
`
`This invention defines a preempt/resume protocol extension to the existing HDLC MAC-layer packet fram-
`ing protocol used on serial communication links, to allow the preemption of low-priority packets so that high-
`priority packets may be transmitted with minimal delay. A link activation protocol is also defined to determine
`whether the preempt/resume protocol extension should be enabled. During the link activation , normal HDLC
`MAC-layer framing protocol is used to transmit packets across the communication link. Also if the link activation
`determines that preempt/resume should not be used, all packets are sent using the HDLC MAC-layer framing
`protocol with simple priority without preemption.
`
`3
`
`IPR2024-001428
`HP – EX1007, Page 3 of 15
`
`

`

`EP 0 582 537 A2
`
`Enabling Preempt/Resume Protocol Extension
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`Determination of when to use the preempt/resume protocol extension is based on the support of high pri-
`ority traffic, low-priority packet sizes supported, communication link speed, and maximum acceptable delay
`of high-priority packets. The two communications systems on each end of the communication link can deter-
`mine the need for the preempt/resume protocol independently for their direction of the link. During link-
`activation, each communications system sends a control message to its neighbor at the other end over the
`communication link using the normal HDLC MAC-layer framing. The control message contains the following
`fields
`. A High-priority Traffic Supported filed indicates whether the sending system supports high-priority traf-
`fic on its link.
`. A Maximum Received Low-Priority Packet Size Supported field defines the maximum packet size that
`the sender can receive.
`. A Maximum Transmitted Low Priority Packet Size Supported field defines the maximum packet size that
`the sender can transmit .
`If high-priority traffic is not supported, the receiver must verify that each packet received is a low-priority
`packet. If a packet identified as high-priority packet is received, it is discarded by the receiver.
`The following example, described with reference to Figure 6, shows how communications systems A and
`B each determine the maximum low-priority packet size supported in each direction and whether preempt/re-
`sume protocol extension should be enabled.
`Transmission of a high-priority packet may not be delayed by a low-priority packet for more than T, where
`in the following example T = 0.5 msecs. A sender that supports high-priority traffic must either transmit :
`. without preempt/resume protocol, which constrains the low-priority packet size to satisfy the equation
`packet size <T
`link speed
`
`. or with preempt/resume.
`For link direction A to B, the maximum low-priority packet size is 8KB. Assuming a link speed of
`18.432Mbps, the above inequality is not satisfied since
`8 Kbytes
`18.432 kbits per msec
`Therefore, to satisfy the delay requirements, the preempt/resume protocol is required. This means that
`communications system A will transmit preempted packets and that communications system B must support
`receipt of preempted packets.
`For link direction B to A, the maximum low-priority packet size is 1KB. The above inequality is satisfied
`
`- 3.56 msecs > 0.5 msecs
`
`35
`
`as
`
`- 0.44 msecs < 0.5 msecs
`
`Kbytes
`18.432 kbits per msec
`and the preempt/resume protocol is not be used. This means that communications system B will not transmit
`preempted packets and that communications system A will interpret preempt flags as error conditions.
`If a particular communications system has not implemented the preempt/resume protocol extension but
`supports high-priority packets, it will select a maximum low-priority packet size to greater than the value of
`link speed x T. Using this value, the communications system on the other end of the communication link will
`correctly determine that the preempt/resume protocol is not to be used.
`
`40
`
`45 Preempt/resume Protocol Extension
`
`50
`
`55
`
`In the following description, bit sequences may be described using either conventional binary represen-
`tation or, for the sake of convenience, hexadecimal representation.
`The protocol for allowing high-priority packets to temporarily preempt low-priority packets uses three types
`of flags to delimit packets : a normal flag which can be a starting, endingor idle flag, a start-preempt flag and
`an end-preempt flag. The normal flag is defined as the 8-bit sequence B'01111110'(X'7e'). The star-preempt
`flag is defined as the 9-bit sequence 6'011111110' and the end-preempt flag is defined as the ten-bit sequence
`6'0111111110'. All flags are on byte boundaries with respect to the packet data that they delineate. To differ-
`entiate flag bit sequences from bit sequences within the packets, zero bit stuffing is used in the packet data.
`An extra '0' bit is inserted in the transmitted bit stream after each occurrence of five consecutive '1' bits in a
`packet. A sequence of more than eight '1' bits indicates an error condition aborting the current packet being
`transmitted and received. Also a sequence of more than six '1' bits indicates an abort condition if the pre-
`empt/resume protocol is not enabled.
`
`4
`
`IPR2024-001428
`HP – EX1007, Page 4 of 15
`
`

`

`EP 0 582 537 A2
`
`The following is a set of rules adopted for a practical preempt/resume protocol.
`. The bit sequence 6'01111110' (X'7E') always defines byte alignment and may occur any number of times
`before and after complete packets.
`. Sic '1' bits preceded by a '0' bit that is not byte aligned with received packet data is an invalid code.
`. Nine '1' bits preceded by a '0' bit that is byte aligned is also an invalid code.
`. Receipt of an invalid code aborts the current packet and all subsequent packets are aborted until
`X'7E' occurs.
`. Verification that the preempted packet is a low priority packet is performed.
`. Verification that packets received during preemption are high-priority packets is also performed.
`. A low-priority packet cannot be preempted until the first byte is transmitted.
`. Receipt of the start-preempt flag (6'011111110') immediately followed by the end-preempt flag
`(6'0111111110') aborts the preempted packet and ends preempt mode.
`Under the foregoing rules, the following is a valid combination of packets and flags when preempt/resume
`is not enabled.
`
`7E [ 7E][ RTP 7E][ 7E][ NRTP 7E ] }
`Under the foregoing rules, the following is a valid combination of packets and flags when preempt/resume
`is enabled :
`
`7E { [ 7E ] [ RTP 7E ] [ 7E
`
`[ NRTP 7E )
`
`preempted packet
`4
`[ pNRTP { [ SP [ 7E ] RTP [ 7E RTP ] [ 7E ] EP ] pNRTP } ] 1
`
`
`
`preemption
`
`4
`
`where
`. [] denotes optional and repeatable fields
`. {} denotes required, repeatable fields
`. 7E represents the byte-aligned flag (6'01111110', X'7E')
`. RTP represents a high-priority packet
`. NRTP represents a low-priority packet
`. pNRTP represents portions of a preempted low-priority packet
`. SP represents a start-preempt flag (6'011111110')
`. EP represents an end-preempt flag (6'0111111110')
`Figure 1 shows a conventional frame 10 delimited by normal (starting and ending) 7E flags 10a and con-
`taining both a control header 10b field and a data 10c field.
`Figure 2 illustrates in frame sequence 20 a preempt valid operation in more detail with the case of a low
`priority packet being preempted by two consecutive high-priority packets. The first field 20a shows the normal
`byte-aligned starting flag X'7E'. The second field 20b is an ongoing low-priority packet NRTP1. The third field
`20c shows a start-preempt or SP flag bit by bit. This SP flag interrupts the low-priority packet and indicates
`the transmission of the remainder of the low-priority packet NRTP1 is suspended. The fourth field 20d repre-
`sents the first high-priority packet RTP1. the fifth field 20c shows the recurrence of a normal flag indicating
`the completion of the RTP1 packet. The transmission of the second high-priority packet RTP2 begins imme-
`diately in the sixth field 20f, without reversion to NRTP1. the seventh field 20g contains an end-preempt flag
`EP.
`
`Thereafter the remainder of the preempted low-priority packet NRTP1 is completed, as shown in the eighth
`field 20h. Finally, in the ninth field 20i, the normal flag X'7E' indicates the end of NRTP1 and returns the system
`to the ready state.
`Figure 3 illustrates in frame sequence 30 the case of a bit error corrupting the start-preempt flag SP in
`the third field 30c. The bit error would typically be caused by a transmission error on the communication link.
`The first and second fields 30a and 30b are identical with the same fields in Figure 2. The third field 30c shows
`a double '0' at the beginning of what otherwise would be a normal flag. Since the flag does not occur on a
`byte-aligned boundary with respect to the low-priority packet NRTP1 in the second field 30b, then NRTP1 is
`invalid and discarded. The high-priority packet RTP1 in the fourth field 30d is saved because it is surrounded
`by valid flags in the third and fifth fields 30c and 30c. The second high-priority packet RTP2 in the sixth field
`30f is discarded, however, because it is followed by an end-preempt flag EP in the seventh field 3g, when no
`
`5
`
`5
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`IPR2024-001428
`HP – EX1007, Page 5 of 15
`
`

`

`EP 0 582 537 A2
`
`valid start-preempt flag SP was detected due to the bit error. All packets thereafter are discarded until the nor-
`mal flag X'7E' appears, as in the ninth field 30i.
`The preempt/resume states of this invention can be summarized by a Finite State Machine (FSM) Table
`shown in Figure 7. Since this preempt/resume protocol is a "bit-oriented" protocol, the complete FSM describ-
`ing the protocol machine (the sender or the receiver) is also at the bit level. However, for the sake of clarity,
`the following describes only the FSM in terms of detected "sequences of bits", which captures those state tran-
`sitions which are associated with preemption. Furthermore, for the purpose of describing the protocol, is be-
`lieved to suffice to show the FSM for a receiver only.
`The following is a list of the FSM states, inputs and outputs (actions) along with their description.
`
`STATE
`
`DESCRIPTION
`
`idl
`
`rdy
`
`Idle, expecting '7E'.
`
`Just received '7E' or non-byte-aligned '7E*', ready to
`
`receive either high-priority packet or low priority
`
`packet
`
`5
`
`10
`
`15
`
`20
`
`rtp
`
`Receiving high-priority packet
`
`25
`
`rnrtp
`
`Receiving low-priority packet
`
`p_rdyl
`
`Just entered preemption mode (just received start-
`
`preempt flag SP), ready to receive high-priority
`
`packet
`
`or '7E'
`
`p_rdy2
`
`'7E*',
`
`In preemption mode, just received either '7E' or
`no high-priority packet has been received yet during
`
`current preemption
`
`30
`
`35
`
`p_rdy3
`
`40
`
`'7E*I ,
`
`In preemption mode, just received either '7E' or
`ready to receive a high-priority packet, at least one
`
`high-priority packet has already been received during
`
`current preemption
`
`45
`
`50
`
`55
`
`p_rrtp
`
`Receiving high-priority packet in preemption mode
`
`p_id12
`
`Idle in preemption mode, expecting '7E', no high-
`priority packet has been received yet during the
`
`current
`
`preemption
`
`p_id13
`
`Idle in preemption mode, expecting '7E', at least one
`high-priority packet has already been received during
`the current preemption
`
`6
`
`IPR2024-001428
`HP – EX1007, Page 6 of 15
`
`

`

`EP 0 582 537 A2
`
`p_end
`
`5
`
`Just exited preemption mode (just received end-preempt
`flag EP), expecting data (the continuation of the
`preempted low-priority packet)
`
`INPUT
`
`DESCRIPTION
`
`10
`
`'7E' share
`
`Normal starting/ending/idle flag, X'7E' (does not bit with prior flag)
`
`'7E*'
`
`X'7E' flag not byte-aligned with received data bytes
`
`RTP
`
`NRTP
`
`SP
`
`EP
`
`IC
`
`or
`
`Data (non-flag) byte from a high-priority packet, distinguished from NRTP by a control bit
`in the first byte of a string, indicating packet priority. Zero bit stuffing is performed on se-
`quences of these bytes.
`
`Data (non-flag) byte from a low-priority packet, distinguished from RTP by a control bit in
`the first byte of a string indicating packet priority. Zero bit stuffing is performed on se-
`quences of these bytes.
`
`Start-preempt flag 13'011111110' (seven l's)
`
`End-preempt flag 6'0111111110' (eight l's)
`
`Invalid codes, include non-byte-aligned SP, non-byte-aligned EP, a run of six '1' bits right
`after a flag
`
`B'0111111111 (nine l's), or 6'01111111 (seven l's)
`
`when
`
`preempt/resume is not enabled
`
`OUTPUT
`
`DESCRIPTION
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`7
`
`IPR2024-001428
`HP – EX1007, Page 7 of 15
`
`

`

`EP 0 582 537 A2
`
`strt_R
`
`Indicate start of received high-priority packet and
`
`forward first byte
`
`strt_N
`
`Indicate start of received low-priority packet and
`
`forward first byte
`
`more_R
`
`Forward another byte of high-priority packet
`
`more_N
`
`Forward another byte of low-priority packet
`
`end_R
`
`Indicate end of received high-priority packet
`
`end_N
`
`Indicate end of received low-priority packet
`
`5
`
`10
`
`15
`
`20
`
`abrt_R
`
`Abord/discard current received high-priority packet
`
`25
`
`abrt_RN
`
`abord/discard both preempting high-priority packet and
`the preempted low-priority packet
`
`30
`
`Note that states p_rdy1, p_rdy2 and p_rdy3 are similar in that the receiver is in the preempt mode and
`expecting a high-priority packet in all these states. However, it is necessary to have p_rdy1 and p_rdy2 to en-
`sure that all packets are recovered when surrounded by normal flags. Likewise, p_rdy2 and p_rdy3 are needed
`to tell whether or not it is legal to receive the end-preempt (EP) flag.
`
`35 Embodiment of Communication Link Interfaces
`
`40
`
`45
`
`50
`
`55
`
`Figure 4 shows a block diagram of the transmitter 40 portion of the communication link interface of that
`communications system. Packets arrive from the communications system's packet source 41 for transmission
`on communication link 48. The packets may have been generated locally by this system or may have been
`received from another communication link on this system (e.g. an intermediate node in a packet network). The
`communications system places the high-priority packets into a high priority buffer42 and places the low-priority
`packets into a low priority buffer 43. If no packets are stored in either high priority buffer 42 or low priority buffer
`43, a flag generator 46 is connected to the communication link 48 via a bit multiplexer 47. The flag generator
`46 repeatedly generates an idle flag X'7E', when no packets are stored for transmission.
`When a low-priority packet arrives in the low priority buffer 43 and a packet is currently being transmitted,
`the transmitter 40 waits until all earlier packets in the low priority buffer 43 have been transmitted and the high
`priority buffer 42 is empty. When a low-priority packet is at the head of the low priority buffer 43 and no other
`packet is being transmitted on the communication link 48, bytes from the low priority buffer 43 are transferred
`one at a time through a byte multiplexer 44 to a parallel serial converter 45. The parallel serial converter 45
`serializes the data and monitors the outgoing data for sequences of five consecutive '1' bits. It also inserts a
`single '0' bit immediately after each set of five '1' bits. The resulting bit stream is routed through the bit to the
`communication link 48. When the transmission of the low-priority packet is complete, the bit multiplexer 47
`selects the flag generator 46 for transmission to send at least one or more normal flags until the next packet
`is ready to be transmitted. Note that each time a flag is sent, the parallel serial converter 45 resets its internal
`count of the number of consecutive '1' bits.
`If a low-priority packet is being transmitted from low priority buffer 43 and a high-priority packet arrives in
`the high priority buffer 42, then the transmission of the low-priority packet is preempted. The remaining bits
`int he parallel serial converter 45 along with any stuffed zero bits are transmitted guaranteeing a data byte
`
`8
`
`IPR2024-001428
`HP – EX1007, Page 8 of 15
`
`

`

`EP 0 582 537 A2
`
`5
`
`10
`
`boundary for the preempted packet, and then the flag generator 46 sends special start-preempt flag described
`earlier. Bytes from the high priority buffer 42 are then transferred through the byte multiplexer 44 to the parallel
`serial converter 45 which performs serialization and zero bit stuffing. The resulting high-priority packet is then
`transferred to the communication link 48. If, during the transmission of the high-priority packet, another high-
`priority packet arrives in the high-priority buffer 42, then the flag generator 46 sends a normal flag when the
`first high-priority packet is completed and transmitter 40 begins transmission of the next high-priority packets
`without exiting the preempt mode. When the last of the series of high-priority packets has been sent (there
`are not more packets waiting in the high priority buffer 42), the flag generator 46 sends the end-preempt flag
`described earlier. The remaining bytes from the preempted low-priority packet in the low priority buffer 43 are
`the released to the parallel serial converter 45 and the communication link 48. If a subsequent high-priority
`packet arrives at the high-priority buffer 42 prior to the completion of the preempted low-priority packet, the
`preemption and resume sequence is repeated. When the transmission of the low-priority packet is completed,
`the flag generator 46 transmits a normal ending flag.
`Figure 5 shows a block diagram of the receiver 50 portion of the communication link interface of the corn-
`15 munications system up to a point at which received whole packets are passed to a packet target 56 within the
`communications system. The packet target 56 could be the final destination for the received packets or could
`be a packet switch used to route packets to other communication links for transmission to other nodes in a
`packet network. Any buffering associated with the packet target 56 is outside the receiver 50 and is not in-
`cluded in Figure 5.
`A flag detector 52 continuously monitors the bit stream received from a communication link 51 for normal,
`start-preempt and end-preempt flags. If a sequence of bits other than a flag is detected immediately following
`a normal flag, it indicates the beginning of a new frame. A serial parallel converter 53 receives the bit stream,
`discard any '0' bit if it immediately follows five consecutive '1' bits, and converts the remaining bits into byte-
`parallel form. If the received packet is a high-priority , packet, the parallel byte data is passed directly through
`a multiplexer 59 to a multiplexer 55 connected to the packet target 56 until a normal ending flag is detected
`by the flag detector 52. The receiver 50 indicates the end of the packet to the packet target 56.
`If the received packet can be preempted (i.e. low-priority, non-real-time packet), then the parallel byte data
`is instead passed through byte multiplexer 59 to the preemptable packet buffer 54 in order to permit the entire
`packet to be accumulated before passing it to the packet target 56. If flag detector 52 detects a start-preempt
`flag and there is no partial byte in the serial parallel converter 53, then it indicates the beginning of a high-
`priority preempting packet and therefore the beginning of preempt mode. The bit stream is passed through
`the serial parallel converter 53 as before but this time the parallel byte data is passed directly through the mul-
`tiplexers 59 and 55 to the packet target 56 within the communications system.
`When the flag detector 52 detects either an normal ending flag or an end-preempt flag, then the receiver
`50 indicates the end of the packet to the packet target 56. If a normal ending flag is detected, then the serial
`parallel converter 53 will continue to route the parallel byte data from subsequent packets directly to the mul-
`tiplexer 55. Kan end-preempt flag is detected, the receiver 50 will end preempt mode. The received bit stream
`will be routed through the serial parallel converter 53 and multiplexer 59 to the preemptable packet buffer 54
`thus resuming reception of the preempted low-priority packet . If the flag detector 52 detects a normal ending
`flag indicating the end of the low-priority packet, the receiver 50 transfers the entire low-priority packet stored
`in the preemptable packet buffer 54 through the multiplexer 55 to the packet target 56.
`Figure 5 assumes that the transfer of a whole packet from the preemptable packet buffer 54 to the packet
`target 56 is

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket