memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng...

75
MỤC LỤC LUẬN VĂN TỐT NGHIỆP DK Thiet bi qua mang Internet

Transcript of memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng...

Page 1: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

MỤC LỤC LUẬN VĂN TỐT NGHIỆP

DK Thiet bi qua mang Internet

Page 2: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

CHƯƠNG 1. GIỚI THIỆU

1.1. Giới thiệu

Điều khiển từ xa đã và đang là một xu hướng phát triển mang tính quy luật. Sự

phát triển nhanh chóng của khoa học kỹ thuật nói chung và ngành điện tử-viễn thông

nói riêng là nền tảng cho xu hướng này. Vì sự tiện lợi của nó, điều khiển từ xa có thể

được sử dụng ở bất kỳ nơi nào. Người sử dụng có thể ở bất kì đâu trên thế giới cũng có

thể điều khiển được những bộ phận ngoại vi ở nhà, công sở hay ở một nơi nào đó được

định sẵn….Lúc này không còn giới hạn về khoảng cách nữa.

Trong kỹ thuật điều khiển từ xa, môi trường truyền dẫn có thể là dây dẫn điện

hay không khí với tín hiệu truyền có thể là tín hiệu điện hồng ngoại hay sóng vô

tuyền....Đặc biệt, kỹ thuật hồng ngoại hay vô tuyến được khai thác triệt để trong việc

chế tạo các thiết bị đầu xa. Tuy nhiên kỹ thuật điều khiển dùng tia hồng ngoại và vô

tuyến bị hạn chế về khoảng cách và băng thông. Để khắc phục nhược điểm trên có thể

sử dùng phương pháp khác là điều khiển từ xa qua mạng ethernet, Internet hoặc LAN.

Ý tưởng của nó là sử dụng mạng có sẵn để truyền tín hiệu điều khiển, nhờ đó mà vấn

đề khoảng cách được khắc phục.

Như ta đã biết, ngày nay mạng lưới Internet-Ethernet đã phát triển và phổ biến

khắp nơi trên thế giới. Có thể xem sự bùng nổ của Internet ngày nay cũng giống như

sự bùng nổ của tivi vào những năm 40-50 của thế kỉ trước. Chính điều này càng làm

cho Internet ngự trị trong mọi ngóc ngách của cuộc sống, và do đó việc điều khiển từ

xa qua mạng trở nên dễ dàng, thuận tiện hơn và là một nhu cầu tất yếu của cuộc sống

hiện đại ngày nay.

Điều khiển từ xa qua mạng có 2 ưu điểm nổi bậc:

Thứ nhất chúng ta có thể sử dụng mạng Internet có sẵn.

DK Thiet bi qua mang Internet

Page 3: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Thứ hai có thể sử dụng nhiều nơi và có nhiều ứng dụng mà con người

không thể tiếp cận một cách trực tiếp được.

Các thiết bị điều khiển từ xa qua mạng đang từng bước xâm nhập vào trong các

sinh hoạt gia đình do tính đơn giản tiện dụng, độ tin cậy tương đối ổn định. Bộ điều

khiển có thể làm một số công việc trong gia đình khi ta đang ở xa nhà như: mở máy

bơm nước, tắt bếp điện, tắt mở bóng đèn...

1.2. Phương án thực hiện

Thiết kế của đề tài nhằm xây dựng hệ thống điều khiển từ xa thông qua mạng

internet. Mô hình của hệ thống được mô tả như hình sau.

Internet

SwitchIP

tĩnh

Device1

Device 2

IP tĩnh...

remote client

Device N

IP tĩnh

DK Thiet bi qua mang Internet

Page 4: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Thiết kế gồm 2 phần chính:

Phần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển

thiết bị. Trong đề tài, phần này được thiết kế là một software sẽ được cài

đặt trên máy tính đầu xa (remote host) để tạo giao diện cho người dùng,

truyền các lệnh điều khiển qua mạng tới thiết bị và nhận các khung dữ liệu

báo trạng thái từ thiết bị đến người dùng. Phần mềm này được viết bằng

ngôn ngữ Visual Basic trên môi trường hệ điều hành Window, hỗ trợ lập

trình mạng và giao diện đẹp. Phần thiết kế software sẽ được nói kỹ ở các

chương sau.

Phần thứ hai: là Thiết bị giao tiếp mạng và điều khiển. Để giao tiếp được

mạng Ethernet. Thiết bị được thiết kế gồm 1 chip Ethernet controller dùng

để tạo khung Ethernet, truy xuất mạng, điều khiển thiết bị giao tiếp với

chip vật lý giao tiếp mạng (ở đây ta sử dụng IC ENC28J60 của Microchip

hỗ trợ chuẩn IEEE 802.3).

DK Thiet bi qua mang Internet

Page 5: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

CHƯƠNG 2. LÝ THUYẾT MẠNG ETHERNET

2.1. Tổng quan về Ethernet

Nguồn gốc của Ethernet được phát triển từ những thí nghiệm đối với cáp đồng

trục được thực hiện ở tốc độ 3 Mbps và sử dụng nghi thức CSMA/CD (carrier sense

multiple access collision detect) cho mạng LAN vào năm 1970 bởi tập đoàn Xerox. Sự

thành công của đề án này đã sớm gây sự chú ý và đã dẫn đến sự phát triển của Ethernet

10 Mps bởi ba tập đoàn: Digital Equipment, Intel, Xerox.

Thành ngữ Ethernet có nguồn gốc với mạng LAN ( Local-Area Network) và việc

sử dụng chuẩn IEEE 802.3. Chuẩn này được biết với nghi thức CSMA/CD. Có ba tốc

độ được được dùng cho mạng Ethernet với đường truyền là cáp đồng trục, cáp đôi hay

sợi quang.

10Mbps—10 base-T Ethernet.

100Mbps— Ethernet tốc độ cao (Fast Ethernet).

1000Mbps—Gigabit Ethernet.

Ethernet 10-Gigabit đã phát triển và được đưa ra cùng chuẩn IEEE 802.3ae cuối

2001 và đầu 2002. Nó cũng tương thích với chuẩn IEEE 802.3.

Ethernet được tạo ra phần lớn từ kỹ thuật mạng LAN (hiện tại đang được sử dụng

cho gần 85% cho mạng LAN để nối PC và các máy trạm-workstations). Bởi vì ghi

thức của nó có một số đặc điểm sau:

Dễ dàng sử dụng, thực hiện, quản lý và bảo trì.

Cho phép thực hiện mạng tốc độ thấp.

Cung cấp rất đa dạng mô hình mạng (topology).

Bảo mật thành công việc kết nối chung.

DK Thiet bi qua mang Internet

Page 6: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

2.2. Mô hình tham chiếu OSI

Một hình OSI (Open Systems Interconnection) là một mô hình cho phép hai hệ

thống khác nhau bất kì thông tin với nhau bất chấp cấu trúc bên dưới. Mục đích của

mô hình OSI là mở rộng thông tin giữa hai hệ thống khác nhau mà không cần thay đổi

logic phần cứng và phần mền bên dưới của mỗi hệ thống. Mô hình OSI không phải là

một nghi thức, nó chỉ là một mô hình để hiểu và thiết kế kiến trúc mạng cho linh động,

vững chắc và liên thông.

Mô hình OSI là cấu trúc phân lớp để thiết kế các hệ thống mạng cho phép thông

tin qua tất cả các loại hệ thống máy tính. Nó bao gồm 7 lớp riêng biệt nhưng có mối

liên quan với nhau, mỗi lớp định nghĩa một phân đoạn xử lý khi chuyển dịch thông tin

qua mạng. Hình sau mô tả mô hình 7 lớp của OSI.

Hình 2-1 mô hình OSI 7 lớp

Quá trình xử lý tại lớp 7, kế tiếp chuyển tứ lớp này sang lớp khác theo thứ tự. Tại

mỗi lớp (ngoại trừ lớp 7 và lớp 1), header của lớp tương ứng sẽ được cộng vào đơn vị

