서버가 중요함으로 서버만 언급하겠다
이정도의 소프트웨어나 하드워어면 다돌아가니깐
요증나오는 소형 컴퓨터도 다 가능할듯하다
라즈베리파이2 : 작은 컴퓨터라고 생각하면 된다
개발환경은
이렇게 한다고 한다
난 이미 다 깔려있어서 편하게 쓰면 될꺼같다
아 리눅스 대신 무문트로 사용할 예정임
서버는 192.168.1.10
클라이언트는 192.168.10.X~192.168.99.X
프록시는 192.168.100.X~192.168.254.X
이렇게 더쓸수있다
그럼 숫자가 휄신 많아짐
TCP/IP통신에는 헤더+ 데이터 로 이루어져 있다
##헤더의 구성
대부분 고정메세지인데
여기서 유일한 가변데이터가 가능한것은
DATA Block 으로 전송하는 데이터의 양을 보여준다
고정 메시지의 구조 | 가변 메시지의 구조 | |||||
필드 | 크기 | 설명 | 값 | 크기 | 설명 | 값 |
Message ID | 1 | 메시지 종류 | 0x01 ~ 0x99 | 1 | 메시지 종류 | 0xA0 ~ 0xFF |
DATA Size | 2 | 데이터 길이 |
0x0000 ~ 0xFFFF (Unsigned Short) |
|||
DATA | N | 데이터 | 메시지 종류에 따라 정의됨 | N | 데이터 | 메시지 종류와 길이에 따라 정의됨 |
메시지의 내용 움,.... 다음꺼보자
TCP 통신
간단히 말해서 ACK 는 받았는지 않받았는지 확인하는 과정이다
0x20 : STX데이터의 시작
0x10 : 수신자
0x20 : 보내는자
0x01 : 메세지의 프로토컬 버전
15 08 07 17 05 10 (16진법으로 되어있는 날짜) : 15년 08월 07일 23시 5분 16초
0x00 0x01 : 첫번제 메시지
0x10 : 리얼타임 메시지 번호
0x10 0x01 0x01 0x01 : 리얼타임 메시지 번호, 1프록시 아이디, 1번장치에 대하여, 한번요청
0xFF : CRC 메시지 옳은 메시지인지 검사
0x30 : ETX데이터의 끝
위에것만 해석한것이다!
밑에거는 받는거! 쭐이기만 하면됨
Proxy 통신은 UDP랑 똑같은거같다
고정 메시지의 구조 | 가변 메시지의 구조 | |||||
필드 | 크기 | 설명 | 값 | 크기 | 설명 | 값 |
Message ID | 1 | 메시지 종류 | 0x01 ~ 0x99 | 1 | 메시지 종류 | 0xA0 ~ 0xFF |
Device ID | 1 | 센서/장치 ID (요청하고저 하는 Proxy의 센서/장치 ID) | 1 |
센서/장치 ID (요청하고저 하는 Proxy의 센서/장치 ID) |
||
Data Counts | 2 | 데이터 개수 |
0x0000 ~ 0xFFFF (Unsigned Short) |
|||
DATA | 8 | 데이터 | 메시지 종류에 따라 정의됨 | 8XN | 8바이트 Float형의 데이터, 데이터 개수에 의해 크기 결정 | Float |
이것도 비슷한거 같다
0x20 : STX데이터의 시작
0x10 : 수신자 (server)
0x20 : 보내는자 (Proxy)
0x01 : 메세지의 프로토컬 버전
15 08 07 17 05 10 (16진법으로 되어있는 날짜) : 15년 08월 07일 23시 5분 16초
0x00 0x01 : 첫번제 메시지
0x20 0x01 0x00.......... 0x01 : 모니터링 데이타, 1프록시 아이디, (수집된 8바이트가 한값) 실제값은 1로 되어있다
0xFF : CRC 메시지 옳은 메시지인지 검사
0x30 : ETX데이터의 끝
기본 관리 테이블
사용자의 대한 정보
데이터 테이블
기기 장치에 대한 정보
'E-KoreaTech > 애플리케이션구현' 카테고리의 다른 글
윈도우 통합 개발 툴의 기본고급 기능 (0) | 2019.12.18 |
---|---|
응용 애플리케이션의 구성과 개발 환경 구축 (0) | 2019.12.17 |