분류 전체보기 12

[SOCKET] TCP소켓의 연결과 연결종료

TCP는 두 호스트 간의 유니캐스트(unicast) 연결 지향(connection-oriented) 프로토콜입니다. 따라서, 두 호스트가 데이터를 보내기 전에 상호 간의 연결을 해 주어야 합니다. TCP의 연결을 수행하기 위해서 각 호스트의 IP주소, Port번호로 구성된 4-tuple 데이터가 필요하며, 각각의 IP-PORT쌍은 TCP 소켓을 구성하는데 활용됩니다. TCP Connection Overview TCP를 사용한 통신은 설정, 데이터 전송, 연결 종료 3개의 단계를 거쳐서 수행됩니다. TCP/IP Illustrated에서 표현한 TCP Connection Diagram은 아래와 같습니다. 우선 해당 다이어그램에 대해서 알아보도록 하죠. 연결을 요청하고 연결 종료를 요청하게 될 주체를 Clie..

Fundamentals/SOCKET 2020.03.11

[SOCKET] sockaddr 구조체 - sockaddr

sockaddr구조체는 소켓의 주소에 대한 정보를 담는 구조체입니다. 해당 구조체를 사용해 bind(), connect(), sendto()등의 함수에 소켓의 주소에 대한 정보를 전달할 수 있는 것이죠. sockaddr구조체의 원형 sockaddr의 원형은 socket.h에 아래와 같이 정의되어 있습니다. /* Structure describing a generic socket address. */ struct sockaddr { __SOCKADDR_COMMON (sa_);/* Common data: address family and length. */ char sa_data[14];/* Address data. */ }; 매크로 함수 __SOCKADDR_COMMON의 원형은 sockaddr.h에 아래와..

Fundamentals/SOCKET 2020.03.06