프로토콜의 세 가지 주요 요소는 구문, 의미, 타이밍으로 [ 그림 1-10 ] 과 같이 나타낼 수 있다.
- [ ] 구문
구문(syntax)은 '무엇을'에 해당한다. 구문 요소에는 데이터 구조나 형식, 부호화, 크기 등이 있으며 데이터가 어떤 순서로 표현되는가에 관한 내용을 다룬다. 예를 들어, 어떤 프로토콜에서 데이터의 첫 번째 8비트는 송신자 주소, 두 번째 8비트는 수신자 주소를 의미하고 나머지는 실제 정보를 의미한다고 약속하는 것이다.
- [ ] 의미
의미(semantics)는 '어떻게'에 해당한다. 데이터의 특정 형태를 어떻게 해석하고, 그 해석에 따라 어떤 동작을 취할 것인가 등 전송 제어 및 오류 처리를 위한 제어 정보 등을 포함한다.
예를 들어, 응답을 나타내는 1개의 비트 값이 0이면 긍정 응답, 1이면 부정 응답을 나타내는 것으로 정하고, 각 응답에 따른 후속 처리 절차를 어떻게 할 것인가에 대한 규정 등이 이에 해당한다.
- [ ] 타이밍
타이밍(timing)은 '언제'에 해당한다. 데이터를 언제 전송할 것인가, 얼마나 빠른 속도로 전송할 것인가와 같은 내용을 포함한다. 예를 들면, 송신자가 100Mbps의 속도로 데이터를 전송하는데 수신자는 단시 10Mbps로 처리한다면 수신자는 감당할 수 없는 정도로 데이터가 수신되므로 대부분의 데이터를 잃어버리게 된다.