protected void init(int inProtocolStackLayers){
            On = true;
            timerTable.clear();
            if(inProtocolStackLayers != 1){
                //This test the current simulation object for the type of protocol that is being used and then
                //Creates a protocolstack of that type.
                if(Simulation.getProtocolType() == core.ProtocolStack.TCP_IP){
                    NodeProtocolStack = new core.protocolsuite.tcp_ip.ProtocolStack(this,inProtocolStackLayers);
                    startTimerTask(NodeProtocolStack.OSPF(), OSPF.TIMEOUT);
                }else if(Simulation.getProtocolType() == core.ProtocolStack.APPLETALK){
                //NodeProtocolStack = new core.protocolsuite.appletalk.ProtocolStack(this);		//Not implemented
                }else if(Simulation.getProtocolType() == core.ProtocolStack.IBM_SNA){
                //NodeProtocolStack = new core.protocolsuite.ibm_sna.ProtocolStack(this);		//Not implemented
                }else if(Simulation.getProtocolType() == core.ProtocolStack.IPX_SPX){
                //NodeProtocolStack = new core.protocolsuite.ipx_spx.ProtocolStack(this);		//Not implemented
            }	
            }else{
                NodeProtocolStack = null;	//Set layer 1 devices protocolstack to null
            }
        }