[Network] 2. 소켓의 타입과 프로토콜의 설정
2023. 5. 18. 17:20
'윤성우의 열혈 TCP/IP 소켓 프로그래밍' 책을 참고하여 정리하였습니다.
프로토콜 & 소켓
- 소켓 : 네트워크 연결 도구
- 프로토콜 : 컴퓨터 상호간의 데이터 송수신 필요한 통신규약
소켓을 생성할 때 기본적인 프로토콜을 지정해야한다.
프로토콜 체계
- PF_INET : IPv4 프로토콜 체계
- PF_INET6 : IPv6 프로토콜 체계
소켓의 타입
데이터 전송방식을 의미한다. 소켓이 생성될 때 소켓의 타입도 결정되어야한다.
1, SOCK_STREAM : 연결 지향형 소켓 ( TCP 소켓 )
중간에 데이터 소멸되지 않으며 전송 순서대로 데이터가 수신된다.
데이터의 경계가 존재하지 않는다.
소켓 대 소켓의 연결은 반드시 1대 1의 구조이다.
2. SOCK_DGRAM : 비 연결지향형 소켓 ( UDP 소켓 )
전송순서 상관업싱 빠른 속도의 전송을 지향한다.
데이터 손실 및 파손의 우려가 있으며, 데이터의 경계가 존재한다.
한번에 전송할 수 있는 데이터의 크기가 제한된다.
소켓 사용방법
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP); //TCP
socket(PF_INET, SOCK_DGRAM, IPPROTO_UDP); //UDP
→ 첫번째, 두번째 인자로 전달된 정보를 통해 소켓의 프로토콜이 결정되기 때문에 마지막 인자는 생략해도 된다.
'Computer Science > Network' 카테고리의 다른 글
[Network] 7. 소켓의 우아한 종료 (0) | 2023.05.28 |
---|---|
[Network] 6. UDP 기반 서버/클라이언트 (0) | 2023.05.28 |
[Network] 5. TCP 기반 서버/클라이언트 2 (0) | 2023.05.28 |
[Network] 4. TCP기반 서버/클라이언트 1 (0) | 2023.05.23 |
[Network] 3. 소켓에 할당되는 IP 주소와 PORT 번호 (0) | 2023.05.18 |