proxynt 2.1.1__tar.gz → 2.1.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. {proxynt-2.1.1/proxynt.egg-info → proxynt-2.1.2}/PKG-INFO +1 -1
  2. {proxynt-2.1.1 → proxynt-2.1.2}/constant/system_constant.py +1 -1
  3. {proxynt-2.1.1 → proxynt-2.1.2/proxynt.egg-info}/PKG-INFO +1 -1
  4. {proxynt-2.1.1 → proxynt-2.1.2}/run_client.py +2 -0
  5. {proxynt-2.1.1 → proxynt-2.1.2}/server/websocket_handler.py +2 -0
  6. {proxynt-2.1.1 → proxynt-2.1.2}/LICENSE +0 -0
  7. {proxynt-2.1.1 → proxynt-2.1.2}/MANIFEST.in +0 -0
  8. {proxynt-2.1.1 → proxynt-2.1.2}/__init__.py +0 -0
  9. {proxynt-2.1.1 → proxynt-2.1.2}/client/__init__.py +0 -0
  10. {proxynt-2.1.1 → proxynt-2.1.2}/client/abstract_tunnel.py +0 -0
  11. {proxynt-2.1.1 → proxynt-2.1.2}/client/clear_nonce_task.py +0 -0
  12. {proxynt-2.1.1 → proxynt-2.1.2}/client/heart_beat_task.py +0 -0
  13. {proxynt-2.1.1 → proxynt-2.1.2}/client/kcp_tunnel_impl.py +0 -0
  14. {proxynt-2.1.1 → proxynt-2.1.2}/client/n4_tunnel_manager.py +0 -0
  15. {proxynt-2.1.1 → proxynt-2.1.2}/client/quic_tunnel_impl.py +0 -0
  16. {proxynt-2.1.1 → proxynt-2.1.2}/client/tcp_forward_client.py +0 -0
  17. {proxynt-2.1.1 → proxynt-2.1.2}/client/tunnel_protocol.py +0 -0
  18. {proxynt-2.1.1 → proxynt-2.1.2}/client/udp_forward_client.py +0 -0
  19. {proxynt-2.1.1 → proxynt-2.1.2}/common/__init__.py +0 -0
  20. {proxynt-2.1.1 → proxynt-2.1.2}/common/captcha.py +0 -0
  21. {proxynt-2.1.1 → proxynt-2.1.2}/common/cert_utils.py +0 -0
  22. {proxynt-2.1.1 → proxynt-2.1.2}/common/crypto/__init__.py +0 -0
  23. {proxynt-2.1.1 → proxynt-2.1.2}/common/crypto/table.py +0 -0
  24. {proxynt-2.1.1 → proxynt-2.1.2}/common/encrypt_utils.py +0 -0
  25. {proxynt-2.1.1 → proxynt-2.1.2}/common/kcp.py +0 -0
  26. {proxynt-2.1.1 → proxynt-2.1.2}/common/logger_factory.py +0 -0
  27. {proxynt-2.1.1 → proxynt-2.1.2}/common/n4_protocol.py +0 -0
  28. {proxynt-2.1.1 → proxynt-2.1.2}/common/n4_punch.py +0 -0
  29. {proxynt-2.1.1 → proxynt-2.1.2}/common/nat_serialization.py +0 -0
  30. {proxynt-2.1.1 → proxynt-2.1.2}/common/nat_serialization_v1.py +0 -0
  31. {proxynt-2.1.1 → proxynt-2.1.2}/common/nat_serialization_v2.py +0 -0
  32. {proxynt-2.1.1 → proxynt-2.1.2}/common/pool.py +0 -0
  33. {proxynt-2.1.1 → proxynt-2.1.2}/common/register_append_data.py +0 -0
  34. {proxynt-2.1.1 → proxynt-2.1.2}/common/speed_limit.py +0 -0
  35. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/__init__.py +0 -0
  36. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_abnf.py +0 -0
  37. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_app.py +0 -0
  38. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_cookiejar.py +0 -0
  39. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_core.py +0 -0
  40. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_dispatcher.py +0 -0
  41. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_exceptions.py +0 -0
  42. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_handshake.py +0 -0
  43. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_http.py +0 -0
  44. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_logging.py +0 -0
  45. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_socket.py +0 -0
  46. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_ssl_compat.py +0 -0
  47. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_url.py +0 -0
  48. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_utils.py +0 -0
  49. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/_wsdump.py +0 -0
  50. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/__init__.py +0 -0
  51. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/echo-server.py +0 -0
  52. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_abnf.py +0 -0
  53. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_app.py +0 -0
  54. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_cookiejar.py +0 -0
  55. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_dispatcher.py +0 -0
  56. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_handshake_large_response.py +0 -0
  57. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_http.py +0 -0
  58. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_large_payloads.py +0 -0
  59. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_logging_helpers.py +0 -0
  60. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_reconnect_bad_fd.py +0 -0
  61. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_socket.py +0 -0
  62. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_socket_bugs.py +0 -0
  63. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_ssl_compat.py +0 -0
  64. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_ssl_edge_cases.py +0 -0
  65. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_url.py +0 -0
  66. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_utils.py +0 -0
  67. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket/tests/test_websocket.py +0 -0
  68. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/__init__.py +0 -0
  69. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/compliance/autobahn-test-report-Feb-03-2021.html +0 -0
  70. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/setup.py +0 -0
  71. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/__init__.py +0 -0
  72. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_abnf.py +0 -0
  73. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_app.py +0 -0
  74. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_cookiejar.py +0 -0
  75. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_core.py +0 -0
  76. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_dispatcher.py +0 -0
  77. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_exceptions.py +0 -0
  78. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_handshake.py +0 -0
  79. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_http.py +0 -0
  80. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_logging.py +0 -0
  81. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_socket.py +0 -0
  82. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_ssl_compat.py +0 -0
  83. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_url.py +0 -0
  84. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_utils.py +0 -0
  85. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/_wsdump.py +0 -0
  86. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/__init__.py +0 -0
  87. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/echo-server.py +0 -0
  88. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_abnf.py +0 -0
  89. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_app.py +0 -0
  90. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_cookiejar.py +0 -0
  91. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_dispatcher.py +0 -0
  92. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_handshake_large_response.py +0 -0
  93. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_http.py +0 -0
  94. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_large_payloads.py +0 -0
  95. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_logging_helpers.py +0 -0
  96. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_reconnect_bad_fd.py +0 -0
  97. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_socket.py +0 -0
  98. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_socket_bugs.py +0 -0
  99. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_ssl_compat.py +0 -0
  100. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_ssl_edge_cases.py +0 -0
  101. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_url.py +0 -0
  102. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_utils.py +0 -0
  103. {proxynt-2.1.1 → proxynt-2.1.2}/common/websocket2/websocket/tests/test_websocket.py +0 -0
  104. {proxynt-2.1.1 → proxynt-2.1.2}/constant/__init__.py +0 -0
  105. {proxynt-2.1.1 → proxynt-2.1.2}/constant/message_type_constnat.py +0 -0
  106. {proxynt-2.1.1 → proxynt-2.1.2}/context/__init__.py +0 -0
  107. {proxynt-2.1.1 → proxynt-2.1.2}/context/context_utils.py +0 -0
  108. {proxynt-2.1.1 → proxynt-2.1.2}/entity/__init__.py +0 -0
  109. {proxynt-2.1.1 → proxynt-2.1.2}/entity/client_config_entity.py +0 -0
  110. {proxynt-2.1.1 → proxynt-2.1.2}/entity/message/__init__.py +0 -0
  111. {proxynt-2.1.1 → proxynt-2.1.2}/entity/message/message_entity.py +0 -0
  112. {proxynt-2.1.1 → proxynt-2.1.2}/entity/message/push_config_entity.py +0 -0
  113. {proxynt-2.1.1 → proxynt-2.1.2}/entity/message/tcp_over_websocket_message.py +0 -0
  114. {proxynt-2.1.1 → proxynt-2.1.2}/entity/server_config_entity.py +0 -0
  115. {proxynt-2.1.1 → proxynt-2.1.2}/exceptions/__init__.py +0 -0
  116. {proxynt-2.1.1 → proxynt-2.1.2}/exceptions/duplicated_name.py +0 -0
  117. {proxynt-2.1.1 → proxynt-2.1.2}/exceptions/invalid_password.py +0 -0
  118. {proxynt-2.1.1 → proxynt-2.1.2}/exceptions/replay_error.py +0 -0
  119. {proxynt-2.1.1 → proxynt-2.1.2}/exceptions/signature_error.py +0 -0
  120. {proxynt-2.1.1 → proxynt-2.1.2}/p2ptest/__init__.py +0 -0
  121. {proxynt-2.1.1 → proxynt-2.1.2}/p2ptest/client.py +0 -0
  122. {proxynt-2.1.1 → proxynt-2.1.2}/p2ptest/n4.py +0 -0
  123. {proxynt-2.1.1 → proxynt-2.1.2}/p2ptest/tls_handshake_timeout_test.py +0 -0
  124. {proxynt-2.1.1 → proxynt-2.1.2}/proxynt.egg-info/SOURCES.txt +0 -0
  125. {proxynt-2.1.1 → proxynt-2.1.2}/proxynt.egg-info/dependency_links.txt +0 -0
  126. {proxynt-2.1.1 → proxynt-2.1.2}/proxynt.egg-info/entry_points.txt +0 -0
  127. {proxynt-2.1.1 → proxynt-2.1.2}/proxynt.egg-info/requires.txt +0 -0
  128. {proxynt-2.1.1 → proxynt-2.1.2}/proxynt.egg-info/top_level.txt +0 -0
  129. {proxynt-2.1.1 → proxynt-2.1.2}/run_server.py +0 -0
  130. {proxynt-2.1.1 → proxynt-2.1.2}/server/__init__.py +0 -0
  131. {proxynt-2.1.1 → proxynt-2.1.2}/server/admin_http_handler.py +0 -0
  132. {proxynt-2.1.1 → proxynt-2.1.2}/server/n4.py +0 -0
  133. {proxynt-2.1.1 → proxynt-2.1.2}/server/n4_signal_service.py +0 -0
  134. {proxynt-2.1.1 → proxynt-2.1.2}/server/task/__init__.py +0 -0
  135. {proxynt-2.1.1 → proxynt-2.1.2}/server/task/check_cookie_task.py +0 -0
  136. {proxynt-2.1.1 → proxynt-2.1.2}/server/task/clear_nonce_task.py +0 -0
  137. {proxynt-2.1.1 → proxynt-2.1.2}/server/task/heart_beat_task.py +0 -0
  138. {proxynt-2.1.1 → proxynt-2.1.2}/server/tcp_forward_client.py +0 -0
  139. {proxynt-2.1.1 → proxynt-2.1.2}/server/template/__init__.py +0 -0
  140. {proxynt-2.1.1 → proxynt-2.1.2}/server/template/base.html +0 -0
  141. {proxynt-2.1.1 → proxynt-2.1.2}/server/template/css/fonts/element-icons.woff +0 -0
  142. {proxynt-2.1.1 → proxynt-2.1.2}/server/template/css/index.css +0 -0
  143. {proxynt-2.1.1 → proxynt-2.1.2}/server/template/ele_index.html +0 -0
  144. {proxynt-2.1.1 → proxynt-2.1.2}/server/template/js/axios.min.js +0 -0
  145. {proxynt-2.1.1 → proxynt-2.1.2}/server/template/js/index.js +0 -0
  146. {proxynt-2.1.1 → proxynt-2.1.2}/server/template/js/vue.min.js +0 -0
  147. {proxynt-2.1.1 → proxynt-2.1.2}/server/template/login.html +0 -0
  148. {proxynt-2.1.1 → proxynt-2.1.2}/server/udp_forward_client.py +0 -0
  149. {proxynt-2.1.1 → proxynt-2.1.2}/setup.cfg +0 -0
  150. {proxynt-2.1.1 → proxynt-2.1.2}/setup.py +0 -0
  151. {proxynt-2.1.1 → proxynt-2.1.2}/test_exchange.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: proxynt
