A large part of the use of the terms frame, packet and PDU is semantics and the technology. The terms frame, packet, segment, datagrams and Protocol Data Units are not interchangeable though most people often use them that way. This tutorial tries to highlight the differences between them.
The term frame is most frequently used to describe a chunk of data created by network communication hardware such as a network interface cards (NIC cards) and router interfaces. Switch ports primarilly forward existing frames and don't usually create frames of their own (unless they are participating in Spanning Tree or dynamic VLANs etc.).
Types of Frames
There are ethernet frames, token ring frames, FDDI frames etc. A frame is simply a chunk of data with a pattern of bits at the start and possibly bits at the end. The bits at the start and end of the frame are often referred to as frame delimiters. Frames are created by hardware protocols that do not have separate control circuits in the physical media to which they are attached.
Contents of Frames
Frames contain frame delimiters, hardware addresses, such as the source and destination MAC addresses, and data encapsulated from a higher layer protocol.
The Request For Comments (RFC) documents frequently use the term packet to mean a stream of binary octets of data of some arbitrary length. It is typically used to describe chunks of data created by software, not by hardware. Internet Protocol (IP) creates packets. This term is NOT synonymous with the term frame even though many people make that mistake. Information that has been broken into packets is sometimes described as packetized.
Types of Packets
Internet Protocol is often described as transmitting packets.
Contents of Packets
Packets contain logical addressing information, such as an IP address, and data.
The term segment is most often used to refer to a chunk of data that has been prepared for transmission by Transmission Control Protocol (TCP). The term segment is used most often in the Request For Comments (RFC) documents that describe the TCP protocol because TCP is said to chop a 'data stream' into segments.
Types of Segments
Transmission Control Protocol is described as transmitting segments.
Contents of Segments
Segments contain logical addressing information, such as an IP address, logical connection identifiers, such as port numbers, and data that came from a computer application. TCP guarantees delivery of the segments.
Types of Datagrams
User Datagram Protocol is described as transmitting datagrams.
Contents of Datagrams
Datagrams contain logical addressing information, such as an IP address, logical connection identifiers, such as port numbers, and data that came from a computer application. The UDP protocol does not guarantee delivery of the datagrams.
A protocol data unit is a term used in much of the documentation and educational literature for networking technologies. It simply means a chunk of data created and/or labled by a particular protocol. TCP, UDP, IP, OSPF and RIP (and other protocols) could be said to create "protocol data units". The term is somewhat synonymous with packet or frame, especially when used in the process of discussing routing protocols or spanning tree.