Hulk, most network technologies support variable length packets/frames/PDUs/whatever. There is one exception I know of, the ever-retarded technology ATM, which decided that every cell shall be 53 bytes long, requiring an ugly adaptation to provide variable-length packet service on top of that. So how many bits (or bytes) is in a packet is normally a variable thing and not a simple one-number answer.
IP packets in the wild statistically spike at around 24 bytes (IP header + TCP header = pure TCP ACK), 576 bytes (minimum reassembly buffer size also often mistaken as the minimum MTU), and 1500 bytes (standard Ethernet MTU). Lesser spikes are seen at somewhere in the 40s for DNS, and 4096 & 4352? for the HPC guys.
Depending on your L2 technology, add some overhead. Standard Ethernet adds a 14 byte header to an IP packet, but there is also sometimes VLAN tagged framing adding yet another 4. PPP I believe adds 2 bytes normally, but there are a whole lot of different things PPP can do and some modes add more.