-
뇌자극 TCP/IP 6강 요약C_C++ 프로그래밍/뇌를 자극하는 TCP_IP 2019. 5. 25. 21:49
네트워크 바이트 순서
언어는 문화에 따른 어순이 존재한다.
마찬가지로 컴퓨터도 어순의 차이가 존재한다.
바이트 순서에 따른 차이를 극복해야한다.
컴퓨터는 비트가 아닌 바이트로만 본다.
CPU는 바이트를 읽는 다른 순서를 가지고 있다. => 바이트 오더
낮은 주소부터 읽는 방식은 Big-endian
높은 주소부터 읽는 방식은 little-endian
인터넷 상에서 데이터를 주고 받기 위해서는 바이트 오더 문제를 해결해야한다.
=> 바이트 오더를 통일한다.
네트워크 바이트 오더 == 빅 엔디안
제조과정과 기술에 문제가 있기 때문에 소프트웨어 상에서 통일하게 되었다.
호스트 바이트 오더 --------------------- 네트워크 바이트 오더 ------------------------ 호스트 바이트 오더
호스트 바이트 오더는 다를 수 있다.
바이트 오더에 따라서 바꿔줘야 한다.
2바이트 이상의 데이터는 바이트 오더를 고려해야 한다.
network to host = ntohs (2byte)
host to network = htons (2byye)
network to host = ntohl (4byte)
host to network = htonl (4byte)
l = long
s = short
바이트 오더에 신경쓰고 싶지 않다면 XML을 사용하면 된다.
텍스트로만 이루어져 있는 XML을 사용한다.
비록 parsing을 해줘야 하지만
최근 데이터 전송 속도가 빠르기 때문에
유용하다.
※ 본 글은 개인 포트폴리오 혹은 공부용으로 사용하기 때문에, 무단 복사 유포는 금지하지만, 개인 공부 용도로는 얼마든지 사용하셔도 좋습니다
반응형'C_C++ 프로그래밍 > 뇌를 자극하는 TCP_IP' 카테고리의 다른 글
뇌자극 TCP/IP 8강 요약 (0) 2019.05.26 뇌자극 TCP/IP 7장 요약 (0) 2019.05.25 뇌자극 TCP/IP 5강 요약 (0) 2019.05.20 뇌자극 TCP/IP 4강 요약 (0) 2019.05.19