Giao thức TCP/UDP

Một phần của tài liệu Công nghệ giám sát sử dụng camera ứng dụng thiết kế hệ thống giám sát cho các siêu thị (Trang 29 - 34)

CHƯƠNG 2 : HỆ THỐNG CAMERA IP VÀ MƠ HÌNH TCP/IP

2.1. Mơ hình TCP/IP

2.1.2. Giao thức TCP/UDP

TCP (Transmission Control Protocol)

TCP là giao thức điều khiển truyền vận, là một trong những 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ó

29

thể tạo 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 ký tự. TCP còn phân biệt giữa dữ liệu của nhiều ứng dụng.

Cấu trúc gói tin TCP bao gồm hai phần Header và Dữ liệu:

Hình 2.3: Cấu trúc gói tin TCP Source port: Cổng nguồn Source port: Cổng nguồn

Dest port: Cổng đích

Sequence number: Số thứ tự

Acknowledgment number: Số xác nhận Receive window: Cửa sổ nhận

30

Urgent data pointer: Con trỏ dữ liệu khẩn cấp

Phần Header có mười một trường, trong đó có mười trường bắt buộc và một trường tùy chọn là Options. Ý nghĩa của các Header trong TCP được mô tả như sau:

+ Source Port: Số hiệu của cổng tại máy gửi + Destination port: Số hiệu của cổng tại máy nhận

+ Sequence number: Trường này có hai nhiệm vụ: Nếu cờ SYN bật thì nó là số thứ tự gói tin ban đầu và byte đầu tiên được gửi có số thứ tự này cộng thêm một. Cịn SYN khơng bật thì đây là số thứ tự của byte đầu tiên.

+ Acknowledgment number: Nếu ACK bật thì giá trị của trường chính là số thứ tự gói tin tiếp theo mà bên nhận cần.

+ Data offset: Trường có độ dài 4 bit quy định độ dài của phần header (tính theo đơn vị 32 bit). Phần header có độ dài tối thiểu là 5 từ (160 bit) và tối đa là 15 từ (480 bit).

+ Reserved: Dành cho tương lai và có giá trị là 0

+ Flags (hay Control bits): bao gồm sáu cờ: URG (cờ cho trường Urgent pointer), ACK (Cờ cho Acknowledgment), PSH (Hàm Push), RST (Thiết lập lại đường truyền), SYN (Đồng bộ lại số thứ tự), FIN (Khơng gửi thêm số liệu), Window (Số byte có thể nhận bắt đầu từ giá trị của trường báo nhận ACK), Checksum (16 bit kiểm tra cho cả phần header và dữ liệu).

Để thiết lập một kết nối, TCP sử dụng một quy trình bắt tay ba bước. Trước khi client thứ kết nối với một server, server phải đăng ký một cổng và mở cổng đó cho các kết nối (đây được gọi là mở bị động). Một khi mở bị động đã được thiết lập thì một client có thể bắt đầu mở chủ động. Để thiết lập một kết nối, quy trình bắt tay ba bước xảy ra như sau:

+ Client yêu cầu mở cổng dịch vụ bằng cách gửi gói tin SYN tới server, trong gói tin này, các tham số sequence number được gán cho một giá trị ngẫu nhiên X.

31

+ Server hồi đáp bằng cách gửi lại client bản tin SYN_ACK, trong gói tin này tham số acknowledgment number được gán giá trị bằng X+1, tham số sequence number được gán ngẫu nhiên giá trị Y.

+ Để hồn tất q trình bắt tay ba bước, client tiếp tục gửi tới server bản tin ACK, trong bản tin này tham số sequence number được gán giá trị bằng X+1 còn tham số acknowledgment number được gán bằng Y+1.

Tại thời điểm này cả client và server đều được xác nhận một kết nối đã được thiết lập.

Hình 2.9: Ba bước bắt đầu kết nối TCP

Hình 2.4: Bốn bước kết thúc kết nối TCP

UDP (Use Datagram Protocol)

Đây là một trong những giao thức cốt lõi của giao thức TCP/IP. Dùng UDP chương trình trên mạng máy tính có thể gửi những dữ liệu ngắn. UDP không cung cấp sự tin cậy và thứ tự truyền nhận mà TCP làm. Các gói dữ liệu có thể đến khơng đúng thứ

32

tự hoặc bị mất mà khơng có thơng báo. Tuy nhiên UDP nhanh và hiệu quả hơn đối với các mục tiêu như kích thước nhỏ và yêu cầu khắt khe về thời gian.

Do bản chất khơng trạng thái nên nó hữu dụng đối với việc trả lời các truy vấn nhỏ với số lượng lớn người yêu cầu. UDP thường sử dụng trong các ứng dụng như: DNS (Domain Name System), ứng dụng Streaming Media, Voice Over IP, Trivial File Transfer Protocol (TFTP) và game trực tuyến.

Cấu trúc gói tin: UDP là giao thức hướng thông điệp nhỏ nhất của tầng giao vận hiện được mô tả trong RFC 768 của IETF. Trong bộ giao thức TCP, UDP cung cấp một giao diện rất đơn giản giữa tầng mạng bên dưới và tầng phiên làm việc hoặctầng ứng dụng phía trên. UDP khơng đảm bảo cho các tầng phía trên thông điệp đã được gửi đi và người gửi cũng khơng có trạng thái thơng điệp UDP một khi đã được gửi. UDP chỉ thêm các thông tin multiplexing và giao dịch. Các loại thông tin tin cậy cho việc truyền dữ liệu nếu cần phải được xây dựng ở các tầng cao hơn.

33

Phần header của UDP chỉ chứa bốn trường dữ liệu, trong đó có hai trường tùy chọn.

+ Source Port: Số hiệu của cổng tại máy gửi. Nếu khơng dùng đến nó thì đặt bằng 0.

+ Destination port: Trường này xác định cổng nhận thông tin. Trường này là cần thiết.

+ Length: Trường có độ dài 16 bit xác định chiều dài của tồn bộ datagram. Nếu gói tin khơng có dữ liệu mà chỉ có header thì độ dài chỉ có 8 byte.

+ Checksum: Trường này gồm 16 bit dùng cho việc kiểm tra lỗi của phần header và dữ liệu.

Một phần của tài liệu Công nghệ giám sát sử dụng camera ứng dụng thiết kế hệ thống giám sát cho các siêu thị (Trang 29 - 34)