03-TCP_congestion_control.ppt

Tài liệu tương tự
ETH-MOD-T BỘ CHUYỂN ĐỔI GIAO THỨC HAI CHIỀU MODBUS - ETHERNET 1 Thông tin chung: Tất cả dữ liệu của đồng hồ và relay trong đường dây được kết nối với

L Chuong 9 - Tang ung dung.ppt

09-MANET Routing-Reactive.ppt

Microsoft Word - TN414.doc

IPTV

Modbus RTU - Modbus TCP/IP Converter

Kyõ Thuaät Truyeàn Soá Lieäu

HEADING 1: PHẦN 1: QUẢN LÝ VÀ DUY TRÌ HỆ ĐIỀU HÀNH

Telcom 2000 Lecture Notes 6OLGHÃ 6OLGHÃ Copyright 1997 Martin B.H. Weiss All rights reserved Page 1 2/11/99 1

Bài 3 Tựa bài

Network Security

Slide 1

iCeeNee iOS User's Manual.docx

Bộ THÔNG TIN VÀ TRUYỀN THÔNG CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc số:0? /2019/TT-BTTTT Hà Nội, ngày/ị(> tháng $ năm 2019 THÔ

Microsoft Word - 10 quy tac then chot ve bao mat.doc

ISA Server - Installation ISA Server - Installation Bởi: Phạm Nguyễn Bảo Nguyên Chúng ta không thể phủ nhận rằng trong khoảng vài năm trở lại đây Inte

XJ-UT311WN_XJ-UT351WN

IPSec IPSec Bởi: Phạm Nguyễn Bảo Nguyên Chúng ta đã biết khi ta sao chép dữ liệu giữa 2 máy hoặc thông qua mạng VPN để nâng cao chế độ bảo mật người q

Internet Information Service - IIS Internet Information Service - IIS Bởi: Phạm Nguyễn Bảo Nguyên Chúng ta đã tìm hiểu về cách dựng một NAT Server...

Slide 1

03-Routing_Protocols_Giai thua tim duong.ppt

(untitled)

Microsoft Word - Khai thac AWS EC2_Web hosting.docx

Backup Cloud Server

mySQL - Part 1 - Installation

Microsoft Word - thuat-ngu-thuong-mai-dien-tu.docx

BỘ GIÁO DỤC VÀ ĐÀO TẠO

Hướng dẫn KHG sử dụng dịch vụ BaaS do Mobifone Global cung cấp Tổng Công ty Viễn thông MOBIFONE là nhà cung cấp dịch vụ Viễn thông và CNTT hàng đầu tạ

HƯỚNG DẪN SỬ DỤNG CÁC SẢN PHẨM CỦA OFFICE 365 Hợp đồng số: 25/KTQD-FPT Cung cấp hệ thống Office trực tuyến và thư điện tử Trường Đại Học Kinh Tế Quốc

Chuong 13 - Internet trong doanh nghiep - Quan ly Internet.ppt

L Chuong 1 - Co ban ve mang may tinh

BÀI THỰC HÀNH 1: THỰC HÀNH KÍCH HOẠT IPV6 TRÊN HĐH WINDOW, LINUX

PowerPoint Presentation

GÓI AN NINH CHỐNG ĐỘT NHẬP & BÁO CHÁY OS-KIT-31-S2 Gói an ninh chống đột nhập OS-KIT-31-S2 gồm có 3 thiết bị: 1. Bộ điều khiển trung tâm (OS-UniGW-110

Khảo sát và cấu hình QoS trên Switch 2900/3500 Bước 1. Kích hoạt tính năng QoS. Switch# show mls qos QoS is disabled QoS ip packet dscp rewrite is ena

eView Cty Viễn Tín Vinh

06-BGP.ppt

Kiểm soát truy suất Kiểm soát truy suất Bởi: Khoa CNTT ĐHSP KT Hưng Yên Khái niệm Bảo mật thực chất là kiểm soát truy xuất [1]. Mục đích của bảo mật m

Distributed denial of service (DDOS) Distributed denial of service (DDOS) Bởi: Khuyet Danh Giới thiệu Distributed Denial Of Service (DDoS) là kỹ thuật

BƯỚC 1 CÀI LẮP SIM BƯỚC 2 APN BƯỚC 3 ĐĂNG KÝ HOÀN THÀNH Bỏ SIM vào máy di động. Cài đặt APN. Vui lòng khởi động lại thiết bị. Vui lòng mở trình duyệt

IEEE Paper Template in A4 (V1)

LỖI PROXY Để tiết kiệm lượng dữ liệu tải về, kiểm soát thông tin và đảm bảo an toàn khi truy cập Internet thì một số hệ thống thiết lập thêm máy chủ p

Hướng Dẫn Sử Dụng XFINITY Internet / Voice Với Khả Năng Kết Nối WiFi

Hướng Dẫn Sử Dụng Doanh Nghiệp với Giao AdminLTE Bao gồm: - Trỏ record - Quản trị với giao diện AdminLTE - Cấu hình trên Outlook 2013 ( PO

ĐẠI HỌC QUỐC GIA HÀ NỘI

CÔNG TY TNHH TIN HỌC TÍN NGHỆ Hotline: TÀI LIỆU HƯỚNG DẪN CÀI ĐẶT, CẤU HÌNH, SAO LƯU PHẦN MỀM TÍN NGHỆ A. CÀI ĐẶT, CẤU HÌ

Tìm hiểu ngôn ngữ lập trình Visual Basic Tìm hiểu ngôn ngữ lập trình Visual Basic Bởi: Khuyet Danh Tìm hiểu ngôn ngữ lập trình Visual Basic Tổng quan

ZTE-U V889D Hướng dẫn sử dụng

Microsoft Word - Authpaper_ICO_2019.docx

Kiến trúc tập lệnh1

Chương II - KIẾN TRÚC HỆ ĐIỀU HÀNH

CÔNG TY TNHH THƯƠNG MẠI VÀ DỊCH VỤ NGUYỄN ĐỨC 126 Lê Thanh Nghị - Quận Hai Bà Trưng - Hà Nội Điện Thoai : Fax : Website : www.

Giới thiệu MSB trân trọng cảm ơn Quý Doanh nghiệp đã lựa chọn dịch vụ M-Banking của chúng tôi. Sứ mệnh đáp ứng tốt nhất các nhu cầu của Khách hàng Doa

08-khoidong.pptx

(Tái bản lần thứ hai)

July 15 th 2017 Lê Hoàng Video Surveillance HƯỚNG DẪN SỬ DỤNG GuardingVision Guardingvision App Version V3.0.0xx Hỗ Trợ Kỹ Thuật (0283) Địa

Microsoft Word - Huong dan su dung phan mem Evyhome.docx

Hik-Connect làgì? Hướng dẫn sử dụng Hik-Connect Tính năng chia sẻ (Share) Dịch vụ lắp đặt camera quan sát uy tín chất lượng, hệ thống đại

Tạo máy chủ ảo Linux và cấu hình SSH

PowerPoint Presentation

HƯỚNG DẪN SỬ DỤNG ĐẦU GHI LILIN DVR 708/716/ Cấu tạo đầu ghi 1.1 Đầu ghi DVR 816 Mặt trước: Stt Tên Chức năng 1 Phím sang trái Di chuyển sang tr

Microsoft Word - Phan 1 - Kien thuc co so IFS-HANU 2011.doc

000.Bia

Chương 2 Tầng vật lý

Kyõ Thuaät Truyeàn Soá Lieäu

ThemeGallery PowerTemplate

Yeastar S50 VoIP PBX Installation Guide Version 1.0 Jun. 2016

Máy tính cá nhân Máy tính cá nhân Bởi: Wiki Pedia Định nghĩa Máy tính cá nhân (tiếng Anh: personal computer, viết tắt PC) là một máy điện toán siêu nh

Bài 1:

Easy UI Solution 3 Hướng dẫn sử dụng

Slide 1

Quy dinh lap ke hoach

Gói Dự đoán bao trúng 100% áp dụng toàn VN cho cả BC và IDP, hình thức thi trên giấy, Academic, UKVI Gói dự đoán Platinum (4 kĩ năng -Giá 2tr): ĐỘC QU

Hệ điều hành UNIX Hệ điều hành UNIX Bởi: Wiki Pedia UNIX Unix hay UNIX là một hệ điều hành máy tính viết vào những năm 1960 và 1970 do một số nhân viê

HƯỚNG DẪN SỬ DỤNG

PowerPoint 演示文稿

Nội dung chương 3 IT1110 Tin học đại cương Phần I: Tin học căn bản Chương 3: Hệ thống máy tính 3.1. Giới thiệu 3.2. Chức năng và các thành phần của má

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG CỘNG HOÀ XẪ HỘI CHỦ NGHĨA VIỆT NAM Đô c Lâ p - Tư Do - Ha nh Phu c DANH SÁCH SI

1 2 BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNG Công trình ñược hoàn thành tại ĐẠI HỌC ĐÀ NẴNG NGUYỄN VĂN THAO Người hướng dẫn khoa học: TS. NGUYỄN LÊ HÙNG

Computer Architecture

PowerPoint Template

Hướng dẫn cấu hình tổng đài AsteriskNow và kết nối Trunk với tổng đài Cisco CME 1. Giới thiệu Bùi Quốc Kỳ Để nghiên cứu về tổng đài mã nguồn mở Asteri

FAQ: Hướng dẫn cấu hình Wireless Router N300 DIR-612 Release date: 17/12/2018 Model support: DIR-612 H/W: Bx F/W: N/A FAQ: Hướng dẫn cấu hình Wireless

Chương trình dịch

Lương Sĩ Hằng Tha Thứ Và Thương Yêu

HƯỚNG DẪN SỬ DỤNG CLOUD STORAGE Trân trọng cám ơn các bạn đã sử dụng dịch vụ Cloud Storage của Viettel IDC. Tài liệu hướng dẫn sử dụng nhanh được biên

BỘ GIÁO DỤC VÀ ĐÀO TẠO

BẢO MẬT Hướng dẫn sử dụng VPS HƯỚNG DẪN NGƯỜI DÙNG MÁY CHỦ RIÊNG ẢO (VPS) CỦA Anzo Capital Cảnh báo rủi ro: giao dịch theo tỉ lệ đòn bẩy với tiền ký q

CÔNG TY TNHH GIẢI PHÁP CÔNG NGHỆ VIỄN NAM TÀI LIỆU HƯỚNG DẪN WEBSITE MIỄN PHÍ ( WEBMIENPHI.INFO ) Mọi chi tiết về tài liệu xin liên hệ: CÔNG TY TNHH G

Microsoft Word - jsp_client_request.docx

Nokia 8.1 Hướng dẫn sư dụng Bản phát hành vi-vn

LỜI CAM ĐOAN

Làm quen với chương trình Microsoft Excel Làm quen với chương trình Microsoft Excel Bởi: unknown Làm quen với chương trình Những thao tác đầu tiên với

CHÍNH PHỦ CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự do - Hạnh phúc Số: 119/2018/NĐ-CP Hà Nội, ngày 12 tháng 9 năm 2018 N

Huong dan su dung phan mem Quan ly chat luong cong trinh GXD

Bản ghi:

Tầng giao vận 1

Nhắc ại về kiến trúc phân tầng Appication (HTTP, Mai, ) Transport (UDP, TCP ) Network (IP, ICMP ) Dataink (Ethernet, ADSL ) Physica (bits ) Hỗ trợ các ứng dụng trên mạng Truyền dữ iệu giữa các ứng dụng Chọn đường và chuyển tiếp gói tin giữa các máy, các mạng Hỗ trợ việc truyền thông cho các thành phần kế tiếp trên cùng 1 mạng Truyền và nhận dòng bit trên đường truyền vật ý 2

Tổng quan về tầng giao vận (1) Cung cấp phương tiện truyền giữa các ứng dụng cuối Bên gửi: Nhận dữ iệu từ ứng dụng Đặt dữ iệu vào các đoạn tin và chuyển cho tầng mạng Nếu dữ iệu quá ớn, nó sẽ được chia àm nhiều phần và đặt vào nhiều đoạn tin khác nhau Bên nhận: Nhận các đoạn tin từ tầng mạng Tập hợp dữ iệu và chuyển ên cho ứng dụng appication transport network data ink physica appication transport network data ink physica 3

Tổng quan về tầng giao vận (2) Được cài đặt trên các hệ thống cuối Không cài đặt trên các routers, switches Hai dạng dịch vụ giao vận Tin cậy, hướng iên kết, e.g TCP Không tin cậy, không iên kết, e.g. UDP appication transport network data ink physica network data ink physica network data ink physica network data ink physica network data ink physica network data ink physica network data ink physica appication transport network data ink physica 4

Tại sao ại cần 2 oại dịch vụ? Các yêu cầu đến từ tầng ứng dụng à đa dạng Các ứng dụng cần dịch vụ với 100% độ tin cậy như mai, web Sử dụng dịch vụ của TCP Các ứng dụng cần chuyển dữ iệu nhanh, có khả năng chịu ỗi, e.g. VoIP, Video Streaming Sử dụng dịch vụ của UDP 5

Ứng dụng và dịch vụ giao vận Ứng dụng e-mai remote termina access Web fie transfer streaming mutimedia Internet teephony Giao thức ứng dụng SMTP Tenet HTTP FTP giao thức riêng (e.g. ReaNetworks) giao thức riêng (e.g., Vonage,Diapad) Giao thức giao vận TCP TCP TCP TCP TCP or UDP thường à UDP 6

Các chức năng chung Dồn kênh/phân kênh Mã kiểm soát ỗi 7

Dồn kênh/phân kênh - Mux/Demux Giao thức ứng dụng HTTP FTP Chat HTTP FTP Chat Mutipexing Giao thức giao vận Demutipexing Giao thức tầng mạng 8

Mux/Demux hoạt động ntn? Tại tầng mạng, gói tin IP được định danh bởi địa chỉ IP Để xác định máy trạm Làm thế nào để phân biệt các ứng dụng trên cùng một máy? Sử dụng số hiệu cổng (16 bits) Mỗi tiến trình ứng dụng được gán 1 cổng Socket: Một cặp địa chỉ IP và số hiệu cổng 32 bits source port # dest port # other header fieds appication data (message) TCP/UDP segment format 9

Checksum Phát hiện ỗi bit trong các đoạn tin/gói tin Nguyên ý giống như checksum (16 bits) của giao thức IP Ví dụ: 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 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 Tổng Checksum 1 1 0 1 1 1 0 1 1 1 0 1 1 1 1 0 0 1 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 1 10

UDP User Datagram Protoco Tổng quan Khuôn dạng gói tin 11

Giao thức dạng Best effort Vì sao cần UDP? Không cần thiết ập iên kết (tăng độ trễ) Đơn giản: Không cần ưu ại trạng thái iên kết ở bên gửi và bên nhận Phần đầu đoạn tin nhỏ Không có quản ý tắc nghẽn: UDP cứ gửi dữ iệu nhanh nhất, nhiều nhất nếu có thể UDP có những chức năng cơ bản gì? Dồn kênh/phân kênh Phát hiện ỗi bit bằng checksum 12

Khuôn dạng bức tin (datagram) UDP sử dụng đơn vị dữ iệu gọi à datagram (bức tin) Độ dài toàn bộ bức tin tính theo byte 32 bits source port # dest port # ength Appication data (message) checksum Khuôn dạng đơn vị dữ iệu của UDP 13

Các vấn đề của UDP Không có kiểm soát tắc nghẽn Làm Internet bị quá tải Không bảo đảm được độ tin cậy Các ứng dụng phải cài đặt cơ chế tự kiểm soát độ tin cậy Việc phát triển ứng dụng sẽ phức tạp hơn 14

Khái niệm về truyền thông tin cậy 15

Kênh có ỗi bit, không bị mất tin Phát hiện ỗi? Checksum Làm thế nào để báo cho bên gửi? ACK (acknowedgements): NAK (negative acknowedgements): te sender that pkt has error Phản ứng của bên gửi? Truyền ại nếu à NAK 16

Hoạt động Sender Receiver send pkt0 pkt0 rcv ACK send pkt1 pkt1 ACK pkt1 is OK NAK pkt1 is corrupted rcv NAK resend pkt1 pkt1 Time Time 17

Lỗi ACK/NAK Cần truyền ại Xử ý việc ặp gói tin ntn? Thêm Seq.# send pkt0 rcv ACK send pkt1 Sender pkt0 pkt1 ACK ACK Receiver pkt0 is OK pkt1 is OK rcv sth corrupted! resend pkt1 Time pkt1 rcv pkt1 dupicate, Time discard it 18

Giải pháp không dùng NAK Sender Receiver send pkt0 pkt0 rcv ACK0 send pkt1 pkt1 ACK0 pkt0 is OK rcv ACK1 send pkt0 pkt0 ACK1 pkt1 is OK ACK1 pkt0 is corrupted rcv ACK1 resend pkt0 pkt0 Time Time 19

Kênh có ỗi bit và mất gói tin Dữ iệu và ACK có thể bị mất Nếu không nhận được ACK? Truyền ại như thế nào? Timeout! Thời gian chờ à bao âu? Ít nhất à 1 RTT (Round Trip Time) Mỗi gói tin gửi đi cần 1 timer Nếu gói tin vẫn đến đích và ACK bị mất? Dùng số hiệu gói tin 20

Minh họa 21

Minh họa 22

Truyền theo kiểu pipeine 1 data pkt Data pkts Sender Receiver Sender Receiver ACK ACKs 23

So sánh hiệu quả sender stop-and-wait sender Pipeine receiver 0 L / R L / R RTT RTT RTT + L / R RTT + L / R time L: Size of data pkt R: Link bandwidth RTT: Round trip time Performance = L / R time RTT + L / R time Performance = 3 * L / R time RTT + L / R 24

TCP Transmission Contro Protoco Cấu trúc đoạn tin TCP Quản ý iên kết Kiểm soát uồng Kiểm soát tắc nghẽn 25

Tổng quan về TCP Giao thức hướng iên kết Bắt tay ba bước Giao thức truyền dữ iệu theo dòng byte, tin cậy Sử dụng vùng đệm Truyền theo kiểu pipeine Tăng hiệu quả Kiểm soát uồng Bên gửi không àm quá tải bên nhận (thực tế: quá tải) Kiểm soát tắc nghẽn Việc truyền dữ iệu không nên àm tắc nghẽn mạng (thực tế: uôn có tẵc nghẽn) 26

Khuôn dạng đoạn tin - TCP segment URG: Dữ iệu khẩn ACK: ACK # PSH: Chuyển dữ iệu ngay RST, SYN, FIN: Ký hiệu cho các gói tin đặc biệt 32 bits source port # dest port # head en sequence number acknowedgement number not used U A P R S F checksum Receive window appication data (variabe ength) Urg data pnter Options (variabe ength) - Dùng để truyền dữ iệu tin cậy - Tính theo bytes - Số ượng bytes có thế nhận - Điều khiển uồng 27

TCP cung cấp dịch vụ tin cậy ntn? Kiểm soát dữ iệu đã được nhận chưa: Seq. # Ack Chu trình àm việc của TCP: Thiết ập iên kết Bắt tay ba bước Truyền/nhận dữ iệu Đóng iên kết 28

Cơ chế báo nhận trong TCP Seq. #: Số hiệu của byte đầu tiên của đoạn tin trong dòng dữ iệu ACK: Số hiệu byte đầu tiên mong muốn nhận từ đối tác Ngầm xác nhận đã nhận tốt các byte trước đó. User types C host ACKs receipt of echoed C Host A Host B Seq=42, ACK=79, data = C Seq=79, ACK=43, data = C Seq=43, ACK=80 simpe tenet scenario host ACKs receipt of C, echoes back C time 29

Thiết ập iên kết TCP : Giao thức bắt tay 3 bước A SYN ACK ACK/SYN B Bước 1: A gửi SYN cho B chỉ ra giá trị khởi tạo seq # của A không có dữ iệu Bước 2: B nhận SYN, trả ời bằng SYNACK B khởi tạo vùng đệm chỉ ra giá trị khởi tạo seq. # của B Bước 3: A nhận SYNACK, trả ời ACK, có thể kèm theo dữ iệu 30

Ví dụ về việc đóng iên kết Bước 1: Gửi FIN cho B Bước 2: B nhận được FIN, trả ời ACK, đồng thời đóng iên kết và gửi FIN. Bước 3: A nhận FIN, trả ời ACK, vào trạng thái chờ. Bước 4: B nhận ACK. đóng iên kết. Lưu ý: Cả hai bên đều có thể chủ động đóng iên kết cosing timed wait cosed A FIN ACK FIN ACK B cosing cosed 31

Chu trình sống của TCP (đơn giản hóa) Wait 30 sec. CLOSED Cient appication Initiates a TCP connection Send SYN Receive ACK Send nothing CLOSED Server appication Creates a isten socket TIME_WAIT SYN_SENT LAST_ACK LISTEN Receive FIN Send ACK Receive SYN/ACK Send ACK Send FIN Receive SYN Send SYN/ACK FIN_WAIT_2 ESTABLISHED CLOSE_WAIT SYN_RCVD Receive ACK Send nothing FIN_WAIT_1 Send FIN Receive FIN Send ACK ESTABLISHED Receive ACK Send nothing Cient appication Initiates cose connection 32

Kiểm soát uồng 33

Kiểm soát uồng (1) A B A B Chậm Quá tải 34

Kiểm soát uồng (2) Điều khiển ượng dữ iệu được gửi đi Bảo đảm rằng hiệu quả à tốt Không àm quá tải các bên Các bên sẽ có cửa sổ kiểm soát Rwnd: Cửa sổ nhận CWnd: Cửa sổ kiểm soát tắc nghẽn Lượng dữ iệu gửi đi phải nhỏ hơn min(rwnd, Cwnd) 35

Kiểm soát uồng trong TCP Kích thước vùng đệm trống = Rwnd = RcvBuffer-[LastByteRcvd - LastByteRead] 36

Trao đổi thông tin về Rwnd A data ACK (rwnd = 100) data B Bên nhận sẽ báo cho bên gửi biết Rwnd trong các đoạn tin Bên gửi đặt kích thước cửa sổ gửi theo Rwnd 37

Điều khiển tắc nghẽn trong TCP 38

Tổng quan về tắc nghẽn Khi nào tắc nghẽn xảy ra? Quá nhiều cặp gửi-nhận trên mạng Truyền quá nhiều àm cho mạng quá tải Hậu quả của việc nghẽn mạng Mất gói tin Thông ượng giảm, độ trễ tăng Tình trạng của mạng sẽ trở nên tồi tệ hơn. Congestion occur 39

TCP Kiểm soát tắc nghẽn Chiến ược cơ bản Trạm đầu cuối gửi các gói tin TCP vào trong mạng và các trạm này điều chỉnh theo tình trạng mạng quan sát được. ACK được sử dùng để điều hòa tốc độ gửi dữ iệu của các trạm đầu cuối TCP Computer Networks: TCP Congestion Contro 40

AIMD (Additive Increase / Mutipicative Decrease) Mỗi trạm nguồn TCP quản ý một biến CongestionWindow (cwnd) Mỗi trạm nhận TCP quản ý một biến ReceiveWindow à kích thước vùng đệm của trạm nhận. MaxWindow :: min (CongestionWindow, ReceiveWindow) EffectiveWindow = MaxWindow (LastByteSent -LastByteAcked) cwnd được thiết ập dựa vào quan sát về mức độ tắc nghẽn: Dấu hiệu không tường minh: ượng gói rớt. Dấu hiệu tường minh: gói điều khiển thông báo tình trạng tắc nghẽn Computer Networks: TCP Congestion Contro 41

Additive Increase (AI) Additive Increase à phản ứng tăng tốc độ truyền theo cấp số cộng (trong giai đoạn chống tắc nghẽn). Thông thường additive increase được định nghĩa bằng tham số α (mặc định α = 1). Mỗi RTT tăng cửa sổ tắc nghẽn ân một ượng cố định Tăng cửa sổ tắc nghẽn thêm tương đương 1 gói tin. Computer Networks: TCP Congestion Contro 42

Source Destination Tăng thêm 1 gói mỗi RTT Additive Increase Computer Networks: TCP Congestion Contro 43

Mutipicative Decrease (MD) * Giả thiết cơ bản: * Mỗi gói bị mất hoặc timeout xảy ra tại bên gửi à do tắc nghẽn tại môt router. Mutipicative decrease được định nghiã bằng tham số β (mặc định β = 0.5) Mutipicative Decrease Với mỗi ần timeout TCP giảm kích thước cửa sổ tắc nghẽn cwnd đi một hệ số nhân β. cwnd không nhỏ hơn kích thước 1 gói. Computer Networks: TCP Congestion Contro 44

AIMD (Additive Increase / Mutipicative Decrease) It has been shown that AIMD is a necessary condition for TCP congestion contro to be stabe. Because the simpe CC mechanism invoves timeouts that cause retransmissions, it is important that hosts have an accurate timeout mechanism. Timeouts set as a function of average RTT and standard deviation of RTT. However, TCP hosts ony sampe round-trip time once per RTT using coarse-grained cock. Computer Networks: TCP Congestion Contro 45

70 60 50 40 30 20 10 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 Time (seconds) 10.0 Kiểu răng cưa của TCP Computer Networks: TCP Congestion Contro 46

Cơ chế Sow Start (1) Tăng tuyến tính có thể mất nhiều thời gian để kết nối TCP đạt tốc độ. Kỹ thuật sow start được giới thiệu trong TCP Tahoe Ý tưởng cơ bản Đặt cwnd bằng 1 MSS (Maximum segment size) Tăng cwnd ên 1 mỗi khi nhận được ACK Cửa sổ được tăng gấp đôi sau mỗi RTT Bắt đầu thấp, nhưng tăng theo hàm mũ Tăng cho đến một ngưỡng: ssthresh Sau đó, TCP chuyển sang trạng thái tránh tắc nghẽn 47

Source Destination Sow Start Add one packet per ACK Figure 6.10 Sow Start Computer Networks: TCP Congestion Contro 48

Tránh tắc nghẽn - Congestion avoidance ý tưởng cơ bản Tăng cwnd theo cấp số cộng sau khi nó đạt tới ssthresh Khi bên gửi nhận được ACK Tăng cwnd thêm 1 MSS RTT Host A Host B one segment two segments three segments time 49

ssthresh Computer Networks: TCP Congestion Contro 50

Xử ý tắc nghẽn TCP Tahoe (1) Giảm tốc độ gửi Phát hiện tắc nghẽn? Nếu như phải truyền ại Có thể suy ra à mạng tắc nghẽn Khi nào thì phải truyền ại? Timeout! Cùng một gói tin số hiệu gói tin trong ACK 51

Xử ý tắc nghẽn TCP Tahoe khi timeout (2) Khi có timeout của bên gửi TCP đặt ngưỡng xuống còn một nửa giá trị hiện tại của cwnd TCP đặt cwnd về 1 MSS TCP chuyển về sow start 52

Fast Retransmit Timeout được tính căn cứ RTT, RTT được đo 1 ần. Giá trị RTT thay đổi à timeout không chính xác. Fast retransmit được thêm vào TCP Tahoe để giải quyết. Coi việc nhận được dupicate ACKs à biểu hiện mất gói tin Fast Retransmit Khi nhận được 3 ACK trùng nhau, TCP gửi ại các gói bị mất. Computer Networks: TCP Congestion Contro 53

Sender Packet 1 Packet 2 Packet 3 Packet 4 Receiver ACK 1 ACK 2 Packet 5 Packet 6 Retransmit packet 3 ACK 2 ACK 2 ACK 2 ACK 6 Fast Retransmit Based on three dupicate ACKs Fast Retransmit Computer Networks: TCP Congestion Contro 54

Fast Retransmit Nếu nhận được 3 ACK giống nhau TCP đặt ngưỡng xuống còn một nửa giá trị hiện tại của cwnd TCP Reno: đặt cwnd về giá trị hiện tại của ngưỡng cũ, congestion avoidance TCP Tahoe: đặt cwnd =1, sowstart 55

70 60 50 40 30 20 10 1.0 2.0 3.0 4.0 5.0 6.0 7.0 Time (seconds) Figure 6.13 TCP Fast Retransmit Trace Computer Networks: TCP Congestion Contro 56

Fast Recovery Fast recovery sử dụng trong TCP Reno. Ý tưởng chính: fast retransmit khi nhận được ACKs giống nhau Quay ại với giai đoạn congestion avoidance (TCP Tahoe quay ại sowstart) cho đến khi nhận được ACK cho tất cả các gói đã gửi Nếu timout: quay về sowstart Fast Recovery Sau Fast Retransmit, giảm cwnd đi ½ và bắt đầu tăng cửa sổ tuyến tính Computer Networks: TCP Congestion Contro 57

Kiểm soát tắc nghẽn TCP Reno cwnd 22 20 18 16 Threshod=16 Timeout Threshod is set to haf of cwnd (20) And sow start starts 14 12 10 8 6 SS AI Threshod=10 SS AI 3 ACKs Threshod is set to haf of cwnd (12) And additive increase starts Threshod=6 4 AI 2 Step 58

TCP Tahoe vs Reno TCP Tahoe: Sow start, congestion avoidance Timeout: Sowstart. Fast retransmit nếu nhận được 3 ACK trùng nhau: giảm cwnd =1, TCP Reno: bắt đầu sow start mới với ssthresod bằng ½ cwnd cũ. Sow start Congestion avoidance Timeout: sow start Fast Recovery nếu nhận được 3 ACK trùng nhau: giảm cwnd đi ½ Đặt ssthresod =cwnd mới à bỏ qua sow start Thực hiện Congestion Computer avoidance. Networks: TCP Congestion Contro 59

Nhiều biến thể TCP khác TCP New Reno Sau ACK trùng ặp, gửi thêm 1 gói ở cuối cửa sổ gửi. Điều chỉnh timeout Gây nhiều gói chưa được ACK trong chuỗi gửi Cho tốc độ gửi cao hơn TCP Tahoe và Reno TCP SACK requires sender and receiver both to support TCP SACK possibe state machine is compex. TCP Vegas adjusts window size based on difference between expected and actua RTT. TCP Cubic Computer Networks: TCP Congestion Contro 60

Bài tập Giả sử cần truyền 1 fie Kích thước O =100KB trên kết nối TCP S à kích thước mỗi gói TCP, S = 536 byte RTT = 100 ms. Giả sử cửa sổ tắc nghẽn của TCP à cố định với kích thước W. Hỏi thời gian chờ đợi ít nhất để truyền hết fie à bao nhiêu? Nếu tốc độ đường truyền à R = 10 Mbit/s; R= 100 Mbits/s. 61

Bài tập Giả sử cần truyền 1 fie Kích thước O =100KB trên kết nối TCP S à kích thước mỗi gói TCP, S = 536 byte RTT = 100 ms. Giả sử cửa sổ tắc nghẽn của TCP hoạt đông theo cơ chế sow-start, chưa tính đến giai đoạn congestion avoidance. Cửa sổ đạt đến giá trị bao nhiêu thì truyền hết fie. Hỏi thời gian chờ đợi ít nhất để truyền hết fie à bao nhiêu? Nếu R = 10 Mbit/s; R= 100 Mbits/s. 62

Bài tập 3 người 1 nhóm 1. Trình bày tìm hiểu về cơ chế kiểm soát tắc nghẽn trong các phiên bản TCP New Reno, TCP SACK, TCP Vegas, TCP Cubic. So sánh với TCP Tahoe và TCP Reno. 2. Trình bày tìm hiểu về IPv6: cơ chế đánh địa chỉ, cơ chế chuyển tiếp. 3. Tìm hiểu về mạng thông tin quang không dây (FSO). 4. TÌm hiểu mạng truy nhập sử dụng công nghệ GPON. 5. Tìm hiểu về SDN, thiết ập thử nghiệm mạng SDN sử dụng Mininet và controer Opendayight. 6. Tìm hiểu về SDN, thiết ập thử nghiệm mạng SDN sử dụng Mininet và controer NOX hoặc controer khác. Báo cáo 15/4, nộp báo cáo + trình bày 15 phút/ nhóm 63