Fatpipe Networks India v. Xroads Networks
Filing
112
MEMORANDUM DECISION AND ORDER granting 54 Motion for Scheduling Conference (schedule in this case is vacated); denying 81 Motion to Strike; denying 91 Motion for Hearing; Status Report and Scheduling Conference set for 2/24/2010 09:00 AM in Room 477 before Magistrate Judge David Nuffer. Signed by Magistrate Judge David Nuffer on 1/8/10 (alt)
______________________________________________________________________________ IN THE UNITED STATES DISTRICT COURT FOR THE DISTRICT OF UTAH, CENTRAL DIVISION
FATPIPE NETWORKS INDIA LIMITED, an India corporation, v. Plaintiff,
MEMORANDUM DECISION AND ORDER GRANTING MOTION FOR SCHEDULING CONFERENCE Civil No. 09-CV-186 TC Chief District Judge Tena Campbell Magistrate Judge David Nuffer
XROADS NETWORKS, INC., a Delaware corporation, Defendant.
This order grants Plaintiff FatPipe Networks India Limited's motion for a scheduling conference. 1 Nature of This Technology The parties both sell technology to enable secure communications over the internet or wide-area networks (WANs). Plaintiff FatPipe Networks India Limited (FatPipe) owns patents pertaining to "router-clustering technology that provides highly redundant, reliable, and highspeed Internet/WAN access for mission critical business applications." 2 FatPipe has patented means of transmission of data at least partially in parallel over networks having different security characteristics. One of the networks is described as an open public network and the other a secure private network. The method and two types of controllers described in the patent are designed to compensate for the lower
1
Motion to Amend "Sealed Order" Dated September 28, 2009, and Request for Rule 26(f) Scheduling Conference, docket no. 54, filed October 5, 2009. Complaint ¶ 8, docket no. 1, filed February 27, 2009.
2
security of the open public network without imposing unnecessary encryption overhead on packets being sent over the more secure private network. 3 That is, FatPipe's technology can bind two networks of different security together to ensure secure transmission for sensitive information. FatPipe alleges that Defendant XRoads Networks, Inc. (XRoads) infringes two of FatPipe's patents. FatPipe points to XRoads' description of its Edge product: "By utilizing the [XRoads'] Edge appliances, [a user] was able to connect both the public and private networks together using a 3DES encryption over the public network." 4 The capacity of the Edge product to manage encryption modes is important because FatPipe says that simultaneous management of encryption modes is a characteristic of its patented technology. FatPipe's consulting expert said that `[t]his is important because one of the issues relevant to infringement is whether the Defendant's product can bind two communications paths that each use a different encryption technique (in particular, 3DES and Blowfish)." 5 Nature of the Claims XRoads counterclaimed alleging invalidity and non-infringement. 6 Throughout the case history XRoads asserted that its technology does not do the things which it believes are characteristic of FatPipe's patent claims; in fact, XRoads shows that its software produces an error message warning that parallel communication paths cannot be bound together with XRoads' Edge device. 7
Plaintiff's Opposition to Defendant's Application for Modification of Court's Patent Rules at 3, docket no. 27, filed July 2, 2009.
4 3
XRoads' Networks case study, attached as Exhibit A to Plaintiff's Opposition to Defendant's Application for Modification of Court's Patent Rules. Declaration of Lee Hollaar ¶ 22, docket no. 42, filed under seal, September 4, 2009.
5 6
Defendant/Counterclaim Plaintiff XRoads Networks, Inc.'s Answer, Affirmative Defenses and Counterclaims at 68, docket no. 4, filed March 31, 2009.
7
Defendant XRoads Networks, Inc.'s Combined Opposition . . ., docket no. 48 at 2, filed under seal September 16, 2009. 2
Critical in the dispute is the software that is used to configure XRoads' Edge devices. FatPipe claims that examination of this software will permit a determination of the infringing nature of XRoads' Edge device and associated software so that FatPipe can prepare its Preliminary Infringement Contentions. 8 The Edge device can be configured in two different ways, through a Graphic User Interface 9 similar to a Microsoft Windows environment where the user makes menu selections, or through a Command-Line Interface, 10 typical of more technical computer software. In addition to the use of the pull down menu for making encryption choices, the [Graphic User Interface] also provides the option of uploading a text configuration file for specification of encryption types and other tunnel settings. . . . [The] program called xroads_ config_ uploader.pl . . . saves the tunnel settings from a configuration file to a database. Other programs then use these settings to create tunnels. 11 Background to This Dispute The parties have been engaged in a continual dispute about discovery and the timing of FatPipe's Preliminary Infringement Contentions. The dispute arose as early as when scheduling was proposed. 12 FatPipe proposed a schedule that essentially followed the sequence set forth in Chief District Judge Campbell's Patent Rules. 13 XRoads proposed a schedule requiring modification of those rules, seeking, among other things, to require Plaintiff FatPipe's "Initial Disclosure include an additional statement of sufficient facts to state a plausible claim." 14 The
Memorandum in Support of Motion to Compel Production of Source Code and to Modify Disclosure Deadline (Memorandum in Support of Motion to Compel Source Code) at 4, docket no. 41, filed under seal September 4, 2009.
9 8
See examples at http://en.wikipedia.org/wiki/Graphical_user_interface (last visited December 31, 2009). See examples at http://en.wikipedia.org/wiki/Command-line_interface (last visited December 31, 2009).
10 11
Plaintiff's Submission Pursuant to Order Dated October 6, 2009 . . . (Plaintiff's Submission) at 8-9, docket no. 64, filed under seal October 20, 2009. Attoneys' [sic] Planning Meeting Report, docket no. 14, filed June 3, 2009. http://www.utd.uscourts.gov/judges/campbell_patent_rules.wpd (last visited December 31, 2009). Attorneys' Planning Meeting Report at 5.
12 13 14
3
magistrate judge determined 15 not to depart from Judge Campbell's Patent Rules, and entered a Scheduling Order 16 providing for four months of discovery and then requiring FatPipe to submit its Preliminary Infringement Contentions. FatPipe served discovery seeking XRoads' source code. 17 FatPipe's Request for Production No. 1 requested: "All source code in the form maintained by XRoads for each of XRoads' Edge products." 18 This request therefore covered XRoads' software that configures the Edge devices through the Graphic User Interface and through the Command Line Interface. Immediately, XRoads filed a motion 19 before the district judge seeking again to modify Judge Campbell's Patent Rules. The motion was denied. 20 XRoads made a production of source code on July 24, 2009. 21 FatPipe later filed a motion to compel production of source code by XRoads, 22 alleging that XRoads' production was incomplete, 23 and that the code was needed to prepare Preliminary Infringement Contentions. 24
15 16 17
Minute Entry, docket no. 15, filed June 10, 2009. Scheduling Order, docket no. 16, filed June 15, 2009.
Request [for Production] No. 1, in FatPipe's First Requests for Production of Documents and Things attached as Exhibit C to Plaintiff FatPipe's Memorandum in Support of Motion to Compel Full Responses to FatPipe's First Interrogatories and First Requests for Production of Documents and Things (FatPipe's Memorandum in Support of Motion to Compel Full Responses), docket no. 62, filed October 20, 2009.
18 19
Id. at 6.
Defendant XRoads Networks, Inc.'s Ex Parte Application for Modification of Court's Patent Rules, docket no. 18, filed June 17, 2009.
20 21
Order, docket no. 29, filed July 13, 2009.
Memorandum in Support of Motion to Compel Production of Source Code at 3; Memorandum in Support of Motion to Compel XRoads to Produce Open Source Software Without Protective Order Restrictions . . . at 2, docket no. 44, filed under seal September 9, 2009. Motion to Compel Production of Source Code and to Extend Disclosure Deadline (Motion to Compel Production of Source Code), docket no. 37, filed September 3, 2009.
23 24 22
Memorandum in Support of Motion to Compel Source Code at 3, 5-8. Id. at 4, 8-9.
4
The magistrate judge ordered in September (September Order) 25 that certain specific source code be produced and extended the deadline for FatPipe's Preliminary Infringement Contentions. Current Motion Almost immediately, FatPipe changed counsel, 26 and filed this motion for a scheduling conference. 27 FatPipe claimed XRoads' recent production of source code "appears to be incomplete" 28 but offered no substantiation for that statement. In an order entered October 6, 2009, 29 with great skepticism, the magistrate judge took FatPipe's motion under advisement. The magistrate judge ordered FatPipe to file evidence supporting its claim that XRoads had not produced the required source code, and ordered Defendant to "respond to that proof and file its responsive memorandum" to FatPipe's motion. 30 The briefing is complete. The Source Code Has Not Been Produced XRoads first produced source code on July 24, 2009. 31 There were 28,886 source code files on the CD but according to FatPipe's consulting expert, only 83 of them appeared to be modified by XRoads, 32 the remainder being "open source" 33 or publicly available computer code. 34 The latter category is of little use in infringement analysis.
25
Sealed Minute Entry, docket no. 47, filed September 21, 2009; Sealed Order, docket no. 52, filed September 28, 2009. Notice of Appearance, docket no. 53, filed October 5, 2009.
26 27
Motion to Amend "Sealed Order" Dated September 28, 2009, and Request for Rule 26(f) Scheduling Conference, docket no. 54, filed October 5, 2009.
28
Memorandum in Support of Motion to Amend "Sealed Order" Dated September 28, 2009 and Request for Rule 26(f) Scheduling Conference at 4, docket no. 56, filed October 6, 2009. Order Taking Under Advisement Motion to Modify Schedule, docket no. 57, filed October 6, 2009. Order Taking Under Advisement Motion to Modify Schedule at 3.
29 30 31
Memorandum in Support of Motion to Compel Production of Source Code at 3; Memorandum in Support of Motion to Compel XRoads to Produce Open Source Software Without Protective Order Restrictions . . . at 2.
32 33 34
Memorandum in Support of Motion to Compel Production of Source Code at 5. "The Open Source Definition", http://www.opensource.org/docs/osd (last visited December 31, 2009). Docket text order, docket no. 59, filed October 12, 2009 (emphasis added).
5
A month later, Daren French, XRoads' principal was deposed as XRoads' 30(b) representative. "Daren French testified at XRoads' Rule 30(b)(6) deposition that XRoads [had] produced `all relevant and modified code' but he [also] acknowledged, for example, that XRoads did not produce the source code for the command line interface (CLI) because XRoads did not see it as being relevant." 35 This was an admission that XRoads had not complied with the discovery request to produce source code. Thereafter, FatPipe filed its first motion to compel XRoads to produce 36 source code 37 which FatPipe's consulting expert said was missing from XRoads' production but necessary to FatPipe's analysis for its Preliminary Infringement Contentions. 38 The magistrate judge's September Order 39 directed that specific source code be produced to enable preparation of FatPipe's Contentions: 1. 2. The code that actually configures the site2site, tunneling and/or VPN functionality on XRoads' Edge product. The code that takes information from the script file called xroads_run and is used to configure the site2site, tunneling and/or VPN functionality on XRoads' Edge product. The source code that reads or acts on information placed in the scripts/xroads_uploadchk file. The source code for XRoads' CLI program. The source code for the program that starts or configures OpenVPN. The earliest version of the Perl source code file site2site.xroads that XRoads has in its possession, custody or control.
3. 4. 5. 6.
35
Reply Memorandum in Support of Motions . . . at 3, docket no. 50, filed under seal September 21, 2009 (citing Daren French Deposition at 32, attached to Reply Memorandum in Support of Motions . . . as Exhibit A). Docket no. 37. Memorandum in Support of Motion to Compel Production of Source Code at 7-8. Declaration of Lee Hollaar ¶ 26.
36 37 38 39
Sealed Minute Entry, docket no. 47, filed September 21, 2009; Sealed Order, docket no. 52, filed September 28, 2009.
6
The magistrate judge also ordered that FatPipe's 30(b)(6) deposition be resumed. This ruling was in the context of enabling preparation of the Contentions; not in entire adjudication of FatPipe's outstanding discovery requests. 40 September 29th Production As required by the September Order, XRoads made a further production September 29, 2009. 41 According to FatPipe, "[o]n September 29, 2009, XRoads produced three programs that are critical to analysis of infringement: site2site.xroads; xroads_wanopt_ control.pl; and xroads_ config_ uploader.pl." 42 Of these three programs, XRoads had previously produced a version of only one site2site.xroads on July 24th. This software "creates the graphical user interface (GUI)" to configure the Edge device. 43 XRoads produced two versions of this software on September 29th 44. One was essentially similar to the earlier produced version. 45 The other deletes a configuration option from the July 24th version which FatPipe says is "critical to the issue of infringement." 46 The other two programs XRoads produced for the first time on September 29th are very important. Xroads_wanopt_ control.pl "actually starts the Edge device tunnels by making calls to an open source program called Open VPN." 47 In the September Order, the magistrate judge had ordered that XRoads produce "[t]he source code for the program that starts or configures
40 41
Memorandum in Support of Motion to Compel Source Code at 4.
Plaintiff's Submission at 4; Defendant XRoads Networks, Inc.'s Response to Plaintiff Fatpipe's Evidence Supporting its Claim that Code Required to Be Produced by the September 28, 2009 Order Was Not Produced (XRoads' Response) at 3, docket no. 73, filed November 6, 2009.
42 43 44 45 46 47
Plaintiff's Submission at 4 (emphasis added). Id. at 5. Id. at 5-6. Id. at 6. Id. at 7. Id.
7
OpenVPN." 48 This was within FatPipe's Request for Production No. 1 seeking "[a]ll source code in the form maintained by XRoads for each of XRoads' Edge products." 49 But xroads_wanopt_ control.pl was not produced July 24th. The other significant new piece of source code is xroads_ config_ uploader.pl. It is the key alternative method of configuring XRoads' devices. In addition to the use of the pull down menu for making encryption choices, the [Graphic User Interface] also provides the option of uploading a text configuration file for specification of encryption types and other tunnel settings. . . . [The] program called xroads_ config_ uploader.pl . . . saves the tunnel settings from a configuration file to a database. Other programs then use these settings to create tunnels. 50 Again, xroads_wanopt_ control.pl is source code used for "XRoads Edge' products" within FatPipe's first production request. But it was not produced July 24th. The September Order directed that XRoads produce this code. Other Versions of XRoads' Software The inquiry might stop here. It would appear that XRoads has now produced software FatPipe sought that FatPipe claimed was necessary to preparation of its Preliminary Infringement Contentions and also that XRoads complied with the September Order. But FatPipe has obtained additional copies of the XRoads' software that reveal additional problems with XRoads' production. "FatPipe . . . purchased an Edge device on or about August 1, 2009, and its expert was able to read code stored on that device." 51 That device has versions of all three types of the configuration software: site2site.xroads; xroads_wanopt_ control.pl; and xroads_ config_
48 49
Sealed Order at 2, docket no. 52, filed September 28, 2009.
Request [for Production] No. 1, attached to FatPipe's Memorandum in Support of Motion to Compel Full Responses.
50 51
Plaintiff's Submission at 8-9. Plaintiff's Submission at 5.
8
uploader.pl. 52 The extracted version of site2site.xroads software is essentially identical to the version produced July 24th.53 This is the file that creates the graphical user interface for the Edge Device. However, the version of xroads_wanopt_ control.pl taken from the Edge device is materially different from the file XRoads produced September 29th. This is the file that starts the Edge device, by invoking the OpenVPN program. The xroads_wanopt_ control.pl file produced September 29th will only configure the Edge device to use "3DES encryption regardless of what form of encryption the user had selected." 54 The third program file extracted from the Edge device is xroads_ config_ uploader.pl. This is the program designed to upload a file to configure the device without use of the options presented in the GUI. The file taken from the Edge device is different than the file produced by XRoads on September 29th. The version of xroads_ config_ uploader.pl taken from the Edge device shows that the file XRoads produced September 29th "completely deleted the code designed to save tunnel settings into the database . . . and replaced it with the comment `Under Development.' . . .This is a significant change that eliminates tunnel configuration code that potentially bears on the issue of infringement." 55 FatPipe has shown that two software files produced by XRoads for the first time on September 29th do not reflect its commercial product in two ways which are very significant to the issues in this case. XRoads delayed production of xroads_wanopt_ control.pl; and xroads_ config_ uploader.pl and then produced them without features that are important in this case.
52 53 54 55
Id. at 5, 7 and 9. Id. at 6. Id. at 8. Id. at 10.
9
While the software extracted from the purchased Edge product shows the capability of managing the Blowfish or AES encryption techniques, no software produced by XRoads shows this capacity. In fact, when the September software is compared with the extracted software, it appears this capacity has been deliberately removed. To date, the only testimony and source code produced by XRoads would show that neither Blowfish nor AES were supported as alternative encryption methods. XRoads' argument would be more convincing if it cited to any code that had been produced prior to the deposition that showed that Blowfish had been supported. It does not and cannot. 56 In fact, in XRoads' 30(b)(6) deposition, Daren French denied that Blowfish is supported by its device. Q: Do you support any other type of encryption? You reference here AES. Is that currently supported? A: AES currently is not supported. However, neither is Blowfish. Q: So your - your testimony is that the only form of encryption you currently support is 3 DES? A: The way the firmware is currently configured only --- DES is supported. 57 While the parties dispute the meaning of French's answers, 58 French's answer that Blowfish was not supported when FatPipe had just purchased an XRoads' Edge device appearing to have Blowfish support raises serious questions about French's candor. XRoads has failed to comply with the September Order. It failed to produce distinct versions of software embodied in the Edge product that FatPipe purchased. The failure raises the possibility that XRoads failed to produce other source code versions.
Reply Brief in Support of Plaintiff's Submission Pursuant to Order, Dated October 6, 2009, Taking Under Advisement Motion to Modify Scheduling Order (Reply Brief) at 7, docket no. 86, filed under seal November 16, 2009.
57 58
56
Reply Brief at 7 (citing Deposition of Daren French, page 133, lines 11-21). XRoads' Response at 6-7 and Reply Brief at 6-7.
10
XRoads Failed to Respond to Discovery About Versions and Version Control A fundamental assumption of the September Order was that there was no version control software in use at XRoads and that XRoads did not maintain prior versions of its source code. This was made clear in Mr. French's 30(b)(6) deposition: Q. Okay. Do you -- do you have any form of version control or do you just update it as you go along and the latest is what you've got? A. Unfortunately we go with the latest version that we have. Our version control is the different products that we produce and the time at which they were produced. Q. Okay. Do you have any notes on -- or do you keep notes when you -- when you make modifications? Do you keep notes on those modifications, the date, purpose, anything like that? A. You have to understand we're a small company, so -Q. I understand. A. We do not keep notes in terms of the modifications that we make. Q. Okay. 59 However, "[i]n its July production, XRoads produced a document entitled ChangeLog.txt, which is a change log listing various versions of XRoads' source code and summarizing changes to the code, although not necessarily all such changes." 60 The change log references by number the precise versions of software that FatPipe extracted from the purchased Edge device. 61 But XRoads failed to produce those versions. Further, the change log file suggests that XRoads exercises version control. FatPipe's expert suggests several cogent reasons that version control software must be employed by any commercial vendor: "[T]here is no reason not to use a version control system." Types of version control software are available at virtually no cost. 62
59 60 61 62
Deposition of Daren French at 33, lines 4-21, attached to Plaintiff's Submission as Exhibit 2. Plaintiff's Submission at 10. Id. at 11. Declaration of Joshua Harr ¶ 21, docket no. 64-2, filed under seal October 20, 2009.
11
"[E]very company needs to know what is has previously shipped . . . to provide service to customers . . . ." 63 "[T]he lack of a version control system exposes the company to great risks, since it implies that either the code is not backed up, or that each backup of the code overwrites the previous version . . . ." 64 Very probative of the existence and availability of many versions is the fact that the software extracted from the Edge device has embedded version numbers. 65 The change log text file itself refers to the need to "sync" one version with another which implies the concurrent availability of different versions. 66 Schedule Modification is Required Because the source code has not been produced and because XRoads is at least careless and at worst deliberately hiding its source code and its version histories, FatPipe's Preliminary Infringement Contentions cannot be completed at this time. The schedule will be VACATED in its entirety. This order requires certain disclosure and discovery and sets a scheduling conference. ORDER IT IS HEREBY ORDERED: 1. The motion for scheduling conference 67 is GRANTED. The schedule in this case is VACATED. In connection with the motion and continuing to adjudicate the issues raised in FatPipe's Motion to Compel Production of Source Code, 68
63 64 65 66 67
Id. Id. Plaintiff's Submission at 5, 7 and 9. Reply Brief at 8.
Motion to Amend "Sealed Order" Dated September 28, 2009 and Request for Rule 26(f) Scheduling Conference, docket no. 54, filed October 5, 2009.
68
Docket no. 37, filed September 3, 2009.
12
a. XRoads shall immediately take all reasonable measures to secure and preserve any evidence of its software development and version history. (XRoads should have already done this, given the issues in the case.) Within seven calendar days of the date of this order, FatPipe shall propose terms of a more formal preservation order to XRoads in Microsoft Word format which within two calendar days of receipt XRoads shall redline with any proposed revisions and email to FatPipe and mj.nuffer@utd.uscourts.gov. b. XRoads shall immediately take all reasonable measures to obtain from third parties or other available resources, including past or present customers, any evidence of its software development and version history. This would include prior or current versions of its software. c. Within fourteen calendar days of the date of this order XRoads shall: i. file an inventory (a) of every computer on which anyone (including Mr. French) on behalf of XRoads has engaged in development of software since January 1, 2006, and (b) all fixed or removable storage media which has at any time contained data reflecting or resulting from such activity. The inventories shall contain full descriptions of the devices or objects; their capacities and past and present locations; names, addresses, phone numbers and email addresses of all persons or entities which owned, used, possessed or had access to such device or object since January 1, 2006; and a detailed description of the nature of uses and periods of use of each device or object.
13
ii. file a summary of its compliance efforts with respect to subparagraphs a. and b. of this paragraph. iii. produce to FatPipe all prior or current versions of software and source code for each of XRoads' Edge devices. d. Within twenty-eight calendar days of this order, XRoads shall submit to another 30(b)(6) deposition on the subject of the source code, version control, and related issues. The deposition shall not exceed seven (7) hours in duration. 69 e. Within seven calendar days of the conclusion of the 30(b)(6) deposition, FatPipe shall file a statement of other information it needs to prepare its Preliminary Infringement Contentions and a proposed schedule. f. The parties shall appear before the court in a status and scheduling conference on Wednesday, February 24, 2010, at 9:00 a.m. in Room 477, Frank E. Moss United States Courthouse, 350 South Main Street, Salt Lake City, Utah. Daren French shall personally appear at this hearing.
The time limitation for the 30(b)(6) deposition stated in the prior order of this court is rescinded. Sealed Order at 2, docket no. 52, filed September 28, 2009.
69
14
2. XRoads motion to strike 70 FatPipe's reply brief is DENIED. The reply brief was expected since XRoads was ordered to "respond to [Fatpipe's submission] and file its responsive memorandum" to FatPipe's motion for scheduling conference. 71 A reply is always permitted to a responsive memorandum. 72 3. XRoads' motion for hearing 73 is DENIED.
January 8th, 2010.
BY THE COURT:
_______________________________ David Nuffer United States Magistrate Judge
70 71 72 73
Docket no. 81, filed November 18, 2009. Order, docket no. 57, at 3 (emphasis added). DUCivR7-1(b)(3). Docket no. 91, filed November 23, 2009.
15
Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.
Why Is My Information Online?