The main functions of the network layer are to enable the correct use of the MAC sublayer and provide a suitable interface for use by the next upper layer, namely the application layer. Its capabilities and structure are those typically associated to such network layers, including routing. The network layer's function is exactly as it sounds; It deals with network functions such as connecting, disconnecting, and setting up networks. It will add a network, allocate addresses, and add and remove certain devices. This layer makes use of star, mesh and tree topologies. It adds an interface to the application layer.