RARP Reverse Address Resolution Protocol (RARP) is a network protocol used to resolve a data link layer address to the corresponding network layer address. For example, RARP is used to resolve an Ethernet MAC address to an IP address.
A network administrator creates a table in a local area network's gateway router that maps the physical machine (or Media Access Control - MAC address) addresses to corresponding Internet Protocol addresses (IP address). When a new machine is set up, its RARP client program requests from the RARP server on the router to be sent its IP address. Assuming that an entry has been set up in the router table, the RARP server will return the IP address to the machine which can store it for future use.
Open Shortest Path First (OSPF) is a routing protocol developed for Internet Protocol (IP) networks by the Interior Gateway Protocol (IGP) working group of the Internet Engineering Task Force (IETF). The working group was formed in 1988 to design an IGP based on the Shortest Path First (SPF) algorithm for use in the Internet. Similar to the Interior Gateway Routing Protocol (IGRP), OSPF was created because in the mid-1980s, the Routing Information Protocol (RIP) was increasingly incapable of serving large, heterogeneous internetworks. This chapter examines the OSPF routing environment, underlying routing algorithm, and general protocol components.
Advantages of OSPF
Changes in an OSPF network are propagated quickly.
OSPF is a Link State Algorithm.
OSPF supports Variable Length Subnet Masks (VLSM).
OSPF uses multicasting within areas.
After initialization, OSPF only sends updates on routing table sections
which have changed, it does not send the entire routing table.
Using areas, OSPF networks can be logically segmented to decrease
the size of routing tables. Table size can be further reduced by using
route summarization.
OSPF is an open standard, not related to any particular vendor.
TCP connection establishment / termination
TCP is a connection-oriented protocol. Before either end can send
data to the other, a connection must be established between them.
The establishment of a TCP connection takes place with the usage of a 3 way handshaking protocol:
The initiator of the session sends a segment with the SYN flag set
to the recipient.
Upon receipt of the segment, the recipient sends a SYN segment to
the initiator with the ACK number set to the sequence number + 1,
and sets new sequence number for its own end.
The initiator then sends an ACK of its own in response to the recipient's
SYN, with the ACK number set to the recipeint's sequence number +
1.

TCP connection termination
TCP is a full duplex protocol, i.e. data can be sent in both directions
independently. Therefore, to fully close the connection, it has to
be terminated in both directions. If one end of the connection sends
segment with the FIN flag set, it means that that end has got no more
data to send. However, this end can still receive data from the other
end until the other end has explicitly closed its end of the connection.
This is known as a half-close.
The full termination of a TCP connection takes place with the usage
of a 4 way handshake:
The initiator of the close sends a FIN segment to the recipient.
The recipient sends an ACK of the FIN segment.
The recipient sends a FIN segment of its own to the initiator.
The initiator responds with an ACK to that FIN segment.

ICMP
Internet control message protocol is part of the Internet protocol
suite as defined in RFC 792. ICMP messages are typically generated
in response to errors in IP datagrams or for diagnostic or routing
purposes.
Some of ICMP's functions are to:
Announce network errors, such as a host or entire portion of the network
being unreachable, due to some type of failure. A TCP or UDP packet
directed at a port number with no receiver attached is also reported
via ICMP.
Announce network congestion. When a router begins buffering too many packets, due to an inability to transmit them as fast as they are being received, it will generate ICMP Source Quench messages. Directed at the sender, these messages should cause the rate of packet transmission to be slowed. Of course, generating too many Source Quench messages would cause even more network congestion, so they are used sparingly.
Assist Troubleshooting. ICMP supports an Echo function, which just sends a packet on a round--trip between two hosts. Ping, a common network management tool, is based on this feature. Ping will transmit a series of packets, measuring average round--trip times and computing loss percentages.

