1.3.1 Chuyển mạch gói
trong một ứng dụng mạng, hệ thống kết thúc trao đổi thông tin với nhau. Tin nhắn
có thể chứa bất cứ điều gì các nhà thiết kế ứng dụng muốn. Tin nhắn có thể thực hiện một
chức năng điều khiển (ví dụ, "Hi" tin nhắn trong ví dụ của chúng tôi bắt tay vào
hình 1.2) hoặc có thể chứa dữ liệu, chẳng hạn như một email, một hình ảnh JPEG, hoặc MP3
tập tin âm thanh. Để gửi một tin nhắn từ một hệ thống cuối nguồn để một hệ thống đầu cuối đích,
nguồn phá vỡ thông điệp dài thành nhiều phần nhỏ hơn của dữ liệu được gọi là các gói tin.
Giữa nguồn và đích, mỗi gói tin đi qua các liên kết truyền thông
và chuyển mạch gói (mà có hai chiếm ưu thế loại, thiết bị định tuyến và linklayer
chuyển mạch). Các gói tin được truyền trên mỗi liên kết truyền thông với tốc độ
tương đương với tốc độ truyền tải đầy đủ của liên kết. Vì vậy, nếu một hệ thống cuối nguồn hoặc một gói
chuyển đổi là gửi một gói tin L bít trên một liên kết với các bit truyền dẫn tốc độ R / giây, sau đó
thời gian để truyền tải các gói dữ liệu là L / R giây.
Store-and-Forward Transmission
Hầu hết các gói tin sử dụng thiết bị chuyển mạch store-and-forward truyền tại các đầu vào cho các
liên kết. Store-and-forward truyền có nghĩa là chuyển mạch gói phải nhận
toàn bộ gói tin trước khi nó có thể bắt đầu để truyền tải các bit đầu tiên của các gói trên các
liên kết ngoài. Để khám phá store-and-forward truyền một cách chi tiết hơn, hãy xem xét
một mạng đơn giản gồm hai hệ thống đầu cuối được kết nối bởi một router duy nhất, như
thể hiện trong hình 1.11. Thường, một router có nhiều liên kết sự việc, kể từ khi công việc của nó
là chuyển đổi sang một gói tin đến vào một liên kết đi; trong ví dụ đơn giản này, các
router có nhiệm vụ khá đơn giản của chuyển một gói tin từ một (đầu vào) liên kết để
chỉ các liên kết khác kèm theo. Trong ví dụ này, các nguồn có ba gói, mỗi
bao gồm các bit L, để gửi đến đích. Tại các bản chụp thời gian được hiển thị trong
Hình 1.11, nguồn đã truyền tải một số gói 1, và phía trước của gói 1
đã đến router. Bởi vì router sử dụng lưu trữ và chuyển tiếp,
trong khoảnh khắc này của thời gian, các bộ định tuyến không thể truyền tải các bit nó đã nhận được; thay vào đó nó
đầu tiên phải đệm (tức là, "cửa hàng") bit của gói tin. Chỉ sau khi router đã nhận được
tất cả các bit của gói tin nó có thể bắt đầu để truyền (tức là, "chuyển tiếp") các gói trên các
liên kết ngoài. Để đạt được một số sâu vào store-and-forward truyền, bây giờ chúng ta
tính toán số lượng thời gian mà trôi qua từ khi các nguồn bắt đầu gởi
gói tin đến đích đã nhận được toàn bộ gói. (Ở đây chúng ta sẽ bỏ qua
sự chậm trễ công tác tuyên truyền thời gian cần cho các bit để đi trên dây ở gần
tốc độ ánh sáng, mà sẽ được thảo luận trong mục 1.4.) Các nguồn bắt đầu truyền
tại thời điểm 0; lúc L / R giây, nguồn đã truyền tải toàn bộ gói tin, và
toàn bộ gói tin đã được nhận và được lưu trữ tại các bộ định tuyến (vì không có tuyên truyền
chậm trễ). Vào lúc L / R giây, kể từ khi các bộ định tuyến đã chỉ nhận được toàn bộ
gói tin, nó có thể bắt đầu truyền các gói trên các liên kết đi theo hướng các điểm đến;
lúc 2L / R, router đã truyền tải toàn bộ gói tin, và toàn bộ
gói đã được nhận bởi đích đến. Như vậy, tổng số chậm trễ là 2L / R. Nếu
việc chuyển đổi thay vì chuyển tiếp bit ngay sau khi nhận được (mà không nhận được
toàn bộ gói tin), sau đó tổng số chậm trễ sẽ là L / R kể từ bit không được tổ chức tại
các router. Nhưng, như chúng ta sẽ thảo luận trong Phần 1.4, router cần phải nhận, lưu trữ, và
xử lý toàn bộ gói tin trước khi chuyển tiếp.
Bây giờ chúng ta hãy tính toán số lượng thời gian mà trôi qua từ khi các nguồn
bắt đầu gửi gói tin đầu tiên cho đến khi các điểm đã nhận được tất cả ba gói.
Như trước đây, vào thời điểm L / R, router bắt đầu để chuyển tiếp các gói tin đầu tiên. Nhưng cũng lúc
L / R, nguồn này sẽ bắt đầu gửi các gói tin thứ hai, kể từ khi nó vừa hoàn thành việc gửi
toàn bộ gói tin đầu tiên. Như vậy, tại thời điểm 2L / R, đích đến đã nhận được đầu tiên
gói dữ liệu và các bộ định tuyến đã nhận được các gói tin thứ hai. Tương tự như vậy, tại thời điểm 3L / R, các
điểm đã nhận được hai gói đầu tiên và router đã nhận được ba
gói. Cuối cùng, vào thời điểm 4L / R đích đã nhận được tất cả ba gói!
Bây giờ chúng ta xem xét các trường hợp chung của việc gửi một gói tin từ nguồn tới đích
trên một con đường gồm N liên kết mỗi tỷ lệ R (như vậy, có N-1 router
giữa nguồn và đích). Áp dụng cùng một logic như trên, chúng ta thấy rằng sự
chậm trễ end-to-end là:
(1.1)
Bây giờ bạn có thể muốn thử để xác định những sự chậm trễ sẽ được cho các gói tin P gửi
qua một loạt những tồn tại liên kết.
Tỷ lệ cổ @ để @ cuối = N
L
R
Nguồn
R bps
2 1
Mặt trước của gói 1 Điểm đến
được lưu trữ trong bộ định tuyến,
chờ còn lại
bit trước khi chuyển tiếp
3
Hình 1.11 Store-and-forward chuyển mạch gói
Xếp hàng chậm trễ và Packet Loss
Mỗi chuyển mạch gói đã nhiều liên kết gắn liền với nó. Đối với mỗi liên kết đính kèm, các
chuyển mạch gói có một bộ đệm đầu ra (còn gọi là hàng đợi đầu ra), trong đó lưu trữ
các gói tin router là về để gửi vào liên kết đó. Các bộ đệm đầu ra chơi một phím
vai trò trong chuyển mạch gói. Nếu một gói tin đến cần phải được truyền vào một liên kết, nhưng
thấy các link bận rộn với việc truyền tải các gói dữ liệu khác, các gói tin đến phải
chờ đợi trong bộ đệm đầu ra. Vì vậy, ngoài việc chậm trễ store-and-forward, các gói tin
bị đầu ra chậm trễ xếp hàng đệm. Những sự chậm trễ là thay đổi và phụ thuộc vào
mức độ tắc nghẽn trong mạng. Vì số lượng không gian đệm là hữu hạn, một
gói tin đến có thể thấy rằng các bộ đệm là hoàn toàn đầy đủ với các gói khác đang chờ
để truyền. Trong trường hợp này, mất gói tin sẽ xảy ra hoặc về các gói tin đến
hoặc một trong các gói dữ liệu đã-xếp hàng đợi sẽ được giảm xuống.
Hình 1.12 minh họa một mạng chuyển mạch gói đơn giản. Như trong hình 1.11,
các gói tin được đại diện bởi tấm ba chiều. Chiều rộng của một phiến đại diện cho
số bit trong gói. Trong hình này, tất cả các gói có cùng chiều rộng và
do đó chiều dài tương tự. Giả sử máy chủ A và B đang gửi gói tin đến host E. máy chủ
A và B đầu tiên gửi các gói tin của họ cùng 10 Mbps liên kết Ethernet đến router đầu tiên. Các
bộ định tuyến sau đó chỉ đạo các gói tin đến 1,5 Mbps link. Nếu, trong một khoảng thời gian ngắn
thời gian, tỷ lệ xuất hiện của các gói tin đến router (khi chuyển thành các bit mỗi giây)
vượt quá 1,5 Mbps, ùn tắc sẽ xảy ra tại các bộ định tuyến như các gói hàng đợi vào những liên kết
đầu ra bộ đệm trước khi được truyền vào các liên kết. Ví dụ, nếu Host A và B
mỗi gửi một vụ nổ trong năm gói back-to-back cùng một lúc, sau đó hầu hết các
gói tin sẽ dành một chút thời gian chờ đợi trong hàng đợi. Tình hình là, trên thực tế, hoàn toàn
tương tự như nhiều phổ biến ngày tình huống, ví dụ, khi chúng tôi chờ đợi trong dòng cho
một rút tiền ngân hàng hoặc chờ đợi ở phía trước của một tollbooth. Chúng tôi sẽ kiểm tra sự chậm trễ này xếp hàng trong
chi tiết hơn trong mục 1.4.
1.3 • THE CORE NETWORK 25
10 Mbps Ethernet
Key:
Gói
A
B
C
DE
1.5 Mbps
Queue của
gói tin chờ đợi
cho liên kết đầu ra
Hình 1.12 Chuyển mạch gói
26 CHƯƠNG 1 • NETWORKS MÁY TÍNH VÀ THE INTERNET
Bàn Forwarding and Protocols Routing
Trước đó, chúng tôi cho biết rằng một router có một gói tin đến trên một trong những trực thuộc
liên kết truyền thông và chuyển tiếp gói tin đó lên nhau của truyền thông trực thuộc
liên kết. Nhưng làm thế nào router xác định liên kết nó nên chuyển tiếp
các gói trên? Chuyển tiếp gói tin được thực sự thực hiện theo những cách khác nhau trong khác nhau
loại mạng máy tính. Ở đây, chúng tôi mô tả ngắn gọn như thế nào nó được thực hiện trong
Internet.
Trong Internet, mỗi hệ thống đầu cuối có một địa chỉ được gọi là một địa chỉ IP. Khi một
hệ thống mã nguồn nào đó muốn gửi một gói tin đến một hệ thống đầu cuối đích, các nguồn
bao gồm địa chỉ IP của đích trong header của gói tin. Như với các địa chỉ bưu điện,
địa chỉ này có một cấu trúc phân cấp. Khi một gói tin đến một bộ định tuyến trong
mạng, router kiểm tra một phần của địa chỉ đích của gói tin và chuyển tiếp
các gói tin đến một router lân cận. Cụ thể hơn, mỗi router có một
bảng chuyển tiếp mà các bản đồ địa chỉ đích (hoặc các phần của các điểm đến
địa chỉ) để liên kết ngoài đó của router. Khi một gói tin đến một bộ định tuyến, các
bộ định tuyến kiểm tra địa chỉ và tìm kiếm bảng chuyển tiếp của nó, bằng cách sử dụng địa điểm này
địa chỉ, để tìm các liên kết đi thích hợp. Các bộ định tuyến sau đó chỉ đạo các gói tin đến
outbound link này.
Quá trình định tuyến end-to-end là tương tự như một trình điều khiển xe những người không sử dụng
bản đồ nhưng thay vì thích để hỏi đường. Ví dụ, giả Joe là lái xe
từ Philadelphia đến 156 Lakeside Drive ở Orlando, Florida. Joe đầu tiên ổ đĩa để mình
trạm xăng gần và hỏi làm thế nào để có được đến 156 Lakeside Drive ở Orlando,
Florida. Các trạm xăng attendant chiết xuất từ các phần Florida của địa chỉ và
nói với Joe rằng anh ta cần để có được vào cao tốc liên bang I-95 Nam, trong đó có một
lối vào ngay cạnh trạm xăng. Ông cũng nói với Joe rằng một khi anh ta đi vào Florida,
ông nên hỏi người khác ở đó. Joe sau đó mất I-95 Nam khi ông ta đến Jacksonville,
Florida, và lúc đó ông ta hỏi một trạm attendant khí đường.
Các tiếp viên chiết xuất từ các phần Orlando của địa chỉ và nói với Joe rằng anh
nên tiếp tục trên I-95 đến Daytona Beach và sau đó yêu cầu người khác. Trong Daytona
Beach, một trạm xăng tiếp viên cũng trích ra phần Orlando của
địa chỉ và nói với Joe rằng anh nên lấy I-4 trực tiếp đến Orlando. Joe mất I-4 và
xuống xe tại lối ra Orlando. Joe đi đến một trạm xăng giả, và lần này
tiếp viên chiết xuất từ các phần Lakeside Drive của địa chỉ và nói với Joe những
con đường anh phải tuân theo để có được để Lakeside Drive. Khi Joe đạt Lakeside Drive, ông
hỏi một đứa trẻ trên một chiếc xe đạp như thế nào để có được đến đích của mình. Những đứa trẻ trích phần 156
của địa chỉ và các điểm đến nhà. Joe cuối cùng đến được đích cuối cùng của mình.
Trong tương tự ở trên, các tiếp viên trạm xăng và trẻ em
đang được dịch, vui lòng đợi..