`
`· · · ·BEFORE THE PATENT TRIAL AND APPEAL BOARD
`
`INTEL CORP. and CAVIUM, INC.,
`
`· · · · · · · · ·Petitioners,
`
`· · vs.· · · · · · · · · · · · · No. IPR2017-01406
`
`ALACRITECH INC.,
`
`· · · · · · · · ·Patent Owner.
`
`_________________________________/
`
`· · · · ·DEPOSITION OF KEVIN C. ALMEROTH, Ph.D.
`
`· · · · · · · · VOLUME I (Pages 1 - 255)
`
`· · · · · · · · · · · May 3, 2018
`
`Reported by:
`Natalie Y. Botelho
`CSR No. 9897
`
`INTEL EX. 1224.001
`
`
`
`·1· · · · · · · · · · · · · · INDEX
`
`·2· · · · · · · · · · INDEX OF EXAMINATIONS
`
`·3· · · · · · · · · · · · · · · · · · · · · · · · · · ·Page
`
`·4· ·EXAMINATION BY MR. STEPHENS· · · · · · · · · · · · ·6
`
`·5
`
`·6· · · · · · · · · · · · · ---oOo---
`
`·7
`
`·8· · · · · · · EXHIBITS MARKED FOR IDENTIFICATION
`
`·9· ·No.· · · · · · · · Description· · · · · · · · · · Page
`
`10· ·Exhibit 1· · · Corrected Patent Owner's· · · · · · ·6
`· · · · · · · · · · Exhibit 2026 Declaration of
`11· · · · · · · · · Kevin Almeroth, Ph.D., Case
`· · · · · · · · · · IPR2017-01406 (Alacritech
`12· · · · · · · · · Exhibit 2026)
`
`13· ·Exhibit 2· · · United States Patent No.· · · · · · 40
`· · · · · · · · · · US 7,673,072 B2 (INTEL Ex. 1001)
`14
`· · ·Exhibit 3· · · United States Patent No.· · · · · · 50
`15· · · · · · · · · 5,768,618 (INTEL Ex. 1005)
`
`16· ·Exhibit 4· · · Corrected Patent Owner's· · · · · · 97
`· · · · · · · · · · Exhibit 2026 Declaration of
`17· · · · · · · · · Kevin Almeroth, Ph.D., Case
`· · · · · · · · · · IPR2017-01391 (Alacritech
`18· · · · · · · · · Exhibit 2026)
`
`19· ·Exhibit 5· · · A spiral-bound document· · · · · · 134
`· · · · · · · · · · entitled "Third Edition,
`20· · · · · · · · · Computer Networks, Andrew S.
`· · · · · · · · · · Tanenbaum," Case IPR2017-01392
`21· · · · · · · · ·(Intel Ex. 1006)
`
`22· ·Exhibit 6· · · Corrected Patent Owner's· · · · · ·154
`· · · · · · · · · · Exhibit 2026 Declaration of
`23· · · · · · · · · Kevin Almeroth, Ph.D., Case
`· · · · · · · · · · IPR2017-01392 (Alacritech
`24· · · · · · · · · Exhibit 2026)
`
`25
`
`INTEL EX. 1224.002
`
`
`
`·1· · · · · · · · · · ·EXHIBITS (CONTINUED)
`
`·2· ·No.· · · · · · · · Description· · · · · · · · · · Page
`
`·3· ·Exhibit 7· · · An article from EETimes· · · · · · 192
`· · · · · · · · · · entitled "New ASIC drives
`·4· · · · · · · · · Alacritech into storage"
`
`·5· ·Exhibit 8· · · A document entitled "Ask· · · · · ·201
`· · · · · · · · · · Premier Field Engineering
`·6· · · · · · · · · (PFE) Platforms, Why Are We
`· · · · · · · · · · Deprecating Network Performance
`·7· · · · · · · · · Features (KB4014193)?"
`
`·8· ·Exhibit 9· · · License Agreement between· · · · · 209
`· · · · · · · · · · Alacritech and Chelsio, Bates
`·9· · · · · · · · · ALA02140018 through ALA02140044
`· · · · · · · · · · (Alacritech, Ex. 2038, Pages 62
`10· · · · · · · · · thru 89)
`
`11
`
`12· · · · · · · · · · · · · ---oOo---
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`INTEL EX. 1224.003
`
`
`
`·1· · · · · · ·BE IT REMEMBERED THAT, on Thursday, May 3,
`
`·2· ·2018, commencing at the hour of 9:01 a.m. of the said
`
`·3· ·day, at the law offices of QUINN EMANUEL URQUHART &
`
`·4· ·SULLIVAN, 50 California Street, 22nd Floor, San
`
`·5· ·Francisco, California, before me, NATALIE Y. BOTELHO, a
`
`·6· ·Certified Shorthand Reporter for the State of
`
`·7· ·California, personally appeared KEVIN C. ALMEROTH,
`
`·8· ·Ph.D., a witness in the above-entitled court and cause,
`
`·9· ·who, being by me first duly sworn, was examined in said
`
`10· ·cause.
`
`11
`
`12· · · · · · · · · · APPEARANCE OF COUNSEL
`
`13
`
`14· ·FOR PETITIONER, INTEL:
`
`15· · · · · · WEIL, GOTSHAL & MANGES LLP
`· · · · · · · BY:· GARLAND STEPHENS, ESQ.
`16· · · · · · 700 Louisiana, Suite 1700
`· · · · · · · Houston, TX· 77002-2755
`17· · · · · · (713)546-5011
`· · · · · · · garland.stephens@weil.com
`18
`
`19· · · · · · WEIL, GOTSHAL & MANGES LLP
`· · · · · · · BY:· AMANDA K. BRANCH, ESQ.
`20· · · · · · 201 Redwood Shores Parkway
`· · · · · · · Redwood Shores, CA· 94065-1134
`21· · · · · · (650)802-3138
`· · · · · · · amanda.branch@weil.com
`22
`
`23
`
`24
`
`25
`
`INTEL EX. 1224.004
`
`
`
`·1· · · · · · · APPEARANCE OF COUNSEL (CONTINUED)
`
`·2
`
`·3· ·FOR PETITIONER, CAVIUM:
`
`·4· · · · · · DUANE MORRIS LLP
`· · · · · · · BY:· NIKOLAUS A. WOLOSZCZUK, ESQ.
`·5· · · · · · 2475 Hanover Street
`· · · · · · · Palo Alto, CA· 94304-1194
`·6· · · · · · (650)847-4147
`· · · · · · · nawoloszczuk@duanemorris.com
`·7
`
`·8· ·FOR RESPONDENT:
`
`·9· · · · · · QUINN EMANUEL URQUHART & SULLIVAN, LLP
`· · · · · · · BY:· BRIAN E. MACK, ESQ.
`10· · · · · · 50 California Street, 22nd Floor
`· · · · · · · San Francisco, CA· 94111
`11· · · · · · (415)875-6423
`· · · · · · · brianmack@quinnemanuel.com
`12
`
`13
`
`14
`
`15
`
`16
`
`17
`
`18
`
`19
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`INTEL EX. 1224.005
`
`
`
`·1· · · · · · · ·THURSDAY, MAY 3, 2018, 9:01 A.M.
`
`·2
`
`·3· · · · · · · · · · · · ·PROCEEDINGS
`
`·4
`
`·5· · · · · · · · · KEVIN C. ALMEROTH, Ph.D.,
`
`·6· · · · being first duly sworn, testified as follows:
`
`·7
`
`·8· · · · · · · · ·EXAMINATION BY MR. STEPHENS
`
`·9· · · · · · ·MR. STEPHENS:· Q.· Good morning, Dr. Almeroth.
`
`10· ·A.· · · · Good morning.
`
`11· ·Q.· · · · Thanks for coming today.
`
`12· · · · · · ·Going to ask the court reporter to mark
`
`13· ·Exhibit 1, Almeroth 1.
`
`14· · · · · · ·(Whereupon Exhibit 1 was marked for
`
`15· · · · · · ·identification.)
`
`16· · · · · · ·MR. STEPHENS:· Q.· And Almeroth 1 is also
`
`17· ·Alacritech Exhibit 2026 in IPR2017-1406.· And that's
`
`18· ·your corrected declaration; is that right?
`
`19· ·A.· · · · It is.
`
`20· ·Q.· · · · Why did you correct it?
`
`21· ·A.· · · · After submitting it, there -- as I was reading
`
`22· ·through it, it was -- there was a portion under
`
`23· ·"Secondary Considerations" that I thought wasn't
`
`24· ·completely clear, so I wanted to make it clear.
`
`25· ·Q.· · · · Do you remember what that was?
`
`INTEL EX. 1224.006
`
`
`
`·1· ·A.· · · · I think it had to do with identifying the
`
`·2· ·related patents or technology in the "Secondary
`
`·3· ·Considerations" section.· I don't have the redline
`
`·4· ·memorized.
`
`·5· ·Q.· · · · Okay.· If you would turn to paragraph 49,
`
`·6· ·which is on page 17 of Exhibit 1.· Section 4, there is
`
`·7· ·background of the technology disclosed in the '072
`
`·8· ·patent.· Do you see that?
`
`·9· ·A.· · · · I do.
`
`10· ·Q.· · · · And 49 is the first paragraph in that section.
`
`11· ·And it lists the '205 patent, the '036 patent, the '241
`
`12· ·patent, '072 patent, '699 patent, '880 patent, '948
`
`13· ·patent, and '104 patent.· And then it says -- and it
`
`14· ·calls them the Alacritech patents.· And then it says,
`
`15· ·"The Alacritech patents reflect inventions relating to
`
`16· ·offloading certain tasks traditionally performed by the
`
`17· ·CPU to a Network Interface Device."· Did I read that
`
`18· ·right?
`
`19· ·A.· · · · Yes.
`
`20· ·Q.· · · · Some of those tasks traditionally performed by
`
`21· ·the CPU or one of those tasks traditionally performed by
`
`22· ·the CPU is dividing data into segments, right?
`
`23· · · · · · ·MR. MACK:· Objection; form.
`
`24· · · · · · ·THE WITNESS:· I'm not sure I understand your
`
`25· ·question.· I can explain why I don't understand it, if
`
`INTEL EX. 1224.007
`
`
`
`·1· ·you want.
`
`·2· · · · · · ·MR. STEPHENS:· Q.· That's okay.· If you'd turn
`
`·3· ·to paragraph 92.· You say there that, "Petitioner
`
`·4· ·alleges that the combination of Tanenbaum and Erickson
`
`·5· ·discloses this limitation."· And the limitation is
`
`·6· ·dividing by the interface the data into segments.· Do
`
`·7· ·you see that?
`
`·8· ·A.· · · · I do.
`
`·9· ·Q.· · · · You say, "Petitioner alleges that the
`
`10· ·combination of Tanenbaum and Erickson discloses this
`
`11· ·limitation because Tanenbaum describes a TCP entity that
`
`12· ·can accept user datastreams and break them up into
`
`13· ·pieces, sending each piece as a separate IP datagram,"
`
`14· ·and you have a cite.· And then you say, "But this
`
`15· ·traditional TCP functionality described by Tanenbaum
`
`16· ·occurs completely on the host and not on the network
`
`17· ·interface device."· Do you see that?
`
`18· ·A.· · · · Yes.
`
`19· ·Q.· · · · Is it correct, then, that traditionally a TCP
`
`20· ·entity on the host computer would accept user
`
`21· ·datastreams and break them up into pieces sending each
`
`22· ·piece as a separate IP datagram?
`
`23· · · · · · ·MR. MACK:· Objection; form.
`
`24· · · · · · ·THE WITNESS:· So the process of dividing data
`
`25· ·into segments is usually not done by TCP.· There's a
`
`INTEL EX. 1224.008
`
`
`
`·1· ·fragmentation and reassembly function that's part of IP,
`
`·2· ·and then applications generally divide up the data that
`
`·3· ·it needs to send.
`
`·4· · · · · · ·MR. STEPHENS:· Q.· Okay.· But the application
`
`·5· ·can send as much data as it wants, right?· There's no
`
`·6· ·length restriction?
`
`·7· · · · · · ·MR. MACK:· Objection; form.
`
`·8· · · · · · ·THE WITNESS:· Theoretically speaking.
`
`·9· ·Practically, there's limits.
`
`10· · · · · · ·MR. STEPHENS:· Q.· And those limits have
`
`11· ·increased every year since TCP was first introduced,
`
`12· ·correct?
`
`13· · · · · · ·MR. MACK:· Objection; form.
`
`14· · · · · · ·THE WITNESS:· It's usually operating
`
`15· ·system-dependent.· I don't know that that's accurate
`
`16· ·across all operating systems per year.
`
`17· · · · · · ·MR. STEPHENS:· Q.· Okay.· There is a 64K limit
`
`18· ·on TCP packets; is that right?
`
`19· · · · · · ·MR. MACK:· Objection; form.
`
`20· · · · · · ·THE WITNESS:· No.
`
`21· · · · · · ·MR. STEPHENS:· Q.· Is that an IP limitation?
`
`22· ·A.· · · · It's an IP limitation.
`
`23· ·Q.· · · · Okay.· So the TCP/IP layers in a host -- a
`
`24· ·traditional host protocol stack would accept essentially
`
`25· ·arbitrary amounts of data from a user program and break
`
`INTEL EX. 1224.009
`
`
`
`·1· ·them up into pieces and send each piece as a separate
`
`·2· ·IP -- TCP/IP datagram, right?
`
`·3· · · · · · ·MR. MACK:· Objection; form.
`
`·4· · · · · · ·THE WITNESS:· So then that gets into the
`
`·5· ·implementation details of a particular operating system
`
`·6· ·and how they deal with what they set the limits as to
`
`·7· ·the amount of data that they can send a TCP.
`
`·8· ·Practically speaking, applications don't send more than
`
`·9· ·64 kilobytes.· In fact, we're usually aware of what an
`
`10· ·MTU is, the maximum transmission unit, which is often
`
`11· ·something like 1500 bytes.
`
`12· · · · · · ·But to the extent that IP allows for creating
`
`13· ·packets that are 64 kilobytes, if, based on the MTU, it
`
`14· ·needs to divide those up, it will perform segmentation
`
`15· ·and reassembly, at least according to how the protocol
`
`16· ·is described for IP.
`
`17· · · · · · ·MR. STEPHENS:· Q.· Okay.· So TCP and I --
`
`18· ·well, TCP is a stream-oriented protocol, right?
`
`19· ·A.· · · · That's the way that it's characterized.
`
`20· ·Q.· · · · And what is a stream-oriented protocol?
`
`21· ·A.· · · · Generally speaking, it's the ability to not
`
`22· ·distinguish between segments of data.· In other words,
`
`23· ·an application can generate a stream of data and be able
`
`24· ·to deliver that over the network via a TCP socket, for
`
`25· ·example.· How that stream is divided into segments or
`
`INTEL EX. 1224.010
`
`
`
`·1· ·packets or data length layer frames is hidden from the
`
`·2· ·application generally.
`
`·3· ·Q.· · · · In paragraph 92, when you said "this
`
`·4· ·traditional TCP functionality described by Tanenbaum
`
`·5· ·occurs completely on the host and not on the network
`
`·6· ·interface device," what was the traditional TCP
`
`·7· ·functionality you were referring to?
`
`·8· ·A.· · · · If you look at the previous sentence, it's
`
`·9· ·talking about the creation of IP datagrams.· And so it's
`
`10· ·really the combination of TCP and IP.· So it says,
`
`11· ·"Petitioner alleges that the combination of Tanenbaum
`
`12· ·and Erickson discloses this limitation because Tanenbaum
`
`13· ·describes a TCP entity that can accept user datastreams
`
`14· ·and break them into pieces, sending each piece as a
`
`15· ·separate IP datagram."· So it's involving kind of the
`
`16· ·combination of TCP and IP and referencing the
`
`17· ·segmentation and reassembly functionality.
`
`18· ·Q.· · · · Okay.· In your report, you don't dispute
`
`19· ·anywhere that Tanenbaum describes a TCP and IP entity
`
`20· ·that can accept user datastreams and break them up into
`
`21· ·pieces, sending each piece as a separate datagram, IP
`
`22· ·datagram, right?
`
`23· · · · · · ·MR. MACK:· Objection; form.
`
`24· · · · · · ·THE WITNESS:· I think the declaration speaks
`
`25· ·for itself.· I don't have it memorized.· I don't recall
`
`INTEL EX. 1224.011
`
`
`
`·1· ·if I've disputed that particular functionality from
`
`·2· ·Tanenbaum.
`
`·3· · · · · · ·MR. STEPHENS:· Q.· Do you dispute it sitting
`
`·4· ·here today?
`
`·5· ·A.· · · · I'd have to go back and look at what the
`
`·6· ·petition said and what was cited and review what
`
`·7· ·Tanenbaum said.· I mean, I think Tanenbaum describes the
`
`·8· ·traditional IP functionality and TCP functionality, but
`
`·9· ·whether or not that rises to the level of this
`
`10· ·characterization, I'm not sure I would agree with it.
`
`11· ·But maybe I would.· I'd have to think about it.
`
`12· ·Q.· · · · Okay.· Well, take a look at your report and
`
`13· ·see if you can identify for me anywhere where you
`
`14· ·dispute the idea that Tanenbaum discloses a TCP and IP
`
`15· ·entity that can accept user datastreams and break them
`
`16· ·up into pieces, sending each piece as a separate IP
`
`17· ·datagram.
`
`18· · · · · · ·(Pause.)
`
`19· · · · · · ·THE WITNESS:· I've tried to review it -- as
`
`20· ·much of it as I can.· I don't see anything specifically,
`
`21· ·but, again, it's a fairly long declaration.· Maybe
`
`22· ·there's something that I've missed.
`
`23· · · · · · ·MR. STEPHENS:· Q.· Okay.· So, as far as you
`
`24· ·know, you haven't disputed in your report that the
`
`25· ·traditional TCP functionality described by Tanenbaum
`
`INTEL EX. 1224.012
`
`
`
`·1· ·includes a TCP/IP entity that can accept user
`
`·2· ·datastreams and break them up into pieces, sending each
`
`·3· ·piece as a separate data bit; is that right?
`
`·4· · · · · · ·MR. MACK:· Objection; form.
`
`·5· · · · · · ·THE WITNESS:· Yeah, as I sit here right now, I
`
`·6· ·don't have the declaration memorized, but I don't recall
`
`·7· ·disputing that particular statement from Tanenbaum.
`
`·8· · · · · · ·MR. STEPHENS:· Q.· Okay.· And those are
`
`·9· ·referred to as TCP segments, right?
`
`10· · · · · · ·MR. MACK:· Objection; form.
`
`11· · · · · · ·THE WITNESS:· Sorry.· When you say "those,"
`
`12· ·what do you mean?· I mean, ultimately, as part of that
`
`13· ·TCP/IP process, IP packets are created.· Before the IP
`
`14· ·headers are added and the 64-kilobit limitation is
`
`15· ·imposed, they're generally called TCP segments.
`
`16· · · · · · ·MR. STEPHENS:· Q.· So the divided data with
`
`17· ·the TCP header on it, but before the IP header is added
`
`18· ·in the 64K limit is imposed, that's called a TCP
`
`19· ·segment?
`
`20· ·A.· · · · It generally is.· It's funny, I was just
`
`21· ·telling my students about this.· The terminology is
`
`22· ·usually "segment packet" and "frame," though in a lot of
`
`23· ·instances they're all just called "packets."· But what I
`
`24· ·tell my students is, if they're trying to distinguish
`
`25· ·between an IP packet and a TCP segment, usually the
`
`INTEL EX. 1224.013
`
`
`
`·1· ·right terminology is "segment" for TCP and "packet" for
`
`·2· ·IP.
`
`·3· ·Q.· · · · Is there any segment size limit for TCP?
`
`·4· ·A.· · · · I would have to go back and check.· I know
`
`·5· ·there's an MSS, maximum segment size.· I forget if
`
`·6· ·that's part of the TCP standard or if it's usually an
`
`·7· ·operating system-based limitation or if it's calculated
`
`·8· ·based on information that TCP can glean from the
`
`·9· ·maximum/minimum size along all the hops of a path.
`
`10· ·Q.· · · · That's -- I think your last point is correct,
`
`11· ·right?· MSS is negotiated between the two endpoints as
`
`12· ·reflecting the minimum MTU along the path between the
`
`13· ·two endpoints, right?
`
`14· ·A.· · · · It can be.· I think there are other factors
`
`15· ·that can go into the negotiation of MSS during
`
`16· ·connection setup.
`
`17· ·Q.· · · · Okay.· But generally speaking, that's what
`
`18· ·it's intended to accomplish, right, to avoid
`
`19· ·fragmentation of packets along the two endpoints?
`
`20· · · · · · ·MR. MACK:· Objection; form.
`
`21· · · · · · ·MR. STEPHENS:· Q.· Right?
`
`22· ·A.· · · · I will have to double-check.· I thought MSS
`
`23· ·was different than the MTU discovery, which generally
`
`24· ·happens at the IP layer.
`
`25· ·Q.· · · · Right.· MTU discovery is for the local
`
`INTEL EX. 1224.014
`
`
`
`·1· ·network, and MSS reflects the minimum MTU size and all
`
`·2· ·the network segments between the two endpoints, right?
`
`·3· ·A.· · · · MTU path discovery can be for the whole path,
`
`·4· ·not just for the first hop.
`
`·5· ·Q.· · · · But it's generally just the first hop, right?
`
`·6· ·A.· · · · No.
`
`·7· · · · · · ·MR. MACK:· Objection; form.
`
`·8· · · · · · ·THE WITNESS:· I don't think it's just for the
`
`·9· ·first hop.
`
`10· · · · · · ·MR. STEPHENS:· Q.· Okay.· Typically when TCP
`
`11· ·is being used, though, there is a maximum segment size,
`
`12· ·right?
`
`13· · · · · · ·MR. MACK:· Objection; form.
`
`14· · · · · · ·THE WITNESS:· In many cases for TCP, there's a
`
`15· ·maximum segment size.
`
`16· · · · · · ·MR. STEPHENS:· Q.· And the TCP entity is
`
`17· ·responsible for ensuring that the TCP packets before
`
`18· ·it -- or the TCP segments, before they're encapsulated
`
`19· ·by IP, do not exceed the MSS or maximum segment size,
`
`20· ·right?
`
`21· ·A.· · · · I would have to double-check whether -- what
`
`22· ·the protocol standard says, what TCP says about how it
`
`23· ·uses MSS and what it does, for example, in a
`
`24· ·hypothetical situation were it to receive data from the
`
`25· ·application that was larger than the MSS.· I don't
`
`INTEL EX. 1224.015
`
`
`
`·1· ·remember specifically.
`
`·2· ·Q.· · · · Okay.· But it can't send data larger than the
`
`·3· ·MSS size, right?· That's why it's called the maximum
`
`·4· ·segment size?
`
`·5· · · · · · ·MR. MACK:· Objection; form.
`
`·6· · · · · · ·THE WITNESS:· I would have to double-check the
`
`·7· ·TCP standard to see what it says about MSS, whether it's
`
`·8· ·allowed to or not, what the rules are, what it would
`
`·9· ·then have to do, again, in the hypothetical scenario
`
`10· ·from the last answer.· So, for example, I don't recall
`
`11· ·from the standard maybe it's -- whether it's a "may" or
`
`12· ·"should" or "must not" and how it would enforce whatever
`
`13· ·the requirement is.
`
`14· · · · · · ·MR. STEPHENS:· Q.· What is the actual behavior
`
`15· ·in BSD?
`
`16· ·A.· · · · Do you have a version?· Which version?
`
`17· ·Q.· · · · Well, you teach it in your courses, right?
`
`18· ·And let's refer specifically to the version available in
`
`19· ·1997.
`
`20· ·A.· · · · I don't know -- I don't remember what version
`
`21· ·that was.
`
`22· ·Q.· · · · Do you know if that behavior has changed in
`
`23· ·any version since the very first?
`
`24· ·A.· · · · I don't recall.· I doubt it.· I'd have to
`
`25· ·double-check.
`
`INTEL EX. 1224.016
`
`
`
`·1· ·Q.· · · · Do you know what it does today?
`
`·2· ·A.· · · · For BSD, I'm not -- I still think it's --
`
`·3· ·well, it's implementation-specific within BSD.· I'm not
`
`·4· ·sure how it deals with attempts when an application
`
`·5· ·sends the data -- sends data that's larger than the MSS.
`
`·6· ·Q.· · · · So you just don't know what happens?
`
`·7· ·A.· · · · I don't recall, sitting here right now.
`
`·8· ·Q.· · · · Now, in your declaration, you give examples of
`
`·9· ·TCP and IP headers, right?
`
`10· ·A.· · · · I do.
`
`11· ·Q.· · · · Why are they called headers?
`
`12· ·A.· · · · I don't understand the question.
`
`13· ·Q.· · · · Well, what does the word "header" mean?
`
`14· · · · · · ·MR. MACK:· Objection; form.
`
`15· · · · · · ·THE WITNESS:· I don't know that I can give you
`
`16· ·a definition.· I don't recall why they used that term.
`
`17· ·Generally, you have protocol headers.· I don't recall
`
`18· ·why they use that term.
`
`19· · · · · · ·MR. STEPHENS:· Q.· Is it something different
`
`20· ·than a trailer?
`
`21· ·A.· · · · It is something different than a trailer.
`
`22· ·Q.· · · · And how is it different from a trailer?
`
`23· ·A.· · · · Headers usually come at the beginning of what
`
`24· ·they're transmitting, what data they're transmitting.
`
`25· ·Trailers usually come at the end.
`
`INTEL EX. 1224.017
`
`
`
`·1· ·Q.· · · · Okay.· Is it possible to put a header on data
`
`·2· ·without prepending that header?
`
`·3· · · · · · ·MR. MACK:· Objection to form.
`
`·4· · · · · · ·THE WITNESS:· I don't know.· It might be.· I'd
`
`·5· ·have to give it some thought to see if there are ways
`
`·6· ·that you could implement combining a header and data
`
`·7· ·such that you wouldn't call it prepending.· It certainly
`
`·8· ·seems like it would be possible.
`
`·9· · · · · · ·MR. STEPHENS:· Q.· Okay.· How would you do
`
`10· ·that?
`
`11· · · · · · ·MR. MACK:· Objection; form.
`
`12· · · · · · ·THE WITNESS:· Well, I'm not sure.· I mean,
`
`13· ·that's the thing.· I'd have to think about it.· I can't
`
`14· ·sit here now and say definitively that there's just
`
`15· ·absolutely no way of doing it.· Programming languages
`
`16· ·offer a lot of the flexibility.· If I had some time, I
`
`17· ·might be able to come up with a reasonable scenario
`
`18· ·where you could do it.
`
`19· · · · · · ·MR. STEPHENS:· Q.· Okay.· Go ahead take a few
`
`20· ·minutes, think about it, and let me know what you come
`
`21· ·up with.
`
`22· · · · · · ·(Pause.)
`
`23· · · · · · ·THE WITNESS:· So I think the best that I can
`
`24· ·say is that there are a variety of ways of creating
`
`25· ·packets.· You -- I mean, in some cases, there's a
`
`INTEL EX. 1224.018
`
`
`
`·1· ·concept of a template.· Might be possible to create a
`
`·2· ·header structure or a packet structure that contains a
`
`·3· ·place where the data goes and header elements go, and
`
`·4· ·then filling in those header elements maybe or filling
`
`·5· ·in the data elements at the same time, or you fill in
`
`·6· ·the header first and then the data.
`
`·7· · · · · · ·Ultimately, it depends on what kind of
`
`·8· ·definition you want to use for prepending and whether or
`
`·9· ·not it matters how you fill in the data, how the
`
`10· ·structure is created.· Those are the things that sort of
`
`11· ·come to mind that could possibly have an impact.
`
`12· · · · · · ·MR. STEPHENS:· Q.· Okay.· What understanding
`
`13· ·of prepending did you use in your work in this IPR
`
`14· ·proceeding?
`
`15· ·A.· · · · I recall that there was claim language that
`
`16· ·considered the idea of prepending.· I'm not sure which
`
`17· ·patent it was or what claim, which IPR it was, which
`
`18· ·declaration it's described in.· I'd have to go back and
`
`19· ·look.· I don't recall if it was an issue that was even
`
`20· ·relevant in the context of the opinions that I gave.
`
`21· ·Again, I'd have to sort of see that declaration to give
`
`22· ·me some context to answer that question.
`
`23· ·Q.· · · · Okay.· Tanenbaum describes the process of a
`
`24· ·TCP entity putting TCP headers on data to form TCP
`
`25· ·packets, right?
`
`INTEL EX. 1224.019
`
`
`
`·1· ·A.· · · · I don't recall if TCP -- or if Tanenbaum goes
`
`·2· ·into that level of detail or what sort of the steps are
`
`·3· ·or the process is.· I don't have Tanenbaum in front of
`
`·4· ·me, so I can't check.· Certainly I think it describes at
`
`·5· ·a high level the idea that you have the TCP header, and
`
`·6· ·when it's passed the IP, there's the header portion at
`
`·7· ·the beginning and then the data portion that IP then
`
`·8· ·adds its own header to.
`
`·9· ·Q.· · · · Okay.· So you would agree, then, that
`
`10· ·Tanenbaum describes that the TCP layer provides to the
`
`11· ·IP layer a TCP packet that has both header and data,
`
`12· ·right?
`
`13· · · · · · ·MR. MACK:· Objection; form.
`
`14· · · · · · ·THE WITNESS:· I would have to double-check,
`
`15· ·but I think generally Tanenbaum does describe passing to
`
`16· ·IP a thing that has a TCP header and an IP header, at
`
`17· ·least in some circumstances.
`
`18· · · · · · ·MR. STEPHENS:· Q.· Okay.· And do you dispute
`
`19· ·that one of ordinary skill in the art would understand
`
`20· ·that the TCP entity prepended that header to the data?
`
`21· · · · · · ·MR. MACK:· Objection; form.
`
`22· · · · · · ·MR. STEPHENS:· Q.· Reading Tanenbaum in 1996?
`
`23· ·A.· · · · So I would have to see whatever declaration
`
`24· ·where this came up in and what I had said about what
`
`25· ·Tanenbaum discloses.· Off the top of my head, I mean, I
`
`INTEL EX. 1224.020
`
`
`
`·1· ·would have to double-check.· Whether there's language in
`
`·2· ·Tanenbaum that would support that it's doing prepending
`
`·3· ·or that Tanenbaum doesn't go into that level of detail,
`
`·4· ·without the declaration, without some context for that
`
`·5· ·question, I don't think I can really answer it.
`
`·6· ·Q.· · · · Well, Mr. Almeroth, you have a declaration
`
`·7· ·right in front of you, and prepending is one of the
`
`·8· ·claim elements in claim 1 of the '072 patent.· So take a
`
`·9· ·look, let me know what your view is, whether or not a
`
`10· ·person of ordinary skill in the art reading Tanenbaum in
`
`11· ·1996 would understand that the TCP entity prepended a
`
`12· ·TCP header to data.
`
`13· · · · · · ·(Pause.)
`
`14· · · · · · ·THE WITNESS:· So in the context of this
`
`15· ·declaration, I don't see where the issue of prepending
`
`16· ·comes up.· I don't have it memorized, again, but I don't
`
`17· ·see where I have made an argument that the prepending
`
`18· ·portion of any of the relevant claims at issue in the
`
`19· ·IPR isn't met by Tanenbaum.· I wouldn't take that as an
`
`20· ·admission that I believe that it is met.· It's just not
`
`21· ·one of the issues that I focused on in this particular
`
`22· ·IPR.
`
`23· · · · · · ·MR. STEPHENS:· Q.· Do you know if the TCP
`
`24· ·standards enforced in 1996 required the TCP entity to
`
`25· ·divide data into any particular size and segments,
`
`INTEL EX. 1224.021
`
`
`
`·1· ·maximum segment size?
`
`·2· · · · · · ·MR. MACK:· Objection; form.
`
`·3· · · · · · ·THE WITNESS:· I think this goes back to an
`
`·4· ·answer that I gave earlier, that I didn't recall for any
`
`·5· ·of the TCP standards what they said specifically about
`
`·6· ·maximum segment size, whether it was a requirement or
`
`·7· ·how TCP was expected to negotiate or deal with maximum
`
`·8· ·segment size.· I just don't have the standards
`
`·9· ·memorized.
`
`10· · · · · · ·MR. STEPHENS:· Q.· Okay.· If you'd turn to
`
`11· ·paragraph 64 on page 25.· You say there that,
`
`12· ·"Transmitting a message requires processing each of the
`
`13· ·layers in that protocol stack sequentially so that the
`
`14· ·message can then be transmitted over the data medium.
`
`15· ·The receiving computer is also required to process those
`
`16· ·same layers in reverse until the message is handed off
`
`17· ·to the appropriate program.· One example of processing a
`
`18· ·message using TCP/IP is depicted below," and then you
`
`19· ·have a figure on page 26, right?
`
`20· ·A.· · · · Yes.
`
`21· ·Q.· · · · And then you say that you personally obtained
`
`22· ·that figure and that it accurately depicts an example of
`
`23· ·processing a message using TCP/IP as of October 1997,
`
`24· ·right?
`
`25· ·A.· · · · Yes.
`
`INTEL EX. 1224.022
`
`
`
`·1· ·Q.· · · · What is it that the transport layer provides
`
`·2· ·to the network layer in your figure in paragraph 64?
`
`·3· ·A.· · · · So there's really two parts to the answer.
`
`·4· ·Conceptually, it's providing something that the IP layer
`
`·5· ·can then do its own processing on.· The second part of
`
`·6· ·the answer is this figure doesn't say how that data
`
`·7· ·should be stored or represented or whether it's copied
`
`·8· ·or a pointer is passed, whether it's in shared memory or
`
`·9· ·not.· It's more of an implementation detail.
`
`10· · · · · · ·So this figure is more a conceptual
`
`11· ·representation that something is generated by the
`
`12· ·transport layer, usually a payload with the TCP header
`
`13· ·on it, and that that somehow is provided to the IP layer
`
`14· ·for its own processing.
`
`15· ·Q.· · · · Is it fair to say that the transport layer
`
`16· ·creates the TCP header that is passed to the network
`
`17· ·layer along with the data?
`
`18· ·A.· · · · I mean, it's a fairly broad question.· I think
`
`19· ·certainly in many instances, the particular header for
`
`20· ·whatever payload TCP is going to send to the network
`
`21· ·layer is instantiated or created, usually filled out
`
`22· ·within that transport layer.· There may be exceptions.
`
`23· ·Q.· · · · If you would take a look at paragraph 44.
`
`24· ·You're addressing your understanding of claim
`
`25· ·construction there, right, in that section?· You can see
`
`INTEL EX. 1224.023
`
`
`
`·1· ·it on page 15.
`
`·2· ·A.· · · · Yes, I see that paragraph.
`
`·3· ·Q.· · · · And you say, "I understand that claim terms
`
`·4· ·are given their plain and ordinary meaning as would be
`
`·5· ·understood by a person of ordinary skill in the art,
`
`·6· ·unless the inventor provides a special meaning for a
`
`·7· ·term."· See that?
`
`·8· ·A.· · · · I do.
`
`·9· ·Q.· · · · I don't see in this section where you identify
`
`10· ·a time at which you assess what a person of ordinary
`
`11· ·skill in the art would understand.· Did I miss
`
`12· ·something?
`
`13· ·A.· · · · I don't see anything in paragraphs 42 to 48.
`
`14· ·I mean, there's paragraph 41.· When we're looking at
`
`15· ·validity and what a person of skill in the art would
`
`16· ·have understood, it talks about an effective filing
`
`17· ·date.· I think that concept would apply to claim
`
`18· ·construction, as well.
`
`19· ·Q.· · · · Okay.· Is that the understanding you applied?
`
`20· ·In other words, to the claim terms at issue, you
`
`21· ·attempted to assess the plain and ordinary meaning as
`
`22· ·would be understood by a person of ordinary skill in the
`
`23· ·art in October of 1997?
`
`24· · · · · · ·MR. MACK:· Objection; form.
`
`25· · · · · · ·THE WITNESS:· I think that's generally
`
`INTEL EX. 1224.024
`
`
`
`·1· ·correct.· I think that the time frame -- if you look at
`
`·2· ·whether it's October 1997 or plus or minus a year or
`
`·3· ·two, it doesn't really have an impact.
`
`·4· · · · · · ·The other thing that I would say is, if you
`
`·5· ·then look at Section VI, starting on page 35, that as
`
`·6· ·part of my analysis, there aren't really particular
`
`·7· ·claim terms that require constructions that had any
`
`·8· ·impact on what ultimately the opinions are.
`
`·9· · · · · · ·MR. STEPHENS:· Q.· I understand that, but
`
`10· ·nevertheless, you need to apply the plain and ordinary
`
`11· ·meaning as understood by a person of ordinary skill in
`
`12· ·the art, and I believe, unless I misunderstood you,
`
`13· ·you're saying that you had that as of October 1997?
`
`14· ·A.· · · · As of the time of the patent, I would say in
`
`15· ·that general period of time, I think that's correct.
`
`16· ·Q.· · · · Okay.· Why did you apply October 1997?
`
`17· ·A.· · · · I believe what it says is that it's the
`
`18· ·effective filing date.· I understand that there are
`
`19· ·questions, at least in the underlying District Court
`
`20· ·case, about when the priority date of the patent is.
`
`21· ·That might be different, but for purposes of my analysis
`
`22· ·here, I'm looking at the effective filing date.
`
`23· ·Q.· · · · Okay.· And is that your understanding of the
`
`24· ·correct way to analyze it; that you apply the
`
`25· ·understanding of a person of ordinary skill as of the
`
`INTEL EX. 1224.025
`
`
`
`·1· ·first effective filing date?
`
`·2· · · · · · ·MR. MACK:· Objection; form.
`
`·3· · · · · · ·THE WITNESS:· I think that's ultimately a
`
`·4· ·legal question.· I think that the understanding that I
`
`·5· ·used for claim construction was generally in that time
`
`·6· ·period.· I don't recall any particular terms that would
`
`·7· ·have changed meanings over the course of, like I said,
`
`·8· ·the plus or minus a year or two.· And so it's not an
`
`·9· ·absolute date -- as of a particular date that terms had
`
`10· ·specific meanings.· Those were terms and definitions
`
`11· ·that were generally applicable in that time frame.
`
`12· · · · · · ·MR. STEPHENS:· Q.· Okay.· If you'd look at
`
`13· ·paragraph 51 of your declaration in Almeroth Exhibit 1.
`
`14· ·You say, "The steps involved in the process of data
`
`15· ·transmission are each typically performed by different
`
`16· ·software, in a particular order, and without bypassing
`
`17· ·any steps.· This is what is known as a 'multi-layered
`
`18· ·software architecture.'"
`
`19· · · · · · ·Does the different software in the
`
`20· ·multi-layered software architecture refer to the layers
`
`21· ·that we were looking at in paragraph 64?
`
`22· ·A.· · · · They can be.· Each of those layers can be
`
`23· ·implemented -- I mean, again, we're back to programming
`
`24· ·languages.· They can be implemented as separate program
`
`25· ·elements.· They could be implemented together because
`
`INTEL EX. 1224.026
`
`
`
`·1· ·something special is being done.· Each layer can be
`
`·2· ·composed of multiple processes.·