dữ liệu trước khi chuyển xuống cho lớp dưới kế tiếp. Khi đơn vị dữ liệu được định

dạng đi qua lớp vật lý, nó đổi thành tín hiệu điện từ và vận chuyển dọc theo liên kết

vật lý.

Khi đạt đến đích, tín hiệu đi vào lớp 1 và được đổi ngược thành bit. Các đơn vị

dữ liệu kế tiếp được chuyển lên qua các lớp OSI. Khi mỗi khối dữ liệu tới lớp kế cao

DK Thiet bi qua mang Internet

Page 7: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

hơn, các đầu và đuôi được gắn lúc trước sẽ được loại bỏ tại các lớp tương ứng. Khi nó

đến lớp 7 thì thông điệp trở thành dạng thích hợp cho ứng dụng.

2.2.1. Lớp vật lý (Physical Layer)

Chức năng lớp vật lý là truyền một dòng bit trên một môi trường vật lý. Nó liên

quan đến các qui định vế điện và cơ của giao tiếp và môi trường truyền. Nó cũng định

nghĩa các thủ tục và các chức năng mà các thiết bị vật lý và các giaor tiếp phải thực

thi.

2.2.2. Lớp liên kết dữ liệu (Data Link Layer)

Lớp này có nhiệm vụ chia nhỏ dữ liệu đưa xuống từ lớp mạng thành các frame

dữ liệu (một frame thường dài từ vài trăm byte đến hàng ngàn byte) để truyền đi và tổ

chức nhận sao cho đúng thứ tự các frame. Lớp này cũng cung cấp khả năng truyền

không lỗi trên đường truyền vật lý cho các lớp cao hơn. Vấn đề đặt ra ở đây là phải xác

định cơ chế để xác nhận 1 frame có truyền thành công hay không ? (Acknowledge

frame) và xử lý nhiễu (truyền lại).

Lớp liên kết dữ liệu liên quan đến sự truyền, kiểm tra lỗi và điều khiển luồng dữ

liệu. Chức năng chính của lớp liên kết dữ liệu họat động như một lưới chắn bảo vệ cho

các lớp cao hơn, điều khiển quá trình truyền và nhận. Kiểm tra lỗi và điều khiển lớp

vật lý như là chức năng chính để đảm bảo các lớp trên nhận dữ liệu từ lớp mạng không

có lỗi. Chuẩn IEEE 802 chia lớp lien kết dữ liệu thành hai lớp con là: Logical Link

Control (LLC) và Media Access Control (MAC).

Lớp con Logical Link Control (LLC) có nhiệm vụ bảo vệ lớp trên từ bất cứ

phương pháp truy cập cụ thể nào hoặc truy cập đường truyền cụ thể nào. Các lớp trên

không lo lắng về cách kết nối của chúng tới mạng Ethernet bởi vì LLC điều khiển giao

diện này.

Lớp con Media Acess Control (MAC) có nhiệm vụ cho một vài họat động. Trên

đường truyền lớp con MAC có trách nhiệm trong việc nhận dữ liệu từ lớp lớp con

DK Thiet bi qua mang Internet

Page 8: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Logical Link Control và đóng các gói sẵn sàng cho việc truyền. Lớp MAC xác định

các kênh đường truyền rảnh. Nếu đường truyền rảnh MAC sẽ truyền dữ liệu trên cáp

và luôn giám sát trạng thái của lớp vật lý cho việc báo hiệu có xung đột. Nếu có xung

đột, MAC cũng điều khiển quá trình thu hồi dữ liệu và truyền lại. MAC giải quyết

tranh chấp cho môi trường dung chung. Nó bao gồm các quy định đồng bộ, cờ và kiểm

soát lỗi cần thiết để truyền thông tin từ vị trí này đến vị trí khác, cũng như các địa chỉ

vật lý của trạm nhận. Các nghi thức MAC được dung cụ thể với từng LAN (Ethernet,

Token ring, Token bus).

2.2.3. Lớp mạng (Network Layer)

Điều khiển hoạt động của các subnet, tức là tìm đường cho một packet đi từ

nguồn đến đích (truyền dữ liệu giữa 2 máy bất kì trong mạng).

Vấn đề lớn nhất của lớp này là tìm đường (Routing), giải quyết xung đột

(Collsision Detect), giải quyết vấn đề địa chỉ (Addressing), vấn đề tính chi phí

(Accounting).

Lớp mạng đảm nhận dữ liệu từ lớp giao vận và thêm các thông tin phù hợp cho

gói và cung cấp đường truyền phù hợp cũng như những mức kiểm tra lỗi. Dữ liệu được

định dạng cho phù hợp với đường truyền.

2.2.4. Lớp giao vận (Transport Layer)

Chức năng cơ bản của lớp này là chia nhỏ gói dữ liệu được đưa từ lớp bên trên

xuống thành những đơn vị nhỏ hơn để truyền qua mạng với sự đảm bảo là dữ liệu sẽ

tới nơi một cách chính xác (kiểm tra số sepuence, error detection – phát hiện lỗi, flow

control – điều khiển luồng). Lớp này cung cấp cho các lớp bên trên phương tiện truyền

các message độc lập với các lớp bên dưới (end to end – hai hệ thống thực sự kết nối

với nhau).

Lớp giao vận đảm bảo sự tối ưu cho việc truyền dữ liệu từ nguồn đến đích bằng

cách điều khiển luồng dữ liệu của mạng và thực hiện sự yêu cầu đảm bảo dịch vụ cho

DK Thiet bi qua mang Internet

Page 9: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

lớp phiên. Lớp giao vận xác định kích cở của gói dựa trên số lượng dữ liệu được gởi

và kích thướt gói lớn nhất cho phép truyền trên đường truyền. Nếu dữ liệu gởi lớn hớn

gói có kích thướt tối đa, nó sẽ thực hiện chia dữ liệu thành các thích thướt phù hợp một

cách tuần tự. Nó đồng thời thêm các thông tin như điều khiển lỗi để phù hợp với tỉ lệ

dữ liệu của một gói.

Khi nhận dữ liệu từ lớp mạng, lớp giao vận sẽ đảm bảo rằng dữ liệu nhận được

đúng thứ tự và kiểm tra lặp và mất khung.

2.2.5. Lớp phiên (Session Layer)

Cung cấp những phương tiện cho phép 2 thực thể của lớp ứng dụng có thể tổ

chức và đồng bộ cuộc đối thoại và quản lý sự trao đổi thiông tin giữa chúng (các dịch

vụ để các quá trình có thể trao đổi với nhau, tạo và kết thúc kết nối giữa các quá trình

trên các máy khác nhau). Lớp phiên liên quan đến sự giao tiếp giữa hai thiết bị viễn

thông. Lớp này tạo ra những qui luật cho việc khởi động và kết thúc giao tiếp giữa hai

thiết bị, cũng như sự phục hồi lỗi. Nếu có lỗi và sự giao tiếp lỗi được phát hiện, lớp

phiên sẽ truyền lại dữ liệu để hoàn thành quá trình giao tiếp. Lớp phiên yêu cầu một sự

phục vụ tốt từ lớp giao vận để không yêu cầu truyền lại, hoặc truyền hai hướng, yêu

cầu nhiều sự giám sát (monitoring) và hồi tiếp (feedback).

2.2.6. Lớp trình bày (Presentation Layer)

Lớp này biểu diễn những thông tin được truyền (được hiểu là cú pháp và ngữ

nghĩa). Nó đồng nhất các thông tin giữa các hệ thống với nhau. Lớp trình bày giải

quyết các vấn đề liên quan đến thông dịch dữ liệu và thay đổi mã giữa các thiết bị, mà

chúng định dạng dữ liệu khác nhau. Ngoài ra, lớp này cũng điều khiển sự thông dịch

sự khác nhau giữa các thiết bị và các tập tin định dạng (file formats), cũng như cung

