Bài giảng Mạng máy tính (tiếp theo)

 

Lớp 3: Là tổ hợp lớp 1 và lớp 2. Cho phép dồn kênh, khởi động lại, điều khiển luồng dữ liệu.

Lớp 4: Giải quyết các vấn đề về mất gói dữ liệu và các gói dữ liệu bị hỏng đồng thời giải quyết yêu cầu khởi động lại, chọn lớp giao thức sẽ được thực hiện mỗi khi thiết lập liên kết.

 

ppt48 trang | Chia sẻ: haha | Lượt xem: 1143 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Mạng máy tính (tiếp theo), để xem tài liệu hoàn chỉnh bạn hãy click vào nút TẢi VỀ
CHƯƠNG VII: LỚP GIAO VẬNTRANSPORT LAYERMẠNG MÁY TÍNHGiới thiệu4 lớp thấp: Physical, Data Link, Network, Transport Mô hình OSI3 lớp cao: Session, Presention, ApplicationQuan tâm đến việc truyền dữ liệu giữa các hệ thống đầu cuối qua các phương tiện truyền thông.Tập trung đáp ứng các yêu cầu và các ứng dụng của người s ử dụng.Giới thiệu Mục đích của Lớp giao vận: cung cấp dịch vụ truyền dữ liệu sao cho các chi tiết cụ thể của phương tiện truyền thông được sử dụng bên dưới trở nên “trong suốt” đối với lớp cao. Nhiệm vụ của Lớp giao vận: thích ứng với một phạm vi rất rộng các đặc trưng của mạng(có thể “có kết nối” hoặc “không kết nối”,có thể tin cậy hoặc chưa tin cậy,...). 7.1 Các dịch vụ của lớp giao vận7.1.1 Mối quan hệ giữa lớp giao vận với lớp khác7.1.2 Các dịch vụ cơ bản (lệnh gốc) của lớp giao vận1.1.3 Dịch vụ Barkely Socket 7.1.1 Mối quan hệ giữa lớp giao vận với các lớp khácĐể thực hiện mục tiêu chuyển giao dữ liệu tin cậy, an toàn cho lớp trên, lớp giao vận (lớp 4) phải sử dụng các dịch vụ được cung cấp từ lớp mạng.Phần cứng và mềm trong lớp giao vận để thực hiện các tác vụ được gọi là các thực thể giao vận.7.1.1 Mối quan hệ giữa lớp giao vận với các lớp khácHình 7-1: Quan hệ giữa các lớp của 2 máy trạm7.1.2 Các dịch vụ cơ bản (lệnh gốc) của lớp giao vậnĐặc điểm: Độ tin cậy:	- Dịch vụ lớp mạng không có độ tin cậy cao	- Dịch vụ lớp giao vận có độ tin cậy cao hơn trên nền một mạng thực không ổn định. Đối tượng sử dụng:	- Dịch vụ lớp mạng được dùng bởi các thực thể của lớp giao vận mà người sử dụng không thể thấy được hoặc không thể tác động được. 7.1.2 Các dịch vụ cơ bản (lệnh gốc) của lớp giao vận	- Dịch vụ của lớp giao vận:người sử dụng có thể nhận thấy được, do đó các dịch vụ của lớp giao vận rất dễ sử dụng và tiện lợi hơn 7.1.2 Các dịch vụ cơ bản (lệnh gốc) của lớp giao vậnLệnh gốcGói dữ liệu gửi điÝ nghĩaLISTEN(không có)Giữ trạng thái khóa cho đến khi có tiến trình nối đến.CONNECTCONNECT REQ.Cố gắng chủ động thiết lập kết nốiSENDDATAGửi thông tinRECEIVE(không có)Giữ trạng thái khóa cho đến khi có gói dữ liệu DATA đến.DISCONNECTDISCONNECT REQ.Muốn giải phóng kết nối.Bảng 7-1.1: Các dịch vụ gốc (lệnh gốc) của lớp giao vận ở dạng kết nối .7.1.2 Các dịch vụ cơ bản (lệnh gốc) của lớp giao vậnLệnh gốcGói dữ liệu gửi điÝ nghĩaSENDDATAGửi thông tin điRECEIVEKhông cóGiữ trạng thái khóa cho đến khi có gói dữ liệu đến và nhận nóBảng 7-1.2: Các dịch vụ gốc (lệnh gốc) của lớp giao vận ở dạng không kết nối .7.1.2 Các dịch vụ cơ bản (lệnh gốc) của lớp giao vận Hoạt động:Máy chủ kích hoạt lệnh LISTEN  khóa máy chủ cho đến khi máy trạm kích hoạt.Khi một máy trạm muốn trao đổi với máy chủ, nó kích hoạt lệnh CONNECT  khóa máy gọi đi và gửi gói dữ liệu đến máy chủ.Gói dữ liệu của lớp giao vận (TPDU-Transport Protocol Data Unit), được chứa trong khung dữ liệu. Khi khung dữ liệu đến, lớp liên kết dữ liệu sẽ xử lý phần mào đầu  chuyển tải tin lên lớp mạng.Lớp mạng tiếp tục xử lý phần mào đầu  lớp giao vận7.1.2 Các dịch vụ cơ bản (lệnh gốc) của lớp giao vậnHình 7-2: Vị trí của TPDU, gói dữ liệu và khung dữ liệu7.1.2 Các dịch vụ cơ bản (lệnh gốc) của lớp giao vậnHình 7-3: Quá trình thiết lập kết nối và giải phóng kết nối sử dụng các lệnh gốc7.1.3 Dịch vụ Barkely SocketBarkeley socket là các dịch vụ được sử dụng trong Barkeley Unix dành cho giao thức TCP. Đây là các lệnh được sử dụng rộng rãi trong lập trình Internet.7.1.3 Dịch vụ Barkely SocketLệnh gốcÝ nghĩaSOCKETTạo mới một điểm kết cuối trao đổi thông tinBINDGắn địa chỉ socketLISTENThông báo sẵn sàng nhận kết nối; cung cấp kích thước hàng đợiACCEPTKhóa người gọi cho đến khi kết nối vàoCONNECTChủ động thiết lập kết nốiSENDGửi dữ liệu lên kết nốiRECEIVENhận dữ liệu lên kết nốiCLOSEGiải phóng kết nốiBảng 7-2: Các socket trong TCP7.2 Các giao thức trong lớp giao vận7.2.1 Yêu cầu, đặc điểm. Các giao thức của lớp giao vận, chức năng.7.2.1 Yêu cầu, đặc điểmCác dịch vụ lớp giao vận được bảo đảm bằng cách giao thức giữa hai thực thể của lớp  giải quyết vấn đề lỗi, điều khiển lưu lượng và đảm bảo trình tự bản tin.Ở lớp liên kết dữ liệu, hai thực thể truyền tin trực tiếp qua đường kênh vật lý. Ở lớp giao vận, đường kênh vật lý được thay bằng Subnet (Mạng cấp dưới).7.2.1 Yêu cầu, đặc điểmSự khác nhau về xây dựng các thủ tục:Lớp giao vận phải xác định địa chỉ nơi nhận,còn lớp liên kết dữ liệu thì không (vì chỉ có một đường truyền tin giữa 2 điểm).Quá trình kết nối ở lớp giao vận cũng phức tạp hơn.7.2.1 Yêu cầu, đặc điểmLớp giao vận đòi hỏi khả năng lưu trử trong Subnet để giữ những gói dữ liệu bị trục trặc và đòi hỏi thủ tục đặc biệt.Ở lớp giao vận, số các kết nối lớn hơn nên các vấn đề đệm dữ liệu và điều khiển luồng phức tạp hơn.7.2.1 Yêu cầu, đặc điểmTừ quan điểm thiết lập thủ tục lớp giao vận, các tính chất thực tế của Subnet ít quan trọng hơn so với các dịch vụ.Tuy nhiên, ở một giới hạn nhất định, dịch vụ lớp mạng có thể che những mặt ít được chú ý của Subnet và cung cấp ghép nối tốt hơn.7.2.2 Các giao thức của lớp giao vận, chức năng.Mô hình OSI chia giao thức của lớp giao vận thành 5 lớp:Lớp 0: Lớp mạng đơn giản, kết nối mạng khi có yêu cầu giao vận không giải quyết lỗi. Chủ yếu tạo ra trình tự, điều khiển dòng dữ liệu để làm cho lớp mạng hoạt động tốt hơn. Bao gồm cơ cấu thiết lập và hủy liên kết ở lớp giao diện.Lớp 1: Tương tự lớp 0, ngoài ra:	- Khởi động lại mạng sau khi thực hiện N_RESET.7.2.2 Các giao thức của lớp giao vận, chức năng.	- Đồng bộ lại và sau đó nối lại liên lạc giữa các thực thể giao vận đã bị gián đoạn. Lớp 1 không kiểm tra lỗi và kiểm soát dòng dữ liệu.Lớp 2: Là phiên bản của lớp 0 và được xây dựng cho mạng tin cậy, nhiều kết nối của lớp giao vận có thể dùng chung một kết nối ở lớp mạng. Sử dụng khi nhiều liên kết ở lớp giao vận được mở đồng thời, nối liên kết có lưu lượng nhỏ.7.2.2 Các giao thức của lớp giao vận, chức năng.Lớp 3: Là tổ hợp lớp 1 và lớp 2. Cho phép dồn kênh, khởi động lại, điều khiển luồng dữ liệu.Lớp 4: Giải quyết các vấn đề về mất gói dữ liệu và các gói dữ liệu bị hỏng đồng thời giải quyết yêu cầu khởi động lại, chọn lớp giao thức sẽ được thực hiện mỗi khi thiết lập liên kết.7.2.2 Các giao thức của lớp giao vận, chức năng.Chức năng:Xác định điểm truy cập dịch vụThiết lập kết nốiGiải phóng kết nốiĐiều khiển luồng/Lưu trữ dữ liệuGhép kênhKhắc phục lỗi7.2.2 Các giao thức của lớp giao vận, chức năng.Xác định điểm truy cập dịch vụKhi một ứng dụng (hoặc user) muốn thiết lập kết nối đến một ứng dụng đầu xa  nó phải xác định điểm kết nối (cổng truy cập dịch vụ)Các mạng khác nhau qui định các điểm truy cập khác nhau- Đối với mạng Internet: port- Đối với ATM: AAL-SAP (ATM Adaptation Layer - Service Access Point)7.2.2 Các giao thức của lớp giao vận, chức năng.- Đối với Lớp mạng: NSAP (Network Service Access Point)- Đối với Lớp giao vận: TSAP (Transport Service Access Point)7.2.2 Các giao thức của lớp giao vận, chức năng.7.2.2 Các giao thức của lớp giao vận, chức năng.Thiết lập kết nốiThực thể giao vận gửi CONNECTION REQUEST TPDU đến đích nhận và đợi CONNECTION ACCEPTED phản hồi  Vấn đề: có thể mất gói dữ liệu, lặp gói dữ liệu, lưu trữ gói dữ liệu, Thủ tục bắt tay7.2.2 Các giao thức của lớp giao vận, chức năng.- Host 1: chọn số seq x và gửi CONNECTION REQUEST TPDU đến host 2- Host 2 phúc đáp bằng ACK TPDU xác nhận số seq x - Host 1 gửi dữ liệu với số seq x đến host 27.2.2 Các giao thức của lớp giao vận, chức năng.Giải phóng kết nối- Host 1 gửi DR (DISCONNECTION REQUEST) TPDU - Host 2 nhận được và gửi trả DR TDPU về cho Host 1- Host 1 gửi ACK TDPU và giải phóng kết nối- Host 2 nhận được ACK TDPU và đồng thời giải phóng kết nốiViệc xóa một kết nối  thực thể giao vận xóa thông tin liên quan đến kết nối. Điều này khác với việc thực thể giao vận sử dụng lệnh DISCONNECT để giải phóng kết nối7.2.2 Các giao thức của lớp giao vận, chức năng.Điều khiển luồng: tương tự như lớp liên kết dữ liệu  sử dụng cửa sổ trượt và bộ đệm.Khác nhau: - Một router chỉ có ít đường liên kết dữ liệu  lớp liên kết dữ liệu tương ứng có ít kết nối- Trong khi đó, số lượng kết nối ở lớp giao vận trên một máy trạm là rất nhiều Phương án điều khiển luồng/lưu đệm dữ liệu khác nhau: phân bố động dung lượng bộ đệm và kích thước cửa sổ trượt7.2.2 Các giao thức của lớp giao vận, chức năng.Ghép kênh kết nốiGhép chiều lên- Mỗi host chỉ có 1 địa chỉ mạng trong khi đó tất cả các kết nối lớp giao vận đều sử dụng địa chỉ này  ghép kênh các kết nối.7.2.2 Các giao thức của lớp giao vận, chức năng.Ghép chiều xuống- Khi một mạch ảo có nhu cầu tăng băng thông  lớp giao vận ghép nhiều kết nối lại với nhau để cung cấp băng thông lớn hơn cho mạch ảo này7.2.2 Các giao thức của lớp giao vận, chức năng.Khắc phục lỗi7.3 Giao thức giao vận UDP và TCP7.3.1 Giao thức giao vận UDP7.3.1.1 Giới thiệu7.3.1.2 Các ứng dụng của giao thức UDP7.3.2 Giao thức giao vận TCP7.3.2.1 Giới thiệu7.3.2.2 Các ứng dụng của giao thức TCP7.3.1.1 Giới thiệu UDPGiao thức UDP cung cấp cho các ứng dụng một phương thức để gửi datagram IP đã đóng gói mà không cần thiết lập kết nối.UDP được mô tả trong chuẩn RFC 768.Dữ liệu của UDP gồm 8-byte mào đầu và phần tải tinHình 7-4: Phần mào đầu của gói dữ liệu UDP7.3.1.2 Các ứng dụng của giao thức UDPGọi thủ tục đầu xa (RPC)Trong trường hợp người sử dụng muốn gửi một bản tin đến máy trạm đầu xa và lấy kết quả trả về, người ta thường sử dụng gói dữ liệu dạng UDP để thực hiện công việc này.Tiến trình này được gọi là Gọi thủ tục đầu xaHình 7-5: Các bước gọi một thủ tục đầu xa7.3.1.2 Các ứng dụng của giao thức UDPGọi thủ tục đầu xa cho phép một chương trình gọi các thủ tục nằm trên máy trạm đầu xa.Để gọi được một thủ tục đầu xa, chương trình tại máy trạm phải có một thủ tục thư viện client stub đại diện cho thủ tục của máy chủ trên máy khách. Tại máy chủ cũng có một thủ tục server stub.7.3.1.2 Các ứng dụng của giao thức UDPGiao thức giao vận thời gian thực (RTP)Đáp ứng nhu cầu dịch vụ thời gian thực: Internet, điện thoại Internet, âm nhạc trực truyến theo yêu cầu, truyền hình hội nghị và các ứng dụng đa phương tiện  RTP đã ra đời. Chuẩn RFC 1889.Hình 7-6: Vị trí của RTP trong chồng giao thức và gói dữ liệu RTP7.3.1.2 Các ứng dụng của giao thức UDPChức năng chính của RTP là ghép nhiều luồng dữ liệu thời gian thực thành một luồng dữ liệu chung dạng UDP.RTP header7.3.2.1 Giới thiệu giao thức giao vận TCPĐược thiết kế để cung cấp một luồng dữ liệu đầu cuối - đến – đầu cuối với độ tin cậy cao trên nền mạng thông thường.Thích nghi với các đặc điểm của mạng và có khả năng đối phó với lỗi mạng. Chuẩn: RFC 793 Bổ sung và mở rộng:RFC 1122, RFC 13237.3.2.1 Giới thiệu giao thức giao vận TCPTCP segment header7.3.2.2 Dịch vụ TCPDịch vụ TCP được tạo ra bởi các điểm kết cuối ở 2 đầu phát và thu dữ liệu, được gọi là các socket.Mỗi socket gồm địa chỉ IP và một địa chỉ cổng 16-bit.Một socket có thể được dùng cho nhiều kết nối tại cùng một thời điểm. 7.3.2.2 Dịch vụ TCPCổngGiao thứcỨng dụng21FTP Truyền file23TelnetĐăng nhập từ xa25SMTPThư điện tử69TFTPTruyền file79FingerTìm kiếm thông tin của người dùng80HTTPWeb110POP-3Truy cập thư điện tử từ xa119NNTPTin tức USENETBảng 7-3: Một số cổng thông dụng của giao thức TCP7.3.2.2 Dịch vụ TCPTất cả các kết nối TCP đều là kết nối song công theo phương thức điểm – nối – điểm. TCP không hỗ trợ kết nối theo phương thức đa điểm (multicasting) và quảng bá (broadcasting). 7.3.2.2 Dịch vụ TCPThiết lập kết nối (3 bước)Đầu phát gửi lệnh gốc CONNECT (SYN bit on + ACK off) và đợi phúc đápNếu đầu thu chấp nhận kết nối, gửi trả ACK vềKết nối được thiết lập, bắt đầu truyền dữ liệu7.3.2.2 Dịch vụ TCPGiải phóng kết nốiMột trong 2 đầu cuối gửi TCP segment với bit FINKhi FIN được xác nhận  kết thúc kết nốiCẢM ƠN THẦY, CÔ VÀ CÁC BẠN ĐÃ QUAN TÂM THEO DÕI.

File đính kèm:

  • pptSlide_Mang_may_tinh.ppt