|
|
About
About me
I have broad research interests that usually touch on systems and
software engineering. My current projects span distributed systems,
formal methods, modeling, tracing and analysis of program behavior. I
enjoy building and studying real software systems and tend to be
empirical in my research.
I started at UBC in the Summer of 2013. Before this I was working on
my PhD at the
University of Washington in Seattle. At UW I worked with
Tom
Anderson, Michael
Ernst,
and Arvind
Krishnamurthy on tools to infer models of complex systems from
logs of their behavior, networked testbeds, DHTs, and other fun topics.
Here are some recent(ish) recorded talks:
If you intend to apply for academic jobs in CS, you may want to see
my research
and teaching
statements.
This website overviews my academic self. You can also find my profiles
on
Google Scholar
and
DBLP.
|
Projects
Research projects
Recent areas of focus:
- Modeling/analysis/visualization of distributing/asynchronous systems
- Applications of formal methods in systems
- New data center designs (networking/resource disaggregation)
- Distributed and private multi-party machine learning
- Program analysis, specifically specification mining
- Physical insider attacks and defenses
Research projects sampler:
|
PGo: source to source compiler from PlusCal into Go lang.
PGo compiles PlusCal formal specifications into Go
implementations. PGo is designed to reduce the developer burden of
implementing a correct distributed system specification, and increases
developers' confidence in the correctness of their implementations.
|
|
Dinv:
distributed system state invariant detector. (Video!)
Distributed systems are difficult to debug and understand. One reasons
for this is distributed state, which is not easily accessible and must
be pieced together from the states of the individual
nodes. Dinv
statically analyzes the node source code to identify distributed state
variables and then instruments the system to record these variables at
runtime. After system execution Dinv uses dynamic analysis to
determine consistent distributed state snapshots and infers likely
distributed state invariants.
|
|
NetSolver: Scalable Virtual Data Center Allocation
NetSolver is an SMT-based
VDC allocation tool for multi-path VDC allocation with end-to-end
bandwidth guarantees. It scales to data centers with 1,000 or more
servers, and can make allocations quickly enough to be applied in
practice, while simultaneously improving data center utilization
relative to previous work.
|
|
TimeSquared:
multi-threaded callstack analysis. (Try it)
Helping developers understand complex multi-threaded systems by
capturing callstack/event information
(with DINAMITE) and
supporting exploration of the captured data through visualization.
|
|
Callback hell in JavaScript.
Callbacks are a popular language features in JavaScript. However, they
are also a source of comprehension and maintainability issues. The
example on the left illustrates nested, anonymous callbacks, as well
as asynchronous callback scheduling. Not much code, but so much
complexity! We carried out
a study of
callbacks across 138
applications, and are developing tools to help developers
manage callback hell in their
applications. Our analysis code from the study
is online.
|
|
ShiViz and TSViz:
Visualizing distributed/multi-threaded system logs.
(Try ShiViz,
Try TSViz)
Concurrent systems generate logs that are complex and unwieldy. ShiViz
helps developers understand distributed system logs through
visualization. ShiViz visualizes a distributed execution that has been
instrumented to record vector clock timestamps (e.g., with
distributed clock
instrumentation library). The visualizations are
simple-to-understand and interactive. The user can understand complex
system behavior by exploring the log through the visualization,
comparing executions side-by-side, searching for specific behavior (by
keyword and topology), and much more. TSViz, builds on ShiViz and
visualizes multi-threaded logs with vector clocks
and physical timestamps.
|
|
Repograms:
exploring and juxtaposing software repositories.
Repograms is a tool for visualizing the activity in a software
repositories (e.g., git). It uses a simple metaphor of multi-colored
blocks of varying sizes to encode different kinds of information about
the repository. For example, each unique committer could be assigned
to a color and the sequence of blocks can reveal who works when, and
how many commits each person makes.
|
|
Texada: general LTL specification mining.
(video)
Texada is a temporal specification mining tool for extracting
linear
temporal logic (LTL) specifications of arbitrary length and
complexity. Texada takes a user-defined LTL property type template and
a log of program traces as input and outputs a set of instantiations
of the property type (i.e., LTL formulas) that are true on the traces
in the log. Texada is envisioned as a specification mining engine on
top of which new software analyses can be developed.
|
|
Perfume:
Inferring performance models.
(Try it,
video)
Perfume summarizes a system's logged executions in a
performance-aware, behavioral model. Performance metrics present in
logs convey vital information about most systems, yet previous
model inference work ignores performance data. By leveraging this
information, Perfume generates more precise models, which can help
developers understand system behavior that depends on metrics like
execution time, network traffic, or energy consumption.
|
|
NetCheck:
Diagnosing networked applications from blackbox traces.
Networked applications can fail for many complex reasons having to do
with the network or misbehavior of a remote end-host. NetCheck uses
traces of syscalls calls made by the application and any end-hosts
that are pertinent to the application logic (e.g., the user's desktop,
an SMTP server, and a DHCP server). Using these traces NetCheck
reconstructs a plausible partial order of network communication
without any clock synchronization. It then uses a set of rules to
diagnose network issues that are apparent in the reconstructed network
behavior.
|
|
ShiVector:
Augmenting logs of distributed systems with partial ordering.
A major challenge in debugging distributed systems is analyzing
execution logs generated at multiple hosts. ShiVector transparently
adds vector timestamps to logs generated by a distributed
system. These vector-timestamped logs capture partial ordering
information, which can be used for further analysis and log
comprehension. ShiVector-augmented logs can be visualized with ShiViz.
|
|
Synoptic:
Inferring FSM models from logs of sequential executions.
Systems are often difficult to debug and to understand. A typical way
of gaining insight into system behavior is by inspecting execution
logs. Manual inspection of logs, however, is an arduous process. This
project helps this problem by designing Synoptic, a tool to produce
summary model of a system log. Two features distinguish
Synoptic from other tools. First, Synoptic's models preserve key
invariants mined from the log, making them more accurate. Second,
Synoptic uses refinement to derive the model, which is more
efficient than traditional coarsening algorithms.
|
|
CSight:
Inferring communicating FSM models of distributed systems.
CSight mines a communicating FSM model to represent the distributed
system that generated a set of logs. Like Synoptic, CSight mines
models that preserve temporal properties of the system. Engineers can
use the inferred models to understand complex behavior, detect
anomalies, debug, and increase confidence in the correctness of their
implementations.
|
|
InvariMint:
Declaratively specifying model inference algorithms.
InvariMint is an approach to express FSM model inference algorithms in
a common framework. The key idea is to encode properties of an
algorithms as finite state machines. These properties can then be
instantiated for a specific input log of observations and combined to
generate/infer a model that describes the observations. InvariMint (1)
leads to new fundamental insights and better understanding of existing
algorithms, (2) simplifies creation of new algorithms, including
hybrids that extend existing algorithms, and (3) makes it easy to
compare and contrast previously published algorithms.
|
(Show)
Older projects
|
Scatter: A scalable, consistent, data store
A DHT (Distributed Hash Table) is distributed key-value storage
system. Although DHTs have been thoroughly researched, they are in
dire need of applications. One of the reasons for this is their
typically abysmal performance, loose consistency and lack of
availability guarantees. This project aims to design and implement a
DHT that has strict data consistency guarantees. This project is an
evolution of prior work by the systems community on improving
performance of DHTs, and prior work by the theory of distributed
systems community on the efficiency of distributed consistency
algorithms such as Paxos and its variants.
|
|
Seattle: open peer-to-peer computing
Seattle is a platform for networking and distributed systems
research. It's free, community-driven, and offers a large deployment
of computers spread across the world. Seattle works by operating on
resources donated by users and institutions. The global distribution
of the Seattle network provides users the ability to use Seattle in
application contexts that include cloud computing, peer-to-peer
networking, ubiquitous/mobile computing, and distributed systems. It
has been used in educational settings for teaching networking and
distributed systems classes.
|
|
Social practices in Wikipedia
I am also interested in analysis of social networks. This includes
both quantitative analysis (e.g. member graph structures, activity
patterns) as well as qualitative analysis (e.g. intensive study of
activity samples, interviews). I am nourishing this interest by
studying Wikipedia's policy mechanism and the interactions between
wikipedia editors on discussion pages as they employ policies to
arrive at consensus and make progress in their work. Our more recent
work studies the span of valued work in Wikipedia by leveraging the
Wikipedia Barnstars practice in which tokens of appreciation are
exchanged between Wikipedia editors.
|
|
Mobile devices meet cloud computing
I spent six months (Summer and Fall of 2009) at MSR Asia in Beijing working
as an intern in the
Systems
Research group under the direction
of Lidong
Zhou. I worked on a few projects in the mobile space. My primary
project focused on designing and developing a platform called Sonora,
which allows mobile applications to take advantage of cloud
resources. I have also developed a simple system to demonstrate the
utility of reusing older mobile phones. As powerful mobile devices
have become ubiquitous and have high turn over rates, it is important
to find ways to extend mobile device lifetimes and find alternative
uses for older devices.
|
|
SatelliteLab: A heterogeneous network testbed
Over Summer 2007 I interned at the Max Planck Institute for Software
Systems in Germany and worked
with Krishna
Gummadi. I helped build SatelliteLab, which improves the
heterogeneity of existing internet testbeds (e.g. PlanetLab) by
including internet edge-nodes. Nodes in edge-networks
(e.g. residential networks) are typically unreliable, cover a wide
range of software and hardware configurations, and have widely varying
network connectivity. This heterogeneity is especially important for
accurate testing of distributed system prototypes. Today such
prototypes are developed in highly homogeneous testbed environments
that hinder their readiness for realistic deployment. SatelliteLab
makes it easier to evaluate, debug, and explain the observed
performance of distributed systems in the wild.
|
(Show)
Even older projects
VFER
VFER is a congestion controlled transport protocol that enables client
applications to define a 'functional' level of reliability with a
callback reliability function. VFER has a delay-based congestion
control scheme that attempts to achieve the theoretical optimum by
monitoring delay variations and applying control theory to packet
spacing. VFER is an experimental protocol that aims to be TCP-friendly
and robust in heterogeneous network latency environments. At the
moment, VFER has a C library implementation and a reliable file
transfer scp-like test application. This project was initially
brainstormed with Matei
Ripeanu, before becoming
a Google Summer
of Code 2005 implementation project at Internet2
with Stanislav Shalunov as my
mentor. It continued as an internship with the transport group at
Internet2 and received three new students under
the Google Summer of Code
2006 program, one of whom was mentored by me.
|
SPRUCE
Modeling and simulation using high-performance computing are playing
an increasingly important role in decision making and prediction. For
time-critical emergency decision support applications, such as
influenza modeling and severe weather prediction, late results may be
useless. A specialized infrastructure is needed to provide
computational resources quickly. SPRUCE, is a system for supporting
urgent computing on both traditional supercomputers and distributed
computing Grids. Currently deployed on the TeraGrid, SPRUCE provides users
with ``right-of-way'' tokens that can be activated from a Web-based
portal in the event of an urgent computing need. Tokens are
transferable and can be restricted to specific resource sets and
priority levels. Once a session is activated, job submissions may
request elevated priority. Based on local policy, computing resources
can respond, for example, by preempting active jobs or raising the
job's priority in the queue.
|
ZeptoOS
A Linux distribution effort for petascale cluster Operating Systems
centered at Argonne National Labs. Currently deployed on the Compute
and IO nodes of Argonne's BG\L machine, it is a massive undertaking
that resulted in a GPLed codebase and promises to become a mainstream
distribution for future IBM's BlueGene family clusters. My involvement
with this project has been work done during the summer 2005 internship
at ANL
on ZOID,
the ZeptoOS IO Daemon. The ZOID codebase I developed emulates the
IO\Compute node syscall redirection on x86 clusters.
|
Wireless Sensor Networks at ANL
This effort started with a couple of classes at UChicago, and
escalated into a ANL building 221 sensor-net over my summer 2005
internship at ANL. The network is two stargates with hallway mounted
MicaZ motes, all running the fantastic TinyOS.
|
|
Publications
Research publications
Time
2018 |
pdf
implementation
|
Inferring and Asserting Distributed System Invariants
Stewart Grant,
Hendrik Cech,
Ivan Beschastnikh.
To appear at ICSE 2018
|
|
Tsumiki: A Meta-Platform for Building Your Own Testbed
Justin Cappos,
Yanyan Zhuang,
Albert Rafetseder,
Ivan Beschastnikh.
To appear in Transactions on Parallel and Distributed Systems (TPDS).
|
2017 |
pdf
slides
extended slides
|
Tolerating Faults in Disaggregated Datacenters
Amanda Carbonari,
Ivan Beschastnikh.
HotNets 2017
|
pdf
implementation
|
Scalable and Fault Tolerant Platform for Distributed Learning on Private Medical Data
Alborz Amir-Khalili,
Soheil Kianzad,
Rafeef Abugharbieh,
Ivan Beschastnikh.
MICCAI MLMI 2017
|
pdf
slides
poster
|
Supporting Microservice Evolution
Adalberto R. Sampaio Junior,
Harshavardhan Kadiyala,
Bo Hu,
John Steinbacher,
Antony W. Erwin,
Nelson Rosa,
Ivan Beschastnikh,
Julia Rubin.
ICSME 2017, NIER track.
|
pdf
slides
implementation
study site
|
Refactoring Asynchrony in JavaScript
Keheliya Gallaba,
Quinn Hanam,
Ali Mesbah,
Ivan Beschastnikh.
ICSME 2017
|
pdf
|
Scalable Constraint-based Virtual Data Center Allocation
Samuel Bayless,
Nodir Kodirov,
Ivan Beschastnikh,
Holger Hoos,
Alan Hu.
IJCAI 2017
|
pdf
slides
|
Accelerating software engineering research adoption with Analysis Bots
Ivan Beschastnikh,
Mircea F. Lungu,
Yanyan Zhuang.
ICSE 2017, NIER track.
|
pdf
slides
implementation
video
|
Studying multi-threaded behavior with TSViz
Matheus Nunes,
Harjeet Lalh,
Ashaya Sharma,
Augustine Wong,
Svetozar Miucin,
Alexandra Fedorova,
Ivan Beschastnikh.
ICSE 2017, Tool demonstration.
|
pdf
slides
study site
|
Characterizing Social Insider Attacks on Facebook
Wali Usmani,
Diogo Marques,
Ivan Beschastnikh,
Konstantin Beznosov,
Tiago Guerreiro,
Luis Carriço.
CHI 2017
|
2016 |
pdf
implementation
|
Visually Reasoning about System and Resource Behavior
Tony Ohmann,
Ryan Stanley,
Ivan Beschastnikh,
Yuriy Brun.
ICSE 2016, Tool demonstration.
|
CACM pdf
Queue pdf
implementation
|
Debugging Distributed Systems: Challenges and options for validation and debugging
Ivan Beschastnikh,
Patty Wang,
Yuriy Brun,
Michael D. Ernst.
Communications of the ACM, vol. 59, no. 8, Aug. 2016, pp. 32-37.
ACM Queue, vol. 14, no. 2, March/April 2016, pp. 91-110.
|
pdf
slides
implementation
demo1.json,
demo2.json
|
Comparing Repositories Visually with RepoGrams
Daniel Rozenberg,
Ivan Beschastnikh,
Fabian Kosmale,
Valerie Poser,
Heiko Becker,
Marc Palyart,
Gail Murphy.
MSR 2016
|
2015 |
poster
abstract
implementation
|
Inferring likely data invariants of distributed systems
Stewart Grant
Sam Creed,
Ivan Beschastnikh.
Poster at SOSP 2015.
|
pdf
slides
video
implementation
|
General LTL Specification Mining
Caroline Lemieux,
Dennis Park,
Ivan Beschastnikh.
ASE 2015
|
pdf
slides
models
|
Synergizing Specification Miners through Model Fissions and Fusions
Tien-Duy B. Le,
Xuan-Bach D. Le,
David Lo,
Ivan Beschastnikh.
ASE 2015
|
pdf
video
implementation
|
Investigating Program Behavior Using the Texada LTL Specifications Miner
Caroline Lemieux,
Ivan Beschastnikh.
ASE 2015, Tool demonstration.
|
pdf
slides
implementation
dataset
|
Don't Call Us, We'll Call You: Characterizing Callbacks in JavaScript
Keheliya Gallaba,
Ali Mesbah,
Ivan Beschastnikh.
ESEM 2015
Best Full Paper Award
|
pdf
|
Using declarative specification to improve the understanding,
extensibility, and comparison of model-inference algorithms
Ivan Beschastnikh,
Yuriy Brun,
Jenny Abrahamson,
Michael D. Ernst,
Arvind Krishnamurthy.
IEEE Transactions on Software Engineering (TSE), in press, 21 pages, April 2015.
(Extended version of the ICSE 2013 paper).
|
2014 |
pdf
slides
implementation
|
Templated Visualization of Object State with Vebugger
Daniel Rozenberg,
Ivan Beschastnikh.
VISSOFT'14, NIER track.
|
pdf
slides
supplementary info
|
Behavioral Resource-Aware Model Inference
Tony Ohmann,
Michael Herzberg,
Sebastian Fiss,
Armand Halbert,
Marc Palyart,
Ivan Beschastnikh,
Yuriy Brun.
ASE 2014
|
pdf
slides
|
Inferring Models of Concurrent Systems from Logs of their Behavior with CSight
Ivan Beschastnikh,
Yuriy Brun,
Michael D. Ernst,
Arvind Krishnamurthy.
ICSE 2014
|
poster
abstract
|
Shedding Light on Distributed System Executions
Jenny Abrahamson,
Ivan Beschastnikh,
Yuriy Brun,
Michael D. Ernst.
Poster at ICSE 2014
|
pdf, tr
poster
slides
|
NetCheck: Network Diagnoses from Blackbox Traces
Yanyan Zhuang,
Eleni Gessiou,
Steven Portzer,
Fraida Fund,
Monzur Muhammad,
Ivan Beschastnikh,
Justin Cappos.
NSDI 2014
|
pdf
slides
|
Mining Precise Performance-Aware Behavioral Models from Existing Instrumentation
Tony Ohmann,
Kevin Thai,
Ivan Beschastnikh
Yuriy Brun.
ICSE 2014, NIER track.
|
pdf
|
Inferring Models of Concurrent Systems from Logs of their Behavior with CSight
Ivan Beschastnikh,
Yuriy Brun,
Michael D. Ernst,
Arvind Krishnamurthy.
UBC, Department of Computer Science, Technical Report, 2014-02-28.
|
2013 |
pdf
slides |
Unifying FSM-inference Algorithms through Declarative Specification
Ivan Beschastnikh,
Yuriy Brun,
Jenny Abrahamson,
Michael D. Ernst,
Arvind Krishnamurthy.
ICSE 2013
(Extended version published as a TSE 2015 journal paper).
|
pdf
slides
|
Understanding Regression Failures through Test-Passing and Test-Failing Code Changes
Roykrong Sukkerd,
Ivan Beschastnikh,
Jochen Wuttke,
Sai Zhang,
Yuriy Brun.
ICSE 2013, NIER track.
|
pdf
|
NetCheck Test Cases: Input Traces and NetCheck Output
Yanyan Zhuang,
Ivan Beschastnikh
Justin Cappos.
NYU Poly, Department of Computer Science and Engineering, Report TR-CSE-2013-03, 10/29/2013.
|
pdf
|
Unifying FSM-inference Algorithms through Declarative Specification
Ivan Beschastnikh,
Yuriy Brun,
Jenny Abrahamson,
Michael D. Ernst,
Arvind Krishnamurthy.
University of Washington CSE technical report UW-CSE-13-03-01, March 2013.
|
2012 |
pdf
|
Effects of Centralized and Distributed Version Control on Commit Granularity
Jochen Wuttke, Ivan Beschastnikh, Yuriy Brun
Published in TinyToCS vol. 1, 2012.
|
pdf
slides
|
Inferring Networked System Models from Behavior Traces
Ivan Beschastnikh
Student Workshop at CoNEXT 2012.
|
pdf
|
Sonora: A Platform for Continuous Mobile-Cloud Computing
Fan Yang,
Zhengping Qian,
Xiuwei Chen,
Ivan Beschastnikh,
Li Zhuang,
Lidong Zhou,
Guobin Shen.
Microsoft Research technical report MSR-TR-2012-34, March 2012.
|
2011 |
pdf
tr
slides
|
Scalable Consistency in Scatter
Lisa Glendenning,
Ivan Beschastnikh,
Arvind Krishnamurthy,
Tom Anderson.
SOSP 2011
|
pdf
slides
teaser video |
Leveraging Existing Instrumentation to Automatically Infer Invariant-Constrained Models
Ivan Beschastnikh,
Yuriy Brun,
Sigurd Schneider,
Michael Sloan,
Michael D. Ernst.
ESEC/FSE 2011
|
pdf |
Synoptic: Studying Logged Behavior with Inferred Models
Ivan Beschastnikh,
Jenny Abrahamson,
Yuriy Brun,
Michael D. Ernst.
ESEC/FSE 2011, Tool demonstration.
|
pdf
slides
|
Mining Temporal Invariants from Partially Ordered Logs
Ivan Beschastnikh,
Yuriy Brun,
Michael D. Ernst,
Arvind Krishnamurthy,
Tom Anderson.
ACM SIGOPS Operating Systems Review,
vol. 45, no. 3, December 2011, pp. 39–46.
Initially appeared at SLAML 2011.
|
pdf
slides
|
Bandsaw: Log-powered test scenario generation for distributed systems
Ivan Beschastnikh,
Yuriy Brun,
Michael D. Ernst,
Arvind Krishnamurthy,
Tom Anderson.
Work in Progress at SOSP 2011.
|
2010 |
pdf |
Retaining Sandbox Containment Despite Bugs in Privileged Memory-Safe Code
Justin Cappos,
Armon Dadgar,
Jeffrey Rasley,
Justin Samuel,
Ivan Beschastnikh,
Cosmin Barsan,
Arvind Krishnamurthy,
Tom Anderson.
CCS 2010
|
pdf
slides |
Synoptic: Summarizing system logs with refinement
Sigurd Schneider,
Ivan Beschastnikh,
Slava Chernyak,
Michael D. Ernst,
Yuriy Brun.
Workshop on Managing Systems via Log Analysis and Machine Learning Techniques, SLAML 2010.
|
pdf |
Self-Presentation: Structured and semi-structured user profiles
Linda Le,
Ivan Beschastnikh,
David W. McDonald.
Studying Online Behaviour Workshop at CHI 2010.
|
poster |
MiST: A Platform for Mobile-Cloud Computing in Streams
Fan Yang,
Zhengping Qian,
Ivan Beschastnikh,
Li Zhuang,
Mao Yang,
Amre Shakimov,
Guobin Shen,
Lidong Zhou.
Poster at Microsoft Research Mobile + Cloud Summit, Redmond, 2010.
|
www |
Teaching networking and distributed systems with Seattle: tutorial presentation
Justin Cappos,
Ivan Beschastnikh.
Journal of Computing Sciences in Colleges. Volume 25 Issue 5, May 2010.
|
2009 |
www |
Teaching networking and distributed systems with Seattle
Justin Cappos,
Ivan Beschastnikh.
Journal of Computing Sciences in Colleges. Volume 25 Issue 1, October 2009.
|
pdf |
Seattle: The Internet as an Educational Testbed
Justin Cappos,
Ivan Beschastnikh,
Arvind Krishnamurthy,
Tom Anderson.
SIGCSE 2009
|
pdf |
Promoting Quality in Wikipedia through Enculturation
Ivan Beschastnikh,
David W. McDonald,
Mark Zachry,
Travis Kriplean,
Alan Borning.
Approaching 'Amateur' Workshop at GROUP 2009.
|
pdf |
System Design for Social Translucence in Socially Mediating Technologies
David W. McDonald,
Ivan Beschastnikh,
Travis Kriplean,
Alan Borning,
Mark Zachry.
Socially Mediating Technologies Workshop at CHI 2009.
|
pdf |
Designing Mediating Spaces Between Citizens and Government
Travis Kriplean,
Ivan Beschastnikh,
Alan Borning,
David W. McDonald,
Mark Zachry.
Socially Mediating Technologies Workshop at CHI 2009.
|
2008 |
pdf
slides |
SatelliteLab: Adding Heterogeneity to Planetary-Scale Testbeds
Marcel Dischinger,
Andreas Haeberlen,
Ivan Beschastnikh,
Krishna P. Gummadi, Stefan Saroiu.
SIGCOMM 2008
|
pdf slides |
Articulations of WikiWork: Uncovering Valued Work in Wikipedia through Barnstars
Travis Kriplean,
Ivan Beschastnikh,
David W. McDonald.
CSCW 2008
Best Paper Honorable Mention
|
pdf slides |
Wikipedian Self-Governance in Action: Motivating the Policy Lens
Ivan Beschastnikh,
Travis Kriplean,
David W. McDonald.
ICWSM 2008
Best Paper Award
|
2007 |
pdf slides |
Community, Consensus, Coercion, Control: CS*W or How Policy Mediates Mass Participation
Travis Kriplean,
Ivan Beschastnikh,
David W. McDonald, Scott Golder.
GROUP 2007
|
poster |
SatelliteLab: Adding Heterogeneity to Planetary-Scale Testbeds
Andreas Haeberlen,
Marcel Dischinger,
Ivan Beschastnikh,
Krishna Gummadi
Poster at SOSP 2007, Stevenson, WA, USA, October 2007
|
pdf |
Building an Infrastructure for Urgent Computing
Pete Beckman,
Ivan Beschastnikh,
Suman Nadella,
Nick Trebon.
Chapter in 'High Performance Computing and Grids in Action' by IOS Press, Amsterdam, 2007
|
2006 |
pdf |
SPRUCE: A System for Supporting Urgent High-Performance Computing
Pete Beckman,
Suman Nadella,
Nick Trebon,
Ivan Beschastnikh
IFIP WoCo9, 2006.
|
www |
VFER: High-performance Transport in User Space
Stanislav Shalunov,
Ivan Beschastnikh
SuperComputing 2006 Bandwidth Challenge Finalist, November 2006.
|
poster |
SPRUCE: Special Priority and Urgent Computing Environment
Ivan Beschastnikh
Grand Prize winning student research competition poster at TeraGrid 2006.
|
2005 |
pdf |
The Earth Vision Time Machine: A Design for the Collaborative Sharing of Wireless Sensor Data
Pete Beckman,
Ivan Beschastnikh,
Cameron Cooper,
Isaac Wasileski
Workshop on Advanced Collaborative Environments, WACE 2005
|
Presentations
|
Seattle: A Python-based Platform for Easy Development and Deployment of Networked Systems and Applications
Ivan Beschastnikh,
Justin Samuel,
Justin Cappos,
Presentation at PyCon 2010, Atlanta, GA, February 2010
|
|
Teaching networking and distributed systems with Seattle
Ivan Beschastnikh,
Justin Cappos,
Tutorial at CCSC Central Plains 2010
|
|
Teaching networking and distributed systems with Seattle
Justin Cappos,
Ivan Beschastnikh,
Tutorial at CCSC Northwest 2009
|
Unpublished Material
pdf |
Liberating Mobile Phones from their Primary Use Case.
Ivan Beschastnikh, Yuan Zhang,
Zhengping Qian,
Lidong Zhou.
|
pdf |
Integration of Static Instruction Analysis with Dynamic Information Flow Tracking.
Ivan Beschastnikh, Ian Post, Joshua Schwartz, Benedict Singer.
|
pdf |
Machine Learning for Automatic Physical DBMS Tuning.
Ivan Beschastnikh and Andrew Guillory.
|
|
|
Students
Students
One of my passions is mentoring and working with students on
challenging research questions.
Prospective students: please see this page.
Graduate students:
Undergraduate students:
Visitors:
- Stephen Ye (Visiting PhD student from Beihang University)
Graduate and Postdoc alumni:
- Amanda Carbonari (MSc 2018)
- Inter-processor Communication in Disaggregated Datacenters [pdf]
- → Google
- Peter Chen (MSc 2017)
- Cross-platform Data Integrity and Confidentiality with Graduated Access Control [pdf]
- → Arista Networks
- Keheliya Gallaba (MASc 2015 from ECE, co-supervised with Ali Mesbah)
- Characterizing and refactoring asynchronous JavaScript callbacks [pdf]
- → PhD program at McGill U.
- Michael Phan-Ba (MSc 2015)
- A literature review of failure detection within the context of solving the problem of distributed consensus [pdf]
- Daniel Rozenberg (MSc 2015)
- Qualitative Repository Analysis with RepoGrams [pdf]
- → Google
- Wali Usmani (MSc 2017, co-supervised with Konstantin Beznosov)
- "Not able to resist the urge" : Social Insider Attacks on Facebook [pdf]
- → TwoTallTotems
- Yanyan Zhuang (Postdoctoral Fellow, 2016)
Undergraduate UBC alumni:
Undergraduate U. Washington alumni:
|
Service
Service to my communities
I consider the peer review process a critical component of academic
research and help out with reviewing and organizing duties as time
allows.
- General chair:
- 2017: HotOS (co-chair with Rachit Agarwal)
- Program chair:
- 2017: VISSOFT (co-chair with Andrea Mocci)
- Steering committee member:
- Program committee member:
- 2018: ICDCS, ESEM, ESEC/FSE NIER, ISSTA Demos
- 2017: ISSRE, ESEM, ICSE NIER, ICSE SRC, ISSTA Demos
- 2016: ICSE, ESEM, ICSE Posters, VISSOFT NIER and Demos
- 2015: SRDS, ICSE Demos, VISSOFT NIER and Demos
- 2014: ICSE Posters
- 2013: SOSP Posters
- 2012: WikiSym
- 2011: WikiSym
- Reviewer:
- 2018: TSE
- 2017: CHI, EuroSys, TOSEM
- 2016: TSE, JSEP, JSPE
- 2015: TSE, Elsevier ASE, ASE
- 2014: TSE, VLDB, Elsevier IST
- 2013: TSE, OSR, ASE
- 2012: TSE, TOOLS
- 2011: OOPSLA, NCA
- 2010: SigMetrics
- 2009: NSDI, WikiSym
- Doctoral symposium chair: Middleware 2015
|
Funding
Funding
I am fortunate to have my research and education efforts supported by
the following generous
organizations:
NSERC,
Shopify,
Huawei,
IBM CAS,
Mitacs,
Tasktop,
NSF,
UBC,
Office of the Privacy Commissioner of Canada,
Amazon,
Peter Wall Institute.
|
|
|
|
|