본문 바로가기

소켓2

(소켓,프로토콜)소켓 프로토콜 프로토콜이란? 네트워크 통신을 위한 상호간의 약속이라고 보면 된다. 소켓프로그래밍에서도 상호간의 전달방식을 규정하는 프로토콜을 정의해야 한다. 소켓을 만드는 함수에서 사용자는 소켓의 프로토콜을 정의할수 있는데 한번 알아보도록 하자. int socket(int domain, int type, int protocol) domain -> 소켓이 사용할 프로토콜 체계정보 type -> 소켓의 데이터 전송 방식 protocol -> 두 컴퓨터 간 통신에 사용되는 프로토콜 정보전달 - 프로토콜 체계(sys/socket.h) PF_INET IPV4 인터넷 프로토콜 PF_INET6 IPV6 인터넷 프로토콜 PF_LOCAL 로컬통신 위한 UNIX 프로토콜 체계 PF_PACKET LowLevel 소켓을 위한 프로토콜 체계.. 2020. 7. 2.
(소켓,프로토콜)Linux와 Windows에서의 소켓 컴퓨터와 컴퓨터끼리의 네트워크 통신을 위해서 여러 과정이 필요하지만 나처럼 SW를 프로그래밍하는 사람에겐 복잡한 과정을 대신 해주는 소켓이라는 아주 고마운 도구가 있다. 이번에는 Linux와 Windows 운영체제에 따른 전반적인 소켓의 특성에 대해 공부한걸 써보고자 한다. 먼저 Linux에서 소켓이란 단순히 파일로 취급된다. 리눅스에서 각 파일에 매겨지는 정수를 파일 디스크립터라고 하는데 위와 같이 0,1,2번은 표준입출력으로 고정되어있다. (표준입력은 키보드로 입력된 파일, 표준출력은 모니터로 출력될 파일을 생각하면 된다.) 그래서 소켓과 같은 파일들은 3번부터 할당되고 사용자는 해당 디스크립터를 통해 원하는 파일을 쉽게 찾는다. (설명링크 https://dev-ahn.tistory.com/96) 소.. 2020. 6. 30.