I am using python 2.7 and networkx.
I have a quite large network and I need to find all the paths (not only the shortest path) between an origin and destination. Since my network is large, I would like to speed up with some constraints, such as path length, cost, etc.. 
I am using networkx. I don't want to use all_simple_paths because with all_simple_paths, I have to filter all the paths later based on path length (number of nodes in it) or cost of the path (based on arc costs). Filtering all the paths is very expensive for the large network. 
I would really appreciate any help.
It really depends what paths you are looking for. 
To begin with, the shortest path gives you the lowest bound c_min on the length constraint. Then given a length constraint c>=c_min, for each node n, you know the shortest path P_s_n and distance c_n from start to this node. Choose those nodes that satisfy c_n <c. Then you can extend P_s_n arbitrarily by any path from n to goal, which will satisfy your length constraint.
Find all paths between origin destination with path length constraint