본문 바로가기

소켓

소켓 프로토콜과 데이터 전송 특성 프로토콜 - 컴퓨터 상호간의 대화에 필요한 통신규약 프로토콜 체계 - 생성되는 소켓이 사용할 프로토콜의 부류정보 프로토콜 종류1. PF_INET: IPv4 인터넷 프로토콜 체계2. PF_INET6: IPv6 인터넷 프로토콜 체계3. PF_LOCAL: 로컬통신을 위한 UNIX 프로토콜 체계4. PF_PACKET: Low Level 소켓을 위한 프로토콜 체계5. PF_IPX: IPX 노벨 프로토콜 체계 소켓의 타입 - 소켓 데이터의 전송방식이며 socket 함수의 두번째 인자로 전달해야합니다. 소켓의 데이터 전송방식을 결정할 수 있다.1. 연결지향형 소켓(SOCK_STREAM) : 중간에 데이터가 소멸되지 않고 목적지로 전송된다. 전송순서대로 데이터가 수신된다. 전송되는 데이터의 경계가 존재하지 않는다. 소.. 더보기
소켓프로그래밍 3 윈도우 win소켓 win소켓은 말그대로 윈도우용 소켓을 말합니다. 보통 리눅스를 서버로 많이 이용하고 윈도우를 클라이언트로 많이 이용하는데 따라서 윈도우 소켓도 필요합니다. int WSAStartup(WORD wVersionRequested, LPWSADATA lpWSAData);윈도우 소켓 프로그래밍을 할떄는 WSAStartup함수를 호출하여 프로그램에서 요구하는 윈도우 소켓의 버전을 알리고 해당 버전을 지원하는 라이브러리의 초기화 작업을 진행할수 있습니다.성공 시 0, 실패 시 에러코드 값을 반환한다.을 include해야한다. 123456789101112#include #include #include int main(int argc, char* argv[]) { WSADATA wsadata; if (WSAS.. 더보기
소켓프로그래밍2 리눅스 소켓프로그래밍 2 int open(const char *path, int flag);이 함수는 파일을 열 떄 사용하는 함수입니다. 첫번쨰 인자로는 파일의 이름및 경로 정보를 두번쨰는 파일의 오픈 정보를 전달합니다.이 함수를 쓰기위해서는 와 그리고 를 include해야 한다.성공시 파일 디스크립터를 하고 실패하면 -1을 반환합니다. 파일의 오픈 정보1. O_CREAT 필요하면 파일을 생성2. O_TRUNC 기존의 데이터 전부 삭제3. O_APPEND 기존 데이터 보존하고, 뒤에 이어서 저장4. O_RDONLY 읽기전용으로 파일 오픈5. O_WRONLY 쓰기 전용으로 파일 오픈6. O_RDWR 일기, 쓰기 겸용으로 파일 오픈또한 오픈전보를 or연산자로 묶어서 전달할수 있다.만약 파일생성하고 쓰기 전용으로 열.. 더보기
소켓프로그래밍1 리눅스 소켓 프로그래밍 리눅스 - TCP 소켓 - 소켓은 네트워크 프로그래밍으로써 물리적으로 연결된 네트워크 상에서의 데이터 송수신에 사용할 수 있는 소프트웨어적인 장치를 의미합니다.즉, 소켓 프로그래밍은 송수신해주는것을 만들어 내는거라고 할 수 있습니다. 소켓을 사용하기 위해서는 불러줘야하는 헤더파일이 있는데 sys/socket.h입니다. #include 이렇게 불러주면 되겠죠? int socket(int domain,int type, int protocol);이건 먼저 소켓을 만들어주는 함수입니다. 소켓을 만들면 파일 디스크립터를 하고 실패하면 -1을 반환 합니다.쉽게 설명하면 서로 통화하기 위해 전화기가 필요한데 전화기 만들어준다고 생각하시면 됩니다. 그리고 socket에 IP와 포트번호 그리고 소켓의 주.. 더보기