You are on page 1of 13

2.

LÝ THUYẾT

2.2 GIAO TIẾP ETHERNET

2.2.a TỔNG QUAN VỀ ETHERNET

 Ethernet là một họ lớn và đa dạng gồm các công nghệ mạng dựa vào khung
dữ liệu dành cho mạng LAN. Tên ETHERNET được xuất phát từ khái niệm Ête
trong ngành vật lý học. Ethernet định nghĩa một loạt các định nghĩa nối dây và phát
tín hiệu cho tầng vật lý. Hai phương tiện để truy nhập tại phần MAC (điều khiển truy
nhập môi trường truyền dẫn) của tầng liên kết dữ liệu và một định dạng chung cho
việc định địa chỉ. Vì vậy khi nhắc đến Ethernet ta sẽ liên hệ đến lớp 1 và lớp 2 trong
mô hình OSI. Hai lớp này thuộc về phần cứng Ethernet , trong khi các lớp còn lại
thuộc về việc xử lý của phần mềm.

Ethernet đã được chuẩn hóa thành IEEE 802.3. cấu trúc mạng hình sao, hình thức
nối dây cáp xoắn (twisted pair) đã trở thành công nghệ mạng LAN được sử dụng
rộng rãi nhất từ thập niên 1990 cho tới nay. Trong những năm gần đây, mạng wi-fi,
dạng LAN không dây đã được chuẩn hóa bởi IEEE 802.11, đã được sử dụng bên
cạnh hoặc thay thế Ethernet trong nhiều cấu hình mạng.

 Mô hình OSI và giao thức Ethernet TCP/IP


 Mô hình OSI cung cấp một phương thức chuẩn hay mô hình tham khảo mà
dựa vào đó ta có thể xây dựng một phương thức truyền giữa 2 mạng bất kỳ
trong mạng. trong mô hình này, mạng được chia thành lớp
 Giao thức Ethernet TCP/IP cũng được xây dựng dựa vào mô hình này,nó
được rút gọn lại còn 4 lớp tham khảo hình vẽ dưới:

 Tóm tắt các lớp trong mô hình TCP/IP

1. Network Access layer (lớp truy cập mạng)


 Là sự cộng gộp của lớp Data Link và Physical nó quản lý dạng
tín hiệu điện, cáp xoắn, thiết bị kết nối vật lý và Ethernet Media
Access Control (MAC)
 Một số giao thức tiêu biểu trong tầng này gồm:
+ ATM ( Asynchronous Transfer Mode)
+ Ethernet
+ Token Ring
+ FDDI ( Fiber Distributed Data Interface)
+ Fram delay
2. Internet layer (lớp mạng)
 Nằm bên trên lớp truy cập mạng. tầng này có chức năng gán địa
chỉ, đóng gói và định tuyến (Route) dữ liệu.
 Bốn giao thức quan trọng nhất của tầng này như sau
+ IP (internet Protocol): có chức năng gán địa chỉ cho dữ liệu
trước khi truyền và định tuyến chúng tới đích
+ ARP ( Address Resolution Protocol): có chức năng biên dịch
địa chỉ IP của máy đích thành địa chỉ MAC (khi nhận dữ liệu)
và chuyển địa chỉ MAC thành địa chỉ IP khi truyền dữ liệu đi
+ICMP ( Internet Control Message Protocol): có chức năng
thông báo lỗi trong trường hợp truyền bị hỏng
+ IGMP ( Internet Group Management Protocol): có chức năng
điều khiển truyền đa hướng (Muticast)
3. Transport Layer (lớp giao vận)
 Có trách nhiệm thiết lập phiên truyền thông giữa các máy tính
và quy định cách truyền dữ liệu.
 Hai giao thức chính trong lớp này gồm
+ UDP ( User Datagram Protocol): còn gọi là giao thức gói
người dùng. UDP cung cấp các kênh truyền thông phi kết nối
nên nó không đảm bảo truyền dữ liệu đáng tin cậy. các ứng
dụng dùng UDP thường chỉ truyền các gói tin có kích thước
nhỏ, yêu cầu tốc độ nhanh (yêu cầu độ trễ nhỏ), độ tin cậy dữ
liệu phụ thuộc từng ứng dụng
+ TCP (Transmission Control Protocol): ngược lại với UDP,
TCP cung cấp các kênh truyền thông hướng kết nối và đảm bảo
truyền dữ liệu một cách đáng tin cậy. TCP thường truyền các
gói tin có kích thước lớn và yêu cầu phía nhận xác nhận các gói
tin đã nhận
4. Application Layer (lớp ứng dụng)
 Gồm nhiều giao thức cung cấp ứng dụng cho người dùng. Được
