1 | initial version |
1) An IPv4 packet is a packet using the Internet Protocol, Version 4. There are also IPv6 packets, which are packets using the Internet Protocol, Version 6. Most network traffic now uses one of those two protocols, with other protocols such as the Transmission Control Protocol and the User Datagram Protocol running on top of IPv4 or IPv6.
The purpose of an IPv4 packet is to transmit data between two hosts over a network that supports IPv4. IPv4 packets may have been used, for example, to transmit the contents of ask.wireshark.org's home page to you, and to transmit the data for the question you asked back to ask.wireshark.org so that it can post the question. If IPv4 packets weren't used, IPv6 packets were used instead.
For those IPv4 or IPv6 packets, the protocol running atop IPv4 or IPv6 was TCP, and the protocol running atop TCP was either HTTP or, more likely, the Transport Layer Security (TLS) protocol, with HTTP running atop the TLS protocol.
2) An ICMP packet is a packet using the Internet Control Message Protocol. ICMP runs atop IPv4, just as TCP and UDP can, and is used for "control" messages, such as error messages caused by problems delivering IPv4 packets. The Internet Control Message Protocol for the Internet Protocol Version 6 runs atop IPv6, just as TCP and UDP can, and is used for "control" messages, such as error messages caused by problems delivering IPv6 packets.
3) No packets are "malformed by default"; they're not "correctly formed by default", either. Whether they're correctly formed or malformed mainly depends on the software that constructed them; correct software produces correctly formed packets, incorrect software produces malformed packets. A correctly formed packet can, however, be damaged in the process of transporting it to a host that receives it, turning it into a malformed packet.