示例#1
0
 def start_client(self, src, clients):
     client = self._client_registry.get_client(self._ns)
     if client and client.is_running():
         self.log.warning("Client is already running on %s" % src)
         return
     try:
         process = WorkerProcess(
             TrafficClient, (src, clients, self._record_queue), {})
         with nsenter.namespace(self._ns_full_path, 'net'):
             process.start()
             self._client_registry.add_client(self._ns, process)
     except Exception as e:
         self.log.exception(
             "Starting client process on interface %s failed" % src)
         raise e
示例#2
0
 def start_client(self, src, clients):
     self.log.info("Starting client process on interface %s" % src)
     client = self._client_registry.get_client(self.ROOT_NAMESPACE_NAME)
     if client and client.is_running():
         self.log.warning("Client is already running on %s" % src)
         return
     try:
         process = WorkerProcess(
             TrafficClient, (src, clients, self._record_queue), {})
         process.start()
         self._client_registry.add_client(self.ROOT_NAMESPACE_NAME, process)
     except Exception as e:
         self.log.exception(
             "Starting client process on interface %s failed" % src)
         raise e
 def start_server(self, protocol, port, src="0.0.0.0"):
     server_process = self._server_registry.get_server(
         self.ROOT_NAMESPACE_NAME, port, protocol)
     if server_process and server_process.is_running():
         self.log.warning("%s server on port %s is already running" %
                          (protocol, port))
         return
     self.log.info("Starting %s server on port %s on interface %s" %
                   (protocol, port, src))
     try:
         server_cls, args, kwargs = create_server_class(protocol, port, src)
         process = WorkerProcess(server_cls, args, kwargs)
         process.start()
         self._server_registry.add_server(self.ROOT_NAMESPACE_NAME, port,
                                          protocol, process)
     except Exception as e:
         self.log.exception(
             "Starting %s server on port %s on interface %s failed" %
             (protocol, port, src))
         raise e
 def start_server(self, protocol, port, src="0.0.0.0"):
     server_process = self._server_registry.get_server(
         self._ns, port, protocol)
     if server_process and server_process.is_running():
         self.log.warning("%s server on port %s is already running" %
                          (protocol, port))
         return
     self.log.info(
         "Starting %s server on port %s on interface %s in namespace %s" %
         (protocol, port, src, self._ns))
     try:
         server_cls, args, kwargs = create_server_class(protocol, port, src)
         process = WorkerProcess(server_cls, args, kwargs)
         with nsenter.namespace(self._ns_full_path, 'net'):
             process.start()
         self._server_registry.add_server(self._ns, port, protocol, process)
     except Exception as e:
         self.log.exception(
             "Starting %s server on port %s on interface %s failed" %
             (protocol, port, src))
         raise e