MSB (Most Significant Bit), LSB (Least Significant Bit) 구분 필요
화살표 기호는 MSB에서 LSB 방향을 의미함
>i : MSB → LSB: 빅인디안
<i : LSB ← MSB: 리틀인디안
파이썬의 struct 모듈은 이진 포맷 변환을 위한 다양한 기능 제공
pack(): 송신 시 이진 데이터로 변환unpack(): 수신 시 원래 값으로 변환
CPU별 데이터 저장 방식을 의미함
다수의 시스템이 리틀 엔디안을 사용함 (x86 아키텍처)
⇒ 시스템 아키텍처나 프로토콜에 따라 다르게 사용되며, 호환을 가지기 위해 전송시 변환이 필요 할 수 있음
UDP에서는 데이터를 분리된(discrete), 식별 가능한 청크(chunk) 단위로 보낸다.
하지만 네트워크에서 오류가 발생했을 경우,
TCP는 스트림 기반 프로토콜이기 때문에
데이터를 청크 단위로 보낸다고 해도 수신 측에서는 청크의 경계를 보장받지 못한다.
ㄴ Framing 문제가 생긴다: "메시지의 시작과 끝을 어떻게 구분할 것인가?"
⇒ 수신 측은 "recv()를 언제 멈춰야 하는지" "어디까지가 전체 메시지인지" 판단할 수 있어야 함
