목록Network (2)
I'm FanJae.
1. 소켓(Socket)소켓은 프로그램이 네트워크를 통해 데이터를 주고받기 위해 사용하는 통신 인터페이스이다.운영체제가 제공하는 소켓 API를 이용하면 다른 컴퓨터 또는 프로세스와 데이터를 송수신할 수 있다.즉, TCP/IP의 세부 구현을 직접 다루지 않아도 된다. 1) TCP 통신과 UDP 통신 방식 차이소켓 통신은 대표적으로 TCP 방식과 UDP 방식으로 나뉜다.TCP는 연결 지향 방식으로 데이터를 주고받기 전에 먼저 연결을 수립하며, 데이터의 순서와 신뢰성을 보장한다.UDP는 비연결 방식으로, 연결 과정 없이 데이터를 전송한다. 속도는 빠르지만 데이터의 도착 여부나 순서를 보장하지 않는다. ※ 여기서는 TCP를 기준으로 소켓 생성 및 통신 흐름을 살펴본다. 2) 리눅스와 윈도우에서의 소켓 관점 차이..
1. 바이트 저장 순서 (Byte Order)- 컴퓨터는 데이터를 메모리에 저장할 때 바이트(Byte) 단위로 나눠 저장한다.- 여러 바이트로 구성된 데이터 타입은 인접한 메모리 주소에 연속적으로 저장된다.- 이때,여러 바이트로 구성된 데이터를 메모리에 어떤 순서로 저장할지 정하는 방식을 엔디안(Endian)이라고 한다. 2. 엔디안(Endian)- 앞서 설명한 바와 같이 Endian은 데이터가 메모리에 저장되는 순서를 의미한다.- Endian은 CPU의 아키텍처의 데이터 저장 방식 설계에 따라 결정된다. 일반적으로, 리틀 앤디안(Little Endian)과 빅 앤디안(Big Endian)의 두가지 방식이 존재한다. 2-1. 빅 엔디안(Big Endian) 방식- 빅 엔디안 방식은 가장 상위 바이트를..