diff --git a/src/face.hpp b/src/face.hpp
index 236b296..e5ccbba 100644
--- a/src/face.hpp
+++ b/src/face.hpp
@@ -28,15 +28,10 @@
 #include "interest-filter.hpp"
 #include "encoding/nfd-constants.hpp"
 #include "lp/nack.hpp"
+#include "net/asio-fwd.hpp"
 #include "security/key-chain.hpp"
 #include "security/signing-info.hpp"
 
-namespace boost {
-namespace asio {
-class io_service;
-} // namespace asio
-} // namespace boost
-
 namespace ndn {
 
 class Transport;
diff --git a/src/net/asio-fwd.hpp b/src/net/asio-fwd.hpp
new file mode 100644
index 0000000..bda6b83
--- /dev/null
+++ b/src/net/asio-fwd.hpp
@@ -0,0 +1,47 @@
+/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
+/*
+ * Copyright (c) 2013-2017 Regents of the University of California.
+ *
+ * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
+ *
+ * ndn-cxx library is free software: you can redistribute it and/or modify it under the
+ * terms of the GNU Lesser General Public License as published by the Free Software
+ * Foundation, either version 3 of the License, or (at your option) any later version.
+ *
+ * ndn-cxx library 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 Lesser General Public License for more details.
+ *
+ * You should have received copies of the GNU General Public License and GNU Lesser
+ * General Public License along with ndn-cxx, e.g., in COPYING.md file.  If not, see
+ * <http://www.gnu.org/licenses/>.
+ *
+ * See AUTHORS.md for complete list of ndn-cxx authors and contributors.
+ */
+
+#ifndef NDN_NET_ASIO_FWD_HPP
+#define NDN_NET_ASIO_FWD_HPP
+
+#include <boost/version.hpp>
+
+#if BOOST_VERSION >= 106600
+
+#include <boost/asio/ts/netfwd.hpp>
+
+namespace boost {
+namespace asio {
+using io_service = io_context;
+} // namespace asio
+} // namespace boost
+
+#else
+
+namespace boost {
+namespace asio {
+class io_service;
+} // namespace asio
+} // namespace boost
+
+#endif // BOOST_VERSION >= 106600
+
+#endif // NDN_NET_ASIO_FWD_HPP
diff --git a/src/net/dns.hpp b/src/net/dns.hpp
index 79d9a10..5e22a84 100644
--- a/src/net/dns.hpp
+++ b/src/net/dns.hpp
@@ -1,5 +1,5 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/**
+/*
  * Copyright (c) 2013-2017 Regents of the University of California.
  *
  * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
@@ -22,17 +22,11 @@
 #ifndef NDN_NET_DNS_HPP
 #define NDN_NET_DNS_HPP
 
+#include "asio-fwd.hpp"
 #include "../util/time.hpp"
 
 #include <boost/asio/ip/address.hpp>
 
-// forward declaration
-namespace boost {
-namespace asio {
-class io_service;
-} // namespace asio
-} // namespace boost
-
 namespace ndn {
 namespace dns {
 
diff --git a/src/net/face-uri.hpp b/src/net/face-uri.hpp
index 12276cd..7461576 100644
--- a/src/net/face-uri.hpp
+++ b/src/net/face-uri.hpp
@@ -1,5 +1,5 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/**
+/*
  * Copyright (c) 2013-2017 Regents of the University of California,
  *                         Arizona Board of Regents,
  *                         Colorado State University,
@@ -28,6 +28,7 @@
 #ifndef NDN_NET_FACE_URI_HPP
 #define NDN_NET_FACE_URI_HPP
 
+#include "asio-fwd.hpp"
 #include "ethernet.hpp"
 #include "../util/time.hpp"
 
diff --git a/src/net/network-monitor.hpp b/src/net/network-monitor.hpp
index e6874a1..2441e3e 100644
--- a/src/net/network-monitor.hpp
+++ b/src/net/network-monitor.hpp
@@ -1,5 +1,5 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/**
+/*
  * Copyright (c) 2013-2017 Regents of the University of California.
  *
  * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
@@ -25,14 +25,10 @@
 #ifndef NDN_NET_NETWORK_MONITOR_HPP
 #define NDN_NET_NETWORK_MONITOR_HPP
 
+#include "asio-fwd.hpp"
 #include "network-interface.hpp"
-#include <vector>
 
-namespace boost {
-namespace asio {
-class io_service;
-} // namespace asio
-} // namespace boost
+#include <vector>
 
 namespace ndn {
 namespace net {
diff --git a/src/transport/stream-transport-impl.hpp b/src/transport/stream-transport-impl.hpp
index c2dab39..c8f1527 100644
--- a/src/transport/stream-transport-impl.hpp
+++ b/src/transport/stream-transport-impl.hpp
@@ -1,5 +1,5 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/**
+/*
  * Copyright (c) 2013-2017 Regents of the University of California.
  *
  * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
@@ -24,7 +24,9 @@
 
 #include "transport.hpp"
 
-#include <boost/asio.hpp>
+#include <boost/asio/deadline_timer.hpp>
+#include <boost/asio/write.hpp>
+
 #include <list>
 
 namespace ndn {
@@ -38,7 +40,7 @@
 class StreamTransportImpl : public enable_shared_from_this<StreamTransportImpl<BaseTransport, Protocol>>
 {
 public:
-  typedef StreamTransportImpl<BaseTransport,Protocol> Impl;
+  typedef StreamTransportImpl<BaseTransport, Protocol> Impl;
   typedef std::list<Block> BlockSequence;
   typedef std::list<BlockSequence> TransmissionQueue;
 
diff --git a/src/transport/tcp-transport.hpp b/src/transport/tcp-transport.hpp
index d9ed7f2..6e8977f 100644
--- a/src/transport/tcp-transport.hpp
+++ b/src/transport/tcp-transport.hpp
@@ -25,13 +25,7 @@
 #include "transport.hpp"
 #include "../util/config-file.hpp"
 
-namespace boost {
-namespace asio {
-namespace ip {
-class tcp;
-} // namespace ip
-} // namespace asio
-} // namespace boost
+#include <boost/asio/ip/tcp.hpp>
 
 namespace ndn {
 
diff --git a/src/transport/transport.hpp b/src/transport/transport.hpp
index f656802..b177fad 100644
--- a/src/transport/transport.hpp
+++ b/src/transport/transport.hpp
@@ -1,6 +1,6 @@
 /* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- */
-/**
- * Copyright (c) 2013-2016 Regents of the University of California.
+/*
+ * Copyright (c) 2013-2017 Regents of the University of California.
  *
  * This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).
  *
@@ -24,15 +24,10 @@
 
 #include "../common.hpp"
 #include "../encoding/block.hpp"
+#include "../net/asio-fwd.hpp"
 
 #include <boost/system/error_code.hpp>
 
-namespace boost {
-namespace asio {
-class io_service;
-} // namespace asio
-} // namespace boost
-
 namespace ndn {
 
 /** \brief provides TLV-block delivery service
diff --git a/src/transport/unix-transport.hpp b/src/transport/unix-transport.hpp
index d54f02b..d337252 100644
--- a/src/transport/unix-transport.hpp
+++ b/src/transport/unix-transport.hpp
@@ -25,13 +25,7 @@
 #include "transport.hpp"
 #include "../util/config-file.hpp"
 
-namespace boost {
-namespace asio {
-namespace local {
-class stream_protocol;
-} // namespace local
-} // namespace asio
-} // namespace boost
+#include <boost/asio/local/stream_protocol.hpp>
 
 namespace ndn {
 
diff --git a/src/util/scheduler.hpp b/src/util/scheduler.hpp
index 2139c76..6d04bd1 100644
--- a/src/util/scheduler.hpp
+++ b/src/util/scheduler.hpp
@@ -23,8 +23,8 @@
 #define NDN_UTIL_SCHEDULER_HPP
 
 #include "time.hpp"
+#include "../net/asio-fwd.hpp"
 
-#include <boost/asio/io_service.hpp>
 #include <set>
 
 namespace ndn {
