정리/자바

소켓 프로토콜을 왜 만들어야하죠? 1탄

Absolute Devil Vivian 2018. 6. 25. 16:27

프로토콜. 약속.

간혹 군대 무전을 흉내내는 드립을 보면 꼭 등장하는게 있다.

[오바]

[알파팀 건물에 진입했다 오바]

[알았다 오바]

들어 본적 있지 않은가? 없어? 없음 말구 ㅎㅎ

'오바'는 내 말이 끝났다 라는 거다. 왜 이게 필요할까? 무전기는 단방향 통신 기기라서 그렇다. 단방향 통신기기가 뭔지는 당연히 알고 있다고 치고.

일종의 약속인 셈이다. '오바' 라고 함으로써 상대방은 '아 이사람의 말이 끝났구나' 하고 알게 되는 것.


소켓 통신의 프로토콜도 이와 같은이유이다.

클라와 서버간의 stx,data(4자리 숫자),etx의 약속이 정해져있다고 치면

클라가 stx+data(4)+etx 의 규격에 맞게 보내주면 서버에서는 약속에 맞춰본다.

'아 앞에 붙는건 데이터가 시작되는 뜻이고 그다음 4자리는 보내고싶었던 데이터고 뒤에 etx가 나왔으니 이게 끝이구나.'

이게 왜 굳이 필요할까.... 하고 알아봤는데 일종의 정석이라고 한다.

테란이 프로토스 상대할때 메카닉을 가듯이

중형전차로 중전차의 장갑을 뚫기 위해 골탄을 장전하듯이


필수는 아니지만 대부분 이렇게 쓰기 때문이란다.

더 자세히 알아보고 2탄 써야겠다...