ICMP and IGMP are located above IP, and needs to get to the next traffic level, but functionally are network layer protocols, and therefore cannot be fit into the OSI model.
The network IP Protocol may contain code that indicates what Protocol the next level you need to use to extract data from a package. This number is the unique IP Protocol number. ICMP and IGMP are numbered, respectively, 1 and 2.
This level includes: DVMRP, ICMP, IGMP MARS PIM, RIP, RIP2, RSVP