1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng mạng máy tính (Lê Minh) - Chương 3

15 9 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 15
Dung lượng 0,92 MB

Nội dung

Chuyển các segment từ máy tính gởi tới máy tính nhận - Các giao thức tầng mạng hoạt động trên cả máy tính gởi/nhận và các thiết bị mạng trung gian ( router). Máy tính gởi: nhận các segment từ tầng giao vận, đóng gói thành datagram - Máy tính nhận: chuyển các segment lên tầng giao vận - Router: kiểm tra và chuyển tiếp các datagram

5/22/2011 LOGO C3 TẦ NG GIAO VẬ N Giớ i thiệ u Dị ch vụ dồ n kênh phân kênh Giao thứ c UDP Giao thứ c TCP Biên soạ n : Lê Minh LOGO I Giớ i thiệ u Cung cấ p đư ng truyề n logic giữ a tiế n trình chạ y máy tính khác Dùng hai giao thứ c: TCP UDP Biên soạ n : Lê Minh 5/22/2011 LOGO I Giớ i thiệ u Các giao thứ c củ a tầ ng giao vậ n chạ y thiế t bị đầ u cuố i ( máy tính,PDA … ) Phía gở i : chia thơng điệ p (message) nhậ n từ tầ ng ứ ng dụ ng thành segment chuyể n xuố ng tầ ng mạ ng Phía nhậ n : tái hợ p segment thành thông điệ p gở i lên cho tầ ng ứ ng dụ ng Biên soạ n : Lê Minh LOGO Quan hệ tầ ng giao vậ n vớ i tầ ng mạ ng Tầ ng mạ ng: Cung cấ p đư ng truyề n logic giữ a máy tính PDU : datagram Datagram bị mấ t, trùng lắ p chuyể n không thứ tự Tầ ng giao vậ n: Cung cấ p đư ng truyề n logic giữ a tiế n trình PDU: segment Phụ thuộ c vào mở rộ ng thêm dị ch vụ củ a tầ ng mạ ng Biên soạ n : Lê Minh 5/22/2011 LOGO Giao thứ c tầ ng giao vậ n Mở rộ ng việ c truyề n liệ u giữ a thiế t bị đầ u cuố i củ a tầ ng mạ ng thành việ c truyề n liệ u giữ a tiế n trình TCP: giao thứ c tin cậ y, gở i nhậ n theo thứ tự Kiể m soát tắ t nghẽ n Điề u khiể n lư u lư ợ ng Thiế t lậ p đư ng truyề n UDP: giao thứ c không tin cậ y, gở i nhậ n không theo thứ tự Biên soạ n : Lê Minh LOGO II Dị ch vụ dồ n kênh phân kênh Tầ ng mạ ng sử dụ ng mộ t kênh truyề n giữ a hai máy tính cho việ c liên lạ c vớ i Transport Layer Network Layer HTTP FTP Telnet Transport Layer Network Layer Mỗ i máy tính chạ y nhiề u ứ ng dụ ng lúc, mỗ i ứ ng dụ ng đư ợ c gở i xuố ng tầ ng mạ ng qua mộ t cổ ng bằ ng mộ t tiế n trình Dữ liệ u gở i từ tiế n trình gở i đế n tiế n trình nhậ n? Biên soạ n : Lê Minh 5/22/2011 LOGO II Dị ch vụ dồ n kênh phân kênh Bên gở i : thự c hiệ n dị ch vụ dồ n kênh Nhậ n liệ u từ nhiề u tiế n trình ứ ng dụ ng khác từ tầ ng ứ ng dụ ng Thêm tiêu đề để tạ o thành segment chuyể n xuố ng tầ ng mạ ng Bên nhậ n: thự c hiệ n dị ch vụ phân kênh Nhậ n liệ u từ tầ ng mạ ng chuyể n lên Căn vào tiêu đề củ a segment để chuyể n liệ u đế n tiế n trình nhậ n Biên soạ n : Lê Minh LOGO II Dị ch vụ dồ n kênh phân kênh Căn để phân kênh? Mỗ i tiế n trình đư ợ c gở i qua mộ t cổ ng Mỗ i gói tin (segment) có đị a cổ ng nguồ n/đích Datagram tầ ng mạ ng có IP nguồ n/đích Biên soạ n : Lê Minh 5/22/2011 LOGO II Dị ch vụ dồ n kênh phân kênh Biên soạ n : Lê Minh LOGO III Giao thứ c UDP Là giao thứ c n giả n củ a tầ ng giao vậ n Giao thứ c không hư ng kế t nố i: Không “bắ t tay” giữ a bên gở i bên nhậ n Các UDP segment đư ợ c xử lý độ c lậ p Giao thứ c không tin cậ y: Các UDP segment bị mấ t mát truyề n Khơng có chế kiể m soát tắ t nghẽ n Tạ i dùng UDP?? Biên soạ n : Lê Minh 5/22/2011 LOGO III Giao thứ c UDP Tạ i dùng UDP? Không cầ n thiế t lậ p đư ng truyề n Không cầ n lư u lạ i trạ ng thái bên gở i/nhậ n Trư ng tiêu đề củ a gói tin nhỏ Khơng cầ n chế kiể m soát tắ t nghẽ n Thư ng đư ợ c dùng bở i ứ ng dụ ng đa phư ng tiệ n: Chấ p nhậ n mấ t mát liệ u Cầ n tố c độ truyề n nhanh Muố n truyề n tin cậ y vớ i giao thứ c UDP: ứ ng dụ ng phả i có chế khắ c phụ c lỗ i Biên soạ n : Lê Minh LOGO Cấ u trúc gói tin UDP Source port: đị a cổ ng nguồ n Dest port: đị a cổ ng đích Checksum: kiể m tra lỗ i củ a segment Length: độ dài củ a segment (byte) – tính header 32 bits source port # dest port # length checksum Application data (message) UDP segment format Biên soạ n : Lê Minh 5/22/2011 LOGO UDP checksum Mụ c đích: phát hiệ n lỗ i segment gở i Phía gở i: Chia nộ i dung củ a segment thành từ có độ dài 16 bit Tính checksum bằ ng cách lấ y tổ ng (có nhớ ) củ a từ 16 bit này, sau lấ y bù Đặ t kế t tính checksum vào trư ng checksum củ a UDP segment Giá trị ban đầ u củ a trư ng checksum segment bao nhiêu?? Biên soạ n : Lê Minh LOGO UDP checksum Phía nhậ n: Chia nộ i dung củ a segment nhậ n đư ợ c thành từ có độ dài 16 bit Tính tổ ng củ a từ 16 bit kể trư ng checksum Nế u kế t bằ ng 111111111 11111111 liệ u nhậ n đư ợ c khơng lỗ i Nế u có bấ t kỳ bit kế t liệ u nhậ n đư ợ c có lỗ i UDP làm có lỗ i xả y ra??? Biên soạ n : Lê Minh 5/22/2011 LOGO IV Giao thứ c TCP Là giao thứ c theo hư ng kế t nố i: Tiế n trình gở i nhậ n phả i “bắ t tay” vớ i để xác đị nh tham số đả m bả o cho việ c truyề n liệ u Kế t nố i TCP: Là kế t nố i điể m – điể m Cung cấ p kênh truyề n song cơng Có đệ m phía gở i nhậ n Quy đị nh lư ợ ng liệ u lớ n nhấ t MMS đặ t mỗ i segment Giá trị MMS thay đổ i đư ợ c Biên soạ n : Lê Minh LOGO Cấ u trúc gói tin TCP 32 bits URG: urgent data (thư ng không dùng) ACK: giá trị ACK nhậ n đư ợ c PSH: push data now (thư ng không dùng) RST, SYN, FIN: Thiế t lậ p kế t nố i (thiế t lậ p đóng kế t nố i) Internet checksum (giố ng UDP) source port # dest port # sequence number acknowledgement number head not len used UA PRS F Receive window checksum Urg data pnter Options (độ dài thay đổ i) Dữ liệ u từ tầ ng ứ ng dụ ng (độ dài thay đổ i) Đư ợ c xác đị nh bở i số byte liệ u gở i/nhậ n Số lư ợ ng byte bên nhậ n nhậ n Biên soạ n : Lê Minh 5/22/2011 LOGO Sequence number ACK number TCP đánh số thứ tự cho từ ng byte củ a dòng liệ u nhậ n đư ợ c từ tầ ng ứ ng dụ ng Mỗ i segment mang mộ t số Seq number, số thứ tự củ a byte đầ u tiên phầ n liệ u củ a segment ( khơng phả i số thứ tự củ a segment) Ví dụ : A cầ n truyề n cho B file có kích thư c 5000 byte, MMS 1000 byte, byte đầ u tiên có số thứ tự Biên soạ n : Lê Minh LOGO Sequence number ACK number Giá trị ban đầ u củ a sequency number đư ợ c chọ n ngẫ u nhiên Việ c đánh số sequency number phụ thuộ c vào từ ng bên truyề n nhậ n ACK number: số seq # củ a segment tiế p theo mong muố n nhậ n đư ợ c từ bên Biên soạ n : Lê Minh 5/22/2011 LOGO Sequence number ACK number Ví dụ Seq #: số thứ tự củ a byte liệ u đầ u tiên segment ACK #: Host A Host B 1000 byte data host ACKs receipt of data • Số seq# củ a segment tiế p Host sends theo mong another 500 bytes chờ từ phía • Đư ợ c tính kiể u “tích lũy” time Biên soạ n : Lê Minh LOGO Truyề n liệ u tin cậ y vớ i TCP Tầ ng mạ ng cung cấ p dị ch vụ IP: dị ch vụ truyề n không tin cậ y TCP tạ o đư ng truyề n liệ u tin cậ y dự a dị ch vụ IP Đả m bả o truyề n đủ liệ u (segment) cho bên nhậ n Căn vào ACK timer để thự c hiệ n việ c truyề n lạ i segment, segment đư ợ c truyề n lạ i khi: “Không” nhậ n đư ợ c ACK xác nhậ n từ bên nhậ n Hế t thờ i gian chờ (timeout) nhậ n ACK Biên soạ n : Lê Minh 10 5/22/2011 LOGO Truyề n liệ u tin cậ y vớ i TCP Các hoạ t độ ng củ a bên gở i: Nhậ n liệ u từ tầ ng ứ ng dụ ng: • Chia liệ u đóng gói thành segment vào giá trị MMS • Đánh số cho segment đặ t vào trư ng sequency number củ a segment • Tiế n hành gở i segment khở i độ ng timer cho từ ng segment Biên soạ n : Lê Minh LOGO Truyề n liệ u tin cậ y vớ i TCP Các hoạ t độ ng củ a bên gở i: Sau khoả ng thờ i gian chờ (timeout) cho mỗ i segment, nế u không nhậ n đư ợ c ACK xác nhậ n từ bên nhậ n: • Gở i lạ i segment • Khở i độ ng lạ i timer cho segment Nế u nhậ n đư ợ c ACK xác nhậ n từ trư c thờ i gian timeout: bên nhậ n • gử i tiế p segment có số sequency tư ng ứ ng vớ i số ACK vừ a nhậ n đư ợ c Bên nhậ n: nế u nhậ n đư ợ c segment từ bên gở i trả lờ i lạ i bằ ng segment a ACK Biên soạ n : Lê Minh 11 5/22/2011 LOGO Truyề n liệ u tin cậ y vớ i TCP Ví dụ : ACK xác nhậ n từ bên nhậ n bị thấ t lạ c Biên soạ n : Lê Minh LOGO Truyề n liệ u tin cậ y vớ i TCP Ví dụ : ACK xác nhậ n thứ timeout củ a đế n trư c thờ i gian Biên soạ n : Lê Minh 12 5/22/2011 LOGO Truyề n liệ u tin cậ y vớ i TCP Ví dụ : ACK xác nhậ n thứ đế n trư c thờ i gian timeout củ a ACK thứ nhấ t Biên soạ n : Lê Minh LOGO Điề u khiể n lư u lư ợ ng TCP Mụ c đích: tránh hiệ n tư ợ ng bên gở i làm tràn đệ m bên nhậ n Khi khở i tạ o kế t nố i TCP, mỗ i bên khở i tạ o cho đệ m nhậ n (RevBuffer) Dữ liệ u nhậ n đư ợ c từ bên gở i đư ợ c lư u đệ m nhậ n trư c đư ợ c xử lý Biên soạ n : Lê Minh 13 5/22/2011 LOGO Điề u khiể n lư u lư ợ ng TCP 32 bits source port # dest port # sequence number acknowledgement number head not len used UA PRS F Receive window checksum bên gở i biế t độ Urg lớ ndata củ pnter a vùng Bên nhậ n báo cho đệ m cịn rỗ i ( RcvWindow) Optionscủ(độa dài thay?? đổ i) Khi đệ m bên nhậ n đầ y (RcvWindow = 0)?? Dữ liệ u từ tầ ng ứ ng dụ ng (độ dài thay đổ i) Biên soạ n : Lê Minh LOGO Quả n lý kế t nố i TCP Thiế t lậ p kế t nố i : bắ t tay bư c giữ a client server: client server B1: client gở i segment SYN tớ i server ( không a data, a số Seq# khở i đầ u) B2: server trả lờ i bằ ng segment SYN-ACK ( khở i tạ o giá trị Seq# củ a server) B3: client trả lờ i bằ ng segment SYN-ACK Biên soạ n : Lê Minh 14 5/22/2011 LOGO Quả n lý kế t nố i TCP Đóng kế t nố i: B1: client gở i segment closing FIN tớ i server B2: server gở i segment ACK xác nhậ n, gở i lạ i segment FIN B3: client gở i lạ i segment ACK xác nhậ n sau nhậ n đư ợ c segment FIN B4: server nhậ n đư ợ c segment ACK, đóng kế t nố i client server timed wait Biên soạ n : Lê Minh 15 ... sử dụ ng mộ t kênh truyề n giữ a hai máy tính cho việ c liên lạ c vớ i Transport Layer Network Layer HTTP FTP Telnet Transport Layer Network Layer Mỗ i máy tính chạ y nhiề u ứ ng dụ ng lúc, mỗ... số Seq# khở i đầ u) B2: server trả lờ i bằ ng segment SYN-ACK ( khở i tạ o giá trị Seq# củ a server) B3: client trả lờ i bằ ng segment SYN-ACK Biên soạ n : Lê Minh 14 5/22/2011 LOGO Quả n lý kế...5/22/2011 LOGO I Giớ i thiệ u Các giao thứ c củ a tầ ng giao vậ n chạ y thiế t bị đầ u cuố i ( máy tính, PDA … ) Phía gở i : chia thông điệ p (message) nhậ n từ tầ ng ứ ng dụ ng thành segment chuyể

Ngày đăng: 21/05/2021, 13:38