바이트 정렬
바이트 정렬
메모리에 데이터를 저장할 때 바이트 순서를 나타내는 용어.
빅 엔디안
MSB(Most Significant Byte), 최상위 바이트부터 차례로 저장.
리틀 엔디안
LSB(Least Significant Byte), 최하위 바이트부터 차례로 저장.
시스템의 CPU, OS에 따라 방식이 다르다.
- 파일에 데이터를 저장
- 파일로부터 데이터를 읽기
- 네트워크를 타고 데이터를 송/수신 하는 경우
바이트 정렬 방식을 따져야한다.
각 주체가 다른 방식으로 데이터를 취급하면 해석이 달라지기 때문이다.
예를 들어, 네트워크를 타고 패킷을 인터넷을 통해 전송할 때,
IP주소 바이트 정렬 방식이
호스트<-> 라우터간 다르다면 잘못된 IP주소 해석으로 라우팅에 문제가 생긴다.
포트 번호의 정렬 방식이 다르다면
다른 프로세스로 데이터가 전달이 될 수 있다.
응용 프로그램에 도달한 후부터는
데이터 해석에 문제가 생길 수 있다.
보통 TCP/IP 프로토콜에서는
IP주소, 포트번호의 바이트 정렬 방식으로 빅 엔디안으로 통일하여 사용한다.
이를 네트워크 바이트 정렬이라고 부른다.
응용 프로그램에서도 대부분 네트워크 바이트 정렬을 사용하여
데이터를 해석한다.
댓글
댓글 쓰기