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à n
Trang 2CHƯƠ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ôngnó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ệnhay 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ệcchế 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
Trang 3 Thứ hai có thể sử dụng nhiều nơi và có nhiều ứng dụng mà con ngườikhô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ácsinh hoạt gia đình do tính đơn giản tiện dụng, độ tin cậy tương đối ổn định Bộ điềukhiển có thể làm một số công việc trong gia đình khi ta đang ở xa nhà như: mở máybơm nước, tắt bếp điện, tắt mở bóng đèn
remote client
Device N
IP tĩnh
Trang 4Thiế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ểnthiế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ệubáo trạng thái từ thiết bị đến người dùng Phần mềm này được viết bằngngôn ngữ Visual Basic trên môi trường hệ điều hành Window, hỗ trợ lậptrình mạng và giao diện đẹp Phần thiết kế software sẽ được nói kỹ ở cácchương sau
Phần thứ hai: là Thiết bị giao tiếp mạng và điều khiển Để giao tiếp đượcmạ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ớichip 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)
Trang 5CHƯƠ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 đồngtrục được thực hiện ở tốc độ 3 Mbps và sử dụng nghi thức CSMA/CD (carrier sensemultiple 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 haysợ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ụngcho gần 85% cho mạng LAN để nối PC và các máy trạm-workstations) Bởi vì ghithứ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
Trang 62.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 đổilogic 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ôngtin 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ốiliê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 tinqua mạng Hình sau mô tả mô hình 7 lớp của OSI
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ị
Trang 7hơ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ênquan đế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 địnhnghĩ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ựcthi
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ềnkhô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 ? (Acknowledgeframe) 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ệ chocá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ớpvậ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 LinkControl (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ênkhô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 giaodiệ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 conLogical Link Control và đóng các gói sẵn sàng cho việc truyền Lớp MAC xác định
Trang 8cá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ếttranh chấp cho môi trường dung chung Nó bao gồm các quy định đồng bộ, cờ và kiểmsoá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)
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 chogó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ênxuố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, flowcontrol – đ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ềncá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ốivớ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ằngcá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ụ cholớ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
Trang 9gó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ộtcá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ìnhtrê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ễnthô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 haithiế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ớpphiê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êucầ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ảiquyế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ư cungcấp dịch vụ thao tác trên dữ liệu như nén và mã hóa (compression & cryptography)
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ộtnghi 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 (userapplication programs) để cung cấp cách thức truy cập mạng Lớp ứng dụng thường liên
Trang 10quan với các ứng dụng như: FTP (truyền nhận file), Telnet (giải quyết sự khác nhauphần cứng cũng như phần lõi giữa các terminal), e-mail (truyền nhận mail), filesharing…
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ởiInternational Organization Standardization (ISO)
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êmvào cho khung dữ liệu Một khung dữ liệu gồm có 7 trường như hình vẽ
Trang 11Hì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 đangtớ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ủalớ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ộtmẫu bit được mã hóa trên NIC (Network Interface Card) Nếu gói phải đi qua mạngLAN này đến mạng LAN khác để đến đích của nó, trường DA chứa địa chỉ vật lý củarouter 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
Trang 12Trong 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ểntiế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ặcnền của các giao thức khác Ví dụ, Novel và Internet dùng nó để làm rõ nghi thứcmạ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ềukhiể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)
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
Trang 132.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 tranhchấ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ầnthiế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ủatrạ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 MACControl 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 conMAC Lớp con MAC Control sử dụng các dịch vụ không kết nối (connectionless) củalớp con MAC ở phía dưới để truyền khung điều khiển và khung dữ liệu MAC Controlkhô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ủybỏ…, sẽ được MAC Control Client (Logic link control…) hổ trợ Vì hoạt động củaMAC Control là tùy chọn, nên MAC Control Client không thể nhận biết được sự tồntạ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
Trang 14multiple 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ànhnhiễ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óacá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 MultipleAccess with Collision Detect (CSMD/CD), tạm dịch là “Đa truy cập cảm nhận sóngmang 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ácnhậ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ắngnghe 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ềnthì đường truyền xem như là rảnh và nó có thể bắt đầu truyền CSMA có thể giảmthiể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ácnà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 CollisionDetect – CD Trong CSMA/CD một trạm muốn phát thì phải chắc chắn là đườngtruyề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
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 đườngtruyền rảnh nó sẽ thực hiện truyền lại
Trang 152.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ứcCSMA/CD (Carrier Sense Multiple Access/Collision Detect) Với CSMA/CD haynhiều hơn các trạm chia sẽ một đường truyền chung Để truyền một frame, một trạmphải chờ cho một khoảng thời gian rảnh trên đường truyền khi không có một trạmkhá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ắngtruyề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ềnsau đó 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ằnghoặ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 độ haykhông
Nếu một đụng độ được phát hiện, trạm truyền ngừng gửi khung dữ liệu (framedata) và gửi một chuỗi jame 32 bits Nếu đụng độ được phát hiện rất sớmtrong lúc truyền frame, thì trạm truyền sẽ hoàn thành việc truyền preamblecủ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
Trang 16Tiến trình này gọi là “backoff” Có thể một đụng độ được lặp lại bị giảm đi dotrạ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 collisioncounter 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ó đượcxác định là 512 bits time cho mạng Ethernet hoạt động tại 10 và 100 Mb/s, và 4096 bittime 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 gianyê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 slottime 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 khichú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ínhiệ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ệuchuyển qua các thành phần điện trong Network Interface Cards (NICs) và các hub Đốivớ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ạngcuố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 xanhất trong mạng được biết như là “propagation delay” lớn nhất của mạng
Một trạm phát hiện rằng frame mà nó đang truyền đã bắt gặp một đụng độ, cáctí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àyphải truyền một chuỗi jame để chỉ một đụng độ đã được phát hiện Chuỗi jame nàyphả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
Trang 17vòng truyền tối đa (“round trip propagation delay) và thời gian yêu cầu để truyền mộtchuỗ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à 64bytes (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 “collisionfragment” 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ầnchiề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ềukhiể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ệntrong 512 bits đầu tiên (4096 cho Gigabit Ethernet) của frame truyền Mộtphầ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ấtnhỏ trong phạm vi 512 bits time Tại tốc độ một slot time 512 bits sẽ được hỗ trợ mộtmạ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ậncủa việc mở rộng một sóng mang được giới thiệu tăng slot time đến 4096 bits Việctă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ộtmạ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
Trang 18thờ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ảichờ trước khi kiểm tra sóng mang Khoảng thời gian này được biết như là “backoffdelay” của trạm.
Thuật backoff thực hiện trong Ethernet là “truncated binary exponentialbackoff” 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ủagiá 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ì MACthông báo “excessive collision error” Frame được truyền lại sau đó bị bỏ đi, ta cầnphầ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 khitruyề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ộtmạ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ượngtả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
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ảysinh từ việc nắm giữ của collision counter Mỗi trạm sẽ cập nhật bộ đếm đụng độ mộtcá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 đơnbật cho phép nó “capture” mạng được một khoảng thời gian mở rộng
Trang 19Mộ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 datanhanh như được cho phép Cả hai đụng độ với nỗ lực truyền lại đầu tiên và chọnbackoff 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úctrạ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ảnginterframe 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 Tuynhiên, đây là đụng độ lần thứ hai của trạm B cho frame này, vì thế nó chọn mộtbackoff 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ủatrạ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 tranhnhiề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àngframe 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 logarithmarbitration method” (BLAM) được đưa ra để làm giảm vấn đề hiệu ứng bắt Một nhómlàm việc IEEE 802.3w được tạo ra để thêm BLAM như một đặc điểm không bắt buộccho chuẩn Ethernet Mặc dù kết quả mô phỏng chứng minh rằng BLAM đưa ra một cảitiến xác định trên thuật toán binary exponential backoff, công việc để kết hợp nó vàotrong 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
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ểndata 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
Trang 20trạ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 đôilên Một trạm 10 Mb/s hoạt động ở mode full – duplex cung cấp băng thông tối đa 20Mb/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ôngnhiễ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ôngthể 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 haitrạ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 độ
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 trongkhoảng yêu cầu 512 bits time Ví dụ, 100Base-FX được giới hạn phầnchiều dài 412 mét trong mode half – duplex, nhưng có thể hỗ trợ phầnchiề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
Trang 212.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ếpgiố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ểuhà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 thicũ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ó đượcdù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ấpthiế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/IPkhô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ứudự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ãocủ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ôngnhằ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ể 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ềuhành (Operating System – OS) khác nhau, nên nó thích hợp dung cho cácmạ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 địachỉ 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
Trang 22 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ậptrình viên phương pháp để truyền dữ liệu giữa các ứng dụng mà còn cungcấ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 quytắ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ộtlớ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 đảmnhữ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ấpchức năng như nhau Các lớp đồng mức phải sử dụng giao thức chung
Trang 23Một lớp không định nghĩa một giao thức đơn, nó định nghĩa một chức năngtruyề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ềugiao 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ỗilớ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, giaothứ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áytí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ụngtươ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ệuqua 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ơncho 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 đổilớ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ầnmề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:
OSI TCP/IP TCP/IP Protocol Stack
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 media Physical layer
Tương quan hai mô hình OSI model và TCP/IP model
Trang 24TCP (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 (fullduplex) 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 khitruyề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
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ạinhư 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 bittrê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ủamạ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ẽ đượctruyề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ăngcủ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ậtlý) 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ấunhữ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
Trang 25UDP ) 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ớpmạ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ăngtrì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” đượctruyề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áytí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ênmạng Internet không có một thiết bị mạng nào cùng địa chỉ Địa chỉ này phải đượcchuyể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ủachươ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ếtlậ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ảophâ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