cấp dịch vụ thao tác trên dữ liệu như nén và mã hóa (compression & cryptography).

DK Thiet bi qua mang Internet

Page 10: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

2.2.7. Lớp ứng dụng (Application Layer)

Đưa các ứng dụng thiết thực cho người sử dụng, ứng với mỗi ứng dụng có một

nghi thức khác nhau. Lớp ứng dụng là lớp giao tiếp giữa người dùng và mạng. Lớp này

ảnh hưởng trực tiếp đến những chương trình ứng dụng dành cho người sử dụng (user

application programs) để cung cấp cách thức truy cập mạng. Lớp ứng dụng thường liên

quan với các ứng dụng như: FTP (truyền nhận file), Telnet (giải quyết sự khác nhau

phần cứng cũng như phần lõi giữa các terminal), e-mail (truyền nhận mail), file

sharing…

2.3. Sơ lược về chuẩn IEEE 802.3

Chuẩn IEEE 802.3 là một phần của họ chuẩn cho mạng cục bộ và metropolitan.

Mối quan hệ giữa các thành viên của chuẩn được trình bày bên dưới.

Hình 2-2 Họ chuẩn của mạng cục bộ.

Các chuẩn này liên quan đến lớp vật lý và lớp data link được định nghĩa bởi

International Organization Standardization (ISO).

DK Thiet bi qua mang Internet

Page 11: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

2.4. Cấu trúc khung Ethernet IEEE 802.3

Chuẩn IEEE 802.3 định nghĩa một khung định dạng dữ liệu cơ bản cho tất cả

công việc mà MAC thực hiện. Thêm vào đó, một vài chức năng lựa chọn được thêm

vào cho khung dữ liệu. Một khung dữ liệu gồm có 7 trường như hình vẽ.

Hình 2-3 Cấu trúc Frame Ethernet

Phần đầu khung Preamble

Preamble chỉ ra sự bắt đầu của một khung truyền. Nó gồm một dãy các giá trị bit

0 và 1 xen kẽ nhau để báo hiệu cho trạm nhận (receiving stations) rằng có khung đang

tới. Và nó cũng cung cấp một phương tiện để đồng bộ hóa những phần khung nhận của

lớp vật lý nhận với một luồng bits vào.

Preamble bao gồm 7 bytes như sau:

10101010 - 10101010 - 10101010 - 10101010 - 10101010 - 10101010 - 10101010

Start Frame Delimiter (DFD)

SFD là một chuỗi 8 bit (1 byte) 10101011. Nó theo sau Preamble và chỉ ra sự bắt

đầu của chuỗi thông tin với hai bit cuối là 11. Sau byte này chính là địa chỉ.

Destination Address (DA) – Địa chỉ đích

Địa chỉ đích bao gồm 6 bytes để xác nhận trạm sẽ nhận khung. Nó chứa địa chỉ

vật lý (physical address) của đích sắp đến của gói. Địa chỉ vật lý của hệ thống là một

DK Thiet bi qua mang Internet

Page 12: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

mẫu bit được mã hóa trên NIC (Network Interface Card). Nếu gói phải đi qua mạng

LAN này đến mạng LAN khác để đến đích của nó, trường DA chứa địa chỉ vật lý của

router nối mạng LAN hiện hành và mạng LAN kế. Khi gói đạt đến mạng đích, trường

DA chứa đại chỉ vật lý của thiết bị đích.

Trong chuỗi bits này, bit phía bên trái của trường DA chỉ ra địa chỉ đơn

(individual address) nếu là bit 0 hoặc địa chỉ nhóm (group address) nếu là bit 1. Bit thứ

hai bên trái chỉ ra DA được quản lý cục bộ hay quản lý toàn cục. Những bit còn lại

được gán để xác nhận một trạm đơn, nhóm trạm hoặc tất cả trạm trên mạng (network).

Source Address (SA) – Địa chỉ nguồn

Địa chỉ nguồn bao gồm 6 bytes chứa địa chỉ vật lý của thiết bị cuối cùng chuyển

tiếp gói. Thiết bị đó có thể là trạm đang gởi hoặc router mới xảy ra nhất để nhận và

chuyển tiếp gói. Địa chỉ nguồn thì luôn luôn là địa chỉ đơn và bit phía trái thì luôn là

bit 0.

Length/type of PDU field

Lengh/type field gồm 2 bytes. Chỉ ra số byte trong PDU (Protocol Data Unit)

đang đến. Nếu chiều dài của PDU là cố định, trường này được dung chỉ ra loại hoặc

nền của các giao thức khác. Ví dụ, Novel và Internet dùng nó để làm rõ nghi thức

mạng đang dung PDU.

Data field – Trường dữ liệu (802.2 frame)

Trường dữ liệu gồm tuần tự n bytes. Chiều dài tối thiểu và lớn nhất của dữ liệu là

từ 46 bytes đến 1500 bytes. Dữ liệu được gởi qua lớp mạng với một vài thông tin điều

khiển. Nếu dữ liệu có chiều dài ít hơn 46 byte trong một gói, một cơ chế đặt biệt sẽ

đệm để đủ tối thiểu 46 bytes. PDU được tạo ra bởi lớp phụ ở trên (LLC) rồi lien kết

đến khung 802.3.

Frame Check Sequence (CRC)

DK Thiet bi qua mang Internet

Page 13: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Frame Check Sequence bao gồm 4 bytes. Một vùng chứa 32 bits mã kiểm tra lổi

và phát hiện sai theo mã CRC-32 và tính trên tất cả các trường (fields) ngoại trừ

Preamble, SFD, FCS.

2.5. Lớp con MAC và phương thức truy cập CSMA/CD

2.5.1. Media Access Control (MAC)

Lớp con MAC nằm ở lớp 2 trong mô hình OSI. Có chức năng là giải quyết tranh

chấp cho môi trường dùng chung. Nó bao gồm các quy định đồng bộ, kiểm soát lỗi cần

thiết để chuyển thông tin từ vị trí này đến vị trí khác, cũng như các địa chỉ vật lý của

trạm để đảm bảo khung dữ liệu được truyền nhận đúng trạm.

Hình 2-4 Vị trí lớp con MAC trong mô hình OSI

MAC Control là 1 lớp con (sublayer) tùy chọn nằm trong lớp Data link (trong mô

hình 7 lớp của OSI). Nó được sử dụng chung với lớp con CSMA/CD MAC. MAC

Control cung cấp khả năng điều khiển thời gian thực và thao tác hoạt động của lớp con

MAC. Lớp con MAC Control sử dụng các dịch vụ không kết nối (connectionless) của

lớp con MAC ở phía dưới để truyền khung điều khiển và khung dữ liệu. MAC Control

không cung cấp bất kỳ cơ chế nào để đảm bảo khung truyền không bị mất mát. Các cơ

chế để đảm bảo truyền khung không bị mất mát, như truyền lại các khung bị lỗi, bị hủy

bỏ…, sẽ được MAC Control Client (Logic link control…) hổ trợ. Vì hoạt động của

DK Thiet bi qua mang Internet

Page 14: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

MAC Control là tùy chọn, nên MAC Control Client không thể nhận biết được sự tồn

tại của thực thể MAC Control trong một trạm.

Hoạt động của lớp con MAC control trong suốt đối với CSMA/CD MAC. Ở

mạng Ethernet lớp con MAC sử dụng phương thức truy cập CSMA/CD (Carrier Sense

multiple access with collision detect) để truy cập kênh truyền với 2 chế độ truyền là:

song công (full duplex) và bán song công (half duplex).

2.5.2. Phương thức truy cập CSMA/CD

Khi có nhiều người sử dụng cùng truy cập 1 kênh truyền dùng chung mà không

có quy luật thì sẽ dẫn đến xung đột. Điều này sẽ dẫn đến dữ liệu sẽ bị sai và trở thành

nhiễu. Do đó một mạng LAN cần có một cơ chế để quản lý lưu lượng, tối thiểu hóa

