Internet Assigned Numbers Authority
As the Internet evolved, there was a need for a centralized organization which would fulfill the followings tasks/needs:
- To take responsibility for managing parameters
- To make sure that everyone uses the same protocols and parameters
- To coordinate the assignment of identifiers
- To ensure that the creation and allocation of addresses and domain names is done accurately, based on principles which are acceptable for everyone.
The organization which was responsible for these tasks/needs is IANA. Due to the Internet growth during the 1990's there was also the need for an organization that would take responsibility over the central registration of domain names and addresses. This is how ICANN (Internet Corporation for Assigned Names and Numbers) was created. 
ICANN is responsible for the centralization of registration tasks related to IP addresses, DNS assignment and protocol parameters management, but ICANN does not replace IANA. There are many differences between ICANN and IANA, especially regarding their attributions, objectives and responsibilities.
IANA vs ICANN
- IANA is the institution which runs TLDs (Top-Level Domains) and deals with the assignment of IP addresses and ranges, ports, and other related attributes.
- Besides managing the DNS root zone, IANA also manages the .int registry, and the .arpa zone;
- Regarding number resources, IANA is entitled to coordinate the global IP respectively AS number space, allocating these to RIRs (Regional Internet Registries);
- IANA represents the main repository for number registries and protocol names. 
In order to enable and better manage the allocation of Internationalized Domain Names (IDNs), IANA developed "IDN tables" which supply information related to admitted characters in different languages and other TLD related information. 
IANA is responsible for the delegation of IP Addresses to RIRs. In their turn, each RIR (Regional Internet Registry) is responsible for the allocation of IP addresses depending on the zone/area they are managing. In the same way, when a RIR requests for more IP Addresses for allocation, IANA evaluates the request and is able to make an additional allocation for RIR. 
Originally, the IANA functions is managed by Dr. Jon Postel under a contract with DARPA. He was responsible in coordinating and allocating blocks of Internet Protocol Addresses to the Regional Internet Registries (RIR). On February 9, 2000, the Department of Commerce (DOC) awarded the contract to manage IANA functions to ICANN.