Frame Ethernet

Một packet data (gói dữ liệu) trên một link Ethernet được gọi là một packet Ethernet. Frame Ethernet là payload (phần tải mang theo) do packet này vận chuyển.
Một frame Ethernet có một preamble và một start frame delimiter (SFD) đi đầu, cả hai đều là một phần của packet Ethernet ở tầng vật lý. Mỗi frame Ethernet bắt đầu bởi một header Ethernet. Header này chứa địa chỉ MAC nguồn và đích ở hai trường đầu tiên. Phần ở giữa frame là data payload chứa các header bất kì của các protocol khác (ví dụ, Internet Protocol) được mang trong frame này. Frame kết thúc bởi một frame check sequence (FCS, chuỗi kiểm tra frame). Đây là một cyclic redundancy check 32 bit được dùng để phát hiện bất kì hư hỏng dữ liệu nào trong lúc truyền.

Header

Header gồm có địa chỉ MAC nguồn và đích (mỗi địa chỉ dài 6 octet), trường EtherType và một tag IEEE 802.1Q tùy chọn.
Trường EtherType dài hai octet và có thể dùng cho nhiều mục đích khác nhau. Giá trị nhỏ hơn hoặc bằng 1500 có nghĩa là nó được dùng để chỉ kích thước của payload bằng octet, còn giá trị lớn hơn hoặc bằng 1536 có nghĩa là nó được dùng để chỉ kiểu EtherType, xác định procol nào được đóng gói trong payload của frame. Khi được dùng với tư cách là EtherType, chiều dài của frame được xác định bởi vị trí của interpacket gap và frame check sequence (FCS) hợp lệ.
Tag IEEE 802.1Q, nếu có, là một trường dài 4-octet chỉ thành viên mạng virtual LAN (VLAN) và quyền ưu tiên IEEE 802.1p.

Payload

Payload minimum là 42 octet khi có một tag 802.1Q và 46 octet khi không có tag. Payload maximum là 1500 octet. Các jumbo frame (frame ngoại cỡ) phi tiêu chuẩn cho phép kích thước payload lớn hơn kích thước maximum.

Frame check sequence

Frame check sequence (FCS, chuỗi kiểm tra frame) là một cyclic redundancy check (CRC) dài 4 octet cho phép phát hiện dữ liệu bị hỏng bên trong toàn bộ frame khi nhận ở phía receiver. Giá trị FCS được tính như một hàm số của các trường frame MAC được bảo vệ: địa chỉ nguồn, địa chỉ đích, trường độ dài/kiểu, dữ liệu client MAC và padding (có nghĩa là, tất cả các trường trừ FCS).
Chạy thuật toán CRC trên dữ liệu frame đã nhận được bao gồm mã CRC sẽ luôn có kết quả là một giá trị 0 nếu như dữ liệu nhận được không có lỗi, bởi vì CRC là số dư của dữ liệu chia bởi đa thức. Tuy nhiên, kĩ thuật này có thể có kết quả là các "false negative" (phủ định sai), trong đó dữ liệu với các trailing zero cũng sẽ có kết quả trong số dư cùng zero. Để tránh trường hợp này, FCS được complement (bổ sung) (dự trữ cho mỗi bit) bởi sender trước khi nó gắn vào đuôi của dữ liệu payload. Nếu làm theo cách này thì thuật toán sẽ luôn luôn có kết quả là một magic number (số huyền bí) hoặc CRC32 residue của 0xC704DD7B khi dữ liệu được nhận một cách chính xác. Điều này cho phép nhận frame và xác nhận FCS mà không cần biết trường FCS thực sự bắt đầu ở đâu.

End of frame – tầng vật lý

End of a frame (kết thúc frame) thường được biểu thị bằng một symbol (kí hiệu) end-of-data-stream ở tầng vật lý hoặc bởi sự mất mát của tín hiệu mang (carrier signal); một ví dụ là 10BASE-T, trong đó station nhận phát hiện được kết thúc của một frame đã gửi. Sau đó tầng vật lý sử dụng một symbol end of data rõ ràng hoặc một symbol/chuỗi end of stream để tránh sự mơ hồ về nghĩa, đặc biệt khi carrier được gửi liên tục giữa các frame; một ví dụ là Gigabit Ethernet với sơ đồ mã (encoding scheme) 8b/10b, các sơ đồ này sử dụng các symbol đặc biệt được truyền đi trước và sau khi một frame được truyền.

Interpacket gap – tầng vật lý