3
- Version: 2.1.1
3
+ Version: 2.1.2
4
4
  Home-page: https://github.com/sazima/proxynt
5
5
  Description-Content-Type: text/markdown
6
6
  Provides-Extra: snappy
@@ -15,7 +15,7 @@ class SystemConstant:
15
15
 
16
16
  COOKIE_EXPIRE_SECONDS = 3600 * 24
17
17
 
18
- VERSION = '2.1.1'
18
+ VERSION = '2.1.2'
19
19
 
20
20
  GITHUB = 'https://github.com/sazima/proxynt'
21
21
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: proxynt
3
- Version: 2.1.1
3
+ Version: 2.1.2
4
4
  Home-page: https://github.com/sazima/proxynt
5
5
  Description-Content-Type: text/markdown
6
6
  Provides-Extra: snappy
@@ -402,6 +402,8 @@ async def connect_loop(url, client, processor):
402
402
  on_message_callback=on_message,
403
403
  connect_timeout=10,
404
404
  )
405
+ # 关闭 Nagle: 否则小包要等上一个包的 ACK, 每个方向多出约一个 RTT 的延迟
406
+ ws_conn.protocol.set_nodelay(True)
405
407
  client.ws_sender.set_connection(ws_conn, io)
406
408
  client.on_open()
407
409
  await close_future
@@ -63,6 +63,8 @@ class MyWebSocketaHandler(WebSocketHandler):
63
63
  cls.c2c_lock = asyncio.Lock()
64
64
 
65
65
  def open(self, *args: str, **kwargs: str):
66
+ # 关闭 Nagle: 否则小包要等上一个包的 ACK, 每个方向多出约一个 RTT 的延迟
67
+ self.set_nodelay(True)
66
68
  self.lock = Lock()
67
69
  self._pending_write_bytes = 0
68
70
  self.client_name = None
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes