Nik photo

Nik Sultana, PhD

Assistant Professor of Computer Science
Illinois Institute of Technology

Contact: nsultana1 at(symbol) iit dot edu  CV

I'm interested in building better (performance + flexibility + security) distributed systems, and I develop techniques for this using programming theory, formal logic, and systems engineering.

Summer Research opportunities

If you're an Illinois Tech student, check out my page on student projects related to my research, with info for Summer 2022. You can find out more about my research by browsing this homepage.

Bio: Before joining Illinois Tech I was a postdoc at the UPenn Distributed Systems Lab and at the Cambridge Systems Research Group where I worked on various research projects on computer systems. Up to my PhD I did theoretical research. For my PhD I developed a compiler-based approach to proof translation, and before that I worked on constructive proof search and the verification of refactorings using interactive theorem-proving. I did my undergrad at the University of Malta.


Recent


Research interests

Distributed systems, Programmable networking, Security (software and network), Automated reasoning, Formal methods.

If you're at Illinois Tech and interested in Computer Science research, do join the CS research mailing list.

Teaching


Students

At Illinois Tech I'm working with:
  • (CS597) Cyprien Gueyraud
  • (CS597) Luis Casarrubios Elez
  • (RA) Neil Dhote
  • (RA) Xue Zhang
  • (RA) Mohamad Dib Fares
  • (RA) Mohammad Firas Sada
  • (RES-MATCH) Rigden Atsatsan

Contact me if you want to pursue a PhD in Computer Science related to my research areas.

If you're already at Illinois Tech, I'm happy to discuss undergrad (CS49{1,7}) and MS (CS59{1,7}) projects. Also see my page on student projects.

Previously, at the University of Pennsylvania I worked with the following Research Assistants: Achala Rao, Zihao Jin (visiting from Tsinghua University), Anirudh Chelluri, Nishanth Prabhu, Shilpi Bose, Henry Zhu, Ke Zhong (visiting from Shanghai Jiao Tong University, now a PhD student at Penn), Zhaoyang Han, Ruijie Mao, Digvijaysinh Chauhan, Nishanth Shyamkumar, Shivani Burad, Zhilei Zheng, Garvit Khandelwal, Ritvik Sadana, Rakesh Nagda, Heena Nagda (from Georgia Tech), Stephen Carrasquillo, Junyong Zhao, Saket, Andrew Zhao, and Aishwarya Wesanekar.

And before that at the University of Cambridge I supervised Jonny Shipton's 2016 UROP (research internship) and the "Part II" (undergrad dissertation) projects of Thomas Le Feuvre, Radu Voroneanu (co-supervised with Lucas Dixon), Daniel Spencer (co-supervised with Richard Mortier), and Rupert Horlick (co-supervised with Richard Mortier).


Projects & System Releases


Flightplan (2020, on GitHub)
Decomposition & heterogeneous allocation of P4 programs to benefit SDN.

Emu (2017, on GitHub)
New standard library for creating high-performance network functions using HLS.


Flowdar (2019, on GitLab)
Understanding the flow of control, data, and resource-usage of software.

Pax (2016, on GitHub) and projects that build on top of it: TCPuny and Recap.
Abstractions for packet-processors written in high-level & managed languages.


DoSarray (2018, on GitHub)
Carrying out experiments involving Denial-of-Service (DoS) attacks and mitigations.

Motto (2016, on GitHub)
Compiler and reference runtime for the Flick system for application-level services.


Smaller systems:
  • Apache httpd Worker Union MPM (2019, GitLab)
  • TYM Datalog (2019, GitHub)
  • Caper (2019, GitLab)

Most of my work is released as open source. For other projects see my GitHub and GitLab.


Publications

These are indexed at DBLP and Google Scholar.

Recent work:


Videos (Demos/Talks)

LATTE'21 presentation
Position paper (talk @ LATTE'21)
Flightplan video
Flightplan (talk @ NSDI'21)
FDP video
FDP

Wharf (talk @ NetCompute'18)

Flightplan (talk @ ONF'18)

Emu (talk @ BCS AIPG seminar, 2017)