Bài giảng Mạng máy tính - Chương 3: Lớp Transport

Mục tiêu:

hiểu các nguyên tắc đằng sau các dịch vụ lớp transport:

multiplexing/demultiplexing

truyền dữ liệu tin cậy

điều khiển luồng

điều khiển tắc nghẽn

 

ppt111 trang | Chuyên mục: Mạng Máy Tính | Chia sẻ: dkS00TYs | Lượt xem: 5693 | Lượt tải: 1download
Tóm tắt nội dung Bài giảng Mạng máy tính - Chương 3: Lớp Transport, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
ayer 3-* Các nguyên nhân/chi phí của tắc nghẽn: tình huống 2 1 router, các bộ đệm có giới hạn bên gửi truyền lại các gói đã mất chia sẻ vô hạn các bộ đệm ouput Host A lin : dữ liệu gốc Host B lout l'in : dữ liệu gốc, cùng với dữ liệu truyền lại Transport Layer 3-* Các nguyên nhân/chi phí của tắc nghẽn: tình huống 2 luôn luôn: truyền lại “hoàn toàn” chỉ khi mất mát: truyền lại vì trễ (không mất) làm cho lớn hơn với cùng “các chi phí” của tắc nghẽn: nhiều việc (truyền lại) các truyền lại không cần thiết: liên kết nhiều bản sao của gói Transport Layer 3-* Các nguyên nhân/chi phí của tắc nghẽn: tình huống 3 4 người gửi các đường qua nhiều hop timeout/truyền lại Hỏi: điều gì xảy ra nếu và tăng lên? chia sẻ vô hạn các bộ đệm ouput lin : dữ liệu gốc lout l'in : dữ liệu gốc, cùng với dữ liệu truyền lại Transport Layer 3-* Các nguyên nhân/chi phí của tắc nghẽn: tình huống 3 “chi phí” khác của tắc nghẽn: khi các gói bị bỏ, bất kỳ “khả năng truyền upstream dùng cho gói đó sẽ bị lãng phí!” lout Transport Layer 3-* Các cách tiếp cận đối với điều khiển tắc nghẽn điều khiển tắc nghẽn end-end: không có phản hồi rõ ràng từ mạng tắc nghẽn được suy ra từ việc quan sát các hệ thống đầu cuối có mất mát, trễ tiếp cận được quản lý bởi TCP điều khiển tắc nghẽn có sự hỗ trợ của mạng: các router cung cấp phản hồi về các hệ thống đầu cuối 1 bit duy nhất chỉ thị tắc nghẽn (SNA, DECbit, TCP/IP ECN, ATM) tốc độ sẽ gửi được xác định rõ ràng 2 cách: Transport Layer 3-* Ví dụ: điều khiển tắc nghẽn ATM ABR ABR: tốc độ bit sẵn sàng: “dịch vụ mềm dẻo” nếu đường gửi “chưa hết”: bên gửi sẽ dùng băng thông sẵn sàng nếu đường gửi tắc nghẽn: bên gửi điều tiết với tốc độ tối thiểu RM (resource management): gửi bởi bên gửi, rải rác với các ô dữ liệu các bit trong ô thiết lập bởi các switch bit NI : không tăng tốc độ (tắc nghẽn nhẹ) bit CI : tắc nghẽn rõ rệt Các ô RM được trả về bên gửi từ bên nhận với nguyên vẹn các bit Transport Layer 3-* Ví dụ: điều khiển tắc nghẽn ATM ABR trường 2-byte ER trong ô RM switch đã tắc nghẽn có thể có giá trị ER thấp hơn trong ô tốc độ gửi do đó có thể được hỗ trợ tối đa trên đường EFCI bit trong các ô dữ liệu: được cài giá trị 1 trong switch đã tắc nghẽn nếu ô dữ liệu đứng trước ô RM có cài EFCI, bên gửi sẽ cài bit CI trong ô RM trả về Transport Layer 3-* Chương 3: Nội dung trình bày 3.1 Các dịch vụ lớp Transport 3.2 Multiplexing và demultiplexing 3.3 Vận chuyển không kết nối: UDP 3.4 Các nguyên lý của việc truyền dữ liệu tin cậy 3.5 Vận chuyển hướng kết nối: TCP cấu trúc phân đoạn truyền dữ liệu tin cậy điều khiển luồng quản lý kết nối 3.6 Các nguyên lý của điều khiển tắc nghẽn 3.7 Điều khiển tắc nghẽn TCP Transport Layer 3-* TCP điều khiển tắc nghẽn: additive tăng lên, multiplicative giảm xuống Cách tiếp cận: tăng tốc độ truyền (kích thước cửa sổ), tìm khả năng băng thông có thể, cho đến khi có mất mát xảy ra additive tăng lên: tăng CongWin bởi 1 MSS mỗi RTT cho đến khi có mất mát xảy ra multiplicative giảm xuống: bỏ CongWin trong nửa giai đoạn sau khi mất mát time kích thước cửa sổ tắc nghẽn Tìm kiếm băng thông Transport Layer 3-* TCP điều khiển tắc nghẽn: chi tiết bên gửi hạn chế việc truyền: LastByteSent-LastByteAcked  CongWin Công thức, CongWin thay đổi, chức năng là nhận biết tắc nghẽn trên mạng Làm thế nào bên gửi nhận biết tắc nghẽn? mất mát xảy ra = timeout hoặc 3 ack trùng lặp bên gửi giảm tốc độ (CongWin) sau khi mất mát xảy ra 3 cơ chế: AIMD khởi động chậm thận trọng sau khi có các sự kiện timeout Transport Layer 3-* TCP khởi động chậm Khi kết nối bắt đầu, CongWin = 1 MSS Ví dụ: MSS = 500 bytes & RTT = 200 ms tốc độ khởi tạo = 20 kbps băng thông sẵn sàng có thể >> MSS/RTT mong muốn nhanh chóng tăng tốc lên tốc độ có thể đáp ứng Khi kết nối bắt đầu, tăng tốc lên rất nhanh cho đến khi sự cố mất mát xảy ra đầu tiên Transport Layer 3-* TCP khởi động chậm (tt) Khi kết nối bắt đầu, tăng tốc lên rất nhanh cho đến khi sự cố mất mát xảy ra đầu tiên: nhân đôi CongWin mỗi RTT hoàn thành nhờ tăng CongWin ứng với mỗi ACK đã nhận Tổng kết: tốc độ khởi đầu là chậm nhưng sau đó tăng tốc rất nhanh Host A 1 đoạn RTT Host B 2 đoạn 4 đoạn Transport Layer 3-* Tinh chế Hỏi: Khi nào việc tăng tốc trở thành tuyến tính? Trả lời: Khi CongWin đạt đến 1/2 giá trị của nó trước khi timeout. Hiện thực: Ngưỡng thay đổi Tại thời điểm có sự cố mất mát, ngưỡng được cài giá trị bằng ½ của CongWin ngay trước đó Transport Layer 3-* Tinh chế: nhận biết mất mát Sau 3 ACK trùng lặp: CongWin sẽ giảm 1/2 kích thước cửa sổ tăng tuyến tính nhưng sau sự cố timeout: CongWin thay giá trị bằng 1 MSS; kích thước cửa sổ tăng cấp lũy thừa khi đến một ngưỡng thì tăng tuyến tính 3 ACK trùng nhau chỉ ra khả năng truyền của mạng timeout chỉ thị “nhiều cảnh báo” về tình huống tắc nghẽn Nguyên lý: Transport Layer 3-* Tổng kết: TCP điều khiển tắc nghẽn Khi CongWin dưới Threshold, bên gửi đang trong giai đoạn khởi động chậm, kích thước cửa sổ tăng nhanh theo cấp lũy thừa. Khi CongWin trên Threshold, bên gửi đang trong giai đoạn tránh tắc nghẽn, kích thước cửa sổ tăng nhanh theo cấp tuyến tính. Khi có 3 ACK trùng lặp xảy ra, Threshold = CongWin/2 và CongWin = Threshold. Khi timeout xảy ra, Threshold = CongWin/2 và CongWin = 1 MSS. Transport Layer 3-* TCP điều khiển tắc nghẽn bên gửi Transport Layer 3-* TCP throughput Throughout trung bình của TCP biểu diễn qua kích thước của sổ và RTT? Bỏ qua trạng thái “Khởi động chậm” Cho W là kích thước cửa sổ khi có mất mát xảy ra. Khi kích thước cửa sổ = W, lưu lượng = W/RTT Chỉ ngay sau khi mất mát, cửa sổ giảm xuống = W/2, lưu lượng = W/2RTT. throughout trung bình: 0.75 W/RTT Transport Layer 3-* TCP tương lai Ví dụ: các đoạn dài 1500 byte, RTT 100ms, lưu lượng 10 Gbps Kích thước cửa sổ yêu cầu W = 83,333 đoạn trên đường truyền Lưu lượng trong các trường hợp mất mát: ➜ L = 2·10-10 Phiên bản mới của TCP dành cho nhu cầu tốc độ cao! Transport Layer 3-* Mục tiêu: nếu K phiên làm việc TCP chia sẻ kết nối cổ chai của băng thông là R, mỗi phiên có tốc độ trung bình là R/K TCP: tính công bằng Transport Layer 3-* Tại sao phải TCP công bằng? 2 phiên làm việc cạnh tranh nhau: Additive tăng, lưu lượng tăng multiplicative giảm lưu lượng tương xứng R R chia sẻ băng thông bằng nhau Connection 1 throughput Connection 2 throughput tránh tắc nghẽn: additive tăng lên mất mát: giảm cửa sổ bằng 1/2 tránh tắc nghẽn: additive tăng lên mất mát: giảm cửa sổ bằng 1/2 Transport Layer 3-* TCP: tính công bằng (tt) Tính công bằng & UDP nhiều ứng dụng thường không dùng TCP không muốn tốc độ bị điều tiết do điều khiển tắc nghẽn Thay bằng dùng UDP: truyền audio/video với tốc độ ổn định, chịu được mất mát Nghiên cứu: giao thức thân thiện với TCP Tính công bằng & các kết nối TCP song song không có gì ngăn cản việc ứng dụng mở các kết nối song song giữa 2 host. Trình duyệt Web làm giống như thế Ví dụ: tốc độ R hỗ trợ 9 kết nối ; ứng dụng mới yêu cầu 1 TCP, có tốc độ R/10 ứng dụng mới yêu cầu 11 TCP, có tốc độ R/2 ! Transport Layer 3-* Mô hình trễ Hỏi: Mất bao lâu để nhận 1 đối tượng từ Web server sau khi gửi yêu cầu? Bỏ qua tắc nghẽn, trễ bị ảnh hưởng bởi: thiết lập kết nối TCP trễ truyền dữ liệu khởi động chậm Notation, các giả định: Giả sử một kết nối giữa client và server có tốc độ R S: MSS (bits) O: kích thước đối tượng (bits) không truyền lại (không mất mát, không hỏng) Kích thước cửa sổ: Giả định 1: cửa sổ tắc nghẽn cố định, có W đoạn Sau đó cửa sổ thay đổi, mô hình khởi động chậm Transport Layer 3-* Cửa sổ tắc nghẽn cố định (1) Trường hợp đầu tiên: WS/R > RTT + S/R: cho đoạn đầu tiên trong cửa sổ trả về trước khi cửa sổ dữ liệu gửi ACK trễ = 2RTT + O/R Transport Layer 3-* Cửa sổ tắc nghẽn cố định (2) Trường hợp thứ hai: WS/R < RTT + S/R: sent chờ cho ACK sau khi gửi dữ liệu trễ = 2RTT + O/R + (K-1)[S/R + RTT - WS/R] Transport Layer 3-* TCP Mô hình trễ: Khởi động chậm (1) Bây giờ giả sử kích thước cửa sổ tăng lên tùy theo quá trình khởi động chậm Độ trễ của một đối tượng sẽ là: trong đó P là số lần TCP rảnh ở tại server: - trong đó Q là số lần server rảnh nếu đối tượng đã khởi tạo kích thước - và K là số lượng cửa sổ bao trùm đối tượng Transport Layer 3-* TCP Mô hình trễ: Khởi động chậm (2) Ví dụ: O/S = 15 đoạn K = 4 cửa sổ Q = 2 P = min{K-1,Q} = 2 Server rảnh P=2 lần Các thành phần trễ: 2 RTT dành cho thiết lập kết nối và yêu cầu O/R để truyền đối tượng thời gian server rảnh bởi vì khởi động chậm Server rảnh:  P = min{K-1,Q} lần Transport Layer 3-* TCP Mô hình trễ(3) Transport Layer 3-* TCP Mô hình trễ (4) cách tính toán Q tương tự (xem HW). K = số lượng cửa sổ bao trùm đối tượng Làm thế nào tính được K ? Transport Layer 3-* HTTP Mô hình Giả sử trang Web chứa: 1 trang HTML (kích thước O bits) M hình ảnh (mỗi cái kích thướcO bits) HTTP không bền vững: M+1 TCP kết nối Thời gian đáp ứng = (M+1)O/R + (M+1)2RTT + tổng số thời gian rảnh HTTP bền vững: 2 RTT để yêu cầu và nhận file HTML 1 RTT để yêu cầu và nhận M hình ảnh Thời gian đáp ứng = (M+1)O/R + 3RTT + tổng số thời gian rảnh HTTP không bền vững với X kết nối song song Giả sử M/X là số nguyên. 1 TCP kết nối cho file M/X thiết lập các kết nối song song cho các hình ảnh Thời gian đáp ứng = (M+1)O/R + (M/X + 1)2RTT + tổng số thời gian rảnh Transport Layer 3-* HTTP thời gian đáp ứng (giây) RTT = 100 msec, O = 5 Kbytes, M=10 và X=5 Với băng thông thấp, thời gian kết nối & đáp ứng trội hơn thời gian truyền Các kết nối bền vững chỉ cho sự cải thiện không đáng kể trên các kết nối song song Transport Layer 3-* HTTP thời gian đáp ứng (giây) RTT =1 sec, O = 5 Kbytes, M=10 and X=5 Với RTT lớn hơn, thời gian đáp ứng trội hơn thời gian trễ chờ thiết lập kết nối TCP & khởi động chậm. Các kết nối bền vững bây giờ cho thấy cải thiện rõ rệt: đặc biệt với các mạng băng thông cao Transport Layer 3-* Chương 3: Tổng kết các nguyên lý của các dịch vụ lớp transport multiplexing, demultiplexing truyền dữ liệu tin cậy điều khiển luồng điều khiển tắc nghẽn khởi tạo và hiện thực trong Internet UDP TCP Tiếp theo: nghiên cứu xong các vấn đề “ngoài biên” (các lớp application, transport) chuẩn bị vào phần “lõi” của mạng 

File đính kèm:

  • pptBài giảng Mạng máy tính - Chương 3 Lớp Transport.ppt