Skip to main content

The name M61 comes from Vulcan, the English name of Vulcanus, the Roman god of fire and blacksmithing. We chose this name to symbolize the massive flow of traffic handled by the project.

Project description

프로젝트 개요: M61

목적

네트워크 아웃바운드 미터링 테스트용 트래픽 전송 도구입니다.

M61

  • 클라이언트: 특정 서버로 대용량 데이터를 안정적으로 전송할 수 있습니다.
  • 서버: 클라이언트로부터 데이터를 안전하게 수신 및 수신된 내용을 기록합니다.

조건

  • 클라이언트는 실제 전송한 데이터 크기 출력
  • 서버는 수신한 데이터 크기 출력

특징

  • 용량 단위 모드 (--size-gib)
  • 시간 단위 모드 (--duration-sec)
  • 멀티프로세스 기반 병렬 전송/수신
  • 메모리 부족 감지 및 예외 처리

프로젝트 구조

m61/
├── pyproject.toml         # Poetry 설정
├── README.md
├── m61/
│   ├── __init__.py
│   ├── common.py          # 공통 유틸 (로깅, 메모리 확인 등)   ├── exceptions.py      # 사용자 정의 예외   ├── client.py          # 클라이언트 코드   └── server.py          # 서버 코드

🚀 실행 방법

  1. 코드를 내려 받으세요.
  2. 최신 버전의 poetry를 설치해주세요.
  3. 내려받은 코드가 있는 경로로 이동합니다.
  4. project.toml 파일이 있는 위치에서 빌드를 수행합니다.
# 빌드
$ poetry build

5. 패키지 빌드가 완료되면, 패키지를 설치합니다.

# 설치
$ pip install dist/m61-0.1.0-py3-none-any.whl

서버 실행

$ m61-server --host 0.0.0.0 --port 5000 --output /data/output.bin --max-workers 4

클라이언트 (500GiB 전송, 프로세스 8개)

$ m61-client --server-ip 192.168.0.10 --server-port 5000 --size-gib 500 --workers 8

클라이언트 (1시간 동안 전송, 프로세스 2개)

$ m61-client --server-ip 192.168.0.10 --server-port 5000 --duration-sec 3600 --workers 2

제약 사항

  • Ubuntu Linux 외 다른 OS 환경에서는 테스트되지 않았음

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

m61-0.1.0.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

m61-0.1.0-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file m61-0.1.0.tar.gz.

File metadata

  • Download URL: m61-0.1.0.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for m61-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b39bf850594a8303b62c97de98db0a1bb49294b6980490e1610acbf8095c886b
MD5 16c4b7e6a59d9e30418fb236816855f0
BLAKE2b-256 5f223c180453381c2108e0c1e2037690e532d723d20ac4c5078e03dda01a3a4b

See more details on using hashes here.

File details

Details for the file m61-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: m61-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.2

File hashes

Hashes for m61-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 81c6b4e87b16e785e785b6db590985480ee892e1bfed6341fee3639712db2be0
MD5 1ab77bb783df2a5c23e96e79991686c5
BLAKE2b-256 84bda94d88936b457d0fd5cb674f35c40c07906675fb156a2974728d7adc1942

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page