Website: Email : Tel (: 0918.775.368
INTERNET LÀM VIỆC NHƯ THẾ NÀO?
Trong bài này
Chuyển đổi packet
Các mạng được kết nối với nhau như thế nào
Một số lượng nhiều không kể xiết các thuật ngữ kỹ thuật
Bài này chứa những chi tiết về cách thức Internet thực sự truyền dữ liệu từ
nơi này sang nơi khác. Bạn có thể bỏ qua cả chương nếu bạn muốn. Nhưng đừng
làm như vậy vì tôi nghĩ rằng chương này thú vị. Ngoài ra, tôi đã nói với bạn từ
chương 1 rằng chương này sẽ cho bạn biết về TCP/IP nổi tiếng, do đó bạn sẽ không
muốn lãng phí nó đâu.
Tại sao bưu điện lại không giống như là công ty điện thoại nhỉ?
Về cơ bản, những gì Internet làm là truyền dữ liệu từ máy tính này sang máy
tính khác. Điều đó có khó lắm không? Không khó lắm nhưng khá phức tạp.
Những ví dụ truyền thông tin quen thuộc nhất trong đời sống hàng ngày là
bưu điện và công ty điện thoại. Nếu bạn muốn liên lạc với ai bằng điện thoại, bạn
nhấc máy và quay số. Khi đó công ty điện thoại sẽ sắp xếp một mạch điện tử từ
điện thoại của bạn đến điện thoại mà bạn đang gọi. Bạn và người kia sẽ nói chuyện
cho đến khi xong (hoặc nếu là một cuộc gọi bằng modem thì máy của bạn và máy
kia sẽ nói chuyện cho đến khi xong). Khi bạn gác máy, công ty điện thoại ngắt
mạch. Sau đó bạn có thể gọi cho một người khác. Tại một thời điểm bất kỳ, bạn chỉ
có thể có một cuộc gọi cho một ai đó mà thôi. (Vâng, có cách gọi ba-hướng, nhưng
điều đó không thành vấn đề). Cách này được gọi là chuyển mạch (circuit switching)
vì một mạch được thiết lập trong suốt thời gian đàm thoại. Internet không làm việc
theo cách này, do đó hãy quên nó đi (Đừng quên hẳn vì sau này chúng ta sẽ nói lại
về sự chuyển mạch mô phỏng).
Mô hình kia là bưu điện. Nếu bạn muốn gửi một bưu phẩm cho ai đó, bạn
viết địa chỉ của người nhận và địa chỉ của bạn trên đó rồi gửi đi. Cơ quan bưu điện
Hoa Kỳ không có các xe tải dành riêng chạy từ mỗi bưu điện này đến từng bưu
điện khác (chúng có thể không hiệu quả nhưng không đến nỗi không hiệu quả đến
1
Website: Email : Tel (: 0918.775.368
như vậy). Thay vào đó, bưu phẩm được dẫn từ bưu điện của bạn đến bưu điện trung
tâm, nơi nó được chất lên xe để đi theo một hướng đến chung rồi lại được chuyển
đến từ bưu điện này sang bưu điện khác một cách lặp lại cho đến khi nó đến được
bưu điện của người nhận, tại đó người phát thư sẽ phát bưu phẩm đến địa chỉ người
nhận trong ngày.
Điều này rất giống với cách Internet hoạt động. Mỗi khi máy chủ muốn gửi
một thông điệp tới máy chủ khác thì nó có thể gửi trực tiếp nếu người nhận cũng ở
trên mạng mà máy chủ ban đầu được kết nối trực tiếp. Trường hợp ngược lại, thì
máy chủ ban đầu phải gởi qua một máy chủ khác để nhờ chuyển thư. Máy chủ
chuyển thư này, được giả thiết là nối với ít nhất một mạng khác, lại gửi thông điệp
trực tiếp nếu có thể được hoặc chuyển thông điệp sang một máy chủ khác để
chuyển. Hoàn toàn bình thường đối với một thông điệp khi được chuyển qua hàng
tá hoặc nhiều hơn nữa các máy chuyển trên đường đi từ một phần của Net đến
phần kia.
Bạn có thể tự hỏi: "Căn cứ vào đâu để nói rằng bưu điện là một mô hình tốt
hơn công ty điện thoại?"
Đừng để bị lạc lối vì những điểm tương đồng. Những phàn nàn chủ yếu đối
với bưu điện là nó chậm chạp và làm mất đồ. Internet thỉnh thoảng cũng có những
vấn đề này nhưng không nhiều như việc gửi thư bằng giấy. Trong một ngày bận
rộn, Internet có thể bị chậm lại tuy nhiên thời gian để chuyển một bức thư vẫn
được đo bằng giây. Việc mất đồ hóa ra lại không phải là một vấn đề thực tế vì
những lý do sẽ thảo luận sau.
Tất cả thế giới là một packet
Bây giờ chúng ta hãy tiếp tục so sánh tương đồng với bưu điện thêm một
bước nữa. Giả sử bạn có một người bạn thân ở Papua New Guinea và bạn muốn
gửi cho anh ta một bản sao của bản thảo một cuốn sách mới và rất dày của bạn. (ở
New Gunea có rất ít hiệu sách). Không may thay, bản thảo đó cân nặng 15 pound
mà giới hạn của bưu phẩm đến New Guinea là 1 pound. Do đó bạn chia bản thảo
thành 15 phần và trên mỗi bưu phẩm bạn ghi vài chữ, ví dụ như PHầN 3/15 rồi gửi
2
Website: Email : Tel (: 0918.775.368
chúng đi. Sau cùng các gói hàng có thể đến hoặc có thể không đến theo đúng thứ
tự. Bạn của bạn sẽ nhận tất cả các gói, xếp chúng thứ tự trở lại và đọc.
Những mạng khác nhau trên Internet cũng hoạt động gần giống như vậy:
Chúng truyền dữ liệu đi thành từng khối gọi là packet, mỗi packet mang các địa chỉ
của người gửi và của người nhận (những số máy chủ tôi đã nói đến trong chương
2). Quy mô tối đa của một packet thay đổi tùy theo mạng nhưng thường là khoảng
vài ngàn octet (đơn vị để chỉ byte hay ký tự trên Internet). Một quy mô thông
thường là 1.536 octet, con số mà nguyên do của nó chẳng mấy ai còn biết đến, là
giới hạn trên mạng Ethernet. Những thông điệp quá lớn không thể gửi trong một
packet được truyền đi như nhiều packet. Một ưu thế của Internet so với bưu điện là
khi phần mềm Internet phá vỡ một khối dữ kiện lớn thành các mảnh nhỏ thì nó lại
ghép các mảnh đó trở lại không có vấn đề gì, trong khi bưu điện đôi khi bị sai sót
nếu bạn không gặp may.
Định nghĩa Internet
Tập hợp các quy ước dùng để chuyển các packet từ một máy chủ sang máy
chủ khác được gọi là Giao thức Internet (Internet Protocol - IP). Internet, một cách
hoàn toàn đơn giản, là tập hợp các mạng truyền các packet qua lại với nhau bằng
cách sử dụng IP.
Hoàn toàn có thể thiết lập một mạng sử dụng IP nhưng không thực sự kết nối
với Internet. Rất nhiều mạng được thiết lập theo cách này tại những công ty muốn
khai thác IP (miễn phí trên mọi trạm làm việc UNIX) nhưng hoàn toàn không kết
nối với thế giới bên ngoài hoặc chỉ được kết nối bằng cách sử dụng thư tín gọi điện.
Trong vòng một hai năm gần đây, rất nhiều các mạng không kết nối đã gắn với
Internet vì những lợi thế khi ở trên Net đã gia tăng và vì những nhà cung ứng
Internet thương mại mới xuất hiện đã làm cho chi phí kết nối giảm xuống chỉ còn
khoảng 1/10 so với trước.
Rất nhiều các giao thức khác được sử dụng kết hợp với IP. Hai giao thức nổi
tiếng nhất là Transport Control Protocol (TCP) và User Datagram Protocol
(UDP). TCP được sử dụng rộng rãi đến nỗi nhiều người tham chiếu đến TCP/IP,
3
Website: Email : Tel (: 0918.775.368
một sự kết hợp giữa TCP và IP được hầu hết các ứng dụng Internet sử dụng.
Tôi sẽ xây một cổng nối lên thiên đường
Có ba loại công cụ truyền packet từ mạng này sang mạng khác: bridge,
router và cổng nối. Dưới đây là tóm tắt những sự khác nhau giữa chúng để bạn
phòng thân khi tham dự các buổi tiệc cocktail với những tay chuyên gia.
Bridge
Một bridge nối 2 mạng theo cách làm cho chúng trở thành một mạng lớn
duy nhất. Các bridge phổ biến nhất được sử dụng để nối hai mạng Ethernet. Bridge
quan sát các packet trên mọi mạng và khi nó thấy một packet trên một mạng hướng
đến một máy chủ trên mạng khác thì bridge sẽ chép packet này qua đó.
Các số máy chủ Ethernet, khác với các số máy chủ Internet được gán bởi số
series của card Ethernet thay vì bởi số của mạng, do đó bridge phải xây dựng một
bảng liệt kê những máy chủ nào ở trên mạng nào, dựa trên địa chỉ hồi báo của các
packet lưu thông trên từng mạng. Thật là kỳ diệu khi điều này thực hiện được.
Một điểm hay của bridge là chúng hoạt động rất trong suốt - các máy chủ có
các packet được bridge qua lại với nhau không cần biết là đang có các bridge tham
gia vào, và một bridge đơn có thể xử lý được nhiều loại lưu thông trên mạng (như
Novell và Banyan cũng như là IP) cùng một lúc. Bất lợi của các bridge là chúng chỉ
nối những mạng cùng loại và dùng brdige cho những mạng hoạt động nhanh sẽ khó
khăn nếu chúng không nằm gần nhau về mặt vật lý.
Router
Một router nối hai hoặc nhiều mạng IP. Các máy chủ trên mạng phải nhận
thức rằng có sự tham gia của một router nhưng điều này không thành vấn đề đối
với các mạng IP vì một trong những quy tắc của IP là mọi máy chủ phải có thể giao
tiếp được với router.
Một điều hay của router là về mặt vật lý chúng có thể nối với các
mạng khác nhau, từ những Ethernet cục bộ và nhanh cho đến đường dây điện thoại
đường dài và chậm hơn.
Một điều dở của router là chúng chậm hơn bridge vì chúng đòi hỏi
4
Website: Email : Tel (: 0918.775.368
nhiều tính toán hơn để tìm ra cách dẫn đường cho các packet đặc biệt khi các mạng
có những tốc độ khác nhau.
Một mạng hoạt động nhanh có thể phát các packet nhanh hơn nhiều so với
một mạng chậm, gây ra sự nghẽn mạng, do đó router có thể yêu cầu máy chủ gửi
packet giao tiếp chậm hơn.
Một vấn đề khác là các router thì có đặc điểm chuyên biệt theo giao thức -
tức là, cách một máy chủ giao tiếp với một router IP thì khác với cách nó giao tiếp
với một router Novell hay DECnet. Hiện nay vấn đề này được giải quyết bởi một
mạng biết đường dẫn của mọi loại mạng được biết đến. Ngày nay, tất cả các router
thương mại đều có thể xử lý nhiều loại giao thức, thường với chi phí phụ thêm cho
mỗi giao thức.
Cổng nối
Một cổng nối ghép hai loại giao thức với nhau. Nếu ví dụ mạng của bạn sử
dụng IP và mạng của ai đó sử dụng Novell, DECnet, SNA hoặc một thứ gì khác,
một cổng nối sẽ chuyển đổi lưu thông từ loại giao thức này sang loại khác. Các
cổng nối không chỉ phân biệt các giao thức, chúng còn phân biệt ứng dụng vì cách
bạn chuyển thư điện tử từ mạng này sang mạng khác thì hoàn toàn khác cách bạn
chuyển đổi một phiên làm việc ở trạm cuối từ xa.
Router: hay, dở và cực kỳ dở
Một trong những chủ đề nóng bỏng về Internet hiện nay là Chính sách tạo
đường dẫn (Routing Policy). Internet phần lớn là được kết nối dư thừa - tức là liên
lạc từ mạng này sang mạng khác có thể được hoàn thành bằng nhiều cách. Trước
kia, tìm một đường dẫn tương đối dễ vì mục tiêu chính là tìm ra con đường nhanh
nhất đến từng mạng đã biết. Vì chỉ có một số ít mạng, do đó các router (những máy
chủ chuyển packet từ mạng này sang mạng khác) chỉ cần so sánh để tìm ra con
đường ngắn nhất. Nếu bạn muốn tỏ ra kỳ quặc và có hai router nhanh như nhau thì
bạn có thể so sánh lưu thông trên từng đường dẫn và gửi các packet bằng đường
dẫn ít bị bận hơn.
5