Tải bản đầy đủ (.pdf) (75 trang)

Xây dựng hệ thống điều khiển các thiết bị điện qua mạng Internet

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.63 MB, 75 trang )

ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA CÔNG NGHỆ THÔNG TIN
Tel. (84-511) 736 949, Fax. (84-511) 842 771
Website: itf.dut.edu.vn, E-mail:



LUẬN VĂN TỐT NGHIỆP KỸ SƯ
NGÀNH CÔNG NGHỆ THÔNG TIN
MÃ NGÀNH : 0511

ĐỀ TÀI :
XÂY DỰNG HỆ THỐNG ĐIỀU KHIỂN CÁC THIẾT BỊ
ĐIỆN GIA DỤNG QUA MẠNG
Mã số : 06T3-23
07T2-08
07T2-44
Ngày bảo vệ : 13/06/2012 – 14/06/2012

SINH VIÊN :
LỚP : 06T3
LỚP : 07T2
CBHD : TS. HUỲNH CÔNG PHÁP

ĐÀ NẴNG, 06/2012
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 2

LỜI CẢM ƠN


Lời đầu tiên chúng tôi xin bày tỏ lòng biết ơn sâu sắc đến tất cả quý thầy cô,
những người đã tận tụy dạy dỗ, truyền đạt kiến thức và kinh nghiệm quý báu cho
chúng tôi trong suốt năm năm học qua.
Chúng tôi xin chân thành cảm ơn TS. Huỳnh Công Pháp - thuộc bộ môn Công
nghệ phần mềm, khoa Công nghệ thông tin, trường Đại học Bách khoa Đà Nẵng,
người đã hướng dẫn, tạo điều kiện thuận lợi và giúp đỡ chúng tôi trong suốt thời gian
làm đề tài.
Và để có được kết quả như ngày hôm nay, chúng tôi rất biết ơn gia đình đã
động viên, khích lệ và tạo mọi điều kiện thuận lợi nhất trong suốt quá trình học tập
cũng như quá trình thực hiện đề tài tốt nghiệp này.
Xin chân thành cám ơn các bạn trong khoa Công nghệ thông tin – khóa 07, đặc
biệt là các bạn lớp 07T2 đã ủng hộ, giúp đỡ, chia sẻ kiến thức, kinh nghiệm và tài liệu
có được cho nhóm chúng tôi trong quá trình nghiên cứu và thực hiện đề tài.
Một lần nữa xin chân thành cám ơn!
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 3

LỜI CAM ĐOAN
Chúng tôi xin cam đoan :
Những nội dung trong luận văn này là do chúng tôi thực hiện dưới sự
hướng dẫn trực tiếp của thầy TS. Huỳnh Công Pháp.
Mọi tham khảo dùng trong luận văn đều được trích dẫn rõ ràng tên tác giả,
tên công trình, thời gian, địa điểm công bố.
Mọi sao chép không hợp lệ, vi phạm quy chế đào tạo, hay gian trá,
chúng tôi xin chịu hoàn toàn trách nhiệm.
Sinh viên thực hiện

Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp


SVTH : 4

NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
………………………………… ………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
…………………………………………………………………………………………
Đà nẵng, ngày tháng năm 2012.



Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp


SVTH : 5

MỤC LỤC
CHƯƠNG I : MỞ ĐẦU 12
I. Bối cảnh đề tài 12
II. Mục đích, yêu cầu thiết kế và lý do chọn đề tài 12
II.1. Mục đích 12
II.2. Yêu cầu thiết kế 12
II.3. Lý do chọn đề tài 13
II.4. Đối tượng nghiên cứu 13
II.5. Phương pháp triển khai 13
II.5.1. Về mặt lý thuyết 13
II.5.2. Công cụ hỗ trợ 14
CHƯƠNG II: CƠ SỞ LÝ THUYẾT 15
I.1. Giao thức TCP/IP 15
I.1.1. Giới thiệu tổng quan 15
I.1.2. Kiến trúc TCP/IP 16
I.1.2.1. Lớp truy xuất mạng (Network Access layer) 18
I.1.2.2. Lớp liên mạng (Internet Layer) 19
I.1.2.3. Lớp giao vận (Transport layer) 24
I.1.2.4. Lớp ứng dụng (Application layer) 31
II. Cơ sở lý thuyết mạch 31
II.1. Chip hỗ trợ kết nối Ethernet -ENC28J60 31
II.1.1 Sơ đồ chân Chip ENC28J60 31
II.1.2 Các khối phần cứng cơ bản trong ENC28J60 33
II.1.3 Sơ đồ sử dụng ENC28J60 để kết nối Ethernet 34
II.1.4. Tập lệnh giao tiếp 35
II.2. Chip ATmega32 35
II.2.1 Giới thiệu 35