sử dụng để định dạng và trao đổi thông tin người dùng
 Một số giao thức thông dụng cho tầng này là
+ DHCP (Dynamic Host Configuration Protocol): giao thức cấu
hình trạm động (tự động lấy địa chỉ IP)
+ DNS (Domain Name System): Hệ thống tên miền
+ SNMP (Simple Network Management Protocol): giao thức
quản lý mạng đơn giản
+ TFTP (Trivial File Transfer Protocol): Giao thức truyền tập
tin bình thường
+ TELNET
 Cấu trúc Protocol
Có thể thấy rằng, tất cả những gì ở lớp trền đưa xuống lớp dưới thì lớp dưới
xem toàn bộ đó là data, sau đó nó gắn thêm header của riêng nó và đưa xuống
lớp dưới xử lý
Hoạt động của giao thức TCP/IP như sau:
ở phía phát: (quá trình phát)
1) Dữ liệu truyền từ ứng dụng đến một trong 2 giao thức vận chuyển
(TCP or UDP). Một gói tin hay một đơn vị dữ liệu (PDU) của
TCP/UDP thường được gọi là các segment (đoạn dữ liệu)
2) Đoạn dữ liệu xuống lớp internet, ở đó giao thức IP cung cấp thông tin
đánh địa chỉ luận lý (địa chỉ IP) và đóng gói dữ liệu vào một datagram,
thường được gọi là IP packet.
3) Datagram IP xuống lớp truy cập mạng , và được đóng gói 1 hay nhiều
khung dữ liệu (Frame Ethernet), sau đó đưa xuống tầng vật lý để gửi
đi. Khung dữ liệu được chuyển thành một luồng các bit để truyền đi
trên môi trường mạng

ở phía thu (quá trình thu)


1) Tầng vật lý sẽ nhận luồng bit , khôi phục khung dữ liệu
2) Tách gói IP ra và đẩy lên lớp IP nếu đây là gói IP. Còn trong trường
hợp bên trong Frame Ethernet không phải là một gói IP mà là một
gói tin của giao thức ARP thì nó đẩy sang cho giao thức ARP.
3) Tại tầng giao thức IP, xác định bên trong dữ liệu thuộc giao thức
nào (TCP or UDP or ICPM) và chuyển đến giao thức tương ứng.
4) Cuối cùng, giao thức tiếp theo (TCP, DCP, or ICPM) sẽ xử lý tiếp
segment nhận được , xác định xem dữ liệu này là của ứng dụng nào
và chuyển đến ứng dụng tương ứng
+ Lớp vật lý

Chứa 8 byte để chuẩn bị truyền dữ liệu, trong đó 7 byte cho việc đồng bộ lớp
vật lý, byte thứ 8 báo bắt đầu frame SFD (start of Frame Delimiter)
+ MAC Header
Bao gồm 14 byte
+ 6 byte đầu: chứa địa chỉ đích
+ 6 byte tiếp: chứa địa chỉ nguồn
+ 2 byte cuối: chứa chiều dài hoặc dạng dịch vụ
+ IP (Internet Protocol)

Ý nghĩa của các trường này như sau: (các trường quan trọng)
 Version (có chiều dài 4 bit): cho biết phiên bản của giao thức, đối với đề tài
này là IPver4, trường hợp này sẽ luôn có giá trị là 4 (0100)
 Type of service: 8 bit
 Total Length: 16 bit tổng chiều dài, bao gồm cả gói IP
 Time to Live: thời gian sống cho một gói tin truyền đi trên mạng
 Source address: chứa địa chỉ đích
 Destination address: chứa địa chỉ đích

+ TCP/IP (Transmission Control Protocol and Internet Protocol)

Cấu trúc Header TCP

Ý nghĩa các trường

 Port đích và port nguồn: để phân biệt các tiến trình ứng dụng đang xay ra
trong máy tính
 Các số sequence Number và Acknowledgement Number: số sequence để
phân biệt các segment khác nhau trong một dòng dữ liệu, các số
Acknowledgment dùng trong cơ chế xác nhận
 ACK: cho biết số xác nhận nằm trong Acknowledgment
 SYN: đồng bộ các bản tin khởi tạo khi thiết lập một kết nối truyền dữ liệu
 FIN: dùng để đóng môt phiên làm việc

Cụ thể hơn, vai trò của TCP trong chồng giao thức TCP gồm 3 chức năng chính:
điều khiển luồng, kiểm soát lỗi và báo nhận
+ điều khiển luồng: điều phối tốc độ và kích thước luồng dữ liệu để đảm bảo phía
nhận đủ khả năng nhận và xử lý luồng dữ liệu.

