Vụ sập mạng AT&T năm 1990 là một trong những sự cố điện thoại nổi tiếng nhất lịch sử công nghệ: chiều thứ Hai 15/1/1990, mạng đường dài của Mỹ tê liệt khoảng chín tiếng mà không có bão, không có cáp đứt. Thủ phạm là chính cơ chế tự phục hồi mà các kỹ sư Bell Labs từng rất tự hào. Câu chuyện đáng đọc lại vì ngày nay ta cũng đang đẩy cùng một bản cập nhật tới hàng triệu máy.
Tóm tắt nhanh
Một bản cập nhật phần mềm nạp vào hàng loạt tổng đài AT&T giữa tháng 12/1989 chứa một lỗi logic nằm im gần một tháng. Ngày 15/1/1990, một trục trặc phần cứng nhỏ ở tổng đài New York khiến nó tự khởi động lại, rồi gửi lời báo "tôi đã hoạt động lại" tới láng giềng. Chính lời báo ấy kích hoạt lỗi ở các trạm cùng chạy bản mới, và chúng lần lượt tự khởi động lại, lây cho nhau thành phản ứng dây chuyền. Mạng chỉ ổn lại sau khi kỹ sư cắt bớt đường dự phòng, rồi gỡ bản cập nhật.
Diễn biến chính
1984: gã khổng lồ bị chia tách
Suốt gần một thế kỷ, AT&T (Ma Bell) gần như là toàn bộ hệ thống điện thoại Mỹ. Năm 1984, tòa án buộc chia tách: phần nội hạt thành các công ty riêng, AT&T giữ mạng đường dài nhưng phải cạnh tranh với đối thủ như MCI hay Sprint. Độ tin cậy trở thành niềm tự hào lớn của công ty. Mạng khi đó gồm 114 tổng đài 4ESS điều khiển bằng phần mềm, nói chuyện với nhau qua một mạng tín hiệu riêng (CCS7).
1985: niềm tin vào hệ thống biết tự đứng dậy
Bell Labs thiết kế tổng đài để tự kiểm tra, và khi phát hiện bất thường thì tạm ngừng nhận cuộc gọi, báo láng giềng rồi tự khởi động lại trong khoảng bốn đến sáu giây, khách hầu như không nhận ra. Tháng 12/1985, khi điều trần trước Quốc hội về phần mềm phòng thủ tên lửa, lãnh đạo Bell Labs Solomon Buchsbaum nói đại ý: hỏi phần mềm có lỗi không là hỏi sai, câu đúng là hệ thống bù đắp lỗi ra sao.
Tháng 12/1989: bản vá "cho an toàn hơn"
Các kỹ sư nạp bản cập nhật để tổng đài chuyển sang mạng tín hiệu dự phòng nhanh hơn. Một thay đổi là láng giềng không còn kiểm tra lại khi một trạm báo đã hoạt động; cuộc gọi bắt đầu chảy tới là đủ. Bản mới qua thử nghiệm phòng thí nghiệm và cả mùa Giáng sinh mà không sự cố, nhưng được nạp đồng loạt vào nhiều tổng đài với cùng một mã.
15/1/1990: bệnh nhân số không ở New York
Khoảng 14 giờ 25 đến 14 giờ 30, ngày lễ Martin Luther King, lượng cuộc gọi còn thấp hơn một ngày thứ Hai bình thường. Một thiết bị trung kế ở tổng đài New York gặp trục trặc phần cứng nhỏ, nó tự khởi động lại và bắt đầu nối cuộc gọi trở lại. Ở trạm láng giềng, hai tin nhắn đến cách nhau chưa tới một phần trăm giây làm hỏng dữ liệu; bộ xử lý dự phòng tiếp quản cũng bị đánh sập theo. Phần mềm của trạm tự kết luận bộ xử lý tín hiệu của nó "bị điên", cô lập mình rồi khởi động lại.
Phản ứng dây chuyền suốt buổi chiều
Trạm vừa hồi phục lại mang lời báo bình phục đi lây cho các trạm khác chạy cùng phần mềm. Một kỹ sư AT&T gọi đó là phản ứng dây chuyền. Càng nhiều trạm ngã, lưu lượng dồn sang trạm còn lại càng dày, lỗi càng dễ bị kích hoạt. Các tổng đài đặt vé, đường dây miễn phí của khách sạn và hãng thuê xe tắc nghẽn; tổng đài viên AT&T khi đó không được chỉ khách gọi qua hãng khác. Các kỹ sư làm theo sổ quy trình nhưng không bước chuẩn nào có tác dụng.
Cách ly, gỡ bản cập nhật, đếm thiệt hại
Các kỹ sư tạm ngắt tín hiệu trên các đường liên kết dự phòng, làm lượng tin nhắn giảm khoảng một nửa. Khoảng 22 giờ các lệnh can thiệp phần mềm được áp dụng toàn mạng, và đến 23 giờ 30 đường liên lạc cuối cùng được thông. Sáng thứ Ba, bản cập nhật bị gỡ và tổng đài quay về phần mềm cũ; vài tuần sau, đội kỹ sư mới tái hiện đúng lỗi trong phòng thí nghiệm. Theo AT&T, khoảng 70 triệu lượt gọi không thành, doanh thu mất ước tính cỡ 60 triệu đô la. Chủ tịch Bob Allen họp báo nhận rằng công ty đã không đạt chuẩn chất lượng khách hàng mong đợi, rồi AT&T đăng thư ngỏ trên báo. Chưa đầy một tháng sau, ngày 9/2/1990, các đường dây miễn phí lại sập khoảng 90 phút vì một kỹ thuật viên quên lập trình định tuyến.
Điều còn tranh cãi hoặc cần thận trọng
- Lệnh break: nhiều nơi kể cả mạng sập vì một lệnh break đặt sai trong mã C. Lời giải thích này xuất hiện bốn ngày sau sự cố, trong thư của một người không làm cho AT&T; tài liệu chính thức chỉ nói đến lỗi phần mềm làm hỏng dữ liệu.
- Trạm "miễn dịch": AT&T nói bản cập nhật đã vào cả 114 tổng đài, còn Bruce Sterling kể chỉ khoảng 80 trạm chạy bản mới, số còn lại chạy bản cũ và nhờ vậy mạng không sập hoàn toàn. Hai con số khó cùng đúng.
- "Bảy mươi triệu cuộc gọi": là cách nói tròn, đã gồm cả những lần bấm gọi lại. Mạng không tắt hẳn: gần một nửa số cuộc gọi qua AT&T không thành, chứ không phải nửa nước Mỹ, và đối thủ vẫn hoạt động.
- Tin đồn phá hoại: AT&T ban đầu chưa loại trừ virus hay phá hoại, rồi Allen nói họ ngày càng tin chắc không có virus. Theo lời kể của Sterling, các tin đồn trong giới hacker tiếp thêm sức cho đợt truy quét hacker năm 1990; sự cố không châm ngòi nhưng làm chiến dịch thêm khẩn trương.
- Một số chi tiết như bức tường màn hình ở Bedminster chằng chịt vệt đỏ, hay các trạm Atlanta, Saint Louis, Detroit ngã đầu tiên, đến từ lời kể của tác giả viết sau này, không phải tài liệu kỹ thuật của AT&T.
Vì sao câu chuyện này đáng nhớ?
Lỗi lập trình chỉ là que diêm; thứ biến nó thành đám cháy là thiết kế. Khi mọi trạm chạy cùng một mã, sự khác biệt, lớp bảo vệ rẻ nhất, bị xóa mất, và cơ chế tự cứu một khi có thể lây lại thành con đường lây nhanh nhất. Chuyên gia an ninh William Murray viết ngay tuần sau rằng người ta đã không kiểm thử đúng cách điều gì xảy ra khi một bộ phận tự sửa thành công và quay lại hoạt động.
Ngày nay, bản cập nhật vẫn được đẩy cùng lúc tới hàng triệu máy, như vụ một bản cập nhật của hãng bảo mật làm hàng triệu máy Windows gục trong mùa hè 2024, và nhiều hệ thống AI được dạy tự sửa lỗi, tự báo "tôi ổn". Bài học không phải là đừng tin máy tự chữa, mà là hỏi: khi nó nói "tôi ổn rồi", ai nghe câu ấy, và họ có giống hệt nó không?
Câu hỏi thường gặp
Vụ sập mạng AT&T năm 1990 xảy ra khi nào và kéo dài bao lâu?
Sự cố bắt đầu khoảng 14 giờ 25 đến 14 giờ 30 chiều thứ Hai 15/1/1990 và kéo dài chừng chín tiếng, đến khoảng 23 giờ 30.
Nguyên nhân thật sự là gì?
Một lỗi logic trong bản cập nhật phần mềm tháng 12/1989: hai tin nhắn đến sát nhau làm hỏng dữ liệu, rồi lời báo hồi phục của trạm lây lỗi sang các trạm cùng chạy bản mới.
Có phải hacker hay virus gây ra không?
Không. AT&T ban đầu chưa loại trừ khả năng ấy, nhưng sau đó Bob Allen nói họ ngày càng tin chắc không có virus.
Thiệt hại ra sao?
Theo AT&T, khoảng 70 triệu lượt gọi không thành (gồm cả gọi lại) và doanh thu mất ước tính cỡ 60 triệu đô la.
AT&T khắc phục bằng cách nào?
Cắt tín hiệu trên các đường liên kết dự phòng để giảm tin nhắn, áp dụng lệnh can thiệp phần mềm, rồi hôm sau gỡ bản cập nhật và quay về phần mềm cũ.
Nguồn tham khảo
- Bruce Sterling, The Hacker Crackdown (1992), Part 1: Crashing the System
- AT&T, Technical background on AT&T's network slowdown, January 15, 1990 (RISKS Digest 9.63)
- RISKS Digest 9.62: Telephony 22/1/1990, lời giải thích của Larry Seese (AT&T)
- RISKS Digest 9.61: P. Neumann, W.H. Murray, J. Horning
- RISKS Digest 9.69: thư "AT&T Bug" và bài WSJ 13/2/1990
- TELECOM Digest V10 #29–31 (1/1990)
- P. Elmer-DeWitt, Ghost in the Machine, TIME 29/1/1990
- D. Burke, All Circuits are Busy Now: The 1990 AT&T Long Distance Network Collapse (1995)
Bài viết tóm tắt từ video của kênh; nội dung mang tính giới thiệu.


