소켓에 할당되는 IP주소와 PORT번호 인터넷 주소(Internet Address) 인터넷 상에서 컴퓨터를 구분하는 목적으로 사용되는 주소를 말한다. 4바이트 주소체계인 IPv4와 16바이트 주소체계인 IPv6가 존재한다. 소켓을 생성할 때 기본적인 프로토콜을 지정해야 한다. 인터넷 주소는 네트워크 주소와 호스트 주소로 나뉘게 되는데, 네트워크 주소를 이용해 네트워크를 찾고, 호스트 주소를 이용해 호스트를 구분한다. PORT 번호 IP는 컴퓨터에 부여하는 값으로 컴퓨터를 구분하는 용도로 사용되고, PORT번호는 소켓에 부여하는 값으로 소켓을 구분하는 용도로 사용된다. 하나의 프로그램 내에서는 둘 이상의 소켓이 존재할 수 있기 때문에, 둘 이상의 PORT가 하나의 프로그램에 의해 할당될 수 있다. 0~10..
Protocol(프로토콜)이란, 컴퓨터 상호간의 데이터 송수신에 필요한 통신규약이며 소켓을 생성할 때 기본적인 프로토콜을 지정해야 한다. #include int socket(int domain, int type, int protocol); domain : 소켓이 사용할 프로토콜 체계(Protocol Family) 정보 전달 type : 소켓의 데이터 전송방식에 대한 정보 전달 protocol : 두 컴퓨터간 통신에 사용되는 프로토콜 정보 전달 →모두 프로토콜 정보와 관련있다. Protocol Family(프로토콜 체계) 프로토콜도 그 종류에 따라서 부류가 나뉘는데, 그 부류를 가리켜 프로토콜 체계라 한다. int domain에 들어가는 부분이다. Type(소켓의 타입) 데이터 전송 방식을 의미한다. 소켓..
네트워크 프로그래밍이란, 네트워크로 연결된 둘 이상의 컴퓨터 사이에서의 데이터 송수신 프로그램의 작성을 말한다. 소켓(Socket)은 네트워크(인터넷)의 연결 도구이며 OS에 의해 제공되는 소프트웨어적인 장치이다. 또한, 소켓은 프로그래머에게 데이터 송수신에 대한 물리적, 소프트웨어적으로 자세한 내용을 신경 쓰지 않게 한다. 소켓 프로그래밍에서 사용되는 함수들을 서버와 클라이언트 측으로 나누어 간단하게 살펴보자. Server socket TCP 소켓은 전화기에 비유될 수 있다. 소켓은 socket함수의 호출을 통해 생성한다. #include int socket(int domain, int type, int protocol); //성공 시 파일 디스크립터, 실패 시 -1 return bind 전화기에 전화..