Faits :
A.
A._, ressortissant du Libéria, se trouve en détention provisoire depuis le 29 novembre 2015, sous la prévention d'infraction grave à la loi fédérale du 3 octobre 1951 sur les stupéfiants et les substances psychotropes (LStup; RS 812.121). Il a été interpellé, dans le cadre d'une opération policière destinée à démanteler un réseau de trafiquants de cocaïne, alors qu'il était en possession de 46,5 grammes de cocaïne pure, dissimulés dans son organisme. Il lui est en outre reproché d'avoir transporté et entreposé dans un appartement lausannois 10,07 grammes de cocaïne pure et d'avoir été actif dans la vente de produits stupéfiants.
Par ordonnance du 2 décembre 2015, le Tribunal des mesures de contrainte du canton de Vaud (Tmc) a ordonné la détention provisoire de l'intéressé pour une durée de trois mois. Par la suite, la détention provisoire a été régulièrement prolongée à plusieurs reprises.
Le 25 avril 2016, A._ a déposé une demande de disjonction de cause et un traitement de son cas en procédure simplifiée. Le 8 juin 2016, le Procureur a répondu oralement vouloir attendre la reddition du rapport final d'enquête avant de se déterminer à ce sujet.
Par ordonnance du 16 février 2017, le Tmc a rejeté la demande de libération formée par A._ le 10 février 2017. Le recours formé par l'intéressé contre cette décision a été écarté par arrêt du 16 mars 2017 de la Chambre des recours pénale du Tribunal cantonal du canton de Vaud (ci-après: le Tribunal cantonal). En substance, la cour cantonale a considéré que les charges étaient suffisantes, que le risque de fuite existait et que les principe de la proportionnalité et de la célérité étaient respectés.
Le 27 février 2017, le Ministère public a autorisé le prénommé à bénéficier du régime de l'exécution anticipée de peine.
B.
Agissant par la voie du recours en matière pénale, A._ demande principalement au Tribunal fédéral de réformer l'arrêt du 16 mars 2017 en ce sens que sa libération immédiate est ordonnée et que la violation du principe de la célérité est constatée dans l'instruction de l'affaire pénale dirigée contre lui et ce, depuis le 25 avril 2016. A titre subsidiaire, il sollicite sa libération au bénéfice de mesures de substitution (assignation à résidence que justice désignera; obligation de se présenter hebdomadairement au poste de police). Il conclut à titre plus subsidiaire au renvoi de la cause pour nouvelle décision au sens des considérants. Il requiert encore l'assistance judiciaire.
Le Tribunal cantonal renonce à se déterminer et se réfère à l'arrêt attaqué. Le Ministère public de l'arrondissement de Lausanne conclut au rejet du recours. Le recourant a répliqué par courrier du 3 mai 2017.
Considérant en droit :
1.
Le recours en matière pénale (art. 78 al. 1 LTF) est en principe ouvert contre une décision relative au maintien en détention provisoire au sens des art. 212 ss CPP. Si la demande de libération a été déposée alors que le recourant se trouvait en détention provisoire (le 10 février 2017), il se trouve actuellement en exécution anticipée de peine (cf. art. 236 CPP). Dans cette situation particulière, le prévenu conserve la possibilité de requérir en tout temps sa mise en liberté en vertu des art. 31 al. 4 Cst. et 5 § 4 CEDH (ATF 139 IV 191 consid. 4.1 p. 194) et la qualité pour recourir doit donc lui être reconnue (art. 81 al. 1 let. a et b ch. 1 LTF).
Pour le surplus, le recours est formé en temps utile (art. 100 al. 1 LTF) contre une décision rendue en dernière instance cantonale (art. 80 LTF) et les conclusions présentées sont recevables au regard de l'art. 107 al. 2 LTF. Il y a donc lieu d'entrer en matière.
2.
Dans un grief d'ordre formel qu'il convient d'examiner en premier lieu, le recourant reproche à l'instance précédente d'avoir omis arbitrairement plusieurs faits, susceptibles de démontrer la violation du principe de célérité.
Conformément à l'art. 105 al. 1 LTF, le Tribunal fédéral statue en principe sur la base des faits établis par l'autorité précédente. L'art. 105 al. 2 LTF lui permet cependant de rectifier ou compléter d'office les constatations de l'autorité précédente si les faits ont été établis de façon manifestement inexacte ou en violation du droit au sens de l'art. 95 LTF.
Le Tribunal cantonal mentionne, dans ses considérants "en droit", la demande de disjonction de cause et de traitement du cas en procédure simplifiée. Il n'expose toutefois pas la chronologie de ces demandes. Il omet de préciser qu'elles ont été déposées le 25 avril 2016, que le recourant a renouvelé ses demandes les 25 mai, 25 août et 7 octobre 2016, et que, le 8 juin 2016, le Procureur a répondu oralement vouloir attendre la reddition du rapport final d'enquête avant de se déterminer à ce sujet. Le recourant souligne aussi que le Procureur a indiqué, le 27 janvier 2017, vouloir renvoyer le prévenu en jugement dans un délai d'un mois à compter de ce jour, si les pourparlers n'aboutissaient pas. Le recourant met en évidence aussi que, par avis du 9 février 2017, le Procureur a informé les parties qu'il ne lui avait pas été possible de procéder aux auditions qui étaient encore nécessaires dans les délais qu'il souhaitait, soit au 15 février 2017, en raison d'un agenda surchargé. Conformément à l'art. 105 al. 2 LTF, le Tribunal fédéral a complété son état de fait en ce sens et tiendra compte de ces éléments dans l'examen du principe de la célérité (voir infra consid. 5).
Le recourant fait grief enfin au Tribunal cantonal de ne pas avoir mentionné les déclarations relatives au risque de fuite qu'il a effectuées lors de l'audience devant le Tmc. Vu le raisonnement qui suit (cf. infra consid. 3.2), un éventuel complément de l'état de fait litigieux ne permettrait pas de trancher différemment la question de l'existence d'un risque de fuite. Faute d'avoir une influence déterminante sur l'issue de la procédure, ce grief doit être écarté.
3.
Sur le fond, le recourant ne conteste pas l'existence de charges suffisantes à son encontre. Il met en cause cependant les risques de fuite et de récidive. Si de tels risques devaient toutefois être retenus, il requiert la mise en oeuvre de mesures de substitution au sens de l'art. 237 CPP.
3.1. La poursuite de la détention sous la forme de l'exécution anticipée de la peine présuppose l'existence d'un motif de détention provisoire particulier. Or, une mesure de détention préventive n'est compatible avec la liberté personnelle (art. 10 al. 2 Cst. et 5 CEDH) que si elle repose sur une base légale (art. 31 al. 1 et 36 al. 1 Cst.), soit en l'espèce l'art. 221 CPP. Elle doit en outre correspondre à un intérêt public et respecter le principe de la proportionnalité (art. 36 al. 2 et 3 Cst., 212 al. 3 CPP). Pour que tel soit le cas, la privation de liberté doit être justifiée par les besoins de l'instruction, un risque de fuite ou un danger de collusion ou de réitération (art. 221 al. 1 let. a, b et c CPP). Préalablement à ces conditions, il doit exister à l'égard de l'intéressé des charges suffisantes, soit de sérieux soupçons de culpabilité (art. 221 al. 1 CPP; art. 5 par. 1 let. c CEDH).
3.2. Selon la jurisprudence, le risque de fuite au sens de l'art. 221 al. 1 let. a CPP doit s'analyser en fonction d'un ensemble de critères tels que le caractère de l'intéressé, sa moralité, ses ressources, ses liens avec l'Etat qui le poursuit ainsi que ses contacts à l'étranger, qui font apparaître le risque de fuite non seulement possible, mais également probable (ATF 117 Ia 69 consid. 4a p. 70 et la jurisprudence citée). La gravité de l'infraction ne peut pas, à elle seule, justifier la prolongation de la détention, même si elle permet souvent de présumer un danger de fuite en raison de l'importance de la peine dont le prévenu est menacé (ATF 125 I 60 consid. 3a p. 62; 117 Ia 69 consid. 4a p. 70).
En l'espèce, le prévenu, ressortissant du Libéria, est en situation irrégulière en Suisse, pays dans lequel il n'a ni attache ni ressource. La cour cantonale a considéré que, dans ces circonstances, il était à craindre que le prévenu disparaisse dans la clandestinité pour échapper aux poursuites pénales dont il fait actuellement l'objet.
Ces éléments apparaissent suffisants pour retenir un risque concret de fuite. L'arrêt attaqué ne prête pas le flanc à la critique sur ce point. Le recourant se contente d'ailleurs d'affirmer qu'il envisagerait de regagner l'Etablissement vaudois d'accueil des migrants (EVAM) à sa sortie de prison et de faire appel aux organismes existants. Cette argumentation est insuffisante à faire admettre l'invraisemblance du risque de fuite, vu l'intensité de celui-ci. Il en va de même du fait qu'il se dit "guère effrayé par la sentence à intervenir et prêt à affronter ses juges", qu'il a fait preuve d'une large collaboration avec les autorités de poursuite pénale et qu'il n'a opposé aucune résistance lors de son arrestation.
3.3. L'affirmation d'un risque de fuite dispense d'examiner s'il existe aussi un danger de réitération, au sens de l'art. 221 al. 1 let. c CPP. Les griefs de violation du droit d'être entendu (art. 6 CEDH et 29 al. 2 Cst.) et de déni de justice (art. 5 § 1 et 6 § 1 CEDH, 29 al. 1 et 31 al. 4 Cst.) dont se prévaut le recourant à cet égard peuvent d'emblée être rejetés. En effet, le recourant se méprend lorsqu'il se réfère à l'arrêt 1B_26/2017: dans cette affaire, c'est parce que le risque de récidive ne pouvait être retenu que le Tribunal fédéral a renvoyé la cause à l'instance cantonale afin qu'elle examine le risque fuite.
3.4. Conformément au principe de la proportionnalité (art. 36 al. 3 Cst.), il convient d'examiner les possibilités de mettre en oeuvre d'autres solutions moins dommageables que la détention (règle de la nécessité). Cette exigence est concrétisée par l'art. 237 al. 1 CPP, qui prévoit que le tribunal compétent ordonne une ou plusieurs mesures moins sévères en lieu et place de la détention provisoire ou de la détention pour des motifs de sûreté si ces mesures permettent d'atteindre le même but que la détention. Selon l'art. 237 al. 2 CPP, font notamment partie des mesures de substitution l'obligation de se présenter régulièrement à un service administratif (let. d) et l'assignation à résidence (let. c).
En l'espèce, le recourant propose d'être assigné à résidence dans un lieu que la justice désignera. Il demande aussi à se présenter hebdomadairement au poste de police de son lieu de résidence et a conclu au prononcé de toute autre mesure de substitution fixée à dire de justice. Le Tribunal cantonal a estimé que l'assignation à résidence était irréalisable dès lors que le recourant n'avait pas de domicile connu en Suisse. Il a jugé que l'obligation de se présenter à un poste de police ne permettrait pas de prévenir le risque de fuite à l'étranger ou dans la clandestinité, mais tout au plus de constater l'un de ces événements. L'arrêt attaqué doit être confirmé sur ce point, les mesures de substitution proposées paraissant insuffisantes au regard de l'intensité du risque de fuite. Le recourant ne conteste d'ailleurs pas cette argumentation. Il se contente d'avancer qu' "avec l'écoulement du temps la gravité des charges pesant contre lui ne suffit plus". Cette motivation manque de pertinence, dans la mesure où la cour cantonale n'a pas pris en considération la gravité des charges retenues dans son analyse des mesures de substitution éventuelles.
4.
Le recourant s'en prend à la durée de la détention provisoire subie qu'il juge excessive et contraire au principe de la proportionnalité.
4.1. En vertu des art. 31 al. 3 Cst. et 5 par. 3 CEDH, toute personne qui est mise en détention préventive a le droit d'être jugée dans un délai raisonnable ou d'être libérée pendant la procédure pénale.
Une durée excessive de la détention constitue une limitation disproportionnée de ce droit fondamental, qui est notamment violé lorsque la durée de la détention préventive dépasse la durée probable de la peine privative de liberté à laquelle il faut s'attendre. L'art. 212 al. 3 CPP prévoit ainsi que la détention provisoire ou pour des motifs de sûreté ne doit pas durer plus longtemps que la peine privative de liberté prévisible. Le juge peut dès lors maintenir la détention préventive aussi longtemps qu'elle n'est pas très proche de la durée de la peine privative de liberté à laquelle il faut s'attendre concrètement en cas de condamnation (ATF 139 IV 270 consid. 3.1 p. 275 et les arrêts cités).
Afin d'éviter d'empiéter sur les compétences du juge du fond, le juge de la détention ne tient en principe pas compte de la possibilité éventuelle de l'octroi, par l'autorité de jugement, d'un sursis, d'un sursis partiel (ATF 139 IV 270 consid. 3.1 p. 275) ou d'une libération conditionnelle (arrêt 1B_82/2013 du 27 mars 2013 consid. 3.2 in Pra 2013 74 549).
4.2. En l'occurrence, la durée de la détention était de 16 mois en mars 2017, au moment de l'arrêt attaqué. Le recourant soutient que la quotité de la peine menace n'excéderait pas 18 mois, en se référant à trois affaires portant sur du trafic de cocaïne, jugées récemment dans le canton de Vaud. Toutefois, en raison des nombreux critères nécessaires pour fixer la peine (art. 47 CP), on peut difficilement tirer des conclusions absolues d'une telle comparaison. Le recourant passe en outre sous silence qu'il n'a pas seulement transporté de la cocaïne mais qu'il a aussi été actif dans la vente, ce qui ressort des écoutes téléphoniques recensées dans le rapport de police du 8 juin 2016. De plus, la quantité de cocaïne pure qui a pu lui être attribuée est de 56 grammes, ce qui représente trois fois la limite du cas grave au sens de l'art. 19 al. 2 let. a LStup (ATF 138 IV 100 consid. 3.2 p. 103).
En conséquence, la Chambre pénale de recours n'a pas violé le droit fédéral en jugeant que le principe de la proportionnalité demeurait respecté, ce d'autant moins que la détention subie n'excède pas le cadre légal de la peine menace applicable au cas d'espèce (un an au moins de peine privative de liberté [art. 19 al. 2 LStup] et vingt ans au plus [art. 40 al. 2 CP]), étant rappelé qu'il n'y a pas lieu de tenir compte de l'éventualité de l'octroi du sursis ou d'un sursis partiel.
5.
Le recourant fait enfin valoir une violation du principe de la célérité.
5.1. Concrétisant le principe de célérité, l'art. 5 CPP impose aux autorités pénales d'engager les procédures pénales sans délai et de les mener à terme sans retard injustifié (al. 1), la procédure devant être conduite en priorité lorsqu'un prévenu est placé en détention (al. 2).
L'incarcération peut être disproportionnée en cas de retard injustifié dans le cours de la procédure pénale (ATF 128 I 149 consid. 2.2.1 p. 151). Le caractère raisonnable de la durée d'une instruction s'apprécie selon les circonstances particulières de la cause, eu égard à la complexité de l'affaire, au comportement du requérant et des autorités compétentes, ainsi qu'à l'enjeu du litige pour le prévenu (ATF 130 I 269 consid. 3.1 p. 273; 124 I 139 consid. 2c p. 142). N'importe quel retard n'est pas suffisant pour justifier l'élargissement du prévenu. Il doit s'agir d'un manquement particulièrement grave, faisant au surplus apparaître que l'autorité de poursuite n'est plus en mesure de conduire la procédure à chef dans un délai raisonnable (ATF 137 IV 118 consid. 2.1 p. 120).
5.2. En l'occurrence, à l'instar de la cour cantonale, il peut être constaté que le Procureur a pris du temps avant de diligenter certaines mesures d'instruction; en revanche, une instruction de près d'un an et demi ne présente pas, en soi, une durée excessive pour une vaste opération dont le but est le démantèlement d'un réseau de trafiquants de cocaïne. Même si elle n'a pas de composante internationale, la présente affaire a nécessité des investigations approfondies (écoutes téléphoniques, analyse de la drogue,..) et peut ainsi être qualifiée de complexe, compte tenu également des nombreux prévenus impliqués - dont six ont pu être interpellés - et de l'ampleur de l'activité criminelle.
Par ailleurs, le Procureur explique avoir tenté de disjoindre le cas du recourant de manière à pouvoir le renvoyer en jugement plus rapidement. Il a aussi essayé de traiter l'affaire par procédure simplifiée. Les juges cantonaux ont considéré à bon droit qu'il ne pouvait être reproché au Ministère public d'avoir attendu les derniers rapports de police datés d'octobre 2016 et de janvier 2017 avant de pouvoir décider du sort de la demande de disjonction de cause et de traiter son cas en procédure simplifiée. Cette période d'inactivité n'est pas susceptible de contrevenir au principe de célérité, ce d'autant moins que le 8 juin 2016, le Procureur avait répondu oralement vouloir attendre la reddition du rapport final d'enquête avant de se déterminer sur les requêtes présentées par le recourant. Il est certes regrettable que le Procureur n'ait pas donné de réponse aux courriers du recourant des 25 août et 7 octobre 2016. Il ne s'agit cependant pas d'un manquement grave dans la conduite de la procédure pénale. Il en va de même du fait que le Procureur n'a pas informé le recourant à réception du rapport de police du 8 juin 2016, dans la mesure où le recourant a la possibilité de consulter le dossier conformément à l'art. 101 al. 1 CPP. Le Ministère public expose en outre, dans ses déterminations devant le Tribunal de céans, que la disjonction de la cause a été contestée par l'un des co-prévenus et annulée par le Tribunal cantonal. Quant au traitement de l'affaire en procédure simplifiée, la cour cantonale a retenu que ce traitement semblait avoir été rejeté par le Procureur général au début du mois de février 2017.
Cela étant, le recourant relève à bon droit que, le 27 janvier 2017, dans sa demande de prolongation de détention provisoire, le procureur avait annoncé que "si les pourparlers n'aboutissaient pas sur un accord dans les dix prochains jours, le Ministère public renverrait le prévenu devant le Tribunal en procédure contradictoire dans un délai d'un mois à compter de ce jour". Dans ses déterminations au Tmc du 14 février 2017, il a ensuite indiqué que le dossier serait mis en prochaine clôture dans les jours suivants et que le Tribunal serait saisi dans le courant du mois de mars 2017.
Les différentes échéances avancées n'ont cependant pas été respectées, alors que le recourant avait clairement mis en cause le respect du principe de la célérité et de la proportionnalité dans ses déterminations du 30 janvier 2017. De plus, le 9 février 2017, le Ministère public a différé les auditions qu'il avait prévu d'effectuer, en raison d'un agenda surchargé. En l'état, on ignore si et quand ces auditions auront lieu et si le Procureur entend encore mener des actes d'instruction. On ne sait pas non plus quand la clôture de l'instruction et la mise en accusation interviendront. Dans ses déterminations devant le Tribunal de céans, le Procureur ne l'indique pas.
5.3. En définitive, si l'on ne peut reprocher au Ministère public d'avoir attendu jusqu'en janvier 2017 la reddition des rapports de police, il s'agit de constater que l'enquête n'a pas progressé depuis. Il ne ressort par ailleurs pas du dossier que des opérations sont prévues et le Procureur ne donne aucune indication précise quant à la clôture de l'instruction et au renvoi en jugement. Dans ces conditions, il y a lieu de constater que le principe de la célérité était encore respecté le 16 mars 2017, au moment de l'arrêt attaqué. L'instance cantonale n'a donc pas violé le droit fédéral en écartant le grief de violation du principe de célérité. Afin d'échapper à l'avenir à toute critique, il incombera au Ministère public de faire à nouveau progresser l'enquête rapidement ou de la clore à bref délai.
6.
Il s'ensuit que le recours doit être rejeté.
Dès lors que le recourant est dans le besoin et que ses conclusions ne paraissaient pas d'emblée vouées à l'échec, l'assistance judiciaire doit lui être accordée (art. 64 al. 1 LTF). Le recourant requiert la désignation de Me Mathieu Genillod en qualité d'avocat d'office. Il y a lieu de faire droit à cette requête et de fixer d'office les honoraires de l'avocat, qui seront supportés par la caisse du Tribunal fédéral (art. 64 al. 2 LTF). Le recourant est en outre dispensé des frais judiciaires (art. 64 al. 1 LTF).
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté.
2.
La demande d'assistance judiciaire est admise. Me Mathieu Genillod est désigné comme avocat d'office du recourant et ses honoraires, supportés par la caisse du Tribunal fédéral, sont fixés à 1'500 francs.
3.
Il n'est pas perçu de frais judiciaires.
4.
Le présent arrêt est communiqué au mandataire du recourant, au Ministère public de l'arrondissement de Lausanne et au Tribunal cantonal du canton de Vaud, Chambre des recours pénale.
Lausanne, le 16 mai 2017
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président : Merkli
La Greffière : Tornay Schaller