diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index c5f32aed79e10bee038a8364bee04e0b7cde19cd..e56025c288a1cd4fcb9a45cd6d791b74dff27463 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -71,8 +71,10 @@ set (core_sources
      say.c
      memory.c
      fiber.c
-     cbus.c
      fiber_pool.c
+     fiber_cond.c
+     fiber_channel.c
+     cbus.c
      exception.cc
      reflection.c
      assoc.c
@@ -115,8 +117,6 @@ set (server_sources
      httpc.c
      coio_buf.cc
      pickle.c
-     ipc.c
-     fiber_cond.c
      latch.c
      errinj.c
      fio.c
@@ -138,8 +138,8 @@ set (server_sources
      lua/init.c
      lua/fiber.c
      lua/fiber_cond.c
+     lua/fiber_channel.c
      lua/trigger.c
-     lua/ipc.c
      lua/msgpack.c
      lua/utils.c
      lua/errno.c
diff --git a/src/box/applier.h b/src/box/applier.h
index 94d400777261afff649bec2094c57fe70b20532b..6012b505bc1be8fdd376e3094ef0b553abf84e5d 100644
--- a/src/box/applier.h
+++ b/src/box/applier.h
@@ -33,14 +33,15 @@
 
 #include <netinet/in.h>
 #include <sys/socket.h>
+#include <tarantool_ev.h>
 
+#include "fiber_channel.h"
+#include "trigger.h"
 #include "trivia/util.h"
-#include "uri.h"
 #include "tt_uuid.h"
-#include "trigger.h"
-#include "third_party/tarantool_ev.h"
+#include "uri.h"
+
 #include "vclock.h"
-#include "ipc.h"
 
 struct xstream;
 
diff --git a/src/box/replication.cc b/src/box/replication.cc
index aab847e1bb70e91f137bbad6c5bf26340f030d64..30aa6fad3d8f7af9751452488fd5f1d8920cafb0 100644
--- a/src/box/replication.cc
+++ b/src/box/replication.cc
@@ -31,8 +31,8 @@
 
 #include "replication.h"
 
-#include <ipc.h>
 #include <fiber.h> /* &cord->slabc */
+#include <fiber_channel.h>
 #include <scoped_guard.h>
 #include <small/mempool.h>
 
diff --git a/src/ipc.c b/src/fiber_channel.c
similarity index 99%
rename from src/ipc.c
rename to src/fiber_channel.c
index 18b511eec8effec07008f077ad9bf9f2ef314ce4..43312de8a03fde43720a9aadd7329328390f13b0 100644
--- a/src/ipc.c
+++ b/src/fiber_channel.c
@@ -28,10 +28,12 @@
  * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  */
-#include "ipc.h"
-#include "fiber.h"
+#include "fiber_channel.h"
+
 #include <stdlib.h>
 
+#include "fiber.h"
+
 enum ipc_wait_status {
 	IPC_WAIT_READER, /* A reader is waiting for writer */
 	IPC_WAIT_WRITER, /* A writer waiting for reader. */
@@ -482,5 +484,3 @@ ipc_channel_get_msg_timeout(struct ipc_channel *ch,
 		timeout -= ev_now(loop()) - start_time;
 	}
 }
-
-
diff --git a/src/ipc.h b/src/fiber_channel.h
similarity index 98%
rename from src/ipc.h
rename to src/fiber_channel.h
index e2b622a6fd71e92208611736981a30afea8e0d53..90438042c2ebf3fb5dc2e6c6380494ae0891d8fb 100644
--- a/src/ipc.h
+++ b/src/fiber_channel.h
@@ -1,5 +1,5 @@
-#ifndef TARANTOOL_IPC_H_INCLUDED
-#define TARANTOOL_IPC_H_INCLUDED
+#ifndef TARANTOOL_FIBER_CHANNEL_H_INCLUDED
+#define TARANTOOL_FIBER_CHANNEL_H_INCLUDED 1
 /*
  * Copyright 2010-2016, Tarantool AUTHORS, please see AUTHORS file.
  *
@@ -403,4 +403,4 @@ ipc_channel_put_xc(struct ipc_channel *ch, void *data)
 
 #endif /* defined(__cplusplus) */
 
-#endif /* TARANTOOL_IPC_H_INCLUDED */
+#endif /* TARANTOOL_FIBER_CHANNEL_H_INCLUDED */
diff --git a/src/lua/ipc.c b/src/lua/fiber_channel.c
similarity index 98%
rename from src/lua/ipc.c
rename to src/lua/fiber_channel.c
index d9b29ff388ae5adcf63d5a11dddb76a25ff31907..68b79affad7a5a37fb494156156cc6873a9f1965 100644
--- a/src/lua/ipc.c
+++ b/src/lua/fiber_channel.c
@@ -28,10 +28,10 @@
  * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
  */
-#include <trivia/util.h>
+#include "lua/fiber_channel.h"
 
-#include "lua/ipc.h"
 #include "lua/fiber.h"
+#include <trivia/util.h>
 
 #include <lua.h>
 #include <lauxlib.h>
@@ -42,9 +42,9 @@
 NORETURN int
 luaL_error(lua_State *L, const char *fmt, ...);
 
-#include <ipc.h>
 #include "lua/utils.h"
 #include <fiber.h>
+#include <fiber_channel.h>
 
 static const char channel_typename[] = "fiber.channel";
 
@@ -272,7 +272,7 @@ lbox_ipc_channel_to_string(struct lua_State *L)
 }
 
 void
-tarantool_lua_ipc_init(struct lua_State *L)
+tarantool_lua_fiber_channel_init(struct lua_State *L)
 {
 	static const struct luaL_Reg channel_meta[] = {
 		{"__gc",	lbox_ipc_channel_gc},
diff --git a/src/lua/ipc.h b/src/lua/fiber_channel.h
similarity index 88%
rename from src/lua/ipc.h
rename to src/lua/fiber_channel.h
index 37247dc669b36af9245ccca7fceed1a9037b27d1..15d62a5fd454a1dd1cd951811312e6515e48b4d8 100644
--- a/src/lua/ipc.h
+++ b/src/lua/fiber_channel.h
@@ -1,5 +1,5 @@
-#ifndef TARANTOOL_LUA_IPC_H_INCLUDED
-#define TARANTOOL_LUA_IPC_H_INCLUDED
+#ifndef TARANTOOL_LUA_FIBER_CHANNEL_H_INCLUDED
+#define TARANTOOL_LUA_FIBER_CHANNEL_H_INCLUDED
 /*
  * Copyright 2010-2015, Tarantool AUTHORS, please see AUTHORS file.
  *
@@ -35,10 +35,10 @@ extern "C" {
 #endif /* defined(__cplusplus) */
 
 struct lua_State;
-void tarantool_lua_ipc_init(struct lua_State *L);
+void tarantool_lua_fiber_channel_init(struct lua_State *L);
 
 #if defined(__cplusplus)
 } /* extern "C" */
 #endif /* defined(__cplusplus) */
 
-#endif /* TARANTOOL_LUA_IPC_H_INCLUDED */
+#endif /* TARANTOOL_LUA_FIBER_CHANNEL_H_INCLUDED */
diff --git a/src/lua/init.c b/src/lua/init.c
index 44dcdf6157fb1761a1f78baf047bbdbfc64da3cd..53507eb59b17ec1263e50ea44372c88c9bfe47f9 100644
--- a/src/lua/init.c
+++ b/src/lua/init.c
@@ -46,7 +46,7 @@
 #include "coio.h"
 #include "lua/fiber.h"
 #include "lua/fiber_cond.h"
-#include "lua/ipc.h"
+#include "lua/fiber_channel.h"
 #include "lua/errno.h"
 #include "lua/socket.h"
 #include "lua/utils.h"
@@ -382,7 +382,7 @@ tarantool_lua_init(const char *tarantool_bin, int argc, char **argv)
 	tarantool_lua_utils_init(L);
 	tarantool_lua_fiber_init(L);
 	tarantool_lua_fiber_cond_init(L);
-	tarantool_lua_ipc_init(L);
+	tarantool_lua_fiber_channel_init(L);
 	tarantool_lua_errno_init(L);
 	tarantool_lua_fio_init(L);
 	tarantool_lua_socket_init(L);
diff --git a/test/app/ipc.result b/test/app/fiber_channel.result
similarity index 100%
rename from test/app/ipc.result
rename to test/app/fiber_channel.result
diff --git a/test/app/ipc.test.lua b/test/app/fiber_channel.test.lua
similarity index 100%
rename from test/app/ipc.test.lua
rename to test/app/fiber_channel.test.lua
diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt
index f56ec18997d726605cd36ae5ca318ea07060ec8a..30718fe5c18e2fd2df3a2a464487c98cb80a9f00 100644
--- a/test/unit/CMakeLists.txt
+++ b/test/unit/CMakeLists.txt
@@ -80,11 +80,11 @@ endif ()
 add_executable(fiber_stress.test fiber_stress.cc)
 target_link_libraries(fiber_stress.test core)
 
-add_executable(ipc.test ipc.cc unit.c ${CMAKE_SOURCE_DIR}/src/ipc.c)
-target_link_libraries(ipc.test core)
+add_executable(fiber_channel.test fiber_channel.cc unit.c)
+target_link_libraries(fiber_channel.test core)
 
-add_executable(ipc_stress.test ipc_stress.cc ${CMAKE_SOURCE_DIR}/src/ipc.c)
-target_link_libraries(ipc_stress.test core)
+add_executable(fiber_channel_stress.test fiber_channel_stress.cc)
+target_link_libraries(fiber_channel_stress.test core)
 
 add_executable(coio.test coio.cc unit.c
         ${CMAKE_SOURCE_DIR}/src/sio.cc
diff --git a/test/unit/ipc.cc b/test/unit/fiber_channel.cc
similarity index 98%
rename from test/unit/ipc.cc
rename to test/unit/fiber_channel.cc
index 66e8ee989320d9e02f3a2fb0e35f23fd0c6eb922..936014b1728918cb2325c5a90098e3527d1650d8 100644
--- a/test/unit/ipc.cc
+++ b/test/unit/fiber_channel.cc
@@ -1,6 +1,6 @@
 #include "memory.h"
 #include "fiber.h"
-#include "ipc.h"
+#include "fiber_channel.h"
 #include "unit.h"
 
 int status;
diff --git a/test/unit/ipc.result b/test/unit/fiber_channel.result
similarity index 100%
rename from test/unit/ipc.result
rename to test/unit/fiber_channel.result
diff --git a/test/unit/ipc_stress.cc b/test/unit/fiber_channel_stress.cc
similarity index 97%
rename from test/unit/ipc_stress.cc
rename to test/unit/fiber_channel_stress.cc
index f9a845492dc7af9eb07df53b5e95b01679e0d87a..b487c7d3aa63a7dd25171cd44ca43d92f8293eb6 100644
--- a/test/unit/ipc_stress.cc
+++ b/test/unit/fiber_channel_stress.cc
@@ -1,6 +1,6 @@
 #include "memory.h"
 #include "fiber.h"
-#include "ipc.h"
+#include "fiber_channel.h"
 #include "unit.h"
 
 enum {
diff --git a/test/unit/ipc_stress.result b/test/unit/fiber_channel_stress.result
similarity index 100%
rename from test/unit/ipc_stress.result
rename to test/unit/fiber_channel_stress.result