class_docstr: Start RPC proxy server on a separate process.
  
  Python implementation based on PopenWorker.
  
  Parameters
  ----------
  host : str
      The host url of the server.
  
  port : int
      The TCP port to be bind to
  
  port_end : int, optional
      The end TCP port to search
  
  web_port : int, optional
      The http/websocket port of the server.
  
  timeout_client : float, optional
      Timeout of client until it sees a matching connection.
  
  timeout_server : float, optional
      Timeout of server until it sees a matching connection.
  
  tracker_addr: Tuple (str, int) , optional
      The address of RPC Tracker in tuple (host, ip) format.
      If is not None, the server will register itself to the tracker.
  
  index_page : str, optional
      Path to an index page that can be used to display at proxy index.
  
  resource_files : str, optional
      Path to local resources that can be included in the http request
class_docstr_tok: ["Start","RPC","proxy","server","on","a","separate","process",".","Python","implementation","based","on","PopenWorker",".","Parameters","--","--","--","--","--","host",":","str","The","host","url","of","the","server",".","port",":","int","The","TCP","port","to","be","bind","to","port_end",":","int",",","optional","The","end","TCP","port","to","search","web_port",":","int",",","optional","The","http\/websocket","port","of","the","server",".","timeout_client",":","float",",","optional","Timeout","of","client","until","it","sees","a","matching","connection",".","timeout_server",":","float",",","optional","Timeout","of","server","until","it","sees","a","matching","connection",".","tracker_addr",":","Tuple","(","str",",","int",")",",","optional","The","address","of","RPC","Tracker","in","tuple","(","host",",","ip",")","format",".","If","is","not","None",",","the","server","will","register","itself","to","the","tracker",".","index_page",":","str",",","optional","Path","to","an","index","page","that","can","be","used","to","display","at","proxy","index",".","resource_files",":","str",",","optional","Path","to","local","resources","that","can","be","included","in","the","http","request"]
code: def __init__(
      self,
      host,
      port=9091,
      port_end=9199,
      web_port=0,
      timeout_client=600,
      timeout_server=600,
      tracker_addr=None,
      index_page=None,
      resource_files=None,
  ):
      self.proc = PopenWorker()
      # send the function
      self.proc.send(
          _popen_start_proxy_server,
          [
              host,
              port,
              port_end,
              web_port,
              timeout_client,
              timeout_server,
              tracker_addr,
              index_page,
              resource_files,
          ],
      )
      # receive the port
      self.port = self.proc.recv()
      self.host = host
  
imports: import os
  import asyncio
  import logging
  import socket
  import threading
  import errno
  import struct
  import time
  from tvm.contrib.popen_pool import PopenWorker
  from .None import _ffi_api
  from .None import base
  from .base import TrackerCode
  from .server import _server_env
  from .._ffi.base import py_str
label_desc: Use image node_id 1 to create a new Proxy object from inherited base classes: object with example: obj = Proxy(host, port, port_end, web_port, timeout_client, timeout_server, tracker_addr, index_page, resource_files)