>> Read Reply from No. 16155 article  
RE: 네트웍 프로그래밍에서 NBO가 무엇인가요?

등록 2001-01-02 11:30:00     조회 1
이름 무정한    

		: KLDP에서 소켓프로그래밍관련 문서를 보고 있는데..
: NBO에 관한 언급이 나오고 있습니다.
: NBO가 무엇을 뜻하는지 모르겠습니다.
: 아시는 분 알려주시면 감사하겠습니다.
: 그럼 이만~~
:
: --
: 모두들 건강하게..
 Network Byte Order.
다음은 어느책에서 발췌한 내용입니다.
도서명은 기억상실되었습니다. 저자에게 죄송할따름입니다.
-----------------발췌-------------------
바이트 순서에는 호스트 바이트 순서와 네트워크 바이트 순서 두가지가 있다.
호스트 바이트 순서는 컴퓨터가 내부 메모리에 숫자를 저장하는 순서를 말하
는데, 이것은 컴퓨터의 CPU 종류에 따라 다르다.
 예를 들어 두바이트로 구성된 십진수 50146의 경우 hexa로 0xC3E2이며 이것은
x86계열의 CPU에서는 E2,C3의 순서로(즉, 하위바이트부터) 메모리에 저장되고
MC68000계열의 컴퓨터에서는 C3,E2의 순서로 메모리에 저장된다. 전자를 하위
바이트가 메모리에 먼저 잡힌다고 하여 little-endian이라하고 후자를 상위바
이트가 메모리에 먼저 잡힌다고 하여 big-endian이라고 한다.
 네트워크 바이트 순서는 포트 번호나 IP주소와 같은 정보를 바이트 단위로 네
트워크에 전송하는 순서를 말하는데 네트워크 바이트 순서는 high-order바이트
부터 전송하기로 규정되어 있다.
 컴퓨터 내부에서 사용하던 숫자를 네트워크로 전송하기전에 htons() - host to
network short 의 약자임 - 함수를 사용하여 모두 네트워크 바이트 순서로 바꾸
어야 하고, 반대로 네트워크로 부터 수신한 데이터는 ntohs()함수를 사용하여
자신의 호스트 바이트 순서로 항상 바꾸어야 한다.
 즉, 모든 컴퓨터가 네트워크 바이트 순서를 지켜 숫자를 전송함으로써 이것이
어떤 종류의 컴퓨터에서 만들어진 것인지 알 필요가 없도록 하는 것이다.
 주의할 것은, 바이트 순서를 맞추는 것이 필요한 경우는 포트 번호 등의 숫자를
네트워크로 전할 때이며 텍스트 문서나, 바이너리 파일 등 일반 사용자 데이터는
바이트 변환이 필요가 없다는 것이다. 왜냐하면 일반 데이터는 메모리(버퍼)에
저장되었다가 바이트 단위로 메모리 앞 주소부터 차례대로 전송되며 수신측에서도
수신된 바이트를 메모리에 차례대로 저장하기 때문이다.
-------------------------------------------외로워라 이네몸은 뉘와함께 놀아날꼬.
이름
암호


>> 관련글
16155 네트웍 프로그래밍에서 NBO가 무엇인가요?  이세종  2001.01.02  ....
  답장 RE: 네트웍 프로그래밍에서 NBO가 무엇인가요?  무정한  2001.01.02  ....
Register [ localhost 목록보기 윗글 아랫글
글쓰기
답장쓰기 수정 삭제
정규표현식 [ 상세 검색 ]
페이지로딩: [ 0.83 초 ] 작업시간: [ 0.09 초 ]

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved
[TOP]

적수네 동네
+
| 적수네 동네
| 공부방
| 리눅스 잡지 서고
| LSN 소스
| 링크 모음
+---+
게시판
+
| 떠들어보세!
| 질문과 답변
| 새소식과 정보
| 1원짜리 팁?
| 대화방
+---+
칼럼?
+
| 세하 훔쳐보기
| Welcome2nite
| 혜진의 염장판
+---+
리눅스 상표권
+
| 반대 서명란
| 토론 게시판
+---+
GNU
+
| GNU 선언문
| GNU GPL
| GNU 미러 목록
+---+
프로젝트?
+
| 리눅스카운터
| RC5DES
| 실질헌법 제작
+---+
커널 소식
+
| 안정 버젼: 2.4.14
+---+
테마 선택
+
LSN 방송국?
+
| OFF AIR
+---+
회원
+
| 로그인
+---+
[ 적수네 동네 ] [ 리눅스 상표권 독점 반대 ] [ 한글 리눅스 문서 프로젝트 ] [ KrLine ] [ 사랑넷 ] [ Valid HTML 4.0! ] [ SlashDot ] [ Freshmeat ]
Copyleft (C) 1998-2001 Byeong-Chan Kim . License
TIME: 1789671894
System by WYZsoft, HDD by I.O.Linux, Mizi Research, Embryo, WOWLINUX, Domain by SarangNet, Network by KrLine.