2

계층마다 다른 프로토콜

프로토콜이 왜 필요한가

학습 목표
  • 계층별로 쓰이는 프로토콜을 짝짓는다
  • 왜 하나로 통일하지 않는지 설명한다

왜 하나로 안 하나

앞 그림처럼 계층마다 다른 프로토콜을 쓰는 것이 번거로워 보입니다. 그럼 하나로 통일하면 되지 않느냐는 물음이 자연스럽게 나옵니다.

답은 코스 3 에서 이미 봤습니다. 층마다 요구가 모순되기 때문입니다. 필드 계층은 1밀리초를 보장해야 하고 값이 작습니다. IT 계층은 하루 뒤에 봐도 되지만 여러 공장 몇 년치를 다룹니다. 하나의 규약으로 둘을 만족시키려면 어느 한쪽을 크게 손해 보게 됩니다.

그래서 아래쪽은 빠르고 가볍게(Modbus RTU·Profinet), 위쪽은 뜻이 분명하고 다루기 쉽게(MQTT·OPC UA) 갈렸습니다. 이 갈림은 설계 실패가 아니라 요구가 다르기 때문에 생긴 결과입니다.

프로토콜이 바뀌는 경계에서 게이트웨이가 하는 일

경계에 무엇을 둘 것인가

그러면 실무의 물음은 하나로 좁혀집니다. 경계를 어디에 두고 거기서 무엇을 할 것인가. 대개 게이트웨이가 그 자리를 맡고, 코스 2 에서 본 대로 프로토콜을 변환하고 전송량을 줄이고 나갈 것을 가릅니다.

여기서 갈리는 지점이 있습니다. 옮겨 적는 대응표를 사람이 손으로 관리할 것인가, 아니면 값이 자기 이름을 달고 다니게 할 것인가입니다. 뒤 모듈의 OPC UA 가 그 물음에 답하는 쪽입니다.

프로토콜이 여럿인 것은 요구가 여럿이기 때문입니다. 통일이 아니라 경계 설계가 문제입니다.

용어