Interpacket gap là khoảng thời gian nhàn rỗi giữa hai packet. Sau khi một packet đã được gửi đi, các transmitter cần phải truyền ít nhất 96 bit (12 octet) của idle line state (trạng thái dây rảnh) trước khi truyền packet tiếp theo.

Ethernet II

Ethernet II framing (còn được gọi là DIX Ethernet, đặt theo tên của DEC, Intel và Xerox, những công ty chủ chốt tham gia quá trình thiết kế nó), định nghĩa trường EtherType dài hai octet trong một frame Ethernet, đứng trước các địa chỉ MAC đích và nguồn, định nghĩa một upper layer protocol (giao thức tầng trên) đóng gói dữ liệu của frame. Ví dụ, giá trị EtherType 0x0800 báo hiệu frame chứa một datagram IPv4. Tương tự, giá trị EtherType 0x0806 biểu thị một frame ARP, 0x8100 biểu thị một frame IEEE 802.1Q và 0x86DD biểu thị một frame IPv6.
Khi tiêu chuẩn được phát triển trong công nghiệp này thông qua quá trình tiêu chuẩn hóa chính thức của IEEE, trường EtherType bị đổi thành một trường chiều dài (dữ liệu) trong tiêu chuẩn 802.3 mới. Vì bên nhận vẫn cần biết cách thuyết giải frame, tiêu chuẩn yêu cầu một header IEEE 802.2 để theo dõi chiều dài và xác định kiểu. Nhiều năm sau đó, tiêu chuẩn 802.3x-1997, và các phiên bản sau đó của tiêu chuẩn 802.3, chính thức phê chuẩn cả hai kiểu framing. Trong thực tế, cả hai định dạng đều được sử dụng rộng rãi, với Ethernet framing nguyên thủy là thông dụng nhất trong các mạng local area network Ethernet, nhờ sự đơn giản và overhead thấp hơn.
Để một số frame sử dụng framing Ethernet v2 và một số frame sử dụng phiên bản nguyên thủy của framing 802.3 được phép sử dụng trong cùng segment Ethernet, các giá trị EtherType phải lớn hơn hoặc bằng 1536 (0x0600). Giá trị đó được chọn bởi vì độ dài lớn nhất của trường payload của một frame Ethernet 802.3 là 1500 octet (0x05DC). Vì vậy, nếu giá trị của trường lớn hơn hoặc bằng 1536, frame sẽ là một frame Ethernet v2, với trường đó là một trường kiểu. Nếu nó nhỏ hơn hoặc bằng 1500, nó sẽ là một frame IEEE 802.3, với trường đó là một trường độ dài. Các giá trị từ 1500 đến 1536 không được định nghĩa. Quy ước này cho phép phần mềm xác định khi nào thì một frame là frame Ethernet II hoặc là một frame IEEE 802.3, cho phép cùng tồn tại cả hai tiêu chuẩn trên cùng một medium vật lý.

IEEE 802.3 thô của công ty Novell

Định dạng frame 802.3 "thô" của công ty Novell dựa trên công trình IEEE 802.3 ban đầu. Novell đã dùng cái này như một điểm bắt đầu để tạo ra implementation đầu tiên của IPX Network Protocol over Ethernet của chính họ. Họ không dùng bất kì header LLC nào nhưng đã khởi đầu packet IPX trực tiếp sau trường độ dài. Điều này không tương thích với tiêu chuẩn IEEE 802.3, nhưng vì IPX luôn có FF là hai octet đầu tiên (trong khi trong IEEE 802.2 LLC pattern đó có thể về mặt lí thuyết nhưng gần như không có khả năng), trong thực tiễn điều này thường cùng tồn tại trên dây với các implementation Ethernet khác, với ngoại lệ nổi bật là một số dạng ban đầu của DECnet có thể gây nhầm lẫn.
Novell NetWare đã sử dụng loại frame này mặc định cho đến giữa thập niên 1990, và vì NetWare lúc đó rất phổ biến, trong khi IP thì không, tại một thời điểm nào đó, phần lớn Ethernet traffic của thế giới chạy trên 802.3 "thô" mang IPX. Từ NetWare 4.10, NetWare mặc định đến IEEE 802.2 với LLC (NetWare Frame Type Ethernet_802.2) khi dùngIPX.

Frame runt

Một frame runt là một frame Ethernet có chiều dài ngắn hơn chiều dài minimum 64 octet của chuẩn IEEE 802.3. Các frame runt thường do xung đột; các nguyên nhân khác có thể là card mạng bị hỏng, tràn bộ đệm hoặc lỗi phần mềm.