소켓(Socket)네트워크 상에서 프로세스 간 통신을 가능하게 하는 엔드포인트네트워크를 통해 데이터를 송수신하는 데 사용되며, 네트워크를 통해 서로 다른 시스템 간에 통신할 수 있도록 한다.주로 TCP/IP 프로토콜 스택과 함께 사용되며, TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)를 지원한다.웹 서버, 채팅 애플리케이션, 온라인 게임 등에서 소켓을 사용하여 실시간 데이터 통신을 구현할 수 있다. TCP(Transmission Control Protocol)와 UDP(User Datagram Protocol)는 인터넷 프로토콜 스위트의 핵심 프로토콜 중 두 가지 이 두 프로토콜은 네트워크 통신에서 데이터를 전송하는 데 사용된다. TCP..
TCP와 UDP의 패킷 전달TCP (Transmission Control Protocol)연결 설정 (Connection Establishment)TCP는 연결 지향적인 프로토콜통신하기 전에 세션을 설정해야 한다.클라이언트가 서버에게 SYN(Synchronize) 패킷을 보내고, 서버가 SYN-ACK(Synchronize-Acknowledgment) 패킷을 응답하고, 클라이언트가 ACK(Acknowledgment) 패킷을 다시 응답함으로써 "3-way handshake"가 이루어진다. 연결이 설정되면 양쪽은 서로에게 데이터를 안전하게 전송할 수 있다. 신뢰성 있는 전송 (Reliability)데이터 전송의 신뢰성을 보장하기 위해 다양한 메커니즘을 사용한다.데이터의 순서를 보장하여 수신측에서 데이터를 올바..