Bài thuyết trình powerpoint về đề tài: Tìm hiểu về cơ chế kiểm tra độ toàn vẹn các gói tin trong giao thức. Bộ slide đẹp, có các hoạt ảnh, hiệu ứng bắt mắt, nhiều hình ảnh mình họa và rất ít chữ. Được đánh giá cao trong thuyết trình thực dụng.
Trang 1Tìm hiểu về cơ chế kiểm tra độ toàn vẹn gói tin
trong các giao thức
MẠNG VÀ TRUYỀN THÔNG
Tìm hiểu về cơ chế kiểm tra độ toàn vẹn gói tin
trong các giao thức
Giảng viên hướng dẫn: Nguyễn Thành Huy
Sinh viên thực hiện: Nhóm 10 Trần Bá Phúc
Nguyễn Trung Kiên
MẠNG VÀ TRUYỀN THÔNG
Trang 2 Phát hiện lỗi dữ liệu
Biểu diễn dữ liệu
Giao thức mạng
Các giao thức truyền thông dành cho truyền thông tín hiệu số
trong mạng máy tính có nhiều tính năng để đảm bảo việc trao đổi dữ liệu một cách đáng tin cậy qua một kênh truyền thông không hoàn hảo
Giao thức không quy định một cách chi tiết
việc thực hiện các quy tắc và quy ước trong
Trang 3Các dạng liên kết của Protocol
Kiểm soát được dữ liệu đường truyền
Dữ liệu được truyền theo tuần tự
Nếu nhận thành công thì nơi nhận phải gửi tín hiệu ACK
( ACKnowledge )
Ví dụ : Giao thức TCP, SPX ,
Connectionless
(Giao thức hướng kết nối)
& Connection-Oriented protocols
(Giao thức không kết nối )
Connectionless protocols
(Giao thức hướng kết nối)
Trang 4Không kiểm soát đường truyền
Các dạng liên kết của Protocol
Connection-Oriented protocols
(Giao thức không kết nối )
Dữ liệu không bảo đảm đến được nơi nhận
Dữ liệu thường dưới dạng Datagrams
Thường được sử dụng khi xem các video hay live trực tuyến
Ví dụ : Giao thức UDP của TCP/IP ,
Trang 5Các dạng liên kết của Protocol
Routable
(Giao thức có khả năng định tuyến)
& Non-Routable protocols (Giao thức không có khả năng định tuyến)
Trang 6• Cho phép đi qua các thiết bị liên mạng như Router để xây dựng các
mạng lớn
• Ví dụ : Các giao thức có khả năng định tuyến như TCP/IP, SPX/IPX,
(Giao thức có khả năng định tuyến)
Trang 7Các dạng liên kết của Protocol
Routable
(Giao thức có khả năng định tuyến)
& Non-Routable protocols (Giao thức không có khả năng định tuyến)
Trang 8• Không cho phép đi qua các thiết bị liên mạng như Router để xây
dựng các mạng lớn Ví dụ : NETBEUI
(Giao thức không có khả năng định tuyến)
Trang 9Giao thức mạng
Transmission Control Protocol User Datagram Protocol
HyperText Transfer Protocol
Simple Mail Transfer Protocol
Trang 10Giao thức UDP
01 Một trong những giao thức cốt lõi của bộ giao thức
TCP/IP
02
Chia nhỏ các dữ liệu thành datagram để gửi
04
Khi gửi các khối dữ liệu lớn có thể không đúng thứ tự hoặc mất mà không có
thông báo
05
UDP nhanh và hiệu quả đối với những yêu cầu
khắt khe về thời gian
06
Hữu dụng đối với các truy vấn nhỏ với số lượng người yêu cầu lớn
UDP
Trang 12Giao thức UDP
Giao thức không kết nối
U D
• Source port: địa chỉ cổng nguồn
• Destination port: địa chỉ cổng đích
• Message length: độ dài của gói
• Checksum
Trang 13Giao thức UDP
Không có chức năng khôi phục dữ liệu hay yêu cầu gửi lại dữ liệu bị mất
Là một giao thứ phi kết nối, có thể truyền tải dữ liệu ngay mà không cần thiết lập bất cứ kết nối nào
Sửa lỗi bị hạn chế do chỉ có Checksum
Là một giao thức Best-effort, truyền dữ liệu không tin cậy (Unreliable)
Trang 14• Là một trong các giao thức cốt lõi
của bộ giao thức TCP/IP
• Sử dụng TCP, các ứng dụng trên các máy
chủ được nối mạng có thể tạo các "kết nối"
với nhau, mà qua đó chúng có thể trao đổi
dữ liệu hoặc các gói tin
• Giao thức này đảm bảo chuyển giao dữ liệu
tới nơi nhận một cách đáng tin cậy và đúng thứ tự
• TCP còn phân biệt giữa dữ liệu của nhiều
ứng dụng (chẳng hạn, dịch vụ Web và dịch
vụ thư điện tử) đồng thời chạy trên cùng một máy chủ.
Trang 15Giao thức TCP
TCP hỗ trợ nhiều giao thức ứng dụng phổ biến nhất trên Internet và các ứng
dụng kết quả
WWW
Thư điện tử
Secure Shell
Trang 16Kết nối đáng tin cậy
tin không đáng tin cậy
Trang 17Không như giao thức UDP – giao thức có thể lập tức gửi gói tin
mà không cần thiết lập kết nối, TCP đòi hỏi thiết lập kết nối trước khi bắt đầu gửi dữ liệu và kết thúc kết nối khi việc gửi dữ liệu hoàn tất
Trang 18Giao thức TCP
Cơ chế kiểm tra độ toàn vẹn của các gói tin
TCP tạo ra các kết nối giữa 2 máy cần trao
đổi dữ liệu mà qua đó các gói tin được đảm bảo truyền đến nơi nhận 1 cách đáng tin cậy và đúng thứ tự
Nguyên tắc hoạt động
truyền đi thành các đoạn ( Segment ) có kích thước thích hợp
gửi nó qua một liên mạng đến TCP ở máy đích
Trang 19• TCP nguồn kiểm tra để không có một gói tin nào bị thất lạc
bằng cách gán cho mỗi gói tin một số thứ tự ( Sequence
Number )
báo đã nhận ( Acknowledgement – ACK ) cho các gói tin
đã nhận thành công
Trang 20• Một đồng hồ tại TCP nguồn sẽ báo time-out nếu không
nhận được tin báo nhận trong khoảng thời gian bằng một RRT ( Round Trip Time ) , và dữ liệu ( lúc này được tính là thất lạc ) sẽ được gửi lại
trong quá trình vận chuyển hay không ? Giá trị checksum này được tính toán cho mỗi gói dữ liệu tại nơi gửi trước khi nó được gửi và kiểm tra tại nơi nhận
Hoàn tất
Trang 2121 5 4
Giao thức TCP
Ưu điểm của TCP so với UDP :
Truyền dữ liệu không lỗi ( Do có cơ chế sửa lỗi / Truyền lại )
Truyền dữ liệu đi theo đúng thứ tự
Truyền lại dữ liệu đã mất hoặc bị thất lạc
Loại bỏ các gói dữ liệu trùng lặp
Cơ chế hạn chế tắc nghẽn trên đường truyền
Trang 22Câu hỏi cá nhân
Câu 1
UDP định đường đi cho packet tại vị
trí xác định bằng cách sử dụng số hiệu
cổng được xác định trong header của
datagram, vậy số hiệu cổng là vô hạn
dụng hơn?
Câu 3
Trong TCP, giả sử Sender gửi quá nhiều dữ liệu cho Receiver thì sao?
Trang 23Giao thức HTTP
Giao thức truyền tải siêu văn bản là một trong năm giao thức chuẩn về mạng Internet
Liên hệ thông tin
Là giao thức Client/Server dùng
cho World Wide Web - WWW
HTTP là một giao thức ứng dụng của bộ giao
thức TCP/IP
Trang 24Giao thức HTTP
HTTP được viết bởi ngôn ngữ HTML, từ lúc công bố đến nay đã trải qua nhiều phiên bản 1.x (1.0, 1.1, 1.2,1.3) đến ngày nay là phiên bản 2.x
Điểm mạnh của giao thức HTTP là
hỗ trợ cả hai cách : Kết nối liên tục
và kết nối không liên tục
HTTP server không nhớ thông tin
về client , vì thế HTTP được gọi là
Giao thức không trạng thái
Trang 25Giao thức HTTP
Khi liên kết mới được tạo ra , phía client và server phải tạo
ra vùng đệm TCP ( buffer ) cũng như lưu trữ các lại các biến
TCP
Khi gửi các thông điệp yêu cầu hay trả lời , đều tạo ra biến
TCP mới và biến cũ vẫn được lưu lại
Gánh nặng cho server khi có nhiều client cùng yêu cầu
Giảm thiểu được áp lực khá nhiều cho server
Kết nối không liên tục
Kết nối liên tục
Trang 26duyệt yêu cầu một đối tượng được xác định trong trường URL
Phương thức POST là những phương thức mà HTTP client sử dụng khi người dùng điền vào một biểu mẫu (form) nào đó
Phương thức HEAD tương tự như GET, nhưng Khi server nhận được yêu cầu bằng phương thức HEAD, nó sẽ trả
về thông điệp HTTP và không chứa đối tượng được yêu cầu
Header line: là các dòng tiếp theo
Sp: bao gồm các giá trị về khoảng trống
Blank line: bao gồm các giá trị điều khiển trở về đầu
dòng, xuống hàng (cr,lf)
Entity Body (nếu có): là phần thân của thông điệp HTTP
yêu cầu
Trang 27Giao thức HTTP
Cấu trúc chung của một thông điệp HTTP trả lời
Trang 28Giao thức HTTP
Trong ví dụ hình, cho thấy:
- Status line thể hiện server đang sử dụng HTTP/1.1
- Header line bao gồm:
Connection: close báo cho client rằng server sẽ đóng kết kết TCP sau khi
gửi thông điệp
Date: cho biết thời gian mà thông điệp HTTP trả lời được tạo và gửi bởi server Đó là thời gian mà server lấy đối tượng từ hệ thống tập tin của nó, chèn vào thông điệp
và gửi cho client
Server: cho biết đây là Apache Web server, tương tự như User-agent trong thông điệp yêu cầu
Last-Modified: cho biết thời gian đối tượng được tạo hay sửa đổi lần cuối
Content-Length: cho biết số bytes của đối tượng được gửi Content-Type: cho biết đối tượng trong phần
entity body là HTML
Trang 29Giao thức HTTP
4xx_Clien lỗi Chứa cú pháp sai có thể không thực hiện được
5xx_ Server lỗi Các máy server không thực hiện một yêu cầu rõ ràng đối với các yêu cầu hợp lệ
- Entity body chứa đối tượng yêu trong trường hợp ví dụ trong hình được đại diện bởi các data data data data……….
- Mã trạng thái trả lời:
Các giá trị chữ số đầu tiên của mã trang thái (status code) có 5 giá trị:
Trang 30Giao thức HTTP
Một vài mã trạng thái thông dụng thường gặp:
Trang 31Giao thức SMTP
SMTP là giao thức gửi thư điện tử của tầng ứng
dụng
Dịch vụ truyền dữ liệu tin cậy của TCP
SMTP có 2 phía : client trên mail server người gửi và server bên kia mail server người nhận Tất cả các mail server đều chạy cả 2 phía client và server
của SMTP Mail server đóng vai trò client khi gửi thư và đóng vai server khi nhận thư
Trang 32Giao thức SMTP
Tuy nhiên đây lại là một kĩ thuật cũ nên không tránh khỏi một số lạc
hậu
SMTP truyền các thông điệp ( thư )
từ mail server của người gửi đến mail server của người nhận
SMTP có rất nhiều ưu điểm nên được hầu hết các Mail server
Khi đến đích phải mã hóa trở về dạng nhị phân để có thể sử dụng
được những dữ liệu đó
Trang 33Giao thức SMTP
• Bước 1: An khởi động useragent của mình, cung cấp địa chỉ e-mail của Bình,
soạn thông điệp và chỉ thị user agent gửi mail
• Bước 2: User agent của An gửi thông điệp đến mail server của An và thông
điệp được đặt trong hàng đợi
• Bước 3: SMTP client chạy trên mail server của An phát hiện ra thông điệp
trong hàng đợi và tiến hành mở kết nối TCP đến SMTP server chạy trên mail
server của Bình
• Bước 4: Sau khi thực hiện bắt tay chào hỏi (handshaking), SMTP client của
An sẽ gửi thông điệp của An đến kết nối TCP
• Bước 5: Tại mail server của Bình, SMTP server nhận được thông điệp và lưu
lại trên mailbox
• Bước 6: Khi Bình khởi động user agent của mình thì sẽ thấy mail của An
trong mailbox
Hoạt cảnh gửi email của An và Bình
Trang 34Giao thức SMTP
SMTP không sử dụng các mail server trung gian để gửi thư, mà chỉ sử dụng một kết nối TCP trực
tiếp giữa hai mail server ngay cả khi hai mail server cách nhau một khoản cách rất xa
1
SMTP truyền thông điệp mail qua ba pha: handshaking (chào hỏi), truyền thông điệp, đóng kết nối
2
Pha handshaking: đầu tiên, SMTP client (chạy trên mail server bên gửi) thiết lập kết nối TCP trên
cổng 25 tới SMTP server (chạy trên mail server bên nhận) Nếu SMTP server gặp sự cố thì client sẽ cố
Trang 35HTTP SMTP
Cả 2 giao thức đều được sử dụng để gửi file giữa các máy tính
HTTP chuyển file hoặc đối tượng từ Web server tới Web client ( Trình duyệt Web ) SMTP chuyển file ( thư điện tử ) giữa các Mail server
Khi truyền file cả 2 giao thức đều sử dụng kết nối liên tục
Giao thức HTTP là giao thức kéo ( Pull protocol ) – client kéo thông tin từ server về Phía nhận
( client ) là phía thiết lập kết nối TCP
Giao thức SMTP là giao thức đẩy ( Push protocol ) – client đẩy thông tin lên server Phía gửi
( client ) là phía thiết lập kết nối TCP
HTTP đặt các đối tượng chứa các kiểu dữ liệu khác như âm thanh, hình ảnh trong thông điệp
riêng rẽ để gửi
SMTP thì đặt tất cả các đối tượng chứa các kiểu dữ liệu khác như âm thanh, hình ảnh trong 1 thư
điện tử để gửi đi
Giao thức SMTP
So sánh giao thức SMTP và HTTP
Trang 36Câu hỏi cá nhân
Câu 4
Số hiệu cổng thường dùng của SMTP?
Câu 5
Lịch sử của SMTP?
Trang 37CẢM ƠN ĐÃ
THEO DÕI
MẠNG VÀ TRUYỀN THÔNG