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
Trang 1MẠNG MÁY TÍNH
Chương 7 LỚP GIAO VẬN Transport layer
Trang 2Giới thiệu
4 lớp thấp (Physical, Data Link, Network, Transport) quan 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.
3 lớp cao (Session, Presention, Application)
tập trung đáp ứng các yêu cầu và các ứng dụng của người sử dụng.
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
Trang 3Giới thiệu
Đặc trưng của mạng
có thể “có liên kết” hoặc “không liên kết”,
có thể tin cậy hoặc có thể chưa tin cậy,
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
xác định được yêu cầu về chất lượng dịch vụ củangười sử dụng,
phải biết được khả năng cung cấp dịch vụ của
mạng bên dưới
Trang 4 7.1.3 Dịch vụ Barkely Socket
Trang 57.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
Trang 67.1.2 Các dịch vụ cơ bả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 có thể 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
Dịch vụ của lớp giao vận là dành cho 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
Trang 77.1.2 Các dịch vụ cơ bản
Muốn giải phóng kết nối
DISCONNECT REQ.
DISCONNECT
Giữ trạng thái khóa cho đến khi có gói dữ liệu DATA đến.
(không có) RECEIVE
Gửi thông tin DATA
SEND
Cố gắng chủ động thiết lập kết nối
CONNECT REQ.
CONNECT
Giữ trạng thái khóa cho đến khi có tiến trình kết nối đến
(không có) LISTEN
Ý nghĩa Gói dữ liệu gửi đi
DV cơ bản
Trang 8 Gói dữ liệu của lớp giao vận (TPDU-TransportProtocol 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 giaovận
Trang 97.1.2 Các dịch vụ cơ bản
Trang 107.1.2 Các dịch vụ cơ bản
Quá trình thiết lập và giải phóng kết nối sử dụng lệnh gốc
Trang 117.1.3 Dịch vụ Barkely Socket
Barkeley socket là các dịch vụ được sử dụng trongBarkeley Unix dành cho giao thức TCP Đây là cáclệnh được sử dụng rộng rãi trong lập trình Internet
Giải phóng kết nối CLOSE
Nhận dữ liệu lên kết nối RECEIVE
Gửi dữ liệu lên kết nối SEND
Chủ động thiết lập kết nối CONNECT
Khóa người gọi cho đến khi kết nối vào ACCEPT
Thông báo sẵn sàng nhận kết nối; cung cấp kích thước hàng đợi
Trang 127.2 Các giao thức trong lớp giao vận
7.2.1 Đặc điểm
7.2.2 Chức năng
Trang 137.2.1 Đặc điểm
Các dịch vụ lớp giao vận được triển khai bởi các
giao thức giữa hai thực thể giao vận giải quyếtvấn đề lỗi đường truyền, đ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, kênh
vật lý này được thay bằng Subnet
Trang 147.2.1 Đặc điểm
khác nhau về triển khai giao thức:
Lớp giao vận phải xác định địa chỉ nơi nhận, lớp liên kết dữ liệu không cần (vì chỉ có một đường truyền tin giữa hai điểm)
Quá trình thiết lập kết nối ở lớp giao vận phức tạp hơn
Lớ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
đệm dữ liệu và điều khiển luồng phức tạp hơn
Trang 157.2.1 Đặc điểm
Từ 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 giao vận 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
Trang 17 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: AALSAP (ATM Adaptation Layer Service Access Point)
Trang 1919
Trang 207.2.2 Chức năng
Thiết lập kết nối
Thự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 tay
Trang 227.2.2 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ối
Việ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ối
Trang 237.2.2 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.
Trang 257.2.2 Chức năng
Ghép kênh kết nối (tt)
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ày
Trang 277.3.1 UDP
Giao thức UDP: 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ảitin
Trang 287.3.1 UDP
Khi gói dữ liệu UDP đến, tải tin của nó được giao cho tiến trình ở cổng đích xử lý Trên thực tế, UDP chỉ sử dụng giá trị địa chỉ IP nguồn và đích là chính, nếu trường này trống thì lớp giao vận sẽ không thể
xử lý được gói dữ liệu
Trang 29ta 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ọithủ 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
Trang 307.3.1 Các ứng dụng UDP
Để gọi được một thủ tục đầu xa, chương trình tại
máy trạm/máy chủ phải có một thủ tục gọi là stub
Client stub
Server stub
Trang 317.3.1 Các ứng dụng UDP
Giao 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êucầu, truyền hình hội nghị và các ứng dụng đaphương tiện RTP
Chuẩn: RFC 1889
Trang 327.3.1 Các ứng dụng UDP
RTP header
Trang 347.3.2 TCP
TCP segment header
Trang 357.3.2 Dịch vụ TCP
Dị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
Trang 367.3.2 Dịch vụ TCP
Tin tức USENET NNTP
80
Tìm kiếm thông tin của người dùng
Finger 79
Truyền file TFTP
69
Thư điện tử SMTP
25
Đăng nhập từ xa Telnet
23
Truyền file FTP
21
Ứng dụng Giao thức
Cổng
Trang 377.3.2 Dịch vụ TCP
Tấ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)
Trang 387.3.2 Dịch vụ TCP
Thiế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 đáp
Nế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ệu