II.2.2. Tại sao sử dụng AVR 36
II.3. Chip DS1307 37
CHƯƠNG III : CẤU TRÚC PHẦN CỨNG HỆ THỐNG 44
I. Sơ đồ tổng quan 44
I.1 Nguồn 44
I.2 Giao tiếp cổng COM 44
I.3 Giao tiếp Ethenet với vi điều khiển 44
I.4 Giao tiếp giữa các thiết bị với vi điều khiển 45
II. Sơ đồ mạch nguyên lý 45
II.1 Mạch nguồn 46
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 6

II.1.1 Nguồn 5V 46
II.1.2 Nguồn 3V 46
II.3 Mạch Ethenet 47
II.4 Mạch cổng Serial port 47
II.5 Mạch cổng RJ45 48
II.6 Mạch ISP 48
CHƯƠNG IV: CẤU TRÚC CHƯƠNG TRÌNH HỆ THỐNG 50
I. Các module chính 50
I.1. Các module gao thức Tcp/Ip trong ENC28j60 50
I.2. Module giao thức Ethernet 50
I.2.1. Cấu trúc 1 frame Ethernet 50
I.2.2. Hàm xử lý giao thức ethernet 51
I.3. Module giao thức IP 52
I.3.1. Cấu trúc của gói IP như sau 52
I.3.2. Hàm xử lý giao thức IP 53
I.4. Module giao thức ICMP 55

I.5. Module giao thức UDP 55
I.6. Module giao thức TCP 56
I.7. Module giao thức DHCP 59
I.7.1. Giao thức DHCP 59
I.7.2. Cơ chế làm việc của DHCP 59
I.8. Module giao thức ARP 60
I.8.1. Cấu trúc của gói arp 60
I.8.2. Hàm xử lý giao thức arp 61
I.9. Module giao thức HTTP 62
I.9.1. Hoạt động giao thức HTTP 62
I.9.2. Cấu trúc các bản tin HTTP 63
II. Chức năng của hệ thống 67
II.1 LAMPS CONTROL 67
II.2 FAN CONTROL 68
II.3 AUTO TIMES 68
II.4 ANTI-THEFT 68
III. DEMO 68
III.1. Thiết lập địa chỉ tĩnh cho Web Server 68
III.2. Kiểm tra kết nối từ PC tới mạch Web Server 68
III.3 Thiết lập use –pass trong lớp ntAVRnet.h 69
III.4 Đăng nhập trang web điều khiển của mạch 69
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 7

III.5. Trang chủ Web Server 69
CHƯƠNG 5 : KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 71
I. Những điểm đã đạt được của đề tài 71
I.1. Phần lý thuyết 71
I.2. Phần mạch 71

I.3. Phần chương trình 71
II. Hướng phát triển trong tương lai 72
II.1 Sử dụng màn hình cảm ứng 72
II.2 Sử dụng IC ATmega128 72
II.3 Tích hợp thêm các cảm biến: 73
II.4 Sử dụng Camera 73
TÀI LIỆU THAM KHẢO 74

Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 8

DANH MỤC HÌNH ẢNH
Hình II.1: So sánh mô hình OSI và TCP/IP 17
Hình II. 1: Mô tà đóng gói IP lên khung Ethernet 20
Hình II. 2. Mô tả họat động của khung ARP 22
Hình II. 3. Gói tin của ARP 23
Hình II. 4. Trường của khung ARP 24
Hình II. 5. Đóng gói UDP vào khung Ethernet 26
Hình II. 6. Sự phân kênh và hợp kênh của ARP 26
Hình II. 8. Định dạng Gói TCP 29
Hình II. 9. Khung TCP 30
Hình II. 10. Sơ đồ chân chip ENC28J60 31
Hình II. 11. Cấu trúc phần cứng trong ENC28J60 33
Hình II. 12. ENC kết nối Internet 34
Hình II. 13. IC ATmega32 36
Hình II. 14. Hai gói cấu tạo chip DS1307. 37
Hình II. 15. Mạch ứng dụng đơn giản của DS1307. 38
Hình II. 16. Tổ chức bộ nhớ của DS1307. 39
Hình II. 17. Tổ chức các thanh ghi thời gian. 40

Hình II. 18. Số BCD. 40
Hình II. 19. Cấu trúc DS1307. 43
Hình III. 1: Mô hình tổng quan hệ thống. 44
Hình III. 2: Sơ đồ mạch nguyên lý 45
Hình III. 3. Nguồn 5V 46
Hình III. 4. Nguồn 3V 46
Hình III. 5. Mạch IC ENC28J60 47
Hình III. 6. Mạch cổng Serial port 47
Hình III. 7. Mạch cổng RJ45 48
Hình III. 8. Mạch ISP 48
Hình IV. 1. Lưu đồ dữ liệu vào ra 50
HÌnh IV. 2. Cấu trúc Frame Enthernet 50
Hình IV. 3. các hàm xử lý trong giao thức ethenet 51
Hình IV. 4. Cấu trúc gói IP 52
Hình IV. 5 : Cấu trúc bản tin ICMP 55
Hình IV. 6. Cấu trúc giao thức UDP 55
Hình IV. 7. Cấu trúc header giao thức TCP 56
Hình IV. 8. Lưu đồ trạng thái kết nối 57
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 9