các xung đột và cực đại hóa các khung được phân phối thành công. Cơ chế truy cập

được dùng trong mạng Ethernet theo chuẩn IEEE-802.3 là Carrier Sense Multiple

Access with Collision Detect (CSMD/CD), tạm dịch là “Đa truy cập cảm nhận sóng

mang có phát hiện xung đột”.

Thiết kế ban đầu là phương thức đa truy cập (Multiple Access - MA) trong đó

mỗi trạm truy cập đến một liên kết là ngang bằng nhau và bình quyền. Với MA thì

không có quản lý lưu lượng, bất cứ trạm nào muốn truyền thì sẽ truyền và dựa vào xác

nhận để kiểm tra khung đã truyền là thành công hay không.

Trong một hệ thống CSMA, bất cứ trạm nào muốn truyền trước tiên phải lắng

nghe sóng mang bằng cách kiểm tra điện áp. Nếu không có điện áp trên đường truyền

thì đường truyền xem như là rảnh và nó có thể bắt đầu truyền. CSMA có thể giảm

thiểu số xung đột nhưng tất nhiên không thể loại bỏ chúng một cách hoàn toàn. Xung

đột vẫn xảy ra nếu một trạm chưa cảm nhận được tín hiệu sóng mang từ một trạm khác

nào đó trên đường truyền do hiện tượng trễ của truyền sóng.

Để khắc phục tình trạng như trên cần phải có bộ phát hiện xung đột Collision

Detect – CD. Trong CSMA/CD một trạm muốn phát thì phải chắc chắn là đường

truyền rảnh, rồi mới truyền dữ liệu. Trong lúc truyền dữ liệu, trạm luôn kiểm tra xem

DK Thiet bi qua mang Internet

Page 15: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

có điện áp cao vượt trội hay không, nếu có tức là có xung đột xảy ra. Nếu phát hiện có

xung đột, trạm sẽ ngưng truyền và đợi một lượng thời gian ngẫu nhiên nếu đường

truyền rảnh nó sẽ thực hiện truyền lại.

2.5.3. Chế độ bán song công (Half Duplex Ethernet)

Half – Duplex Ethernet là mô hình truyền thống của Ethernet sử dụng giao thức

CSMA/CD (Carrier Sense Multiple Access/Collision Detect). Với CSMA/CD hay

nhiều hơn các trạm chia sẽ một đường truyền chung. Để truyền một frame, một trạm

phải chờ cho một khoảng thời gian rảnh trên đường truyền khi không có một trạm

khác đang truyền. Sau đó nó truyền frame bằng cách thông báo (broadcast) nó trên

đường truyền để mà nó nghe tất cả các trạm trên mạng. Nếu một trạm khác cố gắng

truyền để truyền dữ liệu tại cùng một thời điểm, một đụng độ xuất hiện. Trạm truyền

sau đó cố ý truyền một Jam để bảo đảm tất cả các trạm được thông báo frame truyền bị

lỗi vì một đụng độ. Trạm sau đó giữ cho một khoảng thời gian ngẫu nhiên trước khi nổ

lực để truyền lại. Tiến trình được lặp lại cho đến khi frame truyền thành công.

Các nguyên tắc cơ bản cho việc truyền một frame:

Mạng được quan sát bởi một “carrier”, hoặc sự hiện diện của một trạm truyền.

Tiến trình này thì được biết như “carrier sense”.

Nếu một carrier tích cực được phát hiện, sau đó đường truyền được trì hoãn.

Trạm tiếp tục quan sát mạng cho đến khi carrier ngừng.

Nếu một carrier không được phát hiện, và khoảng không có carrier thì bằng

hoặc lớn hơn khỏang thời gian chung giữa hai khung dữ liệu (interframe gap),

sau đó trạm lặp tức bắt đầu truyền lại frame.

Trong khi trạm đang truyền frame, nó quan sát đường truyền có đụng độ hay

không.

Nếu một đụng độ được phát hiện, trạm truyền ngừng gửi khung dữ liệu (frame

data) và gửi một chuỗi jame 32 bits. Nếu đụng độ được phát hiện rất sớm

trong lúc truyền frame, thì trạm truyền sẽ hoàn thành việc truyền preamble

DK Thiet bi qua mang Internet

Page 16: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

của frame trước khi bắt đầu truyền chuỗi jame. Chuỗi jame được phát đi để

đảm bảo chiều dài của đụng độ đủ để thông báo tới các trạm khác.

Sau khi gửi chuỗi jame, trạm truyền chờ một khoảng thời gian ngẫu nhiên

được chọn từ bộ phát random number trước khi bắt đầu tiến trình truyền lại.

Tiến trình này gọi là “backoff”. Có thể một đụng độ được lặp lại bị giảm đi do

trạm đang đụng độ chờ một khoảng thời gian ngẫu nhiên trước khi truyền lại.

Nếu đụng độ xuất hiện lại, thì việc truyền được lặp lại, nhưng thời gian trì

hoãn ngẫu nhiên được tăng với mỗi nỗ lực truyền lại. Điều này làm giảm khả

năng đụng độ của trạm khác.

Tiến trình này lặp lại đến khi một trạm truyền một frame không có đụng độ.

Ngay khi một trạm thành công truyền một frame, nó sẽ reset lại collision

counter nó sử dụng để tăng thời gian backoff sau mỗi lần đụng độ đã lặp lại.

Slot Time

Slot time là một thông số cho mạng hoạt động half – duplex Ethernet. Nó được

xác định là 512 bits time cho mạng Ethernet hoạt động tại 10 và 100 Mb/s, và 4096 bit

time cho Gigabit Ethernet. Để mà cho mỗi nơi truyền tin cậy trong việc phát hiện đụng

độ, thời gian truyền nhỏ nhất cho một frame phải ít nhất là một slot time, và thời gian

yêu cầu cho đụng độ để truyền đến tất cả các trạm trên mạng phải nhỏ hơn một slot

time. Vì thế, một trạm không thể hoàn thành truyền frame trước khi phát hiện rằng một

đụng độ đã xuất hiện.

Các tín hiệu đã truyền bởi các khoảng trì hoãn đụng độ các trạm Ethernet khi

chúng truyền suốt trên mạng. Các khoảng truyền bao gồm thời gian yêu cầu cho tín

hiệu truyền qua các phần cáp, và thời gian trì hoãn đụng độ logic khi các tín hiệu

chuyển qua các thành phần điện trong Network Interface Cards (NICs) và các hub. Đối

với các phần cáp dài hơn và nhiều hub trên trạm, nó cho tín hiệu truyền từ một mạng

cuối đến mạng khác. Thời gian một tín hiệu truyền giữa hai trạm có khoảng cách xa

nhất trong mạng được biết như là “propagation delay” lớn nhất của mạng.

DK Thiet bi qua mang Internet

Page 17: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Một trạm phát hiện rằng frame mà nó đang truyền đã bắt gặp một đụng độ, các

tín hiệu của nó phải truyền qua mạng đến trạm khác phát hiện các đụng độ. Trạm này

phải truyền một chuỗi jame để chỉ một đụng độ đã được phát hiện. Chuỗi jame này

phải truyền qua lại mạng trước khi được phát hiện bởi trạm đang truyền. Tổng một

vòng truyền tối đa (“round trip propagation delay) và thời gian yêu cầu để truyền một

chuỗi jame là các thành phần xác định chiều dài của Ethernet slot time.

Slot time là một thông số quan trọng vì:

512 bits slot time thiết lập kích cỡ nhỏ nhất của một Ethernet frame là 64

bytes. (4096 bits slot time cho Gigabit Ethernet yêu cầu một vùng mở rộng

được thêm vào frame để kích cỡ truyền nhỏ nhất là 512 bytes). Bất kỳ

frame có chiều dài ít hơn 64 bytes thì được xem như là một “collision

fragment” hay “runt frame”, và tự động được bỏ ra bởi trạm nhận.

