Add packet logger and server

BUG=webrtc:7426

Review-Url: https://codereview.webrtc.org/2790513002
Cr-Commit-Position: refs/heads/master@{#17788}
diff --git a/webrtc/tools/network_tester/test_controller.h b/webrtc/tools/network_tester/test_controller.h
index 5dae3ea..d8f3463 100644
--- a/webrtc/tools/network_tester/test_controller.h
+++ b/webrtc/tools/network_tester/test_controller.h
@@ -17,9 +17,11 @@
 #include <string>
 #include <utility>
 
+#include "webrtc/base/constructormagic.h"
 #include "webrtc/base/ignore_wundef.h"
 #include "webrtc/p2p/base/basicpacketsocketfactory.h"
 #include "webrtc/p2p/base/udptransport.h"
+#include "webrtc/tools/network_tester/packet_logger.h"
 #include "webrtc/tools/network_tester/packet_sender.h"
 
 #ifdef WEBRTC_NETWORK_TESTER_PROTO
@@ -39,7 +41,8 @@
  public:
   TestController(int min_port,
                  int max_port,
-                 const std::string& config_file_path);
+                 const std::string& config_file_path,
+                 const std::string& log_file_path);
 
   void Run();
 
@@ -62,12 +65,15 @@
   rtc::SequencedTaskChecker packet_sender_checker_;
   rtc::BasicPacketSocketFactory socket_factory_;
   const std::string config_file_path_;
+  PacketLogger packet_logger_;
   rtc::CriticalSection local_test_done_lock_;
   bool local_test_done_ GUARDED_BY(local_test_done_lock_);
   bool remote_test_done_;
   std::array<char, kEthernetMtu> send_data_;
   std::unique_ptr<cricket::UdpTransport> udp_transport_;
   std::unique_ptr<PacketSender> packet_sender_;
+
+  RTC_DISALLOW_COPY_AND_ASSIGN(TestController);
 };
 
 }  // namespace webrtc