`____________
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`____________
`
`GUEST TEK INTERACTIVE ENTERTAINMENT LTD.,
`
`Petitioner,
`
`v.
`
`NOMADIX, INC.,
`
`Patent Owner.
`
`U.S. Patent No. 8,626,922 to Short et al.
`Issued: January 7, 2014
`Filed: April 26, 2011
`
`Title: SYSTEMS AND METHODS FOR DYNAMIC DATA TRANSFER
`MANAGEMENT ON A PER SUBSCRIBER BASIS IN A COMMUNICATIONS
`NETWORK
`
`____________
`
`IPR2019-00253
`
`____________
`
`
`Reply Declaration of Dr. Peter Dordal
`
`
`
`
`
`
`
`GUEST TEK EXHIBIT 1024
`Guest Tek v. Nomadix, IPR2019-00253
`
`
`
`TABLE OF CONTENTS
`
`INTRODUCTION ........................................................................................... 1
`I.
`SUMMARY OF OPINION ............................................................................. 1
`II.
`III. CLAIMS AT ISSUE ........................................................................................ 2
`IV. CLAIM CONSTRUCTION ............................................................................ 3
`FURTHER OPINIONS REGARDING OBVIOUSNESS OF CLAIMS 1
`V.
`AND 9 OF THE ‘922 PATENT ...................................................................... 4
`A. My Opinion in Reply to Dr. Stubblebine Regarding the Combination of
`Bonomi and Borella............................................................................... 4
`1.
`Bonomi discloses calculating a delay period .............................. 4
`2.
`A skilled artisan would have been motivated to combine Bonomi
`and Borella ................................................................................ 13
`B. My Opinion in Reply to Dr. Stubblebine Regarding the Combination of
`Chandran and Report #98-010P .......................................................... 19
`C. My Opinion in Reply to Dr. Stubblebine Regarding the Combination of
`Teraslinna and Bonomi ....................................................................... 26
`
`
`
`
`
`I.
`
`INTRODUCTION
`1. My name is Dr. Peter Dordal, and I have been retained as a technical
`
`expert by counsel for Petitioner Guest-Tek Interactive Entertainment Ltd. to provide
`
`assistance in the above captioned inter partes review proceeding. I have reviewed
`
`the Declaration of Stuart G. Stubblebine and associated materials, and make the
`
`following statements in reply to his declaration, based on my own personal
`
`knowledge. If called as a witness, I could and would testify to the following.
`
`II.
`
`SUMMARY OF OPINION
`2.
`As I previously described, it is my opinion that claims 1 and 9 of the
`
`‘922 patent would have been obvious to a person of ordinary skill in the art as of
`
`October 22, 1999, which I understand is the earliest date of the purported invention
`
`claimed in the ‘922 patent, based on any one of the following grounds:
`
`(1) Obviousness over U.S. Patent No. 5,864,540 (“Bonomi”) in view of
`
`U.S. Patent No. 6,587,433 (“Borella”) under 35 U.S.C. § 103;
`
`(2) Obviousness over U.S. Patent No. 7,392,279 (“Chandran”) in view of
`
`IEEE’s INDEX Project Report #98-010P (“Report #98-010P”) under 35 U.S.C. §
`
`103; and
`
`(3) Obviousness over U.S. Patent No. 5,623,492 (“Teraslinna”) in view of
`
`Bonomi under 35 U.S.C. § 103.
`
`3.
`
`I have reviewed Dr. Stubblebine’s declaration and, in my view, none of
`
`1
`
`
`
`the arguments that he makes changes the opinions I set forth in my original
`
`declaration
`
`4.
`
`As mentioned, I have been asked to opine on the validity of claims 1
`
`and 9 of the ‘922 patent. Claim 1 recites a “system for allowing a user to dynamically
`
`control an amount of bandwidth available to the user in a network.” Claim 9 recites
`
`most of the same limitations of claim 1, except claim 9 is in method form, directed
`
`to “A method of dynamically managing transmission of packets.”
`
`III. CLAIMS AT ISSUE
`5.
`The full language of the claims is as follows, where the individual
`
`subparagraphs have been designated (1.a)-(1.e) and (9.a)-(9.d) for convenient
`
`reference:
`
`1. A system for allowing a user to dynamically control an amount of
`bandwidth available to the user in a network, the system comprising:
`
`[1.a] a first network interface for communicating over a communication
`link with a user device during a network session;
`
`[1.b] a second network interface for communicating with one or more
`computer networks;
`
`[1.c] a data storage system including a user profile record associated with
`a user, the user profile record comprising an indication of a network
`communication bandwidth associated with the user device; and
`
`[1.d] a processor configured to calculate a delay period associated with a
`received packet based on the network communication bandwidth
`associated with the user, and
`
`
`2
`
`
`
`[1.e] the processor further configured to delay transmission of the packet
`based on the delay period to prevent the user device from achieving a
`bandwidth greater than the network communication bandwidth associated
`with the user device.
`
`
`9. A method of dynamically managing transmission of packets, the method
`comprising:
`
`[9.a] establishing a network session over a communication link between
`a network and a user device of a user;
`
`[9.b] associating a data transmission parameter with the user device, the
`data transmission parameter being retrieved from a user profile associated
`with the user;
`
`[9.c] receiving a packet and calculating a delay period associated with the
`packet based on the data transmission parameter; and
`
`[9.d] delaying transmission of the packet based on the delay period to
`prevent the user device from achieving a data transmission greater than
`the data transmission parameter associated with the user device and
`retrieved from the user profile associated with the user.
`
`IV. CLAIM CONSTRUCTION
`6.
`I understand that the terms of the unexpired ‘922 patent claims are to
`
`be given their broadest reasonable interpretation as understood by one of ordinary
`
`skill in the art at the time of the alleged invention in view of the ‘922 patent’s
`
`specification.
`
`7.
`
`Dr. Stubblebine opines that the term “period” in the phrase “delay
`
`period” in the claims at issue means a calculated “length of time.” Para. 32. I
`
`disagree. In my opinion, the term “period” does not require a specific length of time.
`
`8.
`
`For example, the claims do not refer to calculating a “length” of time.
`3
`
`
`
`They refer to calculating a “period.” To a skilled artisan applying a broadest
`
`reasonable construction, particularly in computer networking, a period is simply an
`
`interval of time. Dr. Stubblebine notes that the ’922 patent refers to determining an
`
`amount of “delay” (such as 0.12 seconds). However, the claims broadly refer to a
`
`delay “period.” So while I agree that 0.12 seconds arguably qualifies as a period,
`
`the claims are not limited as such. The specification also refers to placing packets
`
`in “timeslots,” which are also intervals or sets of time for delaying packets in my
`
`opinion. ‘922 patent at 9:48-54; 12:13-16. So, to a skilled artisan, calculating a
`
`delay period would also include calculating a specific timeslot or other interval for
`
`delaying packets.
`
`9.
`
`Also, Dr. Stubblebine seems to suggest that the delay period must be
`
`the actual amount of time an associated packet is delayed. That is not true in my
`
`opinion. The language of Claim 1 (step 1e), for example, says only that the packet
`
`delay is “based on” the calculated delay period.
`
`V.
`
`FURTHER OPINIONS REGARDING OBVIOUSNESS OF
`CLAIMS 1 AND 9 OF THE ‘922 PATENT
`A. My Opinion
`in Reply to Dr. Stubblebine Regarding the
`Combination of Bonomi and Borella
`In my opinion, the combination of Bonomi and Borella renders claims
`
`10.
`
`1 and 9 of the ‘922 patent invalid as obvious.
`
`1.
`Bonomi discloses calculating a delay period
`11. Dr. Stubblebine argues that Bonomi does not teach calculating a delay
`4
`
`
`
`period as in the claims at issue. As I previously opined, I disagree.
`
`12. As I previously explained, the Bonomi ‘540 patent discloses a
`
`mechanism for traffic shaping; that is, for delaying packets that have arrived too
`
`soon. This provides a general mechanism for implementation of bandwidth limits
`
`through so-called traffic shaping. Bonomi calculates the transmission time as
`
`follows [col 8 line 50]:
`
`In an embodiment having b sorting bins of grain g in the sorting unit, the
`
`cell is enqueued onto sorting bin [(c mod bg)/g]
`
`The calculation of the sorting bin here starts with the future conformance time c. The
`
`product bg represents the total time range covered by the sorting bins. The grain
`
`interval g may be calculated on system startup. The actual value of g ends up stored
`
`in a system variable. The division c mod bg yields a time interval in the range 0 to
`
`bg (if the time unit for c and g is such that these values are integers, the mod operator
`
`here represents integer arithmetic; otherwise, it may represent real-number modular
`
`arithmetic). This represents a point on a “clock face” in which one full revolution
`
`represents the time bg. Dividing by g gives a position on this clock face in units of
`
`g, that is, a value from 0 to b; the [∙] operator then rounds this off to the nearest
`
`integer [Paragraph 25].
`
`13.
`
`In other words, the calculation [(c mod bg)/g] represents a conversion
`
`of the future conformance time to time units measured in intervals of length g. To
`
`5
`
`
`
`illustrate, here is a diagram of the “clock face” with b=18 bins. The grain interval g
`
`represents the time for one “tick” of the clock hand. If the grain g were 0.1 seconds
`
`(each bin would represent 0.1 seconds delay, such that bin 1 would be 0.1 s delay,
`
`bin 2 would be 0.2 s delay, etc., then the total time for one revolution of the hand
`
`would be 1.8 seconds.
`
`
`In Bonomi, each bin has attached to it a queue for packets, allowing
`
`14.
`
`multiple packets to be placed in each bin. The [(c mod bg)/g] computation quoted
`
`above is often seen as the calculation of a future transmission time. The actual
`
`amount of delay (which is not necessarily the recited “delay period” itself, as I
`
`explained above) is then that future time minus the current time.
`
`15. As a result, it is my opinion, as I previously noted in my original
`
`declaration, that the value [(c mod bg)/g] represents a calculated delay period. That
`
`value represents the bin number on the clock face diagram above that corresponds
`
`6
`
`
`
`to the conformance time c. It is equivalent to first converting the time c to units of
`
`length g, and then reducing modulo b. So the value represents the delay between the
`
`0 time and the value [(c mod bg)/g]. That is, if c=1370 milliseconds (ms), b=18 and
`
`g=100ms, then c mod bg = 1370 and [1370/100] = 13. This is a delay of 13 clock
`
`“ticks” relative to the zero point on the clock. The same applies if, for example, c =
`
`180001370; again, c mod bg = 1370. Bonomi confirms this in its claim 13, where it
`
`states that each bin corresponds to a “single delay period” between conformance
`
`time and current time. Therefore, in my opinion, a calculated bin represents an
`
`interval of time to delay packets. That is, the determination of the appropriate sorting
`
`bin does indeed “calculate a delay period” (i.e., the delay relative to bin 0, the starting
`
`point). This is precisely how the ’922 patent calculates its timeslots to place
`
`incoming packets in to delay their transmission time.
`
`16. For non-conforming packets, the calculated future conformance time c
`
`is also, in my opinion, a delay period as recited in the claims at issue, especially
`
`under Dr. Stubblebine’s construction of delay period. I indicated this in my original
`
`petition. The conformance time represents the future clock time at which the packet
`
`may be sent. For example, conformance time could be c=1370 ms from clock
`
`initialization. Of course, as I previously explained, it is calculated. Bonomi sets the
`
`conformance time to comply with the contracted traffic parameters, c=X-σ/ρ. Ex.
`
`1004 at 8:18-2130-38; 12:38-40.
`
`7
`
`
`
`17.
`
`In conventional terms, the packet is then delayed by a time interval
`
`equal to the conformance time minus the current time. So future conformance time
`
`c represents a “delay interval”, namely, the delay between clock startup when the
`
`time is zero, and the calculated conformance time. This may not necessarily be the
`
`actual delay amount for a packet, but it is still a calculated “delay period associated
`
`with a received packet.” The time of clock startup may represent the time at which
`
`the system was initialized, if the clock is zeroed on startup, or may represent a fixed
`
`epoch, such as the Unix system clock which generally has its zero point at the start
`
`of January 1, 1970. Either form of zero time suffices here.
`
`18. So, at this point we are using as the delay the interval of time from the
`
`zero point of the system clock, T=0, to the conformance time, T=c. We are, in effect,
`
`arguing that the conformance time can be understood as a delay. The conformance
`
`time, c, represents an absolute number. It might be measured in units of milliseconds,
`
`microseconds or nanoseconds. In the ATM literature each packet has the same size
`
`and so packet times can be measured in the unit of how long it takes to transmit one
`
`packet, sometimes called the “slot time”. This would mean the packet time was
`
`equivalent to the slot sequence number. This correspondence may break down
`
`during idle periods, during which slot boundaries may not be maintained, but this is
`
`nonetheless a common convention.
`
`19. Therefore, the calculation of the future conformance time, which
`
`8
`
`
`
`represents the delay relative to system initialization (such as 1370 ms), is a delay
`
`period within the meaning of the claims at issue. It is also clear that the patent
`
`teaches, as to future conformance time, how to “delay transmission of the packet
`
`based on the delay period”, that is, based on the calculated conformance time. The
`
`packet is transmitted at the conformance time, and delayed until conformance time.
`
`So the packet delay is clearly based on the conformance time: the packet delay (for
`
`delayed packets) is the conformance time minus the current time.
`
`20.
`
`I was asked during my deposition whether a conformance time was a
`
`“delay interval.” Transcript at 94:22–95:6. I understood that question to mean
`
`whether the conformance time was equivalent to the delay interval that was the
`
`actual delay that an incoming packet would be delayed (i.e., the transmission time
`
`minus the current time). That is why I stated “the calculation of a conformance time
`
`is a time typically in the future. So it’s a specific clock time. It’s not a delay interval
`
`as such.” However, that does not mean, and I never intended to suggest, that the
`
`conformance time does not satisfy the “delay period” in the claims. It does, because
`
`it is a specific length of time (e.g., 1.37 s) used to delay packets. Again, the “delay
`
`period” in the claims is not necessarily the specific amount of actual delay (i.e., the
`
`future transmission time of a packet minus the current time).
`
`21.
`
`In my opinion, there are also other time periods that would qualify as
`
`“delay periods” in Bonomi under Dr. Stubblebine’s construction. For example, the
`
`9
`
`
`
`clock rotation time, b×g, i.e., the delay period for one revolution of the hand in the
`
`diagram above about the clock face, represents a calculated delay period in seconds.
`
`The calculation of b×g is not trivial, unlike the calculation of g for instance, as it will
`
`involve a multiplication. The transmission time of a packet is also “based on [this]
`
`delay period” in that it is used in the calculation of the conformance time. Also, if
`
`the actual delay time until the packet is to be sent exceeds b×g, then the packet is
`
`dropped; such a packet has too large a delay. In other words, the range of the bins
`
`is b×g, and therefore the transmission time of the packet is “based on [this] delay
`
`period.”
`
`22. Now, just to address some of Dr. Stubblebine’s other arguments on this
`
`particular issue. He states: “the conformance time c is less than the estimated arrival
`
`time X, and is thus earlier than the estimated arrival time of the cell. (Bonomi at col.
`
`8 l. 38 (“c=X–σ/ρ”).).” Para. 38. However, the conformance time c is less than the
`
`estimated arrival time X only for early-arriving packets. If the actual arrival time t is
`
`greater than x, then c=t and so c is also greater than X. We have c = max(t, X-σ/ρ)
`
`in general.
`
`23. Dr. Stubblebine also says “Petitioner fails to identify anything in
`
`Bonomi teaching delaying a packet based on a point in time earlier than the estimated
`
`arrival time.” First, it is unclear what Dr. Stubblebine means, or why basing the
`
`delay on a time earlier than X is relevant. Second, it is not actually true: the
`
`10
`
`
`
`theoretical arrival time X is based on the arrival time of the previous packet, tp, and
`
`the theoretical arrival time Xp of that packet: X = max(tp, Xp) + σ/ρ.
`
`24.
`
`In para. 42-43, Dr. Stubblebine concludes that “Bonomi’s formula (c
`
`mod bg)/g does not make sense.” I disagree. The formula [(c mod bg)/g] makes
`
`sense when times c and g are measured in small enough units that these are integers,
`
`as they would be in Bonomi. For example, if c and g are measured in microseconds,
`
`any fractional part of a microsecond can be ignored as inconsequential. The values
`
`c and g would often be measured in ticks of the system clock. The system clock-tick
`
`unit might be 1/60 second, or 1/100 second, or 1 millisecond, or smaller, but any
`
`time measured in ticks of this clock would be an integer.
`
`25. The division by g may indeed yield a non-integer in general, but the
`
`square brackets [ ] here (omitted from Stubblebine) are meant to denote the
`
`rounding-down of (c mod bg)/g to an integer. In the Rexford and Bonomi Infocom
`
`'97 paper incorporated into the Bonomi patent, the formula is rendered in Figure 6
`
`with the symbols ⌊ (left floor) and ⌋ (right floor); the notation ⌊x⌋ (or left-floor x
`
`right-floor) has long been used to denote the result of rounding x down to the nearest
`
`integer less than or equal to x. In the patent application, the left-floor and right-floor
`
`characters were replaced with “[” and “]”.
`
`26. The quantity σ/ρ represents the bucket size, normalized to units of time
`
`(σ represents the bucket size as a number of bytes, and ρ represents the transmission
`
`11
`
`
`
`rate in bytes/sec, so σ/ρ represents the time needed to transmit one bucket). A skilled
`
`artisan would have understood that it is appropriate to round time units off to the
`
`nearest integer, including applying this to σ/ρ. A skilled artisan would also have
`
`understood that, if σ/ρ were to be represented in time units according to the system
`
`clock, it would have to be an integer; cf the discussion of system time in Paragraph
`
`24.
`
`27.
`
`In an ATM setting, the time unit can also be the (constant) time needed
`
`to send one ATM cell. The number of bins b is always an integer. If c and g are
`
`taken to be integers, then the calculation above returns an integer.
`
`28. Regarding the time when t mod g == g-1, this represents the last tick of
`
`the system clock for a bin of length g; that is, the last moment of that bin’s duration.
`
`A skilled artisan would understand that computer system clocks measure time in
`
`integer steps, particularly as to Bonomi. The time counter is incremented at a set
`
`rate; the value of that time counter is the system clock. So Bonomi would be
`
`understood as treating all time values, both absolute times and delays, as integers.
`
`The clock is initialized to a set value, often 0, at system startup.
`
`29. Most systems have access to a time-of-day clock as well, and thus can
`
`calculate the time of day given the current value of the system clock (system time
`
`counter). But, internally, the latter format is most often used; a practitioner of
`
`ordinary skill reading the Bonomi patent would have understood that time was being
`
`12
`
`
`
`used in this way.
`
`2.
`
`A skilled artisan would have been motivated to combine
`Bonomi and Borella
`In my opinion, a skilled artisan would have been motivated and would
`
`30.
`
`have had a reasonable expectation of success in combing Bonomi and Borella to
`
`achieve the claims at issue. I explained my reasoning in my original declaration.
`
`31. Dr. Stubblebine, in paragraphs 48 through 69, argues that Borella
`
`cannot be combined with Bonomi, and that the ATM network architecture suggested
`
`by Bonomi is not compatible with the IP architecture required by Borella. I disagree.
`
`32. The Borella patent discloses the idea of allowing users to set their
`
`bandwidth limits dynamically, in combination with an enforcement mechanism.
`
`While the Borella patent introduces its own enforcement mechanism, my proposed
`
`combination of Borella with Bonomi assumes only the use from Borella of the
`
`general abstract idea of a user device and user profile record. (For example, I do not
`
`propose incorporating Borella’s “marking” or “stamping” packets, reinterpreting the
`
`second byte of the IP header, the layers of the IP protocol stack, the specific format
`
`of packets that the Internet Protocol dictates, or any other additional IP based
`
`differentiated services architecture features of Borella. My proposed combination
`
`would not implicate any of those additional features.) There is no reason, in my
`
`opinion, that those specific aspects of Borella could not be implemented in Bonomi’s
`
`system. I set forth the specific modifications that would be needed to Bonomi in my
`13
`
`
`
`original declaration, and maintain my opinion that they would comprise minor
`
`software adjustments, for example. Doing so would not interfere with Bonomi’s
`
`objectives and it would not render Bonomi inoperable of its intended purpose.
`
`33. Dr. Stubblebine states the following in para. 48: “Altering Bonomi’s
`
`teachings in this manner would defeat the purpose of Bonomi, which is directed to
`
`traffic shaping on a connection by connection basis….A skilled artisan would have
`
`understood that modifying Bonomi as Petitioner proposes to “manage bandwidth on
`
`a per-user [basis] (as opposed to per-connection [basis])” (id.) would have
`
`eliminated the benefits gained by Bonomi’s traffic shaper.” I disagree. Bonomi's
`
`traffic shaper was based on ATM (notably, Bonomi is not limited to ATM though,
`
`as it expressly envisions using its system in non-ATM networks, Bonomi at at 6:36-
`
`38), in which the switching infrastructure must be aware of each individual network
`
`connection. But managing and regulating bandwidth involves the same ideas,
`
`whether bandwidth is based on users as in IP or on connections as in ATM, and any
`
`POSITA would have understood this. In particular, even a POSITA with only a
`
`casual understanding of ATM would have understood this.
`
`34.
`
`I also disagree with Dr. Stubblebine’s suggestion that managing
`
`bandwidth on a per-user basis “would have eliminated the benefits gained by
`
`Bonomi's traffic shaper.” Traffic shaping means to delay packets as necessary to
`
`enforce conformance with a token-bucket traffic specification; this naturally applies
`
`14
`
`
`
`to both per-connection shaping and per-user shaping. Bonomi combines traditional
`
`token-bucket shaping with some ideas from Fair Queuing; none of that depends on
`
`knowing what kind of flow (per-user or per-connection) is being shaped.
`
`35. While Bonomi nominally discloses a mechanism for shaping ATM
`
`traffic, there is nothing in the patent that actually requires the use of ATM networks.
`
`It would have been clear to a person of ordinary skill in the art that what Bonomi
`
`discloses is in fact a very general way of applying different bandwidth constraints to
`
`different traffic flows, when all the flows are being sent through the same router.
`
`Bonomi is not limited to ATM networks, and does not teach away from
`
`implementing its system in IP networks.
`
`36.
`
`In particular, the fact that ATM packets are all of a fixed size does not
`
`play a role in Bonomi. In the original calendar-queue mechanism of Wallmeier and
`
`Worster [1992], the calendar queue consisted of fixed-length timeslots equal in
`
`length to the transmission time of one ATM packet (or cell), but, in Bonomi, the
`
`calendar-queue timeslots are large enough to hold multiple packets, and therefore
`
`are large enough to hold IP packets of differing sizes. In fact, although not necessary
`
`to my opinion, Rexford & Bonomi, Infocom '97, which Bonomi incorporates
`
`expressly confirms this: “to reduce the size of the shaper, each bin can represent a
`
`range of g consecutive conformance times.” [Rexford & Bonomi, Infocom '97,
`
`section 2.2]. The following passage from Rexford & Bonomi, section 5.1, also
`
`15
`
`
`
`alludes to the possibility of variable packet size: “Each connection generates
`
`periodic bursts of cells according to an on/off model with leaky-bucket parameters
`
`(σin,ρin), with the peak rate equal to the link bandwidth; the burst length σin could
`
`correspond to the packet or message size in a data transmission.”
`
`37. ATM does in fact allow a form of bundling of multiple “user”
`
`connections into one; the user bundle is identified by the Virtual Path Identifier
`
`(VPI) and the individual connections within the bundle by the Virtual Channel
`
`Identifier (VChI). This option was not universally used, but the point is that an ATM
`
`connection identified by the Virtual Path Identifier is in some sense a per-user
`
`connection, or might be depending on how the site configures its connections. (When
`
`this ATM option is used, the individual-VPI connections bundled into a single VChI
`
`might represent an individual end-user or might represent some other group of traffic
`
`flows, aggregated together based on some other traffic attribute.)
`
`38. As for the architectural difference between the ATM and IP layer
`
`models, this applies largely to software design (that is, in implementing one layer,
`
`one can ignore all other layers except the programming interface offered by the layer
`
`below, and the programming interface offered in turn to the layer above). The layer
`
`model is completely irrelevant to bandwidth management at intervening switches
`
`and routers. Here is a paragraph by famous networking expert David Clark about the
`
`perils of taking the layering models too seriously, from the Forward of the textbook
`
`16
`
`
`
`Computer Networks: A Systems Approach, copyright 1996, by Peterson & Davie:
`
`It seems obvious to organize a networking book around this layered model.
`
`However, there is a peril to doing so, because the OSI model is not really
`
`successful at organizing the core concepts of networking. Such basic
`
`requirements as reliability, flow control, or security can be addressed at most,
`
`if not all, of the OSI layers. This fact has led to great confusion in trying to
`
`understand the reference model. At times it even requires a suspension of
`
`disbelief. Indeed, a book organized strictly according to a layered model has
`
`some of the attributes of spaghetti code.
`
`I agree with this passage.
`
`39. As another example, in the Rexford & Bonomi [1997] paper on which
`
`the patent application is based, the authors refer to references 14 through 21
`
`addressing fair arbitration schemes: “In contrast to first-in first-out scheduling, fair
`
`arbitration schemes [14-21] can limit traffic distortions by guaranteeing that each
`
`backlogged connection receives its share of the link bandwidth on a small time
`
`scale.” I also agree with this statement as well.
`
`40.
`
`Indeed, many existing textbooks on networking introduce ATM as “just
`
`another networking technology” that, abstractly at least, has much in common with
`
`IP. This is particularly true when IP-based network reservations (eg via the RSVP
`
`protocol) are being introduced. ATM and RSVP share many features relating to
`
`17
`
`
`
`reservation creation and reservation acceptance. For example, Craig Partridge's book
`
`Gigabit Networking, Addison-Wesley 1994, discusses both ATM and IP networks
`
`in considerable detail. Minoli and Schmidt, in chapter 7 of their book Internet
`
`Architectures, Wiley 1999, write: “To support QoS on the Internet, ISPs need to rely
`
`on new technologies and protocols, including, among others, asynchronous transfer
`
`mode.” I agree with this in spirit, though in 2019 it is clear that ATM has little
`
`future.
`
`41.
`
`In the 1990's, ATM was widely recognized as offering the potential for
`
`connection management that was missing from IP. A POSITA in search of
`
`information about congestion management and bandwidth control would have
`
`quickly become aware that ATM had been the source of many innovations in this
`
`area of connection management.
`
`42.
`
`In paragraphs 61 and 62, Dr. Stubblebine states that Borella's proposed
`
`mechanism relies on specific elements of the IP header, in particular the six-bit
`
`Differentiated Services field, while Bonomi is based on ATM. However, the only
`
`features we are envisioning be adopted from Borella is the abstract concept of user
`
`devices and user profiles, and not Borella's proposed IP-based implementation
`
`mechanism. An artisan who encountered Bonomi’s bandwidth constraint
`
`mechanism, and who wanted to implement it, would have been led naturally to
`
`Borella's constraining bandwidths on a per user basis with user profiles for the
`
`18
`
`
`
`various advantages and reasons I stated in my original declaration. The fact that
`
`specific embodiments in Bonomi relate to ATM and those of Borella relate to IP
`
`networks is irrelevant. That difference would not negate a skilled artisan from
`
`combining the features that I propose. Notably, Borella is neither limited to IP
`
`networks, nor teaches away from ATM networks. Borella at 3:18-20.
`
`B. My Opinion
`in Reply to Dr. Stubblebine Regarding the
`Combination of Chandran and Report #98-010P
`In my opinion, the combination of Chandran and Report #98-010P
`
`43.
`
`renders claims 1 and 9 of the ‘922 patent invalid as obvious.
`
`44. Dr. Stubblebine opines that Rupp does not disclose a user profile
`
`containing an indiciate of a bandwidth or data transmission parameter “within the
`
`constraints of claims 1 and 9, beginning in paragraph 77. I disagree. First, my
`
`proposed combination does not depend on whether Rupp discloses a minimum or
`
`maximum bandwidth amount. I only rely on Rupp for its user profile record as in
`
`limitations 1.c and 9.b. When the selected bandwidth is a placed in a user profile in
`
`Chandran’s memory 10, the underlying functionality of Chandran’s system
`
`(including its bandwidth constraint algorithm) is what would determine whether the
`
`bandwidth is a minimum or maximum as recited in limitations 1.e and 9.d. And
`
`because Chandran discloses maximum bandwidths, it would be a maximum
`
`bandwidth as recited in the claims at issue.
`
`45. Also, Dr. Stubblebine’s argument that Rupp discloses setting a
`19
`
`
`
`minimum bandwidth, while the '857 and '922 patents disclose setting a maximum
`
`bandwidth. But this distinction is inconsistent with this passage from Section 2.3 of
`
`Rupp: “After a subject has chosen a desired quality level, the QoS must be adjusted
`
`(i.e. degraded) accordingly. As the current Internet infrastructure does not permit
`
`controlling QoS, the INDEX Billing Gateways do not only control and measure
`
`network usage, but they are also capable of selectively degrading the performance
`
`of certain TCP connections (e.g., all connections on behalf of a given subject). User
`
`quality choices map to entry points of an internal “emulated network” composed of
`
`different elements including leaky bucket, random router and packet delay or packet
`
`drop.”
`
`46. The language here – that the user QoS level must be “degraded” –
`
`clearly discloses that the user-selected bandwidth is intended as a maximum. (It is
`
`also clear that the Rupp mechanism may delay packets, just as is done in the 922
`
`patents.)
`
`47. Dr. Stubblebine also suggests Rupp is not in the same field of endeavor
`
`as the 922 patent. I also disagree with that opinion.
`
`48. Rupp, et al, was an investigation of how users responded to Internet
`
`pricing based on bandwidth. In order to run their study, they had to implement a
`
`mechanism by which users could select their bandwidth dynamically. The report
`
`described, and thus entered as prior art, a specific bandwidth-control mechanism, as
`
`20
`
`
`
`well as the