Computer Science/Network
TCP 기반의 Half-close 일방적인 연결 종료의 문제점 close 및 closesocket 함수의 기능 소켓의 완전소멸을 의미한다. => 상대방의 상태에 상관 없이 일방적인 종료의 형태를 띤다. 그래서 상대 호소트의 데이터 송수신 아직 완료되지 않은 상황이라면, 문제가 발생할 수 있다. 이러한 문제의 대안으로 Half-close 기법이 존재한다. 소켓의 half-close 종료를 원한다는 것은, 더 이상 전송할 데이터가 존재하지 않는 상황이다. 그러니 입력 스트림은 종료해도 되지만, 상대방이 할 말이 남아있을 수 있다. 그러니 출력스트림은 남겨두는 것이 좋다. 입력 스트림만 종료할 때 사용하는 것이 half-close 라고 한다. Half close를 구하기 위한 shut-down 함수 #incl..
# 이 글은 윤성우의 열혈 TCP/IP 프로그래밍 책을 기반으로 추가적인 내용을 붙여 작성된 것이다. 원 저자의 책이 매우 좋은 편이니 읽고 관심이 가는 사람들은 책을 구매해보길 바란다. 지난 2차례에 걸쳐 TCP 기반 서버/클라이언트를 살펴보았다. TCP는 Transmission control protocol의 약자로, 데이터의 전송을 보장하는 프로토콜이다. 아래 글에서 조금 더 자세하게 알아볼 수 있다. 2023.05.23 - [Computer Science/Network Programming] - [Network] 4. TCP기반 서버/클라이언트 1 [Network] 4. TCP기반 서버/클라이언트 1 이 글은 윤성우의 열혈 TCP/IP 책을 참고하여 정리하였습니다. 정확한 내용은 도서를 구매해서 ..
이 글은 '윤성우의 열혈 TCP/IP 책'을 기반으로 다양한 정보를 추가해 정리한 내용이다. 저자분이 워낙 유명하시고 설명을 잘하시는 분이니 읽어보고 관심이 있으면 책을 구매해서 학습하길 바란다. +) 이번 시간 내용은 지난 글과 이어지는 것이니 자세하게 알고 싶다면 지난글을 읽어보길 바란다. 2023.05.23 - [Computer Science/Network Programming] - [Network] 4. TCP와 UDP에 대한 이해 [Network] 4. TCP와 UDP에 대한 이해 이 글은 윤성우의 열혈 TCP/IP 책을 참고하여 정리하였습니다. 정확한 내용은 도서를 구매해서 참고하시기 바랍니다. TCP/IP 프로토콜 스택 인터넷 기반의 데이터 송수신을 목적으로 설계된 스택 7 mobuk.tis..
이 글은 윤성우의 열혈 TCP/IP 책을 참고하여 정리하였습니다. 정확한 내용은 도서를 구매해서 참고하시기 바랍니다. TCP/IP 프로토콜 스택 인터넷 기반의 데이터 송수신을 목적으로 설계된 스택 7 계층으로 세분화가 되며, 4계층으로 표현된다. Link 계층 물리적인 영역의 표준화 결과 → LAN, WAN, MAN과 같은 물리적 표준 관련 프로토콜이 정의된 영역이다. IP 계층 IP는 Internet Protocol 을 의미함. 경로의 설정과 관련이 있는 프로토콜 TCP/UDP 계층 실제 데이터의 송수신과 관련 있는 계층으로 수송 (Transport) 계층이라고도 함. TCP는 데이터의 전송을 보장하는 프로토콜, UDP는 보장하지 않는 프로토콜이다. TCP → 데이터의 전송을 보장 ( 신뢰성이 있음 )..
'윤성우의 열혈 TCP/IP 프로그래밍' 서적을 참고하여 정리하였습니다. 인터넷 주소 (Internet Address) 인터넷 상에서 컴퓨터를 구분하는 목적으로 사용되는 주소 IPv4 → 4바이트 주소체계 IPv6 → 16바이트 주소체계 네트워크 주소와 호스트 주소로 나뉜다. 네트워크 주소를 이용해서 네트워크를 찾고, 호스트 주소를 이용해서 호스트를 구분한다. 클래스 별 네트워크 주소와 호스트 주소의 경계 Port 번호 IP는 컴퓨터를 구분하는 용도로 사용되며, PORT번호는 소켓을 구분하는 용도로 사용된다. PORT번호는 16비트로 표현된다. 0~1023 포트는 이미 용도가 있으며, 포트번호는 0이상 65535이하이다. IPv4 기반의 주소 표현을 위한 구조체 struct sockaddr_in { sa..
'윤성우의 열혈 TCP/IP 소켓 프로그래밍' 책을 참고하여 정리하였습니다. 프로토콜 & 소켓 - 소켓 : 네트워크 연결 도구 - 프로토콜 : 컴퓨터 상호간의 데이터 송수신 필요한 통신규약 소켓을 생성할 때 기본적인 프로토콜을 지정해야한다. 프로토콜 체계 PF_INET : IPv4 프로토콜 체계 PF_INET6 : IPv6 프로토콜 체계 소켓의 타입 데이터 전송방식을 의미한다. 소켓이 생성될 때 소켓의 타입도 결정되어야한다. 1, SOCK_STREAM : 연결 지향형 소켓 ( TCP 소켓 ) 중간에 데이터 소멸되지 않으며 전송 순서대로 데이터가 수신된다. 데이터의 경계가 존재하지 않는다. 소켓 대 소켓의 연결은 반드시 1대 1의 구조이다. 2. SOCK_DGRAM : 비 연결지향형 소켓 ( UDP 소켓 ..