Slot time thiết lập một giới hạn kích cỡ của một mạng trong giới hạn phần

chiều dài cáp tối đa và số lần lặp lại có thể trên đường dẫn. Nếu kích cỡ

của mạng quá lớn, một hiện tượng được biết như “late collisions” có thể

xuất hiện. Đụng độ trễ được xem như một lỗi trong mạng bởi vì đụng độ

đến quá trễ trong việc truyền frame tự động đối xử bởi chức năng điều

khiển truy cập đường truyền Ethernet. Frame đang được truyền sẽ bị bỏ,

yêu cầu một phần mềm ứng dụng phát hiện mất và bắt đầu truyền lại.

Slot time đảm bảo nếu có một đụng độ sắp xuất hiện, nó sẽ được phát hiện

trong 512 bits đầu tiên (4096 cho Gigabit Ethernet) của frame truyền. Một

phần cứng Ethernet đơn giản giữ frame truyền lại sau một đụng độ.

Đối với Gigabit Ethernet, slot time phải được tăng từ 512 đến 4096 bits time. Vì

Gigabit Ethernet có tốc độ data cao hơn, tín hiệu truyền chỉ cho một khoảng cách rất

nhỏ trong phạm vi 512 bits time. Tại tốc độ một slot time 512 bits sẽ được hỗ trợ một

mạng kích cỡ tối đa khoảng 20 mét. Một mạng nhỏ là không thực tế, vì thế chấp nhận

của việc mở rộng một sóng mang được giới thiệu tăng slot time đến 4096 bits. Việc

DK Thiet bi qua mang Internet

Page 18: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

tăng kích cỡ của slot time và việc giới hạn số lần lặp lại trong một mạng, kích cỡ một

mạng 200 mét có thể được hỗ trợ bởi Gigabit Ethernet.

Backoff

Backoff là quá trình xử lý một trạm đang truyền tính toán chờ bao lâu sau một

đụng độ trước khi nỗ lực truyền lại frame. Nếu tất cả các trạm đã chờ cùng khoảng

thời gian trước khi truyền lại, sau đó đụng độ khác sẽ chắc chắn xuất hiện. Điều này

được tránh bằng cách mỗi trạm phát một số ngẫu nhiên để tín khoảng thời gian nó phải

chờ trước khi kiểm tra sóng mang. Khoảng thời gian này được biết như là “backoff

delay” của trạm.

Thuật backoff thực hiện trong Ethernet là “truncated binary exponential

backoff”. Sau một đụng độ, mỗi trạm phát một số ngẫu nhiên nằm trong tầm chỉ rõ của

giá trị. Sau đó nó chờ số slot time trước khi nỗ lực truyền lại. Tầm giá trị tăng theo số

mũ sau mỗi lần truyền lại bị hỏng. Nỗ lực lần đầu có tầm là 0 đến 1, lần thứ hai là 0

đến 3, lần ba là 0 đến 7 và cứ thế tiếp tục. Nếu đụng độ lặp lại, thì tầm tiếp tục mở

rộng đến 10 nỗ lực khi nó đi từ 0 đến 1023. Sau đó tầm của giá trị nằm giữa từ 0 đến

1023. Nếu một trạm không thành công trong việc truyền sau 16 lần nỗ lực, thì MAC

thông báo “excessive collision error”. Frame được truyền lại sau đó bị bỏ đi, ta cần

phần mềm ứng dụng phát hiện mất frame và bắt đầu một sự truyền lại.

Các kết quả binary exponential backoff trong khoảng trì hoãn nhỏ nhất trước khi

truyền lại khi lưu lượng trên LAN là thấp. Khi lưu lượng cao, đụng độ lặp lại là

nguyên nhân làm tầm tăng lên, vì thế làm giảm cơ hội đụng độ sau đó. Trong một

mạng, nơi mà lưu lượng có mức độ cao, đụng độ lặp lại sẽ bắt đầu gây ra lỗi quá đụng

độ (excessive collision error) được phát đi. Lỗi quá đụng độ để chỉ ra rằng lưu lượng

tải đã tăng đến điểm mà nó không thể có khả năng được giữ trên một mạng Ethernet

đơn lẻ.

Capture Effect

DK Thiet bi qua mang Internet

Page 19: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Khi mạng đang hoạt động dưới một tải lớn, thuật toán binary exponential backoff

có thể trình bày một sự không công bằng được biết như “capture effect”. Vấn đề nảy

sinh từ việc nắm giữ của collision counter. Mỗi trạm sẽ cập nhật bộ đếm đụng độ một

cách độc lập của nó và chỉ sau một nỗ lực truyền lại. Chỉ có thành công bộ đếm đụng

độ trở về zero sau khi phát một gói thành công. Điều này cho thuận lợi một trạm đơn

bật cho phép nó “capture” mạng được một khoảng thời gian mở rộng.

Một ví dụ của hiệu ứng bắt gồm hai trạm có nhiều data để gửi và có thể gửi data

nhanh như được cho phép. Cả hai đụng độ với nỗ lực truyền lại đầu tiên và chọn

backoff là 0 hoặc 1. Trạm A chọn 0, và trạm B chọn 1. Trạm A truyền lại trong lúc

trạm B chờ một slot time. Sau khi trạm A hoàn thành việc truyền của nó và hết khoảng

interframe gap, cả hai trạm sẵn sàng truyền lại và đụng độ xuất hiện. Đây là đụng độ

đầu tiên của trạm A đối với frame này, vì thế nó chọn một backoff là 0 hoặc 1. Tuy

nhiên, đây là đụng độ lần thứ hai của trạm B cho frame này, vì thế nó chọn một

backoff giữa 0 và 3. Vì vậy trạm A có khả năng truyền cao hơn trong lúc trạm B chờ

lại. Nếu điều này xảy ra thì lấy số giống như vậy và lại đụng độ, cho nên lấy các số lẻ

cho trạm B (lấy số chẵn thì xấu hơn).

Một kịch bản giống như vậy có thể lặp đi lặp lại chỉ có thể kết thúc khi hàng của

trạm A là nỗ lực cuối cùng hoặc khi trạm cuối cùng trạm B tiến tới nỗ lực thứ 16. Sau

16 lần nỗ lực trạm B sẽ reset lại bộ đếm đụng độ của nó cho phép nó trở lại cạnh tranh

nhiều hơn. Nhưng nó cũng bỏ ra frame nó đã nỗ lực truyền lại, yêu cầu nó xếp hàng

frame cho việc truyền lại bằng phần mềm.

Vào năm 1994 một thuật toán backoff mới được gọi là “binary logarithm

arbitration method” (BLAM) được đưa ra để làm giảm vấn đề hiệu ứng bắt. Một nhóm

làm việc IEEE 802.3w được tạo ra để thêm BLAM như một đặc điểm không bắt buộc

cho chuẩn Ethernet. Mặc dù kết quả mô phỏng chứng minh rằng BLAM đưa ra một cải

tiến xác định trên thuật toán binary exponential backoff, công việc để kết hợp nó vào

trong chuẩn Ethernet không bao giờ được hoàn thành vì một thay đổi (dịch) trong rõ

nét ở full – duplex Ethernet và thiếu sự chú ý cập nhật phần cứng half – duplex.

DK Thiet bi qua mang Internet

Page 20: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

2.5.4. Chế độ song công Ethernet (Full – Duplex)

Tiêu chuẩn IEEE 802.3x xác định một mode thứ hai của hoạt động Ethernet,

được gọi là “full – duplex”, bỏ qua nghi thức CSMA/CD. Nghi thức CSMA/CD là

“half – duplex”. Điều này chỉ rõ rằng một trạm có thể truyền data hay nhận data,

nhưng không cùng một lúc. Mode full – duplex cho phép hai trạm đồng thời chuyển

data trên một liên kết điểm điểm cung cấp đường truyền và nhận độc lập. Từ đó mỗi

trạm có thể truyền và nhận data cùng một lúc, thông lượng của liên kết được gấp đôi