Hình IV. 9: Cấu trúc gói ARP 60
Hình IV. 10 : Devices control 67
Hình IV.11: Địa chỉ tĩnh của Web Server 68
Hình IV. 12: Kết nối từ PC đến mạch Web Server 69
Hình IV. 13: Thiết lập User name và password đăng nhập hệ thống 69
Hình IV. 14: Giao diện đăng nhập 69
Hình IV. 15: Giao diện điều khiển chính 70
Hình V. 1 :Màn hình cảm ứng 72

Hình V. 2:Chíp ATmega128 72
Hình V. 3 : Camera quan sát 73
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 10

DANH MỤC BẢNG
Bảng 1. Chức năng của các chân chip ENC28J60 32
Bảng 2. Bảng hướng dẫn giao tiếp SPI cho chíp ENC28J60 35
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 11

DANH MỤC CÁC TỪ VIẾT TẮT
TCP
Transmission Control Protocol
IP
Internet Protocol
UDP
User Datagram Protocol
ARP Address Resolution Protocol
RARP
Reverse Address Resolution Protocol
CDMA/CD
Carrier Sense Multiple Access Collision Detect
LAN
Local Area Network
OSI
Open Systems Interconnection
ICMP Internet Control Message Protocol

IGMP
Internet Group Message Protocol
FTP

File Transfer Protocol
SMTP

Simple Mail Transfer Protocol
TELNET

TErminaL NETwork
SNMP

Simple Network Management Protocol
IC

Integrated Circuit
PC

Personal Computer
AVR

Automatic Voltage Regulator



Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 12


CHƯƠNG I : MỞ ĐẦU
I. Bối cảnh đề tài
Ngày nay các thiết bị điện được sử dụng rộng rãi và là nhu cầu không thể thiếu
trong đời sống của con người. Việc sử dụng các thiết bị năng luợng điện này sao cho
hiệu quả, dễ dàng, tập trung là rất khó khăn. Hơn nữa việc sử dụng các thiết bị điện
này trong không gian rộng lớn sao cho tiết kiệm,an toàn luôn là vấn đề quan tâm hàng
đầu của nước ta.Với vấn đề đó nhóm em đã “Xây dựng hệ thống điều khiển các thiết
bị điện qua mạng Internet”. Hệ thống giúp cho chúng ta có thể quản lý các thiết bị
tập trung, dễ dàng và hiệu quả và nhanh chóng hơn. Ngoài ra hệ thống còn tích hợp
các cảm biến, cài đặt thời gian hoạt động tự động cho các thiết bị giúp chúng ta sử
dụng nguồn năng lượng điện tiết kiệm và an toàn hơn.
II. Mục đích, yêu cầu thiết kế và lý do chọn đề tài
II.1. Mục đích
Mục đích của đồ án tốt nghiệp này là xây dựng 1 hệ thông điều khiển từ xa một
số thiết bị trong nhà qua mạng Internet, hệ thống mà qua mạng internet cho dù chúng
ta đang ở đâu, dùng bất kỳ máy tính nào có kết nối internet cũng có thể điều khiển
được các thiết bị của hệ thống, chúng ta có thể điều khiển tắt bật các thiết bị từ xa
(đèn,quạt,hệ thống chống trộm….), giám sát được an ninh và quản lý nguồn năng
lượng điện an toàn, hiệu quả hơn.
II.2. Yêu cầu thiết kế
 Thiết kế Web Server với AVR có tính ổn định cao :
- Nhiều PC có thể điều khiển web server cùng lúc.
- Dễ dàng phát triển theo nhu cầu.
 Điều khiển được các thiết bị điện :
- Đóng ngắt tự động theo thời gian.
- Đóng ngắt tự động theo thông số môi trường.
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 13


- Điều khiển từ xa qua mạng Internet.
II.3. Lý do chọn đề tài
- Đam mê lĩnh vực vi điều khiển, công nghệ thông tin và ứng dụng rộng
rãi của nó trong thực tế.
- Đề tài ứng dụng điều khiển xa rất thiết thực với những kỹ sư ngành cơ
điện tử, công nghệ thông tin khi muốn điều khiển những hệ thống lớn
trong nhà máy và xí nghiệp, trong những hệ thống có tính công nghệ cao,
hệ thống nhà thông minh….
II.4. Đối tượng nghiên cứu
- Cách thức truyền dữ liệu qua giao thức TCP/IP và Web Server.
- Chip điều khiển ENC28J60 và ATmega32.
- Ngôn ngữ lập trình C cho AVR.
- Thiết kế mạch trên Orcad 16.5.
II.5. Phương pháp triển khai
II.5.1. Về mặt lý thuyết
- Tìm hiểu các lớp kiến trúc và các module của trong giao thức TCP/IP.
- Tìm hiểu kiến trúc AVR qua IC ATmega32.
- Tìm hiểu lập trình Asembly và lập trình C cho AVR.
- Tìm hiểu các linh kiện điện tử liên quan : IC ENC28J60, IC 7805, ISP,
MAX 232, IC AMS 1117, RELAY, SENSOR….
- Tìm hiểu các công nghệ liên quan đến hệ thống tự động báo cháy,
chống trộm, an toàn và tiết kiệm nguồn năng lượng điện.
- Đưa ra một số định hướng để phát triển đề tài.
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 14

