전공/네트워크

[네트워크]#9 소켓 프로그래밍 (TCP, UDP)

Campus Coder 2023. 10. 17. 21:56
728x90
반응형

목차

  1. 소켓 프로그래밍
  2. UDP 소켓 프로그래밍
  3. TCP 소켓 프로그래밍

1. 소켓 프로그래밍

소켓: 응용 계층과 end-emd-전송 계층 사이의 문

 

두 가지 전송 서비스를 위한 두 가지 소켓 유형

  • TCP: 연결 지향적, 안정적인 바이트 스트림 제공
  • UDP: 연결이 없음, 한쪽 엔드 시스템에서 다른 엔드 시스템 독립적인 데이터 패킷을 보냄(신뢰할 수 없는 데이터그램)

 

응용 프로그램 예제

  • 클라이언트는 키보드에서 일련의 문자(데이터)를 읽고 서버로 데이터를 전송
  • 서버는 데이터를 수신하고 문자를 대문자로 변환
  • 서버가 수정된 데이터를 클라이언트로 보냄
  • 클라이언트는 수정된 데이터를 받고 화면에 표시

2. UDP 소켓 프로그래밍

  • 클라이언트와 서버 사이에 연결 없음
  • 데이터를 보내기 전에 handshaking 없음
  • 송신자는 각 패킷에 IP 대상 주소와 port#을 명시적으로 첨부함
  • 수신자는 수신된 패킷에서 송신자 IP 주소와 port#을 추출함


3. TCP 소켓 프로그래밍

  • 클라이언트가 서버와 접촉해야 함
  • 서버 프로세스가 먼저 실행 중이어야함
  • 서버는 클라이언트의 접근을 맞이하는 소켓을 생성해야 함
  • TCP 소켓 만들기, IP 주소, 서버 프로세스의 포트 번호 지정
  • 클라이언트가 소켓을 생성할 때: 클라이언트 TCP가 서버 TCP에 대한 연결을 설정함

728x90
반응형