lên. Một trạm 10 Mb/s hoạt động ở mode full – duplex cung cấp băng thông tối đa 20

Mb/s. Một trạm 100 Mb/s cung cấp băng thông 200 Mb/s.

Hoạt động full – duplex bị giới hạn đến chuẩn sau:

Đường truyền vật lý phải là cáp hỗ trợ truyền và nhận đồng thời mà không

nhiễu. Các phương tiện truyền chỉ rõ gặp yêu cầu này là: 10-Base-T,

10Base-FL, 100Base-TX, 100Base-FX, 100Base-T2, 1000Base-CX,

1000Base-SX, 1000Base-LS, và 1000Base-T. Phương tiện truyền không

thể hỗ trợ full – duplex: 10Base5, 10Base2, 10Base-FP, 10Base-FB và

100Base-T4.

Hoạt động full – duplex bị giới hạn liên kết điểm--điểm nối chính xác hai

trạm. Từ đó không có sự cạnh trạnh cho việc chia sẽ đường truyền, đụng

độ không có thể xuất hiện và nghi thức CSMA/CD là không cần thiết.

Frame có thể được truyền, giới hạn chỉ bởi yêu cầu khoảng cách giữa nhỏ

nhất giữa các frame liên tiếp.

Cả hai trạm trên lên kết phải có khả năng và cấu hình cho hoạt động full –

duplex.

Hoạt động full – duplex có một vài thuận lợi:

Thông lượng là gấp đôi cho phép truyền và nhận đồng thời.

Hiệu suất của liên kết tăng bởi sự loại bỏ khả năng đụng độ.

DK Thiet bi qua mang Internet

Page 21: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Các phân đoạn chiều dài thì không giới hạn hơn bởi sự yêu cầu half –

duplex Ethernet đảm bảo đụng độ được truyền đến tất cả các trạm trong

khoảng yêu cầu 512 bits time. Ví dụ, 100Base-FX được giới hạn phần

chiều dài 412 mét trong mode half – duplex, nhưng có thể hỗ trợ phần

chiều dài 2km trong mode full – duplex.

Ở mode full – duplex , chuẩn Ethernet thêm vào hoạt động điều khiển luồng

(flow control) đó là “PAUSE” frame. PAUSE frame cho phép một trạm cuối tạm thời

ngừng lưu thông từ nơi khác đến trạm.

2.6. Giao thức TCP/IP

2.6.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:

DK Thiet bi qua mang Internet

Page 22: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Độc lập với cầu hình mạng: TCP/IP có thể dung 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 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.

2.6.2. Kiến trúc của 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ế.

DK Thiet bi qua mang Internet

Page 23: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

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ỏ.

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. Các ứng dụng mới có thể thêm vào mà không cần thay đổi

lớp vật lý của mạng, phần cứng có thể được bổ sung mà không cần viết lại các phần

mền ứng dụng.

Các lớp kiến trúc mô hình TCP/IP và các nghi thức tương ứng như sau:

DK Thiet bi qua mang Internet

Page 24: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

OSI TCP/IP TCP/IP Protocol StackApplication

layer Process/Application layer

FTP, SMTP, TELNET, SNMPPresentation

layer

Session layer

Transport layer Transport layer TCP or UDP

Network layer Internet layer IP, ARP, RARP, ICMP

DataLink layer Network Access layer

Network interface card Transmission mediaPhysical layer

Tương quan hai mô hình OSI model và TCP/IP model

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.

DK Thiet bi qua mang Internet

Page 25: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

2.6.3. 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

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.

DK Thiet bi qua mang Internet

Page 26: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

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.

2.6.4. 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ó.

2.6.4.1. 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

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 datagramIdentification Flags Fragment

offsetTime to live Protocol Header checksum

Source addressDestination address

Option:Strick source routeLoose source route

Record routeTime stamp

SecurityData (max 65535 bytes)

IP datagram header

DK Thiet bi qua mang Internet

Page 27: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Destination Address4 bytes

Source Address4 bytes

Type Field2 byte

IP data46 – 1500 bytes

CRC4 bytes

Hình 2-5 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.

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…).

DK Thiet bi qua mang Internet

Page 28: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

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.

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 dung 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.

2.6.4.2. Địa chỉ IP

Địa chỉ IP gồm 32 bits, thường được mô tả ở dạng thập phân và mỗi byte cách

nhau bởi dấu “.” là danh hiệu duy nhất trên mạng. Địa chì này có 2 phần: phần địc chỉ

mạng và địa chỉ nội bộ. Có 3 lớp địa chỉ A, B, C dành cho 3 loại mạng lớn, vừa và

nhỏ; 1 lớp địa chỉ multicasting (lớp D) và một lớp dự trữ (E).

DK Thiet bi qua mang Internet

Page 29: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Trong đó có một lớp địa chỉ đặc biệt dùng để kiểm tra thiết bị mạng là:

127.x.x.x (loopback)

Bit trọng số

Lớp(Class)

Phạm vi địa chỉ Kích thướckhông gian địa chỉ

0xxx A 0.0.0.0 – 127.255.255.255 224 = 1677721610xx B 128.0.0.0 – 191.255.255.255 216 = 65536110x C 192.0.0.0 – 223.255.255.255 28 = 2561110 D 224.0.0.0 – 239.255.255.2551111 E 240.0.0.0 – 255.255.255.255

Không gian địa chỉ IP

Khi một mạng phức tạp có địa chỉ thuộc lớp A, B hoặc C có một vài subnet tham

dự để tạo cấu trúc mạng thì local sẽ được chia làm 2 phần: subnet address và host

address. Kích thước và việc gán trọng số của subnet part được quản lý bởi tổ chức nội

bộ.

Để phân biệt các subnet cho các host và router thì cần dùng một subnetsmask. Đó

là bộ 32 bits, bit 1 phủ phần network và subnet, bit 0 dùng để mask out số host trong

địa chỉ IP.

Class A 0 Net ID Host IDClass B 1 0 Net ID Host IDClass C 1 1 0 Net ID Host IDClass D 1 1 1 0 Multicast addressClass E 1 1 1 1 Reserved for future use

Khuôn dạng địa chỉ liên mạng – Subnet address

Các địa chỉ đặc biệt:

DK Thiet bi qua mang Internet

Page 30: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Nhận dạng mạng: Địa chỉ IP tham khảo tới một mạng co phần local part là

zero. Tương tự đối với một subnet. Các địa chỉ này không được gán cho

host và router.

Quảng bá trên mạng: Địa chỉ 255.255.255.255 có một mục đích đặc biệt,

đó là dung để gởi một message tới mỗi host trên mạng nội bộ. broadcasts

thường dùng khi một host cần định vị tới một server. Cũng có thể gởi một

massega tới mỗi host trên mạng ở xa bằng cách đặt local part ở địa chỉ lên

“1”.

Quảng bá trên subnet: Một broadcasts có thể định hướng tới một subnet

đặc biệt. Khi đó host address trong địa chỉ IP được đặc lên “1”; còn nếu

muốn phát rên toàn nút mạng (node) thì cả subnet address và host address

được đặc lên “1”.

Địa chỉ tự khóa (loopback address): Đối nghịch với địa chỉ quảng bá là

các message không được rời khỏi local host. Khi đó thường dung một

loopback address, có nghĩa là “node” dùng để kiểm tra phần mềm mạng.

đó là địa chỉ bắt đầu bằng “127.xxx.xxx.xxx”.

This host on network: Địa chỉ 0.0.0.0 có nghĩa là bản thân host là phần tử

của mạng. với các host trên cùng một mạng cục bộ chỉ có phần host

address là mang số của host trên mạng nà, còn các phần khác là zero.

Hệ thống tên vùng: Để có thể tra tìm tên – địa chỉ của một host nào đó,

người ta dung hệ thống tên vùng giữ ở một server gọi là nameserver.

2.6.4.3. 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.

DK Thiet bi qua mang Internet

Page 31: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Hình 2-6 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ý 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).

