ICMP is a maintenance protocol specified in RFC792 and is normally considered to be part of the IP layer. ICMP messages are encapsulated within IP datagrams, so they may be routed throughout an internetwork. ICMP is used by Windows NT to:
Something that connects two separate entities.
For example, a user interface is the part of a program that connects the computer with a human operator (user).
There are also interfaces to connect programs, to connect devices, and
to connect programs to devices.
IGMP Internet Group Management Protocol
IGMP is the protocol used to manage IP multicasting
IP multicasting is the transmission of an IP datagram to a "host group", a set of zero or more hosts identified by a single IP destination address. A multicast datagram is delivered to all members of its destination host group with the same "best-efforts" reliability as regular unicast IP datagrams, i.e., the datagram is not guaranteed to arrive intact at all members of the destination group or in the same order relative to other datagrams.
The membership of a host group is dynamic; that is, hosts may join and leave groups at any time. There is no restriction on the location or number of members in a host group. A host may be a member of more than one group at a time. A host need not be a member of a group to send datagrams to it.
A host group may be permanent or transient. A permanent group has a well-known, administratively assigned IP address. It is the address, not the membership of the group, that is permanent; at any time a permanent group may have any number of members, even zero. Those IP multicast addresses that are not reserved for permanent groups are available for dynamic assignment to transient groups that exist only as long as they have members.
Internetwork forwarding of IP multicast datagrams is handled by "multicast routers" that may be co-resident with, or separate from, Internet gateways. A host transmits an IP multicast datagram as a local network multicast that reaches all immediately-neighboring members of the destination host group. If the datagram has an IP time-to-live greater than 1, the multicast router(s) attached to the local network take responsibility for forwarding it towards all other networks that have members of the destination group. On those other member networks that are reachable within the IP time-to-live, an attached multicast router completes delivery by transmitting the datagram as a local multicast.
IP is the "mailroom" of the TCP/IP stack, where packet
sorting and delivery takes place. At this layer, each incoming or outgoing
packet is referred to as a datagram. Each IP datagram bears the source
IP address of the sender and the destination IP address of the intended
recipient.
Unlike the MAC addresses, the IP addresses in a datagram remain the
same throughout a packet's journey across an internetwork.
Routing is the primary function
of IP.
IP Multicasting
IP multicasting is used to provide efficient multicast
services to clients that may not be located on the same network segment.
Windows Sockets applications can join a multicast group in order to participate
in a wide-area conference, for instance.
IGMP is the protocol used to manage IP multicasting.
To support IP multicasting, an additional route is defined by the system. The route (added by default) specifies that if a datagram is being sent to a multicast host group, it should be sent to the IP address of the host group via the local interface card, not forwarded to the default gateway. The following route illustrates this:
Network Address Netmask
Gateway Address Interface
Metric
224.0.0.0
224.0.0.0 10.57.9.138
10.57.9.138 1
Host group addresses are easily identified, as they are from the class
D range, 224.0.0.0 to 239.255.255.255. These IP addresses all have "1110"
as their high-order 4 bits.
To send a packet to a host group using the local interface, the IP
address must be resolved to a MAC address.
From RFC1112:
An IP host group address is mapped to an Ethernet
multicast address by placing the low-order 23-bits of the IP address into
the low-order 23 bits of the Ethernet multicast address 01-00-5E-00-00-00
(hex). Because there are 28 significant bits in an IP host group address,
more than one host group address may map to the same Ethernet multicast
address.
For instance, a datagram addressed to the multicast
address 225.0.0.5 would be sent to the (Ethernet) MAC address 01-00-5E-00-00-05.
This MAC address is formed by the junction of 01-00-5E and the 23 low-order
bits of 225.0.0.5 (00-00-05). Since more than one host group address might
map to the same Ethernet multicast address, the NIC may indicate up some
multicasts for a host group for which no local applications have registered
interest. These extra multicasts are discarded. Finally, the protocol stack
must provide a means of joining and leaving host groups.
Multicast Extensions to Windows Sockets
Internet Protocol multicasting is currently supported only on AF_INET sockets of type SOCK_DGRAM. By default, IP multicast datagrams are sent with a time-to-live (TTL) of 1. The setsockopt() call can be used by an application to specify a TTL. By convention, multicast routers use TTL thresholds to determine how far to forward datagrams. These TTL thresholds are defined as follows:
multicast datagrams with initial TTL 0 are restricted to the same host.
multicast datagrams with initial TTL 1 are restricted to the same subnet.
multicast datagrams with initial TTL 32 are restricted to the same
site.
multicast datagrams with initial TTL 64 are restricted to the same
region.
multicast datagrams with initial TTL 128 are restricted to the same
continent.
multicast datagrams with initial TTL 255 are unrestricted in scope.
IPC InterProcess Communication
The connection between the client and server portions of ditributed applications must allow data to flow in both directions. NT provides seven different IPC mechanisms:
IPCONFIG
Comando de diagnóstico de la configuración IP
It is a command-line utility that prints out the TCP/IP-related configuration of a host. When used with the /all switch, it produces a detailed configuration report for all interfaces, including any configured serial ports (RAS).