-
[nhạc đếm ngược: 7, 6, 5, 4, 3, 2, 1]
Internet: Gói tin, Định tuyến & Độ ổn định
-
Xin chào, tôi là Lynn, kỹ sư phần mềm
tại Spotify và tôi thừa nhận trước rằng
-
tôi thường coi thường độ ổn định
của Internet. Lượng thông tin khổng lồ
-
có trên Internet thực sự đáng kinh ngạc.
Nhưng làm thế nào để chắc chắn từng mẩu
-
dữ liệu sẽ được truyền đến bạn?
Nếu muốn phát nhạc trên Spotify, dường như
-
máy tính nối thẳng đến máy chủ Spotify
rồi Spotify gửi bài hát cho bạn qua
-
đường dẫn trực tiếp, riêng biệt. Thực ra,
Internet không hoạt động thế. Nếu Internet
-
cấu thành từ kết nối riêng, trực tiếp
thì sẽ chẳng thể nào hoạt động được
-
khi hàng triệu người cùng tham gia.
Nhất là khi không gì đảm bảo mọi đường dẫn
-
và máy tính luôn hoạt động. Thay vào đó,
dữ liệu sẽ di chuyển trên Internet kiểu
-
gián tiếp hơn. Cách đây rất lâu, vào đầu
những năm 1970, tôi và cộng sự Bob Kahn
-
bắt đầu nghiên cứu thiết kế tiền thân của
Internet ngày nay. Bob và tôi có nhiệm vụ
-
và cơ hội thiết kế các giao thức và
cấu trúc Internet. Rồi chúng tôi kiên trì
-
tham gia phát triển và cải tiến
Internet suốt từ thời đó cho đến tận
-
bây giờ. Cách thức truyền tải thông tin
từ máy tính này qua máy tính khác
-
cũng rất thú vị, không cần theo đường dẫn
cố định, thực ra đường dẫn có thể thay đổi
-
ngay khi hai máy đang trao đổi với nhau.
Thông tin trên Internet đi từ máy tính
-
này sang máy tính kia dưới dạng gọi là
gói tin và cách gói tin di chuyển từ nơi này
-
đến nơi khác trên Internet cũng rất giống với
cách chúng ta di chuyển giữa các nơi
-
bằng xe hơi. Tùy thuộc vào mật độ giao thông
hay tình trạng đường sá, bạn có thể chọn hoặc
-
buộc phải chọn tuyến đường khác để đi đến
nơi đó cho mỗi lần di chuyển. Và cũng giống
-
việc bạn có thể vận chuyển mọi thứ đồ bên trong
xe hơi, cũng có rất nhiều loại thông tin số có thể
-
được gửi đi bằng gói tin IP tuy nhiên, cũng có vài
hạn chế. Ví dụ giả sử bạn cần di chuyển
-
tàu con thoi từ nơi xây dựng
đến nơi phóng tàu. Tàu sẽ không
-
để vừa trong xe tải nên cần phải tách nó ra
thành nhiều phần và vận chuyển bằng cả đoàn
-
xe tải. Các xe tải có thể đi các tuyến đường khác nhau
và đến điểm đích vào những thời điểm
-
khác nhau. Nhưng một khi tất cả đã đến đó,
bạn có thể lắp ráp các phần thành
-
con tàu con thoi hoàn chỉnh và có thể phóng nó lên.
Thông tin trên Internet cũng hoạt động tương tự.
-
Nếu bạn muốn gửi một bức ảnh dung lượng lớn
cho bạn bè hoặc đăng lên trang web,
-
bức ảnh đó có thể bao gồm cả hàng chục triệu
bit 1 và 0, quá nặng để gửi cùng
-
trong một gói tin. Vì đó là dữ liệu trên máy tính,
máy tính gửi bức ảnh đó có thể nhanh chóng
-
chia nhỏ nó ra thành hàng trăm hoặc thậm chí hàng nghìn
phần nhỏ hơn gọi là gói tin. Không giống như xe hơi
-
hay xe tải, những gói tin này không cần tài xế
và chúng không tự chọn đường đi cho mình. Mỗi gói tin
-
sẽ có địa chỉ Internet của nơi nó đi
và nơi nó đến. Các máy tính đặc biệt
-
trên Internet mang tên định tuyến đóng vai trò như
viên quản lý giao thông, đảm bảo cho các gói tin di chuyển
-
thông suốt trên mạng. Nếu một định tuyến bị nghẽn,
các gói tin đơn lẻ có thể đi đường khác
-
trên Internet và có thể sẽ đến
điểm đích vào thời gian hơi lệch một chút
-
hoặc thậm chí là bị hư. Cùng tìm hiểu xem nó
diễn ra thế nào nào. Là một phần trong giao thức Internet,
-
mỗi định tuyến sẽ theo dõi nhiều đường dẫn
để gửi gói tin và chọn đường dẫn phù hợp
-
rẻ nhất cho từng mẩu dữ liệu dựa trên
địa chỉ IP của điểm đến cho gói tin.
-
Rẻ nhất ở đây không phải chỉ chi phí
mà là thời gian và các yếu tố phi kỹ thuật như chính trị
-
và quan hệ giữa các công ty. Thông thường,
định tuyến di chuyển tốt nhất của dữ liệu không nhất thiết
-
phải là cái trực tiếp nhất. Có nhiều đường dẫn để lựa chọn
cho phép mạng có thể chấp nhận sai sót. Có nghĩa là
-
mạng có thể liên tục gửi gói tin ngay cả khi
có lỗi nghiêm trọng ở đâu đó.
-
Đây là cơ sở cho nguyên tắc chính của
Internet: độ ổn định. Giờ, nếu bạn muốn
-
yêu cầu một vài dữ liệu và không phải tất cả được
truyền đến thì sao? Giả sử bạn muốn nghe nhạc.
-
Làm sao bạn chắc chắn được 100% rằng toàn bộ dữ liệu
sẽ được truyền đến để bài hát chạy thật mượt?
-
Giới thiệu với bạn một người bạn mới, TCP
(giao thức điều khiển truyền nhận). TCP quản lý việc gửi
-
và nhận toàn bộ dữ liệu của bạn dưới dạng gói tin.
Nó như kiểu dịch vụ gửi thư đảm bảo.
-
Khi bạn yêu cầu một bài hát trên thiết bị của mình, Spotify
sẽ gửi đi một bài hát đã được chia nhỏ thành nhiều gói tin.
-
Khi các gói tin của bạn đến nơi, TCP tiến hoàn kiểm định
toàn diện và gửi lại xác nhận
-
đã nhận từng gói tin. Nếu tất cả các gói tin đều
ở đó, TCP sẽ ký nhận giao hàng và thế là
-
hoàn tất. (bài hát được phát) Nếu TCP thấy thiếu
vài gói tin, nó sẽ không ký hoặc không thì
-
bài hát của bạn sẽ nghe chẳng mượt hoặc có thể
bị thiếu vài đoạn. Với mỗi gói tin bị thiếu hoặc
-
chưa hoàn chỉnh, Spotify sẽ tiến hành gửi lại.
Một khi TCP xác thực đã nhận được nhiều gói tin
-
của bài hát yêu cầu, bài hát sẽ
bắt đầu được phát. TCP và hệ thống
-
định tuyến tuyệt vời ở chỗ chúng có thể mở rộng.
Chúng có thể kết nối với 8 hoặc 8 tỷ thiết bị. Trên thực tế,
-
nhờ những nguyên tắc chấp nhận sai sót
và dự phòng này mà chúng ta thêm càng nhiều định tuyến
-
thì Internet lại càng ổn định. Điều tuyệt vời
nữa là chúng ta có thể phát triển và mở rộng Internet
-
mà không làm gián đoạn dịch vụ của bất kỳ ai
đang sử dụng. Internet cấu thành từ hàng trăm nghìn
-
mạng lưới và hàng tỷ máy tính
và thiết bị kết nối với nhau về mặt vật lý.
-
Những hệ thống cấu thành nên Internet này
kết nối và giao tiếp với nhau
-
và phối hợp với nhau nhờ vào những tiêu chuẩn đã
được thống nhất về cách thức gửi dữ liệu trên Internet.
-
Thiết bị điện toán hay các định tuyến trên Internet
giúp tất cả các gói tin tìm được đường
-
đến nơi chúng sẽ được tập hợp lại
theo thứ tự nếu cần. Việc này diễn ra hàng tỷ
-
lần mỗi ngày bất kể khi bạn và
mọi người đang gửi email, lướt web
-
gọi video, dùng ứng dụng điện thoại hay khi
các cảm biến hay thiết bị trên Internet
-
giao tiếp với nhau.