꾸준히
모드버스 TCP 본문
지금까지 다뤘던 내용은 모드버스 RTU였다.
이제 모드버스 TCP에 대해 알아보자!
모드버스 TCP란?
TCP계층에서 사용되는 모드버스 프로토콜이다.
모드 버스 RTU는 좁은 범위에서 물리적으로 선을 연결하여 사용하였다면,
모드 버스 TCP는 인터넷을 이용하여 통신 할 수 있도록 확장한 것이다.
모드버스 RTU와 TCP의 패킷 차이
모드버스 TCP의 패킷을 보면 RTU와 다르게 CRC부분이 빠지고 추가정보 6Byte가 추가된 것을 볼 수 있다.
CRC가 존재하는 이유는 데이터가 정상적으로 오고가는지 확인하기 위함인데 모드버스 TCP프로토콜 자체에 오류를 검증하기 때문에 CRC를 추가할 필요가 없는 것이다.
추가 정보(6Byte)는 어떻게 구성되어 있을까?
추가 정보에는 Transaction ID, Protocol ID, Length 2Byte씩 구성되어 있다.
Transaction ID : 0x0000 부터 데이터를 보낼때마다 1씩 증가
Protocol ID : 모드버스는 0x0000 고정
Length : Slave ID + Function Code + Data의 길이
Cf) 간혹 모드버스 RTU 프로토콜을 TCP스택 위에서 그대로 사용하는 경우도 있다고 합니다.
=> TCP스택 위에서 동작하지만 TCP 패킷 구성(프로토콜) 사용하는 것이 아니라, RTU 패킷 구성(프로토콜)을 그대로 사용하는 경우도 있다.
'Protocol > 모드버스' 카테고리의 다른 글
모드 버스 패킷 분석 (0) | 2021.06.06 |
---|---|
모드 버스의 이해(3) (0) | 2021.06.06 |
모드 버스의 이해(2) (0) | 2021.06.06 |
모드 버스의 이해(1) (0) | 2021.06.06 |