더북(TheBook)

이러한 처리를 운영체제가 알아서 해 줍니다. 따라서 TCP를 사용하는 프로그램을 만들면 간단하게 수신 보장을 받는 것입니다.

이제 여러분 프로그램에서 TCP를 이용하는 방법을 살펴봅시다.

코드 송신 측 코드

<11.22.33.44>
main()
{
    s = socket(TCP);                 // ➊
    s.bind(any_port);
    s.connect("55.66.77.88:5959");   // ➋
    s.send("hello");                 // ➌
    s.close();
}

 

UDP 소켓 사용법과 많은 부분이 비슷하지만, 다음 차이가 있습니다.

소켓을 생성할 때 UDP가 아닌 TCP를 쓰겠다고 지정해야 합니다().

데이터를 보내기 전에 상대방과 연결을 해야 하겠죠? 이를 위해 connect(addr) 함수를 호출하여 addr에 상대방 측의 끝점을 넣어 줍니다(). connect() 함수는 연결에 성공할 때까지 블로킹됩니다.

데이터를 보낼 때는 sendTo()가 아닌 send(data)를 호출합니다(). sendTo()와는 다르게 수신 대상 끝점을 입력하지 않습니다. 이미 connect() 함수로 연결 끝점을 지정했기 때문입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.