Mạng máy tính - Bài 6: Tầng truyền tải
Bạn đang xem 20 trang mẫu của tài liệu "Mạng máy tính - Bài 6: Tầng truyền tải", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- mang_may_tinh_bai_6_tang_truyen_tai.pdf
Nội dung text: Mạng máy tính - Bài 6: Tầng truyền tải
- Trường Đại Học Bách Khoa Tp.HCM Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng Mạng máy tính ThS. NGUYỄN CAO ĐẠT E-mail:dat@cse.hcmut.edu.vn
- Bài giảng 6: Tầng truyền tải Tham khảo: Chương 3: “Computer Networking – A top-down approach” Kurose & Ross, 5th ed., Addison Wesley, 2010. Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 2
- Chương 3: Tầng truyền tải Mục tiêu: hiểu rõ các nguyên tìm hiểu về các giao thức tắc đằng sau các dịch tầng truyền tải trong vụ của tầng truyền Internet: tải: UDP: truyền tải không kết nối dồn/tách TCP: truyền tải hương kết nối truyền tải dữ liệu tin Kiểm soát tắc nghẽn trong cậy TCP kiểm soát lưu lượng kiểm soát tắc nghẽn Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 3
- Chương 3: Mục lục 3.1 Các dịch vụ tầng-truyền tải 3.4 Sự truyền tải hướng 3.2 Sự dồn và tách kết nối : TCP cấu trúc đoạn tin 3.3 Sự truyền tải không kết nối: UDP truyền tải dự liệu tin cậy kiểm soát lưu lượng quản lý kết nối 3.5 Các nguyên lý của kiểm soát tắc nghẽn 3.6 Kiểm soát tắc nghẽn trong TCP Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 4
- Giao thức và dịch vụ truyền tải ứng dụng cung cấp một kênh liên lạc luận lý truyền tải mạng giữa các tiến trình ứng dụng trên liên kết dl những máy khác nhau vật lý các giao thức truyền tải chạy trên các máy đầu cuối phía gửi: chia thông điệp của ứng dụng thành những đoạn (segment), đẩy xuống tầng mạng phía nhận: ráp lại các đoạn thành ứng dụng thông điệp hoàn chỉnh, đẩy lên truyền tải mạng tầng ứ/d liên kết dl vật lý các giao thức truyền tải Internet: TCP và UDP Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 5
- Tầng truyền tải s/v Tầng mạng tầng mạng: kênh liên lạc Ví dụ tương đồng – chủ luận lý giữa các máy gia đình: tầng truyền tải: kênh liên 12 đứa trẻ gửi thư cho 12 lạc luận lý giữa các tiến đứa trình tiến trình = đứa trẻ phụ thuộc vào, củng cố các thông điệp ứ/d = thư dịch vụ tầng mạng trong phong bì máy tính = nhà giao thức truyền tải = Ann và Bill giao thức mạng = dịch vụ bưu điện Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 6
- Các giao thức tầng truyền tải trong Internet giao gói tin tin cậy, có trật tự ứng dụng (TCP) truyền tải mạng liên kết dl kiểm soát tắc nghẽn vật lý mạng liên kết dl mạng kiểm soát lưu lượng vật lý liên kết dl thiết lập kết nối vật lý giao gói tin không tin cậy, mạng ế không có trật tự (UDP) liên k t dl ậ v t lý mạng một sự mở rộng của IP “nỗ lực liên kết dl vật lý hết sức” mạng liên kết dl ứng dụng vật lý mạng truyền tải những dịch vụ chưa sẵn sàng: liên kết dl mạng vật lý liên kết dl đảm bảo độ trễ vật lý đảm bảo băng thông Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 7
- Chương 3: Mục lục 3.1 Các dịch vụ tầng-truyền tải 3.4 Sự truyền tải hướng 3.2 Sự dồn và tách kết nối : TCP cấu trúc đoạn tin 3.3 Sự truyền tải không kết nối: UDP truyền tải dự liệu tin cậy kiểm soát lưu lượng quản lý kết nối 3.5 Các nguyên lý của kiểm soát tắc nghẽn 3.6 Kiểm soát tắc nghẽn trong TCP Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 8
- Dồn/Tách Tách ở máy nhận: Dồn ở máy gửi: thu thập dữ liệu từ nhiều chuyển các đoạn nhận được tới socket, đóng bao dữ liệu với đúng các socket phần mào đầu (được sử dụng sau này để tách) = socket = tiến trình ứng dụng P3 ứngP1P1 dụng P2 P4 ứng dụng truyền tải truyền tải truyền tải mạng mạng mạng liên kết liên kết liên kết vật lý vật lý vật lý host 1 host 2 host 3 Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 9
- Phương pháp tách làm việc ntn? máy nhận gói tin IP mỗi gói tin có địa chỉ IP 32 bits nguồn, địa chỉ IP đích cổng nguồn # cổng đích # mỗi gói tin mang một đoạn dữ liệu tầng truyền tải mỗi đoạn có địa chỉ và cổng các trường khác của máy nhận (đích) dữ liệu của máy dùng địa chỉ IP và số cổng ứng dụng để chuyển hướng đoạn dữ liệu (th. điệp) sang socket thích hợp định dạng đoạn dữ liệu TCP/UDP Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 10
- Sự tách không kết nối Tạo các socket với các cổng: Khi máy nhận được một DatagramSocket mySocket1 = new đoạn UDP: DatagramSocket(12534); kiểm tra số cổng đích trong DatagramSocket mySocket2 = new đoạn dữ liệu DatagramSocket(12535); chuyển hướng đoạn UDP tới Socket UDP được xác định socket với số cổng đó bởi cặp: Gói tin IP với địa chỉ IP (địa chỉ IP đích, số cổng đích) nguồn khác nhau và/hoặc số nguồn khác nhau được chuyển tới cùng một socket Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 11
- Sự tách không kết nối (tt) DatagramSocket serverSocket = new DatagramSocket(6428); P2 P3 P1P1 SP: 6428 SP: 6428 DP: 9157 DP: 5775 SP: 9157 SP: 5775 khách DP: 6428 chủ DP: 6428 khách IP: A IP: C IP:B SP cung cấp “địa chỉ phản hồi” Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 12
- Sự tách hướng kết nối Socket TCP được xác định Máy chủ có thể hỗ trợ bởi 4 nhân tố: đồng thời nhiều socket đ/c IP nguồn TCP: số cổng nguồn mỗi socket được định danh đ/c IP đích bởi 4 nhân tố của nó số cổng đích Máy chủ Web có nhiều máy nhận dùng cả 4 giá trị socket khác nhau cho mỗi trên để định hướng đoạn khách kết nối tới dữ liệu tới đúng Socket phù HTTP không ổn định sẽ có hợp một socket riêng biệt cho mỗi người dùng Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 13
- Sự tách hướng kết nối (tt) P1 P4 P5 P6 P2 P1P3 SP: 5775 DP: 80 S-IP: B D-IP:C SP: 9157 SP: 9157 Khách DP: 80 Chủ DP: 80 Khách IP: A S-IP: A IP: C S-IP: B IP:B D-IP:C D-IP:C Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 14
- Sự tách hướng kết nối: Máy chủ Web chia luồng P1 P4 P2 P1P3 SP: 5775 DP: 80 S-IP: B D-IP:C SP: 9157 SP: 9157 khách DP: 80 chủ DP: 80 khách IP: A S-IP: A IP: C S-IP: B IP:B D-IP:C D-IP:C Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 15
- Chương 3: Mục lục 3.1 Các dịch vụ tầng-truyền 3.4 Sự truyền tải hướng tải kết nối : TCP 3.2 Sự dồn và tách cấu trúc đoạn tin 3.3 Sự truyền tải không kết truyền tải dự liệu tin cậy nối: UDP kiểm soát lưu lượng quản lý kết nối 3.5 Các nguyên lý của kiểm soát tắc nghẽn 3.6 Kiểm soát tắc nghẽn trong TCP Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 16
- UDP: User Datagram Protocol [RFC 768] giao thức truyền tải Internet protocol “không phức tạp”, “giản thiểu” Tại sao cần có UDP? dịch vụ “nỗ lực tối đa”, đoạn không thiết lập kết nối (giảm UDP có thể: độ trễ) bị mất đơn giản: không có các trạng thái kết nối ở người được giao không đúng trật tự cho ứng dụng gửi và người nhận đoạn mào đầu của đoạn nhỏ không-kết-nối: không có kiểm soát tắc không có bắt tay giữa người gửi và người nhận UDP nghẽn: UDP có thể truyền đi với tốc độ tối đa mỗi đoạn UDP được xử lý độc lập với những đoạn khác Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 17
- UDP (tt) thường được dùng cho các ứng dụng đa phương tiện trực tuyến 32 bits khả năng chịu mất gói độ dài, của cổng nguồn # cổng đích # dễ thay đổi tốc độ đoạn UDP, độ dài tổng kiểm tra bao gồm cả những cách dùng mào đầu UDP khác DNS Dữ liệu ứng dụng SNMP (thông điệp) truyền tải tin cậy qua UDP: bổ sung tính tin cậy ở tầng ứng dụng cơ chế kiểm soát lỗi định dạng đoạn UDP thuộc tầng ứng dụng! Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 18
- Tổng kiểm tra UDP (checksum) Mục đích: phát hiện “lỗi” (vd: nhảy bit) trong đoạn dữ liệu được truyền tải Người gửi: Người nhận: xem đoạn nội dung dữ liệu tính tổng kiểm tra của đoạn như là một chuỗi gồm nhận được những số nguyên 16-bit kiểm tra xem TKT tính được có tổng kiểm tra (TKT): cộng bằng giá trị trong trường TKT (tổng bù 1) của nội dung ko: của đoạn Ko – phát hiện ra lỗi. người gửi đặt giá trị tổng Có – ko phát hiện ra lỗi. kiểm tra vào trường “tổng nhưng vẫn có thể có lỗi kiểm tra- checksum” UDP ? tìm hiểu sau Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 19
- Ví dụ TKT Internet Ghi chú Khi cộng các số, số nhớ (nếu có) của bít có thứ hạng cao nhất cần phải được cộng dồn vào kết quả Ví dụ: cộng hai số nguyên 16-bit 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 cộng dồn 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 tổng 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 tổng kiểm tra 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 20
- Các giao thức tạo đường ống Tạo đường ống: người gửi cho phép gửi liên tục nhiều gói tin mà không nhất thiết phải đợi cho đến khi gói tin đó được xác nhận. dải của các số thứ tự phải tăng lên nhớ tạm tại người gửi và người nhận Hai mô hình chung của giao thức tạo đường ống: quay-lại-N, lặp- lựa-chọn Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 21
- Tạo đường ống: tăng hiệu suất s/d sender receiver bít đầu tiên được truyền, t = 0 bit cuối cùng được truyền, t = L / R bit đầu tiên tới RTT bít cuối cùng tới, gửi ACK bít cuối của gói thứ 2 tới, gửi ACK bít cuối của gói thứ 3 tới, gửi ACK ACK tới, gửi gói tiếp theo, t = RTT + L / R Tăng hiệu suất lên gấp 3! 3 * L / R .024 U = = = 0.0008 sender RTT + L / R 30.008 microsecon ds Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 22
- Các giao thức tạo đường ống Quay-lại-N: bức tranh lớn Lặp lựa chọn: bức tranh lớn Người gửi có thể có tới N Người gửi có thể có tới N gói tin chưa có ACK trong gói tin chưa có ACK trong đường ống đường ống Người nhận chỉ gửi các gói Người nhận ACK các gói ACK cộng dồn riêng lẻ Ko ACK nếu có một khoảng Người gửi duy trì bộ đếm trống t/g cho mỗi gói tin chưa Người gửi có bộ đếm t/g ACK cho gói tin cũ nhất mà Khi bộ đếm hết giờ thì gửi chưa ACK lại chỉ những gói chưa ACK Nếu bộ đếm t/g hết giờ thì gửi lại tất cả các gói mà chưa ack Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 23
- Lặp lựa chọn: bức tranh lớn Người gửi có thể có tới N gói tin chưa ACK trong đường ống Người nhận thực hiện ACK các gói riêng lẻ Người gửi duy trì một bộ đếm thời gian cho mỗi gói tin chưa ACK Khi bộ đếm t/g hết giờ, chỉ gửi lại những gói tin chưa ACK Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 24
- Quay-lại-N (Go back N) Người gửi: số thứ tự k-bit trong mào đầu của gói tin cho phép “cửa sổ” lớn tới N gói tin liên tục chưa ack . ACK(n): ACK tất cả gói tin trước n, kể cả gói tin thứ n - “ACK cộng dồn” . có thể nhận được ACK trùng lặp . bộ đếm t/g cho mỗi gói tin đang trong quá trình gửi (chưa ack) . hết-giờ(n): gửi lại gói tin thứ n và tất cả gói tin có STT lớn hơn trong cửa sổ Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 25
- GBN in action Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 26
- Lặp lựa chọn người nhận xác nhận các gói tin nhận được một cách riêng lẻ nhớ tạm các gói tin, nếu cần, để đảm bảo trật tự của chúng khi đẩy lên tầng trên người gửi chỉ lại gói tin với những gói tin mà chưa nhận được ACK người gửi đếm thời gian cho mỗi gói tin chưa được ACK cửa sổ người gửi N STT liên tục hạn chế STT của các gói đã gửi mà chưa được ACK Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 27
- Lặp lựa chọn: cửa sổ của n/gửi và n/nhận Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 28
- Lặp lựa chọn n/gửi n/nhận dữ liệu từ trên: n thuộc [rcvbase, rcvbase+N-1] nếu STT tiếp theo nằm trong . gửi ACK(n) cửa sổ, gửi gói tin . lộn-trật-tự: bộ nhớ tạm timeout(n): . đúng-trật-tự: đẩy (đồng thời đẩy các gói trong bộ nhớ tạm, đúng gửi lại gói n, bật lại bđtg trật tự), tăng cửa sổ lên số gói ACK(n) trong tiếp theo chưa nhận được [sendbase,sendbase+N]: n thuộc [rcvbase-N,rcvbase-1] đánh dấu gói n đã nhận được . ACK(n) nếu n là gói chưa ACK nhỏ ngoài ra: nhât, tăng cửa sổ lên STT . bỏ qua chưa ACK tiếp theo Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 29
- Ví dụ: Lặp lựa chọn trong thực tế Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 30
- Lặp lựa chọn: vấn đề 2 mặt Ví dụ: STT: 0, 1, 2, 3 kích thước cửa sổ=3 người nhận thấy không có gì khác biệt giữa 2 kịch bản! gửi nhầm bản sao dữ liệu như là bản mới trong (a) Q: mối liên hệ nào giữa stt và kích thước cửa sổ? Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 31
- Chương 3: Mục lục 3.1 Các dịch vụ tầng-truyền tải 3.4 Sự truyền tải hướng 3.2 Sự dồn và tách kết nối : TCP cấu trúc đoạn tin 3.3 Sự truyền tải không kết nối: UDP truyền tải dự liệu tin cậy kiểm soát lưu lượng quản lý kết nối 3.5 Các nguyên lý của kiểm soát tắc nghẽn 3.6 Kiểm soát tắc nghẽn trong TCP Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 32
- TCP: Tổng quát RFCs: 793, 1122, 1323, 2018, 2581 dữ liệu full-duplex: điểm-tới-điểm: dữ liệu di chuyển theo 2 hướng 1 n/gửi, 1 n/nhận trong cùng một kết nối MSS: kích thước đoạn tối đa luồng byte tin cậy, theo định hướng kết nối: thứ tự: bắt tay (trao đổi các th/đ điều ko “biên giới giữa th/điệp” khiển) khởi tạo trạng thái của được tạo đường ống: ng/gửi, ng/nhận trước khi trao đổi dữ liệu kiểm tra tắc nghẽn TCP và lưu lượng q/đ kích thước lưu lượng đc kiểm tra: cửa sổ n/ gửi sẽ không làm tràn người nhận bộ nhớ tạm gửi & nhận application application writes data reads data socket socket door door TCP TCP send buffer receive buffer segment Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 33
- Cấu trúc đoạn TCP 32 bits URG: dữ liệu khẩn cấp cổng nguồn cổng đích tính theo (hầu như ko sử dụng) byte dữ liệu số thứ tự ACK: ACK # (không theo số valid số xác nhận đoạn!) độ dài ko PSH: đẩy dữ liệu m.đầu dùng U A P R S F cửa sổ nhận số byte (hầu như ko sử dụng) tổng kiểm tra Urg data pnter ng/nhận sẵn RST, SYN, FIN: phần phụ (độ dài thay đổi) sàng nhận khởi tạo K/N (thiết lập, kết thúc) dữ liệu tổng kiểm tra tầng ứng dụng Internet (độ dài thay đổi) (như trong UDP) Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 34
- TCP STT và số ACK STT (sequence number): Máy A Máy B số thứ tự trong luồng byte của byte đầu tiên ng/dùng gõ trong đoạn „C‟ ACKs: máy B xác nhận việc là STT của byte tiếp nhận „C‟, theo mà sẽ nhận được gửi lại „C‟ từ máy bên kia ACK cộng dồn máy A xác Hỏi: làm sao xử lý những nhận việc nhận „C‟ đoạn không đúng thứ tự đáp: TCP ko chỉ rõ – công việc của nhà hiện thực t/gian kịch bản telnet đơn giản Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 35
- Thời gian xoay vòng và thời gian chờ TCP Hỏi: thiết lập giá trị thời gian Hỏi: làm sao để đo RTT? chờ TCP như thế nào? SampleRTT: đo thời gian từ dài hơn RTT khi truyền gói tin đi và nhận được ACK nhưng RTT thay đổi quá ngắn: thời gian chờ non bỏ qua truyền tải lại SampleRTT sẽ thay đổi, muốn không cần thiết phải truyền lại RTT đo được “mướt hơn” quá dài: phản ứng chậm cho lấy giá trị trung bình của việc mất đoạn những lần đo gần nhất, không chỉ giá trị hiện thời của SampleRTT Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 36
- Thời gian xoay vòng và thời gian chờ EstimatedRTT = (1- )*EstimatedRTT + *SampleRTT . trung bình động có trọng số hàm mũ . ảnh hưởng của giá trị cũ giảm nhanh theo hàm mũ . giá trị thông dụng: = 0.125 Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 37
- Ví dụ đo RTT: RTT: gaia.cs.umass.edu to fantasia.eurecom.fr 350 300 250 RTT (milliseconds) 200 150 100 1 8 15 22 29 36 43 50 57 64 71 78 85 92 99 106 time (seconnds) SampleRTT Estimated RTT Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 38
- Thời gian xoay vòng và thời gian chờ Thiết lập t/g chờ EstimtedRTT + “biên an toàn” EstimatedRTT thay đổi với biên độ lớn -> biên an toàn lớn đầu tiên đo độ biến thiên của EstimatedRTT so với SampleRTT : DevRTT = (1-)*DevRTT + *|SampleRTT-EstimatedRTT| (thông thường, = 0.25) sau đó thiết lập khoảng t/g chờ: TimeoutInterval = EstimatedRTT + 4*DevRTT Trường Đại Học Bách Khoa Tp.HCM MẠNG MÁY TÍNH CĂN BẢN Khoa Khoa Học và Kỹ Thuật Máy Tính Bài giảng 1 - Chương 3: Tầng truyền tải © 2011 39