본문 바로가기
C_C++ 프로그래밍/뇌를 자극하는 TCP_IP

뇌자극 TCP/IP 6강 요약

by RoJae 2019. 5. 25.





네트워크 바이트 순서

언어는 문화에 따른 어순이 존재한다.

마찬가지로 컴퓨터도 어순의 차이가 존재한다.

바이트 순서에 따른 차이를 극복해야한다.




컴퓨터는 비트가 아닌 바이트로만 본다.

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

댓글