II.5.2. Công cụ hỗ trợ
- Orcad 16.5 để thiết kế mạch nguyên lý và mạch in.
- Proteus 7.8 mô phỏng vài chức năng cơ bản của thiết bị.

- AVR Studio và WinAVR để hổ trợ lập trình C cho AVR.
- Free Commander và notepad ++ để quản lý và lập trình AVR.
- Hyper Terminal và Comman Prompt để kiểm tra kết nối mạng giữa
mạch và PC.
- Burn-E Programmer để nạp chương trình vào IC.
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 15

CHƯƠNG II: CƠ SỞ LÝ THUYẾT
I. Cơ sở lý thuyết Ethernet
I.1. Giao thức TCP/IP
I.1.1. Giới thiệu tổng quan
Mô hình TCP/IP chỉ có 4 lớp. Mô hình tham chiếu của TCP/IP không trực tiếp
giống mô hình của OSI. Mặc dù mỗi mô hình mạng đều có chung một mục đích là để
truyền thông dễ dàng giữa các mạng, giữa các loại máy tính chạy trên nền hệ điểu
hành khác nhau. Nhưng mỗi mô hình mạng đều có đặc điểm riêng và cách thực thi
cũng chút ít khác nhau. Mô hình OSI do ISO tạo ra trong một thời gian dài, nó được
dùng làm mô hình chuẩn cho các mô hình khác. Còn TCP/IP ra đời do yêu cầu cấp
thiết của chính phủ Mỹ trước tình hình lúc bấy giờ, do đó sự phát triển của TCP/IP
không bị đè nặng bởi những yêu cầu chặt chẻ như OSI.
Do đặc tính của OSI là một mô hình tham khảo nên việc áp dụng OSI vào thực
tế là khó có thể thực hiện (hiệu suất kém vì dữ liệu khi truyền trong mạng phải qua tất
cả các lớp của mô hình OSI). Do đó, OSI chỉ là một tiêu chuẩn để các nhà nghiên cứu
dựa vào đó để phát triển các mô hình khác tối ưu hơn. Có rất nhiều mô hình khác nhau
đã được phát minh, tuy nhiên hiện nay trên thế giới cùng với sự phát triển như vũ bão
của Internet thì mô hình TCP/IP là được sử dụng phổ biến nhất.
Bộ giao thức TCP/IP là rất quan trọng trong việc lựa chọn cách thức truyền
thông nhằm hạn chế lỗi và tăng hiệu quả. TCP/IP có các đặc điểm nổi bậc sau:
- Độc lập với cầu hình mạng: TCP/IP có thể dùng cho mạng bus, start, ring, cho

mạng cục bộ, mạng diện rộng hay các liên mạng.
- Độc lập với phần cứng vật lý của mạng: TCP/IP có thể dung cho Ethernet,
token-ring hay bất cứ loại phần cứng nào.
- Là một chuẩn giao thức mở: TCP/IP có thể thực hiện trên nhiều hệ điều hành
(Operating System – OS) khác nhau, nên nó thích hợp dung cho các mạng hỗn tạp các
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 16

loại phần cứng và phần mềm như Internet.
- Định địa chỉ một cách tổng quát: mỗi trạm trên mạng TCP/IP có một địa chỉ
IP duy nhất được dùng để liên lạc với bất kì trạm nào khác trên mạng.
- Hỗ trợ đắc lực mạng theo mô hình Client – Server.
- Các protocol chuẩn lớp ứng dụng: TCP/IP không những cung cấp cho lập
trình viên phương pháp để truyền dữ liệu giữa các ứng dụng mà còn cung cấp cơ sở
của nhiều giao thức lớp ứng dụng.
I.1.2. Kiến trúc TCP/IP
Phát triển từ mô hình tham chiếu OSI, TCP/IP được phân làm 4 lớp:
 Lớp truy xuất mạng (Network Access layer).
 Lớp liên mạng (Internet Layer).
 Lớp giao vận (Transport layer).
 Lớp ứng dụng (Application layer).