+ kiểm soát lỗi: đảm bảo các gói tin đến đúng và đủ

+ báo nhận: khi nhận được dữ liệu và không có lỗi, phía nhận phải báo lại cho phía
truyền biết

Để thực hiện các chức năng đó , một quá trình truyền dữ liệu qua giao thức TCP
gồm có 3 giai đoạn

1. Thiết lập kế nối


2. Truyền dữ liệu
3. Giải tỏa kết nối
Nghi thức thiết lập kết nối của TCP qua TCP state machine
Quá trình thông thường diễn ra như sau
1) Cả hai (client và server) đều băt đầu trạng thái close, không tồn tại một
kết nối nào
2) Khi server mở một Port TCP để đợi một client thiết lập kết nối, nó
chuyển sang trạng thái “ Listen”
3) Khi client gửi bản tin SYN (bước số 1 trong ví dụ minh họa, giai đoạn
thiết lập kết nối), nó chuyển sang trạng thái “SYN sent”
4) Khi server nhận được bản tin SYN từ client và gửi lại một bản tin SYN
(bước 2 trong hình minh họa) , nó chuyển sang trạng thái “SYN
Received”
5) Lúc này client gửi lại bản tin xác nhận ACK (bước 3 trong VD), nó
chuyển sang trạng thái thiết lập kết nối “ Establish”
6) Server nhận được bản tin ACK trên từ client, nó cũng chuyển sang
trạng thái “Establish”
7) Sau đó 2 bên tiến hành truyền dữ liệu, trạng thái 2 bên lúc này đều là
“Establish”
8) Khi một trong 2 phía truyền xong dữ liệu, đến đây vai trò 2 bên là như
nhau. Ta giả sử client truyền xong dữ liệu trước , nó sẽ gửi bản tin FIN,
và chuyển sang trạng thái “FIN wait 1”
9) Phái server nhận được bản tin này, gửi đáp trả lại ACK, và chuyển sang
trạng thái “close wait”
10) Client nhận được bản tin ACK này, nó chuyển sang trạng thái “FIN
wait 2”
11) Đến lúc này, server có thể truyền dữ liệu và client tiếp tục nhận dữ liệu
12) Đến khi nào server cũng gửi hết dữ liệu, nó sẽ gửi đi bản tin FIN, và
chuyển sang trạng thái “LAST ACK”
13) Khi client nhân được, nó gửi lại bản tin ACK, và chuyển sang trạng
thái “time wait”, sau đó chờ một khoảng thời gian timeout rồi đóng kết
nối, trở lại trạng thái “close”
14) Khi server nhận được nó chuyển sang trạng thái “close” luôn
2.2.b GIỚI THIỆU VỀ MODULE ETHERNET TRONG MCU
 Bộ điều khiển của các dòng stellaris nói chung và MCU LM328962 nói riêng
được tích hợp bộ giao tiếp MAC (lơp 2) và PHY (lớp 2) của mô hình OSI. Bộ
điều khiển này tuân theo chuẩn IEEE 802.3. và hỗ trợ đầy đủ chuẩn 10BASE-
T và 100BASE-TX
Có các đặc trưng sau
 Hoạt động đa mode
 Song công hoặc bán song công: ở tốc độ 100Mbqs
 Song công hoặc bán song công: ở tốc độ 10Mbqs
 Chế độ Power-saving(tiết kiệm năng lượng) và Power-down
 Cấu hình cao như
 Lập trình được cho địa chỉ MAC
 Bộ điều khiển kiểm tra lỗi CRC
 Người dùng cấu hình cho ngắt
 Điều khiển truyền thông vật lý
 Tự động điều chỉnh MDI/MDI-X
 Lập trình được biên độ truyền tải
 Tự động phân cực đúng và tiếp nhận tín hiệu 10BASE-T
 Sơ đồ khối
CPU sẽ truy cập bộ điều khiển Ethernet thông qua lớp MAC. Lớp MAC sẽ
cung cấp việc xử lý truyền hay nhận đối với khung Ethernet. Hơn nữa lớp
MAC sẽ giao tiếp với lớp PHY thông qua MII ( Media Independent Interface)
nội (về MII có phần phụ lục)

sơ đồ dưới đây trình bày chi tiết về cấu trúc nội của bộ điều khiển Ethernet và làm
thế nào để thiết lập các thanh ghi với các hàm chức năng
 Bản đồ thanh ghi trong Ethernet Blocking (Ethernet Map)

You might also like