포트 및 네트워크 동작
Insight는 일반적인 작동 중에 여러 포트를 사용합니다. 기본 포트는 SDK 컨테이너 내부 또는 직접 설치된 DevKit에서 사용되는 포트입니다. Neat 개발 환경에서 SDK는 해당 서비스를 호스트 포트에 게시합니다. 기본 호스트 포트가 이미 사용 중인 경우, sima-cli는 다른 사용 가능한 호스트 포트를 할당할 수 있습니다.

| 포트 맵 이름 | 기본 포트 또는 포트 범위 | 프로토콜 | 목적 |
|---|---|---|---|
mainUI | 9900 | HTTPS/TCP | 주요 Insight 웹 UI, HTTP API 및 HTTP MJPEG 스트리밍 소스입니다. |
videoUI | 8081 | HTTPS/TCP | WebRTC 비디오 뷰어 사용자 인터페이스. |
rtsp.tcp | 8554 | RTSP/TCP | 업로 드된 미디어에서 생성된 RTSP 스트리밍 소스입니다. |
videoUDP | 9000-9079 | UDP | 시청자 채널을 위한 비디오 RTP 콘텐츠 업로드 0-79. |
metadataUDP | 9100-9179 | UDP | 뷰어 채널을 위한 메타데이터 JSON 가져오기 0-79. |
webRTC | 40000-40199 | UDP | WebRTC 미디어 및 메타데이터가 비디오 프레임워크에서 브라우저로 전송되는 DataChannel. |
webSSH | 8022 | HTTPS/TCP | 사용 가능한 경우 브라우저 셸을 페어링된 DevKit로 연결합니다. |
실제 SDK 포트 맵을 찾아보세요.
SDK에서 기본 호스트 포트가 사용 가능하다고 가정하지 마십시오. 다음 명령을 실행하십시오.
neat --json
출력 결과에는 insight.webUiUrl과 exposedPorts 배열이 포함됩니다.
{
"exposedPorts": [
{"hostPortEnd": null, "hostPortStart": 9900, "name": "mainUI", "protocol": "tcp"},
{"hostPortEnd": 9179, "hostPortStart": 9100, "name": "metadataUDP", "protocol": "udp"},
{"hostPortEnd": null, "hostPortStart": 8554, "name": "rtsp.tcp", "protocol": "tcp"},
{"hostPortEnd": 9079, "hostPortStart": 9000, "name": "videoUDP", "protocol": "udp"},
{"hostPortEnd": null, "hostPortStart": 8081, "name": "videoUI", "protocol": "tcp"},
{"hostPortEnd": 40199, "hostPortStart": 40000, "name": "webRTC", "protocol": "udp"},
{"hostPortEnd": null, "hostPortStart": 8022, "name": "webSSH", "protocol": "tcp"}
],
"insight": {
"serviceState": "Running",
"venv": "/opt/neat-insight/venv",
"webUiUrl": "https://10.0.0.210:9900"
}
}
호스트 포트가 재매핑된 경우, hostPortStart 값은 외부 클라이언트가 사용해야 하는 포트입니다. hostPortEnd는 비디오, 메타데이터, WebRTC와 같은 포트 범위에 사용됩니다.
채널 매핑
비디오 뷰어는 쌍으로 연결된 비디오 및 메타데이터 포트를 사용합니다. 채널 N의 경우:
video: UDP 9000 + N
metadata: UDP 9100 + N
예를 들어:
| 시청 채널 | 비디오 포트 | 메타데이터 포트 |
|---|---|---|
0 | 9000 | 9100 |
1 | 9001 | 9101 |
2 | 9002 | 9102 |
비디오와 메타데이터 간에 채널 번호를 일관되게 유지하십시오. 애플리케이션이 채널 3로 비디오를 전송하는 경우, 해당 메타데이터를 채널 3의 메타데이터 포트로 전송하십시오.