Việc phân lớp này đảm bảo một số nguyên tắc sau:
 Một lớp được tạo ra khi cần đến mức trừu tượng hóa tương ứng.
 Mỗi lớp cần thực hiện các chức năng được định nghĩa rõ ràng.
 Việc chọn chức năng cho mỗi lớp cần chú ý tới việc định nghĩa các quy
tắc chuẩn hóa quốc tế.
 Ranh giới các mức cần chọn sao cho thông tin đi qua là ít nhất ( tham số
cho chương trình con là ít).
 Số mức phải đủ lớn để các chức năng tách biệt không nằm trong cùng một

lớp và đủ nhỏ để mô hình không quá phức tạp.
 Một mức có thể được phân thành các lớp nhỏ cần thiết.
 Các mức con có thể lại bị loại bỏ.
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 17

 Hai hệ thống khác nhau có thể truyền thông với nhau nếu chúng bảo đảm
những nguyên tắc chung (cài đặt cùng một giao thức truyền thông).
 Các chức năng được tổ chức thành một tập các lớp đồng mức cung cấp
chức năng như nhau. Các lớp đồng mức phải sử dụng giao thức chung.
Một lớp không định nghĩa một giao thức đơn, nó định nghĩa một chức năng
truyền thông có thể thi hành bởi một số giao thức. Do vậy, mỗi lớp có thể chứa nhiều
giao thức, mỗi giao thức cung cấp một dịch vụ phù hợp cho chức năng của lớp. Mỗi
lớp phải được chuẩn hóa để giao tiếp với lớp tương đương với nó. Trên lý thuyết, giao
thức chỉ liên quan tới lớp của nó mà không quan tâm tới lớp trên hoặc dưới của nó.
Tuy nhiên phải có sự đồng ý để làm sao chuyển dữ liệu giữa các lớp trên một máy
tính, bởi mỗi lớp lại liên quan tới việc gửi dữ liệu từ ứng dụng này tới một ứng dụng
tương đương trên một máy khác. Lớp cao hơn dựa vào lớp thấp hơn để chuyển dữ liệu
qua mạng phía dưới. Dữ liệu chuyển xuống ngăn xếp từ lớp này xuống lớp thấp hơn
cho tới khi được truyền qua mạng nhờ giao thức của lớp vật lý. Tại nơi nhận, dữ liệu
đi lên ngăn xếp tới ứng dụng nhận. Những lớp riêng lẻ không cần biết các lớp trên và
dưới nó xử lý ra sao, nó chỉ cần biết cách chuyển thông tin tới lớp đó mà thôi. Sự cô
lập các hàm truyền thông trên các lớp khác nhau giảm thiểu sự tích hợp công nghệ của
đầu vào mỗi bộ giao thức.
Tương quan hai mô hình OSI model và TCP/IP model :







Hình II.1: So sánh mô hình OSI và TCP/IP

Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 18

Giải thích :
- TCP (Transmission Control Protocol): một nghi thức có cầu nối (connection-
oriented) cung cấp khả năng truyền dòng dữ liệu không lỗi, hai chiều song công (full
duplex) cho các quá trình của người sử dụng.
- UDP (User Datagram Protocol): một khi thức không thiết lập cầu nối
(connectionless) cho các quá trình của user. Do đó, nó không dảm bảo dữ liệu khi
truyền có đến nơi chính xác hay không.
- ICMP (Internet Control Message Protocol): nghi thức sử lý lỗi và điều khiển
thông tin giữa các gateway và các host.
- IP (Internet Protocol): đây là protocol cung cấp dịch vụ phân phối các packet
cho TCP, UDP và ICMP.
- ARP (Adress Resolution Protocol): protocol ánh xạ một địa chỉ Internet vào
trong một địa chỉ phần cứng.
- RARP (Reverse Address Resolution Protocol): ánh xạ một địa chỉ phần cứng
thành một địa chỉ Internet.
I.1.2.1. Lớp truy xuất mạng (Network Access layer)
TCP/IP không định nghĩa lớp này mà dung chung với các chuẩn khác đã tồn tại
như IEEE, X25…(RS232, Ethernet, X21/X21 bis, X35…). Bản chất của lớp này là
việc qui định các đại lượng tín hiệu, các phương cách giao tiếp để truyền các dòng bit
trên kênh truyền.
Không giống những giao thức của lớp cao hơn là sử dụng dịch vụ của lớp dưới
nó và cung cấp dịch vụ cho lớp trên, giao thức của tấng mạng cấn phải biết chi tiết của

mạng vật lý phía dưới (cấu trúc của gói, địa chỉ ) để định dạng đúng thông tin sẽ được
truyền tuân theo những ràng buộc của mạng. Lớp mạng của TCP/IP chứa chức năng
của tất cả 2 lớp thấp nhất của mô hình tham chiếu OSI (lớp liên kết dữ liệu và lớp vật
lý). Lớp mạng thường không được người dùng để ý tới vì thiết kế của TCP/IP che dấu
những chức năng của lớp thấp nhất này và những điều cần biết cho người sử dụng
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 19

cũng như người lập trình chỉ là những giao thức của các lớp cao hơn (IP, TCP,
UDP ). Mỗi khi có công nghệ phần cứng mới xuất hiện, những giao thức của lớp
mạng phải được phát triển để TCP/IP có thể sử dụng phần cứng mới (thông thường đó
chính là các trình điều khiển của chính nhà cung cấp phần cứng đó). Các chức năng
trình diễn trong lớp này bao gồm đóng gói gói thông tin IP thành các “Frame” được
truyền dẫn trên mạng và chuyển địa chỉ IP thành địa chỉ vật lý sử dụng bởi mạng máy
tính. Một số các điểm mạnh của TCP/IP là địa chỉ của nó được phối hợp sao cho trên
mạng Internet không có một thiết bị mạng nào cùng địa chỉ. Địa chỉ này phải được
chuyển đổi thích hợp với địa chỉ mạng vật lý nơi mà dữ liệu được truyền đi.
Hai ví dụ RFCs mô tả giao thức sử dụng cho lớp mạng là :
- RFC 826, giao thức chuyển đổi địa chỉ chuyển đổi địa chỉ IP thành địa chỉ
Ethernet.
- RFC 894, một chuẩn cho việc truyền gói tin IP qua mạng Ethernet mô tả cách
thức đóng gói để chuyển thông tin qua mạng Ethernet.
Khi cài đặt trong UNIX, giao thức của lớp này được xem như sự phối hợp của chương
trình để điều khiển thiết bị và các chương trình liên quan. Những đơn vị tương ứng với
những thiết bị mạng làm nhiệm vụ đóng gói dữ liệu và chuyển giao cho mạng.
I.1.2.2. Lớp liên mạng (Internet Layer)
Lớp này định nghĩa đơn vị dữ liệu để truyền và định tuyến cho các đơn vị dữ
liệu đó. IP là một protocol quan trọng nhất của bộ TCP/IP vì tất cả các protocol trong
bộ TCP/IP đều phải dùng đến nó và tất cả dữ liệu phải lưu chuyển qua nó.

Gói tin IP (Internet Protocol) :
IP là một nghi thức không kết nối (connectionless protocol), tức là không thiết
lập một giao tiếp trực tiếp (end-to-end) trước khi truyền dữ liệu. IP không đảm bảo
phân phát chính xác dữ liệu đến đích, các gói dữ liệu có thể đến đích không đúng thứ
tự, có thể bị sao chép hay thất lạc (do đó IP phải kết hợp với TCP). Đơn vị dữ liệu của
IP là datagram có chứa địa chỉ IP của nguồn và đích. IP có nhiệm vụ tìm đường cho
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 20

datagram nên có thể phân mảnh hay hợp nhất các datagram để thích hợp với kích
thước packet lớn nhất cho phép trên đường truyền.
Định dạng IP datagram header (32 bits header) :
Version

Header
length
Type of service Total length of datagram
Identification Flags Fragment
offset
Time to live Protocol Header checksum
Source address
Destination address
Option:
Strick source route
Loose source route
Record route
Time stamp
Security
Data (max 65535 bytes)

Hình II. 1: Mô tà đóng gói IP lên khung Ethernet
- Verision (VER) 4bits: đánh số phiên bản của IP, phiên bản hiện hành là 4
(IPv4) với giá trị nhị phân là 0100.
- Header length (HLEN) 4bits: định nghĩa chiều dài của IP header chỉ ra bội
số của 4 bytes. Dung 4bits tức giá trị tối đa là 15 tương đương 60bytes.
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 21

- Service type (1 bytes): định nghĩa cách mà datagram được quản lý. Nó bao
gồm các bits định nghĩa thứ tự ưu tiên của datagram. Nó cũng chứa các bit làm rõ loại
dịch vụ phía gởi mong muốn độ tin cậy, trễ…
- Total length (2 bytes): định nghĩa chiều dài tổng thể của một datagram. Tối
đa là 65535 bytes.
- Identification: được dung với các phân đoạn. Một datagram khi đi qua các
mạng khác nhau có thể được chia thành các đoạn để phù hợp với kích thước khung của
mạng. khi xảy ra hiện tượng này thì mỗi đoạn được định danh với một số thứ tự trong
trường này.
- Flags: các bits trong cờ có quan hệ với phân đoạn. Ví dụ datagram có thể
hoặc không có phân đoạn, có thể đoạn đầu, đoạn giữa hoặc đoạn cuối…
- Fragmentation offset: đây là một con trỏ chỉ ra độ lệch của dữ liệu trong
datagram gốc (nếu đã được phân đoạn).
- Time to live: định nghĩa số bước nhảy tối đa một datagram có thể đi qua trước
khi bị drop (loại bỏ). Máy chủ nguồn khi tạo ra datagram sẽ khởi động giá trị trong
trường này. Kế tiếp khi datagram qua Internet, mỗi router mà datagram đi qua sẽ giảm
giá trị đi 1. nếu giá trị này bằng 0 trước khi đến đích cuối cùng thì datagram sẽ bị drop.
- Protocol: định nghĩa loại dữ liệu nghi thức nào của lớp trên đóng gói trong
datagram (TCP, UDP, ICMP…).
- Header checksum (16 bits): dung kiểm tra header chứ không kiểm tra phần
còn lại của gói.

- Source address (4 bytes): địa chỉ IP nguồn của datagram.
- Destination address (4 bytes): địa chỉ IP của đích cần gởi datagram đến.
- Options: trường chọn lựa cho nhiều chức năng đối với IP datagram. Nó có thể
mang các thông tin về kiểm soát định tuyến như: timing, quản lý và cân bằng.
IP lại chứa 4 nghi thức giúp đỡ là: ARP, RARP, ICMP và IGMP.
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 22

- ARP (Adrees Resolution Protocol) được dùng để quảng bá tìm địa chỉ vật lý
từ địc chỉ IP. Protocol này được dùng trong mạng nội bộ vì định dạng địa chỉ vật lý
của mạng phhụ thuộc vào phần cứng mạng.
- RARP (Reverse Address Resolution Protocol) để tìm địa chỉ IP khi đã biết địa
chỉ vật lý.
- ICMP (Internet Control Message Protocol) là cơ chế được dùng bởi máy chủ
và router. ICMP cho phép IP thông báo phía gửi nếu datagram không được phát đúng.
Đặc trưng nhất của ICMP là tiện ích ping thường được các lập trình viên dùng kiểm tra
các node có còn hoạt động hay không.
- IGMP (Internet Group Message Protocol): nghi thức IP liên quan đến 2 thông
tin là unicasting và multicasting. Unicasting là thông tin giữa một người gởi và một
người nhận. nó là thông tin một – một. Tuy nhiên, một số quá trình thỉnh thoảng cần
gởi một thông điệp đến nhiều người nhận đồng thời. Trường hợp này là multicasting,
tức là thông tin một – nhiều. multicasting có rất nhiều ứng dụng.
Gói tin ARP (Adrees Resolution Protocol)
Một cơ chế sử dụng để chuyển địa chỉ IP thành địa chỉ vật lý là ARP (Address
Resolution Protocol). Khi hai máy tính cùng nối vào một mạng vật lý, chúng biết được
địa chỉ IP của nhau nhưng để truyền thông giữa hai máy, chúng phải biết được địa chỉ
vật lý của nhau. ARP giải quyết vấn đề chuyển từ địa chỉ IP 32 bits sang địa chỉ
Ethernet 48 bits. Người ta sử dụng hai cơ chế đó là: ARP request và ARP reply.





Hình II. 2. Mô tả họat động của khung ARP
Chuyển giao trực tiếp: địa chỉ vật lý là một hàm của địa chỉ IP ví dụ sử dụng
trên mạng token ring proNET-10 là mạng cho phép đặt địa chỉ IP và địa chỉ vật lý

H o s t A H o s t D H o s t C H o s t B
A R P R e q u e s t
H o s t A H o s t D H o s t C H o s t B
A R P R e p l y
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 23

thỏai mái. Người ta có thể đặt địa chỉ IP là 192.5.48.3 và địa chỉ vật lý là 3, khi đó ta
có Pa= f(Ia).
Chuyển giao địa chỉ động được thực hiện bằng cách máy tính muốn gửi thông
tin gửi một thông báo tới tòan bộ các máy tính trên mạng, trong thông báo đó có chứa
địa chỉ IP của máy tính nó cần liên lạc, mọi máy sẽ nhận được thông báo và máy nào
thấy địa chỉ IP của mình thì trả lại một thông báo chứa địa chỉ vật lý. Khi đó hai máy
tính có thể “ nói chuyện” với nhau.
Ngoài ra, người ta còn sử dụng bảng chỉ đường để lưu trữ tạm thời các địa chỉ
sử dụng mới nhất ( Address Reslution Cache) để tăng tốc độ của việc chuyển giao địa
chỉ.
Một gói thông tin ARP là một Ethernet Frame được truyền trực tiếp từ máy này
tới máy khác. Vì không phải sử dụng IP, gói tin này không có địa chỉ IP cũng như
không cần được dẫn đường, nó phải được gửi broadcast tới tất cả các máy trên mạng
Ethernet (với địa chỉ FFFF_FFFF_FFFF).
Gói thông tin ARP được mô tả như sau


H a r d w a re T yp e P roto c o l T y p e
S e n d er M A C ad d r e s s (b yte s 0 - 3 )
H a r e w a re le n A R P o p e r at io n P ro to c o l le n
S e n d e r M A C a d d re s s (b y t e s 4 -5 ) S e n d e r IP ad d re ss (b y t e s 0 - 1 )
D e s t M A C a d d r e ss (b ytes 0 -1 ) S e n d e r IP ad d res s (b y te s 2 _ 3 )
D e s t M A C a d d re ss ( b yte s 2 -5 )
D e st IP a d d re ss ( b yte s 0 - 3 )
0

7

8

1 5

1 6

3 1


Hình II. 3. Gói tin của ARP
 Protocol type: 0x0800 cho IP (0000.1000.0000.0000).
 Hardware len = 6 bytes cho ethernet.
 Protocol len = 4 bytes cho IP.
 ARP operation:
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 24


o 1= yêu cầu
o 2 = đáp lại
o 3/4 = RARP yêu cầu/đáp lại
Destination
Address 6 bytes
Source Add
6 bytes
Frame type
2 bytes
(ARP) Data
28 bytes
CRC
4 byte
Hình II. 4. Trường của khung ARP
- Địa chỉ đích (ethernet destination address):
- FF:FF:FF:FF:FF:FF là địa chỉ broadcast cho ARP request.
- Địa chỉ nguồn (ethernet source address) là địa chỉ của ARP yêu cầu.
- Frame type:
+ ARP yêu cầu hoặc đáp lại (ARP request/rely) : 0x0806
+ RARP yêu cầu hoặc đáp lại (RARP request/rely): 0x08035
+ IP: 0x0800
I.1.2.3. Lớp giao vận (Transport layer)
- Lớp vận chuyển có 2 nhiệm vụ như sau :
+ Cung cấp dịch vụ cho lớp quá trình bên trên nó và các ứng dụng cùng
với giao diện thích hợp cho mạng.
+ Phân phát message của các lớp trên giữa các host.
- Lớp giao thức ngay trên lớp Internet là Host to Host Transport Layer hay
thường gọi là Transport Layer. Hai giao thức quan trọng này là Transmission Control
Protocol (TCP) và User Datagram Protocol (UDP). TCP cung cấp dịch vụ chuyển giao
thông tin kết nối (connection oriented), nó bao gồm cả kiểm tra và sửa lổi. UDP cung

cấp dịch vụ kém tin cậy hơn (unreliable) và không thể thiết lập liên kết trước
(connectionless). Cả hai giao thức đều chuyển giao thông tin giữa lớp ứng dụng và lớp
Đồ án tốt nghiệp GVHD : TS. Huỳnh Công Pháp

SVTH : 25

Internet. Chương trình ứng dụng có thể lựa chọn dịch vụ nào thích hợp với ứng dụng
của nó.
- IP phân phát một datagram từ một máy chủ nguồn đến máy chủ đích, tạo
thành một nghi thức máy chủ-máy chủ. Các hệ đểu hành ngày nay trợ giúp môi trường
xữ lý nhiều người sử dụng. Một chương trình thực thi gọi là process. Một máy chủ
đang nhận một datagram cũng có thể chạy nhiều process đồng thời.
- Các nghi thức giao vận của bộ nghi thức TCP/IP định nghĩa một tập kết nối
khái niệm cho các process riêng được gọi là các ports nghi thức, hay đơn giản hơn là
ports. Một ports nghi thức là mộ điểm đến (thường là một bộ đệm) để chứa dữ liệu
dùng cho một process cụ thể. Giao tiếp giữa các processes và càc ports tương ứng
được cung cấp bởi hệ điều hành của máy chủ.
- IP là một nghi thức máy chủ - máy chủ, có nghỉa là nó có thể nhận phát gói từ
một thiết bị vật lý đến thiết bị vật lý khác. Các nghi thức mức giao vận của TCP/IP là
các nghi thức port to port làm việc ớ phía trên của các nghi thức IP để phân phát gói từ
port gốc đến port đích tại cuối truyến.
- Mỗi port được định nghĩa bằng một số nguyên dương được mang trong header
của gói lớp giao vận. Một khung tại lớp giao vận dùng địa chỉ port 16 bits, đủ dùng
cho các ports từ 0 đến 65535
Giao thức UDP (User Datagram Protocol)
UDP (User Datagram Protocol) là một nghi thức không tin cậy, chỉ cố gắng hết
mình để phân phát dữ liệu. UDP chỉ cung cấp cơ bản cần thiết cho phân phát end-to-
end. Nó không cung cấp bất cứ chức năng đánh số thứ tự nào và do đó không thể làm
rõ gói nào bị hỏng khi báo cáo về lỗi. UDP có thể khám phá ra một lỗi đã xuất hiện tức
là ICMP có thể thông báo phía gửi là một user datagram đã hỏng và bị loại. Tuy nhiên

nó không có khả năng biết là gói nào bị mất. UDP cho phép truyền dữ liệu trên mạng
với chi phí thấp do sự phân phát dữ liệu không tin cậy. Các dịch vụ dùng UDP là
TFTP, DSN, SNMP…

×