diff --git a/nsync/sync-common.h b/nsync/sync-common.h
new file mode 100644
index 0000000..982726e
--- /dev/null
+++ b/nsync/sync-common.h
@@ -0,0 +1,59 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/**
+ * Copyright (c) 2014  University of Memphis,
+ *                     Regents of the University of California
+ *
+ * This file is part of NLSR (Named-data Link State Routing).
+ * See AUTHORS.md for complete list of NLSR authors and contributors.
+ *
+ * NLSR is free software: you can redistribute it and/or modify it under the terms
+ * of the GNU General Public License as published by the Free Software Foundation,
+ * either version 3 of the License, or (at your option) any later version.
+ *
+ * NLSR is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
+ * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ * PURPOSE.  See the GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * NLSR, e.g., in COPYING.md file.  If not, see <http://www.gnu.org/licenses/>.
+ *
+ **/
+
+#ifndef NSYNC_SYNC_COMMON_HPP
+#define NSYNC_SYNC_COMMON_HPP
+
+#include <boost/exception/all.hpp>
+
+#include <ndn-cxx/common.hpp>
+
+#include <tuple>
+
+namespace Sync {
+
+using ndn::bind;
+using ndn::function;
+
+using ndn::make_shared;
+using ndn::shared_ptr;
+using ndn::weak_ptr;
+
+using ndn::dynamic_pointer_cast;
+using ndn::static_pointer_cast;
+
+using ndn::_1;
+using ndn::_2;
+using ndn::_3;
+using ndn::_4;
+using ndn::_5;
+using ndn::_6;
+using ndn::_7;
+using ndn::_8;
+using ndn::_9;
+
+using std::tuple;
+using std::make_tuple;
+using std::tie;
+
+} // namespace Sync
+
+#endif // NSYNC_SYNC_COMMON_HPP
