sedrubal / quic-interop-runner

QUIC interop runner
https://interop.sedrubal.de/
Other
0 stars 2 forks source link

Unable to run with run.py #1

Closed Karthikdasari0423 closed 12 months ago

Karthikdasari0423 commented 1 year ago

Hi @sedrubal ,

I am trying to run with run.py but getting below error

root@ubuntu:~/quic-interop-runner# ./run.py
Traceback (most recent call last):
  File "/root/quic-interop-runner/./run.py", line 196, in <module>
    sys.exit(main())
  File "/root/quic-interop-runner/./run.py", line 177, in main
    return InteropRunner(
  File "/root/quic-interop-runner/interop.py", line 96, in __init__
    self._result.add_test_description(test.to_desc())
  File "/root/quic-interop-runner/testcases.py", line 486, in to_desc
    theoretical_max_value=cls.theoretical_max_value,
  File "/root/quic-interop-runner/testcases.py", line 2142, in theoretical_max_value
    return cls.forward_data_rate / DataRate.KBPS
AttributeError: type object 'MeasurementRealLink' has no attribute 'forward_data_rate'
root@ubuntu:~/quic-interop-runner#

Could you please help me out

sedrubal commented 1 year ago

Thanks for contacting me. Can you please try the latest commit in sat branch? It's 1163738

Karthikdasari0423 commented 1 year ago

Sure @sedrubal

Karthikdasari0423 commented 1 year ago

Running fine now, Hope this error is different

 ./run.py --log-dir /logs
2023-05-19 04:03:43 | Pulling image martenseemann/quic-go-interop:latest on client host
2023-05-19 04:03:43 | Pulling image public.ecr.aws/nginx/nginx-quic-qns:latest on client host
2023-05-19 04:03:43 | Pulling image ghcr.io/alibaba/xquic/xquic-interop:latest on client host
2023-05-19 04:03:43 | Pulling image lnicco/mvfst-qns:latest on client host
2023-05-19 04:03:43 | Pulling image ghcr.io/microsoft/msquic/qns:main on client host
2023-05-19 04:03:43 | Pulling image stammw/quinn-interop:latest on client host
2023-05-19 04:03:43 | Pulling image aiortc/aioquic-qns:latest on client host
2023-05-19 04:03:43 | Pulling image privateoctopus/picoquic:latest on client host
2023-05-19 04:03:43 | Pulling image peterdoornbosch/kwik_n_flupke-interop on client host
2023-05-19 04:03:43 | Pulling image ghcr.io/ngtcp2/ngtcp2-interop:latest on client host
2023-05-19 04:03:43 | Pulling image litespeedtech/lsquic-qir:latest on client host
2023-05-19 04:03:43 | Pulling image neqoquic/neqo-qns:latest on client host
2023-05-19 04:04:13 | Pulling image public.ecr.aws/s2n/s2n-quic-qns:latest on client host
2023-05-19 04:04:33 | Pulling image therealsedrubal/quant-qns on client host
2023-05-19 04:04:39 | Pulling image haproxytech/haproxy-qns:latest on client host
2023-05-19 04:04:39 | Pulling image cloudflare/quiche-qns:latest on client host
2023-05-19 04:04:42 | Pulling image martenseemann/chrome-quic-interop-runner on client host
2023-05-19 04:05:41 | Saving logs to /logs.
2023-05-19 04:05:41 | Will run 20160 tests and measurement runs (skip 0 runs from previous run).
2023-05-19 04:05:42 | Checking compliance of s2n-quic server
2023-05-19 04:05:47 | Checking compliance of s2n-quic client
[  0 %] Server: s2n-quic Client: s2n-quic Running test case: eutelsat Iteration: 1 of 5
Traceback (most recent call last):
  File "/root/quic-interop-runner/./run.py", line 196, in <module>
    sys.exit(main())
  File "/root/quic-interop-runner/./run.py", line 191, in main
    ).run()
  File "/root/quic-interop-runner/interop.py", line 589, in run
    result, value, error_code = self._run_test(
  File "/root/quic-interop-runner/interop.py", line 301, in _run_test
    exec_result = self._deployment.run_testcase(
  File "/root/quic-interop-runner/deployment.py", line 691, in run_testcase
    result = self._run_testcase_with_remote_client(
  File "/root/quic-interop-runner/deployment.py", line 863, in _run_testcase_with_remote_client
    client_cli = self.get_docker_cli(testcase.client_docker_host)
  File "/root/quic-interop-runner/deployment.py", line 282, in get_docker_cli
    self._docker_clis[name] = docker.DockerClient(self.docker_host_urls[name])
  File "/usr/local/lib/python3.10/dist-packages/docker/client.py", line 45, in __init__
    self.api = APIClient(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/docker/api/client.py", line 171, in __init__
    self._custom_adapter = SSHHTTPAdapter(
  File "/usr/local/lib/python3.10/dist-packages/docker/transport/sshconn.py", line 172, in __init__
    self._connect()
  File "/usr/local/lib/python3.10/dist-packages/docker/transport/sshconn.py", line 218, in _connect
    self.ssh_client.connect(**self.ssh_params)
  File "/usr/lib/python3/dist-packages/paramiko/client.py", line 340, in connect
    to_try = list(self._families_and_addresses(hostname, port))
  File "/usr/lib/python3/dist-packages/paramiko/client.py", line 203, in _families_and_addresses
    addrinfos = socket.getaddrinfo(
  File "/usr/lib/python3.10/socket.py", line 955, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Temporary failure in name resolution
Karthikdasari0423 commented 1 year ago
root@ubuntu:~/quic-interop-runner# ./run.py --log-dir /logs --debug --save-files
2023-05-19 06:47:45 | Saving logs to /logs.
2023-05-19 06:47:45 | Will run 20160 tests and measurement runs (skip 0 runs from previous run).
2023-05-19 06:47:45 | Using server s2n-quic (public.ecr.aws/s2n/s2n-quic-qns:latest) and client s2n-quic (public.ecr.aws/s2n/s2n-quic-qns:latest)
2023-05-19 06:47:45 | Generating cert chain into directory /tmp/compliance_certs_xmf2ujzu...
2023-05-19 06:47:46 | Checking compliance of s2n-quic server
2023-05-19 06:47:46 | Starting containers in stage SERVER(20)
2023-05-19 06:47:46 | server | Starting...
2023-05-19 06:47:47 | server | running
2023-05-19 06:47:47 | server | Setting up routes...
2023-05-19 06:47:47 | server | Actual changes:
2023-05-19 06:47:47 | server | tx-checksumming: off
2023-05-19 06:47:47 | server |  tx-checksum-ip-generic: off
2023-05-19 06:47:47 | server |  tx-checksum-sctp: off
2023-05-19 06:47:47 | server | tcp-segmentation-offload: off
2023-05-19 06:47:47 | server |  tx-tcp-segmentation: off [requested on]
2023-05-19 06:47:47 | server |  tx-tcp-ecn-segmentation: off [requested on]
2023-05-19 06:47:47 | server |  tx-tcp-mangleid-segmentation: off [requested on]
2023-05-19 06:47:47 | server |  tx-tcp6-segmentation: off [requested on]
2023-05-19 06:47:47 | server | Endpoint's IPv4 address is 193.167.100.100
2023-05-19 06:47:47 | server | Endpoint's IPv6 address is fd00:cafe:cafe:100::100
2023-05-19 06:47:47 | server | x86_64
2023-05-19 06:47:47 | server | error: 'ffllbz' isn't a valid value for '--testcase <testcase>'
2023-05-19 06:47:47 | server |  [possible values: chacha20, connectionmigration, ecn, handshake, http3, multiconnect, retry, transfer, versionnegotiation]
2023-05-19 06:47:47 | server |
2023-05-19 06:47:47 | server |
2023-05-19 06:47:47 | server | USAGE:
2023-05-19 06:47:47 | server |     s2n-quic-qns interop server --application-protocols <application-protocols>... --certificate <certificate> --disable-gso --ip <ip> --port <port> --private-key <private-key> --testcase <testcase> --tls <tls> --www-dir <www-dir>
2023-05-19 06:47:47 | server |
2023-05-19 06:47:47 | server | For more information try --help
2023-05-19 06:47:47 | server |
2023-05-19 06:47:47 | server | exited
2023-05-19 06:47:47 | server | exit status 127
2023-05-19 06:47:47 | s2n-quic server is compliant ✅
2023-05-19 06:47:47 | Checking compliance of s2n-quic client
2023-05-19 06:47:48 | Starting containers in stage PRE(0)
2023-05-19 06:47:48 | sim    | Starting...
2023-05-19 06:47:50 | sim    | running
2023-05-19 06:47:50 | Starting containers in stage CLIENT(50)
2023-05-19 06:47:50 | sim    | Configuring iptables
2023-05-19 06:47:50 | sim    | Configuring nftables
2023-05-19 06:47:50 | client | Starting...
2023-05-19 06:47:50 | sim    | Using scenario: simple-p2p --delay=15ms --bandwidth=10Mbps --queue=25
2023-05-19 06:47:51 | client | running
2023-05-19 06:47:51 | client | Setting up routes...
2023-05-19 06:47:51 | client | Actual changes:
2023-05-19 06:47:51 | client | tx-checksumming: off
2023-05-19 06:47:51 | client |  tx-checksum-ip-generic: off
2023-05-19 06:47:51 | client |  tx-checksum-sctp: off
2023-05-19 06:47:51 | client | tcp-segmentation-offload: off
2023-05-19 06:47:51 | client |  tx-tcp-segmentation: off [requested on]
2023-05-19 06:47:51 | client |  tx-tcp-ecn-segmentation: off [requested on]
2023-05-19 06:47:51 | client |  tx-tcp-mangleid-segmentation: off [requested on]
2023-05-19 06:47:51 | client |  tx-tcp6-segmentation: off [requested on]
2023-05-19 06:47:51 | client | Endpoint's IPv4 address is 193.167.0.100
2023-05-19 06:47:51 | client | Endpoint's IPv6 address is fd00:cafe:cafe::100
2023-05-19 06:47:51 | client | x86_64
2023-05-19 06:47:51 | client | wait-for-it.sh: waiting 30 seconds for sim:57832
2023-05-19 06:47:51 | client | wait-for-it.sh: sim:57832 is available after 0 seconds
2023-05-19 06:47:51 | client | error: 'wohevr' isn't a valid value for '--testcase <testcase>'
2023-05-19 06:47:51 | client |  [possible values: ecn, handshake, http3, multiconnect, retry, transfer]
2023-05-19 06:47:51 | client |
2023-05-19 06:47:51 | client |
2023-05-19 06:47:51 | client | USAGE:
2023-05-19 06:47:51 | client |     s2n-quic-qns interop client <requests>... --application-protocols <application-protocols>... --ca <ca> --disable-gso --download-dir <download-dir> --local-ip <local-ip> --port <port> --testcase <testcase> --tls <tls>
2023-05-19 06:47:51 | client |
2023-05-19 06:47:51 | client | For more information try --help
2023-05-19 06:47:51 | client |
2023-05-19 06:47:51 | client | exited
2023-05-19 06:47:51 | client | exit status 127
2023-05-19 06:47:51 | sim    | Stopping container...
2023-05-19 06:47:51 | sim    | Received signal: 15
2023-05-19 06:47:52 | sim    | exited
2023-05-19 06:47:52 | sim    | exit status 143
2023-05-19 06:47:52 | s2n-quic client is compliant ✅
2023-05-19 06:47:52 | s2n-quic already tested for compliance: True
[  0 %] Server: s2n-quic Client: s2n-quic Running test case: eutelsat Iteration: 1 of 5
2023-05-19 06:47:52 | Generated random file: dijrdfqxyn of size: 10485760
2023-05-19 06:47:52 | Requests: https://server4:443/dijrdfqxyn
2023-05-19 06:47:52 | Generating cert chain into directory /tmp/certs_uwccming...
2023-05-19 06:47:53 | Using a real link for this testcase.
Traceback (most recent call last):
  File "/root/quic-interop-runner/./run.py", line 196, in <module>
    sys.exit(main())
  File "/root/quic-interop-runner/./run.py", line 191, in main
    ).run()
  File "/root/quic-interop-runner/interop.py", line 589, in run
    result, value, error_code = self._run_test(
  File "/root/quic-interop-runner/interop.py", line 301, in _run_test
    exec_result = self._deployment.run_testcase(
  File "/root/quic-interop-runner/deployment.py", line 691, in run_testcase
    result = self._run_testcase_with_remote_client(
  File "/root/quic-interop-runner/deployment.py", line 863, in _run_testcase_with_remote_client
    client_cli = self.get_docker_cli(testcase.client_docker_host)
  File "/root/quic-interop-runner/deployment.py", line 282, in get_docker_cli
    self._docker_clis[name] = docker.DockerClient(self.docker_host_urls[name])
  File "/usr/local/lib/python3.10/dist-packages/docker/client.py", line 45, in __init__
    self.api = APIClient(*args, **kwargs)
  File "/usr/local/lib/python3.10/dist-packages/docker/api/client.py", line 171, in __init__
    self._custom_adapter = SSHHTTPAdapter(
  File "/usr/local/lib/python3.10/dist-packages/docker/transport/sshconn.py", line 172, in __init__
    self._connect()
  File "/usr/local/lib/python3.10/dist-packages/docker/transport/sshconn.py", line 218, in _connect
    self.ssh_client.connect(**self.ssh_params)
  File "/usr/lib/python3/dist-packages/paramiko/client.py", line 340, in connect
    to_try = list(self._families_and_addresses(hostname, port))
  File "/usr/lib/python3/dist-packages/paramiko/client.py", line 203, in _families_and_addresses
    addrinfos = socket.getaddrinfo(
  File "/usr/lib/python3.10/socket.py", line 955, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Temporary failure in name resolution
sedrubal commented 1 year ago

For "real link" testcases you must have two linux machines: one to run the client and one to run the server. The server machine must be accessible from the internet and the client must use the link you want to use as default uplink (e.g. eutelsat, astra, starlink, ...). On both machines, the docker daemon must be up and running and you need ssh access from the machine, where quic-interop-runner is running (preferably using a management network and not the real satellite link). You can configure the IP addresses to the server and client host in config.yml.

Karthikdasari0423 commented 1 year ago

sure @sedrubal Thank you Will try that