DK Thiet bi qua mang Internet

Page 32: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Gói thông tin ARP được mô tả như sau:

Hình 2-7 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:

o 1= yêu cầu

o 2 = đáp lại

o 3/4 = RARP yêu cầu/đáp lại

Destination Address6 bytes

Source Address6 bytes

Frame type2 bytes

(ARP) Data28 bytes

CRC4 bytes

Hình 2-8 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.

DK Thiet bi qua mang Internet

Page 33: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Frame type:

o ARP yêu cầu hoặc đáp lại (ARP request/rely) : 0x0806

o RARP yêu cầu hoặc đáp lại (RARP request/rely): 0x08035

o IP: 0x0800

2.6.5. 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

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ủ.

DK Thiet bi qua mang Internet

Page 34: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

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.

2.6.5.1. 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…

Gói thông tin UDP:

Mỗi gói thông tin UDP gọi là một Datagram được phân làm 2 phần header và

data trong đó header chứa thông tin về địa chỉ cổng nguồn, địa chỉ cổng đích, độ dài

của gói và checksum.

Chech sum: 16 bits là số bù 1 của tổng bù 1của các 2 bytes trong phần header, dữ

liệu và phần header giả (pseudo header) . Nếu phần header và text chứa một số lẻ bytes

thì byte cuối cùng được đệm vào bên phải với 0 để đủ 16 bit cho mục đích Checksum.

Phấn đệm thì không được truyền như một phần của header.

DK Thiet bi qua mang Internet

Page 35: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Hình 2-9 Đóng gói UDP vào khung Ethernet

Phân kênh, hợp kênh và Ports.

Phân kênh, hợp kênh chính là việc lựa chọn những tiến trình ứng dụng trong một

số lớn các tiến trình sử dụng giao thức UDP, người ta chọn ra những ứng dụng tương

ứng với gói thông tin chuyển đến.

Hình 2-10 Sự phân kênh và hợp kênh của ARP

Việc này giải quyết bằng “cơ chế cổng” Port mechanism cơ chế này gắn mỗi ứng

dụng với một con số gọi là port number và mỗi gói thông tin mà nó gửi đi đều mang

một trường SOURCE PORT.

Tại nơi nhận, dựa vào thông tin trường DESTINATION PORT mà gói thông tin

đó được truyền đến cổng tương ứng với ứng dụng. Ví dụ mọi bảng TCP/IP đều có dịch

DK Thiet bi qua mang Internet

Page 36: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

vụ FTP (File Transfer Protocol) gắn với cổng 21 và TFTP (Trivial File Transfer

Protocol) gắn với cổng 69 của UDP.

Việc sử dụng các port number cũng có nhiều cách.

o Dùng những cổng dành riêng cho từng ứng dụng đã được đăng ký trước

(Well-known port assignment).

o Một port number sẽ được sinh ra khi có một ứng dụng đòi hỏi (Dynamic

binding).

Cách tiếp cận kết hợp các kiểu trên (Hybrid) trong đó người ta vừa sử dụng Well-

known port assignment cho một số port number vừa có thể định nghĩa các port number

khác khi cần thiết. 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.

Vì sao người lập trình ứng dụng lựa chọn UDP như một dịch vụ giao vận? Có

một số lý do:

Một số lượng lớn các gói thông tin nhỏ được truyền, thông tin cho việc kết nối và

sửa lỗi có thể lớn hơn nhiều so với thông cần truyền. Trong trường hợp này, UDP là

giải pháp hiệu quả nhất.

Những ứng dụng kiểu “Query-Respon” cũng rất phù hợp với UDP, câu trả lời có

thể dùng làm sự xác nhận của một câu hỏi. Nếu không nhận được sự trả lời sau một

thời gian nào đó, ứng dụng chỉ cần gửi đi một câu hỏi khác.

Một số ứng dụng đã tự nó cung cấp công nghệ riêng để chuyển giao thông tin

cậy, và không đòi hỏi dịch vụ này của transport layer.

Đây là giao thức đơn giản và truyền nhanh, nên nó thường được sử dụng trong

các ứng dụng điều khiển thời gian thực. Do đó trong Luận Văn này chọn giao thức

UDP làm giao thức truyền khung điều khiển của lớp trên.

DK Thiet bi qua mang Internet

Page 37: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

2.6.5.2. Giao thức TCP (Transmission Control Protocol)

TCP (Transmission Control Protocol) là một nghi thức tin cậy. TCP là một nghi

thức port-to-port tin cậy và định hướng kết nối. TCP tạo ra một mạch ảo giữa phía gửi

và nhận trong suốt quá trình truyền.TCP bắt đầu truyền bằng cách thông báo cho phía

nhận biết (thiết lập kết nối) và khi kết thúc truyền thì gửi một kết thúc kết nối. Nó cố

gắng phân phát dữ liệu đến đích, kiểm tra lỗi, truyền lại nếu cần, thông báo lỗi cho lớp

trên nếu truyền không thành công. Do đó, việc sử dụng TCP cũng làm tăng chi phí.

TCP cung cấp đầy đủ các dịch vụ lớp giao vận đối với áp dụng. TCP là một nghi

thức port to port tin cậy và định hướng kết nối. TCP tạo ra một mạch ảo giửa phía gửi

và nhận trong suốt quá trình truyền. TCP bắt đầu truyến bằng cách thông báo cho phía

nhận biết (thiết lập kết nối) và khi kết thúc truyền thì gửi kết thúc kết nối.

Sự tin cậy của TCP đảm bảo bằng việc phát hiện lỗi và truyền lại các khung bị

hỏng: tất cả các đọan phải được nhận và xác nhận trước khi xem như cuộc truyến là

hòan thành và mạch ảo được lọai bỏ.

Tại đầu gửi, TCP chia cuộc truyền thành các đơn vị dữ liệu nhỏ hơn và đóng gói

thành các khung gọi là đọan. Mỗi đọan bao gồm việc đánh số nhằm sềp lại theo thứ tự

khi nhận. Các đọan được tải qua mạng bên trong các IP datagram. Tại đầu nhận, TCP

gom mỗi datagram khi chúng đến và xếp lại theo thứ tự dựa vào các số đã được đánh.

TCP gởi trên internet các datagram. Header của Internet Protocol mang những

trường thông tin bao gồm địa chỉ nguồn và đích của máy chủ. TCP header theo sau

header của internet và cung cấp thông tin cụ thể tới nghi thức TCP.

DK Thiet bi qua mang Internet

Page 38: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Hình 2-11 Định dạng Gói TCP

Source port: 16 bits địa chỉ nguồn.

Destination: 16 bits địa chỉ đích.

Sequence Number: 32 bits một dòng dữ liệu từ chương trình áp dụng có thể

được chia thành hai hay hoặc nhiều đọan TCP. Số thứ tự chỉ ra vị trí của dữ liệu

trong dòng dữ liệu gốc.

Acknowledgment Number: 32 bits dùng để xác nhận có nhận dữ liệu từ thiết

bị khác. Số này chỉ xác nhận khi bit ACK trong trường điều khiển được đặt.

Trong trường hợp này, số thứ tự chỉ ra mong đợi kế tiếp.

Data offset: 4 bits chỉ ra nơi dữ liệu bắt đầu.

Reserved: 6 bits dành cho tương lai.

Control bits: 6 bits (từ trái sang phải).

URG: khi được đặt chỉ ra tính hợp lệ của trường urgent pointer. Cả bit urgent và

con trỏ chỉ ra rằng dữ liệu trong đọan là khẩn cấp.

ACK: khi được đặt chỉ ra tính hợp lệ của trường Acknowledgment number. Cả

hai đều được dùng với nhau và có chức năng khác nhau tùy vào lọai đọan.

PSH: được dùng thông báo phía gửi là cần một tốc độ trung bình cao hơn.

RST: dùng để xóa kết nối khi có nhấm lẫn số thứ tự.

DK Thiet bi qua mang Internet

Page 39: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

SYN: dùng để đồng bộ việc đánh số cho ba lọai đọan: yêu cấu kết nối, khẳng

định kết nối(với bit ACK), và xác nhận khẳng định (với bit ACK được đặt).

FIN: được dùng cho kết thúc nối cho ba đọan và xác nhận của khẳng định kết

thúc.

Window: 16 bits số dữ liệu được chỉ ra trong trường acknowledgment mà phía

gửi đang đảm nhận.

Chech sum: 16 bits là số bù 1 của tổng số bù 1 của 16 bytes trong phần header

và text. Nếu phần header và text chứa một số lẻ bytes header và text được kiểm

tra, thì byte cuối cùng được đệm vào bên phải với 0 để đủ 16 bytes cho mục

đích Checksum. Phần đệm thì không được truyền như một phần của header.

Trong khi tính checksum, tự bản thân của trường checksum được thay thế với 0

(có nghĩa là chechsum sẽ thay thế những bit 0 này).

Chechsum cũng bao gồm 96 bit header giả (Pseudo header) được thêm vào đầu

header của TCP. Header giả này chứa địa chỉ nguồn ,địa chỉ đích, nghi thức, chiều dài

TCP. Phần này được đưa ra để bảo vệ TCP trong việc truyền lạc khung. Những thông

tin này được mang bởi Internet Protocol và được truyền qua TCP/Network interface

trong arguments hoặc kết quả của việc gọi bởi TCP trên IP.

Hình 2-12 Khung TCP

TCP length là chiều dài byte của header và chiều dài dữ liệu nhưng nó không

bao gồm 12 bytes header giả .

Urgent pointer (16 bits): Trường này giao tiếp với giái trị hiện hành của Urgent

pointer như là một mức offset từ số tuần tự trong khung. Urgent pointer luôn chỉ

DK Thiet bi qua mang Internet

Page 40: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

đến giá trị số bytes dữ liệu khẩn. Gía trị của trường này được tính khi tín hiệu

điều khiển URG được đặt.

2.6.6. Lớp ứng dụng (Application Layer)

Gồm các ứng dụng truyền trên mạng như truyền thư (Simple Mail Transfer

Protocol – SMTP), truyền file (File Transfer Protocol – FTP), truy xuất từ xa (Telnet),

quản lý mạng (Simple Network Manegement Protocol – SNMP)…

DK Thiet bi qua mang Internet

Page 41: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

CHƯƠNG 3. ENC28J60 – MICROCHIP STAND-ALONE

ETHERNET CONTROLLER WITH SPI INTERFACE

3.1. Mô tả tổng quan

ENC28J60 là IC giao tiếp mạng Ethernet ở lớp vật lý tương ứng trong mô

hình OSI. Nó hỗ trợ tuyền song công trên kênh truyền có băng thông từ 10-

20Mbps. Đồng thời nhằm tránh xung đột trên kênh truyền, ENC28J60 làm việc

trên protocol CSMA/CD để phát hiện và tối thiểu hóa xung đột. ENC28J60 được

giao tiếp với các thiết bị khác theo chuẩn SPI.

The ENC28J60 is a stand-alone Ethernet controller with an industry

standard Serial Peripheral Interface (SPI). It is designed to serve as an Ethernet

network interface for any controller equipped with SPI. The ENC28J60 meets all

of the IEEE 802.3 specifications. It incorporates a number of packet filtering

schemes to limit incoming packets. It also provides an internal DMA module for

fast data throughput and hardware assisted checksum calculation, which is used in

various network protocols. Communication with the host controller is

implemented via an interrupt pin and the SPI, with clock rates of up to 20 MHz.

Two dedicated pins are used for LED link and network activity indication.

ENC28J60 có các thông số sau:

• IEEE 802.3 compatible Ethernet controller• Integrated MAC and 10BASE-T PHY• Supports one 10BASE-T port with automaticpolarity detection and correction• Supports Full and Half-Duplex modes• Programmable automatic retransmit on collision• Programmable padding and CRC generation

DK Thiet bi qua mang Internet

Page 42: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

• Programmable automatic rejection of erroneouspackets• SPI Interface with clock speeds up to 20 MHz• 8-Kbyte transmit/receive packet dual port SRAM• Configurable transmit/receive buffer size• Hardware-managed circular receive FIFO• Byte-wide random and sequential access withauto-increment• Internal DMA for fast data movement• Hardware assisted• Supports Unicast, Multicast and BroadcastPackets• Loopback mode• Two programmable LED outputs for LINK, TX,RX, collision and full/half-duplex status• Six interrupt sources and one interrupt output pin• 25 MHz clock input requirement• Clock out pin with programmable prescaler• Operating voltage of 3.1V to 3.6V (3.3V typical)• 5V tolerant inputs• Temperature range: -40°C to +85°C Industrial,0°C to +70°C Commercial (SSOP only)• 28-pin SPDIP, SSOP, SOIC, QFN packages

DK Thiet bi qua mang Internet

Page 43: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

3.2. Sơ đồ chân

DK Thiet bi qua mang Internet

Page 44: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

3.3. Sơ đồ khối

DK Thiet bi qua mang Internet

Page 45: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

Chip ENC28J60 có bảy khối chức năng chính:

1. An SPI interface that serves as a communication channel between the host

controller and the ENC28J60.

2. Control Registers which are used to control and monitor the ENC28J60.

3. A dual port RAM buffer for received and transmitted data packets.

4. An arbiter to control the access to the RAM buffer when requests are made

from DMA, transmit and receive blocks.

5. The bus interface that interprets data and commands received via the SPI

interface.

DK Thiet bi qua mang Internet

Page 46: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

6. The MAC (Medium Access Control) module that implements IEEE 802.3

compliant MAC logic.

7. The PHY (Physical Layer) module that encodes and decodes the analog

data that is present on the twisted pair interface.

3.1.1. Nhóm thanh ghi điều khiển

DK Thiet bi qua mang Internet

Page 47: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

3.3.1.1. Chức năng của thanh ghi

DK Thiet bi qua mang Internet

Page 48: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

DK Thiet bi qua mang Internet

Page 49: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

3.4. Giao tiếp với VĐK

3.1.1. Truyền gói

3.4.1.1. Thiết lập việc truyền

3.4.1.2. Tiến trình gởi

3.4.1.3. Trạng thái truyền

3.1.1. Nhận gói

Mô hình bus trong mạng CSMA/CD cho phép mỗi nút nhận mọi gói được

gởi lên mạng. Bộ lọc nhận sẽ xác định gói nào được phép lưu vào bộ đệm nhận.

Không phải mọi gói đều được quan tâm, chỉ có những gói có địa chỉ đích thỏa bộ

lọc nhận mới được chuyển vào bộ nhớ. NIC đưa ra một số lựa chọn cho bộ lọc

nhận và cách quản lý một gói hoàn chỉnh cho việc lưu trữ gói đang đến.

3.4.1.4. Tiến trình nhận

3.4.1.5. Bộ đệm thu

DK Thiet bi qua mang Internet

Page 50: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

1.2. Chuẩn SPI

The ENC28J60 is designed to interface directly with the Serial Peripheral

Interface (SPI) port available on many microcontrollers. The implementation

used on this device supports SPI mode 0,0 only. In addition, the SPI port

requires that SCK be at Idle in a low state; selectable clock polarity is not

supported. Commands and data are sent to the device via the SI pin, with

data being clocked in on the rising edge of SCK. Data is driven out by the

ENC28J60 on the SO line, on the falling edge of SCK. The CS pin must be

held low while any operation is performed and returned high when finished.

DK Thiet bi qua mang Internet

Page 51: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

DK Thiet bi qua mang Internet

Page 52: memberfiles.freewebs.com · Web viewPhần thứ nhất: là phần giao tiếp người dùng tại máy đầu xa để điều khiển thiết bị. Trong đề tài, phần này

www.elabvn.com

DK Thiet bi qua mang Internet